Wago /SPS über Modbus(TCP/IP) in FHEM steuern

Begonnen von lechez, 05 Mai 2013, 10:50:13

Vorheriges Thema - Nächstes Thema

der-Lolo

#495
Guten Morgen Andreas,
im Codesys - unter Ressourcen, Steuerungskonfiguration kannst Du ja festlegen wie die Eingänge innerhalb des SPS Programmes heissen sollen. Hier steht auch die Adresse der Eingangsklemme im Modbus.

Auf diese kannst DU einfach in FHEM lauschen - in meinem Fall liegt der Haustuerkontakt auf %IX13.12

defmod HaustuerGeschlossen ModbusCoil wago IX13.12
attr HaustuerGeschlossen DbLogExclude .*
attr HaustuerGeschlossen IODev WagoController
attr HaustuerGeschlossen event-on-change-reading .*
attr HaustuerGeschlossen group Eingänge
attr HaustuerGeschlossen room 14-Haustuer
attr HaustuerGeschlossen webCmd :
 

Ich hoffe das hilft Dir.

Innerhalb von FHEM kannst Du dann auf open/closed mappen ohne klimmzüge in Codesys zu machen und ohne mehr als ein bit zu belegen.

ChrisD

Hallo,

Du kannst den Zustand des Fenster über ein notify übertragen.

Zuerst benötigst du ein Coil, z.B.:
define mbcFHT_DachBad_Window ModbusCoil wago MX300.0
attr mbcFHT_DachBad_Window event-on-change-reading .*


Anschließend kannst du mit folgendem notify die Fensterstellung übertragen:
define nFHT_DachBad_Window notify FHT_DachBad:window.* { fhem "set mbcFHT_DachBad_Window ".($EVTPART1 eq "closed"?"off":"on")}

Aus 'closed' wird 0, alles andere wird zu '1'.

Grüße,

ChrisD

WagoAndreas

Hallo Lolo,

mhm aber es is ja genau andersherum. Ich möchte ja vom FHT (Conrad System) die Info OPEN oder CLOSED in der SPS haben.
Wie ich meine Temperaturen in die SPS bekommen hat ja Chris oben schon beschrieben - was auch Super funktioniert.
nun ist eigentlich die Frage wie ich die Info der Fensterkontakte elegant in die SPS bekomme.

meine Hauptsteuerung soll die SPS bleiben und das FHEM quasi die Informationen liefern.

WagoAndreas

DANKE ich werde es später ausprobieren :-) DANKE!!

WagoAndreas

Hallo Chris,

er setzt das closed nicht um in 0. Wenn ich es manuel als zu setzte geht es.

der-Lolo

Ja, Asche auf mein Haupt - ich sollte besser lesen bevor ich antworte...

WagoAndreas

Ach warum :-) geht mir auch oft so :-) Is ja jetzt nix warum die Welt unter geht.

WagoAndreas

Funktioniert ja jetzt fast. FHEM checkt noch nicht das closed (hab extra geschaut wird klein geschrieben) auf off gesetzt wird.

WagoAndreas

Ich hab noch was rausgefunden. Jedes neue Telegramm auch wenn wiederholt closed drinnen steht erkennt er nicht als closed und setzt mir den Merker auf 1. Ich denke fhem erkennt closed nicht als closed und setzt es daher immer auf 1?

ChrisD

Hallo,

Was steht im Event-Monitor wenn 'closed' kommt ?

Grüße,

ChrisD

WagoAndreas

2019-06-23 17:12:47 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:47 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:47 ModbusRegister MR_MW21 200
2019-06-23 17:12:47 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:47 ModbusRegister MD200 23.7999992370605
2019-06-23 17:12:47 ModbusRegister MD200 RAW: 666641be
2019-06-23 17:12:47 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:47 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:47 ModbusRegister MR_MW21 200
2019-06-23 17:12:47 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:48 ModbusRegister MD200 23.7999992370605
2019-06-23 17:12:48 ModbusRegister MD200 RAW: 666641be
2019-06-23 17:12:48 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:48 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:48 ModbusRegister MR_MW21 200
2019-06-23 17:12:48 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:48 ModbusRegister MD200 23.7999992370605
2019-06-23 17:12:48 ModbusRegister MD200 RAW: 666641be
2019-06-23 17:12:48 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:48 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:48 ModbusRegister MR_MW21 200
2019-06-23 17:12:48 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:49 FHT FHT_Dachgeschoss actuator: 0%
2019-06-23 17:12:49 ModbusRegister MD200 23.7999992370605
2019-06-23 17:12:49 ModbusRegister MD200 RAW: 666641be
2019-06-23 17:12:49 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:49 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:49 ModbusRegister MR_MW21 200
2019-06-23 17:12:49 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:49 ModbusRegister MD200 23.7999992370605
2019-06-23 17:12:49 ModbusRegister MD200 RAW: 666641be
2019-06-23 17:12:49 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:49 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:49 FHT FHT_Dachgeschoss desired-temp: 23.0
2019-06-23 17:12:49 ModbusRegister MR_MW21 200
2019-06-23 17:12:49 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:50 FHT FHT_Dachgeschoss ack: 30
2019-06-23 17:12:50 ModbusRegister MD200 23.7999992370605
2019-06-23 17:12:50 ModbusRegister MD200 RAW: 666641be
2019-06-23 17:12:50 ModbusRegister MD201 23.6000003814697
2019-06-23 17:12:50 ModbusRegister MD201 RAW: cccd41bc
2019-06-23 17:12:50 ModbusRegister MR_MW21 200
2019-06-23 17:12:50 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window set_off
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window set_on
2019-06-23 17:12:50 FHT FHT_Dachgeschoss battery: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss batteryState: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss lowtemp: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss window: closed
2019-06-23 17:12:50 FHT FHT_Dachgeschoss windowsensor: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss warnings: none
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window off
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window on
2019-06-23 17:12:50 ModbusRegister MD200 23.7999992370605

WagoAndreas

richtig
2019-06-23 17:12:50 ModbusRegister MR_MW21 RAW: 00c8
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window set_off
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window set_on
2019-06-23 17:12:50 FHT FHT_Dachgeschoss battery: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss batteryState: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss lowtemp: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss window: closed
2019-06-23 17:12:50 FHT FHT_Dachgeschoss windowsensor: ok
2019-06-23 17:12:50 FHT FHT_Dachgeschoss warnings: none
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window off
2019-06-23 17:12:50 ModbusCoil mbcFHT_Dachgeschoss_Window on
2019-06-23 17:12:50 ModbusRegister MD200 23.7999992370605

ChrisD

Hallo,

Das Problem kommt wahrscheinlich vom windowsensor, dieser passt auch auf das notify.

Wenn du im notify hinter window einen Doppelpunkt hinzufügst sollte es funktionieren:

define nFHT_Dachgeschoss_Window notify FHT_Dachgeschoss:window:.* { fhem "set mbcFHT_Dachgeschoss_Window ".($EVTPART1 eq "closed"?"off":"on")}

Grüße,

ChrisD

WagoAndreas


Hollo

Zitat von: Hollo am 17 August 2018, 09:09:00
DitoGetestet und für gut befunden; habe aktuell nur ein "Digital Out"-Modul dran, aber das funktioniert einwandfrei.
Digitale Eingänge und Analog-Module folgen in Kürze.
Da "in Kürze" schon bald 1 Jahr her ist  :-[ , wolte ich mal kurz ein Update geben.
Seit letztem Wochenende habe ich ein Analog-Eingangsmodul für RTD-Sensoren inkl. 3 PT100-Sensoren am Buskoppler in Betrieb.
Werte kommen korrekt in FHEM an und werden per Userreading (inkl. Anpassung Dezimalstelle und Einheit) an das passende Device gehängt.

Ich bin begeistert.  8)
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"