Beckhoff ADS

hando0815

Level-1
Beiträge
49
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich bin dabei, mir die ADS Kommunikation bei Beckhoff anzuschauen. Dazu habe ich mir ein Beispiel in JAVA aus der Beckhoff Infosys angeschaut und auch ausprobiert. Wenn das Beispiel auf dem gleichen System läuft, wie die TwinCAT Runtime, dann funktioniert es auch.
Mein Ziel ist es aber, von einem anderen Gerät im Netzwerk darauf zuzugreifen.
Konfiguration:
Laptop: TwinCAT Installation, aber RT läuft nicht
VM: laufendes TwinCAT Projekt (PLCVar = 5)
Ich kann beide Systeme untereinander anpingen.
Wenn ich mit dem Programm TcAdsTest (..\TwinCAT\AdsApi\TcAdsDll) aber die Route zur RT checke, bekomme ich Return Code 745 (timeout elapsed / Check ADS routes of sender and receiver and your firewall setting). In der VM habe ich bei den TwinCAT System Eigenschaften im Reiter AMS Router bei Remote Computers auch die Adresse des Laptops eingetragen.

Hat jemand eine Idee, was ich übersehe, oder falsch mache?

Gruß

Hando0815
 
Am einfachsten ist es, auf Deinem Laptop den Systemmanager zu starten un dort Zielsystem wählen, Broadcast suche durchführen.
Wenn dann die VM gefunden wird, eine Statische Route über die IP Adresse eintragen lassen.
Dann kannst Du den Systemmanager ohne Speichern wieder schließen.
Falls das alles geklappt hat, dann sind in beiden AMS Routern die richtigen Werte eingetragen und die Kommunikation sollte funktionieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für die schnelle Antwort, das werde ich mal ausprobieren.
Das Problem bei diesem Lösungsansatz ist aber, das ich am Ende da hin will, das ich aus einer Anwendung auf einem PC, auf dem keine TwinCAT Installation ist, auf die Runtime zugreifen will. Irgendwie muss das ja möglich sein.
 
Hallo hando0815!

Eine Kommunikation ohne den TwinCAT Router per ADS nicht möglich.
Die einfachste Variante hierzu, ist eine Minimalinstallation von TwinCAT zu verwenden.

Natürlich kann man sich auch einen eigenen Router programmieren und verzichtet dann auf eine Installation.
Das wird aber für die meisten Programmierer aufgrund des seher großen Aufwands nicht in Frage kommen.

Des Weiteren gibt der Ads Return Code noch eine weitere wichtige Information: Firewall Settings.
Minimal tcp/48898 sollte freigeben werden.

Gruß,
mac203
 
Oder du nimmst eine ADS-Kommunikationsbibliothek die nicht von Beckhoff ist. Dann benötigt es auch keinen ADS-Router oder irgendwelche Beckhoff Software auf dem Rechner.

Irgendwo hier gab es mal einen Thread, dass es ggf. reicht nur die entsprechenden Registry-Einträge zu tätigen damit die Beckhoff-dll funktioniert. Aber so wirklich zuverlässig war das imho auch nicht.

Ich finde das den größten Nachteil an dieser Beckhoff-dll, vor allem da es technisch gesehen überhaupt nicht notwendig ist, da alle Parameter auch an die dll hätten übergeben werden können.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Von der Verwendung der reinen DLL (oder gar Auslierfung der DLL als Bestandtei der eigenen Softwarel) ohne den TwinCAT Router wird dringend abgeraten.
Weil:
- schlechte bis keine Debugging-Möglichkeiten
- nur geringe Anzahl Connections
-->Sollte zufällig mal doch ein Stück Software von TwinCAT installiert werden, können Kommunikationsprobleme auftauchen.

Besser:
- Installation von "TwinCAT3 ADS" (auch bei TwinCAT2)
 
Danke erst einmal für die Antworten.
Ich werde einmal nach den Registry Einträgen suchen.
Meine Idee das ganze auf ein Android Gerät zu portieren kann ich dann wahrscheinlich direkt vergessen.

Gibt es vielleicht einen anderen Ansatz um zwischen einem Android Gerät und einer Beckhoff RT zu kommunizieren? Ich suche keine fertigen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank. Ich werde mal versuchen, ob ich so auf den richtigen Weg komme.
Weist du zufällig, wie es mit der Reaktionszeit dort aussieht? Ich habe mal eine WebVisu auf einem CX gehabt, die aber für eine Bedienung viel zu langsam war.

Hando0815
 
Die Reaktionszeit ist allein abhängig vom Anzeigegerät, d.h. von der dort vorhandenen CPU-Leistung.
Der Code und somit alle Befehle werden erst bei der Anzeig und Abruf ausgeführt.

Die WebVisu nutzt Jave (Java VM) und da liegt natürlich auch der Flaschenhals bei der Ausführung dieses Applets.

Beides ist jedoch nicht zu vergleichen. JavaScript unter HTML5 ist wesentlich schneller als die WebVisu.
 
Sehr gute Ergebnisse erreichst Du mit VNC. In diesem Falls müsstest Du die Visualisierung mittels Target Visu programmieren. Die HMI ist bei Beckhoff aber kostenpflichtig. Hat gegenüber der Java Applet Version den Vorteil, dass es auf dem Android Gerät recht flüssig läuft.
 
Zurück
Oben