Dynamische Programmierung von Roboterbahnen bei Fanuc mit Pythonn
Projektbeschreibung:
Bei hochdynamischen Prozessen möchte man einen Roboter während der Laufzeit an wechselnde
Positionen schicken können.
Dies steht im Gegensatz zur herkömmlichen Roboterprogrammierung, die statische,
vorab eingelernten Positionen verwendet.
Lösungen:
-
FANUC Remote Motion Interface (R912)
Diese kostenpflichtige Fanuc-Option dürfte die modernste Lösung sein und ermöglicht die
vollständige Fernsteuerung des Roboters über ein externes Netzwerkgerät wie einen PC.
Dazu werden JSON-ähnliche Textnachrichten über TCP/IP an die Robotersteuerung gesendet.
Es können mehrere Bewegungsbefehle an die Steuerung gesendet werden, die dann gepuffert werden.
Das FANUC-Handbuch B-84184EN/01 beschreibt detailliert die verfügbaren Nachrichten, wobei
zwischen Kommunikations-, Befehls- und Anweisungspaketen unterschieden wird.
- FANUC SNPX Protokol
Fanuc-Roboter sind in der Regel mit der SNPX-Option ausgestattet.
Diese Schnittstelle ermöglicht Ihnen Folgendes:
- Schreiben und Lesen von Ein- und Ausgängen
- Schreiben und Lesen von Registern
- ...
SNPX kann als eine old school, aber nach wie vor gültige Methode zur dynamischen Positionierung
angesehen werden.
Details finden Sie im FANUC-Handbuch MARUCHMID06121E REV B, und ein Programmierbeispiel kann
unten heruntergeladen werden.
-
Dynamische Programmerstellung
Der wahrscheinlich am wenigsten professionelle, aber dennoch mögliche Weg wäre, ein TP-Programm
dynamisch als Textdatei (mit der Erweiterung .ls) zu generieren, es mit dem mit Roboguide
installierten Befehl maketp zu einer TP-Datei zu kompilieren und die TP-Datei dann per FTP
auf den Roboter zu übertragen, bevor das Programm über die PNS- oder RSR-Eingänge gestartet wird.
-
R-50iA Controller
Fanuc hat eine neue Steuerung mit integriertem Python-Interpreter angekündigt. Es ist noch nicht klar,
was genau von dieser Funktion zu erwarten ist, aber sie könnte auch neue Lösungen für dieses Thema bieten.
Download:
Download: SNPX Anleitung (Englisch)