Джереми Блум - Изучаем Arduino: инструметы и методы технического волшебства
- Название:Изучаем Arduino: инструметы и методы технического волшебства
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2015
- Город:Санкт-Петербург
- ISBN:978-5-9775-3585-4
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Джереми Блум - Изучаем Arduino: инструметы и методы технического волшебства краткое содержание
Для радиолюбителей
Изучаем Arduino: инструметы и методы технического волшебства - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:

Рис. 11.1. PAN-конфигурации
- 224 -
Радиомодули ХВее могут обмениваться данными в последовательном режиме или с помощью интерфейса API. В последнем случае значения с цифровых или аналоговых выводов передаются напрямую. Далее мы рассмотрим работу модулей ХВее в режиме простого последовательного обмена. Последовательные данные, передаваемые одним модулем, приходят в другой, и наоборот. Это позволяет заменить проводной последовательный порт для связи между двумя платами Arduino (или для связи компьютера с платой Arduino) радио модулями ХВее.
Все модули ХВее имеют 20 контактов. В этой главе рассмотрим устройства ХВее серии 1, работающие по стандарту 802.15.4. С их помощью можно реализовать PAN-конфигурации "точка-точка" и "точка-многоточка", но они не поддерживают стандарт ZigBee. У вас могут оказаться и модули других типов, но скорее всего это будут ХВее S 1 (рис. 11.2).

Рис. 11.2. Модули ХВее Series 1
ПРИМЕЧАНИЕ
Следует помнить, что ХВее модули серий 1 и 2 несовместимы друг с другом. Для начинающих я рекомендую модули серии 1, т. к. они намного проще в настройке.
Есть различия и внутри каждой серии. Для большинства модулей выпускаются модификации Pro и non-Pro, они полностью совместимы, но габариты, стоимость, энергопотребление и дальность действия первых больше (примерно 1 миля для Pro и 300 футов для non-Pro [14] 1 миля (США) ≈ 1,6 км; 1 фут ≈ 30 см. - Ред.
). Я рекомендую начинать с более дешевой версии модулей и переходить на Pro, если вам понадобится большая дальность.
Кроме того, существуют модули ХВее для частот 2,4 ГГц и 900 МГц. Частота 900 МГц дает выигрыш в дальности действия, такой сигнал лучше проникает сквозь строительные конструкции, но она разрешена не во всех странах. Модули, работающие на частотах 2,4 ГГц и 900 МГц, несовместимы друг с другом.
- 225 -
Наконец, ХВее-модули поставляются с различными вариантами исполнения антеы: встроенными, внешними, с отдельными антенными модулями и внешними переходниками для антенн. Как правило, внешняя антенна обеспечивает лучшие характеристики, но занимает больше места.
В наших примерах будем использовать модули ХВее серии 1, non-Pro, с рабочей частотой 2,4 ГГц со встроенной антенной, работающие в режиме последовательного обмена данными. Маркировка и назначение контактов модуля приведены на рис. 11.3.

Рис. 11.3. Фрагмент технического описания модуля ХВее Series 1. маркировка и назначение контактов
ВНИМАНИЕ!
Для питания модуля ХВее необходимо напряжение 3,3 В, при подаче питания 5 В модуль выйдет из строя.
- 226 -
Существуют специальные переходники - платы расширения (рис. 11.4 ), позволяющие легко подключить модуль ХВее к плате Arduino. Есть несколько разновидностей ХВее-переходников, обладающих одинаковыми функциями и незначительно отличающихся друг от друга.
Рассмотрим функции плат расширения ХВее.
Arduino Wireless Shield
Sparkfun ХЬее Shield
Cooking Hacks ХВее Shield

Рис. 11.4. Внешний вид различных плат расширения для подключения модулей ХВее
Большинство плат Arduino работает от источника 5 В, логические уровни также находятся в диапазоне от 0 (низкий уровень) до 5 В (высокий уровень). Напряжение питания модулей ХВее равно 3,3 В, логические уровни тоже другие. Хотя у Arduino есть встроенный стабилизатор на 3,3 В, его ток недостаточен для питания ХВее-модуля. Поэтому на большинстве ХВее-переходников установлен линейный стабилизатор для питания модуля ХВее.
Для реализации обмена UART соединяют контакты Тх и Rx платы Arduino и модуля ХВее, однако при этом необходимо учитывать разный логический уровень для Arduino и ХВее. Сигналы нужно привести к одному уровню ( согласовать логические уровни). В различных моделях плат расширения это реализовано поразному.
На большинстве плат расширения установлены два светодиодных индикатора:
+ Associate -мигает, когда модуль работает в режиме последовательного обмена данными;
+ RSSI-загорается на короткое время при получении данных.
- 227 -
Перемычка или переключатель выбора UART
Модули ХВее общаются с Arduino через последовательный универсальный асинхронный приемопередатчик (UART) по контактам Rx и Тх. На многих платах Arduino (кроме Mega и Due) есть один доступный UART, который к тому же осуществляет USB-соединение с компьютером для программирования и отладки. На плате Leonardo тоже один UART (контакты Rx и Тх), но они не дуплексированы, т. к. программный интерфейс USB непосредственно встроен в микроконтроллер.
В случае платы Arduino Uno возникает вопрос: как модуль ХВее и компьютер подключить к одному разъему UART. Схема соединения контактов Rx и Тх (при подключении модуля ХВее через плату расширения) приведена на рис. 11.5.

Рис. 11.5. Возможность возникновения коллизий в линиях UART
Обратите внимание на надпись "Коллизии" на рис. 11.5. Подумайте, что произойдет, если модуль ХВее и ваш компьютер будут одновременно передавать данные на плату Arduino. Как Arduino узнать, откуда приходят данные? Если данные будут передаваться одновременно, произойдет так называемая коллизия, и информация исказится. Значит, плата Arduino не сможет одновременно общаться с компьютером и модулем ХВее по последовательному порту. Решить эту проблему можно двумя способами:
• отсоединять переходник ХВее при программировании платы Arduino;
• установить на переходнике ХВее перемычку или переключатель для подключения к плате Arduino.
Теперь при необходимости запрограммировать плату Arduino нужно либо отсоединить переходник ХВее, либо установить в требуемое положение переключатель (перемычку).
Программная или аппаратная реализация UART
Для соединения платы Arduino с модулями ХВее служит аппаратный UART-интерфейс (контакты 0 и 1 на плате Arduino). Эти выводы также используются для
- 228 -
подключения к компьютеру по USB. Большинство переходников также осуществляет соединение между ХВее и платой Arduino через аппаратный последовательный порт. Можно не отсоединять переходник ХВее при программировании платы Arduino, если воспользоваться библиотекой SoftwareSerial. Эта библиотека позволяет определить два произвольных цифровых контакта платы Arduino в качестве выводов Rx и Тх при соединении с переходником ХВее-. Но на переходнике ХВее обязательно должен быть переключатель для выбора контактов платы Arduino в качестве Rx и Тх. На переходнике Sparkfun ХВее установлен такой переключатель, коммутирующий контакты 2 и 3 платы Arduino в качестве линий Rx и Тх. Если на вашем переходнике есть такой переключатель, можно организовать взаимодействие с радиомодулями ХВее с помощью библиотеки SoftwareSerial.
Читать дальшеИнтервал:
Закладка: