Беспроводная передача данных, ISM-диапазон
В последнее время на Хабре было описано множество примеров реализации погодных термометров, систем сбора информации, управлением в системах «умный дом» — как проводных, передающих информацию по Ethernet, так и беспроводных, по WiFi™. В каждом конкретном случае — есть своя специфика, есть свои плюсы и минусы. И в данном материале речь пойдет об еще одном способе передачи данных — передаче в ISM-диапазоне 868 МГц.
В Российской Федерации к нелицензируемому диапазону частот, которые могут быть использованы без оформления разрешения ГКРЧ при условии соблюдения требований по ширине полосы, излучаемой мощности и назначению готового изделия, относят:
- 433.075—434.750 МГц
- 868.0—868.2 МГц
- 868.7—869.2 МГц
- 2400.0—2483.5 МГц
Коротко, для 434 МГц мощность передатчика должна составлять не более 10 мВт, для 868.0—868.2 МГц — до 10 мВт, для 868.7—869.2 МГц — до 25 мВт, для 2.4 ГГц — не более 100 мВт. Подробнее об ограничениях читайте в «Постановлении Правительства РФ от 12 октября 2004 г. N 539 «О порядке регистрации радиоэлектронных средств и высокочастотных устройств».
Основное различие между данными ISM-диапазонами определяется частотой излучения и как следствие, свойствами радиоволн. Применительно к задаче — сбора данных, систем беспроводного управления и контроля, наиболее оптимальным решением является использование диапазона 868 МГц. По сравнению с СВЧ диапазоном 2.4 ГГц, более длинные волны 868 МГц имеют меньшую интенсивность затухания, соответственно большая проницаемость сквозь преграды и дальность передачи сигнала гораздо выше. Для примера, кирпичная стена толщиной 89 мм поглощает около 3.5 дБ мощности волны 868 МГц и 6 дБ у 2.4 ГГц. Также в сравнении с диапазоном 433 МГц, у 868 МГц меньшая загруженность частоты, что способствует более надежной работе радиоканала.
Предельная толщина препятствия, через которую может пройти радиосигнал | ||
Частоты | Кирпичная стена, м. | Бетон, м. |
434 МГц | 4.3 | 0.47 |
868 МГц | 2.18 | 0.24 |
2.4 ГГц | 0.78 | 0.09 |
Следующей важной характеристикой является скорость передачи данных. Современные ISM трансиверы имеют достаточно высокие показатели, в среднем это значение от 256 до 1000 кбит/сек, что для подобного рода задач вполне достаточно.
Таким образом, можно заключить, что в совокупности таких параметров как — высокая проницаемость, меньшая загруженность частотного диапазона, а также достаточно высокая скорость передачи данных, радиоволны 868 МГц является наиболее оптимальным решением данного рода задач по сравнению с остальным ISM-диапазоном.
Для примера передачи данных в ISM-диапазоне соберем устройство сбора показаний с удаленных датчиков. Допустим это будет температура и влажность воздуха. Т.е. нам нужно собрать 2 разнесенных устройства — первое будет выполнять роль головного и отображать сводную информацию, а второе — датчик, будет периодически производить замеры и отсылать данные на головное устройство. Причем оба устройства будут размещены вне прямой видимости, в двух разных зданиях.
В качестве платформы, позволяющей организовать радиоканал 868 МГц, воспользуемся платкой «Колибри» (Arduino Mini + RF). В ней используется трансивер EZRadioPRO Si4431 с программируемой выходной мощностью от -8 до +13dbM, что соответствует нормам ГКРЧ (20 мВт). Шаг настройки 3dbM. Чувствительность приемника –121 dBm. Энергопотребление 18.5 mA на прием и 30 mA на передачу. Допустимое питание платы от 5 или от 3.3V. Скорость передачи данных 0.123 — 256 кбит/сек. Помимо всего прочего плата программно совместима с Arduino IDE, что позволяет ее легко программировать. Принципиальная схема.
Для замера влажности и температуры воспользуемся цифровым датчиком SHT10. Он достаточно компактен и требует минимальной обвязки. Точность измерения показаний температуры ±0.5℃, а влажности 4.5%. Даташит.
Для отображения информации на головном устройстве возьмем графический ЖК-дисплей с разрешением 128*64 точки (WG12864A-TGH-VNW). Подсветка белая, цвет точки серый. И, дабы не занимать все пины микроконтроллера под дисплей, подключать его будем по SPI с помощью микросхемки MCP23S17. Но об этом чуть позже.
Ключевые компоненты системы | |
Для головного устройства | Для удаленного датчика |
«Железо» | |
|
|
Софт | |
|
|
Головное устройство
1. Сборка
Для начала соберем схему головного устройства.
Головное устройство будет состоять из платы Колибри, которая будет принимать и отображать данные на ЖК-дисплее. И как было сказано выше, работать с ЖК-дисплеем будем через интерфейс SPI, посредством микросхемы MCP23S17.
Данную схему соберем на макетной плате. Выводы обозначенные синими линиями подключим к плате Колибри — это цифровые контакты 10, 11, 12, 13 (SPI). На макетную плату и на Колибри остается подать питание 5V. Питание устройства предполагается либо от блока питания, где “честные” 5V, либо через линейный стабилизатор.
2. Прошивка
Для работы с радиомодулем платы Колибри воспользуемся готовой библиотекой EZRadioPRO под Arduinо IDE. Ее нужно скачать и установить внутри IDE. Также нам понадобится библиотека I2C_graphical_LCD_display для работы с ЖК дисплеем. Ее также нужно скачать и установить.
Данный скетч инициализирует радиоканал, головному устройству назначается адрес 0. Выставлена максимальная мощность передатчика 13dBm: SI4431.Init(7);
В данном примере на дисплей выводятся показания от 1 удаленного датчика, при необходимости аналогичным образом можно выводить показания от множества датчиков.
Далее прошивочку нужно загрузить в плату Колибри. Сделать это можно несколькими способами.
- С помощью платы Ардуино
- С помощью USB-Serial Converter
- С помощью внутрисхемного программатора.
Для прошивки с помощью Ардуино, сперва нужно извлечь из него микроконтроллер. После этого нужно соединить проводками обе платы следующими пинами:
Ардуино | Колибри |
Pin 0 | Pin 0 |
Pin 1 | Pin 1 |
RESET | RESET |
+5V | +5V |
GND | GND |
После того как соединили и выставили на Колибри джампер питания в положение 5V, можно подключить Ардуино к ПК. В Arduino IDE укажите правильный порт и в разделе Tools -> Board выберите параметр «Arduino Nano w/ Atmega 168», после чего нажмите на кнопку «Загрузить».
Аналогичные действия предпринимаются при загрузки с помощью USB-Serial конвертера. Ну и самый легкий способ — это загрузка с помощью программатора. В Arduino IDE нажимаете кнопку «Скомпилировать», далее «находите» hex-файл с прошивкой. Подключаетесь программатором к ICSP разъему Колибри, подаете на плату питание, загружаете в нее прошивку, указав предварительно в оболочке вашего программатора МК ATMEGA168A. Фьюзы: 0xF8, 0xDF, 0xFF. Lockbit: 0xCF.
Прошили, отключили все лишние проводки от Колибри. Теперь подаем на плату питания и на ЖК дисплее должна появится надпись: I’m Ready! Головное устройство собрано, переходим к следующему шагу.
Датчик
1. Сборка
Плата с датчиком будет состоять только из одного цифрового сенсора. Питание платы будет батарейное, 3V.
Схема датчика SHT10.
Соберем по схеме на макетной плате. Сенсор подключается к Колибри по 4 проводкам (цифровые пины 6 и 7 и питание).
Прежде чем подключить к Колибри батарейный отсек, необходимо загрузить прошивку. А уже после этого подключаем к Колибри батарейный отсек к разъему питания на 3V и джампер также выставляем в положение 3V.
Пару слов об питании. Если предполагается эксплуатация датчика вне помещений, тогда необходимо использовать соответствующие элементы питания. Наиболее морозоустойчивыми являются элементы питания — литий-тионил-хлоридные (LiSOCl2), литий-железо-фосфатные (LiFePO4).
2. Прошивка
Помимо библиотеки EZRadioPRO для датчика понадобится библиотека SHT1x, с ее помощью будем считывать показания температуры и влажности. Качаем и устанавливаем эту библиотеку.
Схема работы данной программы проста. После инициализации радиоканала, где ему назначается адрес 1 и первой передачи данных на устройство с адресом 0, микроконтроллер переводит трансивер в спящий режим и потом сам засыпает на 15 секунд. По истечению данного времени по сторожевому таймеру он пробуждается, включает трансивер и вновь происходит передача данных.
К одному головному устройству можно привязать множество таких датчиков.
Загружаем этот скетч в Колибри. После загрузки отключаем все лишнее, подключаем батарейное питание и включаем питание. Через некоторое время на головном устройстве получим показания с удаленного датчика.
Уф, вроде все написал. Если что-то непонятно, спрашивайте 🙂
Источник
Беспроводная метеостанция 868 MГц
Беспроводная метеостанция 868 MГц
Инструкция по эксплуатации
Спасибо, что выбрали беспроводную метеостанцию TFA!
Перед использованием внимательно прочтите инструкцию
Эта информация поможет вам освоить ваш новый прибор и в полной мере использовать все его возможности .А также подскажет вам последовательность действий для правильного начала использования и поможет избежать поломок.
Компания TFA не несет ответственность за поломку прибора из-за его неверного использования. В том числе, компания не несет ответственности за некорректное считывание данных и связанные с этим происшествий.
Пожалуйста, храните эту инструкцию все время использования прибора.
Пожалуйста, обратите особое внимание на советы по безопасности использования прибора!
· Метеостанция (базовое устройство)
КРАТКИЙ ОБЗОР ОСНОВНЫХ ФУНКЦИЙ ПРИБОРА:
· Функция коррекции времени с помощью DCF-77 сигнала (работает на ограниченной территории РФ)
· Возможность отключения приема DCF сигнала коррекции времени
· Отображение времени в формате 24 часа
· Функция сигнала будильника (с режимом «дремания»)
· Часовые пояса (зоны) +12 часов
· Отображение температурных значений в градусах Цельсия (°C)
· Внешняя и внутренняя температура с записью МАКС/МИН значений
· Сброс МАКС/МИН значений вручную
· Прогноз погоды (3 символа) и тенденция изменения погоды
· Интервал приема сигнала от внешнего датчика 4 сек
· Возможность закрепления на стену или установки на горизонтальную поверхность
Для БЕЗОПАСНОГО ИСПОЛЬЗОВАНИЯ:
· • Продукт предназначен исключительно для области применения, описанной выше. Продукт должен быть использован только как описано в данной инструкции.
· Данный продукт предназначен только для домашнего использования и не может быть использован в медицинских целях или других профессиональных целях.
· Берегите устройство и батарейки от детей.
· Батарейки запрещено разьирать, перезаряжать или кидать в огонь
· Батареи содержат вредные кислоты. Разряженные батареи должны быть как можно скорее изменены, чтобы предотвратить ущерб, вызванный негерметичностью батарей. Никогда не используйте сочетание старых и новых батареек или батареек разных типов. Носите химически стойкие защитные перчатки и очки при обращении с протекшими батарейками.
! Важная информация для безопасности устройства!
· Не подвергайте устройство воздействию высоких температур, вибрации или ударам.
· Внешний датчик защищен от попадания воды, но не имеет защиты от погружения в воду! Для установки датчика выберите сухое и затененное место
Основное устройство
|