Skip to content
조회 수 9375 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

DC 모터 제어 (아두이노 arduino)

http://smileblue.co.kr/xe/processing_01/1297




PWM 모터 제어  http://suakii.egloos.com/2947712

DC 모터 제어를 위해 L293B를 사용



모터의 속도를 제어하는​​ 펄스 폭 변조기 (PWM)의 개략도.




dc_motor.gif


http://blog.daum.net/starhong/13345955


아두이노 Mega (Arduino Mega) 호환 Mega1280 

제품 설명


  • Mega1280 보드는 ATMEL사의 ATmega1280 기반 MCU 보드입니다.
  • Mega1280 보드는 54 개의 디지털 입출력 핀 (14 개의 PWM 출력 핀 포함), 16 개의 아날로그 입력 핀, 4 개의 UART 핀, 16 MHz 크리스털 오실레이터, USB 커넥터, 전원 잭, ICSP 헤더 핀(ISP 다운로드), 리셋 버튼으로 구성되어 있습니다.
  • Mega1280 보드는 MCU가 지원하는 모든 요구 사항을 포함하고 있습니다.
  • Mega1280 보드는 배터리 또는 AC-DC 전원 어댑터로 전원을 인가하고 USB 케이블로 컴퓨터에 연결만으로 간단하게 시작할 수 있습니다.


제품 규격


  • 마이크로콘트롤러 : ATmega1280
  • 동작 전압 : 5V
  • 입력 전압 (권장) : 7-12V
  • 입력 전압 (한계) : 6-20V
  • 디지털 입출력 핀 : 54 (PWM 출력 핀 14 포함)
  • 아날로그 입력 핀 : 16
  • 입출력 핀당 DC 전류 : 40 mA
  • 3.3V 핀의 DC 전류 : 50 mA
  • 플래시 메모리 : 128 KB (부트로더용 4 KB 포함)
  • SRAM : 8 KB
  • EEPROM : 4 KB
  • 클럭 속도 : 16 MHz


제품 사진


 
 


전원


  • Mega1280 보드는 USB 연결 또는 외부 전원 인가를 통해 전원을 공급할 수 있습니다.
  • Mega1280 보드는 전원 공급 소스가 자동적으로 설정됩니다.
  • 외부 전원인 경우 AC-DC 전원 어댑터 또는 배터리로 전원을 공급할 수 있습니다.
  • AC-DC 전원 어댑터는 2.1 mm 중앙 양극 전원 플러그 형태의 Mega1280 보드 전원 잭에 연결할 수 있습니다.
  • 배터리 선은 전원 커넥터의 GND, VIN 핀 헤더에 연결할 수 있습니다.
  • Mega1280 보드는 6V ~ 20V 전압의 외부 전원으로 동작할 수 있습니다.
  • 외부 전원이 7V 보다 작게 공급되면 5V 핀은 5 V 보다 작게 공급되어지고 보드가 불안정하게 된다.
  • 외부 전원이 12V 보다 크게 공급되면 전원 레귤레이터가 보드를 과열시키고 손상을 입힐수 있습니다.
  • 권장 외부 전원 전압은 7V ~ 12V 입니다.
  • 전원 핀은 아래 사항들을 따릅니다. 
    - VIN 핀 : 외부 전원 소스를 사용하는 경우, 아두이노 (Arduino) 보드의 입력 전압 핀입니다. 
      (USB 포트의 5V 전원 또는 다른 레귤레이터 변환 전원 소스의 반대) 
      VIN 핀을 통해 전원을 공급받거나 전원 잭을 통해 전원을 공급받으면 VIN 핀을 통해 전원에 접근할 수 있습니다. 
    - 5V 핀 : 아두이노 (Arduino) 보드의 마이크로콘트롤러와 다른 디바이스에 전원을 제공하는데 사용되는 레귤레이터 변환 전원 공급 핀입니다. 
      5V 핀은 VIN 핀으로부터 아두이노 (Arduino) 보드의 레귤레이터를 통해 5V 전원 공급, USB 포트로부터 5V 전원 공급, 또는 다른 레귤레이터 변환 5V 전원을 공급받을 수 있습니다. 
    - 3V3 핀 : 3.3V 전압은 아두이노 (Arduino) 보드의 FTDI 칩으로부터 공급됩니다. 최고 전류 제공 값은 50 mA 입니다. 
    - GND 핀 : 0V 핀입니다.


메모리


  • ATmega1280 은 실행 코드를 위한 128 KB 플래시 메모리 (부트로더용 4 KB 포함), SRAM 4 KB, EEPROM 4 KB ( EEPROM 라이브러리 로 읽고 쓰기가 가능) 를 가지고 있습니다.


입출력


  • Mega1280 보드상의 디지털 핀 54 개는 각각 pinMode() digitalWrite() digitalRead() 함수로 입력 또는 출력으로 사용할 수 있습니다.
  • 디지털 핀은 5V 전압으로 동작합니다.
  • 디지털 핀은 각각 최고 40 mA 전류가 입력되거나 출력할 수 있고 20-50 kOhm 의 내부 풀업 저항을 가지고 있습니다. (기본은 풀업 저항이 연결되어 있지 않습니다.)
  • 디지털 핀의 일부 핀은 특별한 기능을 가지고 있습니다. 
    - 직렬 핀 : 0 (RX), 1 (TX); 직렬 1 핀 : 19 (RX), 18 (TX); 직렬 2 핀 : 17 (RX), 16 (TX); 직렬 3 핀 : 15 (RX), 14 (TX) 
      수신 (RX), 송신 (TX) TTL 레벨의 직렬 데이터를 사용합니다. 
      또한 핀 0 과 1 은 FTDI USB - TTL 직렬 칩의 직렬 핀들과 연결됩니다. 
    - 외부 인터럽트 핀 : 2 (INT 0), 3 (INT 1), 18 (INT 5), 19 (INT 4), 20 (INT 3), 21 (INT 2) 
      외부 인터럽트 핀들은 로직 0, 상승 에지, 하강 에지, 전압 변경 부분에서 인터럽트를 발생하게 설정할 수 있습니다. 
      자세한 내용은 attachInterrupt() 함수를 참고하십시오. 
    - PWM 핀 : 0 ~ 13 
      analogWrite() 함수를 이용해 8 비트 PWM 출력을 제공합니다. 
    - SPI 핀 : 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS) 
      SPI 핀들은 하드웨어 기반으로 제공하지만 아두이노 (Arduino) 언어에 포함하지 않은 상태로 SPI 직렬통신을 지원합니다. 
      또한, SPI 핀들은 Duemilanove와 Diecimila 보드와 물리적으로 호환되며 ICSP 헤더 핀과 중첩되어 있습니다. 
    - LED 핀 : 디지털 핀 13은 아두이노 (Arduino) 보드의 LED와 연결되어 있습니다. 
      LED 핀이 로직 1이 되면 LED는 ON이 되고 LED 핀이 로직 0이 되면 LED는 OFF가 됩니다. 
    - I2C 핀 : 20 (SDA), 21 (SCL) 
      Wire 라이브러리 를 사용하는 I2C (TWI) 직렬통신을 지원합니다. (자세한 내용은 Wiring 홈페이지를 참고) 
      I2C 핀들은 Duemilanove와 Diecimila 보드와 같은 위치에 있지 않습니다. 
  • Mega1280 보드는 16 개의 아날로그 입력을 가지고 있고 각각의 아날로그 입력은 10 비트 해상도를 제공합니다. (0 ~ 1023 값)
  • 기본적으로 0V ~ 5V 전압을 측정한 경우, AREF 핀과 analogReference() 함수를 사용하여 최대 상위 값까지 변경이 가능합니다.
  • Mega1280 보드는 다른 2개의 핀들이 있습니다. 
    - AREF 핀 : 아날로그 입력들의 기준 전압 핀으로 analogReference() 함수로 사용합니다. 
    - 리셋 핀 : 마이크로 콘트롤러를 리셋하기 위해서는 리셋 핀을 로직 0으로 만들어야 합니다. 
      일반적으로 쉴드(shield) 를 장착하는 경우에 아두이노 보드의 리셋버튼이 가려지므로 쉴드에 리셋 버튼을 추가합니다. 


통신


  • Mega1280 보드는 컴퓨터, 다른 아두이노 (Arduino) 보드, 다른 마이크로콘트롤러와 통신을 위해 편리한 방법을 가지고 있습니다.
  • Mega1280 보드는 4 개의 TTL (5V) 레벨의 하드웨어 UART 직렬통신을 제공합니다. 
    - USB와 FTDI 드라이버 (아두이노 소프트웨어를 포함)에 의해 Mega1280 보드상의 FTDI FT232RL 칩은 컴퓨터의 소프트웨어에 가상 COM 포트 통신을 제공합니다. 
    - 아두이노 소프트웨어는 아두이노 (Arduino) 보드와 텍스트 데이터를 양방향 송수신하는 직렬 모니터가 포함되어 있습니다. 
    - Mega1280 보드상의 RX, TX LED 는 컴퓨터로 FTDI 칩과 USB 포트를 통해 전송되는 데이터가 있을때 반짝일 것입니다. 
      (그러나 디지털 핀 0, 1 에서 직렬통신을 하는 경우에는 RX, TX LED가 반짝이지 않음) 
    소프트웨어 직렬 라이브러리 는 Mega1280 보드의 임의의 디지털 핀들로 직렬통신을 하는데 사용됩니다.
  • 또한 ATmega1280 칩은 I2C (TWI)와 SPI 통신을 지원합니다. 
    - 아두이노 소프트웨어는 I2C 버스를 쉽게 사용하기 위해 Wire 라이브러리를 포함하고 있습니다. 
    - 자세한 내용은 Wiring 홈페이지의 문서 를 참고하십시오. 
    - SPI 통신을 사용하려면 ATmega1280 데이터시트를 참고하십시오.


프로그래밍 (다운로드)


  • Mega1280 보드는 아두이노 소프트웨어 로 프로그램을 다운로드할 수 있습니다. 
    - 자세한 내용은 레퍼런스 와 튜토리얼 부분을 참고하십시오.
  • Mega1280 보드상에서 부트로더 가 미리 다우로드된 ATmega1280 칩에 외부 하드웨어 프로그래머를 사용하지 않고 프로그램 코드를 업로드할수 있도록 합니다. 
    - 프로그램 코드 업로드는 원본 STK500 프로토콜로 통신합니다. ( 레퍼런스 자료 C 헤더 파일 )
  • 부트로더를 우회하여 ICSP(In-Circuit Serial Programming) 헤더 핀을 통해 마이크로콘트롤러에 프로그램 코드를 다운로드할 수 있습니다. 
    - 자세한 내용은 여기 명령어들 을 참고하십시오.


자동 (소프트웨어) 리셋


  • 프로그램 코드를 업로드전에 리셋 버튼을 물리적으로 누르기보다는 Mega1280 보드는 컴퓨터에 연결된 상태로 동작중에 소프트웨어 리셋을 허용하는 방법으로 설계되어 있습니다. 
    - FT232RL 칩의 하드웨어 흐름 제어 라인들의 하나인 (DTR) 은 100 nF 커패시터를 통해 ATmega1280 칩의 리셋 라인에 연결되어 있습니다. 
    - ATmega1280 칩의 리셋 라인이 리셋에 필요한 시간동안 로직 0을 유지해야 합니다. 
    - 아두이노 소프트웨어는 아두이노 환경에서 업로드 버튼을 간단히 눌러서 프로그램 코드를 업로드합니다.


USB 과전류 보호


  • Mega1280 보드는 전기 단락과 과전류로부터 컴퓨터의 USB 포트를 보호하는 리셋 가능 폴리퓨즈 디바이스가 내장되어 있습니다.
  • 비록 대부분의 컴퓨터들은 내부 보호 장치를 제공하지만 폴리퓨즈 디바이스는 한층 높은 보호 기능을 제공합니다.
  • USB 포트에 500 mA 이상의 전류가 유입된다면 폴리퓨즈 디바이스는 전기 쇼트 또는 과부하에 제거되기전에는 자동적으로 USB 연결을 해제된 상태를 유지합니다.


물리적인 특성 및 쉴드 (shield)간 호환성


  • Mega1280 보드의 PCB 크기는 최대 길이 101.6 mm, 최대 넓이 53.4 mm 이지만 USB 커넥터와 전원 잭은 앞서 PCB 크기 범위를 넘어갑니다. 
    - Mega1280 보드를 케이스에 고정시키기 위한 3 개의 고정홀이 있습니다. 
    - 디지털 입출력 핀들은 2.54 mm 간격으로 배열되어 있고 디지털 입출력 핀 7번과 8번 사이의 간격만은 4.06 mm 입니다.
  • Mega1280 보드는 아두이노 Diecimila 또는 Duemilanove 를 위한 대부분의 모듈 (shield) 들과 호환됩니다. 
    - 디지털 입출력 핀들은 0 ~ 13 (AREF와 GND 핀은 별도로 근접 위치에 있음), 아날로그 입력 핀들은 0 ~ 5, - 전원 헤더 핀과 ICSP 헤더 핀들은 모두 같은 위치에 있습니다. 
    - 메인 UART (직렬 포트) 핀(0, 1)은 같은 위치에 있고, 같은 외부 인터럽트는 0, 1 (핀 2, 3 에 해당) 입니다. 
    - SPI 직렬 핀은 Mega1280 보드, Diecimila와 Duemilanove 보드 양쪽 모두 ICSP 헤더 핀을 통해 제공됩니다. 
    - I2C 직렬 핀은 Mega1280 보드 (디지털 입출력 핀 20, 21), Diecimila와 Duemilanove 보드 (아날로그 입력 핀 4, 5)로 같은 핀 위치가 아닙니다.


관련 자료










로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
60 AVR 2 TRANSISTOR CIRCUITS 2015.11.25 4511
59 AVR 2 트랜지스터 비안정 바이브레이터 회로(펄스) 1 2015.11.25 5098
58 AVR 2k fm 2014.12.15 5167
57 AVR 555 TIMER AM TRANSMITTER CIRCUIT(AM 송신 회로) file 2014.09.20 23271
56 AVR 555 타이머 회로 응용 1 2012.08.03 8109
55 AVR 5V로 정전압 출력하기 2013.06.28 11836
54 AVR ARDUINO 명령어 모음 3 2012.07.24 22748
53 AVR Arduino 특정시간 제어와 릴레이 다루기 2019.06.13 11838
52 AVR arduino에서 5V Relay Module 을 이용하여 220V 교류 제어 2 2012.08.03 6583
51 AVR AVR의 기초 3 2012.07.18 6502
50 AVR CD-ROM 모터 정보 모으기 2 file 2012.08.20 8848
» AVR DC 모터 제어 (아두이노 arduino) 4 file 2012.08.01 9375
48 AVR FET (Field Effect Transistor) file 2014.12.22 5337
47 AVR IC DataSheet 구하기 2 2012.08.01 4528
46 AVR LED에 연결하는 저항은 어떤 걸 써야 하나요? 3 2012.08.02 4274
45 AVR LTC871 DC to DC 부스터 컨버터 스텝업 (LTC1871 DC-DC Boost converter Adjustable Step-Up High Power Supply Module Red LED Voltage meter) file 2014.08.14 19509
44 AVR Pulse and Siren Circuit 2014.12.04 5471
43 AVR YFC 유승호님의 CD Motor 개조기 2 2012.08.05 4694
42 AVR 가변저항 3 file 2012.07.18 12125
41 AVR 갤럭시폰을 이용한 라인트레이서 1 2012.10.06 5719
Board Pagination Prev 1 2 3 Next
/ 3

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소