Оглавление:

Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP: 6 шагов
Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP: 6 шагов

Видео: Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP: 6 шагов

Видео: Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP: 6 шагов
Видео: ✅Arduino SIM800 отправка SMS: SIM800 для исходящих текстовых сообщений 2024, Ноябрь
Anonim
Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP
Как отправлять текстовые SMS-сообщения из вашего проекта Arduino ESP

В этом руководстве показано, как отправлять текстовые SMS-сообщения из вашего проекта Arduino с помощью устройства ESP8266 и Wi-Fi. Зачем использовать SMS? * SMS-сообщения намного быстрее и надежнее, чем сообщения с уведомлениями приложений. * SMS-сообщения также могут быть получены там, где мобильные передачи данных недоступны * На смартфон не требуется устанавливать сторонние приложения. * SMS-сообщения необходимы для приложений, критически важных для сообщений. Этот проект просто отправляет текстовое SMS-сообщение при нажатии подключенной кнопки к устройству ESP. Для вашего проекта это может быть вызвано каким-либо другим триггером или статусом события.

Шаг 1: Детали

Запчасти
Запчасти
Запчасти
Запчасти

Для этой демонстрации вам потребуются: * Устройство ESP8266. Я выбрал пакет ESP-01, но любой другой пакет / устройство ESP тоже должно работать. * Источник питания 3,3 В * Подключение Wi-Fi * Учетная запись Kapow SMS * Arduino IDE * Модуль программирования ESP8266.

Шаг 2. Поставщик SMS

В этом проекте текстовые SMS-сообщения отправляются через SMS-шлюз в Интернете. Для этого вам нужно будет подписаться на поставщика SMS. С абонентов обычно взимается плата за каждое текстовое сообщение. Я выбрал поставщика услуг SMS KAPOW. Я обнаружил, что большинство провайдеров SMS в Великобритании имеют дело только с компаниями с ограниченной ответственностью, а не с физическими лицами. Однако KAPOW предоставляет надежную и экономичную услугу. Чтобы открыть учетную запись Kapow SMS, перейдите по ссылке ниже.

www.kapow.co.uk

Шаг 3: Подключение

Подключение его
Подключение его

Схема подключения для этого проекта приведена выше.

Шаг 4: Код

// Демонстрационный проект ESP8266 для отправки SMS через KAPOW (www.kapow.co.uk)

// https://www.instructables.com/id/How-to-Send-SMS-… #include #include char _sKapow_Host = "kapow.co.uk"; int _iKapow_Port = 80; / * <<<< ИЗМЕНИТЬ ДЕТАЛИ НИЖЕ * / // Информация о вашем Wi-Fi: char _sWiFi_SSID = "YourWifiPoint"; // <--- ИЗМЕНИТЬ !!! char _sWiFi_Password = "ВашWifFiPassword"; // <--- ИЗМЕНИТЬ !!! // Данные вашей учетной записи пользователя Kapow: char _sKapow_User = "YourKapowAccount"; // <--- ИЗМЕНИТЬ !!! char _sKapow_Password = "YourKapowPassword"; // <--- ИЗМЕНИТЬ !!! char _sKapow_Mobile = "Ваш мобильный"; // >>> ИЗМЕНИТЬ ДЕТАЛИ ВЫШЕ * / // кнопка подключена к выводу GP0 const int gp0_Pin = 0; const int iMaxAttempts = 10; int gp0_State = 0; void setup () {Serial.begin (9600); Serial.println ("\ nДемонстрация: отправить SMS через KAPOW"); // инициализируем контакт кнопки как вход // и подтягиваем его к высокому (внутреннему) уровню pinMode (gp0_Pin, INPUT_PULLUP); // устанавливаем Wi-Fi соединение WifiConnect (); } void loop () {// считываем состояние кнопки gp0_State = digitalRead (gp0_Pin); // кнопка нажата слабо? if (gp0_State == 0) {Serial.println («Нажата кнопка для отправки SMS…»); SendSmsKapow (_sKapow_Mobile, «Это + тест + SMS + сообщение + отправлено + с + вашего + ESP + устройства»); } Serial.println («Спящий 1 секунду»); задержка (1000); } void WifiConnect () {Serial.print ("\ nПодключение к Wi-Fi:"); Serial.println (_sWiFi_SSID); WiFi.begin (_sWiFi_SSID, _sWiFi_Password); while (WiFi.status ()! = WL_CONNECTED) {// повторить попытку после второго Serial.print ("."); задержка (1000); } if (WiFi.status () == WL_CONNECTED) Serial.println («Подключено к WiFi»); } bool SendSmsKapow (char * sMobile, char * sMessage) {WiFiClient clientSms; int iAttempts = 0; Serial.print («Подключение к хосту KAPOW»); в то время как (! clientSms.connect (_sKapow_Host, _iKapow_Port)) {Serial.print ("."); iAttempts ++; if (iAttempts> iMaxAttempts) {Serial.println ("\ nНе удалось подключиться к KAPOW"); вернуть истину; } задержка (1000); } Serial.println ("\ nПодключен к KAPOW"); задержка (1000); Serial.println ("Отправка HTTP-запроса в KAPOW:"); // Пример запроса GET: //https://www.kapow.co.uk/scripts/sendsms.php?username=test&password=test&mobile=07777123456&sms=Test+message char sHttp [500] = ""; strcat (sHttp, "ПОЛУЧИТЬ /scripts/sendsms.php?username="); strcat (sHttp, _sKapow_User); strcat (sHttp, "& пароль ="); strcat (sHttp, _sKapow_Password); strcat (sHttp, "& мобильный ="); strcat (sHttp, sMobile); strcat (sHttp, "& sms ="); strcat (sHttp, sMessage); strcat (sHttp, "& returnid = ИСТИНА / п / п"); Serial.println (sHttp); clientSms.print (sHttp); Serial.println («Ожидание ответа (10 секунд)…»); задержка (10 * 1000); char sReply [100] = ""; int iPos = 0; в то время как (clientSms.available ()) {char c = clientSms.read (); Serial.print (c); sReply [iPos] = c; iPos ++; если (iPos == 99) перерыв; } sReply [iPos] = '\ 0'; // проверяем, содержит ли ответ OK bool bResult = (strstr (sReply, "OK")! = NULL); if (bResult) Serial.println ("\ nSMS: успешно отправлено"); else Serial.println ("\ nSMS: не удалось отправить"); if (! clientSms.connected ()) {Serial.println ("Отключение от KAPOW"); clientSms.stop (); } return bResult; }

Шаг 5: прошейте код

Прошить код
Прошить код
Прошить код
Прошить код

Есть много других подробных инструкций, показывающих, как программировать прошивку устройства ESP8266. Итак, я просто дам обзор своей настройки. Вкратце, я использую интерфейс USB-Serial FTDI и опускаю GP0 на низкий уровень при сбросе, чтобы начать процесс прошивки загрузчика. Для удобства я построил свое собственное устройство программирования стрипборда. Он имеет * разъем для устройства ESP-01 * разъем для красного интерфейса FTDI для подключения к хосту ПК через USB. * Кнопки для RESET, GP0, GP2 TO GROUND Вы можете прошить устройство ESP, используя 3,3 В, поставляемые FTDI. интерфейс. Убедитесь, что перемычка FTDI также установлена на 3,3 В.

Шаг 6: Нажмите кнопку

Нажать на кнопку !
Нажать на кнопку !
Нажать на кнопку !
Нажать на кнопку !
Нажать на кнопку !
Нажать на кнопку !
Нажать на кнопку !
Нажать на кнопку !

Вы можете протестировать проект либо подключенным к FTDI для последовательного вывода журналов, либо автономно (на макетной плате с внешним источником питания). В этом случае вы можете использовать внешний источник питания 3,3 В, так как ток питания FTDI равен Erak. Тем не менее, источник питания FTDI 3.3v также работал у меня, так как мой Wi-Fi-маршрутизатор был в пределах досягаемости. Оставьте ESP подключенным к последовательному / USB-порту, чтобы вы могли отслеживать текущий журнал последовательной отладки с помощью Serial Monitor Arduino IDE. При включении … Нажмите кнопка подключенная к GP0. Это отправит SMS-сообщение, как показано ниже. Проверьте свой телефон на наличие полученного SMS-сообщения. Работа выполнена.

Рекомендуемые: