#Pengetahuan Dasar
#Mengirim-menerima SMS melalui Mikrokontroler#
( AT Command modem GSM )
Anda bisa berkomunikasi dgn Microcontroller melalui SMS.
Alat dan bahan :
1. Modul microcontroller AVR
2. Modem GSM dgn serial Port
4. GSM SIM CARD (XL ,simpati ,tri, dll)
5. Software Codevision
Prinsip dan Cara kerja Mengirim SMS melalui Microcontroller
Microcontroller mengirim data ( isi SMS dan No tujuan) ke modem GSM melalui RS232,kemudian modem GSM mengirim data tsb ke SMS center yang akan menyampaikan ke No Hp yg dituju.
Blok diagram mengirim-menerima SMS dgn Mikrokontroller
Perintah yang di mengerti modem adalah “AT Command” . Disebut AT Command karena perintah2nya didahului oleh “AT” ( Atention).
Contoh beberapa AT command untuk Modem GSM:
AT+CPBF : cari no telp.
AT+CPBR : membaca buku telp.
AT+CPBW : menulis no telp di buku telp.
AT+CMGF : menyeting mode SMS text atau PDU
AT+CMGL : melihat semua daftar sms yg ada.
AT+CMGR : membaca sms.
AT+CMGS : mengirim sms.
AT+CMGD : menghapus sms.
AT+CMNS : menyeting lokasi penyimpanan ME(hp) atau SM(SIM Card)
AT+CGMI : untuk mengetahui nama atau jenis ponsel
AT+CGMM : untuk mengetahui kelas ponsel
AT+COPS? : untuk mengetahui nama provider kartu GSM
AT+CBC : untuk mengetahui level baterai
AT+CSCA : untuk mengetahui alamat SMS Center
Dalam proses pengiriman atau penerimaan SMS, terdapat 2 mode yaitu:
1. Mode SMS text
2. Mode SMS PDU (Protocol Data Unit).
Mode yang paling mudah digunakan yaitu mode teks (kode ASCII). tapi mode PDU(kode hexa) lebih powerful.
Penjelasan Beberapa AT Command
AT+CPMS : Mengeset Target lokasi memory
AT Command | Respon Modem |
---|---|
AT+CPMS=[Mode1],[Mode2],[Mode3] | OK |
Mode1],[Mode2],[Mode3] , SM =SIM Card , ME (HP) , MT semua storage.
-AT+CMGF : Mengeset Modem sebagai Mode text atau PDU.
AT Command | Respon Modem |
---|---|
AT+CMGF=<mode><CR> | OK |
Parameter
<mode> 0 =Mode PDU, 1 = Mode text
<CR> = ASCII character 13
Contoh Set GSM modem ke Text Mode SMS dan kirim sms ke No : +6285695341050.
(anda bisa mencobanya lebih dahulu pada hyperterminal)
AT+CMGF=1 <akhiri dg enter(CR) >
OK // ini respon ok dari modem
AT+CMGS="+6285695341050" <akhiri dg enter(CR)
>
> hallo apa kabar. <akhiri dgn CTRL-Z>
+CMGS: 324 //parameter jawaban dari modem
OK // jawaban ok dari modem
Untuk mengetahui Mode apa yang sedang aktif gunakan perintah:
AT+CMGF?
- AT+CMGL: Melihat sms yang ada
AT Command | Respon Modem |
---|---|
AT+CMGL=<stat><CR> | +CMGL: <index>,<stat>,<oa>,[<alpha>],[<scts>]<CR><LF><data><CR><LF>
…
OK
|
Parameter
<stat>: Status , antara lain:
status sms | mode text | mode PDU |
---|---|---|
sms blm dibaca | “REC UNREAD” | 0 |
sms sdh dibaca | “REC READ” | 1 |
sms tak terkirim | “STO UNSENT” | 2 |
sms terkirim | “STO SENT” | 3 |
semua sms | “ALL” | 4 |
<index>: Index pesan
<oa>: alamat Originator
<alpha>: Originator name (jika ada di phonebook)
<scts>: waktu
<data>: isi pesan
<CR>: ASCII character 13
<LF>: ASCII character 10
Contoh :
Settinglah modem GSM ke Mode SMS text, lihat semua sms yg ada kemudian hapus sms dari modem GSM.
AT+CMGF=1 < tekan enter(CR) >
OK
AT+CMGL="ALL" //(pada mode PDU(CMGF=0) gunakan AT+CMGL=4)
+CMGL: 1,"REC UNREAD","
+6285695341050",,"11/01/09,10:26:26+04" pesan pertama
+CMGL: 2,"REC UNREAD","
+6285695341050",,"11/01/09,10:26:49+04" pesan kedua
OK
AT+CMGD=1 //hapus pesan pertama
OK
AT+CMGD=2 //hapus pesan kedua
OK
AT+CMGD : Menghapus SMS
AT Command | Response MODEM |
---|---|
AT+CMGD=<index><CR> | OK |
contoh
AT+CMGD=1 //hapus pesan urutan pertama
OK //jawaban dari modem GSM
AT+CMGS : Mengirim SMS
AT Command | Response modem GSM |
---|---|
AT+CMGS=<number><CR><message><CTRL-Z> | +CMGS:<mr>
OK
|
Parameter
<CR> = ASCII character 13
<CTRL-Z> = ASCII character 26
<mr> = message Reference
Contoh
Menseting modem GSM ke Mode SMS text dan menngirim sms ke +6285695341050.
AT+CMGF=1
OK //jawaban modem
AT+CMGS="+6285695341050" <akhiri dgn enter bukan entar
> halo pc control <akhiri dgn CTRL-Z>
+CMGS: 123 //parameter jawaban dari modem
OK //jawaban dari modem
demikianlah ceritanya dasar perintah AT Command.
Perintah Microcontroller mengirim AT Commad ke modem GSM
Mikrokontroller yg kita gunakan jenis AVR dgn pemrograman C codevision
Gunakan fungsi printf untuk mengirim string At command ke modem GSM.dan putchar jika hanya mengirim 1 karakter.
contoh
printf(“AT+CMGF=1″); //menyeting modem GSM ke mode text
putchar(13); //mengirim 1 karakter CR / enter.
printf(“AT+CMGS=”);
putchar(‘ ” ‘);
printf(“+6285695341050″); //no HP yg dituju
putchar(‘ ” ‘);
putchar(13); //kode ascii <CR>
printf(” apa kabar “);
putchar(26); // kode ASCII untuk CTRL-Z
#kalau ada hal yg membingungkan atau ada pertanyaan silahkan di comment saja
0 komentar:
Posting Komentar