Modbus - kompatibel??

Allgemeine Fragen rund um die "Smart Home" Hardware/Komponenten

Moderatoren: seppy, udo1toni

mad-mike
Beiträge: 403
Registriert: 6. Jan 2021 18:05
Answers: 2

Re: Modbus - kompatibel??

Beitrag von mad-mike »

Code: Alles auswählen

Bridge modbus:tcp:tcpBridge "PV Gateway"  [ host="192.168.178.198", port=502, id=1,   reconnectAfterMillis=1500 ] {

    Bridge poller inputPoller "PV Poller" [ start=1000, length=100, refresh=1500, type="input", cacheMillis=100] {
        Thing data Akku_watt "Akku"       [ readStart="1010", readValueType="uint16"]
        Thing data PV_SOC    "SOC"        [ readStart="1014", readValueType="uint16"]
        Thing data von_netz  "von Netz"   [ readStart="1022", readValueType="uint16"]
        Thing data ins_Netz  "ins Netz"   [ readStart="1030", readValueType="uint16"]
    }
    Bridge poller inputPoller2 "PV Poller2" [ start=1, length=100, refresh=1500, type="input", cacheMillis=100] {
        Thing data PV_String1 "PV_String1"       [ readStart="6", readValueType="uint16"]
        Thing data PV_Volt "PV1_Volt"       [ readStart="3", readValueType="uint16"]
    }
}
So habe ich es nun hin bekommen :)
Gruss mad-mike

openHABian 4.1.1 auf Raspberry Pi 4 Mod. b (8GB) ;)

mad-mike
Beiträge: 403
Registriert: 6. Jan 2021 18:05
Answers: 2

Re: Modbus - kompatibel??

Beitrag von mad-mike »

Moin,

Wenn ich mir nun ein Relais board kaufe, muss zum steuern folgenden code senden:

Code: Alles auswählen

Relay commands:
OFF command : FF xx 00 (HEX) or 255 xx 0 (DEC)
ON command : FF xx 01 (HEX) or 255 xx 1 (DEC)

Code: Alles auswählen

ON commands:

>> 01 05 00 00 FF 00 (CS) (CS)  - Turn relay 1 ON

     << 01 05 00 00 FF 00 (CS) (CS)  - Respond that relay 1 is turned ON

>> 01 05 00 01 FF 00 (CS) (CS)  - Turn relay 2 ON

     << 01 05 00 01 FF 00 (CS) (CS)  - Respond that relay 2 is turned ON

>> 01 05 00 02 FF 00 (CS) (CS)  - Turn relay 3 ON

     << 01 05 00 02 FF 00 (CS) (CS)  - Respond that relay 3 is turned ON

>> 01 05 00 03 FF 00 (CS) (CS)  - Turn relay 4 ON

     << 01 05 00 03 FF 00 (CS) (CS)  - Respond that relay 4 is turned ON

>> 01 05 00 04 FF 00 (CS) (CS)  - Turn relay 5 ON

     << 01 05 00 04 FF 00 (CS) (CS)  - Respond that relay 5 is turned ON

>> 01 05 00 05 FF 00 (CS) (CS)  - Turn relay 6 ON

     << 01 05 00 05 FF 00 (CS) (CS)  - Respond that relay 6 is turned ON

>> 01 05 00 06 FF 00 (CS) (CS)  - Turn relay 7 ON

     << 01 05 00 06 FF 00 (CS) (CS)  - Respond that relay 7 is turned ON

>> 01 05 00 07 FF 00 (CS) (CS)  - Turn relay 8 ON

     << 01 05 00 07 FF 00 (CS) (CS)  - Respond that relay 8 is turned ON

Code: Alles auswählen

OFF commands:

>> 01 05 00 00 00 00 (CS) (CS)  - Turn relay 1 OFF

     << 01 05 00 00 00 00 (CS) (CS)  - Respond that relay 1 is turned OFF

>> 01 05 00 01 00 00 (CS) (CS)  - Turn relay 2 OFF

     << 01 05 00 01 00 00 (CS) (CS)  - Respond that relay 2 is turned OFF

>> 01 05 00 02 00 00 (CS) (CS)  - Turn relay 3 OFF

     << 01 05 00 02 00 00 (CS) (CS)  - Respond that relay 3 is turned OFF

>> 01 05 00 03 00 00 (CS) (CS)  - Turn relay 4 OFF

     << 01 05 00 03 00 00 (CS) (CS)  - Respond that relay 4 is turned OFF

>> 01 05 00 04 00 00 (CS) (CS)  - Turn relay 5 OFF

     << 01 05 00 04 00 00 (CS) (CS)  - Respond that relay 5 is turned OFF

>> 01 05 00 05 00 00 (CS) (CS)  - Turn relay 6 OFF

     << 01 05 00 05 00 00 (CS) (CS)  - Respond that relay 6 is turned OFF

>> 01 05 00 06 00 00 (CS) (CS)  - Turn relay 7 OFF

     << 01 05 00 06 00 00 (CS) (CS)  - Respond that relay 7 is turned OFF

>> 01 05 00 07 00 00 (CS) (CS)  - Turn relay 8 OFF

     << 01 05 00 07 00 00 (CS) (CS)  - Respond that relay 8 is turned OFF

Code: Alles auswählen

Status request commands:

>> 01 01 00 00 00 01 (CS) (CS)  - Request for status relay 1
>> 01 01 00 01 00 01 (CS) (CS)  - Request for status relay 2
>> 01 01 00 02 00 01 (CS) (CS)  - Request for status relay 3
>> 01 01 00 03 00 01 (CS) (CS)  - Request for status relay 4
>> 01 01 00 04 00 01 (CS) (CS)  - Request for status relay 5
>> 01 01 00 05 00 01 (CS) (CS)  - Request for status relay 6
>> 01 01 00 06 00 01 (CS) (CS)  - Request for status relay 7
>> 01 01 00 07 00 01 (CS) (CS)  - Request for status relay 8

wie kann ich dies in dem Modbus binding einbringen??

ich habe ja soche eine Verbindung zum senden und empfangen schon realsiert:

Code: Alles auswählen

    Bridge poller inputPoller5 "PV Poller5"               [ start=600, length=10, refresh=5000, type="holding"] {
        Thing data SOC_set "SOC_set" [ readStart="608", readValueType="uint16", writeStart="608", writeValueType="int16", writeType="holding" ]
 

nur wo und wie muss ich denn jetzt hier so ein Poller bauen?? weiss da jemand etwas??
Gruss mad-mike

openHABian 4.1.1 auf Raspberry Pi 4 Mod. b (8GB) ;)

Antworten