Arduino Uno WiFi

Старая добрая Arduino Uno обзавелась WiFi модулем. Теперь скетчи можно прошивать без проводов, управлять пинами из любимого браузера и собирать отдельные устройства в Internet of Things.

В зависимости от проекта, плата станет сердцем умного дома, мозгом автономного робота или web-интерфейсом сети беспроводных датчиков.

Arduino UNO WiFi построена на базе процессора ATmega328 и имеет встроенный модуль ESP8266 для работы с Wi-Fi сетями.

На плате предусмотрены 14 контактов общего назначения (6 из них поддерживают ШИМ), 6 аналоговых входов, USB-разъём, разъём для подключения питания, пины ICSP-программатора, кнопки перезагрузки и перепрошивки WiFi-модуля.

WiFi модуль

Однокристальный модуль на базе ESP8266 поддерживает стек протоколов TCP/IP и обеспечивает возможность работы с сетями Wi-Fi стандартов 802.11 b/g/n. Модуль позволяет обмениваться информацией с другими устройствами в режиме «точка-точка», подключаться к Wi-Fi сетям и даже выступать в качестве точки доступа.

«Из коробки» Uno WiFi прошита скетчем, который позволяет плате работать в режиме RestServer-а. Это даёт возможность работать с пинами платы непосредственно из адресной строки браузера.

Например, чтобы включить тринадцатый пин достаточно обратиться к плате по адресу http://192.168.240.1/arduino/digital/13/1. Хотите его выключить — замените 1 в конце адреса на 0.

Аналогичным образом можно получать информацию с аналоговых входов или менять режим работы пинов.

Программирование

Плата поддерживает режим программирования «over-the-air» — скетчи и прошивки Wi-Fi модуля можно обновлять по беспроводной сети.

Uno WiFi программируется и как обычная Arduino Uno. Подключите плату к компьютеру USB-кабелем и укажите в IDE нужный тип платы.

Кроме того, для перезаписи загрузчика или скетчей можно использовать разъём ICSP (In-Circuit Serial Programming) для подключения внешнего программатора.

Память

Платформа оснащена 32 кБ flash-памяти, 2 кБ из которых отведено под загрузчик — bootloader. Он позволяет прошивать Arduino с обычного компьютера через USB. Эта память постоянна и не предназначена для изменения по ходу работы устройства. Её предназначение — хранение программы и сопутствующих статичных ресурсов.

2 кБ SRAM-памяти используются для хранения временных данных вроде переменных программы. Это оперативная память платформы. SRAM-память сбрасывается при отключении питания.

Для долговременного хранения данных предназначен 1 кБ EEPROM-памяти. Это аналог жёсткого диска для Arduino.

Питание

Arduino Uno может питаться как от USB подключения, так и от внешнего источника: батарейки или обычной электрической сети — для этого понадобится блок питания . Источник определяется автоматически.

Рекомендуемый диапазон напряжения: 7−12 В.

Ввод / вывод

На платформе расположены 14 контактов, которые могут быть использованы для цифрового ввода и вывода. Какую роль исполняет каждый контакт, зависит от вашей программы. Все пины работают с напряжением 5 В, и рассчитаны на ток до 40 мА. Также каждый контакт имеет встроенный, но отключённый по умолчанию резистор на 20 - 50 кОм. Некоторые контакты обладают дополнительными возможностями:

  • Serial: 0-й и 1-й. Используются для приёма и передачи данных по USB.
  • Внешнее прерывание: 2-й и 3-й. Эти контакты могут быть настроены так, что они будут провоцировать вызов заданной функции при изменении входного сигнала.
  • PWM: 3-й, 5-й, 6-й, 9-й, 10-й и 11-й. Могут являться выходами с широтно-импульсной модуляцией (pulse-width modulation) с 256 градациями.
  • LED: 13-й. К этому контакту подключен встроенный в плату светодиод. Если на контакт выводится 5 В, светодиод зажигается; при нуле — светодиод гаснет.

Помимо контактов цифрового ввода/вывода на Arduino имеется 6 контактов аналогового ввода, каждый из которых предоставляет разрешение в 1024 градации.

Кроме этого на плате имеется входной контакт Reset. Его установка в логический ноль приводит к сбросу процессора. Это аналог кнопки Reset обычного компьютера.

Габариты

Размер платы — 68.5×53 мм. Гнёзда для внешнего питания и USB выступают на пару миллиметров за обозначенные границы. На плате предусмотрены места для крепления на шурупы или винты. Расстояние между контактами составляет 0,1″ (2,54 мм), но в случае 7-го и 8-го контакта — расстояние: 0,16″.

Характеристики

  • Микроконтроллер: ATmega328 (8-битный Atmel AVR)
  • Контроллер WiFi: ESP8266 (Tensilica Xtensa LX106)
  • Тактовая частота: 16 МГц
  • Флеш-память: 32 кБ
  • SRAM-память: 2 кБ
  • Номинальное рабочее напряжение: 5 В
  • Входное напряжение питания: 7–12 В
  • Максимальный ток с шины 5V: 1000 мА
  • Максимальный ток с шины 3.3V: 1000 мА (включая питание микроконтроллера)
  • Максимальный ток с пина или на пин: 40 мА
  • Цифровые порты: 20
  • Портов с поддержкой ШИМ: 6
  • Портов, подключённых к АЦП: 6
  • Поддержка сетей WiFi: 802.11 b/g/n 2.4 GHz
  • Габариты: 68.5×53 мм