20-06-2020, Saat: 21:03
Merhaba,
Bu sefer Telefondan M66 cihazına sms göndereceğiz ve bu sms içeriğine göre Röle açıp kapatacağız.
Kısaca Röleden bahsedecek olursak;
Röle, düşük voltaj ile yüksek voltajı kontrol etmemize olanak sağlamaktadır.
kullandığım malzeme listesi
1-Arduino Uno
2-Quectel M66
3-Röle Kartı
4-Sim Kart
Kullanacağımız AT Komutları
AT+CMGF: M66 modülünü Sms moduna getirir.
AT+CNMI: Yeni gelen mesajları işlemek için yazılan komuttur.
AT+CMGDA="DEL ALL": Gelen tüm mesajları silen komuttur.
Devre Şeması
Kodu Arduino kartımıza yükledikten sonra herhangi bir sorun yoksa M66 modülüne takılı olan sim kart'a ON mesajını gönderirsek röle aktif olacak, OFF komutunu gönderdiğimizde iste röle pasif olacaktır.
Bu sefer Telefondan M66 cihazına sms göndereceğiz ve bu sms içeriğine göre Röle açıp kapatacağız.
Kısaca Röleden bahsedecek olursak;
Röle, düşük voltaj ile yüksek voltajı kontrol etmemize olanak sağlamaktadır.
kullandığım malzeme listesi
1-Arduino Uno
2-Quectel M66
3-Röle Kartı
4-Sim Kart
Kullanacağımız AT Komutları
AT+CMGF: M66 modülünü Sms moduna getirir.
AT+CNMI: Yeni gelen mesajları işlemek için yazılan komuttur.
AT+CMGDA="DEL ALL": Gelen tüm mesajları silen komuttur.
Devre Şeması

Kod: (Select All)
#include SoftwareSerial M66Serial(10, 11); //RX-TX
char GelenByte;
String GelenString;
int Role = 13; // Role kontrol pini
void setup()
{
pinMode(Role, OUTPUT);
digitalWrite(Role, LOW); //Rölenin başlangıç durumu
Serial.begin(9600);
M66Serial.begin(9600); //M66 baud hızı ile aynı olduğundan emin olun
Serial.println("Muharremarslan.com");
M66Serial.println("AT");
while (!M66Serial.available()) {
M66Serial.println("AT");
delay(1000);
Serial.println("Baglaniliyor...");
}
Serial.println("Baglandi!");
M66Serial.println("AT+CMGF=1"); //SMS'i Metin Moduna Ayarla
delay(1000);
M66Serial.println("AT+CNMI=1,2,0,0,0"); //Yeni gelen mesajları işlemek için girilen komut
delay(1000);
M66Serial.println("AT+CMGL=\"REC UNREAD\""); //Okunmamış Mesajları Oku
}
void loop()
{
if (M66Serial.available()) {
delay(200);
while (M66Serial.available()) {
GelenByte = M66Serial.read();
GelenString += GelenByte;
}
delay(50);
Serial.println(GelenString);
GelenString.toUpperCase(); // Alınan mesajı büyük harflere çevir
//Röleyi Aç
if (GelenString.indexOf("ON") > -1) {
digitalWrite(Role, HIGH);
}
//Röleyi Kapat
if (GelenString.indexOf("OFF") > -1) {
digitalWrite(Role, LOW);
}
delay(50);
//İşlem bittikten sonra mesajı sil
if (GelenString.indexOf("OK") == -1) {
M66Serial.println("AT+CMGDA=\"DEL ALL\"");
delay(1000);
}
GelenString = "";
}
}
Muharrem ARSLAN

