Cara Monitoring Sensor Jarak dengan SMS

Pada kesempatan kali ini saya akan mencoba untuk mengakses modul GSM dimana modul GSM ini akan mengirim SMS ketika ada jarak terdeteksi, jarak yang saya set pada percobaan saya adalah kurang dari 10 cm, dan sensor yang saya gunakan untuk mendeteksi jaraknya yaitu sensor SRF04

Monitoring Jarak dengan SMS ( Sensor Ultrasonik dan GSM Modul )" title="Cara Monitoring Jarak dengan SMS ( Sensor Ultrasonik dan GSM Modul )"/>

dimana terdapat sebuah pin ECHO dan TRIGER untuk lebih jelasnya silahkan sobat bisa baca tentang sensor Ultrasonik Cara Mengakses Sensor Ultrasonik Arduino dan untuk mencoba belajar mengirim dan menerima sms dengan modul GSM silahkan baca juga artikel Cara Mengakses Modul GSM menerima dan mengirim SMS Telepon

selanjutnya silahkan lakukan wiring, karena saya menggunakan softwareserial jadi saya gunakan pin 3 sebagai RX arduino dan pin 2 sebagai TX arduino sehingga untuk menghubungkan ke GSM kita lakukan wiring seperti berikut

TX gsm —- pin 3 Arduino
RX gsm —- pin 2 Arduino
VCC gsm —- 5V Arduino
GND gsm —— GND Arduino

selanjutnya jika sudah selesai silahkan upload program berikut ini :

#include <SoftwareSerial.h>

#define triger 7   // pin 7 sebagai triger srf04
#define echo 8  // pin 8 sebagai echo srf04
long durasi,jarak;

SoftwareSerial sms(3,2);  // pin 3 = RX dan pin 2 = TX

String msg;
char call;

void setup()
{
  sms.begin(115200);   // Setting the baud rate of GSM Module  
  Serial.begin(115200);    // Setting the baud rate of Serial Monitor (Arduino)

pinMode(7, OUTPUT);
pinMode(8, INPUT);

  delay(100);
  pinMode(13, OUTPUT);

  sms.print("AT+CMGF=1r");
  delay(100);
  sms.print("AT+CNMI=2,2,0,0,0r");
  delay(100);
}

void loop()
{  

baca_jarak();
if (jarak <=10){
  SendMessage();
}
else {
}
  Serial.print(" jarak :");
Serial.print(jarak);
Serial.println(" Cm ");
 if (sms.available()>0){
msg = sms.readString();
Serial.print(msg);
delay(100);
 }
}
void SendMessage()
{
  sms.println("AT+CMGF=1");    //Sets the GSM Module in Text Mode
  delay(1000);  // Delay of 1000 milli seconds or 1 second
  sms.println("AT+CMGS="08954*****"r"); // Replace x with mobile number
  delay(1000);
  sms.println("Terdeteksi Jarak  ||  www.kendalielektro.com");// The SMS text you want to send
  delay(100);
  sms.println((char)26);// ASCII code of CTRL+Z
   Serial.println((char)26);
  delay(1000);
}

void ReceiveMessage()
{
  sms.println("AT+CNMI=2,2,0,0,0"); // AT Command to recieve a live SMS
  delay(1000);
  if (sms.available()>0)
  {
    msg=sms.read();
    Serial.print(msg);
  }
}

void MakeCall()
{
  sms.println("ATD+60XXXXXXXXX;"); // ATDxxxxxxxxxx; -- watch out here for semicolon at the end!!
  Serial.println("Calling  "); // print response over serial port
  delay(1000);
}


void HangupCall()
{
  sms.println("ATH");
  Serial.println("Hangup Call");
  delay(1000);
}

void ReceiveCall()
{
  sms.println("ATA");
  delay(1000);
  {
    call=sms.read();
    Serial.print(call);
  }
}

void RedialCall()
{
  sms.println("ATDL");
  Serial.println("Redialing");
  delay(1000);
}

void baca_jarak (){
  digitalWrite(triger, LOW);
  delayMicroseconds(2);
  digitalWrite(triger, HIGH);
  delayMicroseconds(10);
  digitalWrite(triger, LOW);
  delayMicroseconds(2);


durasi = pulseIn(echo, HIGH);
jarak = durasi/58.2;
}

Baiklah mungkin cukup sekian Artikel kali ini semoga bermanfaat, jika ada masukan, kritik, saran atau pertenyaan silahkan di kolom komentar !

Keyword

  • monitoring jarak dengan sms
  • sms arduino iot
  • arduino gsm sim900
  • arduino gsm sim800
  • arduino gsm A6
  • Cara mengakses SMS Arduino
  • Cara Mengirim SMS Arduino

Kunjungi  Kursus ONLINE Gratis Membuat Desain PCB EAGLE

25 thoughts on “Cara Monitoring Sensor Jarak dengan SMS

  • Maret 3, 2018 pada 6:28 am
    Permalink

    sama sama gan,, mari belajar trus tentang mikrokontroller AVR di anakkendali.com

    Balas
  • Maret 3, 2018 pada 6:29 am
    Permalink

    bisa gan untuk sms nya, tapi iklim lingkungan nya pake sensor apa aja nih? suhu, gas, ??

    Balas
  • Maret 3, 2018 pada 9:02 am
    Permalink

    udah level suhu gan.. wkwkwk sangat berbobot sekali ..kunjungi carakeep-trying. blogspot. com

    Balas
  • Maret 4, 2018 pada 3:17 am
    Permalink

    Wah mantep nih bisa dijadikan eksperimen baru buat saya soalnya saya baru bisa bikin radio saja

    Balas
  • Agustus 10, 2018 pada 11:42 am
    Permalink

    kak, saya mau aplikasikan sim800l ini dengan sensor suhu. logika nya apabila suhu >30 maka akan kirim sms, tp kenapa sms yg dikirim ga berhenti2 ya? jd saya mau kalo >30 kirim smsnya hanya sekali, itu gimana ya? makasih sebelumya

    Balas
  • Agustus 13, 2018 pada 8:42 am
    Permalink

    bisa pakai code seperti ini

    if (suhu > 30){
    while (suhu > 30){}
    sendMessega();
    }

    Balas
  • Agustus 18, 2018 pada 11:44 am
    Permalink

    Permisi mau tanya perulangan untuk sensor jarak ultrasonik, contoh misal jika >5 cm maka akan kirim sms, dan >10cm kirim sms, tapi isi smsnya beda, mohon bantuan nya

    Balas
  • Agustus 19, 2018 pada 3:48 pm
    Permalink

    pake program seperti itu malah ga ke kirim sms nya kak

    Balas
  • Agustus 19, 2018 pada 8:44 pm
    Permalink

    Kalo pake program diatas agan bisa rubah fungsi subrutin
    SendMessage() nya

    Void sendMessage(string kata){
    Code yang lainya sama bedakan di serial.println("hellol bla bla bla");
    Diganti jadi Serial.println(kata);

    Balas
  • Agustus 19, 2018 pada 8:53 pm
    Permalink

    Coba pakai algoritma begini

    Int state=0;
    If <30 && state=0 {
    State = 1
    }

    Else if >30 && state = 1{
    State=0
    sendmessage()
    }

    Balas
  • Agustus 21, 2018 pada 1:25 pm
    Permalink

    wah, berhasil kak.. terimakasih banyak

    saya mau aplikasikan lg program ini dengan 2 sensor, ditambah dengan sensor pH. Algoritmanya kalo pH <6 = sms dan kalo >9 = sms. saya sudah buat program seperti diatas, tp kenapa program yg suhu tidak kirim sms? apa sim800l hanya bisa diaplikasikan untuk 1 sensor?

    Balas

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *