Знакомьтесь: Arduino, ч.4. Что приделать–2, или как связать

Итак, прошлый мой обзор был посвящен шилдам, обеспечивающим взаимодействие управляющей платформы с различными видами двигателей. То есть предполагается, что по завершении проекта полученное устройство не стационарно. Если Ваш проект не предполагает перемещений в пространстве, подача команд на устройство по проводам прямо во время его работы не вызывает затруднений. Проблемы начинаются, если Ваш проект передвигается и нуждается в подаче команд оператором прямо во время работы, а так же передачи ему информации(если предусмотрено).
Провода существенно ограничивают свободу маневра вашего устройства, а так же зону его досягаемости(при стационарном операторе), решением этой проблемы может стать беспроводная связь. Гораздо удобнее была бы связь с вашим устройствам посредством радиоволн, минуя соединение проводами. Собственно говоря, удобство связи с мобильным объектом – всего лишь одна из многих возможных реализаций потенциала беспроводной связи, способы её применения, на мой взгляд, ограниченны лишь вашей фантазией.
Данный обзор, как и предыдущий, посвящен платформам – расширителям функций Ардуино, шилдам. Но в этот раз буду рассматриваться устройства для обеспечения беспроводного соединения в проектах на Ардуино.
Начнем с устройств, использующих для передачи данных старый добрый Bluetooth. Вполне подойдет для передачи управляющих команд передвигающемуся устройству или приема данных с датчиков. Диапазон работы как правило не велик, но ведь это и не всегда требуется.
Неплохой представитель данного семейства - Bluetooth module PRO for Arduino 

Bluetooth module PRO for Arduino



Управляющий чип Bluegiga WT12, используемый протокол -Bluetooth v2.1 + EDR, в зависимости от поданной энергии и условий окружающей среды может обеспечить стабильную связь на расстоянии от 10 до 50 метров. При активной работе тянет на себя два мА, в спящем режиме – меньше 0,5.
Соединение такого рода не очень популярно среди создателей проектов на Ардуино, гораздо чаще используется соединение по Wi-Fi, в силу большей скорости и рабочих расстояний.
Среди множества представителей данного семейства для обзора был выбран Cosmo WiFi Shield 

Cosmo WiFi Shield



Используется для обеспечения связи с Ардуино-совместимыми устройствами с помощью сети стандарта IEEE 802.11b. Основа платформы –модуль низкого энергопотребления WizFi220. Шилд поддерживает два режима работы: ad – hok (прямой радиоканал между устройствами), и infrastructure (взаимодействие через точку доступа). Изначально занимает для работы разъёмы 0 и 1, но при желании можно перебросить эти функции на другие, так же использует порты 2,3 и 4 для перезагрузки платформы, активации из спящего режима и перенастройки. Управляется АТ-командами, обеспечивает скорость передачи данных до 11 Мбит/с поддерживает такие сетевые протоколы - UDP, TCP/IP (IPv4), DHCP, ARP, DNS, HTTP Client/Server, и протоколы шифровки данных. Имеет улучшенную модификацию, работающую по стандарту IEEE 802.11b/g, и обеспечивающую скорость в 54 Мбит/c.
Следующее в списке обзора –xBee, способ беспроводного соединения предназначенный для устройств, требующих длительной автономной работы на удалении от оператора и, как следствие, малого потребления энергии. Устройства, работающие на данной технологии, используют протоколы ZigBee и могут образовывать сложные по топологии сети при сверхмалом потреблении электроэнергии.
Для обзора прекрасно подойдут платы XBee Shield v5 

XBee Shield v5



Эти платформы осуществляют контакт между управляющей платформой и модулем xBee от компании Maxstream. Эти устройства управляются собственными контроллерами и организуют беспроводную сеть. Шилд обеспечивает следующие функции:

  • возможность работы с платами в форм-факторе «классической» Arduino;
  • возможность работы с платами в форм-факторе Arduino Nano;
  • возможность работы по интерфейсу USB (при монтаже FT232RL);
  • линии RTS и DTR при работе по USB – для обновления прошивки модулей XBee;
  • автоматический выбор питания (Arduino/USB);
  • все выводы XBee выведены на контактные площадки с шагом 2,54 мм.


И последний пункт данного обзора – способ связи через сети GSM или GPRS. Если у Вас в проекте собрано много устройств, работающих на удалении, можно воспользоваться уже существующими каналами телефонной связи для их соединения. Это выгодно при больших расстояниях между составляющими вашего проекта, скорость, правда, не высока по сравнению с предыдущими способами беспроводной связи, но, как правило, ее хватает. Так же объекты чаще всего стационарны. 
Здесь будет дано описание платформы Cosmo GSM Connect 

Cosmo GSM Connect



Этот шилд может использоваться для обеспечения голосовой связи и беспроводной передачи данных в сетях GSM, имеется возможность GPRS-соединения. Благодаря двух-диапазонному модулю M33G можно наладить прием-передачу данных хоть с ПК, хоть с контроллера Ардуино.
Работает устройство на стандартных частотах – 900/1800 МГц, в режиме приема-передачи потребляет 255мА, имеет интерфейс UART 1200-115200 бит/с. Рабочие протоколы – GPRS, CSD, SMS, FAX и встроенный стек протоколов TCP/UDP/IP. Максимальная скорость 85,6 КБит/c. Способно обеспечить голосовую связь.
Итак, обзор пора заканчивать, обеспечив комплектующие своего проекта беспроводной связью вы получаете больше возможностей для реализации своей фантазии. Каждый из выше перечисленных способов хорош в определенной ситуации, если вы ограничились комнатой, весьма неплох Bluetooth, если зданием – Wi-Fi. Если у вас работа на территории – можно использовать xBee или повязать проект с сетями пакетной передачи данных( все зависит от размеров и типа зоны связи, а так же от требуемой скорости и цены). Впрочем это всего лишь пример, подсказанный мне моим воображением, ограничиваться им вовсе не обязательно. Здесь указаны далеко не все платформы, обеспечивающие беспроводное соединение проектов на Ардуино с различными скоростями и дополнительным функционалом, существует не мало других шилдов, возможно необходимых для воплощения Вашей задумки, информацию о любом из них можно найти в свободном доступе в сети. 

Обзор подготовил Андрей Ханнанов 



Собирайте arduino своими руками - полный каталог плат