ich habe bislang noch nie eine Komunikation zwischen 2 Controllern machen müssen, daher bräuchte ich ein wenig Hilfe!
Ich habe einen Wago 849 Controller mit einer KNX TP1 Klemme und einen 881 Controller. Ich würde jetzt gern die Wetterdaten, die ich via KNX in den 849 empfange an die anderen Controller weiter leiten, zur weiteren Verarbeitung. Also es sollen noch mehr Controller werden die untereinander komunizieren sollen.
Wie stelle ich dies nun am besten an? Die Wetterdaten (Temperatur/Feuchte) sind ja nun reine Variablen (REAL), welche ich ja nun so deklarieren muss, das ich sie verschicken, bzw ab fragen kann.
Muss der 849 Master oder Slave werden, oder ist das egal?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo silentbull,
auf der Wago HP ist die Querkommunikation via Modbus TCP sehr gut beschrieben.
Nur auf einem Controller wird der Masterbaustein eingebunden.
Am besten auf beiden PLC ARRAY's anlegen,so hat man eine besseren Überblick was via Modbus geschrieben/gelesen wird.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ja, ich habe jetz den Baustein mit der freundlichen Hilfe des Wago Supports ein gerichtet und werde dann Montag mir zwei Array Kapitel an legen, jeweils für die ein gehenden und ausgehenden Zuordnunngen, sonst denke ich hast du recht, dass es mit jeweils 98 Adress-Zuordnungen ein wenig un übersichtlich werden kann. Anschliessend werd ich dann mal Testen wie es so läuft.
Die erweiterung muss dann sein dem Baustein bei zu bringen, dass er nicht nur mit einem Slave sprechen muss sondern mit einigen weiteren und auch mit 5 B&R Steuerungen, sowie einer S7. Na da hab ich glaub ich noch ein paar Tage Arbeit vor mir!!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
So also, der Baustein Modbusmaster_TCP funktioniert und sendet schön fleissig. Wie bringe ich Ihm jetzt am einfachsten bei, dass er die Informationen an mehrere IP Adressen versenden soll? Hab da schon mehrer Variationen aus beispielprogrammen aus probiert, aber entweder Meckert er über irgend welche dinge die er nich kennt, oder Zuordnungen die nicht fluppen oder oder oder.....
Also als Bibliotheken verwende ich zur Zeit die ModbusEthernet.lib4. Ethernetlib.
Geht das einfach in FUP mit meinetwegen einer art Slavelist in ST oder wie ?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
also die Komunikation zwischen zwei verschiedenen Wago Controllern klappt jetzt ein wand frei. Nun habe ich von meinem Bekannten seine Liste von Modbusadressen bekommen, die ich von der B&R bekommen kann. Mein Problem ist nun noch, wo finde ich eine Adresszuordnungstabelle, mit der ich herausfindenkann, wo er z.B. die Adresse 0x0026 oder 0x002E oder so hin schreibt? Ich muss ja nun den Empfangenen wert irgendwie mit z.B. AT%IW290 oder so einer Variable zu ordnen, damit ich es einem Baustein zu ordnen kann, oder in der Visu an zeigen oder den Wert halt auch verändern kann?
Aber wo finde ich solch eine Tabelle in der die Modbusadressen den %IW, %QW oder %MW zu geordnet sind??
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
lt. B&R HB ist dies das 38. AnalogInput Word zum lesen, mit den möglichen Modbus-Funktionen 3,4,23
0x002E ist das 46.Word usw.
z.B.: der Wago- Controller als Master liest mit der Funtion 3 (Read multiple registers), ReadAdress: WORD := 16#0026
aus dem B&R Controller.
Die Werte werden dann in dem Rec_Buffer abgelegt.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Mahlzeit,
ich habe bislang noch nie eine Komunikation zwischen 2 Controllern machen müssen, daher bräuchte ich ein wenig Hilfe!
Ich habe einen Wago 849 Controller mit einer KNX TP1 Klemme und einen 881 Controller. Ich würde jetzt gern die Wetterdaten, die ich via KNX in den 849 empfange an die anderen Controller weiter leiten, zur weiteren Verarbeitung. Also es sollen noch mehr Controller werden die untereinander komunizieren sollen.
Wie stelle ich dies nun am besten an? Die Wetterdaten (Temperatur/Feuchte) sind ja nun reine Variablen (REAL), welche ich ja nun so deklarieren muss, das ich sie verschicken, bzw ab fragen kann.
Muss der 849 Master oder Slave werden, oder ist das egal?
Hallo silentbull,
auf der Wago HP ist die Querkommunikation via Modbus TCP sehr gut beschrieben.
Nur auf einem Controller wird der Masterbaustein eingebunden.
Am besten auf beiden PLC ARRAY's anlegen,so hat man eine besseren Überblick was via Modbus geschrieben/gelesen wird.
Ja, ich habe jetz den Baustein mit der freundlichen Hilfe des Wago Supports ein gerichtet und werde dann Montag mir zwei Array Kapitel an legen, jeweils für die ein gehenden und ausgehenden Zuordnunngen, sonst denke ich hast du recht, dass es mit jeweils 98 Adress-Zuordnungen ein wenig un übersichtlich werden kann. Anschliessend werd ich dann mal Testen wie es so läuft.
Die erweiterung muss dann sein dem Baustein bei zu bringen, dass er nicht nur mit einem Slave sprechen muss sondern mit einigen weiteren und auch mit 5 B&R Steuerungen, sowie einer S7. Na da hab ich glaub ich noch ein paar Tage Arbeit vor mir!!
So also, der Baustein Modbusmaster_TCP funktioniert und sendet schön fleissig. Wie bringe ich Ihm jetzt am einfachsten bei, dass er die Informationen an mehrere IP Adressen versenden soll? Hab da schon mehrer Variationen aus beispielprogrammen aus probiert, aber entweder Meckert er über irgend welche dinge die er nich kennt, oder Zuordnungen die nicht fluppen oder oder oder.....
Also als Bibliotheken verwende ich zur Zeit die ModbusEthernet.lib4. Ethernetlib.
Geht das einfach in FUP mit meinetwegen einer art Slavelist in ST oder wie ?
Hallo silentbull,
vielleicht hilft dir "Broadcast" ab Kapitel 12
http://www.ipsta.de/seiten_html/wissenswertes_frei.html
Oder einfach für jedes Slave ein Masterbaustein aufrufen.
MfG
Können die beiden Controller keine Netzwerkvariablen? Das wäre eine einfache und schnelle Version um die Daten auszutauschen.
Grüße
Marcel
Hallo Matze001,
die Wago Controller können Netzwerkvariablen.
Nur wollte silentbull via Modbus TCP auch B&R & Siemens CPU als Slaves ansprechen.
Hi Leute,
also die Komunikation zwischen zwei verschiedenen Wago Controllern klappt jetzt ein wand frei. Nun habe ich von meinem Bekannten seine Liste von Modbusadressen bekommen, die ich von der B&R bekommen kann. Mein Problem ist nun noch, wo finde ich eine Adresszuordnungstabelle, mit der ich herausfindenkann, wo er z.B. die Adresse 0x0026 oder 0x002E oder so hin schreibt? Ich muss ja nun den Empfangenen wert irgendwie mit z.B. AT%IW290 oder so einer Variable zu ordnen, damit ich es einem Baustein zu ordnen kann, oder in der Visu an zeigen oder den Wert halt auch verändern kann?
Aber wo finde ich solch eine Tabelle in der die Modbusadressen den %IW, %QW oder %MW zu geordnet sind??
Hi silentbull,
Die Modbusadressen sind im Prozessabild eingetragen, diese sind in den Handbüchern der jeweiligen Herstellern einzusehen, z.B. Wago: http://www.wago.com/wagoweb/documentati ... 84100d.pdf
MfG
...0x0026 ist in hexadezimaler Darstellung.
http://www.br-automation.com/downloads_ ... MB-GER.pdf
lt. B&R HB ist dies das 38. AnalogInput Word zum lesen, mit den möglichen Modbus-Funktionen 3,4,23
0x002E ist das 46.Word usw.
z.B.: der Wago- Controller als Master liest mit der Funtion 3 (Read multiple registers), ReadAdress: WORD := 16#0026
aus dem B&R Controller.
Die Werte werden dann in dem Rec_Buffer abgelegt.