Реклама ⓘ
Главная » Сотовая связь
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

Универсальный GSM модуль на ATmega328P и Sim800C

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

Для того, чтобы удовлетворить множество потенциальных потребностей мной было разработано универсальное устройство на связке  микроконтроллера ATmega328P и gsm-модуля Sim800C. Была создана базовая прошивка и приложение на Android для удобства пользователей, также в устройстве предусмотрены интерфейсы для расширения сфер применения: I2C, АЦП, UART2 (от Sim800C), Bluetooth - это для разработчиков.

mini123

Общие характеристики:

Размеры: 55х37мм
Питание: 12-14В; 3,7-4,5В.
Используется ШИМ стабилизатор питания на ST1S40
На разъемы выведены 8 портов ввода-вывода.
Есть возможность подключать внешние устройства через UART2 (от sim800C), I2C, Bluetooth.
При необходимости можно запрограммировать реакцию на глушение GSM канала (jumming detection) - все необходимые подключения на плате присутствуют.
Для программирования ATmega328 через ISP и Sim800C через USB интерфейс, используются SMD-контакты(площадки).
Установлен считыватель micro sim с торцевой загрузкой и автофиксацией.
Для уменьшения габаритов и удобства использованы SMD антенны GSM и Bluetooth, также возможно использовать внешнюю антенну с разъемом ipex для большей стабильности. (при использовании SMD GSM-антенны необходимо устанавливать экранирующий короб на цепь питания). 
Предусмотрена цепь микрофона и цепь усилителя звукового сигнала 1.4W на Tpa2005.
Плата подходит для корпуса K-7 (korpusplast). 
Установлены 2 кнопки и два светодиода для отражения состояния устройства.

На сим-карте gsm модуля нужно создать контакт с именем ADMIN. С других номеров устройство управляться не будет.

 

Схема устройства:

c[tvf

(sd3: ESDA5V3SC6)

Использован кварцевый резонатор частотой 7,3728мГц (8мГц не рекомендуется, при работе по uart с simcom возникают ошибки).

Питание устройства осуществляется от источника 12В (1A) через встроенный ШИМ преобразователь или напрямую от источника 3,7-4,5 Вольт.

Пример использования:

Задача: организовать автозапуск двигателя на автомобиле.

Логика настройки портов:

порт 1 - выход - (зажигание) - включить через секунду после прихода смс, выключить через 10 мин. после включения.

порт 2 - выход - (активация обходчика иммобилайзера) - включить через секунду после прихода смс, выключить через минуту после включения.  

порт 3 - выход - (имитация нажатия педали тормоза) - включить через 6 секунд после прихода смс, выключить через 4 сек. после включения.

порт 4 - выход - (стартер) - включить через 7 секунд после прихода смс, выключить через 1сек. после включения

порт 5 - вход - (от цифрового термометра) - при заданной температуре от термометра поступит сигнал на этот порт и процедура запуска сработает без прихода смс, отправив при этом оповещение о том что была сработка по этому порту. (базовая прошивка поддерживает эту функцию - при срабатывании портов, которые мы настроили на вход, отрабатывается алгоритм, заданный в смс сообщении).

остальные порты (6-8) в данном примере не нужны и мы настраиваем их на выход (для исключения ложных сработок.), но не выставляем задержки включения и выключения.

настройка алгоритма в приложении выглядит так:

скриншот

в итоге получается такое смс:

смс

где off означает, что данный порт будет в состоянии логического нуля после прихода конфигурационного смс. (выход в скриншоте должен быть 8-out-off-9s-2s  (забыл изменить прежнюю конфигурацию)).

(При необходимости можно полностью инвертировать алгоритм, чтобы по умолчанию на выходах была логическая 1 (вместо off будет стоять on, а во время отработки алгоритма включался логический 0 - для некоторых нужд это бывает очень кстати, например есть популярные релейные модули, которые управляются "нулями"

Примечание: Для реального включения модуля в цепь автозапуска, потребуется соединить его с релейным модулем управляемым слаботочными сигналами, а разъемы для прочной фиксации нужно использовать smaw200).

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

Также в базовой прошивке заложена возможность звонка на модуль - устройство автоматически "снимет трубку". 

Нажатие на кнопку SA1 повторно активирует алгоритм (удобно для корректировки алгоритма).

Фьюзы:
фьюзы

Плату в домашних условиях изготовить будет сложно, поэтому ее исходник не выложен, однако вы можете приобрести ее (в сборе или конcтруктор + приложение на android) на сайте exDIY, а также мобильное приложение отдельно или полностью проект с исходным кодом (atmel studio).

Надеюсь это устройство будет полезно радиолюбителям для реализации широкого круга задач. 

Если у вас возникли вопросы или предложения (по плате, мобильному приложению, прошивке...), вы можете их написать на форуме в одноименной теме.   

Коммерческое использование материалов статьи запрещено без согласования с автором. Все права защищены.

Прикрепленные файлы:

Теги:

Опубликована: Изменена: 26.05.2016 0 0
Я собрал 0 2
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 5 Проголосовало: 2 чел.

Комментарии (4) | Я собрал (0) | Подписаться

0
Публикатор #
На форуме автоматически создана тема для обсуждения статьи.
Ответить
0

[Автор]
alexpe28 #
Появилась новая прошивка для модуля! Теперь его можно использовать как lbs трекер.
Скорее всего будет более детальный обзор прошивки. Пока прилагаю скрин
Прикрепленный файл: 2016-06-01_08-38-24.png
Ответить
0
andros #
Добрый вечер. Хочу повторить ваше устройство очень понравилось. Не могли бы Вы выслать приложение на Андройд?
Ответить
0
Александр #
Приобрёл SIM800C GSM GPRS модуль четырёхдиапазонная. Плата развития с SMA антенной слот Micro SIM для Arduino Raspberry Pi,в место Arduino ,планирую использовать ATmega8, в таблице для модуля (SIM800C Плата развития с AliExpress,файл страница продавца) есть распиновка платы, по SPI,SIM800C_POWKEY,GND,5 В,3V3 всё понятно, а для чего вот эти: GPIO02----SDA, GPIO03---SCL, GPIO14---GSM_IN, GPIO1---GSM_OUT, GPIO18---SIM800C_NET, 27---ID_SD,28---ID_SC, и если на контактное имя GPIO нет описания, значит он к плате не подключен?
Прикрепленный файл: Screenshot.png
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Discovery V8
Discovery V8
Набор начинающего радиолюбителя Конструктор: DDS генератор сигналов
вверх