Малаток-меню
Авторизация

Наш опрос
Мини-чат
200
Статистика


Наш линк
Malatok.at.ua
Полезные ссылки
Это может быть интересно
[
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Stalker753, Викр, Дмытрохан  
Форум » РАДИОТЕХНИКА » Полезные устройства » Система удаленного контроля на GSM модуле SIM900D
Система удаленного контроля на GSM модуле SIM900D
incubus Дата: Суббота, 14.12.2013, 22:10 | Сообщение # 1
Почетный друг сайта
Группа: Модераторы
Сообщений: 190
Награды: 4
Репутация: 200
Замечания: 0%
Статус: Офлайн
Итак, после продолжительного времени раскуривания тонкостей работы с GSM модулем SIM900D анонсируем первый
рабочий проект, совмещающий в себе охранную систему с возможностью
удаленного контроля. Если кратко, то устройство способно отправлять
информирующие SMS  в случае срабатывания датчика проникновения, делать
дозвон для возможности аудиоконтроля помещения, следить за температурой и
отправлять ее смс-кой по запросу, а также управлять какой-нибудь
нагрузкой по команде отправленной по смс.

 Кто следил за данной темой, тот в курсе, что у меня GSM модуль и модуль
управления им - две разные платы, соединенные бутербродом (см. плата с SIM900D и плата управления). На управляющей плате помимо микроконтроллера ATmega32a стоит модуль питания, выполненный на преобразователе LM2596, он запитывает схему постоянным напряжением 3,5 вольт. В принципе
подойдет любой другой источник питания, главное чтобы он был способен
кратковременно вытянуть до 2 ампер (именно такое потребление GSM-модуля в
момент регистрации).

 Удобства ради, к плате управления подключен дисплей от телефона Nokia3310,
методы работы с котором уже ни раз описывались на этом сайте. Благодаря
дисплею можно быстро определить состояние устройства и значение
датчиков.
 В итоге получившаяся схема подключения вышла такая (кликабельно): 



 Нумерация выводов микроконтроллера на схеме приведена для DIP корпуса, поэтому
если повторяете схему с использованием мк в корпусе TQFP будьте
внимательны, нумерация выводов у него отличается. Тактируется
микроконтроллер от внешнего кварца на 16 МГц. 
 Линия Control идущая от коллектора транзистора Q2 к выводу PortD.4 микроконтроллера
добавлена для перестраховки и нужна за тем чтобы следить включен ли
модуль. Так как порог выключения у SIM900 составляет 3,2 вольта то даже
при незначительной просадке напряжения модуль автоматически выключится,
тогда как микроконтроллер продолжит работать и выполнять программу
(порог сброса у ATmega32a 2,7 вольта). В рабочем состоянии на этой линии
находится низкий уровень. Если микроконтроллер обнаружит что на этой
линии высокий уровень, выполнится функция повторного запуска GSM модуля.

 А вот так это выглядит в работе на данный момент.



 После окончательной обгонки программы, все это будет засунуто в корпус, а разъемные соединения для надежности будут запаяны. 
 На дисплей выводится основная информация о состоянии устройства: название
оператора, качество сигнала связи, значение температуры с датчика 18b20,
состояние выхода нагрузки и датчика проникновения, а так же время и
дата.

 Видео включения модуля


 Время и дата берутся от встроенных в GSM-модуль часов. Для их работы
обязательно наличие 3-х вольтовой батарейки подключенной к выводу 15
(VRTC). Диод D1 рекомендуется ставить с низким падением напряжения,
например Шоттки. Настройка часов и даты делается в ручную, команды были
описаны ранее здесь
 Дата выводится на дисплей в том формате как получается с модуля, тоесть сначала год, затем месяц и дата. Здесь пока ничего менять не стал.

 За измерение температуры отвечает датчик DS18B20, он подключается к выводу PortD.3 микроконтроллера.
 
К PortD.6 можно подключить какую-нибудь нагрузку и управлять ей
посредством команд смс. У меня сейчас висит светодиод - D4 на схеме. Но
ничего не мешает повесить сюда релюху или симистор и управлять
чем-нибудь посерьезней.
 


  В охранных целях планируется применение датчика движения HC-SR501, купленного на E-bay. В случае срабатывания на выходе датчика появляется
логическая единица. Поймав ее, микроконтроллер даст команду на отправку
SMS сообщения по телефонному номеру, заданному в программе. 


 Выход датчика подключается к выводу PortD.7 микроконтроллера, на схеме, датчик условно заменен на кнопку.

 Заместо датчика движения можно ставить любые другие средства обнаружения
проникновения - датчики открывания окон и дверей, датчики разбития
стекла, фотоэлектрические датчики и др. в общем все на что способна
фантазия. 
 Для того чтобы предотвратить многократное отсылание предупреждающих смс в
случае срабатывания датчика, в программу введено ограничение: после
первого отправленного смс ставится запрет на последующую отправку. Чтобы
заново разрешить отправку уведомляющих сообщений при срабатывании
датчика, необходимо отослать на модуль смс с определенной командой.
Когда посылка смс запрещена на дисплей возле состояния датчика,
выведется восклицательный знак.

 Список команд

 А вот и список команд в смс которые обрабатывает модуль. Для удобства и
простоты комады цифровые, возможно в следующих версиях прошивки будут
более осмысленные имена команд smile
 0 - Отключение нагрузки (на выводе PortD.6 выставляется логический 0)

 1 - Включение нагрузки (на выводе PortD.6 выставляется логическая 1)

 2 - Приняв эту команду, модуль перезвонит на указанный в программе телефонный номер

 3 - Запрос баланса и отправление его смс-кой обратно на указанный номер.
Здесь есть один важный нюанс - ответы на USSD запросы обязательно должны
приходить в латинице. Иначе заместо осмысленного текста в ответ придет
сообщение в шестнадцатеричной кодировке. Как перевести USSD в латиницу
нужно уточнить у своего оператора. К примеру, на используемой мной симке
от Смартса, нужно ввести *102*1# (в мегафоне *105*0#)

 4 - Запрос температуры. Значение температуры будет отправлено нам в смс.

 5 - Разрешенить отсылать сообщения в случае срабатывания датчика проникновения.

 6 - Запрет на отправление уведомляющих смс от датчика проникновения. 

 ? - По этой команде модуль пришлет нам смс, в котором находится общая
информация об устройстве, такие как значение с датчика температуры,
включена ли нагрузка, состояние на входе от датчика проникновения и
разрешена ли отправка уведомляющих смс от него. К примеру, вот как может выглядеть такое сообщение: температура +24,
нагрузка выключена, на выходе датчика движения 0, отправка смс в случае
срабатывания запрещена.



 Теперь как настроить чтобы модуль отправлял sms именно на ваш номер. В архиве с
программой находим основной файл программы, она так и называется
"программа" smile и находим в ней константу:

Const Phonenumber = "+7908390хххх"  

подставляем сюда свой номер телефона, компилируем программу и получаем hex файл прошивки. 

 Программа как и всегда написана в Bascom-AVR, поэтому разобраться с алгоритмом работы с GSM модулем достаточно просто. Удачи!

 Ну и напоследок демонстрация того как модуль обрабатывает команды. 



 Отдельное спасибо за участие и помощь в разработке, давнему товарищу сайта Сергею RD3AVJ!   

Архив с исходниками

Схема в Proteus

UPD: от 31.10.12

Немного доработал прошивку, теперь для того чтобы задать номер на который будут
слаться уведомляющие SMS не нужно перекомпилировать программу.
Достаточно послать на модуль смску с сообщением "Firstnumber" (без ковычек) и номер, с которого была отправлена эта команда, записывается в энергонезависимую память микроконтроллера. 

Скачать прошивку


С дураком спорить бесполезно!
 
Гость Дата: Пятница, 30.01.2015, 13:53 | Сообщение # 2
Группа: Гости





incubus
просто замечательный ваш проект!
но,нужно пару датчиков температуры и управление нагрузками по 4-6 выходам и LCD индикатор 16х2
что нужно добавить?
правда я программировании ваще нулевой.
 
Гость Дата: Четверг, 10.12.2015, 15:48 | Сообщение # 3
Группа: Гости





Доходит до удаление sms и стоп . Всё загружается медленно .
 
JamesMow Дата: Среда, 31.05.2017, 23:43 | Сообщение # 4
Группа: Гости





Hello there! <a href=http://viagrafreetrial.us/#free-viagra-samples>free viagra samples</a> very good web page.

Добавлено (31.05.2017, 23:43)
---------------------------------------------
Hi! <a href=http://viagrafreetrial.us/#viagra-com-free-sample>viagra 30 day free trial</a> very good web site.

 
lynkaandriyt31 Дата: Вторник, 13.08.2019, 12:26 | Сообщение # 5
Новичок
Группа: Пользователи
Сообщений: 19
Награды: 0
Репутация: 0
Замечания: 0%
Статус: Офлайн
Спасибо за информацию!
 
Форум » РАДИОТЕХНИКА » Полезные устройства » Система удаленного контроля на GSM модуле SIM900D
  • Страница 1 из 1
  • 1
Поиск:
Новый ответ
Имя:
Текст сообщения:
Опции сообщения:
Код безопасности:
Яндекс.Метрика
24 log 24 LOG statistick
счетчик посещений
Если вы видите это,
то ваш браузер устарел
и не поддерживает технологий
CSS 3.0