Мониторинг температуры через интернет с помощью GSM-модуля SIM900. Урок 1.
В первом вводном уроке мы наметили общую структуру будущей системы мониторинга температуры. Настало время разобраться в этом подробнее. В этом уроке мы еще раз вспомним, что представляет из себя технология передачи данных и подробно рассмотрим, как устроено передающее устройство.
Как работает система мониторинга температуры?
Технология передачи данных выглядит следующим образом:
Рис. 1. Технология передачи данных
Передающее устройство имеет датчик, с помощью которого производятся замеры текущей температуры, и реле, которое может управлять внешней нагрузкой.
Измеренные значения температуры передаются устройством на сервер, где сохраняется в базу данных (БД). В ответ сервер присылает устройству команду для управления реле, которая так же хранится в его БД.
Пользователь, подключаясь к серверу через браузер, получает от него текущее значение температуры, а нажимая на кнопку включения/ выключения реле с помощью web-интерфейса, он отсылает соответствующую команду управления реле на сервер.
Таким образом, сервер является своеобразной прослойкой между пользователем и устройством для сохранения данных о команде реле и температуре, а также для предоставления пользователю визуального интерфейса.
Что представляет собой передающее устройство?
Посмотрим на структурно-функциональную схему устройства:
Рис. 2. Структурно-функциональная схема передающего устройства
Контроллер – это «мозговой центр» системы. Он управляет процессом обмена данными с датчиком температуры, работой модема и состоянием выходного реле.
Датчик температуры DS18B20 по команде от контроллера производит замер температуры и передаёт полученные показания контроллеру.
GPRS модем SIM900 передаёт значение температуры, полученное от датчика, на сервер и получает в ответ команду для управления реле. Работой модема управляет контроллер. По его командам SIM900 подключается к GPRS, открывает HTTP-соединение, передаёт запросы и получает от сервера ответы. Кроме того контроллер управляет включением/выключением и перезагрузкой модема.
Передающее устройство имеет в своём составе выходное реле, с помощью которого можно управлять любой нагрузкой. Так, например, можно включить печку и с помощью неё регулировать температуру в помещении.
Плата Arduino Mega
Контроллер Arduino Mega был выбран не случайно. Он обладает всеми необходимыми характеристиками: достаточным объёмом оперативной памяти для выполнения операций с получаемыми через интернет текстовыми данными, несколькими аппаратными последовательными портами для организации обмена с модемом и вывода отладочной информации на терминал.
Рис. 3. Плата Arduino Mega
Платформа Arduino имеет удобную свободно-распространяемую среду разработки, позволяющую даже новичку, не имеющему глубоких знаний, быстро освоить программирование.
Подключение модема SIM900 к Arduino
Модем SIM900 выполняет связующую роль между контроллером передающего устройства и удалённым сервером.
Рис. 4. GPRS-модем SIM900
Плата модема совместима с платой контроллера. SIM900 соединяется с платой Arduino Mega с помощью разъёмов и получает от неё питание. Для работы модема необходима сим-карта любого оператора, обеспечивающая уверенный доступ к сети интернет в той местности, где будет работать передающее устройство.
Информационный обмен между Arduino Mega и модемом происходит по последовательному порту, использующему две линии связи (принимающую и передающую). Кроме того, контроллер может программно включать и выключать модем, подавая определённые последовательности импульсов на вход «PWRKEY» SIM900.
Рис. 5. Интерфейс связи контроллера и модема
Питание модуля SIM900 коммутируется через реле перезагрузки модема (одно из реле на релейном модуле).
Рис. 6. Управление аппаратной перезагрузкой модема с помощью контроллера
При зависании модема контроллер имеет возможность снять с него питание его с помощью реле перезагрузки модема. При этом происходит полная очистка внутренней памяти SIM900, что гарантирует возвращение к нормальной работоспособности после перезагрузки.
Подключение датчика температуры DS18B20 к Arduino
Для измерения температуры используется цифровой датчик DS18B20.
Рис. 7. Датчик температуры DS18B20
Он обменивается данными с контроллером по протоколу One Wire, который предусматривает передачу информации в обе стороны (от контроллера датчику и обратно) по одному сигнальному проводу. Шина данных должна быть подключена к источнику питания через подтягивающий резистор. Питание датчик также получает от Arduino.
Рис. 8. Подключение датчика температуры к контроллеру
Подключение модуля реле к Arduino
Выходное реле служит для управления нагрузкой. Это может быть печка, вентилятор, цепь запуска водонагревателя, горелки, электродвигателя или другого устройства. Например, можно установить передающее устройство в помещении, подключить к нему электрический обогреватель и включать его, когда необходимо прогреть помещение.
Реле позволяет коммутировать напряжение до 220В с силой тока 10А. Этого достаточно для большинства бытовых приборов.
Рис. 9. Релейный модуль
Релейный модуль состоит из двух реле. Одно из них будет выполнять функцию выходного реле (рис.10), а другое пригодится, чтобы организовать аппаратную перезагрузку модема (рис.6).
Релейный модуль оснащён опторазвязкой, которая защищает управляющий контроллер от повреждения при превышении коммутируемого напряжения или коротком замыкании.
Рис. 10. Подключение выходного реле к контроллеру
Реле имеет нормально-закрытый (НЗ) и нормально-открытый (НО) контакты. При появлении управляющего сигнала на входе In1 оба контакта меняют своё состояние на противоположное.
Заключение
На этом пока всё! Надеемся, что было интересно! В следующем уроке мы перейдём от теории к практике и соберём передающее устройство. До скорой встречи на LAZY SMART! Чтобы не пропустить новую статью, вступай в нашу группу Вконтакте, а также подписывайся на наш канал YouTube.








Добавить комментарий