Ein Roboterarm (Adept Viper S850) soll ein konvexes 3D-Modell mittels Styroporschneidewerkzeug aus einem Styroporblock ausschneiden. Außerdem soll ein weiterer Roboterarm genutzt werden, um den Styroporblock in Position zu halten und gegebenenfalls zu drehen. Für die Kalibrierung der Roboter wird ein Polaris Trackingsystem genutzt:
Die Roboter müssen untereinander kalibriert werden, damit wir wissen, wo sie sich relativ zueinander befinden.
Wir nutzen zur Kalibrierung der Roboter den QR24-Algorithmus aus folgendem Paper von Prof. Ernst:
Non-orthogonal tool/flange and robot/world calibration
In unserem separaten Programm QR24-Calibration ist der QR24-Kalibrierungs-Algorithmus noch einmal separat implementiert. Mit dem Programm kann man einen Satz an gemessenen Daten/Matrizen aus zwei Dateien einlesen und anhand dieser Daten die Kalibrierungsmatrizen berechnen und ausgeben lassen.
- In Eclipse mittels "Import existing Project into workspace" importieren.
- Rechtsklick auf das Projekt -> Properties
- Unter "Java Build Path" auf Source klicken
- "StyroCutRobot/src auswählen und rechts auf edit klicken.
- Im Dialogfenster auf "Finish" klicken, danach "Apply and Close"
- Main.java als Java Applikation starten
- Herunterladen der aktuellen Version (momentan 3.6.1) von Apache Commons Math
- Die Datei in einem beliebigen Ordner entpacken
- In Eclipse Rechtsklick auf das Projekt -> Properties
- Unter "Java Build Path" auf Libraries klicken
- "Modulepath" auswählen und rechts auf "Add External JARs" klicken.
- commons-math3-xxx.jar auswählen, wobei xxx die Versionsnummer ist, und auf "Apply and Close" klicken
- Eventuell im Package Explorer F5 für einen Refresh drücken, damit alles nochmal neu geladen wird
Dieses Programm funktioniert auch mit der eigens entwickelten Simulationsumgebung StyroCutRobot Simulator, die benutzt werden kann, falls kein Roboter und Trackingsystem in Reichweite ist oder wenn man einfach mal ein wenig mit dem Programm rumspielen möchte. Die Simulationsumgebung basiert auf JavaScript mit der p5.js Library und Node.js. Sie wird dementsprechend im Browser ausgeführt.