При помощи Arduino можно также отправлять SMS - сообщения, все что для этого понадобится это специальный модуль Arduino GSM/GPRS SIM900. Данная плата расширения подходит под распространенные платы Arduino UNO, MEGA и Leonardo. С ее помощью можно сделать кучу разных проектов использующие GPRS интернет или доступ в сеть GSM. Она будет работает везде где есть мобильная сеть. При помощи этого модуля можно сделать GSM сигнализацию, которя вместе с системой видеонаблюдения обеспечит отличную защиту вашего жилища.
Модуль позволяет использовать сети стандартов GSM 850, GSM 900, GSM 1800, GSM 1900 и поддерживает протокол TCP с доступоп в сеть GPRS.
Arduino GSM модуль SIM900 можно также использовать для совершения звонков, можно как принемать звонки так и совершать их. Для этого на плате есть специальные разъемы для подключения микрофона и динамика.Также модуль можно подключить к компьютеру и отправлять и принемать данные напрямую с ПК. К примеру можно делать массовую рассылку абонентам записанным на симкарте в атоматическом режиме.
Источник питания платы должен обеспечивать макимально потребляемый ток платы в 2 А. Такой ток может возникнуть при максимальном использовании ресурсов платы в режиме передачи. За стабилизацию тока на плате отвечает оранженый конденсатор на фронтальной стороне платы.
Вместе с модулем также в комплект входит специальная сим карта Telefónica Digital, можно использовать сим-карты и других операторов. Для того чтобы активаровать сим карту Telefónica Digital нужно перейти на сайт BlueVia и следовать дальнейшим инструкциям.
Средняя цена в Китае на данный модуль составляет порядка 2000 рублей. Стоимость можно посмотреть на сайте Aliexpress
Плата с расширением GSM работает с Ардуино непосредственно благодаря библиотеке Software Serial. При стандартных настройках, для взаимодействия модема с Ардуино подключаются цифровые выводы № 2 и № 3. На Arduino Uno подходят такие настройки, но для правильной работы шилда на Arduino Leonardo или Arduino Mega необходимо внести поправки.
Вывод GSM_TX, так же именуется выводом № 2 на плате расширения, отправляет информацию Ардуино. Чтобы точно знать, в какой момент необходимо считывать информацию, Ардуино применяет механизм прерываний: при перемене цифрового уровня сигнала в этом выводе возникает соответствующее прерывание. Однако в Arduino Leonardo и Arduino Mega вывод № 2 не поддерживает прерывания.
Что бы шилд нормально функционировал на Arduino Mega или Leonardo совсем не нужно переменять программный код, библиотека сама изменяет номер вывода RX Ардуино при выборе надлежащей модели в меню "Tools" среды разработки.
Arduino Leonardo
Для правильного функционирования с Leonardo библиотека GSM использует цифровой вывод № 8. Для этого на плате расширения GSM необходимо замкнуть проводником цифровые выводы № 2 и № 8.
На задней стороне платы GSM необходимо отогнуть в сторону штыревой контакт, соответствующий выводу № 2, так, чтобы он не соприкасался с Arduino Leonardo.
Arduino Mega2560
Библиотека GSM для корректной роботы с Mega использует цифровой вывод № 10. На плате расширения GSM необходимо замкнуть проводником цифровые выводы № 2 и №10, как и с Arduino Leonardo. Не забыв при этом отогнуть с обратной стороны платы GSM в сторону штиревой контакт соответствующий выводу № 2, так, чтобы он не касался Arduino Mega.
Если вместо использования перемычек просто использовать другой вывод для связи других устройств, то для начала необходимо посмотреть в справке по библиотеке Software Serial список выводов, которые поддерживают прерывания. Что бы изменить номера пина, необходимо переменить некоторые данный в константе __RXPIN__, которая находиться в файле GSM3SoftwareSerial.cpp, который располагается в папке библиотеки GSM.
Что бы более масштабно ознакомиться с информацией об использовании GSM-платы расширения, необходимо смотреть в руководство по началу работы с GSM.