Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Отправка и получение текстовых сообщений (SMS) с помощью GSM SIM900 Shield

Компоненты и расходные материалы

Arduino Mega 2560
× 1
Виден экран GSM / GPRS на базе SIM900
× 1

Приложения и онлайн-сервисы

Visuino - графическая среда разработки для Arduino
IDE Arduino

Об этом проекте

Один из важнейших элементов построения Интернета вещей проект - это возможность подключения устройств. Wi-Fi и Bluetooth - хорошие недорогие варианты, но они работают только на близком расстоянии или в зонах доступа. Когда устройству необходимо находиться в удаленном месте GSM - хороший и простой в настройке вариант.

В этом руководстве я покажу вам, как легко отправлять и получать SMS . сообщения через GSM с Arduino .

В следующих руководствах я также покажу вам, как подключиться через GSM . к Интернету и серверам доступа, а также как вы можете обрабатывать голосовые вызовы.

Шаг 1. Компоненты

  • Один Arduino Mega (Вы можете использовать другие платы, но лучше всего использовать плату с 2 или более последовательными портами. Проект может быть изменен для использования программного последовательного порта, но рекомендуется использование аппаратного последовательного порта)
  • Один GSM Shield на базе SIM900 или совместимый щит или модуль с установленной SIM-картой ( Рисунок 2 ) (Я использовал GSM / GPRS Shield версии 1.0 от Seeed Studio)
  • 2 Женщина-Мужчина перемычки
GPRS_Shield_V1.0

Шаг 2. Подключите GSM Shield к Arduino

  • Удалить перемычки из GSM Shield Перемычки выбора RX и TX ( Изображение 1 )
  • Подключите GSM Shield в верхней части Arduino Mega
  • Подключите мужской конец Мужчина-Женщина перемычка ( Оранжевый провод ) к RX1 Контактный разъем Arduino Mega ( Рисунки 2 и 3 )
  • Подключите мужской конец Мужчина-Женщина перемычка ( Коричневый провод ) в TX1 Контактный разъем Arduino Mega ( Рисунки 2 и 3 )
  • Подключите женский конец RX1 . провод ( Оранжевый провод ) к центральному штифту перемычки выбора RX GSM Shield ( Изображение 4 )
  • Подключите женский конец TX1 . провод ( Коричневый провод ) к центральному штифту перемычки выбора передачи GSM Shield ( Изображение 4 )
  • Изображение 5 показывает установленный и подключенный GSM Shield

Шаг 3. Запустите Visuino и выберите тип платы Arduino

Чтобы начать программировать Arduino, вам понадобится Arduino IDE . устанавливается отсюда:http://www.arduino.cc/.

Убедитесь, что вы установили 1.6.7 более поздней версии, иначе это руководство не будет работать!

Visuino :https://www.visuino.com также необходимо установить.

  • Запустите Visuino как показано на первом рисунке
  • Нажмите " Инструменты . "на компоненте Arduino ( Изображение 1 ) в Visuino
  • В открывшемся диалоговом окне выберите « Arduino Mega 2560 . "как показано на рисунке 2

Шаг 4. В Visuino:установите скорость канала Serial 1 на 19200

GSM Shield по умолчанию настроен на скорость последовательного порта 19200. Нам нужно настроить последовательный порт 1 для этой скорости:

  • В инспекторе объектов разверните " Последовательный "свойство, затем" Item [1] "Вложенное свойство и выберите его" Скорость . "Дополнительное свойство ( Изображение 1 )
  • В Инспекторе объектов нажмите " Стрелка вниз . "рядом со значением" Скорость "Дополнительное свойство ( Изображение 1 )
  • Из раскрывающегося списка в списке выберите " 19200 "( Изображение 2 ), чтобы изменить значение свойства ( Рисунок 3 )

Шаг 5. В Visuino:добавьте и подключите последовательный компонент GSM / GPRS

Нам нужно добавить компонент для управления модулем GSM. Модуль управляется через последовательный канал, поэтому нам нужно его подключить. Цифровой PIN-код 9 используется для включения / выключения Модуль:

  • Введите " GSM "в поле" Фильтр "на панели инструментов компонентов, затем выберите" Последовательный порт GSM / GPRS "компонент ( Изображение 1 ) и поместите его в область дизайна ( Изображение 2 )
  • Подключите " Выход "выходной контакт GSM1 компонент " In "входной контакт" Последовательный [1] "канал Arduino компонент ( рисунок 2 )
  • Подключите " Питание "выходной контакт GSM1 компонент " Цифровой "входной контакт" Цифровой [9] "канал Arduino компонент ( рисунок 3 ). Эта булавка будет включать / выключать . мощность модуля GSM

Шаг 6. В Visuino:добавьте, настройте и подключите компонент "Текстовое значение"

Инициализация модуля GMS занимает некоторое время. Хорошо, если у нас есть какие-то признаки того, что модуль готов. Для этого мы отправим текст «GSM Ready» на последовательный порт, когда модуль будет готов:

  • Введите " текстовое значение "в поле" Фильтр "на панели инструментов компонента, затем выберите" Текстовое значение "компонент ( Изображение 1 ) и поместите его в область дизайна ( Изображение 2 )
  • В инспекторе объектов установите значение " Значение ". "свойство" Готовность к GSM "( Изображение 2 )
  • Подключите « Готово "выходной контакт GSM1 компонент " In "входной контакт TextValue1 компонент ( рисунок 3 )
  • Подключите " Выход "выходной контакт TextValue1 компонент " In "входной контакт" Последовательный [0] "канал Arduino компонент ( рисунок 4 )

Шаг 7. В Visuino:добавьте элемент короткого сообщения в компонент GSM, а затем функцию отправки сообщения в элемент

Компонент GSM состоит из множества модулей, выполняющих разные задачи. Поскольку мы будем использовать только SMS, нам нужно добавить только модуль «Короткое сообщение», а затем добавить к нему одну функцию «Отправить SMS»:

  • В области дизайна выберите GSM1 компонент ( Изображение 1 )
  • В Инспекторе объектов нажмите " ... "рядом со значением" Модуль "свойство GSM1 компонент ( Изображение 1 )
  • В редакторе модулей выберите « Короткое сообщение . », А затем нажмите кнопку« »( Изображение 2 ), чтобы добавить один ( Изображение 3 )
  • В Инспекторе объектов нажмите " ... "рядом со значением" Функции "свойство" короткого сообщения "модуль ( Изображение 3 )
  • В редакторе функций выберите « Отправить SMS . », А затем нажмите кнопку« »( Изображение 2 ), чтобы добавить один

Шаг 8:В Visuino:настройте функцию отправки SMS и подключите информацию о полученном сообщении к последовательному порту

  • В инспекторе объектов установите значение " Адрес "свойство" Отправить SMS "элемент к номеру телефона куда вы хотите отправить сообщение (в моем случае для проверки я ввел номер своей SIM-карты, чтобы модуль получал и распечатывал сообщения, которые он отправляет) ( Рисунок 1 - показывает вымышленное число)
  • В инспекторе объектов выберите " Текст "свойство ( Изображение 2 )
  • Нажмите " Закрепить "перед кнопкой" Текст "свойство ( Изображение 2 )
  • Из раскрывающегося списка в списке выберите " String SinkPin "( Изображение 3 ). Это добавит новый " Текст "прикрепить к" Отправить SMS "функция ( Изображение 4 )
  • Закройте диалоговые окна редактора элементов ( рисунок 4 . )
  • Подключите " Выход "выходной контакт" MessageInfo "блок GSM1 компонент " In "входной контакт" Последовательный [0] "канал Arduino компонент ( рисунок 4 )

Шаг 9. В Visuino:добавьте и подключите компонент "Символ к тексту"

Последовательный порт получает по одному символу за раз. Чтобы отправить SMS-сообщение, нам нужно получить все символы из строки, создать из нее текст и отправить его в модуль GSM:

  • Введите " символ "в поле" Фильтр "на панели инструментов компонента, затем выберите" Преобразование символа в текст ". "компонент ( Изображение 1 ) и поместите его в область дизайна ( Изображение 2 )
  • Подключите " Выход "выходной контакт" Последовательный [0] "канал Arduino компонент " In "входной контакт CharToText1 компонент ( рисунок 2 )
  • Подключите " Выход "выходной контакт CharToText1 компонент " Текст "входной контакт" Отправить SMS "элемент GSM1 компонент ( рисунок 3 )

Шаг 10:В Visuino:добавьте, настройте и подключите компонент задержки

Нам нужно убедиться, что мы отправляем SMS после того, как текст был правильно обновлен. Для этого мы можем использовать компонент Delay с короткой задержкой:

  • Введите " задержка . "в поле" Фильтр "на панели инструментов компонентов, затем выберите" Задержка "компонент ( Изображение 1 ) и поместите его в область дизайна ( Изображение 2 )
  • В инспекторе объектов установите значение « Интервал "свойство" 100 "( Изображение 2 )
  • Подключите " Выход "выходной контакт CharToText1 компонент " In "входной контакт Delay1 компонент ( рисунок 3 )
  • Подключите " Выход "выходной контакт Delay1 компонент " Часы "входной контакт" Отправить SMS "элемент GSM1 компонент ( рисунок 4 )

Шаг 11. Сгенерируйте, скомпилируйте и загрузите код Arduino

  • В Visuino , Нажмите F9 или нажмите кнопку, показанную на Рисунке 1 для генерации кода Arduino и открытия IDE Arduino
  • В Arduino IDE , нажмите Загрузить кнопку, чтобы скомпилировать и загрузить код ( Изображение 2 )

Шаг 12:И играем ...

Поздравляем! Вы завершили проект.

Изображение 1 показывает подключенный и включенный проект. На изображении 2 вы можете увидеть полную версию Visuino диаграмма. Если вы подключитесь с помощью последовательного терминала к Arduino, примерно через 30 секунд вы увидите сообщение « GSM Ready появляется сообщение ( Изображение 3 )

Если после появления сообщения вы наберете текст и нажмете " Отправить ". "( Изображение 4 ), текст будет отправлен в виде SMS-сообщения. Если вы выбрали номер телефона на шаге 8 к телефону SIM-карты на Shield, через некоторое время вы получите сообщение, и оно отобразится на последовательном терминале ( Рисунок 5 ). Если вы установили номер другого устройства на шаге 8 , сообщения будут отправлены на это устройство.

Вы можете отправлять SMS-сообщения на номер телефона с других телефонов и устройств, и они также будут отображаться в последовательном терминале.

Также прилагается Visuino проект, который я создал для этого учебника. Вы можете скачать и открыть его в Visuino . :https://www.visuino.com

F1FP7L0IQS4L35B.zip


Производственный процесс

  1. Система посещаемости с использованием Arduino и RFID с Python
  2. Датчик DHT11 со светодиодами и пьезо-динамиком
  3. Arduino Temp. Монитор и часы реального времени с дисплеем 3.2
  4. Управление роботом Roomba с помощью Arduino и устройства Android
  5. DIY вольтметр с Arduino и дисплеем Nokia 5110
  6. Управление серводвигателем с помощью Arduino и MPU6050
  7. Система мониторинга и обнаружения лесных пожаров (с SMS-оповещениями)
  8. u-blox LEA-6H 02 GPS-модуль с Arduino и Python
  9. Как читать температуру и влажность на Blynk с DHT11
  10. Распознавание и синтез речи с помощью Arduino