Generierung von Steuerungsprogrammcode für SPS und μc aus Petri-Netz-Modellen

Größe: px
Ab Seite anzeigen:

Download "Generierung von Steuerungsprogrammcode für SPS und μc aus Petri-Netz-Modellen"

Transkript

1 Fachhochschule Köln Cologne University of Applied Sciences Fakultät für Informations-, Medien- und Elektrotechnik Institut für Automatisierungstechnik Labor für Informations- und Automatisierungstechnik KURZFASSUNG ZUR BACHELORARBEIT Generierung von Steuerungsprogrammcode für SPS und μc aus Petri-Netz-Modellen Autor: Daniel Heppner Referent: Prof. Dr.-Ing. Stefan Kreiser Umfang: 81 Seiten Begriffe: MDD, Petri-Netz, ST, C, C++, Netlab, CPN Tools, Python, SPS, µc, XML, PNML Datum: 27. Juli 2010 Modellgetriebene Softwareentwicklung mittels Petrinetzen ermöglicht eine einfache Beschreibung komplexer, parallel arbeitender Systeme. Petrinetze können mit Hilfe mathematischer und graphentheoretischer Methoden hinsichtlich verschiedener Netzeigenschaften untersucht werden. So kann ein Algorithmus noch vor der Implementierung grafisch dargestellt, hinsichtlich verschiedener Eigenschaften untersucht und sogar simuliert werden. Diese grafisch erstellten und durch Simulation getesteten Systeme können dann in mathematischer Form dargestellt, automatisch in Software übersetzt und auf der gewählten Zielplattform ausgeführt werden. Zur automatischen Generierung von ST-Code wurde im Rahmen einer Diplomarbeit ein Werkzeug erstellt. Es wurde in der Skriptsprache Python implementiert und besitzt die Fähigkeit, mit dem Petri-Netz-Editor Netlab erstellte Netze einzulesen und daraus ST-Code nach IEC EN zu erzeugen. Das Eingangs- und Ausgangsverhalten des Netzes wird bei der Generierung berücksichtig. Die Architektur wurde so konzipiert, dass PNcompile leicht um neue Funktionen erweitert werden kann. In dieser Bachelorarbeit werden neue Anforderungen an den Codegenerator gestellt: Der Codegenerator soll einen weiteren Editor CPN Tools unterstützen. Der Compiler soll um die Zielsprachen C und C++ erweitert werden, was die Ausführung von Petri-Netzen auf vielen neuen Zielplattformen ermöglicht. Zudem soll ein allgemeines, funktionsbasiertes Aktionskonzept für Petri- Netze ausgearbeitet und implementiert werden. Im Rahmen dieser Spezifikationen werden bestehende Konzepte und existenter Quellcode aufgegriffen und an die neuen Anforderungen angepasst. Da am Zielcode immer wieder kleinere Anpassungen notwendig sein können, liegt dieser nun in Form von Templates vor. Der generierte C- und C++-Programmcode ist standardkonform nach ISO/IEC 9899:1990 bzw. ISO/IEC 9899:1999. Optional können Aktionsfunktionen in allen Zielsprachen beim Schalten von Transitionen oder bei bestimmten Markierungssituationen im Netz ausgelöst werden.

2 i Inhaltsverzeichnis 1 Einleitung Modellgetriebene Softwareentwicklung Ziele der Arbeit Grundlagen Modellgetriebene Softwareentwicklung Petrinetze Petrinetze mit individuellen Marken Steuerungstechnisch interpretierte Petrinetze Aktionen Statecharts Petrinetze Objektorientierte Darstellung von Petrinetzen Petri Net Markup Language CPN Tools XML XML-Namensraum XML-Elemente Zielsprachen ST nach IEC EN ANSI C ISO C Werkzeuge GNU Compiler Collection Xcode Visual Studio 2008/ Entwicklungsumgebung Python LXML-Toolkit Implementierung von Petrinetzen Allgemeine Implementierung ST nach IEC EN ISO C... 18

3 ii 3.4 ISO C Aktionskonzept für Petrinetze Einführung Syntax Architektur Implementierung in ST für SPS Implementierung in ANSI C Implementierung in ISO C PNcompile Generierung von Steuerungsprogrammcode Anforderungen Architektur GUI Generator Parser Compiler Linker Parsen von Petrinetzen Parser Erzeugen von Nebenbedingungen Entfernen der Eingangsstellen Konvertieren von Inhibitorkanten Konvertierung von Stellenkapazitäten Aktionen CPN-Netzhierarchie Pages Codegenerierung Generieren von SPS-Code Codegenerierung mit Templates Generieren von C-Code Generieren von C++-Code Hierarchische Netze Zusammenführen mehrerer Netze Verifikation Verifizieren des Compilers Verifizieren des generierten Codes... 65

4 iii SPS-Code C-Code Verifizieren des C++-Codes Einsatz von PNcompile Bedienung Anmerkungen Zusammenfassung und Ausblick Anhang A: Klassendiagramme A.1 Petrinetz A.2 Parser A.3 Compiler Anhang B: Einrichtung der Werkzeuge B.1 Python und lxml B.2 Aptana Studio B.3 PyQt Installation von SIP Installation von PyQt Abbildungsverzeichnis Literaturverzeichnis... 76

5 1 1 Einleitung 1.1 Modellgetriebene Softwareentwicklung Modellgetriebene Softwareentwicklung mittels Petrinetzen ermöglicht eine einfache Beschreibung komplexer, parallel arbeitender Systeme. Petrinetze können mit Hilfe mathematischer und graphentheoretischer Methoden hinsichtlich verschiedener Netzeigenschaften untersucht werden. So kann ein Algorithmus noch vor der Implementierung grafisch dargestellt, hinsichtlich verschiedener Eigenschaften untersucht und sogar simuliert werden. Der Netzentwurf und die Netzanalyse werden durch eine Reihe zum Teil freier Tools unterstützt. Je nach Tool ist es nicht nur möglich Petrinetze grafisch zu erstellen, sondern auch hinsichtlich verschiedener Eigenschaften zu analysieren. Einige Tools unterstützen die Bewertung der ermittelten Netzeigenschaften hinsichtlich problematischer Situationen. Die Funktionen reichen von grafischer Simulation über mathematischer Untersuchung des Netzes bis hin zur Berechnung von Erreichbarkeitsgraphen. Erreichbarkeitsgraphen können textuelle oder oft auch grafisch dargestellt sein. Darüber hinaus können erstellte Netze in ein zumindest in den wesentlichen Notationen standardisiertes Austauschformat exportiert und mit anderen Werkzeugen wieder eingelesen werden. (Franke, 2010) Diese grafisch erstellten und durch Simulation getesteten Systeme können dann in mathematischer Form dargestellt, automatisch in Software übersetzt und auf der gewählten Zielplattform ausgeführt werden. Die grafische Darstellung bietet eine hohe Abstraktion und ist meist unabhängig vom Zielsystem. Der generierte Code muss aber oft noch an die Zielplattform angepasst werden. 1.2 Ziele der Arbeit Ziel dieser Arbeit ist es, den bestehenden Codegenerator PN2SPS um einige Funktionen zu erweitern. Bisher war es möglich mit PN2SPS PNML-basierte Petrinetze einzulesen und daraus lauffähigen ST- Code für speicherprogrammierbare Steuerungen zu erzeugen. Der Codegenerator soll neben PNML-basierten Petrinetzen auch durch CPN Tools erstellte Petrinetze einlesen und verarbeiten können. CPN Tools ist ein weit verbreiteter Petrinetz-Editor zum Erstellen gefärbter Petrinetze und hat umfangreiche Funktionen zur Netzanalyse. Die Codegenerierung soll um die Zielsprachen C und C++ erweitert werden. C- und C++-Programme können für nahezu jede rechnerbasierte Hardware kompiliert und darauf ausgeführt werden. Im Zuge dieser Erweiterungen und Anpassungen ist ein Redesign der grafischen Benutzeroberfläche notwendig. Da der Compiler nicht mehr nur die Erzeugung von ST-Code unterstützt, wird PN2SPS in PNcompile umbenannt. Des Weiteren soll ein allgemeines, funktionsbasiertes Aktionskonzept für Petrinetze entworfen und implementiert werden. Das Aktionskonzept soll Aktionstypen aus Statecharts in Petrinetze integrieren. Dabei soll jede Aktion in jeder Zielsprache beliebige Anweisungen ausführen können. Dafür ist eine neue Notation für Aktionen in Petrinetzen notwendig, die in dieser Arbeit definiert wird.

22. Januar Gruppe 2: TOPCASED

22. Januar Gruppe 2: TOPCASED 22. Januar 2008 Aufgabenstellung Modellgetriebene Softwareentwicklung auf Basis von am Beispiel eines Seminarverwaltungssystems Ziel Entwicklungsprozess Anforderungen & Codegenerierung Modellierung & Templates

Mehr

Definition Compiler. Bekannte Compiler

Definition Compiler. Bekannte Compiler Compiler Inhalt: Definition Compiler / bekannte Compiler Klassifikationen von Compilern Analyse-Synthese-Modell der Kompilierung Analyse des Quellprogramms Synthesephase Die Phasen eines Compilers Symboltabellenverwaltung

Mehr

Notationen zur Prozessmodellierung

Notationen zur Prozessmodellierung Notationen zur Prozessmodellierung August 2014 Inhalt (erweiterte) ereignisgesteuerte Prozesskette (eepk) 3 Wertschöpfungskettendiagramm (WKD) 5 Business Process Model and Notation (BPMN) 7 Unified Modeling

Mehr

Integration von Model-Driven Development und formaler Verfikation in den Softwareentwicklungsprozess

Integration von Model-Driven Development und formaler Verfikation in den Softwareentwicklungsprozess Integration von Model-Driven Development und formaler Verfikation in den Softwareentwicklungsprozess Eine Fallstudie mit einem 3D-Tracking-System Dipl.-Inform. Christian Ammann Fachhochschule Osnabrück

Mehr

Modellgetriebene Entwicklung von Pervasive Games

Modellgetriebene Entwicklung von Pervasive Games AW1 Vortrag von Hauke Wittern Modellgetriebene Entwicklung von Pervasive Games Entwicklung einer domänenspezifischen Sprache 09.12.2008 Agenda Motivation Pervasive Games Modellgetriebene Softwareentwicklung

Mehr

MDSD Einführung und Überblick

MDSD Einführung und Überblick Model Driven Software Development MDSD Einführung und Überblick Referent: Carsten Schädel Seite 2 / 33 Ziele Grundgedanke Glossar der wichtigsten Begriffe Seite 3 / 33 Glossar Seite 4 / 33 mögliche Definitionen:

Mehr

Schnelles Prototyping für die medizinische Bildverarbeitung

Schnelles Prototyping für die medizinische Bildverarbeitung Schnelles Prototyping für die medizinische Bildverarbeitung Danial Bin Mohamed Saruji, Michael Müller, Hans-Peter Meinzer Abteilung Medizinische und Biologische Informatik, Deutsches Krebsforschungszentrum

Mehr

Grundlagen der Programmentwicklung

Grundlagen der Programmentwicklung Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Über C++ Über C++ C++ ist eine in der Industrie

Mehr

Modellgetriebene Entwicklung eingebetteter Systeme mit Eclipse

Modellgetriebene Entwicklung eingebetteter Systeme mit Eclipse Modellgetriebene Entwicklung eingebetteter Systeme mit Eclipse Dr. Lothar Wendehals Softwarearchitekt Axel Terfloth Leiter Forschung und Entwicklung Software Engineering 2009 4. März 2009, Kaiserslautern

Mehr

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015 Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 11. Februar 2015 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion

Mehr

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester 2018 Dipl.-Ing. (FH) Volker Schepper 1 Organisation Vorlesungstermine 7. März 2018 14. März 2018 21. März 2018 28. März 2018 4. April

Mehr

Model Driven Architecture

Model Driven Architecture Roland Petrasch Oliver Meimberg Model Driven Architecture Eine praxisorientierte Einführung in die MDA Mit Gastbeiträgen von Florian Fieber und Karsten Thoms dpunkt.verlag Inhaltsverzeichnis Vorwort 1

Mehr

Toolbasierte Wirtschaftlichkeitsanalyse der energetischen Sanierung eines Hauses durch Wärmedämmung. Bachelorarbeit

Toolbasierte Wirtschaftlichkeitsanalyse der energetischen Sanierung eines Hauses durch Wärmedämmung. Bachelorarbeit Toolbasierte Wirtschaftlichkeitsanalyse der energetischen Sanierung eines Hauses durch Wärmedämmung Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftsingenieur

Mehr

Institut für Informatik Betriebliche Informationssysteme Graph-basiertes Reengineering

Institut für Informatik Betriebliche Informationssysteme Graph-basiertes Reengineering Graph-basiertes Reengineering Seminar Model-Driven Software Development (MDSD) Stefan Sosnicki Agenda 1. Einleitung 2. Begriffsklärung 3. Vorstellung der Werkzeuge 1. Jumli 2. Umodel 3. Fujaba 4. Vergleich

Mehr

ACPLT + IEC = Dynamisch Rekonfigurierbare Modelle

ACPLT + IEC = Dynamisch Rekonfigurierbare Modelle ACPLT + IEC 61131-3 = Dynamisch Rekonfigurierbare Modelle L. Yu, G. Quirós, T. Kraußer, U. Epple Lehrstuhl für Prozessleittechnik RWTH Aachen University MAT 2012 15.03.2012 Überblick IEC 61131-3 Standard

Mehr

Code Generieren mit UML2

Code Generieren mit UML2 Code Generieren mit UML2 Über uns Philipp Auersperg Mitbegründer der Bluedynamics seit 20 Jahren in der objktorientierten Softwareentwicklung Seminare für Beratungsfirmen über UML Initiator des ArchGenXML

Mehr

C-Grundlagen. Einführung von Tronje Krabbe 1/21

C-Grundlagen. Einführung von Tronje Krabbe 1/21 C-Grundlagen Einführung von Tronje Krabbe 1/21 Gliederung Hintergrund Geschichte Nutzungsgebiete C-Derivate Syntax Compiler Beispielcode 2/21 Was ist C? C ist eine imperative, kompilierte Programmiersprache

Mehr

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013 Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 7. Februar 2013 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion

Mehr

Fachforum 5: Systems Engineering Modellgetriebene Entwicklung von Schrittketten G. KRAFT Maschinenbau GmbH 06. Dezember 2017 Paderborn

Fachforum 5: Systems Engineering Modellgetriebene Entwicklung von Schrittketten G. KRAFT Maschinenbau GmbH 06. Dezember 2017 Paderborn Fachforum 5: Systems Engineering Modellgetriebene Entwicklung von Schrittketten G. KRAFT Maschinenbau GmbH 06. Dezember 2017 Paderborn www.its-owl.de Agenda Abschlusspräsentation Einführung Zielsetzung

Mehr

Codegenerierung mit Xtend. 21. Januar 2015

Codegenerierung mit Xtend. 21. Januar 2015 Codegenerierung mit Xtend 21. Januar 2015 Überblick Xtend bietet einen Template-basierten Ansatz zur Codegenerierung Xtend enthält eine spezielle Template-Sprache. Das Modell kann beliebig benutzt werden,

Mehr

Definitionen/Vorarbeit zum Thema Java

Definitionen/Vorarbeit zum Thema Java Definitionen/Vorarbeit zum Thema Java Programmiersprachen: System von Wörtern und Symbolen, die zur Formulierung von Programmen für die elektronische Datenverarbeitung verwendet werden. Arten: z.b. Javascript

Mehr

Einführung in die Modelltransformation mit Xtend

Einführung in die Modelltransformation mit Xtend Einführung in die Modelltransformation mit Xtend 12. Dezember 2012 Taentzer Modellgetriebene Softwareentwicklung 297 Überblick Xtend: Eine statisch getypte Sprache, die zur Modellzu-Text-Transformation

Mehr

SYNTHESE ELEMENTARER PETRINETZE

SYNTHESE ELEMENTARER PETRINETZE SYNTHESE ELEMENTARER PETRINETZE OBERSEMINARVORTRAG VON MARTIN CANDROWICZ 27. MAI 2016 GLIEDERUNG 1. PETRINETZE 2. TRANSITIONSSYSTEME 3. MOTIVATION 4. ALGORITHMUS ZUR SYNTHESE ELEMENTARER PETRINETZE 1.

Mehr

Inhalt. " DiaGen Historie und Beschreibung. " Architektur eines DiaGen-Editors. " Hypergraphen. " DiaGen-Editoren Komponenten

Inhalt.  DiaGen Historie und Beschreibung.  Architektur eines DiaGen-Editors.  Hypergraphen.  DiaGen-Editoren Komponenten DIAGEN Sven Goeckels Seminar : Visuelle Sprachen Universität Bremen FB Informatik WS 2001/2002 Inhalt " DiaGen Historie und Beschreibung " " Hypergraphen " DiaGen-Editoren Komponenten? Modeler? Reducer?

Mehr

IEC Windows- Programmiersoftware für CPS500

IEC Windows- Programmiersoftware für CPS500 IEC61131-3 Windows- Programmiersoftware für CPS500 16/13-089.231.01 esitron-electronic GmbH Ernst-Zimmermann-Str. 18 D-88045 Friedrichshafen Internet: www.esitron.de Telefon +49 (0) 7541/6000-0 Telefax

Mehr

Software-Engineering im Sommersemester 2014

Software-Engineering im Sommersemester 2014 Methodische Grundlagen des Software-Engineering SS 2014 Vorlesung Methodische Grundlagen des Software-Engineering im Sommersemester 2014 Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl

Mehr

Definition von domänenspezifischen Sprachen mit Xtext: Einführung

Definition von domänenspezifischen Sprachen mit Xtext: Einführung Definition von domänenspezifischen Sprachen mit Xtext: Einführung 28. November 2012 Taentzer Modellgetriebene Softwareentwicklung 246 Überblick Was ist zu tun, wenn wir selbst einen Ansatz für modellgetriebenen

Mehr

X2X SOFTWARE-ROBOTER

X2X SOFTWARE-ROBOTER X2X SOFTWARE-ROBOTER Was ist der x2x Software-Roboter? Der x2x Software-Roboter ist eine extrem flexible, universelle Applikation zur vollautomatischen Verarbeitung von Dateien. Er kann für Sie beliebige,

Mehr

Petri-Netzbasierte Modellierung und Analyse von Risikoaspekten in Geschäftsprozessen

Petri-Netzbasierte Modellierung und Analyse von Risikoaspekten in Geschäftsprozessen Petri-Netzbasierte Modellierung und Analyse von Risikoaspekten in Geschäftsprozessen Zur Erlangung des akademischen Grades eines Doktors der Wirtschaftswissenschaften (Dr. rer. pol.) von der Fakultät für

Mehr

Petrinetze und GPSS/H

Petrinetze und GPSS/H Hochschule Mittweida (FH) Seminararbeit Simulation 11. Januar 2006 Agenda 1 2 3 4 Agenda 1 2 3 4 Themen Modellierung von dynamischen Systemen Formale Modellierung von nebenläufigen Systemen Simulation

Mehr

Einführung in das Graphical Modeling Framework. 13. November 2012

Einführung in das Graphical Modeling Framework. 13. November 2012 Einführung in das Graphical Modeling Framework 13. November 2012 100 Überblick Was ist der Unterschied zwischen abstrakter Syntax und konkreter Syntax? Welche Arten von graphischen Editoren gibt es? Freihandeditoren

Mehr

Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren

Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren Hendrik Seffler HU Berlin Abschlussvortrag p. 1/25 Was? Entwicklung eines Werkzeugs zur Überdeckungsmessung für kontrollflussbezogene

Mehr

Regelbasierte Entwicklung betrieblicher Informationssysteme

Regelbasierte Entwicklung betrieblicher Informationssysteme Reihe: Wirtschaftsinformatik Band 45 Herausgegeben von Prof. (em.) Dr. Dietrich Seibt, Köln, Prof. Dr. Hans-Georg Kemper, Stuttgart, Prof. Dr. Georg Herzwurm, Stuttgart, Prof. Dr. Dirk Stelzer, Ilmenau,

Mehr

Evaluation von simulationsfšhigen RE-Werkzeugen

Evaluation von simulationsfšhigen RE-Werkzeugen Evaluation von simulationsfšhigen RE-Werkzeugen Reto Schmid Institut fÿr Informatik, UniversitŠt ZŸrich Folie 1 Agenda Zielsetzung des AK, Mitglieder Umfang der Evaluation Untersuchte Werkzeuge Ergebnisse

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Sinn der Übung: Vertiefung des Vorlesungsstoffes Vorbereitung zum Lösen der Übungsaufgaben Besprechung der Lösungen nach Abgabe Materialien: https://www.informatik.uni-leipzig.de/~stjaenicke/mup1/ Einschreibung

Mehr

Objektorientierte Programmierung (OOP)

Objektorientierte Programmierung (OOP) orientierte Programmierung (OOP) 1. Motivation Die objektorientierte Sichtweise der Welt Als Motivation für die OOP sieht man sich am besten die reale Welt an: Die reale Welt besteht aus "en", z. B.: Gegenstände,

Mehr

Animation vielfältiger Prozeßabläufe mit Hilfe von Petri-Netzen

Animation vielfältiger Prozeßabläufe mit Hilfe von Petri-Netzen Animation vielfältiger Prozeßabläufe mit Hilfe von Petri-Netzen Georg Hohmann, Matthias Schleinitz Bauhaus-Universität Weimar, Fakultät Bauingenieurwesen Professur Computergestützte Techniken Coudraystraße

Mehr

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer Holger Sinnerbrink Einführung Firmenentwicklung Gründung von Telelogic 1983 als Forschungs- und Entwicklungsabteilung

Mehr

Warum Modellierung? OE-Vorlesung 2016 Einführung in Petrinetze. Was ist ein Modell? Und warum Petrinetze? Petrinetze sind ein Modellierungswerkzeug.

Warum Modellierung? OE-Vorlesung 2016 Einführung in Petrinetze. Was ist ein Modell? Und warum Petrinetze? Petrinetze sind ein Modellierungswerkzeug. Warum Modellierung? OE-Vorlesung 016 Einführung in Petrinetze Dr. Lawrence Cabac cabac@informatik.uni-hamburg.de Folien: Dr. Frank Heitmann Fachbereich Informatik Universität Hamburg Petrinetze sind ein

Mehr

UML (Unified Modelling Language) von Christian Bartl

UML (Unified Modelling Language) von Christian Bartl UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...

Mehr

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung

Mehr

Programmierung unter GNU/Linux für Einsteiger

Programmierung unter GNU/Linux für Einsteiger unter GNU/Linux für Einsteiger Edgar Fast Edi Hoffmann Community FreieSoftwareOG kontakt@freiesoftwareog.org 7. September 2016 Begriffserklärung 2 / 35 Begriffserklärung Programmierung (von griechisch

Mehr

30. Parser-Generatoren

30. Parser-Generatoren 30. Parser-Generatoren Prof. Dr. rer. nat. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden http://st.inf.tu-dresden.de Version 11-0.1,

Mehr

Automatisierte Architekturanalyse unter Einsatz von UML 2.0 Modellen

Automatisierte Architekturanalyse unter Einsatz von UML 2.0 Modellen Automatisierte Architekturanalyse unter Einsatz von UML 2.0 Modellen Vorstellung: Thorben Pergande Bisheriges Studium: B.Sc. Angewandte Informatik an der HAW Professoren an dieser Ausarbeitung beteiligt:

Mehr

Pflichtenheft Inhaltsverzeichnis. 1 Zielbestimmung Musskriterien Wunschkriterien Abgrenzungskriterien...

Pflichtenheft Inhaltsverzeichnis. 1 Zielbestimmung Musskriterien Wunschkriterien Abgrenzungskriterien... Pflichtenheft 17.05.2010 Inhaltsverzeichnis 1 Zielbestimmung 2 1.1 Musskriterien.................................. 2 1.2 Wunschkriterien................................ 3 1.3 Abgrenzungskriterien..............................

Mehr

Fachtagung der BAG Metalltechnik/Elektrotechnik-Informatik

Fachtagung der BAG Metalltechnik/Elektrotechnik-Informatik Fachtagung der BAG Metalltechnik/Elektrotechnik-Informatik Dezentral gesteuertes flexibles Fertigungssystem: Herausforderungen und Chancen beim Einsatz als Lernträger im Unterricht 03.04.2013 F. Beier

Mehr

Objektorientierte Modellierung (1)

Objektorientierte Modellierung (1) Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist

Mehr

Programmiersprache. Emily & rica

Programmiersprache. Emily & rica Programmiersprache Emily & rica inhaltsangabe Programmiersprache Def inition/funktion Arten Gängige Algorithmus/Syntax Compiler, Interpreter Def inition Unterscheidung Vor- und Nachteile Compiler/ Interpreter

Mehr

FPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007

FPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007 Paderborn Center for Parallel l Computing Paderborn University 29. Mai 2007 Übersicht 1. FPGAs 2. Entwicklungssprache VHDL 3. Matlab/Simulink 4. Entwicklungssprache Handel-C 5. Fazit Übersicht FPGAs 1.

Mehr

Das Business im Process: Warum Anwender nicht BPMN sprechen

Das Business im Process: Warum Anwender nicht BPMN sprechen Das Business im Process: Warum Anwender nicht BPMN sprechen Andreas Wußler, PROMATIS software GmbH Ettlingen, 15. November 2011 1 Agenda Einleitung Petri-Netze XML-Netze BPMN 2.0 Warum Projekte scheitern

Mehr

Von der Prozessanalyse zur Prozessautomatisierung

Von der Prozessanalyse zur Prozessautomatisierung Von der Prozessanalyse zur Prozessautomatisierung Patrick Horenburg IDS Scheer AG Saarbrücken Evgenia Rosa ORACLE Deutschland GmbH Berlin Schlüsselworte: Business Process Management, Prozessanalyse, Geschäftsprozess,

Mehr

Compilerbau für die Common Language Run-Time

Compilerbau für die Common Language Run-Time Compilerbau für die Common Language Run-Time Syntax und Semantik von Programmiersprachen 2 Compilerbau Sprachbeschreibung vs. Implementierung Beschreibung: formale oder informale (engl.) Lexik, Syntax,

Mehr

Compiler. Einführung. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München. Letzte Änderung:

Compiler. Einführung. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München. Letzte Änderung: Compiler Einführung Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 10.05.2017 15:49 Inhaltsverzeichnis Ein Compiler................................... 2 Ein Compiler...................................

Mehr

2 Anlegen und Konfigurieren von Datenbanken 35

2 Anlegen und Konfigurieren von Datenbanken 35 Inhalt 1 Einführung und Installation 9 1.1 Einführung 11 1.1.1 Aufbau 11 1.1.2 Schreibkonventionen 12 1.1.3 Zur Beispieldatenbank 13 1.1.4 Kurz-Installation 19 1.2 Die Oracle-Installation 20 1.3 Die Installation

Mehr

Compiler: Einführung

Compiler: Einführung Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 10.05.2017 15:49 Inhaltsverzeichnis Ein Compiler................................... 2 Ein Compiler...................................

Mehr

Eclipse Tutorial.doc

Eclipse Tutorial.doc Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik Eclipse Tutorial 2005, HTI Burgdorf R. Weber Dateiname: Eclipse

Mehr

Software build (-erstellung), deployment(-verteilung) und execution(-ausführung)

Software build (-erstellung), deployment(-verteilung) und execution(-ausführung) Software build (-erstellung), deployment(-verteilung) und execution(-ausführung) (in eingebetteten Systemen) Inputvortrag Nebenläufige Systeme am 1.11.18 Georg Ringwelski Was machen Sie beim Entwickeln

Mehr

Automatische Codegenerierung aus der UML für die IEC

Automatische Codegenerierung aus der UML für die IEC Automatische Codegenerierung aus der UML für die IEC 63-3 Zustandsautomat Erweiterung und Anpassung der UML durch Stereotypen und Tagged Values. * Transition Bedingung Aktion * Zustand Aktivität Anfangszustand

Mehr

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis Einfach generieren Susanne Klar, Michael Klar Generative Programmierung verständlich und praxisnah ISBN 3-446-40448-1 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40448-1

Mehr

Parsing SystemVerilog 2012

Parsing SystemVerilog 2012 Parsing Julian Nagel Lehrstuhl für Rechnerarchitektur Universität Heidelberg 06.07.2016 1 2 3 Inhaltsverzeichnis 4 5 6 Viele Ideen dazu wie effektiv Hardware entwickelt werden kann, aber keine IDE welche

Mehr

Studienarbeit. Mohammad Athar Januar Verantw. Betreuer : Prof. Dr. Walter F. Tichy Betr. Mitarbeiter : Dipl.-Inform. Marc Schanne

Studienarbeit. Mohammad Athar Januar Verantw. Betreuer : Prof. Dr. Walter F. Tichy Betr. Mitarbeiter : Dipl.-Inform. Marc Schanne Studienarbeit Bewertung von Programmier- und Entwicklungsassistenten am Beispiel eines Eclipse-Plug-Ins für den Entwurf verteilter Systeme mit der EventChannelNetwork- Kommunikationsinfrastruktur Mohammad

Mehr

Grafisches Entwicklungs- und Diagnosewerkzeug für die Automation

Grafisches Entwicklungs- und Diagnosewerkzeug für die Automation Grafisches Entwicklungs- und Diagnosewerkzeug für die Automation GUI Zustand1 Zustand2 Zustand3 Zustand4 Zustand5 Zustand6 Master-Thesis Nummer Klasse Student Betreuer Experte Schlüsselwörter MAS-07-02.01

Mehr

Die Geschichte von C

Die Geschichte von C Die Geschichte von C Stefan Thomas Im Proseminar C-Programmierung - Grundlagen und Konzepte 1/20 Der Weg zu C Gliederung Die Verbreitung von C Konsequenzen und Notwendigkeiten Zusammenfassung/Fazit 2/20

Mehr

Hello World! Eine Einführung in das Programmieren Das erste Programm

Hello World! Eine Einführung in das Programmieren Das erste Programm Hello World! Eine Einführung in das Programmieren Das erste Programm Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Betriebssystem Funktion Anwendung Gerätesteuerung

Mehr

Comparing Software Factories and Software Product Lines

Comparing Software Factories and Software Product Lines Comparing Software Factories and Software Product Lines Martin Kleine kleine.martin@gmx.de Betreuer: Andreas Wuebbeke Agenda Motivation Zentrale Konzepte Software Produktlinien Software Factories Vergleich

Mehr

Einführung. (Compiler) Prof. Dr. Oliver Braun. Letzte Änderung: :49. Einführung 1/26

Einführung. (Compiler) Prof. Dr. Oliver Braun. Letzte Änderung: :49. Einführung 1/26 Einführung (Compiler) Prof. Dr. Oliver Braun Letzte Änderung: 10.05.2017 15:49 Einführung 1/26 Ein Compiler ist ein Computerprogramm das ein Programm geschrieben in einer Sprache in ein Programm übersetzt

Mehr

1 EINLEITUNG PROJEKTABLAUF Allgemeine Zielsetzung Projektstruktur und Zeitplan ANFORDERUNGSANALYSE...

1 EINLEITUNG PROJEKTABLAUF Allgemeine Zielsetzung Projektstruktur und Zeitplan ANFORDERUNGSANALYSE... Inhaltsverzeichnis Inhaltsverzeichnis 1 EINLEITUNG... 1 2 PROJEKTABLAUF... 4 2.1 Allgemeine Zielsetzung... 4 2.2 Projektstruktur und Zeitplan... 4 3 ANFORDERUNGSANALYSE... 8 3.1 Der Prototyp des Anlagenmodells...

Mehr

DIN EN (VDE ): EN 62304: A1:2015

DIN EN (VDE ): EN 62304: A1:2015 Inhalt Vorwort...2 Europäisches Vorwort zu A1...3 Einleitung...10 1 Anwendungsbereich...14 1.1 *Zweck...14 1.2 *Anwendungsgebiet...14 1.3 Beziehung zu anderen Normen...14 1.4 Einhaltung...14 2 *Normative

Mehr

Statecharts in UML Grundlagen und Übersetzung in Colored Petri Nets

Statecharts in UML Grundlagen und Übersetzung in Colored Petri Nets Statecharts in UML Grundlagen und Übersetzung in Colored Petri Nets von André Kaiser 25.10.2004 André Kaiser - Statecharts in UML 1 Überblick Statecharts Konzepte und Darstellung Übersetzung UML-Statechart-Model

Mehr

Maßgeschneiderte Berechnungstools - Fallbeispiele für Customizinglösungen mit FEM

Maßgeschneiderte Berechnungstools - Fallbeispiele für Customizinglösungen mit FEM Maßgeschneiderte Berechnungstools - Fallbeispiele für Customizinglösungen mit FEM B. Jilka (4a engineering GmbH) P. Reithofer, T. Wimmer (4a engineering GmbH) Seite: 1 / 22 Inhalt Einleitung Parameter

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Inhalt Nachlese Überblick Aufgaben Lernziele bei der Objektorientierten Analyse Abgrenzung der Analyse zum Design als Lernprozeß UML Verhaltensdiagramme

Mehr

Codegenerierung für C167

Codegenerierung für C167 Codegenerierung für C167 Laborversuch Automatische Codegenerierung aus Statemate mit Hilfe von Rhapsody in MicroC. Dozent: Jochen Linkohr, FH Esslingen, Jochen.Linkohr@fht-esslingen.de Der Laborversuch

Mehr

Automatische Optimierung in der lichttechnischen Auslegung von Kfz-Außenbeleuchtung

Automatische Optimierung in der lichttechnischen Auslegung von Kfz-Außenbeleuchtung Technische Universität Ilmenau Fakultät für Elektrotechnik und Informationstechnik Diplomarbeit SS 2007 Automatische Optimierung in der lichttechnischen Auslegung von Kfz-Außenbeleuchtung Daniel Mensch

Mehr

Impact of economics on compiler optimization

Impact of economics on compiler optimization Impact of economics on compiler optimization Seminar Zwischen Sprachen und Codegenerierung SS 2005 Dimitar Dimitrov Betreuer: Rubino Geiß Kurzbeschreibung Arch D. Robinson, einer der Entwickler der KAI

Mehr

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete

Mehr

Model Querys zur Überprüfung von sicherheitsrelevanten Eigenschaften

Model Querys zur Überprüfung von sicherheitsrelevanten Eigenschaften Model Querys zur Überprüfung von sicherheitsrelevanten Eigenschaften Proseminarvortrag Werkzeugunterstützung für sichere Software Jens Knipper Fakultät für Informatik Technische Universität Dortmund 31.

Mehr

EIGENSCHAFTEN VON SPRACHEN

EIGENSCHAFTEN VON SPRACHEN Vorlesung und Übung Universität Paderborn Wintersemester 2016/2017 Dr. Peter Pfahler EIGENSCHAFTEN VON SPRACHEN EWS, WS 2016/17, Pfahler C-1 Einführung Sprachen in der Informatik werden für bestimmte Zwecke

Mehr

AW2. related work. Benedikt Johannsen INF-M2 Anwendung 2 - Sommersemester Juni 2010

AW2. related work. Benedikt Johannsen INF-M2 Anwendung 2 - Sommersemester Juni 2010 AW2 Ambient Intelligence Networks related work INF-M2 Anwendung 2 - Sommersemester 2010 02. Juni 2010 Gliederung Wiederholung AW1 Vergleichbare Projekte Hydra Middleware Amigo Common Information Model

Mehr

Intel Thread Checker

Intel Thread Checker Kurs 1: Ferienakademie 2009 26. September 2009 Gliederung Gliederung Was macht der Thread Checker und warum? Historisches Alternativen Was macht der Thread Checker und warum? Historisches Alternativen

Mehr

Pflichtenheft. Hierarchisches Petrinetz - Komposition

Pflichtenheft. Hierarchisches Petrinetz - Komposition 1. Projekteinführung Pflichtenheft Hierarchisches Petrinetz - Komposition Thema : Petri-Netze im allgemeinen ermöglichen die Modellierung, Analyse und Simulation nebenläufiger Systeme. In Abhängigkeit

Mehr

Institut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik Universität Rostock.

Institut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik Universität Rostock. Seite 1 Optimierung der Verbindungsstrukturen in Digitalen Neuronalen Netzwerken Workshop on Biologically Inspired Methods on Modelling and Design of Circuits and Systems 5.10.2001 in Ilmenau, Germany

Mehr

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

Fach: Softwareentwicklung für technische Systeme (SOFT) Berufsbezogener Lernbereich Schwerpunkt: Informations- und Automatisierungstechnik Fach: Softwareentwicklung für technische Systeme (SOFT) Berufsbezogener Lernbereich Schwerpunkt: Informations- und Automatisierungstechnik Aufgaben und Ziele des Faches: Für den zukünftigen Techniker ist

Mehr

Testen von sicherheitskritischer Embedded Software mit frei verfügbaren Tools. - ein Erfahrungsbericht

Testen von sicherheitskritischer Embedded Software mit frei verfügbaren Tools. - ein Erfahrungsbericht Testen von sicherheitskritischer Embedded Software mit frei verfügbaren Tools - ein Erfahrungsbericht Martin Mühlemann CSA Engineering AG, CH-4500 Solothurn Ausgangslage Embedded-Firmware testen für ein

Mehr

Windows Presentation Foundation

Windows Presentation Foundation Windows Presentation Foundation WS 2013/14 Gliederung Literatur Einführung Inhalt Architektur von Windows Presentation Foundation und das Programmiermodell XAML Steuerelemente und Layout Ressourcen Data

Mehr

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme?

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme? Liebe Leserin, lieber Leser 10 Kapitel i: Schnelleinstieg 13 Kapitel 2: Was sind Programme? 17 Was ist ein Programm? 18 Sprechen Sie Computer? 18 Von der Idee zum Programm 19 Von Windows, Fenstern und

Mehr

Modellgetriebene Softwareentwicklung. Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg

Modellgetriebene Softwareentwicklung. Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg Modellgetriebene Softwareentwicklung Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg Organisation der LV Umfang: 6 SWS, 9 ECTS Punkte Veranstalter: Gabriele Taentzer, Daniel Strüber Kontakt:

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen

Mehr

Service Engineering. Übung 3a Prozessmodellierung mit Hilfe von BPMN. Prof. Dr. Andreas Schmietendorf 1. SoSe 2018 ServEng

Service Engineering. Übung 3a Prozessmodellierung mit Hilfe von BPMN. Prof. Dr. Andreas Schmietendorf 1. SoSe 2018 ServEng Service Engineering Übung 3a Prozessmodellierung mit Hilfe von BPMN Prof. Dr. Andreas Schmietendorf 1 Ziele der Übung Möglichkeiten der BPMN-Notation Umgang mit Workflow-Pattern Verwendung konkreter Werkzeuge

Mehr

Verybench: grafisches Frontend für Testwell CMT++ Code Complexity Measures Tool

Verybench: grafisches Frontend für Testwell CMT++ Code Complexity Measures Tool Verybench: grafisches Frontend für Testwell CMT++ Code Complexity Measures Tool Testwell CMT++ ist ein von der finnischen Firma Testwell Oy (www.testwell.fi) entwickeltes konsolenbasiertes Werkzeug zur

Mehr

Programme erstellen in Java

Programme erstellen in Java Programmieren mit Java Modul 0 Programme erstellen in Java Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Schreiben von Computerprogrammen 3 2.1 Computerprogramme bestehen aus Daten und Instruktionen.......

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 - 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 - 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

Embedded Linux Automatisierung für die Zukunft

Embedded Linux Automatisierung für die Zukunft Embedded Linux Automatisierung für die Zukunft LINUX im industriellen Umfeld Das echtzeitfähige Linux ist ein weit verbreitetes Betriebssystem in der Industrie. Die Echtzeiterweiterung bietet beispielsweise

Mehr

Konvertierung von Projekten von ELOP II V3.5 auf ELOP II V4.1

Konvertierung von Projekten von ELOP II V3.5 auf ELOP II V4.1 Konvertierung von Projekten von ELOP II V3.5 auf ELOP II V4.1 1 Überblick Dieses Dokument beschreibt die Konvertierung eines ungeänderten Projekts. Bei Änderungen am Projekt ist gemäß dem Sicherheitshandbuch

Mehr

Übungsunterlagen zur Übung Softwareeinwicklungswerkzeuge Übungseinheit ait

Übungsunterlagen zur Übung Softwareeinwicklungswerkzeuge Übungseinheit ait Übungsunterlagen zur Übung Softwareeinwicklungswerkzeuge Übungseinheit ait Inhaltsverzeichnis 1. Zielstellung der Übung... 2 2. Die Aufgabenstellungen... 3 2.1. 1. Aufgabe... 3 2.2. 2. Aufgabe... 3 3.

Mehr

Anbindung realer Strecken an Matlab/Simulink

Anbindung realer Strecken an Matlab/Simulink Anbindung realer Strecken an Matlab/Simulink Dipl.-Ing. Mark Müller 1 Inhalt 1. Einführung 2. Konzept des "Hardware-in-the-Loop" 3. Der Real Time Workshop 4. Beispiel: Durchflussregelung 5. Beispiel für

Mehr

Kinmatec. Einfach erfahren.

Kinmatec. Einfach erfahren. 1 Kinmatec. Einfach erfahren. Die Kinmatec GmbH ist spezialisiert auf die Entwicklung von Automatisierungssoftware für Anlagen und Prüfstände. Unsere gesamte Erfahrung als Informatiker und Maschinenbauer

Mehr

Model Driven Development im Überblick

Model Driven Development im Überblick Model Driven Development im Überblick Arif Chughtai Diplom-Informatiker (FH) www.digicomp-academy, Seite 1 September 05 Inhalt Motivation Überblick MDA Kleines Beispiel Werkzeuge www.digicomp-academy,

Mehr

Graphische Entwicklungsumgebung für eine Echtzeitprogrammiersprache

Graphische Entwicklungsumgebung für eine Echtzeitprogrammiersprache Graphische Entwicklungsumgebung für eine Echtzeitprogrammiersprache Masterarbeit Vorgetragen von: Studiengang: Erstprüfer: Zweitprüfer: Andreas Enns MSc Elektro- und Informationstechnik Prof. Dr.-Ing.

Mehr