GSM SIM800L и Arduino: Подключение и Проекты

SIM800L — GSM/GPRS модуль. SMS, звонки, интернет. AT-команды. Питание 3.7–4.2 В.

SIM800L

Характеристики

  • GSM/GPRS: 850/900/1800/1900 МГц
  • Питание: 3.4–4.4 В (рекомендовано Li-Ion 3.7 В)
  • Ток: до 2 А (пики)
  • UART: 9600 бод
  • GPIO, PWM, GPS (в некоторых)

Подключение

  • VCC → 3.7–4.2 В (отдельный источник!)
  • GND → GND
  • TX → Arduino RX (7)
  • RX → Arduino TX (8)
  • RST → опционально

Питание: LM2596 + 1000 мкФ или Li-Ion.

AT-команды

  • AT — проверка
  • AT+CMGF=1 — текст SMS
  • AT+CMGS="+79..." — отправка
  • ATD+79...; — звонок

Код: Отправка SMS

#include <SoftwareSerial.h>
SoftwareSerial sim(7,8);
void setup() {
  sim.begin(9600);
  Serial.begin(9600);
  delay(1000);
  sim.println("AT+CMGF=1");
  delay(500);
  sim.println("AT+CMGS=\"+79XXXXXXXXX\"");
  delay(500);
  sim.print("Hello from Arduino!");
  delay(500);
  sim.write(26); // Ctrl+Z
}
void loop() {}
Настраивает SoftwareSerial на пины 7 (RX) и 8 (TX).
Включает текстовый режим SMS (AT+CMGF=1).
Отправляет SMS на указанный номер (AT+CMGS=»номер»).
Передаёт текст сообщения и завершает ввод Ctrl+Z (sim.write(26)).
loop() пустой, так как сообщение отправляется один раз при старте.

Проекты

  • SMS реле: вкл/выкл по SMS
  • Трекер: GPS + GPRS на сервер
  • Охрана: датчик → SMS/звонок
  • IoT шлюз: HTTP POST
  • Удалённый термостат: DHT22 + SMS

Советы

  • Питание: отдельный блок, 2 А
  • Антенна: внешняя для сигнала
  • SIM: без PIN
  • Скорость: 9600–115200

Заключение

SIM800L — надёжный GSM для SMS, звонков, IoT. Начните с SMS, добавьте реле, GPS. Работает везде с покрытием!

FAQ — GSM SIM800L и Arduino

Что такое GSM модуль SIM800L и зачем он нужен?

SIM800L — это GSM/GPRS модуль, который позволяет Arduino отправлять и получать SMS, совершать звонки и подключаться к интернету через мобильную сеть. Он используется в IoT-проектах, системах охраны и удалённого управления.

Какое питание нужно для SIM800L?

SIM800L питается от 3.7–4.2 В, при этом пиковый ток может достигать 2 А. Рекомендуется использовать литий-ионный аккумулятор или DC-DC понижающий преобразователь типа LM2596 с ёмкостью не менее 1000 мкФ для сглаживания просадок напряжения.

Можно ли подключить SIM800L напрямую к Arduino?

Напрямую — нельзя. Питание 5 В с Arduino может повредить модуль. Для связи по UART можно использовать SoftwareSerial (например, пины 7 и 8), но питание должно подаваться от отдельного источника 3.7–4.2 В.

Как отправить SMS с помощью SIM800L?

В коде Arduino нужно активировать текстовый режим командой AT+CMGF=1, затем использовать AT+CMGS="+79XXXXXXXXX" для ввода номера получателя и отправить текст. Завершается ввод символом Ctrl+Z (код 26). Пример кода приведён в статье.

Почему SIM800L не отвечает на команды?

Чаще всего проблема в питании — модуль не запускается при недостаточном токе. Проверьте, что питание стабильно 3.7–4.2 В, антенна подключена, SIM-карта вставлена и без PIN-кода. Также убедитесь, что RX и TX не перепутаны местами.

Можно ли использовать SIM800L для передачи данных по интернету?

Да, SIM800L поддерживает GPRS и может отправлять данные на сервер через HTTP-запросы. Это удобно для IoT-проектов, трекеров и удалённого мониторинга. Однако скорость невысокая — около 10–40 Кбит/с.

Можно ли управлять реле или другими устройствами через SMS?

Да, Arduino может анализировать входящие SMS и выполнять команды: включать реле, свет, насосы и т.п. Это популярная схема “SMS-реле”, часто используемая в системах умного дома или охраны.

📁 Скачать примеры