Neue Erkenntnis!
Nach beenden von TwinCat kann ich auch auf Index 0 zugreifen. Also schreiben geht prinzipiell. Nur nun kam ein neues Problem auf. Der Watchdog. Nach einer Sekunde schaltet der Watchdog wieder alle Ausgänge auf Off.
Ich habe auch einen Hinweis gefunden wie man ihn deaktiviert. Und zwar indem man in das Register 0x1120 eine 0 schreibt. Normalerweise steht in diesem Register die Watchdogzeit (1000ms). Ist diese auf 0, ist der Watchdog deaktiviert. Nur wie kann ich auf dieses Register zugreifen? Ich bräuchte ja einen Gruppen- und Offsetindex.
Gruß
O.
' schrieb:Neue Erkenntnis!
Nach beenden von TwinCat kann ich auch auf Index 0 zugreifen. Also schreiben geht prinzipiell. Nur nun kam ein neues Problem auf. Der Watchdog. Nach einer Sekunde schaltet der Watchdog wieder alle Ausgänge auf Off.
Ich habe auch einen Hinweis gefunden wie man ihn deaktiviert. Und zwar indem man in das Register 0x1120 eine 0 schreibt. Normalerweise steht in diesem Register die Watchdogzeit (1000ms). Ist diese auf 0, ist der Watchdog deaktiviert. Nur wie kann ich auf dieses Register zugreifen? Ich bräuchte ja einen Gruppen- und Offsetindex.
Gruß
O.
Lad dir das KS2000 Programm von Beckhoff herunter. da kannst du den Watchdog einstellen und mappings machen.
Am einfachsten geht eine Kommunikation mit dem BK9000 mit der Modbus Library. Einfach ethernet beispiel anpassen und läuft schon.
mfg blacky
' schrieb:Lad dir das KS2000 Programm von Beckhoff herunter. da kannst du den Watchdog einstellen und mappings machen.
Am einfachsten geht eine Kommunikation mit dem BK9000 mit der Modbus Library. Einfach ethernet beispiel anpassen und läuft schon.
mfg blacky
Hallo blacky
Danke für den Hinweis. Ich hätte da noch eine Frage. Läuft die Modbus Kommunikation auch über TwinCat? Reicht es da den NI Modbus zu installieren?
Gruß
O.
' schrieb:Hallo blacky
Danke für den Hinweis. Ich hätte da noch eine Frage. Läuft die Modbus Kommunikation auch über TwinCat? Reicht es da den NI Modbus zu installieren?
Gruß
O.
Es reicht die Modbus Library. Alle Beckhoff Koppler lassen sich auch ohne dieses Programm verwenden. Bei mir laufen zur Zeit 1 BK9000 und mehrere BK8100 direkt über LV gesteuert.
Alternativ könntest du auch noch die OcxAds.dll verwenden. Benötigt aber gewisse grundkenntnisse im Programmieren mit VB oder C#. Dazu gibt es genug Beispiele im Beckhoff Information System.
mfg blacky
' schrieb:Es reicht die Modbus Library. Alle Beckhoff Koppler lassen sich auch ohne dieses Programm verwenden. Bei mir laufen zur Zeit 1 BK9000 und mehrere BK8100 direkt über LV gesteuert.
Alternativ könntest du auch noch die OcxAds.dll verwenden. Benötigt aber gewisse grundkenntnisse im Programmieren mit VB oder C#. Dazu gibt es genug Beispiele im Beckhoff Information System.
mfg blacky
Morgen
Ich habe jetzt mal übers Wochenende etwas mit dem BK9000 und Modbus rungespielt. Leider habe ich nicht viel hinbekommen. Kannst du mir eine gute Doku nennen? Mit dem Beilspiel kann ich zwar die Inputs einlesen, aber die Outputs rühren sich überhaupt nicht. Hast du vielleicht ein ganz einfaches Beispiel?
Gruß
O.
Die Klemmen die du verwendest hab ich leider nicht am Lager.
Position 1: KL2134
Position 2: KL2134
Position 3: KL1418
Ich schau mal ob ich was ähnliches hab aber wahrscheinlich wirds nichts mit nem guten bsp für dich, da ich kaum zeit hab.
mfg blacky
' schrieb:Die Klemmen die du verwendest hab ich leider nicht am Lager.
Position 1: KL2134
Position 2: KL2134
Position 3: KL1418
Ich schau mal ob ich was ähnliches hab aber wahrscheinlich wirds nichts mit nem guten bsp für dich, da ich kaum zeit hab.
mfg blacky
Morgen
Es muss ja kein großes Beispiel sein. Ein prinzipielle Beispiel wie man die Outputs Anspricht würde schon genügen. Mit den Inputs klappt es ja schon

.
Gruß
O.
' schrieb:Neue Erkenntnis!
Nach beenden von TwinCat kann ich auch auf Index 0 zugreifen. Also schreiben geht prinzipiell. Nur nun kam ein neues Problem auf. Der Watchdog. Nach einer Sekunde schaltet der Watchdog wieder alle Ausgänge auf Off.
Ich habe auch einen Hinweis gefunden wie man ihn deaktiviert. Und zwar indem man in das Register 0x1120 eine 0 schreibt. Normalerweise steht in diesem Register die Watchdogzeit (1000ms). Ist diese auf 0, ist der Watchdog deaktiviert. Nur wie kann ich auf dieses Register zugreifen? Ich bräuchte ja einen Gruppen- und Offsetindex.
Gruß
O.
Hallo bin wieder zurück von der NI Week in Austin/Texas. War ziemlich interessant und Fun dazu!
Also die Daten ausser in 00 sahen ja gut aus. Und dass Du TwinCat parallel laufen hattest, hätte ich nie erraten aber da wird dann auch regelmässig ein Update gemacht und dass bewirkt wieder dass der Watchdog nicht aktiv wird. An sich ja eine ganz gute Sache.
Grundsätzlich wäre dann das regelmässige Updaten der IOs vom LabVIEW Programm natürlich auch eine gute Sache.
Habe mal geschaut. Also die AMS/ADS Watchdog Einstellung bei den Busklemmmen BK9000/9100 is in Register 14 in der Registertabelle 100. Die Registertabellen erreicht man durch das Ansprechen des ADS Ports 100 anstalle des ADS Ports 300 die man für das IO Abbild benötigt.
IndexGroup sollte dann 0 sein und IndexOffset sollte wahrscheinlich 100 * 65536 + 14 = 0x64000E sein (Tabellennummer 100 in Highword und Registernummer 14 in Loword). Die ensprechenden Informationen sind im Manual zum BK9000/9100 zu finden.
Rolf Kalbermatter
' schrieb:Hallo bin wieder zurück von der NI Week in Austin/Texas. War ziemlich interessant und Fun dazu!
Also die Daten ausser in 00 sahen ja gut aus. Und dass Du TwinCat parallel laufen hattest, hätte ich nie erraten aber da wird dann auch regelmässig ein Update gemacht und dass bewirkt wieder dass der Watchdog nicht aktiv wird. An sich ja eine ganz gute Sache.
Grundsätzlich wäre dann das regelmässige Updaten der IOs vom LabVIEW Programm natürlich auch eine gute Sache.
Habe mal geschaut. Also die AMS/ADS Watchdog Einstellung bei den Busklemmmen BK9000/9100 is in Register 14 in der Registertabelle 100. Die Registertabellen erreicht man durch das Ansprechen des ADS Ports 100 anstalle des ADS Ports 300 die man für das IO Abbild benötigt.
IndexGroup sollte dann 0 sein und IndexOffset sollte wahrscheinlich 100 * 65536 + 14 = 0x64000E sein (Tabellennummer 100 in Highword und Registernummer 14 in Loword). Die ensprechenden Informationen sind im Manual zum BK9000/9100 zu finden.
Rolf Kalbermatter
Hallo Rolf
Ich habe die IndexGroup 0 in der Doku gesucht, aber dort ist nur der Begriff "Reserviert" eingetragen. Von Beckhoff direkt habe ich die Auskunft, dass man über ADS
nicht auf diese Register zugreifen kann, sondern nur mittels z.B. TwinCat. Hast du es schon mal geschafft auf solch ein Register mittels deiner ADS LabVIEW Programme zuzugreifen?
Gruß
O.
' schrieb:Hallo Rolf
Ich habe die IndexGroup 0 in der Doku gesucht, aber dort ist nur der Begriff "Reserviert" eingetragen. Von Beckhoff direkt habe ich die Auskunft, dass man über ADS nicht auf diese Register zugreifen kann, sondern nur mittels z.B. TwinCat. Hast du es schon mal geschafft auf solch ein Register mittels deiner ADS LabVIEW Programme zuzugreifen?
Gruß
O.
Ich habe mal versucht Registerzugriffe zu machen aber das war für die Applikation die ich hatte nicht nötig und mangels Zeit habe ich keine weiteren Versuche gemacht. IndexGroup 0 ist im IO Bereich (AMS Port 300 tatsächlich nicht verfügbar) aber mit Port 100 sollte das schon gehen gemäss Doku. IndexGroup 1-64 ist dann jeweils für die Konfigurationsregister der einzelnen IO Klemmenmodule, aber was man da lesen bzw. schrieben kann habe ich noch nicht gefunden. Vielleicht steht das ja in der Doku zu der jeweiligen Klemme.
Den Port stellst Du bei den ADS VIs beim Parameter Port in den SubVIs ADS Read Packet.vi und ADS Write Packet.vi ein. Dieser ist zurzeit in ADS Read Bytes.vi und ADS Write Bytes.vi noch nicht nach aussen geführt.
Was die Leute von Beckhoff erzählen ist nicht immer die volle Wahrheit. Die meisten da wissen auch nicht alles was mit ihren Produkten kann.
Rolf Kalbermatter