СЕНСОРНЫЙ ПЕЙДЖЕР НА ARDUINO

/, ОБЗОРЫ, Проекты/СЕНСОРНЫЙ ПЕЙДЖЕР НА ARDUINO

СЕНСОРНЫЙ ПЕЙДЖЕР НА ARDUINO

Arduino Mega 2560

Цветной сенсорный экран 3.2

GSM модуль SIM800L

Повышаюший преобразователь 0.9В до 5в, 10шт

Микро повышаюший преобразователь 3В до 5в, 10шт

Мини повышаюший преобразователь 3В до 5в, 8шт

Страница проекта на GITHUB: https://github.com/voltnik/GSM-Pager

НОМЕР: +7-985-437-28-07

Полный список комплектующих:
— Контроллер Arduino Mega: http://ali.pub/22kig6 резерв: http://ali.pub/2jmxk3
— Цветной сенсорный TFT экран 3.2″: http://ali.pub/2b8qgf резерв: http://ali.pub/2b8qiy
— GSM модуль SIM800L: http://ali.pub/2jmkl8 резерв: http://ali.pub/2jmkm7
— Повышающий преобразователь 10шт: http://ali.pub/23528u
— Микро повышающий преобразователь 10шт: http://ali.pub/2dqpr6
— Мини повышающий преобразователь 8шт: http://ali.pub/2dqprd
— Выключатели 10шт: http://ali.pub/2jmkqa
— Качественный аккумулятор 18650 на 2600 мАч: http://ali.pub/2jml7l
— Кейс для 18650: http://ali.pub/2jmkz1 резерв: http://ali.pub/2jml16
— Набор диодов: http://ali.pub/2jml52

Схема проекта:

Привет друзья, сегодня мы будем слать SMSки на самодельный пейджер.

Поясню для тех, кто не в курсе. Пейджер — это приемник для текстовых сообщений. В 90х годах они были очень популярны и на них можно было слать короткие сообщения через оператора. Т.е. нужно было с городского номера (сотовых тогда не было) набрать пейджинговую компанию, сказать оператору номер абонента и проговорить само сообщение. Оператор его набирал и отсылал получателю. И да, этим регулярно пользовались! А еще за сообщение платил получатель, а не отправитель. Поначалу сообщения просто содержали обратный номер с просьбой перезвонить. Но позже начали уже отправлять длинные тексты. Если вы смотрели фильм Крепкий Орешек 2, то там Брюс Уиллис часто отвлекается на свой пейджер во время перестрелок. Позднее у людей появились GSM сотовые телефоны с функцией отправки SMS сообщений и пейджеры полностью вымерли.

Собрав на макетной плате электронику и набросав код приема сообщений, я получил первый вариант пейджера. Тут используется кириллический LCD экран 2004, он позволяет отображать длинные тексты SMS на русском языке. И отослав сообщение с телефона, через некоторое время мы видим его на экране. Круто! Уже работает!

Вообще самым сложным в этом проекте оказалась не сборка электроники, а именно прошивка. В процессе ее написания столкнулся с целым рядом проблем. Оказалось, что SMSки разных сотовых операторов приходят в разных кодировках. И их нужно было распознать и декодировать. Проверял симки Мегафона и МТС. С экраном тоже возникли проблемы, не было библиотеки для работы с русскими символами, и ее пришлось написать, взяв за основу чужие библиотеки. Еще с кириллицей при работе на Ардуино возник большой геморой. Оказывается, русские символы в новых версиях IDE занимают два байта памяти, а латиница всего один. И поэтому все стандартные процедуры работы со строчками глючат. Также по мере расширения функционала прошивки и увеличения кода, я столкнулся с проблемой нехватки оперативной памяти микроконтроллера Arduino Nano. В итоге работать со строчками текста стало невозможно, постоянно терялись символы и возникали необъяснимые глюки. Намучавшись с прошивкой пару дней, я принял кардинальное решение заменить платформу на Arduino Mega и сразу использовать цветной сенсорный экран на 3.2 дюйма. Прошивку пришлось адаптировать под этот экран, но она тут завелась без проблем и глюков. Сразу отображает на экране длинные русские SMS и еще есть вагон места. Экран представляет из себя shield модуль который надевается поверх Arduino Mega. И огромным плюсом является наличие встроенного в экран картридера для microSD карты памяти. На нее сразу и будем записывать все приходящие на пейджер SMS чтобы они сохранились. Подключил GSM модуль к Меге, запитал все, добавил в код на запуск красивое отображение инициализации модема, а далее после запуска модема на экране отображается последняя записанная на флешку SMS.

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

Добавил в прошивку обработку команд. Теперь при отправке ключевого слова будет отображать на экране картинку считывая ее с флешки, ну такую… или вот такую… первое что нашлось.

Давайте пройдемся по компонентам. Для сборки пейджера понадобится платформа Arduino Mega 2560, цветной сенсорный экран на 3.2 дюйма, GSM модуль SIM800L, литиевый аккумулятор 18650, кейс для него, модуль зарядки, повышающий преобразователь, диод Шоттки и выключатель.

Отдельного упоминания заслуживает GSM модуль SIM800L. Этот модуль тоже как экран является многофункциональным, он позволяет не только работать с модемом на командном уровне, но также есть контакты для подключения динамика и микрофона и это делает возможным использовать модуль для голосовых вызовов, звонков и разговора. Но у него есть особенность, это высокие требования к питанию. Допустимый диапазон работы составляет всего 1 вольт, от 3.4 до 4.4 вольта, при этом модуль может потреблять токи до 2 ампер. Т.е. модуль заточен для питания напрямую от литиевого аккумулятора. Поэтому мой выбор и пал на такое питание.

Схема пейджера представляет из себя такой вид. Из-за того, что экран надевается поверх Arduino Mega соединительных проводов минимум и все достаточно просто. На канал передачи данных от Ардуино к модему сделан делитель напряжения. В документации модема указан допустимый диапазон сигнального напряжения до 2.8 вольта. Поэтому нужно использовать любые два резистора одинакового номинала от 1 до 10 кОм чтобы понизить сигнальные 5 вольт Ардуино в 2 раза. По питанию пейджера сделано кольцо, тем самым пейджер будет работать как от USB порта Меги, так и от аккумулятора 18650. Для сборки цепи питания нужно перепаять резистор R3 на модуле зарядки уменьшив тем самым ток заряда аккумулятора. Я запаял резистор на 10 кОм уменьшив тем самым зарядку аккума до 100 мА, но этого оказалось мало. Поэтому рекомендую паять резистор на 5 кОм, тогда вы ограничите ток зарядки до 200 мА и этого будет достаточно. Далее нужно отпаять разъем питания с Меги, он мешает вынимать флешку и на его место отлично встанет выключатель.

Компоновка пейджера будет следующая. Сверху расположится Ардуино и Экран, снизу аккумулятор и в правом нижнем углу зарядка и GSM модуль, а повышающий преобразователь запихаю между экраном и платой Меги.

Готовим проект корпуса для пейджера в ThinkerCAD. Кстати, держите лайфхак, чтобы катушка пластика не набирала влагу во время печати и простоя принтера, ее можно вот так накрывать пакетом, при печати это нисколько не мешает. Печатаем корпус. Ну да, гламурный розовый пластик! Все равно это пристрелочный корпус с тонкими стенками и на не неполную высоту для примерки. Как обычно с первого раза ничего не подошло, не учел выступающий USB разъем. Печатаю второй пристрелочный корпус. Тут уже все отлично встало на свои места. Поэтому печатаю окончательный вариант корпуса уже черным пластиком. Зацените качество печати — это 0.2 миллиметра. Компоненты идеально подошли на свои места и стойки крепления совпали. Собираем и запаиваем цепь питания. При включении выключателя на модем подается питание, а повышающий преобразователь начинает выдавать заветные 5 вольт питания Ардуино. Для контроля направления тока на выход преобразователя запаиваю диод Шоттки, выбирал диод с минимальным падением напряжения, у меня получилось 0.2 вольта.

Спаял делитель на канал передачи данных. Загоняем его в термоусадку. Чтобы не демонтировать разъемы на Меге, запаиваю провода на обратную сторону платы. Запаиваю питание и собираю устройство целиком.

Первая проверка цепи питания. Устанавливаем аккумулятор и включаем. Модем и Арудино Мега включились. Теперь тоже самое с экраном. Включаем. Экран включился, модем тоже, но вот инициализация не прошла. Данные от модема не поступают. Флешка прочиталась и на экране отобразилась последняя тестовая SMS.

Причина сбоя оказалась забавной. Маркировка на плате Меги заявляет, что 18й пин это RX, а 19й это TX. В то время как в документации они указаны наоборот — забавно. Меняем провода UART местами и модем ожил. Извините за мат, это все Т9. Проверяем работу собранного пейджера, отправка SMS, и через некоторое время она появляется на экране.

Теперь закрепляем модули в корпусе и прикручиваем их на маленькие саморезы. Ну все, пейджер готов. Для проверки на нагрузку попросил в сообществе кинуть сообщения на пейджер. Спасибо всем, кто прислал! Получил больше сотни разных SMS из разных регионов страны. Первое было «Удачи», потом была «Чечня на связи», не могу эту прочитать тут что-то не по-русски. Привет каналу Вольтник, привет из Алтая, а это видимо робот написал. Еще анекдот кто-то прислал, он разбился на отдельные СМС. Еще кинули много спама, потом был Волгоград, Курск, просьба сделать ЧПУ станок, Краснодар, это вообще сложно, сообщение про Мстителей, привет Карелии, еще тест, мисага от Тимкова Андрюхи которая должна попасть в ролик, Питер, Хабаровск и многие другие. Еще раз спасибо всем, кто откликнулся и прислал сообщение, это помогло быстрее закончить проект и позволило отловить глюки и ошибки прошивки. По результатам теста она была снова значительно доработана.

Ну все, теперь вы можете слать мне SMS сообщения на номер, который видите на экране. Они придут на пейджер и запишутся на флешку. Еще в прошивку добавил отображение 20 веселых картинок. GIRL1 – GIRL2 и так до 20. Можно слать SMS с этой командой и на экране появится картинка, которая будет отображаться до 30 секунд.

В описании к этому видео как обычно будут ссылки на все комплектующие для самостоятельной сборки такого же пейджера. Поэтому вы без проблем сможете его повторить. Там же будет ссылка на прошивку и файлы для 3Д печати корпуса. Модуль SIM800L и экран реально оказались крутыми, и я планирую использовать их еще в своих будущих проектах. Поэтому не забывайте подписываться на мой канал и ставить лайки.

Также приглашаю вас на свой сайт voltnik.ru, на нем в разделе самоделок уже накопилось много различных проектов с подробным описанием по их сборке, и вы можете повторить любой.

А сегодня на этом все, всем удачного дня и пока-пока!

2018-05-29T21:43:33+00:0021:24 29/05/2018|АРДУИНО, ОБЗОРЫ, Проекты|