Makel M600 Sayaçtan Veri Çekme

12lavander

Üye
Katılım
19 Ağu 2023
Mesajlar
2
Puanları
1
Yaş
24
Makel M600.2251 model sayaçtan IEC 62056-21 protokolüyle RS485 üzerinden veri çekmeye çalışıyorum. ESP32 kullanıyorum. Cihazın seri numarası için sorgu gönderdiğimde bana 255, 240, 252 vb şekilde sonuçlar döndürüyor.

mySerial.begin(300);
mySerial.println("/?!CRLF");
şeklinde baud hızını ayarladım ve komut gönderdim. Döngü kısmı alttaki şekilde:
void loop() {
if (mySerial.available()) {
String response = String(mySerial.read());
Serial.println("Received: " + response);
if (response.indexOf("/?!") != -1) {
// Cihaz kimliği sorgusu yanıtı alındı, seri numarasını iste
mySerial.println("[DATA]050[\r][\n]");
} else if (isSerialNumberRequested) {
// Seri numarası yanıtı alındı
Serial.print("Device Serial Number: ");
Serial.println(response);
if (response.startsWith("/SAT")) {
mySerial.println("[ACK]050[\r][\n]");
}
// Aktif tüketim sorgusu gönderme
if (response.startsWith("/SAT")) {
mySerial.print("[SOH]R2[STX]1.8.0()[ETX][BCC]");
}
isSerialNumberRequested = false; // Seri numarası alındıktan sonra tekrar sıfırla
}
}
}

ve çıktı:
15:28:59.346 -> Received: 252
15:28:59.346 -> Device Serial Number: 252

şeklinde oluyor. Şuan bana neyi döndürdüğünü bilmiyorum.
 

Yeni mesajlar

Forum istatistikleri

Konular
128,207
Mesajlar
915,823
Kullanıcılar
449,987
Son üye
mavcil19

Yeni konular

Geri
Üst