- Вимоги до обладнання
- Налаштування модулів XBee за допомогою XCTU
- Програмування та тестування зв'язку XBee за допомогою Arduino
У попередніх уроках ми дізналися про протокол ZigBee та його архітектуру, а також дізналися про бездротовий зв'язок між двома модулями Xbee. Тепер у цьому підручнику ми будемо взаємодіяти модуль XBee з платою Arduino Uno. XBee, підключений до плати Arduino, буде виконувати функції приймача, і він буде бездротово спілкуватися з іншим модулем XBee, який послідовно підключений до ноутбука за допомогою плати Explorer. Тож давайте дослідимо бездротовий зв’язок Arduino за допомогою XBee.
Вимоги до обладнання
- 1 x Arduino Uno
- 2 x модулі XBee Pro S2C (можна використовувати будь-яку іншу модель)
- 1 x плата Xbee explorer (необов’язково)
- 1 x дошка Xbee Breakout (додатково)
- USB-кабелі
- Світлодіоди
Налаштування модулів XBee за допомогою XCTU
Як ми дізналися в попередніх навчальних посібниках, модуль XBee може виконувати функції координатора, маршрутизатора або кінцевого пристрою, але його потрібно налаштувати для роботи в бажаному режимі. Отже, перед тим, як використовувати модулі XBee з Arduino, ми повинні налаштувати ці модулі за допомогою програмного забезпечення XCTU.
Для підключення модуля XBee до ноутбука використовується USB-послідовний перетворювач або спеціально розроблена плата провідника. Просто підключіть модуль XBee до плати Explorer і підключіть його до ноутбука за допомогою кабелю USB.
Якщо у вас немає перетворювача або плати дослідника, то плату Arduino можна використовувати як USB-послідовний пристрій, який може легко спілкуватися з XBee та ноутбуком. Просто завантажте порожній ескіз на плату Arduino, і тепер він може поводитися як перетворювач USB в послідовний.
З'єднання для взаємодії модуля ZigBee з Arduino показано на схемі.
З'єднання:
- Tx (pin2) XBee -> Tx плати Arduino
- Rx (pin3) Xbee -> Rx плати Arduino
- Gnd (pin10) Xbee -> GND плати Arduino
- Vcc (Pin1) Xbee -> 3.3v плати Arduino
У цьому посібнику дошка Explorer використовується для налаштування модулів XBee.
Завантажте програмне забезпечення XCTU за цим посиланням та встановіть його. Завантаживши та встановивши програмне забезпечення XCTU, відкрийте його та переконайтеся, що ваш модуль XBee правильно підключений. Перевірте COM-порт плати Arduino в диспетчері пристроїв.
Крок 1: - Тепер натисніть на кнопку пошуку. Це покаже всі радіочастотні пристрої, підключені до вашого ноутбука. У нашому випадку він буде показувати лише один модуль XBee.
Крок 2: - Виберіть послідовний порт плати Explorer / плати Arduino та натисніть Далі.
Крок 3: - У наступному вікні встановіть параметри USB-порту, як показано нижче, і натисніть кнопку Готово.
Крок 4: - Виберіть виявлений пристрій і натисніть Додати вибраний пристрій . Цей процес додасть ваш модуль XBee до інформаційної панелі XCTU.
Крок 5: - Тепер ви можете налаштувати свій модуль XBee у цьому вікні. Використовуйте команди AT або вводьте дані вручну. Як бачите, на лівій панелі є R, що означає, що Xbee перебуває в режимі маршрутизатора. Ми повинні зробити його координатором для передавача.
Спочатку оновіть мікропрограму, натиснувши Оновити мікропрограму.
Крок 6: - Виберіть сімейство продуктів вашого пристрою, яке доступне на задній панелі модуля XBee. Виберіть набір функцій та версію мікропрограми, як зазначено нижче, і натисніть Оновити.
Крок 7: - Тепер вам потрібно надати дані ID, MY та DL, щоб встановити зв’язок з іншими XBee. Ідентифікатор залишається однаковим для обох модулів. Лише обмін даними MY та DL, тобто MY для приймача XBee, стає DL передавача XBee (координатора), а DL для приймача XBee стає МОЙ передавача XBee. Зробіть CE координатором, а потім натисніть кнопку Написати. Як показано нижче.
ATDL |
ATMY |
||
Координатор XBee 1 |
|||
Кінцевий пристрій XBee 2 |
Крок 8: - Після запису вищезазначених даних до частини передавача, вийміть їх із плати дослідника та підключіть до другого модуля XBee. Повторіть той самий процес, що і вище, лише зміни DL, MY та CE. Оскільки ми зробимо другий XBee як Кінцевий пристрій, то у спадному меню CE виберіть Кінцевий пристрій і натисніть кнопку Написати.
Крок 9: - Тепер наші модулі XBee готові до взаємодії з платою Arduino. Ми підключимо передавач XBee до ноутбука, а приймач XBee за допомогою плати Arduino. Потім передайте команди приймачу, використовуючи ноутбук.
Схема ланцюга для приймача:
З'єднання:
- Tx (pin2) XBee -> Rx плати Arduino
- Rx (pin3) Xbee -> Tx плати Arduino
- Gnd (pin10) Xbee -> GND плати Arduino
- Vcc (Pin1) Xbee -> 3.3v плати Arduino
Якщо ви використовуєте плату Arduino для підключення передавача ZigBee до ноутбука, підключення будуть такими ж, як і для програмування ZigBee.
Програмування та тестування зв'язку XBee за допомогою Arduino
Тепер ми напишемо код для приймача Arduino, щоб увімкнути світлодіод, коли частина приймача отримує 'a', і блиматиме світлодіодом, коли отримує 'b', для інших символів світлодіод залишатиметься ВИМК.
Код простий і зрозумілий. Ми просто перевіримо вхідні символи за допомогою функції Serial.available () і збережемо цей символ у змінній за допомогою Serial.read (); функція та поєднати її з 'a' та 'b'. Якщо збіг правильний, виконайте завдання, зазначене в умові. Повний код частини приймача подано в кінці. Завантажте код до приймача Arduino. Перед завантаженням вийміть дроти Tx та Rx XBee.
Тепер ми всі готові протестувати наш передавач і приймач. Для передачі команди передавальній частині ми використаємо консольний термінал XCTU. Клацніть на піктограму консолі біля опції налаштувань. Потім натисніть кнопку Відкрити, щоб підключити XBee до ноутбука.
Введіть 'a' у журналі консолі. Ви побачите, що світлодіод увімкнеться на 2 секунди, а після цього введіть "b", щоб світлодіод блимав 5 разів.
Ви також можете підключити передавач XBee до плати Arduino, просто трохи змініть код приймача. Замість функції Serial.read () використовуйте функцію Serial.println () для надсилання символів.
Перевірте демонстраційне відео, подане нижче.
Ця установка XBee-Arduino може бути використана для створення багатьох корисних бездротових додатків, таких як система домашньої автоматизації, чат-кімната тощо.