Hallo,
ich habe bei uns im Haus das Bussystem Dupline der Fa. Doepke (ich weiß das kennt keiner… höre ich öfter). Es funktioniert alles bestens und ist auch gar nicht „so“ teuer. Nur leider gibt es seit fas 3 Jahren keine Weiterentwicklung im Bereich der Visualisierung. Der Webserver benötigt Java - und das iPhone kann kein Java.
So nun zum technischen:
Programmiert wird die Anlage über eine Software (ProLineNG). Die Aktoren und Schalter haben die Adressen A1-8 bis P1-8. Es handelt sich hier um das Zentralgerät DKG 20.
Wie ich herausgefunden habe, ist das Protokoll für die erhältlichen Touchscreens auf dem 2ten ComPort Modbus RTU.
Es gibt auch einen DDE Server der dann mit Excel zusammenarbeitet.
Der Wert für Digital A1 wäre: =DlDdeSrv|Digital!‚1:A1‘
für Analink L1: =DlDdeSrv|Analink!‚1:L1‘ (nur als Beispiel)
Da IP-Symcon Modbus kann, dachte ich fang einfach mal an, aber nach 2 schlaflosen Nächten… hoffe ich hier etwas Hilfe zu finden.
Nachfolgend mal einige Mitschnitte vom ComPort (gekürzt - ausführlicher in angehängert txt.
Um nicht zu viele Werte zu haben, habe ich in der Visualisierungssoftware smart-house nur den Wert B2 (Licht Schlafzimmer) eingefügt.
Daraufhin habe ich mit portmon folgendes ausgelesen:
javaw.exe IRP_MJ_WRITE VCP0 SUCCESS Length 8: 01 03 00 10 00 08 45 C9
javaw.exe IRP_MJ_READ VCP0 SUCCESS Length 21: 01 03 10 00 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 D8 65
javaw.exe IRP_MJ_READ VCP0 SUCCESS Length 6: 00 00 00 00 19 9A
usw.
Daraufhin habe ich IPS ein Modbus Device angelegt das als übergeordnete Instanz den SerialPort hat.
Hier der Auszug aus dem Debug:
09.12.2010 07:05:06.00 | TRANSMITTED | 01 03 00 01 00 01 D5 CA
09.12.2010 07:05:06.00 | RECEIVED | 01 03 02 00 00 B8 44
09.12.2010 07:05:07.00 | TRANSMITTED | 01 03 00 01 00 01 D5 CA
09.12.2010 07:05:07.00 | RECEIVED | 01 03 02 00 00 B8 44
09.12.2010 07:05:07.00 | TRANSMITTED | 01 03 00 30 00 02 C4 04
09.12.2010 07:05:12.00 | TRANSMITTED | 01 03 00 30 00 02 C4 04
09.12.2010 07:05:17.00 | TRANSMITTED | 01 03 00 30 00 02 C4 04
09.12.2010 07:05:22.00 | TRANSMITTED | 01 03 00 30 00 02 C4 04
09.12.2010 07:05:27.00 | TRANSMITTED | 01 03 00 30 00 02 C4 04
09.12.2010 07:05:32.00 | TRANSMITTED | 01 03 00 30 00 02 C4 04
09.12.2010 07:05:37.00 | TRANSMITTED | 01 03 00 01 00 01 D5 CA
09.12.2010 07:05:37.00 | RECEIVED | 01 03 02 00
09.12.2010 07:05:37.00 | RECEIVED | 00 B8 44
und analog dazu aus portmon:
0 0.00000000 ips.exe IRP_MJ_WRITE VCP0 Length 8: 01 03 00 30 00 02 C4 04
0 0.00094653 SUCCESS
1 0.00000000 ips.exe IRP_MJ_WRITE VCP0 Length 8: 01 03 00 01 00 01 D5 CA
1 0.00027578 SUCCESS
2 0.00000000 ips.exe IOCTL_SERIAL_GET_COMMSTATUS VCP0
Fazit: Das sieht für mich so aus, als wenn die Kommunikation Ok ist, nur die Angesprochenen Adressen noch falsch sind.
Und da kommt glaube ich mein Problem - ich habe keine Ahnung welchen Wert ich für A1 oder B2 usw. eingeben soll.
Sämtliche Versuche hex in dez umzurechnen und diese Zahl zu benutzen schlugen bis jetzt fehl.
Es wäre total nett, wenn einer der sich gut mit Modbus auskennt mir hier etwas weiterhelfen könnte.
Ich kann mir gar nicht vorstellen, das Dupline so eine Insellösung ist, da z. B. der Hamburger Yachthafen auch so etwas hat und die Geräte von CarloGavazzi sehen von From (bis auf Farbe) und Beschreibung genauso aus und ein Stromzähler dieser Fa. wird von IPS doch auch schon unterstützt.
Vielleicht finden sich durch diesen Beitrag noch mehr Benutzer von Dupline und es wird vielleicht in IPS integriert oder wir können gemeinsam etwas erstellen.
Gruß comdi
Dokument1.txt (20.6 KB)