- RFM69HCW RF модуль
- RFM69HCW
- Розпіновки та опис модуля RFM69
- Підготовка дошки розробки на замовлення
Крок 3: Підготуйте друковану плату, я дотримуюся цього підручника з домашньої друкованої плати. Я надрукував слід на мідній дошці і впустив його в офорт
Крок 4: Виконуйте процедуру для обох плат і припаюйте модуль до контуру. Після пайки обидва мої модулі виглядають так, як показано нижче
Цокольовка модуля RFM69HCW РФ наведена на малюнку
- Необхідні матеріали
- Апаратне підключення
- Запуск Прикладного ескізу
- Робота з прикладом ескізу
Коли мова заходить про надання бездротових можливостей вашим проектам, гібридний передавач і приймач 433 МГц ASK є загальним вибором серед інженерів, розробників та любителів завдяки низькій ціні, простоті у використанні бібліотек та підтримці спільноти. Ми також побудували декілька проектів, таких як контрольована РЧ автоматизація будинку та бездротовий дзвінок, використовуючи цей RF-модуль 433 МГц. Але часто гібридного передавача і приймача ASK просто недостатньо, його низький діапазон і характер одностороннього зв'язку робить його непридатним для багатьох додатків
Щоб вирішити цю постійно виникаючу проблему, розробники HopeRF розробили цікавий новий RF-модуль під назвою RFM69HCW. У цьому підручнику ми дізнаємося про RF RF RF модуль RFH69HCW та його переваги. Спочатку ми виготовимо домашню друковану плату для RFM69HCW, а потім взаємодіємо RFM69HCW з Arduino, щоб перевірити її роботу, щоб ви могли використовувати її у вибраних вами проектах. Отже, давайте почнемо.
RFM69HCW RF модуль
RFM69HCW - це дешевий простий у використанні радіомодуль, який працює в неліцензійному діапазоні ISM (промисловість, наука та медицина), подібний до RF-модуля nRF24L01, який ми використовували в попередніх проектах. Він може використовуватися для зв'язку між двома модулями або може бути налаштований як Mesh Network для зв'язку між сотнями модулів, що робить його ідеальним вибором для побудови недорогих бездротових мереж короткого діапазону для датчиків, що використовуються в автоматизації будинків та інших проектах збору даних.
Особливості RFM69HCW:
- +20 дБм - 100 мВт Потужність вихідної потужності
- Висока чутливість: до -120 дБм при 1,2 кбіт / с
- Слабкий струм: Rx = 16 мА, утримання регістру 100nA
- Програмований Pout: від -18 до +20 дБм з кроком 1 дБ
- Постійна радіочастотна характеристика в діапазоні напруги модуля
- Модуляції FSK, GFSK, MSK, GMSK та OOK
- Вбудований бітовий синхронізатор, що виконує відновлення годинника
- 115 дБ + динамічний діапазон RSSI
- Автоматичний RF Sense із надшвидким AFC
- Пакетний двигун із вбудованим датчиком температури CRC-16, AES-128, 66-байтним FIFO
- High Link бюджет
- Дуже низька вартість
RFM69HCW
Частота
RFM69HCW розроблений для роботи в діапазоні ISM (промислова, наукова та медична) - набір неліцензійних радіочастот для малопотужних пристроїв короткої дальності. Різні частоти є законними в різних областях, тому модуль має безліч різних версій 315 433 868 та 915 МГц. Усі основні параметри радіозв'язку програмовані, і більшість з них можна динамічно встановлювати, також RFM69HCW пропонує унікальну перевагу програмованих вузькосмугових та широкосмугових режимів зв'язку.
Примітка: Через порівняно низьку потужність та малий діапазон, впровадження цього модуля в невеликий проект не буде проблемою, але якщо ви думаєте про те, щоб зробити з нього продукт, переконайтеся, що ви використовуєте правильну частоту для Ваше місцезнаходження.
Діапазон
Щоб краще зрозуміти асортимент, нам доводиться мати справу із досить складною темою, яка називається RF Link Budget. Отже, що це за бюджет посилань і чому він так важливий? Бюджет посилань схожий на будь-який інший бюджет, те, що у вас є на початку, і яке ви витрачаєте з часом, якщо ваш бюджет витрачений, ви не можете витратити більше.
Бюджет зв'язку також пов'язаний із зв'язком або зв'язком між відправником і приймачем, він заповнюється потужністю передачі відправника та чутливістю приймача, і він обчислюється в децибелах або дБ, він також є частотою залежний. Бюджет посилання вираховується за всілякі перешкоди та шум між відправником та приймачем, як відстань кабелів стіни дерева будинки, якщо бюджет посилання витрачений, приймач створює лише деякий шум на виході, і ми не отримаємо жодного корисного сигналу. Згідно зі специфікацією на RFM69HCW , він має посилання бюджет 140 дБ по порівнянні з 105 дБ АСК Гібридний трансмітер але що це означає, що це важлива відмінність? На щастя, ми знаходимоБюджетні калькулятори радіозв'язку в Інтернеті, тож давайте зробимо кілька розрахунків, щоб краще зрозуміти тему. По-перше, припустимо, що у нас є прямий приціл між відправником і одержувачем, і все ідеально, оскільки ми знаємо, що наш бюджет для RFM69HCW становить 140 дБ, тож давайте перевіримо найбільшу теоретичну відстань, яку ми можемо зв’язати, ми встановлюємо все на нуль і відстань до 500 км, частота до 433 МГц, і ми отримуємо потужність прийому по горизонталі 139,2 дБм
Тепер я встановлюю все на нуль, а відстань - на 9 км, Частота - на 433 МГц, і ми отримуємо потужність прийому по горизонталі 104,3 дБм
Отже, з наведеним вище порівнянням, я думаю, ми всі можемо погодитись, що модуль RFM69 набагато кращий за гібридний передавач ASK та модуль приймача.
Антена
Обережно! Приєднання антени до модуля є обов’язковим, оскільки без нього модуль може бути пошкоджений власною відбитою силою.
Створення антени не таке складне, як може здатися. Найпростішу антену можна зробити просто з одножильної дроту 22SWG. Довжина хвилі частоти може бути обчислена за формулою про / F , де V є швидкість передачі і F є (середня) частота передачі. У повітрі v дорівнює с , швидкість світла, яка дорівнює 299,792,458 м / с. Таким чином, довжина хвилі для діапазону 433 МГц становить 299,792,458 / 433,000,000 = 34,54 см. Половина з них становить 17,27 см, а чверть - 8,63 см.
Для діапазону 433 МГц довжина хвилі становить 299,792,458 / 433,000,000 = 69,24 см. Половина з них становить 34,62 см, а чверть - 17,31 см. Отже, з наведеної формули ми можемо бачити процес розрахунку довжини антенного дроту.
Вимоги до живлення
RFM69HCW має робочу напругу від 1,8 до 3,6 В і може передавати струм до 130 мА при його передачі. Нижче в таблиці ми чітко бачимо енергоспоживання модуля в різних умовах
Попередження: Якщо вибраний вами Arduino використовує логічні рівні 5 В для зв'язку з підключенням периферійного пристрою модуля безпосередньо до Arduino, це пошкодить модуль
Символ |
Опис |
Умови |
Хв |
Тип |
Макс |
Одиниця |
IDDSL |
Струм у режимі сну |
- |
0,1 |
1 |
uA |
|
IDDIDLE |
Струм у режимі очікування |
RC-генератор увімкнено |
- |
1.2 |
- |
uA |
IDDST |
Струм у режимі очікування |
Кристалічний генератор увімкнено |
- |
1,25 |
1.5 |
uA |
IDDFS |
струм в синтезаторі режимі |
- |
9 |
- |
uA |
|
IDDR |
струму в режимі прийому |
- |
16 |
- |
uA |
|
IDDT |
Струм живлення в режимі передачі з відповідним узгодженням, стабільний у всьому діапазоні VDD |
RFOP = +20 дБм, на PA_BOOST RFOP = +17 дБм, на PA_BOOST RFOP = +13 дБм, на виводі RFIO RFOP = +10 дБм, на виводі RFIO RFOP = 0 дБм, на виводі RFIO RFOP = -1 дБм, на виводі RFIO |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
мА мА мА мА mAmA |
У цьому підручнику ми будемо використовувати два Arduino Nano та два перетворювачі логічного рівня для зв'язку з модулем. Ми використовуємо Arduino nano, оскільки вбудований внутрішній регулятор може управляти піковим струмом дуже ефективно. Діаграма Fritzing у розділі апаратного забезпечення нижче пояснить вам це більш чітко.
ПРИМІТКА: Якщо ваш блок живлення не може забезпечити пік струму 130 мА, ваш Arduino може перезавантажитися або, що ще гірше, модуль може не працювати належним чином, у цій ситуації конденсатор великого значення з низьким значенням ESR може покращити ситуацію
Розпіновки та опис модуля RFM69
Етикетка |
Функція |
Функція |
Етикетка |
АНТ |
Вихід / вхід радіочастотного сигналу. |
Power Ground |
GND |
GND |
Заземлення антени (те саме, що заземлення електромережі) |
Цифрові вводи-виводи, програмне забезпечення налаштовано |
DIO5 |
DIO3 |
Цифрові вводи-виводи, програмне забезпечення налаштовано |
Скинути вхід тригера |
RST |
DIO4 |
Цифрові вводи-виводи, програмне забезпечення налаштовано |
SPI Chip select input |
NSS |
3,3 В |
Живлення 3,3 В (принаймні 130 мА) |
Вхід годинника SPI |
SCK |
DIO0 |
Цифрові вводи-виводи, програмне забезпечення налаштовано |
SPI Введення даних |
МОЗІ |
DIO1 |
Цифрові вводи-виводи, програмне забезпечення налаштовано |
Виведення даних SPI |
MISO |
DIO2 |
Цифрові вводи-виводи, програмне забезпечення налаштовано |
Power Ground |
GND |
Підготовка дошки розробки на замовлення
Коли я купив модуль, він не постачався з сумісною платою, тому ми вирішили зробити його самостійно. Якщо вам, можливо, доведеться зробити те саме, просто виконайте дії. Крім того, зауважте, що не обов’язково виконувати ці дії, ви можете просто припаяти дроти до RF-модуля і підключити їх до макетної плати, і це все одно буде працювати. Я дотримуюся цієї процедури лише для того, щоб отримати стабільну та надійну настройку.
Крок 1: Підготуйте схеми для модуля RFM69HCW
Крок 3: Підготуйте друковану плату, я дотримуюся цього підручника з домашньої друкованої плати. Я надрукував слід на мідній дошці і впустив його в офорт
Крок 4: Виконуйте процедуру для обох плат і припаюйте модуль до контуру. Після пайки обидва мої модулі виглядають так, як показано нижче
Цокольовка модуля RFM69HCW РФ наведена на малюнку
Необхідні матеріали
Ось список речей, які вам знадобляться для спілкування з модулем
- Два модулі RFM69HCW (з відповідними частотами):
- 434 МГц (WRL-12823)
- Два Arduino (я використовую Arduino NANO)
- Два перетворювачі логічного рівня
- Дві пробивні дошки (я використовую виготовлену на замовлення дошку)
- Кнопка
- Чотири світлодіоди
- Один резистор 4,7 К, чотири резистори 220 Ом
- Провід перемички
- Емальований мідний дріт (22AWG) для виготовлення антени.
- І, нарешті, пайка (якщо ви цього ще не зробили)
Апаратне підключення
У цьому підручнику ми використовуємо Arduino nano, який використовує логіку 5 вольт, але модуль RFM69HCW використовує логічні рівні 3,3 вольта, як ви можете чітко бачити у наведеній вище таблиці, тому для належного зв'язку між двома пристроями перетворювач логічного рівня є обов’язковим, на діаграмі фризування нижче ми показали вам, як підключити Arduino nano до модуля RFM69.
Вузол відправника діаграми фризингу
Вузол відправника таблиці підключень
Pin Arduino |
RFM69HCW Pin |
Штифти вводу / виводу |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
МОЗІ |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Вузол приймача діаграми фризингу
Вузол приймача таблиці з'єднань
Pin Arduino |
RFM69HCW Pin |
Штифти вводу / виводу |
D2 |
DIO0 |
- |
D9 |
- |
СВІТЛОДІОДНИЙ |
D10 |
NSS |
- |
D11 |
МОЗІ |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Запуск Прикладного ескізу
У цьому підручнику ми збираємося створити два вузли Arduino RFM69 і змусити їх взаємодіяти між собою. У розділі нижче ми знатимемо, як запустити та запустити модуль за допомогою бібліотеки RFM69, написаної Феліком Русу з LowPowerLab.
Імпорт бібліотеки
Сподіваємось, ви вже трохи програмували Arduino і знаєте, як встановити бібліотеку. Якщо не взяти, перевірте розділ Імпортування.zip-бібліотеки за цим посиланням
Підключення вузлів
Підключіть USB вузла відправника до свого ПК, новий номер COM-порту слід додати до списку «Інструменти / порт» IDE Arduino, зафіксувати його, тепер підключіть вузол приймача, інший COM-порт повинен з’явитися в «Інструменти / Список портів, також зафіксуйте його, за допомогою номера порту ми завантажимо ескіз відправнику та вузлу одержувача.
Відкриття двох сесій Arduino
Відкрийте два сеанси Arduino IDE, двічі клацнувши піктограму Arduino IDE після завантаження першого сеансу, обов’язковим є відкриття двох сеансів Arduino, оскільки саме так ви можете відкрити два вікна послідовного монітора Arduino і одночасно контролювати вихід двох вузлів
Відкриття прикладу коду
Тепер, коли все налаштовано, нам потрібно відкрити приклад коду в обох сеансах Arduino, щоб зробити це, goto
Файл> Приклади> RFM6_LowPowerLab> Приклади> TxRxBlinky
і натисніть його, щоб відкрити
Модифікація прикладу коду
- У верхній частині коду знайдіть #define NETWORKID і змініть значення на 0. За допомогою цього ідентифікатора всі ваші вузли можуть спілкуватися між собою.
- Шукайте #define FREQUENCY, щоб змінити це відповідно до частоти плати (моя 433_MHz).
- Шукайте #define ENCRYPTKEY, це ваш 16-розрядний ключ шифрування.
- Шукайте #define IS_RFM69HW_HCW і розкоментуйте його, якщо ви використовуєте модуль RFM69_HCW
- І нарешті, знайдіть #define NODEID, який за замовчуванням повинен бути встановлений як RECEIVER
Тепер завантажте код на ваш попередньо встановлений вузол приймача.
Час змінити ескіз для вузла відправника
Тепер у макросі #define NODEID змініть його на SENDER і завантажте код на ваш Sender Node.
Ось і все, якщо ви зробили все правильно, у вас є дві цілі робочі моделі, готові до тестування.
Робота з прикладом ескізу
Після успішного завантаження ескізу ви побачите, як червоний світлодіод, підключений до штифта D4 Arduino, спалахує, тепер натисніть кнопку у вузлі відправника, і ви побачите, що червоний світлодіод вимикається, а зелений світлодіод, який підключений до виводу D5 Arduino, загоряється, як показано на малюнку нижче
Ви також можете спостерігати за натисканням кнопки! текст у вікні послідовного монітора, як показано нижче
Тепер спостерігайте за синім світлодіодом, який підключений до виводу D9 вузла відправника, він буде блимати двічі, і у вікні послідовного монітора приймального вузла ви побачите наступне повідомлення, а також синій світлодіод, який підключений до виводу D9 вузол приймача засвітиться. Якщо ви бачите вищевказане повідомлення у вікні послідовного монітора вузла приймача, а також, якщо світлодіод загоряється Вітаємо! Ви успішно зв’язали модуль RFM69 із Arduino IDE. Повну роботу цього підручника також можна знайти у відео, поданому внизу цієї сторінки.
У цілому ці модулі виявляються чудовими для будівництва метеостанцій, гаражних воріт, бездротового контролера насоса з індикатором, безпілотників, роботів, вашої кішки… небо - межа! Сподіваюся, ви зрозуміли підручник і сподобалось будувати щось корисне. Якщо у вас виникли запитання, залиште їх у розділі коментарів або використовуйте форуми для інших технічних запитань.