Cara Mengirim SMS dengan SIM800 dan Arduino

SIM800 adalah salah satu modem GSM/GPRS yang bekerja di empat band frekuensi, yakni 850, 900, 1800 dan 1900 MHZ. Sedangkan GPRs-nya mengadopsi teknologi multi slot class 12/10 dan mendukung skema coding GPRS CS1-CS4. Selain itu, dengan tambahan fitur Bluetooth, radio FM serta ukurannya yang kompak menjadikan modul ini alternatif utama pengganti module SIM900 yang legendaris.

pinout module SIM800

[AdSense-A]

Untuk mengirim SMS dengan modul SIM800 ini dengan Arduino caranya cukup mudah. Cukup menyediakan beberapa kabel jumper untuk mengkoneksikan antara modul dengan Arduino.  Namun yang perlu Anda perhatikan bahwa modul ini bekerja dengan rentang tegangan 3,4 – 4,4V. Sebuah tegangan yang ‘nanggung’ mengingat di papan Arduino tidak tersedia level tegangan ini. Yang ada hanya level tegangan 3,3V dan 5V. Dengan demikian, mau tidak mau Anda harus menyediakan power supply tambahan yang menyediakan level tegangan 3,4 – 4,4V. Ingat, jangan sekali-kali menghubungkan pin VCC modul SIM800 dengan tegangan 5V, karena dapat merusakkan modul. Dan jika Anda memaksakan menggunakan level tegangan 3,3V di papan Arduino, maka nanti akan muncul warning ‘Under Voltage’ di jendela Serial Monitor dan fungsi-fungsi modul akan intermittent (kadang jalan kadang ngga)

Alat dan bahan untuk eksperimen kirim SMS dengan SIM800L – Arduino

  1. Arduino Uno
  2. Modul SIM800L
  3. Beberapa kabel jumper male-female
  4. DC-DC converter (set output tegangan di 3,7 V)
  5. Power supply 12V

Berikutnya, susunlah komponen di atas seperti tampak pada gambar di bawah

cara kirim sms dengan sim800L dan arduino

Jika hardware sudah siap, langkah berikutnya adalah mengisi firmware di sisi Arduinonya. Buka software IDE Arduino, dan isikan sketch sederhana berikut ini:

#include <SoftwareSerial.h>

#define SIM800_TX_PIN 8
#define SIM800_RX_PIN 7

SoftwareSerial serialSIM800(SIM800_TX_PIN,SIM800_RX_PIN);

void setup() {
 Serial.begin(9600);
 while(!Serial);

 Serial.println("Inisialisasi modul SIM800L");
 serialSIM800.begin(9600);
 delay(1000);

 Serial.println("Kirim SMS...");

 //Set mode teks untuk pengiriman sms
 serialSIM800.write("AT+CMGF=1\r\n");
 delay(1000);

 //Mulai mengirim Sms
 serialSIM800.write("AT+CMGS=\"081910026910\"\r\n");
 delay(1000);
 serialSIM800.write("System ready");
 delay(1000);
 serialSIM800.write((char)26); //CTRL-Z
 delay(1000);
 Serial.println("SMS Terkirim!");
}

void loop() {

}

Penjelasan Sketch ‘Kirim SMS dengan SIM800L – Arduino’

Cara kerja sketch di atas cukup sederhana, yakni mengemulasi pin 7 dan 8 Arduino menjadi pin serial dengan library‘SoftwareSerial.h’. Mengapa tidak menggunakan hardware serial di pin 0 dan 1? Karena pin ini digunakan untuk memonitor jalur serial Arduino yang menuju port USB laptop melalui jendela Serial Monitor (untuk keperluan debugging).

Kembali lagi ke pin 7 dan 8 Arduino. Pin ini dihubungkan secara cross (bersilangan) dengan pin Tx dan RX modul SIM800L supaya dapat berkomunikasi. Protokol komunikasi yang digunakan adalah komunikasi serial asinkron biasa. Sedangkan ‘bahasa’ yang digunakan/dimengerti modem adalah AT Command. Jadi mau tidak mau Arduino (atau kontroller lain) harus menggunakan set instruksi AT command ini (bisa Anda cari datasheet-nya di internet). Khusus untuk mengirim sms, urutan AT command-nya adalah sebagai berikut:

AT+CMGS=”nomor-tujuan” [enter]

[ketik isi SMS]

CTRL-Z

Yang kalau diterjemahkan dalam bahasa Arduino dapat Anda lihat pada baris 23-28 pada sketch di atas

Ohya, satu lagi, salah satu parameter yang penting dalam komunikasi serial asinkron adalah parameter baudrate. SIM800 ini settingan default baudrate-nya adala 115.200 bps. Anda dapat dengan mudah mengubahnya menjadi 9600 bps dengan cara memasukkan AT command : ‘AT+IPR=9600’ melalui aplikasi console/terminal semacam Hyper Terminal, Putty, atau lewat jendela Serial Monitor Arduino. Caranya dapat Anda baca di sini

Untuk sementara sekian dulu tutorialnya, Anda dapat mengembangkannya sesuai dengan kebutuhan project Anda, salah satunya adalah membuat SMS controller. Selamat berkreasi….

[AdSense-A]

158 Comments

Add a Comment

Your email address will not be published. Required fields are marked *