nrf24pinsСуществуют недорогие радимодули nRF24L01+ ,которые работают на частоте 2.4ггц и поддерживают скорость передачи до 2Mbps.Радиоканал на данных радиомодулях может обмениваться информацией в оба направления. Радиосеть может состоять из нескольких устройств на базе nRF24L01+ или NRF24LE1.

nRF24L01+ - отличный вариант для объединения отдаленных модулей в системе умного дома внутри помещений без прокладки проводов.

Технические характеристики:

-Частота передачи/приема 2.4ггц.
- Дальность до 100 м.В помещении - до 30 м. 
- Скорость до 2 Мб.Возможные варианты: 250kbps, 1Mbps и 2Mbps.
- Интерфейс взаимодействия с микроконтроллером- SPI. Выводы толеранты к 5 вольтам.
- Напряжение: 3-3.6В (рекомендуется 3,3) В. При попытке подключения 5 В вывод из строя маловероятен,но работать устройство отказывается..
- Максимальная выходная мощность: 0 dBm
- Коэффициент усиления антенны (пиковая): 2dBm
-Количество каналов: 126. Нулевой канал начинается с 2400мгц и далее с шагом 1 мгц,например 70 канал находится соответственно на 2470мгц. При установке скорости 2мгц занимается ширина двух каналов..

Даташит на устройство nRF24L01+ : nRF24L01Pluss_Preliminary_Product_Specification_v1_0.pdf.

Существует, но уже не встречается в продаже модуль nRF24L01 (без плюса) - это более старая версия радиомодуля,в которой нет поддержки скорости 250кб и ниже чувствительность по сравнению с nRF24L01+. Так же в нем нет некоторых режимов работы.

Даташит на устройство nRF24L01: nRF24L01P.pdf.

Примерная цена за 1 штуку:  1$.

Радиомодуль возможно подключить к любому микроконтроллеру, который имеет интерфейс SPI , а так же к миникомпьютерам, например Raspberry PI.

Встречается несколько разновидностей разводки печатной платы и соответственно распиновка подключения отличается - смотрите фото выше.  Для увеличения максимального растояния существуют так же радиомодули с уситителем и внешней антенной:

lo1 antДанный радиомодуль может не иметь в комплекте саму антенну - её можно использовать от старого WI-FI роутера или WI-FI сетевой карты. Существуют аналогичные модули со встроенной керамической антенной. Подключение аналогично распиновке, указанной на предыдущем фото.

Заявленная дальность до 1100 метров при скорости 250кбит. При 1мбит - 750 метров. А при скорости 2мбит- 520 метров. Скорее всего эти параметры указаны при отсутсвии препятствий и если все радиомодули в радиосети будут именно такие. Рекомендую уменьшать избыточную мощность через setPALevel (библиотека Nf24) или напрямую в регистре RF_SETUP.

Цена от 5$ на Ebay по наименованию NRF24L01+PA+LNA.

Назначение выводов:

SCK (Serial ClocK) — тактирование (синхронизация).
MOSI / MI (Master Out Slave In) — вход данных.
MISO / MO (Master In Slave Out) — выход данных.
CE/SS - Выбор ведомого на шине SPI из нескольких устройств.
SCN - выбор режима приема/передача , фактически тот же CE.
IRQ - выход прерывания,чаще всего не используется. Необходим для немедленной реакции микроконтроллера при приеме нового пакета данных.
GND - земля,масса,минусовая шина.
Vcc  -питание модуля 3.3в. Для надежной работы паралельно питанию как можно ближе к радиомодулю рекомендуется подключить электролитический конденсатор не менее 100мкф , а так же керамический на 0.1 мкф.

Библиотека для работы с nRF24L01+ в Arduino RF24  .  В архиве имеется так же библиотека для работы c Raspberry PI в папке librf24-rpi.Между Arduino и Raspberry возможен обмен данными.

Библиотеку и пример работы  с nRF24L01+ на Си можно посмотреть тут.

Ограничения библиотек: В радиосеть могут объеденены максимум до 6 радиомодулей. Радиомодуль может работать  только максимум с 6 адресами, но клиенты могут иметь и одинаковые адреса ,тем самым увеличив максимальное количество клиентов в радиосети. Длинна переданого пакета не больше 32 байт.

В интернете можно найти  и другие библиотеки для работы с Arduino.

P.S: Существуют радиомодули NRF24LE1 со встроеным микроконтроллером на базе 8051-compatible, к которым сразу можно подключать датчики или реле. Подробнее тут.

Подключение nRF24L01+ к Arduino

Таблица подключения радиомодуля к платам Arduino:

Arduino UNO     Arduino Mega
SCK 13 52
MOSI 11 51
MISO 12 50
CSN 10* 53**
CE/SS 9* 48**

  * - при установке  иницилизации в скетчке командой RF24 radio(9,10);

  ** - при установке иницилизации в скетчке командой RF24 radio(48,53);

  Выводы СЕ и CSN могут быть назначены любые свободные.

  Питание подключается с соотвествующих выводов платы Arduino: GND и 3.3V.

  Пример скетча клиента тут , сервера - тут.

 

 

Подключение nRF24L01+ к Raspberry PI

Raspberry PI    
SCK 11
MOSI 9
MISO 10
SCN 8*
CE 25*

 Нумерация выводов по BCM GPIO. Карту пинов можно посмотреть на страничке Работа с GPIO и датчиками.

 

 

 

 

 

Подключение nRF24L01+ к компьютеру через USB

Статья находится тут. Количество подключаемых клиентов - до 20-30 штук.

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.