Roboter-OS mit FORTH

Ähnliche Dokumente
Embedded Linux Automatisierung für die Zukunft

Offen für Alle(s) PRESSEMITTEILUNG. Bayreuth, 09. Oktober Stäubli Roboter über SPS oder LabVIEW programmieren

Ausbildungsunterlage für die durchgängige Automatisierungslösung Totally Integrated Automation (T I A) MODUL A1 Totally Integrated Automation (T I A)

VECTOSTUDIO. Die IDE(E) für Sie! schneller umsetzen, produktiver arbeiten! Die effiziente Software VECTOSTUDIO VECTOSTUDIO

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7

Embedded Linux Offene Automation für die Zukunft

RTnet Open Source Realtime Ethernet

On the way to Industrie 4.0 Digitalization in Machine Tool Manufacturing

Grundlagen der Automatisierungstechnik. (Automatisierungstechnik 1) 5. Echtzeit

Speicherprogrammierbare Steuerungen

Open Source SPS. Alptraum oder Schöne IoT Welt. Technologie - Tag

Echtzeit mit Linux. Erweiterungen und deren Anwendung. Martin Krohn. 2. Februar 2006

JetSym. Programmierung in Hochsprache ST nach IEC We automate your success.

AVI GmbH Frank Seifert

Untersuchungen zur flexiblen Steuerung von Service-Robotern

KEIPM Software zur Anbindung der Bosch Rexroth Schraubsysteme an das I-P.M. Statistik- und Langzeitdatenarchivierungspaket

PFC X. PC-basierte Steuerungen (integrierte Komplettsysteme)

MotoLogix. Roboterprogrammierung über SPS. Robotics Division YASKAWA Europe GmbH. All Rights Reserved.

KUKA.Connect. Präsentationstitel einfügen Name einfügen Datum einfügen

Container als Immutable Infrastructure. John M. Hutchison

Automatisieren mit SIMATIC S7-300 im TIA Portal: Projektieren, Programmieren und Testen mit STEP 7 Professional

GRUNDOPERATIONEN, STEP 7, STÖRUNGSSUCHE, BEDIENGERÄTE, PROFIBUS DP. ZIELGRUPPE Mitarbeiter aus allen Bereichen, die mit SIMATIC S7 arbeiten möchten

Elektrische Automatisierung + Antriebstechnik

Soft-SPS - Was ist eine SPS?

Kuhnke Scout. PC-basierte Steuerungen (integrierte Komplettsysteme)

integrat Know-How und Lösungen für Industrie 4.0 und IoT

GRUNDOPERATIONEN, STEP 7, STÖRUNGSSUCHE, BEDIENGERÄTE, PROFIBUS DP. ZIELGRUPPE Mitarbeiter aus allen Bereichen, die mit SIMATIC S7 arbeiten möchten

Software. Die IDE(E) für Sie. Schneller umsetzen. Produktiver arbeiten. Das macht unsere Software effizient VECTOSTUDIO

Ludwig Adelmann Product Manager Automation Controls

SYSTEMKURS 1 SIMATIC S5

IEC Windows- Programmiersoftware für CPS500

Integration von Antrieb und Steuerung Modulare Maschinenkonzepte

Walkabout: Location Based Services mit Android und dem Google Phone

FORT BI LDU N G E N 4.0

Training Center Robotics

Handhabungslösung zum Verfahren und Positionieren eines Dispenskopfes

Integration einer Dosierwaage im TIA Portal

Michael Reuther, ABB Business Unit Control Technologies / ABB Automation Day, Modul 30D Prozessleitsystem Freelance Überblick und Ausblick

SCHULUNGSKATALOG Stand 04/2015

Automatisieren mitsimatic

Ein NI-LabVIEW-Toolkit für die Erstellung von vollwertigen, virtuellen SPS-Funktionen

Driving the Digital Enterprise Siemens im Kontext von Industrie 4.0. Leonhard Muigg MBA

TIA Portal. Know-how-Initiative TIA Portal. StartDrive V11. Markus Ingold Bernhard Mittelmeyer

mz robolab GmbH SIEMENS RCM Retrofit

products PC-Control

VECTOSTUDIO VECTOSTUDIO

Einbindung der RasPiLC in die CODESYS-Umgebung

Ablauf des Upgrades der SPS- Firmware

Übergreifend projektieren in einem Steuerungsprojekt: CODESYS Visualization

High Speed Steuerung ZX20T

Motion Controller 2 - MC2

Ein Open-Source-Projekt im Überblick

Smart Engineering. Perfection in Automation

Best Practices für RM/RE in einem Prozess Framework Thomas Schröder

Übersicht Informatikfächer WiIng

Kundeninformation Robotik 2015

Maschinennah visualisieren mit SIMATIC HMI

Deinen EV3-Kasten vorbereiten

Oracle Database Appliance und Virtualisierung: OVM oder KVM?

STEUERUNGS- / AUTOMATISIERUNGSTECHNIK

WAGO Kontakttechnik DALI-Multi-Master-Klemme Allgemeine Informationen EAN

Speicherprogammierbare Steuerungen als Bausteine verteilter Automatisierung

Inhaltsverzeichnis Kapitel 1 Grundlagen für Echtzeitsysteme in der Automatisierung

Technical Note Nr

gekapselte Mechatronik-Objekte

Einführung Betriebssysteme

Echtzeit-Programmierung bei Automatisierungssystemen

Volkswirtschaftliche Potenziale von Industrie 4.0

Kinmatec. Einfach erfahren.

Embedded Linux gnublin Board Programmieren Sonstiges. Embedded Linux am Beispiel des Gnublin-Boards

Herzlich Willkommen an den Berufsbildenden Schulen Neustadt am Rübenberge

Engineering Aspekte bei der Auswahl von. Automatisierungsplattformen. Wir sind ein unabhängiges Engineering- und Beratungsunternehmen

Automatisieren mitsimatic

EINE AN DIE BEDÜRFNISSE DER BETRIEBSTECHNIK ANGEPASSTE GESAMTLÖSUNG INDUSTRIESICHERHEIT NETWORK SECURITY I ENDPOINT SECURITY I DATA SECURITY

(Carl Martin Welcker, VDW gemäß: Springer for Professionals 2009)

Realisierung eines komplett virtualisierten Client/Server-Systems. Erfahrungsbericht anhand einer Pharma-Chemiewirkstoffanlage

Meine SPS kann Linux, und nun?

Kapitel 02. Java was, wann, warum, wieso. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

STEUERUNGSINTEGRIERTE VISION LÖSUNGEN

Herr der Ringe Der CAN-HSB Ringbus Zur Steuerung von Brandschutz- und Entrauchungsklappen

SPS 4.0: vernetzt, adaptiv, dezentral, herstellerübergreifend

Warum JavaScript? Vorwort

OSEK / OSEKtime - ein Vergleich

Entwicklungstendenzen in der Industrierobotik. Prof. Dr.-Ing. Heinz Wörn

Kurz zu meiner Person: Michael Ziegler

TwinCAT. SPS und Motion Control auf dem PC. TwinCAT

High Speed Steuerung ZX20T

Wir steuern ihre Ideen. Wir bewegen ihre Mechanik. Automation ab 1 Stück. Alles aus einer Hand. Automation Motion Controller

Das neue Lineare Transportsystem XTS: Neue Freiheiten für den Maschinenbau.

Fach: Softwareentwicklung für technische Systeme (SOFT) Berufsbezogener Lernbereich Schwerpunkt: Informations- und Automatisierungstechnik

Hexapoden in der Automatisierung

Dienstleistungsportal der deutschen Bürgschaftsbanken

1 EINFÜHRUNG Interdisziplinäre Wissenschaft Definition des Roboters... 16

Linux RT-Preempt Echtzeitkenngrößen ermitteln und testen. Embedded Testing 2017 Thomas Maierhofer Consulting

Transkript:

Roboter-OS mit FORTH April 14, 2007 Gerd Franzkowiak FORTH als Programmiersprache und als Betriebssystem Contents 1 Einleitung 2 2 Roboter-Übersicht 3 2.1 Roboter-Varianten............................... 3 2.1.1 Hobby, lern und akademische Varianten............... 3 2.1.2 Knickarm-Roboter (der Klassiker).................. 3 2.1.3 Flächenportal-Roboter (Favorit für den Einstieg).......... 3 2.1.4 Humanoiden (die Zukunft, auch für üble Typen).......... 4 3 Grundgedanken 4 3.1 Die Quelle der Gedanken............................ 4 3.2 Die Sicht der Automatisierung......................... 5 3.2.1 Entwicklungsumgebung........................ 5 3.2.2 Das Aussehen der Programme..................... 7 4 Vorschlag zur Vorgehensweise 8 4.1 Überblick.................................... 8 4.2 Echtzeit / Multitasking............................ 8 4.2.1 Harte Echtzeit............................. 9 4.2.2 Weiche Echtzeit............................. 9 1

5 Mögliches Time Scheduling 9 5.1 Echtzeit-Multitasking-System......................... 10 5.1.1 Realisierung der Multitasking- und Echtzeit-Fähigkeiten von FORTH auf Linux................................ 10 5.1.2 Realisierung der Multitasking- und Echtzeit-Fähigkeiten der Stand- Alone-FORTH-Umgebung....................... 10 5.2 Steuer- und Regelsystem für einen Roboter................. 10 5.3 Schaung eines Automatisierungssystems mit integrierter Entwicklungsumgebung.................................... 11 1 Einleitung Roboter sind eine ideale Umgebung für Disziplinen wie Elektronik, Software, Sensorik, Mechanik, Mikrocomputertechnik. Genau diese technische Symbiose und die Art der Automatisierung ist eine ideale Umgebung für FORTH. Das hat mich veranlaÿt, ein FORTH-Roboter-Projekt als Freie Software z.b. unter den Bedingungen der GPL anzuregen. Es könnte ein Aushängeschild für FORTH werden. 2

2 Roboter-Übersicht 2.1 Roboter-Varianten 2.1.1 Hobby, lern und akademische Varianten 2.1.2 Knickarm-Roboter (der Klassiker) 2.1.3 Flächenportal-Roboter (Favorit für den Einstieg) 3

2.1.4 Humanoiden (die Zukunft, auch für üble Typen) 3 Grundgedanken 3.1 Die Quelle der Gedanken Für die industriellen Varianten der Roboter-Technik existiert kein Programmierstandard! Jeder Hersteller verwendet seine eigen Programmiersprache. Erste Tendenzen sind zu erkennen, daÿ Hersteller sich in Richtung des Standards der Speicherprogrammierbaren Steuerungen (SPS) bewegen. Der Standard dafür ist unter der IEC 61131-3 beschrieben und umfaÿt mehrere Methoden der Programmierung. Siehe VD 2006-4: Leserbriefe und Meldungen Die Anwendung Automatisierung. Meine Idee dazu war und ist, die Methodik Strukturierter Text / ST als eine Art Schale um FORTH zu legen und somit eine Brücke für Nutzer aus der Industrie bauen. Genau diese Nutzer können dann in einer gewohnten Umgebung programmieren und mit einer integrierten Entwicklungsumgebung die Sourcen auf eine Steuerung schieben. Dort, auf der Steuerung, übernimmt ein Tool z.b. entsprechend Anton Ertls Paket "Gray" die Aufgabe, diese IEC 61131-Sourcen in FORTH zu wandeln und in die RunTime-Umgebung einzubinden. Die Verfahrensweise hat aus meiner Sicht drei Vorteile: 4

1. FORTH könnte sich in einem Wachstumsmarkt der Automatisierung etablieren, 2. der erfahrene FORTH-Anwender kann den Roboter voll ausreizen und 3. der alteingesessene Programmierer der Automatisierung ndet seine gewohnte Umgebung und könnte so ganz nebenbei sogar Berührung mit FORTH bekommen. 3.2 Die Sicht der Automatisierung 3.2.1 Entwicklungsumgebung Als Beispiel stelle ich hier eine Ansicht der CoDeSys Entwicklungsumgebung entsprechend IEC 61131 vor. Sie ist ein Produkt der Firma 3S - Smart Software Solutions GmbH Memminger Straÿe 151 87439 Kempten 5

6

3.2.2 Das Aussehen der Programme IEC 61131 KUKA Robot Language 7

4 Vorschlag zur Vorgehensweise 4.1 Überblick Für einen BOTTOM-UP Entwicklungsweg sollte FORTH für den Einsatz auf 2 Wegen zum Einsatz kommen. 1. FORTH auf Linux, um alle Tools und Möglichkeiten für die Entwicklung zu haben 2. FORTH stand alone für das High End und absolute Portabilität sowie Sicherheit und Zertizierung. 4.2 Echtzeit / Multitasking Es zeichnet sich ab, daÿ es relativ schwierig zu realisieren ist, FORTH in ein Realtime-OS einzufügen. In diesem Zusammenhang stellen sich z.b. die Fragen: 1. Eine FORTH-Umgebung aufsplitten für verschiedene Prozesse / Tasks oder 8

2. Mehrere FORTH-Umgebungen in je einem Prozeÿ / einer Tasks des Betriebsystems? Für die entgültige Robotersteuerung sind Tasks wie: Antriebs-Regelung, Bahnplanung / Steuerung, Feldbus-Kommunikation, Bediener-Kommunikation und nicht zuletzt für asynchrone Ereignisse erforderlich. Aus dem Bild der CodeSys-Entwicklungsumgebung "Task-Konfiguration"3.2.1 war zu erkennen, daÿ unterschiedliche und mehrere Programme einer gewünschten Task zugeordne werden müssen. Ich denke, diese Aufgaben komplett in FORTH zu lösen wäre wohl ein erster, bestimmt auch sehr interessanter Schritt. 4.2.1 Harte Echtzeit Garantierte anwendungsabhängige worst-case Reaktionszeiten (nicht unbedingt kurz, aber sehr deterministisch) Realisierung mit der Kernel-Erweiterung Xinomai für Linux FORTH stand alone? 4.2.2 Weiche Echtzeit Rechtzeitigkeit wird benötigt, aber Scheitern bleibt ohne schwerwiegende Folgen (evtl. Qualitätsverluste) Realisierung mit dem Kernel-Patch von Ingo Molnar und Andrew Morton für Linux FORTH stand alone 5 Mögliches Time Scheduling Der gesamte Zyklus der Entwicklung sollte sich in 3 Phasen gliedern, die auch teilweise parallel laufen könnten. 9

5.1 Echtzeit-Multitasking-System Erstellen des Konzeptes, welcher Weg beschritten werden soll, um Multitasking- Fähigkeit für FORTH auf Robotern und in der Automatisierung zu schaen, Möglichkeiten für erweiterbare Prozeÿ- bzw. Task-Listen, wie im Bild oben gezeigt, schaen, Prinzipien der Interprozeÿkommunikation festlegen, Debugging-Umgebung für Inbetriebnahme erstellen (Inbetriebnehmer der Roboterwelt kennen und lieben den Step-Betrieb). 5.1.1 Realisierung der Multitasking- und Echtzeit-Fähigkeiten von FORTH auf Linux Resourcen des Betriebssystemes, wie z.b. die Interprozess-Kommunikation, nutzen. 5.1.2 Realisierung der Multitasking- und Echtzeit-Fähigkeiten der Stand-Alone-FORTH-Umgebung Art und Weise des System-Konzeptes festlegen. 5.2 Steuer- und Regelsystem für einen Roboter Diese Aufgaben können mit Sicherheit aus den Erfahrungen des Linux-CNC-Systems EMC Enhanced Machine Controller http://www.linuxcnc.org schöpfen, da viele Parallelen in Fragen der Transformationen vorhanden sind. Beispiel: Achswinkel von 6 Achsen müssen vor- und rückwärts transformiert werden um jederzeit die karthesiche Position der Werkzeugspitze zu kennen. Für eine Bahnplanung muÿ dies gegenwärtig ca. alle 6 ms erfolgen, auch für unterschiedliche Geometrien (Knickarm- Roboter, Portal-Roboter). 10

5.3 Schaung eines Automatisierungssystems mit integrierter Entwicklungsumgebung Um den Roboter-Kern muÿ eine Umgebung geschaen werden, welche eine Akzeptans nach auÿen bringt. Dies entspricht meinen vorangegangenen Äuÿerungen zum Einsatz der IEC 61131 und einer möglichen Entwicklungsumgebung, z.b. mit Gray und einer wxwidgets-anknüpfung für FORTH. 11