Çözüldü5.72K görüntülenmeLora#elektrikliaraç #nano #proximitysensör
0

KODLAR BU ŞEKİLDE BİRBİRLERİYLE HABERLEŞMİYORLAR VE GSM MODULUNDEN VEYA SERİ PORT EKRANINDAN HERHANGİ BİR VERİ OKUNMUYOR 
PARAMETRE AYARLARININ RESİMLERİ DE EKTEDİR
 
 
 
 
 
 
 
 
 
 
 
GSM SHİELD İÇİN
 
 
#include "LoRa_E22.h"
LoRa_E22 E22(&Serial1, 2, 7, 6);
 
#define M0 7
#define M1 6
 
struct Signal {
  char type[15];
  int role;
} data;
 
#include <KapadokyaGSM.h>
KapadokyaGSM Kapadokya;
String smsMetni, smsNumarasi;
#define gonderilecekTelNumarasi  "+905551112233" // Numarayı değiştirmeyi unutmayın :)
 
 
void setup() {
  pinMode(M0, OUTPUT);
  pinMode(M1, OUTPUT);
 
  digitalWrite(M0, LOW);
  digitalWrite(M1, LOW);
 
  Serial.begin(9600);
  E22.begin();
  delay(500);
 
  Kapadokya.basla();
  delay(4000);
  Kapadokya.tumSmsSil();
  delay(4000);
  Serial.println("Sistem Basladi");
  Kapadokya.smsGonder(gonderilecekTelNumarasi, "Sistem acildi.");
}
 
 
 
void loop() {
  while (E22.available()  > 1) {
 
    // Gelen mesaj okunuyor
    ResponseStructContainer rsc = E22.receiveMessage(sizeof(Signal));
    struct Signal data = *(Signal*) rsc.data;
    Serial.print("Gelen Messaj: ");
    Serial.println(data.type);
 
    if (strcmp(data.type, "Fixaj.com") == 0) {
      Serial.println("şifre doğru");
      if (data.role == 11) {
        Serial.println("gaz kacagi basladi");
        Kapadokya.smsGonder(gonderilecekTelNumarasi, "gaz kacagi basladi");
        delay(1000);
 
      } else if (data.role == 10) {
        Serial.println("gaz kacagi durdu");
        Kapadokya.smsGonder(gonderilecekTelNumarasi, "gaz kacagi durdu");
        delay(1000);
      }
      else if (data.role == 21) {
        Serial.println("hareket algilandi");
        Kapadokya.smsGonder(gonderilecekTelNumarasi, "hareket algilandi");
        delay(1000);
      }
      else if (data.role == 20) {
        Serial.println("hareket durdu");
        Kapadokya.smsGonder(gonderilecekTelNumarasi, "hareket durdu");
        delay(1000);
      }
      else  {
        Serial.println("diger");
        delay(1000);
      }
    }
 
    rsc.close();
  }
}
 
GAZ SENSÖRÜ İÇİN
 

#include "LoRa_E22.h"
#include <SoftwareSerial.h>
 
SoftwareSerial mySerial(10, 11);
LoRa_E22 E22(&mySerial);
 
struct Signal {
char type[15] = "Fixaj.com";
int sensor;
} data;
 
#define M0 7
#define M1 6
 
volatile bool roleDurumu = false;
volatile bool butonDurumu = false;
 
bool gaz, eGazDrm;
 
void setup() {
pinMode(M0, OUTPUT);
pinMode(M1, OUTPUT);
digitalWrite(M0, LOW);
digitalWrite(M1, LOW);
 
Serial.begin(9600);
E22.begin();
delay(500);
}
 
void loop() {
// Serial.println(analogRead(A0));
if (analogRead(A0) > 80) {
gaz = true;
}
else {
gaz = false;
}
 
if (eGazDrm != gaz) {
if (gaz) {
eGazDrm = gaz;
data.sensor = 11;
ResponseStatus rs = E22.sendFixedMessage(0, 1, 18, &data, sizeof(Signal));
Serial.println(rs.getResponseDescription());
} else {
eGazDrm = gaz;
data.sensor = 10;
ResponseStatus rs = E22.sendFixedMessage(0, 1, 18, &data, sizeof(Signal));
Serial.println(rs.getResponseDescription());
}
 
Serial.print("data.sensor: ");
Serial.println(data.sensor);
}
}

 
 
 
HAREKET SENSÖRÜ İÇİN 
 

#include "LoRa_E22.h"
#include <SoftwareSerial.h>
 
SoftwareSerial mySerial(10, 11);
LoRa_E22 E22(&mySerial);
 
struct Signal {
  char type[15] = "Fixaj.com";
  int sensor;
} data;
 
#define M0 7
#define M1 6
 
volatile bool roleDurumu = false;
volatile bool butonDurumu = false;
 
bool hrkt, eHrktDrm;
 
void setup() {
  pinMode(M0, OUTPUT);
  pinMode(M1, OUTPUT);
  digitalWrite(M0, LOW);
  digitalWrite(M1, LOW);
 
  Serial.begin(9600);
  E22.begin();
  delay(500);
}
 
void loop() {
  // Serial.println(analogRead(A0));
  if (digitalRead(A0)) {
    hrkt = true;
  }
  else {
    hrkt = false;
  }
 
  if (eHrktDrm != hrkt) {
    if (hrkt) {
      eHrktDrm = hrkt;
      data.sensor = 21;
      ResponseStatus rs = E22.sendFixedMessage(0, 1, 18, &data, sizeof(Signal));
      Serial.println(rs.getResponseDescription());
    } else {
      eHrktDrm = hrkt;
      data.sensor = 20;
      ResponseStatus rs = E22.sendFixedMessage(0, 1, 18, &data, sizeof(Signal));
      Serial.println(rs.getResponseDescription());
    }
 
    Serial.print("data.sensor: ");
    Serial.println(data.sensor);
  }
}

 
 
 
 
 

Soru yeni cevaplara kapalıdır.
Mehmet En iyi cevap olarak seçildi Mart 30, 2022
0

devre şemanızı ve parametre ayar ekranlarınıda atın bakayım

Harun Kayaokay Yeni yorum gönderildi Mart 24, 2022

ANA LORADA DEVRE BAĞLANTILARINI VİDEODAN BAKARAK YAPTIK. TAM EMİN OLMAK İÇİN SİZDE DEVRE ŞEMASI VARSA ATABİLİR MİSİNİZ?

16 cevaptan 1'ini inceliyorsun, tüm cevapları görmek için buraya tıklayın.