Roboterprogrammierung einfach per G-Code (2024)

Autor / Redakteur: Matthias Rex und Nils Scholbrock / Dipl.-Ing. (FH) Reinhold Schäfer

Wie Maschinenbauer ihre CNC-Anwendung einfach um Roboter­kinematiken erweitern können, ohne eingehende Kenntnisse in der Roboterprogrammierung zu besitzen, zeigt dieser Beitrag. Ein Controller ermöglicht es, den Roboter einfach per G-Code zu programmieren.

Anbieter zum Thema

FAULHABER Antriebssysteme
Renishaw GmbH

Eckelmann Aktiengesellschaft

Wer möchte seine CNC-Maschinen nicht gerne von einem Roboter im 24/7-Betrieb be- und entladen lassen, um die Produktivität und damit die Rentabilität der Maschine zu steigern? Allein das Know-how, das man dazu in der Roboterprogrammierung aufbauen muss, schreckt viele kleine und mittelständische Maschinenbauer heute noch ab, solche Systeme zu implementieren.

Hinzu kommen weitere Kosten für eine separate Robotersteuerung und der größere Serviceaufwand, weil die Robotertechnik in der Regel von einem anderen Hersteller stammt als die vertraute CNC und Antriebstechnik. Darüber hinaus erfolgt die Bedie­nung des Roboters meist über ein zusätzliches Be­dien­gerät − es gibt also keinen „Single Point of Operation“ für Maschine und Roboter. Dies schränkt die Gebrauchsfähigkeit ein. Zusätzliche Funktionen sollten sich in den gewohnten Haupt-Workflow an der Maschine hom*ogen einfügen, um ihre Handhabung zu erleichtern und tatsächlich effizienter zu machen. Dies gilt für CNC-nahe Robotersysteme ebenso wie zum Beispiel für Machine-Vision-Lösungen oder andere, applikationsspezifische Peripheriegeräte.

Wie wäre es also, wenn man den Roboter wie die CNC einfach per G-Code beziehungsweise nach DIN 66025 programmieren könnte und sich alle Funktionen der Anwendung effizient über eine moderne CNC-Bedienoberfläche steuern ließen? Und wie wäre es, wenn die CNC auch Bewegungsachsen gemäß PLC-Open ansteuern könnte, um Motion- und CNC-Achsen hochpräzise zu synchronisieren, wie zum Beispiel zur dynamischen CNC-Bearbeitung von Werkstücken auf einem fahrenden Transportband?

Numerical Control Robots optimal integrieren

Mit dem Controller mit der Bezeichnung E°EXC von Eckelmann ist all dies möglich. Er macht aus einer Roboterkinematik einen „Numerical Control Robot“. Dieser Begriff der Japan Robot Association (Jara) für eine bestimmte Klasse von Robotern beschreibt die Lösung gut. Denn es geht darum, dass ein Roboter ähnlich wie eine NC-Maschine arbeitet, also nach einem vorgegebenen NC-Programm. Das heißt, der Maschinenbauer und Anwender kann in der vertrauten CNC/Motion-Welt arbeiten, ohne indes auf die Vorteile einer Roboterkinematik verzichten zu müssen. Die Programmierung erfolgt dabei im gewohnten kartesischen Koordinatensystem der CNC-Maschine (X, Y, Z ), das heißt ohne komplizierte achsspezifische Koordinaten für die Roboterkinematik oder Werkzeugkoordinaten. Für den Maschinenbauer und Anwender bedeutet dies folglich, dass er sich keine Gedanken über Grenzbereiche einzelner Achsen oder Singularitäten machen muss.

Die Aufgaben für einen Roboter im Umfeld einer CNC-Anwendung sind dabei vielfältig und reichen von Pick-and-place-Aufgaben über Verpackungsanwendungen in vollautomatisierten Fertigungslinien bis hin zu On-the-Flight-Vermessungsaufgaben mit integrierten Bildverarbeitungssystemen. Auch für mehrere CNC-Bearbeitungsschritte in einer Aufspannung können Roboterkinematiken eine interessante Option darstellen.

Robotik und etablierte Techniken der Maschinenautomation wie CNC und Motion Control wachsen so zu hybriden Systemlösungen zusammen. Der Weg von Eckelmann und Rex Automatisierungstechnik besteht darin, Robotik- und Motion-Control-Aufgaben im Umfeld von CNC-Anwendungen ganzheitlich und flexibel mit einem einzigen Steuerungssystem zu lösen. Der Maschinenbauer kann so mit wenig Aufwand in die Roboterisierung seiner CNC-Maschinen einsteigen, ohne eigenes Know-how in der Roboterprogrammierung aufbauen zu müssen.

Mit dem vorgestellten Controller lassen sich nämlich CNC, Roboter- und Bewegungssteuerung in Echtzeit und flexibel überlagert steuern. Dabei beschreibt die CNC die Bewegungsbahn (Trajektorie) der Roboterkinematik. Roboter lassen sich somit im gleichen kartesischen Koordinatensystem einfach über die CNC-Bedienoberfläche programmieren, bedienen und überwachen. Gängige Delta-, Scara- oder 6-Achs-Knickarm-Roboter können so mit geringem Aufwand in die CNC-Anwendung integriert werden – und zwar ohne Kenntnisse in der Roboterprogrammierung und spezielle Robotersprachen.

Kinematische Transformationen für Roboter

Die Übersetzung beziehungsweise Transformationen in Roboterkoordinaten übernimmt der NC-Kern von Eckelmann. Anwender können ihre CNC-Roboter-Hybridmaschine also – ganz ohne Kenntnisse in der Roboterprogrammierung – weiter wie gewohnt mit G-Code beziehungsweise nach DIN 66025 programmieren und dem vertrauten CAD/CAM-CNC-Workflow folgen. Klassische CNC-Features wie die Werkzeuglängen- und Radiuskorrektur oder technikspezifische Kompensationen werden von Roboterkinematiken selbstverständlich auch umgesetzt. Dies macht ein zeitintensives Teach-in des Roboters und Lernen einer Roboterprogrammiersprache überflüssig.

Der Controller kann dabei bis zu 32 CNC- und/oder Roboterachsen ansteuern. Mit der Multiachssteuerung können bis zu 64 Motion-Achsen betrieben und überwacht werden. Über PLC-Open-Funktionsbausteine lassen sich selbst komplexe Bewegungsfunktionen gemäß IEC 61131 einfach programmieren. CNC- und Motion-Achsen können dabei beliebig kombiniert werden und sich sogar zur Laufzeit beliebig überlagern. Die Bearbeitung eines Werkstücks auf einem fahrenden Transportband ist ein Beispiel dafür, wobei das Transportsystem dort zeitweise als CNC-Achse fungiert.

Auf der SPS IPC Drives 2017 zeigte Eckelmann eine prototypische Demo (letztes Bild). Sie führte in einer spielerischen Anwendung mit Pick-and-place und Bildverarbeitung anschaulich vor, welche Einsatzszenarien es für integrierte Roboterkinematiken in CNC-Maschinen gibt. Rex Automatisierungstechnik hat den Demonstrator realisiert, mit Steuerungs- und Antriebstechnik, PC-Technik, Kamerasystem und Schaltschrank aus der Eckelmann-Gruppe.

Roboterisierung hat längst begonnen

Die prototypische Anwendung mit einem Scara-Roboter stieß auf der Automatisierungsmesse auf großes Interesse bei den Fachbesuchern, denn mit den Controllern E°EXC 88 lassen sich Roboterkinematiken, einfach per G-Code programmieren und so in die CNC-Anwendung integrieren. Der Maschinenbauer benötigt somit weder Robotikkenntnisse noch muss er sich mit meist herstellerspezifischen Robotersprachen vertraut machen, denn die Steuerung beherrscht die Transformationen.

Die Roboterisierung der CNC-Fertigung hat längst begonnen. Sie macht CNC-Maschinen und Fertigungslinien produktiver und rentabler. Eckelmann und Rex Automatisierungstechnik haben gezeigt, wie sich Roboter zum Beispiel für das Be- und Entladen von CNC-Maschinen einfach und ohne Systembrüche in die CNC-Automatisierung und eine ganzheitliche Bedienung integrieren lassen. Und das ist nur ein Beispiel für die vielfältigen Möglichkeiten von Robotern an CNC-Maschinen.

* Matthias Rex ist Geschäftsführer der Rex Automatisierungstechnik in 99098 Erfurt, Nils Scholbrock ist Vertriebsingenieur bei der Eckelmann AG in 65205 Wiesbaden,

(ID:45145926)

Roboterprogrammierung einfach per G-Code (2024)

FAQs

What is G-code for robots? ›

The Robot G-code feature allows CNC operators to control a FANUC robot through the CNC. Even operators with little to no experience with FANUC robotic systems can create a robot program from the CNC using G-code. The Robot G-code feature is available on FANUC CNC Series Oi-F, Oi-F Plus, 30i-B and 30i-B Plus.

What is the meaning of G-code? ›

Simply put, G-code is a software programming language used to control a CNC machine. And, even with complex CNC machining, G-code is written in a straightforward, logical way. A “G” is followed by a number, which is a command to change geometry. For instance, “G00” is a command for rapid movement.

What is the meaning of G0 in G-code? ›

G0 (G zero) tells the machine to move as quickly as possible to a given point (absolute or relative, depending on the setting of G90 or 91). This command is modal, so any coordinates that follow will be rapid as well (until a Group 01 code is called). As with all G codes, it specifies only the destination point.

Is G-code still used? ›

The birth of G-Code

This is possibly the oldest programming language that is still used today, it was designed to do statistical and mathematical calculations.

What machines use G-code? ›

G-code is a type of CNC programming language used for controlling the functions of a CNC machine that relate to the movement of the cutting tool. It stands for 'Geometric code'. G-code consists of instructions that the microcontroller in the CNC machine can read and interpret.

What does G mean code? ›

G-code is a programming language for CNC (Computer Numerical Control) machines. G-code stands for “Geometric Code”. We use this language to tell a machine what to do or how to do something. The G-code commands instruct the machine where to move, how fast to move and what path to follow.

What are the 3 basic G codes? ›

The three basic G-codes are G00. G01, and G02/G03. G00 instructs rapid movement of the machine tool at the required coordinate system. G01 provides instructions for the linear feed move.

What do G codes identify? ›

G-codes are used to report a beneficiary's functional limitation being treated and note whether the report is on the beneficiary's current status, projected goal status, or discharge status. There are 42 functional G-codes that are comprised of 14 functional code sets with three types of codes in each set.

What is G-code go1? ›

This G code provides for straight line (linear) motion from point to point. Motion can occur in 1 or more axes. You can command a G01 with 3 or more axes All axes will start and finish motion at the same time. The speed of all axes is controlled so that the feed rate specified is achieved along the actual path.

What does Z mean in G-code? ›

For example, the functions of the following letters in G code include: N: The N value gives the line number. G: The G number tells when the tool to move and stop. X, Y, Z: These values indicate the position of the tool in three dimensions — X for horizontal, Y for vertical and Z for depth.

What does G3 mean in G-code? ›

A circular or helical arc is specified using either G2 (clockwise arc) or G3 (counterclockwise arc). The axis of the circle or helix must be parallel to the X, Y, or Z-axis of the machine coordinate system.

What is the code for robotics? ›

Programming languages

The most popular language in robotics is probably C/C++ (C++ is an object-oriented successor to the C language).

What are the three codes of robotics? ›

A robot may not injure a human being or, through inaction, allow a human being to come to harm. A robot must obey orders given it by human beings except where such orders would conflict with the First Law. A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.

What is used to code robots? ›

C, C++ and Python are all popular programming languages used across the robotics industry, from the AI functionality behind a humanoid robot to the motor function of a robotic arm — the signature of industrial robots.

What is the G-code to home machine? ›

The Origin point for the machine coordinate system is called Machine Home. The code for Machine Home is G28. This is the position of the center-face of the machine spindle when the Z-axis is fully retracted and the table is moved to its limits near the back-left corner.

References

Top Articles
Latest Posts
Article information

Author: Kareem Mueller DO

Last Updated:

Views: 6467

Rating: 4.6 / 5 (66 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Kareem Mueller DO

Birthday: 1997-01-04

Address: Apt. 156 12935 Runolfsdottir Mission, Greenfort, MN 74384-6749

Phone: +16704982844747

Job: Corporate Administration Planner

Hobby: Mountain biking, Jewelry making, Stone skipping, Lacemaking, Knife making, Scrapbooking, Letterboxing

Introduction: My name is Kareem Mueller DO, I am a vivacious, super, thoughtful, excited, handsome, beautiful, combative person who loves writing and wants to share my knowledge and understanding with you.