[42호]ESP8266 와이파이를 내장한 아두이노 Uno, Arduino UNO WiFi 출시
Arduino
ESP8266 와이파이를 내장한
아두이노 Uno, Arduino UNO WiFi 출시
Arduino(Arduino.org 및 Arduino.cc)는 Atmega328P 마이크로컨트롤러와 ESP8266 WiFi 통합모듈을 탑재해 Arduino UNO와 와이파이를 하나의 보드로 통합한 “Arduino Uno WiFi”를 출시했다.
이 제품은 14개의 디지털 입/출력 핀헤더, 6개의 아날로그 입력 핀, 16MHz 세라믹 공진기(공명기), USB 포트, 전원 잭, ICSP 헤더, 그리고 Reset 버튼을 내장하고 있다. 또한 USB 케이블을 통해 간편하게 컴퓨터와 연결하거나, AC-DC 아답터 또는 배터리를 활용해 쉽게 전원을 공급할 수 있는 등 마이크로컨트롤러를 활용하는데 필요한 것들을 모두 내장하고 있다.
특히 Arduino Uno Wi-Fi의 가장 유용한 기능 중 하나는 OTA (over-the-air) 프로그래밍을 지원해 케이블없이 온라인으로 Arduino 스케치나 Wi-Fi 펌웨어 작업이 가능한 점이다.
제품에 대한 더 자세한 사항은 디바이스마트 홈페이지(http://www.devicemart.co.kr/)에서 확인할 수 있다.
제품 특징
· 보드에 장착된 센서나 엑츄에이터에 와이파이로 통신하여 IoT 시스템을 쉽고 빠르게 만들 수 있음
· USB를 통하거나 외부 전원을 통한 작동이 모두 가능
· USB가 아닌 외부의 전원은 AC-DC 아답터(DC잭 활용) 또는 배터리(Gnd. Vin핀 활용)로 공급
Features
Arduino Uno Wi-Fi는 ATmega328P (datasheet)와 ESP8266 Wi-Fi 통합 모듈(datasheet) 기반의 새로운 Arduino Uno 입니다. 14개의 디지털 입/출력 핀헤더(6개는 PWM 출력으로 사용 가능), 6개의 아날로그 입력 핀, 16MHz 세라믹 공진기(공명기), USB 포트, 전원 잭, ICSP 헤더, 그리고 Reset 버튼을 내장하고 있습니다. 또한 USB 케이블을 통해서 간편하게 컴퓨터와 연결하거나, AC-DC 아답터 또는 배터리를 활용해 쉽게 전원을 공급할 수 있는 등 마이크로컨트롤러를 활용하는데 필요한 모든 것들을 포함하고 있습니다.
ESP8266 Wi-Fi 모듈은 자기제어(Self-contained) SoC 칩셋으로, 와이파이 네트워크에 접속하기 위한 통합 TCP/IP protocol stack을 내장하고 있습니다. (또는 액세스포인트로도 활용 가능합니다) Uno Wi-Fi의 가장 유용한 기능 중 하나는, OTA (over-the-air) 프로그래밍을 지원해 온라인으로(케이블 없이) Arduino sketches나 Wi-Fi firmware의 데이터 이동이 가능합니다.
ARDUINO MICROPROCESSOR | |
---|---|
Processor | ESP8266 |
Architecture | Tensilica Xtensa LX106 |
Operating Voltage | 3.3 V |
Flash Memory | 4 MB |
RAM | 8 MB instruction, 12 MB data |
Clock Speed | 80 MHz |
WiFi | 802.11 b/g/n 2.4 GHz |
Wake up time | < 2 ms |
ARDUINO MICROCONTROLLER | |
---|---|
Microcontroller | ATmega328 |
Architecture | Atmel AVR 8-bit |
Operating Voltage | 5 V |
Flash memory | 32 KB |
SRAM | 2 KB |
Clock Speed | 16 MHz |
Analog I/O Pins | 6 |
EEPROM | 1 KB |
DC Current per I/O Pins | 40 mA |
GENERAL | |
---|---|
Digital I/O Pins | 20 |
PWM Output | 6 |
Power Consumption | 93 mA |
PCB Size | 53 x 68.5 mm |
Weight | 0.025 Kg |
Product Code | A000133 |
PowerTechnical Specifics
외부 전원을 통해 전원을 공급할 때는 6~20V 전압으로 제품을 작동할 수 있습니다. 하지만 7V 미만의 전원만이 공급되는 경우에는 5V 핀에서도 5V 이하의 전원이 공급될 수 있으며, Uno Wifi 보드 역시도 불안정한 작동을 할 수 있습니다. 또한 12V를 초과하는 전압을 공급하는 경우에는 전압 레귤레이터가 과열되거나 보드에 손상을 입힐 수도 있습니다. 즉 7V에서 12V의 전압 공급을 권장합니다.
전원 Pin 상세 설명 :
- VIN. 외부 전원을 사용할 때 아두이노 보드에 입력되는 전압. (USB 연결 혹은 기타 조정된 전원 소스의 5 전압과는 반대)
- 5V. 보드의 레귤러에이터로부터 조정된 5V로 출력되는 핀. 보드는 DC 전원잭 (7 – 12V), USB 커넥터 (5V)나 보드의 VIN pin (7-12V) 5V나 3.3V 핀을 통한 공급 전압은 레귤레이터를 우회하고, 보드는 손상될 수 있습니다. 권장하지 않습니다.
- 3V3. 온보드 레귤레이터에 의해 발생된 A 3.3 전압 공급. 최대 전류는 1 A 입니다. (파워 입력 소스에 따른)
- GND. 접지 핀.
- IOREF. 아두이노 보드의 이 핀은 마이크로컨트롤러가 작동하는 전압 기준을 제공합니다. 올바르게 구성된 쉴드는 IOREF 핀 전압을 읽고 적절한 전원 소스을 선택하거나 5V 또는 3.3V 전원 공급 장치로 작업하기 위해 출력에서 전압 변환기를 활성화하십시오.
Memory
Input and Output
- Serial: 0 (RX), 1 (TX). TTL 시리얼 데이터를 수신 (RX) 및 전송(TX) 하는 데 사용됩니다. 이 핀은 ATmega8U2 USB-to-TTL 시리얼 칩의 해당 핀에 연결됩니다.
- 외부 인터럽트: 2, 3. 이 핀은 낮은 값, 어떤값의 상승, 하락할 때 인터럽트가 발생하도록 할 수 있습니다. 자세한 사항은 attachInterrupt() 기능을 참조 하십시오.
- PWM: 3, 5, 6, 9, 10 and 11. analogWrite() 을 사용하여 8-bit PWM 출력을 제공합니다.
- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). 이 핀은 . SPI 라이브러리를 사용하는 SPI 통신을 지원합니다.
- LED: 디지털 핀 13으로 연결된 LED가 내장되어 있습니다. 이 핀이 높은 값일 때, LED는 켜집니다. 핀이 낮은 값을 때에는 꺼집니다. 우노는 6 아날로그 입력이며, 10비트의 분해능(1024 다른 값)이 제공되는 A0 부터 A5까지 표시됩니다. AREF 핀, analogReference()를 사용하여 범위의 상단을 변경할 수 있지만 기본적으로 접지에서 5V까지 측정됩니다. 게다가 몇몇의 핀은 기능적으로 특화되어 있습니다.
- TWI: TWI: A4 혹은 SDA 핀, A5 혹은 SCL 핀. 와이어 라이브러리를 사용하여 TWI 통신 지원. 참조: A4 혹은 SDA 핀, A5 혹은 SCL 핀은 IO 확장기 SC16IS750IBS에서 사용중입니다. 보드에 다른 두개의 핀이 있습니다:
- AREF. Reference voltage for the analog inputs. Used with analogReference(). 아날로그 입력을 위한 기준 전압. analogReference() 사용.
- RESET. 라인을 LOW로 가져와서 마이크로컨트롤러를 리셋하십시오. 일반적으로 보드의 차단하는 쉴드에 리셋버튼을 추가합니다.
Communication
The Arduino Uno Wi-Fi 는 컴퓨터, 다른 아두이노, 다른 마이크로컨트롤러와 통신하는 많은 시설을 갖추고 있습니다. ATmega328는 디지털 핀 0 (RX), 1 (TX) 로 사용 가능한 UART TTL (5V) 시리얼 통신을 제공합니다. 보드상의 ATmega16U2 채널의 USB 연결된 시리얼 통신은 컴퓨터 소프트웨어에 대한 가상 컴포트로 나타납니다. 16U2 펌웨어는 표준화된 USB COM 드라이버를 사용하며, 외부 드라이버가 필요 없습니다. 그러나 윈도우에서는, inf 파일이 요구됩니다. 아두이노 소프크웨어는 아두이노 보드로부터 온 간단한 문자 데이터가 허용된 시리얼 모니터를 포함합니다. 보드의 RX, TX LEDs는 데이터가 USB 시리얼 칩, USB 연결을 통해 전송될 때, 깜박입니다. (그러나 핀0, 1은 시리얼 통신이 아님).
소프트웨어 시리얼 라이브러리는 어떤 우노의 디지털 핀의 시리얼 통신에도 허용됩니다.
ATmega328은 I2C (TWI)와 SPI 통신을 물론 지원합니다. 아두이노 소프트웨어는 I2C 버스의 사용을 간단하게 하는 와이어 라이브러리를 포함합니다; SPI 라이브러리 사용에는 SPI 통신을 사용하십시오.
Arduino Uno Wi-Fi에는 AtMega 16u2, AtMega 328p 및 ESP8266EX 사이의 통신을 허용하는 I2C 버스/ SPI 인터페이스가 있는 SC16IS750IBS IO 확장기 단일 UART가 있습니다.
The Arduino Uno Wi-Fi를 사용하면 보드에 장착된 센서나 엑츄에이터에 와이파이로 통신하여 IoT 시스템을 쉽고 빠르게 만들 수 있습니다. Arduino Uno Wi-Fi를 Wi-Fi network 클라이언트로 다른 장치와 연결하는 서버로 사용하거나 ad’hoc Wi-Fi 연결을 만들 수 있습니다. Arduino Uno Wi-Fi를 통해 인터넷으로 접속하는 완벽한 방법은 Ciao Library이며 REST connector를 사용하는 것입니다. Arduino Uno Wi-Fi에는 브라우저를 통해 즉시 보드를 명령할 수 있는 RestServer 스케치가 미리 업로드되어 있습니다: Arduino Uno Wi-Fi SSID를 연결하십시오, http://192.168.240.1/arduino/digital/13/1 링크로 이동하여 LED L을 켜십시오.
* “/arduino/digital/13″ -> digitalRead(13)
* “/arduino/digital/13/1″ -> digitalWrite(13, HIGH)
* “/arduino/analog/2/123″ -> analogWrite(2, 123)
* “/arduino/analog/2″ -> analogRead(2)
* “/arduino/mode/13/input” -> pinMode(13, INPUT)
* “/arduino/mode/13/output” -> pinMode(13, OUTPUT)
Programming
Automatic (Software) Reset
이 설정에는 다른 의미가 있습니다. Uno Wifi가 Mac OS X 또는 Linux를 실행하는 컴퓨터에 연결되면 소프트웨어가 USB를 통해 연결될 때마다 리셋됩니다. 0.5초 동안, 부트로더는 Uno에서 실행중입니다. 형식이 잘못된 데이터(새 코드를 업로드하는 것 이외에)를 무시하도록 프로그래밍 되어있지만, 연결이 되면 보드에 전송된 데이터의 처음 몇 바이트는 차단됩니다. 보드에서 스케치가 시작될 때 일회성 구성이나 다른 데이터를 수신하는 경우 해당 데이터를 전송하기 전에 연결하고나서 통신하는 소프트웨어가 대기하고 있는지 확인하십시오.
Uno Wifi는 자동 리셋을 사용할 수 없도록 차단하는 trace가 포함되어 있습니다. trace의 양쪽 패드를 함께 납땜하여 다시 활성화시킬 수 있습니다. 이것은 “RESET-EN”라고 부릅니다. 물론 110V 저항을 5V에서 리셋 라인에 연결하여 자동 리셋을 비활성화할 수도 있습니다.
USB Overcurrent Protection
Physical Characteristics
Documentation
- Eagle files: arduino-uno-wifi-reference-design.zip
- Schematic: arduino-uno-wifi-schematic.pdf
Arduino를 시작하거나 보드에 지금 바로 실행해보세요. Arduino UNO WiFi 시작Getting Started
Tutorials
- RestServer only for ESP-Link firmware
- RestClient only for ESP-Link firmware
- MqttSub only for ESP-Link firmware
- MqttPub only for ESP-Link firmware
- WebServerBlink only for ESP-Link firmware
- WebServer only for ESP-Link firmware
- RestServer and RestClient only for ESP-Link firmware
- ReadMacAddress only for ESP-Link firmware
- CiaoRestClient-ThingSpeak only for ESP-Link firmware
Advanced