Verbindung mit dem Facuc-Roboter-Controller wird aufgebaut

1. Über das Plugin

Das Fanuc-Roboter-Plugin erlaubt die Verbindung mit dem Fanuc-Roboter-Controller während der Simulation und des Datenaustausches. So kann z. B. ein Programm, das im virtuellen oder physischen Fanuc-Controller läuft, die Drehachsen des Fanuc-Roboters ansprechen, Daten aus den Sensoren auslesen und Datenausgänge setzen, um Produkte aufzunehmen oder abzustellen.

Das Plugin ist mit der Konnektivitäts-Funktion Visual Components Premium 4.9und kann sich mit einem oder mehreren Fanuc-Roboter-Controllern verbinden. Der vereinfachte Arbeitsablauf sieht folgendermaßen aus:

  1. Server hinzufügen
  2. Mit dem Server verbinden
  3. Variablen abbilden
  4. Simulation laufen lassen

2. Unterstützung von Lese- und Schreibbefehlen

Lese- und Schreibtabelle

Typ Lesen Schreiben Hinweise
Digitale und analoge Ein- und Ausgänge der Robotersteuerung

Ja

Ja  
Digitale Ein- und Ausgänge des Roboter-Arms Nein Nein  
Systemvariablen mit einfachen Datentypen (Boolesch, Ganzzahlig, Reell, Zeichenkette)

Ja

Ja

Der Variablenbereich ist eingeschränkt. Außerdem ist die Zeichenketten-Länge auf die maximale Länge einer Systemvariable beschränkt

Aktuelle Drehachsen-Werte einer jeglichen Motion Group

Ja

Nein  

 

Gepaarte Variablen Simulation zum Server:

 

Wenn digitale oder analoge Ein- und Ausgänge (IOs, Inputs and Outputs) gepaart werden, werden die IOs automatisch auf den Simulations-Modus, des Roboter-Controllers gesetzt.

  • Die Werte, die von der API geschrieben werden, werden daraufhin von den Roboter-Programmen verwendet
  • Ereignisbasierter Update-Modus wird empfohlen
  • Die IOs werden nicht automatisch auf ihren Urzustand vor der Simulation zurückgesetzt, deshalb muss sie der Benutzer vom Programmierhandgerät aus selber einstellen
  • Der Roboguide hat eine Benutzerschnittstelle, um die Einstellungen der IO-Werte einzustellen. Dies funktioniert zwar nicht mit IOs im Simulations-Modus, doch das Programmierhandgerät kann den Status der simulierten IOs anzeigen und setzen.

 

Gepaarte Variablen vom Server zur Simulation Server:

 

Nur zyklische Updates sind zugelassen. Wenn die Übertragung vom Server zur Simulation im ereignisbasierten Modus erfolgt, erhalten Sie die Konnektivitäts-Fehlermeldung im Ausgabe-Panel.

Das zyklische Lesen und Schreiben wird durch die „Scattered Access”-Funktion („verstreuter Zugang”) der FANUC API/PC DK optimiert.

  • Sie liest und schreibt automatisch möglichst viele Variablen mit einer einzigen Anfrage

 

Das Plugin verwendet einen Kommunikations-Thread pro Variablengruppe, um die Latenz zu verringern. Beachten Sie bitte, dass dieselbe Variable, wenn sie mit mehreren Variablen gepaart wird, mehrmals überschrieben oder sogar verloren gehen kann. Der Grund dafür liegt darin, dass Updates einander überlappen oder Änderungen durch ein anderes Updates annullieren können.

 

Die Kommunikationsgeschwindigkeit mit einem lokalen virtuellen Roboter-Controller (dem Fanuc Robot Server) ist recht effizient. Die Geschwindigkeit hängt jedoch von der Simulationsbelastung und dem Roboter-Controller ab.

3. Anforderungen

Die Anbindung erfordert, dass Visual Components Premium und die Software des Fanuc Robot Server auf derselben Maschine installiert werden. Sie haben folgende Optionen:

Option 1 - Visual Components Premium 4.9 Premium + Fanuc PC DK:

  • PC DK Option #A08B-9410-J535 (Fanuc Robot PC Developer’s Kit)
  • PC DK includes Fanuc Robot Server

 

Option 2 - Visual Components Premium 4.9 Premium + Fanuc Robot Server:

 

  • Robot Server Option # A08B-9410-J536 (Fanuc Robot PC Developer’s Kit Runtime Library)



  •  
  •  

Option 3 - Visual Components Premium 4.9 Premium + Fanuc :

  • Roboguide (A08B-9410-J688)
  • PC DK Option # A08B-9410-J535 (Fanuc Robot PC Developer's Kit) / Robot Server Option # A08B-9410-J536

 

Beachten Sie, dass der Fanuc-Roboter-Controller eine PC-Schnittstellen-Option erfordert, um die Verbindung mit dem Plugin zu unterstützen.

 

4. Einstellung

  1. Überprüfen Sie, dass Ihr Hostrechner den Anforderungen genügt.
  2. Greifen Sie auf den Fanuc-Controller zu.
    Das Plugin greift auf den Roboter-Controller zu, deshalb muss der virtuelle oder physische Roboter-Controller über eine direkte Netzwerkverbindung (IP-Adresse) oder über die Roboterumgebung erreichbar sein. So genügt es z. B., ein offenes Projekt im Fanuc-Roboguide mit einem laufenden virtuellen Roboter-Controller zu haben.
  3. Fügen Sie in Visual Components Premium 4.9einen neuen Server mit dem Plugin ein und verbinden Sie ihn mit dem Controller.
    Tipp: Wenn Sie einen in Roboguide laufenden virtuellen Roboter-Controller verwenden, dann hat dieser standardmäßig die IP-Adresse des Hostrechners von Roboguide.
  4. Abbilden der Variablen.
    Bilden Sie z. B. die VALUE-Eigenschaft eines Freiheitsgrades pro Drehachse der Roboter-Komponente auf die Drehachse des Controllers ab. Auf diese Weise steuert der Controller den Roboter in der 3D-Welt.
    Um Aktionen wie Greifen/Loslassen zu simulieren, bilden Sie die Ausgänge der Roboterkomponente für solche Aktionen auf die IO des Controllers ab, die Sie für diese Aktionen verwenden werden.
  5. Starten Sie die Simulation.
    Simulieren Sie den Beginn des Datenaustausches. Beachten Sie, dass im verbundenen Variablen-Panel die Spalte der Prepared Values (voreingestellte Werte) zum Festlegen von Testwerten verwendet werden kann.

5. Fehlerbehandlung

  • Wenn die Verbindung zum Controller abbricht, wird der Datenaustausch beendet. Das Plugin erwartet in diesem Fall, vom Controller ein Ereignis zu erhalten.
  • Sämtliche Ausnahmen während des Browsens der verbundenen Controller-Variablen (digitaler Eingang, digitaler Ausgang usw.) werden aufgefangen, in einer Fehler-Logdatei erfasst und ersatzweise durch Rückgabe einer leeren Menge von Baumknoten behandelt. Diese Ausnahmen haben zur Folge, dass keinerlei Variablen des Roboter-Controllers im Editor zur Erstellung der Variablen-Paare angezeigt werden.
  • Wenn die Verbindung zum Controller abgebrochen ist, verbinden Sie den Controller erneut.
  • Falls die Server-Struktur des verbundenen Controllers leer ist oder keine aktuellen Daten im Editor zur Erstellung der Variablen-Paare angezeigt werden, dann versuchen Sie, den Controller neu zu verbinden und die Server-Struktur erneut zu laden. Sollte dies nicht funktionieren, inaktivieren und aktivieren Sie die Variablen-Gruppe erneut.
  • Die System-Variablen werden stufenweise geladen entsprechend den Anfragen des Controllers.
  • Das Durchsuchen der gesamten System-Variablen-Struktur kann durchaus 5-10 Minuten dauern. Beachten Sie, dass es tausende von Systemvariablen gibt. Falls die Verbindung während des Browsens abbricht, schlägt die Suche auf jeder Stufe fehl, und zwar jedesmal, wenn Visual Components Premium 4.9 auf die leeren Unterknoten zuzugreifen versucht. Falls Sie versuchen, auf unsichtbare Unterknoten der bereits sichtbaren Knoten zuzugreifen, wird jedesmal eine Ausnahme in der Fehler-Logdatei erfasst. Dies kann z. B. zu hunderten erfasster Ausnahmen führen.
  • Sie erhalten keine gesonderte Fehlermeldung, falls beim Browsen Fehler erkannt wurden. Der Knotenbaum kann unvollständig sein, und die Fehler-Logdatei kann ein paar Ausnahmen enthalten. Beachten Sie, dass ein Verbindungsabbruch eine Fehlermeldung im Ausgabefenster erzeugt und dass keine anderen Fehler erwartet werden.