INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Modbus TCP



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

17.05.2005, 10:37
Beitrag #1

bastimeister Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Apr 2005



kA



Modbus TCP
Ich möchte über Modbus TCP, mit einem Beckhoff-Buskoppler BK9000 kommunizieren. Auserdem sind an diesen noch weitere Bussklemmen wie
1x Analog-IN (8Kanäle), 1x Digital-IN (8Kanäle) sowie 1x Digital-OUT (8Kanäle) angeklemmt.
Ich habe auch beim googeln einen passenden Link zum downloaden einer bereits vorhandenen Lib von ni.com gefunden:

http://sine.ni.com/apps/we/niepd_web_displ...0340003BA7CCD71

Mein Problem ist nun, das der Buskoppler einen Watchdog besitzt. Dieser schaltet scharf sobald das erste Schreibtelegramm hingeschickt wird! Das Programm läuft auch bei mir hab es dem Buskoppler angepasst. Aber sobald ich es stoppe der Timeout des Watchdogs vergeht und ich das vi dann wieder starten will, ist die TCP Verbindung weg und ich müsste den Watchdog reseten, aber genau das ist das Problem!

In der Doku vom BK9000 steht folgendes:
Zitat:Watchdog
Der Watchdog ist im Auslieferungszustand aktiviert. Nach dem ersten Schreibtelegramm wird der Watchdog scharf geschaltet und bei jedem empfangenden Telegramm dieses Teilnehmers getriggert. Andere Teilnehmer haben auf den Watchdog keinen Einfluss. Eine zweite Möglichkeit, die eine schärfere Bedingung des Watchdogs darstellt, ist, dass der Watchdog nur nach jedem Schreibtelegramm getriggert wird. Dafür Schreiben Sie in das Register 0x1122 eine Null (Default "1").
Der Watchdog kann deaktiviert werden in dem im Offset 0x1120 eine Null geschrieben wird. Das Watchdog Register darf nur dann beschrieben werden, wenn der Watchdog noch nicht aktiv ist. Die Daten in diesem Register bleiben gespeichert.

Watchdog-Register
Sollte der Watchdog auf Ihren Slave abgelaufen sein können sie diesen durch ein zweimaliges beschreiben des Registers 0x1121 zurücksetzen. Dazu muss folgendes in das Register geschrieben werden: 0xBECF 0xAFFE. Dies kann mit der Funktion 6 oder der Funktion 16 geschehen.

Meine Frage an euch wie kann ich über Modbus in dieses spezielle Register schreiben??? Wie ist das möglich ich hab probiert und probiert aber ich bekomme es ohne Hilfe nicht hin und die vom Beckhoff-Suport können mir auch nur das sagen was in der Doku steht. Deshalb wende ich mich an euch, da das ja wohl ein reines LabVIEW- programmierproblem darstellt, wobei ihr mir doch sicher weiterhelfen könnt??

Das Modbustool kann frei runtergeladen werden, da ich auch nix anderse verwende zur komunikation sollte diese Library sammt SubVIs erstmal zum Anschauen reichen und vieleicht habt ihr eine Idee wie ich dieses Spezielle Register auf dem Buskoppler ansrechen kann...

Bin noch kein so erfahrener LabVIEW-Programmierer und würde mich freuen wenn ihr mir helfen könntet :-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.05.2005, 13:51
Beitrag #2

bastimeister Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Apr 2005



kA



Modbus TCP
Also Leute ich hab selber mal was gefunden!
Einfach so hier einstellen dann funtz es auch:
Function Code: 16
Starting Adress: 0x1121
Quantity: 1

Es muss 2x auf dieses Register geschrieben werden also nehmen wir eine "Stacked Sequence Structure"
Beim ersten Schreiben wird als Data 0xBECF un beim zweiten Schreiben wird als Data 0xAFFE reingegeben!

Das ganze kommt in die TRUE-Case einer Case-Structure die überprüft ob der Errocode 6002 bzw. 6004 ist! Ist es keiner von beiden wird die Rücksetzung des Watchdogs garnicht ausgeführt!

So das war die Lösung für das Problem! Hätt ich garnicht gedacht das ich die noch selber finde!Big Grin

Bin noch kein so erfahrener LabVIEW-Programmierer und würde mich freuen wenn ihr mir helfen könntet :-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.05.2005, 13:55
Beitrag #3

bastimeister Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Apr 2005



kA



Modbus TCP
Achja hier mal ein Link zu einem Hilfreichen PDF:

http://www.modbus.org/modbus/standmbusLibr...tocol_V1_1a.pdf

Also dann viel Spaß damit!

Bin noch kein so erfahrener LabVIEW-Programmierer und würde mich freuen wenn ihr mir helfen könntet :-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: