Pengetahuan Dasar mengirim-menerima SMS melalui Mikrokontroler ( dgn AT Command modem GSM)

Pengetahuan Dasar  mengirim-menerima  SMS melalui Mikrokontroler

Tujuan:

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

referensi:

- Mobile Application Development with SMS and the SIM Toolkit

http://www.developershome.com/sms

-http://www.avrku.com/2010/02/send-sms-pakai-microcontroller.html

-http://www.jazi.staff.ugm.ac.id/jazi.pdf

http://electroniclib.wordpress.com/2011/01/27/at-command-gsm-modem-sim300-part-1-pengoperasian-dengan-komputer/

http://www.atmel.com/Images/doc8016.pdf

http://www.dreamfabric.com/sms/

http://u2technologies.wordpress.com/2011/04/03/sms-gateway-dengan-at89s52-c51/

About these ads

About pccontrol

Berisi Tutorial Menggunakan PC untuk mengontrol Peralatan dengan cara mudah & praktis.

Posted on 13 February 2012, in Menengah-3. Bookmark the permalink. 63 Comments.

  1. gan bisa minta no hp agan? saya ingin berkonsultasi.. mohon bantuannya gan.. trims

  2. gan…
    kalau cuma mau mentranfer data sms/isi sms menggunakan kabel data ke microkontroler gmna ya gan…?
    apa ada alat tambahan..?
    mohon pencerahannya…

  3. Tlong ksh tau nama pengirim sms di kontak pesan sms di nomer kami 081515960139

  4. Mas.mhon bimbinganganya.
    program codevision sderhana untuk mengenali perintah dr sms.misalnya jika ada sms berisi LED ON maka Port C.0 bernilai 1.sya mash belum bisa parsing Sms,saat ada sms masuk kan ada banyak karakter sblm isi sms nya.kl g slh +CMGR :1 y mas.mkash sblmny mas.
    kutusolder@gmail.com

  5. maaf om, ane ikutan nih,, kebe hobi ngulik juga,,

    mau nanya diagram alirnya gimana ya,,
    kalo bisa menggunakan basic compiler,, thx om, thx all

  6. Saya masih newbie, dan sedang mencari tugas tentang koneksi mikrokontroler Atmega 8535 dengan mysql, tapi saya tidak tahu caranya,, bisa kah para teman teman dapat memberikan pencerahan

  7. Mohon bantuannya,
    1. Bagaimana cara mikrokontroller berkomunikasi dengan modem, apakah ada fungsi pustaka khusus pada program codevisionnya?
    2. Boleh minta contoh program lengkap menggunakan ATmega8535.

    Maaf saya masih beginer pak.
    Terimakasih sebelumnya :-)

  8. mau tanya nih, ini kan bisa sms, apakah ini juga bisa digunakan untung telpon ke telepon?
    kalo bisa bagaimana caranya?

  9. kang saya mau nanya..
    nih maaf kalo sudah mengangu..
    kalo cara kerja modem CDMA sms gateway apakah sama dengan GSM??????

    plisss help me.. :)
    makasihh

  10. mas mau nanya dong kalo Modem CDMA yg suport At comand sms gateway modem apa yah mas ? buat TA wajib pke Modem CDMA…
    boleh minta info n bantuannya mas…

    saya bingung mas..
    apakah Semua modem CDMA bisa..?..
    yg suport AT comand . mohon ya mas. makasih..:)

  11. salam.
    saya selama ini belajar mikro kontroler tipe MCS51. kalau mw belajar AVR, mulai dari mana dulu Mas? Untuk AVR kayaknya menarik untuk dipelajari. Mohon jawabannya…

    • Pelajari secara bertahap, mulai dari yg paling sederhana misal memprogram i/o port. gunakan bahasa pemrograman yang mudah dan praktis. saya sarankan bahasa C, IDE nya bisa codevision, AVR studio atau arduino .

  12. terimaksh banyak atas infonya,TA saya mengenai SMS Gateway,
    Saya boleh meminta sarannya lewat email?
    terimksh…

  13. bang,caranya nampilin sms inbox ditampilin lcd gmn y??
    mohon pencerahannya,,

  14. mas mau minta harapannya
    untuk kontrol 2 buah servo via sms syntax’a ditambahin apa aja ia ?
    untuk inisialiassi servo tersebut

  15. kak saya jimi mahasiswa akhir bleh minta no hp nya g coz mau sharing2…! thanks

  16. mu tanya gan, kalo kode untuk membaca sms yg diterima HP di atmeganya gimana ya gan?
    jd nanti sms yg di terima jadi input untuk mengendalikan sistem.

    apakah lngsung menggunakan perintah AT+CMGR ?
    mohon bantuan untk list di CodeVision nya gan buat baca SMS nya aja..
    terima kasih.

  17. IKITAN NANAYA OM
    KALO PAKE BAHASA ASSEMBLER
    CONTROL Z NYA DIAPAIN YACH ???

  18. Klo paake modem OEM Wavecom Fastrack M1306, ada serial portnya ga ya??? klo di gambarnya kok pin-nya banyak banget ya….
    trims banget…..

  19. saya mau tanya, mungkin agak OOT, modem GSM tipe apa aja yang bisa digunakan untuk program seperti di atas?? apakah yang penting ada serial port dan available utk AT command??
    trims……….

  20. numpang komen, saya ikut belajar dari sini ya…..
    Wahyu

  21. maaf kaka saya ingin belajar tentang mikro
    kalo saya kepengen deh buat alat dari mikro yang nantinya data dari mikro bisa dikirim lewat modem ke hp pengguna
    data itu bisa brupa suhu tekanan dsb

    bisa minta tolong di jelaskan ga kak????

    • Dede harus bisa memprogram microcontroller khususnya program komunikasi serial dan mengerti ttg AT command spt artikel diatas. karena microcontroller memerintahkan modem untuk mengirim dan menerima sms dgn “bahasa modem” yaitu AT command. perintah2 itu dikirim melalui serial komunikasi pin tx/rx .

  22. maaf mas sya mau tanya…..perintah2 itu d ketikin dmn’y ya? d pc pa d hp.maap bru ingin belajar.heheheh

  23. kalo gag pake codevision, tp pake bascom bisa gag gan??

  24. kalo ngirim sms dari mikro ke hp kn pake “AT+CMGS”
    kalo ngirim dari hp ke mikro gmn???

  25. maaf numpang gan…
    dari komen2 dan pertanyaan yg blm terjawab itu source buat ngirim perintah dari HP user ke mikrokontroller nya gmn???
    sprti prtanyaan yg udah ada(untuk mengontrol lampu lewat sms)????

    tlg dijawab ya gan,..mksh

  26. mo nanya nih program yang saya buat sudah sama,,, koneksi mikro ke serial udah bisa..

    tetapi kenapa belum terkoneksi dengan modem gsm wavecom saya yah.. tipe m1206b..
    saya menggunakan kabel DB9 male to DB15 male.. apa ada konfigurasi di kabelnya yang salah?

  27. kak, mau tanya..
    saya sedang bikin Tugas Akhir topik saya “mengontrol lampu jarak jauh menggunakan modem wavecom dan microcontroller atmega8535″ modem yang saya gunakan wavecom tipe m1603b…trus yang mau saya tanyakan
    1. bagaimana membuat script untuk koneksi antar modem dan atmega8535
    2. script untuk memproses agar sms yang diterima modem dapat diolah oleh atmega sehingga lampu dapat nyala atau mati

    mgkin it dulu kak yang saya mau tanyakan..
    makasih banyak sebelum nya..

  28. mantap kak blog nya, sgt bermanfaat…
    kak,, kalo setting baudratenya brp? perlu kristal brp? sekalian kalo bleh tahu setting baudrate pada mikronya.
    terima ksh kak….

  29. ka boleh saya minta programg proteus nya
    kalu bisa dengan file hex nya..
    soalnya saya masih balum mengerti tentang ini..

  30. mau tanya kak..
    kak, krn bgg n blm mengerti avr jd tambah bgg..

    klo menyambung modem ke mikrokontrollernya, n ketika ingin mengirim sms, no.hp pengguna disimpan dimana ya kak?

    *kak, bisa tolong jelaskan prinsip atau alur kerja dari mikro ke modem GSM terus sampe bisa ke HP pengguna?

    *dan untuk contoh diatas itu pake PDU mode atau text mode ya?
    untuk Modem GSM yang ada diatas (wavecom fastrack) bisa pake PDU?

    klo PDU ; “Untuk itu sebelum dikirim,terminal atau HP akan melakukan perubahan dari format teks menjadi formatPDU, proses ini sering disebut encodec. Adapun skema dari format PDU pengirimtelah diatur dan ditetapkan oleh ETSI sebagai berikut : (Tim Penelitian, 2005 : 13)”
    nah proses itu harus diprogram di mikrokontrollernya atau modemnya ya kak?

    dan klo pake text mode aja gmn kak?

    mohon bantuannya.. T.T

    mksh kak.. ^^ hehehe.. pertanyaan banyak ya,, heheh

  31. mau tanya kak..
    kak, krn bgg n blm mengerti avr jd tambah bgg..

    1. klo menyambung modem ke mikrokontrollernya. n ketika ingin mengirim sms, yang diprogram itu di mikrokontrollernya?

    2. *kak, bisa tolong jelaskan prinsip atau alur kerja dari mikro ke modem GSM terus sampe bisa ke HP pengguna?

    3. *dan untuk contoh diatas itu pake PDU mode atau text mode ya?
    4. untuk Modem GSM yang ada diatas (wavecom fastrack) bisa pake PDU?

    5. “Untuk itu sebelum dikirim,terminal atau HP akan melakukan perubahan dari format teks menjadi formatPDU, proses ini sering disebut encodec. Adapun skema dari format PDU pengirimtelah diatur dan ditetapkan oleh ETSI sebagai berikut : (Tim Penelitian, 2005 : 13)”
    nah proses itu harus diprogram di mikrokontrollernya atau modemnya ya kak?

    mohon bantuannya.. T.T

    mksh kak.. ^^

    • 1. yang diprogram di microcontrollernya . modemya tdk diprogram cuman dikasih perintah2 (namanya AT command) oleh microcontroller .
      2. prinsipnya begini : micro mengirim AT command dan text ke modem , trus modem kirim sms ke SMS Center trus ke HP deh.
      3. untuk meliaht modenya lihat perintah CMGF , kalao CMGF=0 berarti PDU , kalo CMGF=1 berarti mode text.
      4. bisa bangat, kan default/standarnya emang PDU. kalau gag percaya tanya toko sebelah.
      5. kaga usah itu mah urusan modem sama Hape.

  32. Kalau untuk mengirim 2 nomor berbeda sekaligus saya menggunakan thread agar dapat mengirim secara bersamaan….

  33. izin bang, mau nanya, klo ngirm SMS ke 2 nomer yg berbeda sekaligus, dari mikro ke HP gmn yah? ap yg mesti diubah? terima kasih……

  34. kalo ngirm sms dari mikro ke hp udah bs kak..
    kalo dari hp ke mikro bingung kak….

  35. bisa tolong kasih contoh list programnya kak..
    misalnya kita mau ngidupin lled make sms………
    gak bs2 kak…….bingung kak….:)

  36. Dhuta Pratama

    irawan sukma : boleh saya bantu? anggap saja boleh. Oke. begini saudara irawan. anda tentunya sebelumnya telah mengerti bagaimana pemrograman avr. Untuk menjalankan alat atau boleh saya katakan robot itu cukup dengan membaca memori sms yang terdapat pada device modem. lakukan filtering prefix sms yang masuk. Cukup rumit untuk menjelaskan secara detail bagaimana programnya. Nah, intinya anda menggunakan at command “at+cmgr=” untuk pemmrograman avrnya bisa digunakan “print()” seperti yang dijelaskan diatas. dan untuk filteringnya coba pakai pemecahan karakter dan perhitungan.

  37. Irawan Sukma

    tolong y kak….
    bingung sangat..

  38. Irawan Sukma

    saya mahasiswa tingkat akhir t.elektro univ. sriwijaya….
    kak,, kalo mw menjadikan sms yang diterima mikro untuk menjalankan alat kayak mana programnya kak…
    mohon bantuanya sangat kak..
    dreamchasera@gmail.com

  39. bagaimana menghubungkan mikrokontroler AVR ATMega8535 ke Database MySQL ya ?
    mohon bantuannya…

  40. saya mhasiswa tingkat akhir dari Sanata Dharma mau tnya,,
    klo kita membuat aplikasi dari pc menggunakan AT commands lalu dikirim ke port-sms J2ME yg sudah ditentukan, gimana agar SMS yg dikirm dari PC bisa diterima oleh aplikasi J2ME yg saya buat???

    saya mencoba slalu masuk pada inbox bawan HP bukan inbox dari J2ME yg saya buat..

    terima kasih,,,
    mohon bimbingannya…

  41. gan progrtamnya seperti apa???

Komentar ,Saran atau Pertanyaan

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 56 other followers

%d bloggers like this: