<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=ICon-L</id>
	<title>ICon-L - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=ICon-L"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=ICon-L&amp;action=history"/>
	<updated>2026-06-04T15:04:57Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=ICon-L&amp;diff=2193141&amp;oldid=prev</id>
		<title>imported&gt;TaxonBot: Bot: Auflösung doppelter toter Links nach https://de.wikipedia.org/w/index.php?title=Wikipedia:Bots/Anfragen&amp;oldid=266185123#Aufl%C3%B6sung_der_doppelten_Toten_Links</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=ICon-L&amp;diff=2193141&amp;oldid=prev"/>
		<updated>2026-04-16T20:27:33Z</updated>

		<summary type="html">&lt;p&gt;Bot: Auflösung doppelter toter Links nach https://de.wikipedia.org/w/index.php?title=Wikipedia:Bots/Anfragen&amp;amp;oldid=266185123#Aufl%C3%B6sung_der_doppelten_Toten_Links&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{SEITENTITEL:iCon-L}}&lt;br /&gt;
{{Infobox Programmiersprache&lt;br /&gt;
 | Name                         = iCon-L&lt;br /&gt;
 | Logo                         = [[Datei:iCon-L 5 BDE 1200.jpg|300px|Blockdiagrammeditor in iCon-L 5]]&lt;br /&gt;
 | Beschreibung                 = grafisches Programmiersystem&lt;br /&gt;
 | Paradigma                    = deklarativ&lt;br /&gt;
 | Erscheinungsjahr             = 1994&lt;br /&gt;
 | Entwickler                   = ProSign GmbH&lt;br /&gt;
 | AktuelleVersion              = 7.0&lt;br /&gt;
 | AktuelleVersionFreigabeDatum = 11.12.2018&lt;br /&gt;
 | AktuelleVorabVersion         = &lt;br /&gt;
 | AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
 | Typisierung                  = stark&lt;br /&gt;
 | Implementierung              = PIC18F, 8051, C166/C167, [[Arm-Architektur|ARM]], Cortex, x186, [[x86-Architektur|x86]], [[PowerPC]]&lt;br /&gt;
 | Dialekte                     = Datenfluss / Ablaufketten / Funktionsbausteinsprache / Programmablaufplan / Domänenspezifische Sprachen&lt;br /&gt;
 | Standardisierungen           = &lt;br /&gt;
 | Beeinflusst_von              = [[Blockdiagramm]]&lt;br /&gt;
 | Beeinflusste                 =&lt;br /&gt;
 | Betriebssystem               = [[Microsoft Windows 2000|Windows&amp;amp;nbsp;2000]], [[Microsoft Windows XP|Windows&amp;amp;nbsp;XP]], [[Microsoft Windows Vista|Windows&amp;amp;nbsp;Vista]], [[Microsoft Windows 7|Windows&amp;amp;nbsp;7]]&lt;br /&gt;
 | Lizenz                       = [[Proprietäre Software|proprietär]]&lt;br /&gt;
 | Website                      = [http://pro-sign.de/index.php www.pro-sign.de]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;iCon-L&amp;#039;&amp;#039;&amp;#039; ist ein [[Grafische Programmiersprache|grafisches Programmiersystem]], das vorwiegend für die Programmierung von [[Mikrocontroller]]n in [[Eingebettete Systeme|eingebetteten Systemen]] verwendet wird.&lt;br /&gt;
&lt;br /&gt;
== Einführung ==&lt;br /&gt;
Die Programmierung der [[Anwendungssoftware]] erfolgt dabei nicht mit Hilfe einer textuellen Programmiersprache, sondern über einen grafischen Editor durch das Zeichnen von [[Blockdiagramm]]en. Der wichtigste Grund für die Verwendung von Blockdiagrammen liegt darin, dass Blockdiagramme schon lange vor der Verbreitung von Computern für die Beschreibung bzw. [[Modell (Wissenschaft)#Informatik|Modellierung]] von technischen Systemen genutzt wurden. Hierdurch können die Programme auch von Spezialisten erstellt werden, die nicht aus der IT-Welt kommen. Des Weiteren wird für eingebettete Systeme häufig eine Anwendungssoftware benötigt, die technisch/physikalische Prozesse beschreiben soll. Diese oftmals kontinuierliche Prozesse, wie z.&amp;amp;nbsp;B. Regelungsalgorithmen oder Signalaufbereitung, können mit Blockdiagrammen ähnlich der [[Continuous Function Chart|Continuous Function Charts (CFC)]] optimal dargestellt werden.&lt;br /&gt;
&lt;br /&gt;
Neben den praktischen Gründen für die Anwendung von Blockdiagrammen gibt es weitere Gründe, die sich aus der [[Softwaretechnik]] ableiten. Die Anwendung fundamentaler Prinzipien der Softwareentwicklung können hierdurch auch von Mitarbeitern und Auftraggebern nachvollzogen werden, die nicht unmittelbar in die Software-Entwicklung einbezogen waren. Dies ist insbesondere für das [[Review (Softwaretest)|Review]], die Abnahme oder auch die [[Zertifizierung]] von Software wichtig.&lt;br /&gt;
&lt;br /&gt;
In iCon-L können Blöcke (Funktionsbausteine) sehr ausdrucksstarke Symbole besitzen und den Zustand bzw. die Werte des Blocks online visualisieren, falls eine Echtzeitkopplung zum Zielsystem existiert. Hiermit soll die [[Semantik]] für die Erstellung und Inbetriebnahme des Anwenderprogramm auf den konkreten Anwendungsbereich (siehe auch: [[Domänenspezifische Sprache]]) zugeschnitten werden. Der Vorteil von anwendungsspezifischen Symbolen liegt in dem sehr hohen Maß an [[Implikation|impliziter]] Information. Wird ein Baustein als Ventil symbolisiert und mit anderen Bausteinen verbunden, weiß der Fachmann, was sich hinter diesem Baustein verbirgt und in welcher Beziehung er zur Umwelt steht.&lt;br /&gt;
&lt;br /&gt;
Durch die Verwendung von fachspezifischen Beschreibungen bzw. Modellen können die Informationen aus der Anforderungsspezifikation unmittelbar in die Programmierumgebung übernommen werden. Das Anforderungsmodell selbst wird zur treibenden Kraft in der Programmierung. Die Anforderungsspezifikation ist hierdurch immer aktuell. Die Wartung und Inbetriebnahme von Software wird durch diese Methode spürbar erleichtert.&lt;br /&gt;
&lt;br /&gt;
iCon-L ist im engeren Sinne kein geschlossenes Programmiersystem, sondern ein Framework bzw. Software-Technologiepaket für die Entwicklung geräte- und anwendungsspezifischer Konfigurations- und Programmierlösungen. Das Framework besitzt zunächst noch keinen Bezug zu einer konkreten Hardware oder einer konkreten Anwendung (Ausprägung). Dieser Bezug wird erst durch die system- bzw. anwendungsspezifische Konfiguration bzw. Entwicklung von PlugIns und Bibliotheken hergestellt. Fast alle PlugIns, Bausteinbibliotheken und IDE-Einstellungen sind projektbezogene Konfigurationen. Somit passt sich der Framework nur durch das Laden eines Projektes und der darin eingebetteten Bibliotheken automatisch auf die Bedingungen für unterschiedlichste Hardwaresysteme und Anwendungen an.&lt;br /&gt;
&lt;br /&gt;
== Ziele ==&lt;br /&gt;
[[Datei:Kontextdigramm-iCon-L.png|mini|Beispiel für ein Kontextdiagramm in iCon-L 4.5]]&lt;br /&gt;
[[Datei:iCon-L 5 BDE 1200 Online.jpg|mini|Beispiel für die Online-Inbtriebnahme mit iCon-L 5]]&lt;br /&gt;
[[Datei:Data Page Architectur iCon-L.png|mini|Umsetzung der Data Page Architectur in iCon-L]]&lt;br /&gt;
&lt;br /&gt;
In iCon-L werden vorwiegend [[Deklarative Programmierung|deklarative Programmiersprachen]] realisiert. Ein wesentliches Ziel von iCon-L ist die Verbesserung der [[Softwarequalität]] durch die Verwendung anerkannter Methoden und Prinzipien für das [[Softwareengineering]]. Zugleich sollen mit iCon-L [[Vorgehensmodell zur Softwareentwicklung|Vorgehensmodelle zur Softwareentwicklung]] wie z.&amp;amp;nbsp;B. das [[V-Modell]] praxisorientiert umgesetzt werden.&lt;br /&gt;
&lt;br /&gt;
=== Programmiersystem für Ingenieure und Techniker ===&lt;br /&gt;
Das zentrale Ziel von iCon-L ist die Bereitstellung eines Programmiersystems, mit dem Ingenieure und Techniker in einer Beschreibungssprache programmieren können, die ihrer gewohnten Sicht auf technisch, physikalische Systeme entspricht. Mit iCon-L sollen Fachleute unterschiedlicher technologischer Gebiete unmittelbar an die Programmierung herangeführt werden.&lt;br /&gt;
=== Kommunikation in interdisziplinären Teams ===&lt;br /&gt;
[[Eingebettetes System|Eingebettete Systeme]] sind naturgemäß sehr stark in technologische Prozesse bzw. in einen technischen Kontext eingebunden. Um die Software für eingebettete Systeme zu entwickeln, ist es erforderlich, die mechanischen, physikalischen, biologischen oder chemischen Prozesse genau zu kennen. In der Ingenieurdisziplin besteht die Schwierigkeit darin, in einer großen Anzahl von Bereichen das erforderliche Know-how aufzubauen. Eingebettete Systeme werden daher in Teams aus Spezialisten entwickelt, wobei die Kommunikation zwischen den Team-Mitgliedern an Bedeutung gewinnt. iCon-L bietet mit dem Anzsatz der Modellierung in [[Domänenspezifische Sprache|domänenspezifischen Sprachen]] die Grundlage für die Kommunikation in interdisziplinären Teams.&lt;br /&gt;
&lt;br /&gt;
=== Modellgetriebene (modellbasierte) Softwareentwicklung für &amp;#039;&amp;#039;Eingebettete Systeme&amp;#039;&amp;#039; ===&lt;br /&gt;
iCon-L bietet einen Ansatz, die [[modellgetriebene Softwareentwicklung]] auch für sehr kleine Controller in [[Eingebettetes System|eingebetteten Systemen]] verfügbar zu machen. So ist iCon-L bereits für Systeme verfügbar, die lediglich über 4kByte RAM und 32 kByte Programmspeicher verfügen. Im Gegensatz zu vielen anderen modellbasierten Programmiersystemen wird in iCon-L aber &amp;#039;&amp;#039;&amp;#039;kein&amp;#039;&amp;#039;&amp;#039; C-Code generiert. In iCon-L wird die Modellsicht nie verlassen, es werden alle Entwicklungsphasen in grafischer Form umgesetzt.&lt;br /&gt;
&lt;br /&gt;
=== Domänenspezifische Sprachen ===&lt;br /&gt;
iCon-L ist von seiner gesamten Konzeption so ausgelegt, dass es als Fundament für die Entwicklung von domänenspezifischen Sprachen genutzt werden kann. In iCon-L wird sehr bewusst auf standardisierte Bausteine verzichtet. Die Bausteine werden weitgehend an die Anforderungen der spezifischen Anwendung orientiert. Über eine universelle Makrobaustein-Technik kann sehr schnell eine eigene domänenspezifische [[Semantik]] der Bausteine erstellt werden.&lt;br /&gt;
(siehe Abbildung : Kontextdiagramm)&lt;br /&gt;
&lt;br /&gt;
=== Entwicklung neuer Architekturmuster ===&lt;br /&gt;
Auf Grund der Offenheit von iCon-L und der damit verbundenen Möglichkeit zur Spezifikation eigener Sprachmittel, wird iCon-L auch für die Entwicklung neuer [[Architekturmuster]] wie z.&amp;amp;nbsp;B. der Data Page Architectur (DPA) genutzt.&lt;br /&gt;
&lt;br /&gt;
== Technisches Konzept ==&lt;br /&gt;
Die technische Umsetzung von iCon-L basiert auf zwei grundlegenden Prinzipien.&lt;br /&gt;
&lt;br /&gt;
* Die Anwendungsprogrammierung ist streng von der Systemprogrammierung (Firmwareprogrammierung) getrennt.&lt;br /&gt;
* Der grafische Editor für die Anwendungsprogrammierung besitzt keine feste Bindung an bestimmte Funktionsbausteine (Blöcke). Alle Funktionsbausteine werden erst während der Laufzeit durch das Laden eines Projektes in den Editor eingebunden.&lt;br /&gt;
&lt;br /&gt;
Funktionsbausteine sind in iCon-L die kleinste Softwareeinheit. Die Zielfunktion, welche der Mikrocontroller ausführen soll, wird in [[C (Programmiersprache)|C]] oder [[C++]] geschrieben. Die Programmierung der Funktionsbausteine wird in iCon-L der Systemprogrammierung zugerechnet und sollte von Mitarbeitern durchgeführt werden, die entsprechende Erfahrungen in der Systemprogrammierung mit C und C++ besitzen. Für jeden Funktionsbausteintyp wird eine C-Funktion implementiert und zusammen mit dem iCon-L-Laufzeitumgebung für den entsprechenden Mikrocontroller [[Kompilierung|kompiliert]] und [[Linker (Computerprogramm)|gelinkt]]. Der Systemprogrammierer benutzt für das Erzeugen der Laufzeitumgebung + alle anwendbaren Funktionsbausteintypen die C/C++ – Entwicklungsumgebung für den jeweiligen Mikrocontroller. Für die Fehlersuche im System stehen weiterhin alle Funktionalitäten der Werkzeugkette für die Programmierung des Controllers zur Verfügung. Die Laufzeitumgebung inklusive aller Funktionsbausteintypen wird in kompilierter [[Maschinensprache]] als [[Firmware]] auf den Mikrocontroller übertragen.&amp;lt;ref&amp;gt;{{Toter Link |datum=2018-04 |url=http://www.pro-sign.de/html/I2005/Produkte/body_laufzeitkern.html |text=iCon-L Framework Laufzeitumgebung}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit der Anwendungsprogrammierung wird in der Regel erst begonnen, wenn der erforderliche Funktionsbausteinvorrat fertig entwickelt, vollständig getestet und dokumentiert ist. Für Testzwecke können aber auch Funktionsbausteine eingebunden werden, die lediglich bezüglich der verfügbaren Ein- und Ausgänge spezifiziert worden sind.&lt;br /&gt;
&lt;br /&gt;
Für die Anwendungsprogrammierung werden nun die in der Firmware vorliegenden, Funktionsbausteintypen zu einer Anwendersoftware verknüpft. Obwohl in der Firmware der Funktionsbausteintyp nur ein Mal als Funktion hinterlegt ist, kann der Anwendungsprogrammierer beliebig viele Bausteine bzw. Baustein-Instanzen nutzen. Die IDE erzeugt automatisch die entsprechenden Datenstrukturen für die Instanzierung der Bausteine. Im Anwenderprogramm können Funktionsbausteine auf grafischer Ebene zu neuen, komplexeren Bausteinen (Makro-Bausteine) verknüpft werden. Die hierbei entstehenden (Makro-)Bausteine können wiederum wie Funktionsbausteine in anderen Projekten genutzt werden.&lt;br /&gt;
&lt;br /&gt;
Für die Abarbeitung der Anwendersoftware im Mikrocontroller wird ein sehr einfaches Konzept der [[Verkettete Liste|verketteten Liste]] genutzt. Ein sogenannter Dispatcher (siehe auch Lit.) arbeitet hintereinander die Liste ab und ruft hierbei die entsprechenden C-Funktionen mit den instanzierten Datenstrukturen für Eingänge, Ausgänge, Parameter und interne Speicherelemente auf. Da in der Programmiersprache C ein Zeiger sehr einfach in einen Funktionsaufruf umgewandelt werden kann und die C Funktion bereits vollständig im Maschinensprache übersetzt vorliegt, ist die Abarbeitung des Anwenderprogramms nur geringfügig langsamer als ein übersetztes C-Programm. Im Vergleich zu einem Programm mit sehr vielen Aufrufschichten kann die Anwendungssoftware sogar schneller abgearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
Da der Mikrocontroller nur sehr wenig zusätzliche Arbeit für das Abarbeiten des Anwenderprogramms leisten soll, erzeugt die IDE eine Verkettungsliste, die bereits die realen Speicherbedingungen im Zielsystem abbildet. Um dies zu realisieren, fordert die IDE den Mikrocontroller auf, eine genaue Gerätebeschreibungsdatei zu senden. In dieser Datei steht die Aufteilung des Speichers, welche Funktionensbausteintypen der Laufzeitkern kennt und vor allen Dingen um was für einen Controller es sich handelt, 8,16 oder 32 Bit und in welcher [[Byte-Reihenfolge]] der Speicher organisiert ist. Aus diesen Informationen kann die IDE sehr einfach eine Verkettungsliste erzeugen, die genau auf die Anforderungen des Controllers zugeschnitten ist.&lt;br /&gt;
&lt;br /&gt;
== Zielsysteme ==&lt;br /&gt;
[[Datei:Mini-SPS STG500.jpg|mini|Mini-SPS auf PIC18F Basis der Firma Barth Elektronik]]&lt;br /&gt;
&lt;br /&gt;
Eine Besonderheit von iCon-L ist es, dass es als grafisches Programmiersystem für sehr kleine Mikrocontroller eingesetzt werden kann. So ist der Laufzeitkern bereits auf Systemen einsetzbar, die über 4 KByte [[Random-Access Memory|RAM]] und 32 KByte [[Flash-Speicher]] verfügen:&lt;br /&gt;
&lt;br /&gt;
Auf folgende Mikrocontroller wurde der iCon-L Laufzeitkern erfolgreich portiert:&amp;lt;ref&amp;gt;Firmenschrift ProSign Serie 1-F7 Messe IPC/SPS/DRIVES Nürnberg 2010.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8 Bit&lt;br /&gt;
* [[Intel MCS-51|8051]]&lt;br /&gt;
* PIC18F von der Firma [[Microchip Technology]]&lt;br /&gt;
&lt;br /&gt;
16 Bit&lt;br /&gt;
* [[Intel 80186|x186/IPC@CHIP]] von der BECK&lt;br /&gt;
* [[C166|C166/167]] von [[Infineon]]&lt;br /&gt;
&lt;br /&gt;
32 Bit&lt;br /&gt;
* [[Arm-Architektur|Arm]]7/9 von [[NXP Semiconductors|NXP]], [[Atmel]], [[Analog Devices]], [[STMicroelectronics]]&lt;br /&gt;
* [[PowerPC]], [[Coldfire]] von [[freescale]]&lt;br /&gt;
* [[x86-Prozessor]]en von [[Intel]], [[AMD]]&lt;br /&gt;
* [[Intel Atom|Atom]] von Intel&lt;br /&gt;
&lt;br /&gt;
Ohne direkten Bezug auf einen konkreten Prozessor existieren der iCon-L-Laufzeitkern auch für unterschiedliche Betriebssysteme:&lt;br /&gt;
&lt;br /&gt;
* [[µLinux]]&lt;br /&gt;
* [[Linux]] mit [[RTAI]]-Echtzeiterweiterung&lt;br /&gt;
* [[Windows CE]]&lt;br /&gt;
* [[QNX]]&lt;br /&gt;
* [[RT-Kernel32]]&lt;br /&gt;
&lt;br /&gt;
== Verbreitung im Markt ==&lt;br /&gt;
[[Datei:hda10 iCon-L.jpg|mini|Anwendung von iCon-L in der Medizintechnik&amp;lt;br /&amp;gt; Automatisierung eines Hemodialyser Analyser&amp;lt;br /&amp;gt;IBP Medical GmbH]]&lt;br /&gt;
&lt;br /&gt;
iCon-L wird von vielen Unternehmen der Industrie als Inhaus-Engineering-Lösung eingesetzt. Weiterhin setzen eine Reihe von Unternehmen iCon-L als OEM Werkzeug unter eigenem Namen mit den eigenen Steuerungslösungen ein.&lt;br /&gt;
&lt;br /&gt;
Die Haupteinsatzgebiete sind:&lt;br /&gt;
&lt;br /&gt;
* Verkehrstechnik&lt;br /&gt;
* Prüfstandsautomatisierung&lt;br /&gt;
* Gebäudeautomation&lt;br /&gt;
* Medizintechnik&lt;br /&gt;
* Forschung und Ausbildung&lt;br /&gt;
* Laborautomatisierung&lt;br /&gt;
&lt;br /&gt;
iCon-L ist aus dem Produkt &amp;#039;&amp;#039;Prosign&amp;#039;&amp;#039; 1988–1992 hervorgegangen, aktuelle Version ist zurzeit (Stand Januar 2014) &amp;#039;&amp;#039;iCon-L 6.0&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Folgende Produkte basieren auf dem Softwareframework iCon-L:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;test.con&amp;#039;&amp;#039;: Gantner Instruments &amp;#039;&amp;#039;Prüfstandsautomation, Monitoring&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;GDS&amp;#039;&amp;#039;: GRAF-SYTECO &amp;#039;&amp;#039;HMI-Programmierung&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;DACHSview&amp;#039;&amp;#039; : Steinhoff &amp;#039;&amp;#039;Echtzeitapplikationen&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;IPOCS&amp;#039;&amp;#039;: SysMik &amp;#039;&amp;#039;Gebäudeautomation&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;SprintProsi&amp;#039;&amp;#039;: Ing. Büro Linsenbarth &amp;#039;&amp;#039;Anlagensimulation&amp;#039;&amp;#039;&lt;br /&gt;
* [[Lucky Logic]]&lt;br /&gt;
* &amp;#039;&amp;#039;miCon-L&amp;#039;&amp;#039;: Barth Elektronik GmbH &amp;#039;&amp;#039;Mini-SPS in der Fahrzeug- und Maschinenbauindustrie&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;PACstudio: &amp;#039;&amp;#039; ProSign GmbH &amp;#039;&amp;#039;Programmierwerkzeug für PACcubes-Geräte&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Neben den Anwendern der oben genannten Programmierwerkzeuge wird iCon-L weiterhin als Inhaus-[[Programmierwerkzeug]] von folgenden Unternehmen eingesetzt:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;Kiepe&amp;#039;&amp;#039; Electric (Verkehrstechnik)&lt;br /&gt;
* &amp;#039;&amp;#039;messMa&amp;#039;&amp;#039; (Verkehrstechnik; [[VT 1.0/1.5-ETCS]])&lt;br /&gt;
* &amp;#039;&amp;#039;Eckert &amp;amp; Ziegler AG&amp;#039;&amp;#039; (Medizintechnik)&lt;br /&gt;
* &amp;#039;&amp;#039;IBP Medical&amp;#039;&amp;#039; (Medizintechnik)&lt;br /&gt;
* &amp;#039;&amp;#039;Otto-von-Guericke-Universität Magdeburg&amp;#039;&amp;#039; (Energietechnik)&lt;br /&gt;
* &amp;#039;&amp;#039;Martin-Luther-Universität Halle&amp;#039;&amp;#039; (Forschung&amp;lt;ref&amp;gt;{{Webarchiv|url=http://aut.informatik.uni-halle.de/forschung/drittmitelprojekte/vaias |wayback=20110828024717 |text=Forschungsprojekt UNI Halle |archiv-bot=2025-07-13 20:13:36 InternetArchiveBot }}&amp;lt;/ref&amp;gt;)&lt;br /&gt;
* &amp;#039;&amp;#039;Fachhochschule Köln&amp;#039;&amp;#039; (Verkehrstechnik, Regelungstechnik)&lt;br /&gt;
* &amp;#039;&amp;#039;NSD-Fusion&amp;#039;&amp;#039; (Forschungsprojekt CERN&amp;lt;ref&amp;gt;{{Webarchiv|url=http://regenfus.home.cern.ch/regenfus/zunf.htm |wayback=20120524061735 |text=Forschungsbericht CERN |archiv-bot=2025-07-13 20:13:36 InternetArchiveBot }}&amp;lt;/ref&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
{| class=&amp;quot;wikitable float-right&amp;quot; style=&amp;quot;margin-right:1em;&amp;quot;&lt;br /&gt;
|+Versionen&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|&amp;#039;&amp;#039;&amp;#039;iCon-L IDE (Editor, Linker, Kommunikationsserver, Treiber)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
|Datum||Name||Version&lt;br /&gt;
|-&lt;br /&gt;
| 11.12.2018||iCon-L||V7.0.0.0&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|16.02.2015&lt;br /&gt;
|iCon-L&lt;br /&gt;
|V6.2.0.0&lt;br /&gt;
|-&lt;br /&gt;
|11.10.2013&lt;br /&gt;
|iCon-L&lt;br /&gt;
|V6.0.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 16.05.2012||iCon-L||V5.0.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 21.12.2010||iCon-L||V4.5.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 16.03.2009||iCon-L||V4.3.2.0&lt;br /&gt;
|-&lt;br /&gt;
| 14.01.2009||iCon-L||V4.3.1.0&lt;br /&gt;
|-&lt;br /&gt;
| 25.02.2008||iCon-L||V4.3.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 12.03.2007||iCon-L||V4.2.3.0&lt;br /&gt;
|-&lt;br /&gt;
| 25.04.2006||iCon-L||V4.2.2.0&lt;br /&gt;
|-&lt;br /&gt;
| 27.01.2006||iCon-L||V4.2.1.0&lt;br /&gt;
|-&lt;br /&gt;
| 16.03.2005||iCon-L||V4.2.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 18.11.2004||iCon-L||V4.1.4.1&lt;br /&gt;
|-&lt;br /&gt;
| 05.05.2004||iCon-L||V4.1.4.0&lt;br /&gt;
|-&lt;br /&gt;
| 01.04.2004||iCon-L||V4.1.3.0&lt;br /&gt;
|-&lt;br /&gt;
| 20.11.2003||iCon-L||V4.1.2.2&lt;br /&gt;
|-&lt;br /&gt;
| 26.06.2003||iCon-L||V4.1.0.0&lt;br /&gt;
|-&lt;br /&gt;
| 09.04.2002||iCon-L||V4.0.0.7&lt;br /&gt;
|-&lt;br /&gt;
| 05.10.2001||iCon-L||V4.0.0.2&lt;br /&gt;
|-&lt;br /&gt;
| 22.06.2001||iCon-L||V3.0.0.4&lt;br /&gt;
|-&lt;br /&gt;
| 15.03.2000||iCon-L||V3.0&lt;br /&gt;
|-&lt;br /&gt;
| 28.07.1999||iCon-L||V2.61E&lt;br /&gt;
|-&lt;br /&gt;
| 12.03.1999||iCon-L||V2.61&lt;br /&gt;
|-&lt;br /&gt;
| 28.01.1999||iCon-L||V2.60&lt;br /&gt;
|-&lt;br /&gt;
| 18.11.1998||iCon-L||V2.54&lt;br /&gt;
|-&lt;br /&gt;
| 01.07.1998||iCon-L||V2.51 - 16/32 Bit&lt;br /&gt;
|-&lt;br /&gt;
| 08.08.1997||iCon-L||V2.50 - 16/32 Bit&lt;br /&gt;
|-&lt;br /&gt;
| 1996||iCon-L||V2.40&lt;br /&gt;
|-&lt;br /&gt;
| 1996||iCon-L||V2.30&lt;br /&gt;
|-&lt;br /&gt;
| 1995||iCon-L||V2.20&lt;br /&gt;
|-&lt;br /&gt;
| 1994||iCon-L||V2.10&lt;br /&gt;
|-&lt;br /&gt;
| 1993||OFS||V1.00&lt;br /&gt;
|-&lt;br /&gt;
| 1988–1992||PROSIGN||&lt;br /&gt;
|-{{Absatz}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Wurzeln von iCon-L liegen bereits sehr weit zurück. So wurde eine interpretergesteuerte Verkettung von Funktionsbausteinen (Modulverbindungsliste) bereits vor 1985 in unterschiedlichen Mikroprozessorsteuerungen der DDR verwendet.&lt;br /&gt;
&lt;br /&gt;
* EAW Compact S2000 vom VEB Elektro-Apparate-Werke Berlin-Treptow, Sprache PROMAR 5000&lt;br /&gt;
* Mikroprozessorregler RBS 05 vom VEB Wetron-Weida, Sprache MARCO&lt;br /&gt;
* ursamar 5000/5001 vom VEB Werton-Weida, Sprache MARCO&lt;br /&gt;
&lt;br /&gt;
Die Realisierung der Module und des Laufzeitkerns erfolgen hier noch vollständig in Assembler.&lt;br /&gt;
&lt;br /&gt;
Seit 1992 wurde für die Programmierung des Laufzeitsystems erstmals C als Systemprogrammiersprache genutzt. Bei den ersten Geräten wurden die Anwenderprogramme allerdings noch textuell programmiert (Hardware Z80, MC68332). Anfangs wurde die Modulverbindungsliste in [[ASCII]] mit einem normalen Texteditor erstellt.&lt;br /&gt;
&lt;br /&gt;
Für den grafischen Editor liegen die Wurzeln ebenfalls schon in den 1980er Jahren. Bereits 1988 wurde das grafische Simulationssystem PROSIGN vorgestellt.&amp;lt;ref&amp;gt;5. Symposium Simulationstechnik, Aachen, 28.–30. September 1988.&amp;lt;/ref&amp;gt; Dieser Editor lief allerdings nur auf einer [[Unix]]-Workstation.&lt;br /&gt;
1993 wurde damit begonnen, den Editor und die weiteren IDE-Module auf [[Windows]] zu portieren.&lt;br /&gt;
&lt;br /&gt;
Anfang 1994 wurde mit der MR92 von ABB das erste Steuerungssystem vollständig grafisch programmiert.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Strukturierte Analyse]]&lt;br /&gt;
* [[eingebettetes System]]&lt;br /&gt;
* [[Anlagensimulation]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Andreas Wandenälis: &amp;#039;&amp;#039;Programmiersystem macht aus Sensoren Edge-Controller.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;ets elektronik &amp;amp; automation.&amp;#039;&amp;#039; 11-2018, S. 28.&lt;br /&gt;
* U. Witfer: &amp;#039;&amp;#039;GRAF-SYTECO: Softwareentwicklung für Bediengeräte – es kann so einfach sein.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Elektronik Informationen.&amp;#039;&amp;#039; 04-2009, S. 62.&lt;br /&gt;
* St. Mertens: [http://pro-sign.de/Downloads.html?file=files/Common/downloads/Kaffeemaschine%20systematisch%20programmieren%20V1.0.pdf &amp;#039;&amp;#039;Kaffeemaschine systematisch programmieren.&amp;#039;&amp;#039;] (PDF; 1,8&amp;amp;nbsp;MB) (= &amp;#039;&amp;#039;Firmenschrift ProSign.&amp;#039;&amp;#039; 2008).&lt;br /&gt;
* St. Mertens: [http://pro-sign.de/Downloads.html?file=files/Common/downloads/net2106-Kleinststeuerungen%20modellbasiert%20programmieren.pdf &amp;#039;&amp;#039;Systembaukasten für Kleinststeuerungen mit modellbasierter grafischer Programmierung.&amp;#039;&amp;#039;] (PDF; 1,1&amp;amp;nbsp;MB). In: &amp;#039;&amp;#039;[[SPS-Magazin]].&amp;#039;&amp;#039; 3/2006.&lt;br /&gt;
* ProSign GmbH [http://pro-sign.de/Downloads.html?file=files/Common/downloads/ProSign%20Mitteldeutsche%20Mitteilungen%203%202005.pdf &amp;#039;&amp;#039;Rohstoff Software richtig nutzen.&amp;#039;&amp;#039;] (PDF; 59&amp;amp;nbsp;kB). In: &amp;#039;&amp;#039;Mitteldeutsche Mitteilungen.&amp;#039;&amp;#039; 3/2005, S. 9.&lt;br /&gt;
* R. Kehrer: &amp;#039;&amp;#039;Intelligente Lösungen für autarke Anwendungen in der Prüftechnik.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;MessTec &amp;amp; Automation.&amp;#039;&amp;#039; 09/2004, S. 78–79, GIT VERLAG.&lt;br /&gt;
* T Wust: Podiumsvortrag Messe IPC/SPS/Drives 2002.&lt;br /&gt;
* W. Günther: &amp;#039;&amp;#039;Entwicklung einer offenen Fachsprache für ein freiprogrammierbares Steuer- und Regelgerät auf Mikroprozessorbasis.&amp;#039;&amp;#039; Dissertation. Universität Magdeburg, 1988.&lt;br /&gt;
* W. Günther, B. Mattner: &amp;#039;&amp;#039;iCon-L für die Hardware-in-the-Loop-Simulation.&amp;#039;&amp;#039; A&amp;amp;D-Kompendium, 2001.&lt;br /&gt;
* W. Günther, St. Mertens: &amp;#039;&amp;#039;iCon-L – Einsatz bei Soft-SPS, bei Meß-, Steuer- und Regelgeräten und in der Anlagensimulation.&amp;#039;&amp;#039; A&amp;amp;D Kompendium 1999&lt;br /&gt;
* W. Günther: &amp;#039;&amp;#039;Komponentenbasierte Anlagenmodellierung mit iCon-L.&amp;#039;&amp;#039; Tagungsband zum Kongress SPS/IPC/DRIVES’98 Hüthig 1998, S. 714–715.&lt;br /&gt;
* St. Enderle, W. Guenther, H-J. Hilscher, H. Kenn, xROB-S and iCon-X: Flexible Hardware, Visual Programming and Software Component Reuse. In RoboCup 2008: Robot Soccer World Cup XII pp 485-494. Springer, Berlin, Heidelberg 2009. Print ISBN  978-3-642-02920-2 Online ISBN  978-3-642-02921-9 ([https://link.springer.com/chapter/10.1007%2F978-3-642-02921-9_42 https://link.springer.com/chapter/10.1007%2F978-3-642-02921-9_42)]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://icon-l.de/ Dokumentationsseite von iCon-L]&lt;br /&gt;
* [http://www.pro-sign.de/ Offizielle Website der ProSign GmbH]&lt;br /&gt;
* [http://wiki.pro-sign.de/psdokuwiki/doku.php/start Eigenständiges Wiki zu iCon-L]&lt;br /&gt;
* [http://testcon.info/ Dokumentationsseite von test.con]&amp;lt;ref&amp;gt;{{Internetquelle |url=http://testcon.info/home_testcon_de.html |titel=test.con Home - test.con |zugriff=2018-12-11}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [http://micon-l.de/ Dokumentationsseite von miCon-L]&lt;br /&gt;
* [http://paccubes.de/ Dokumentationsseite PACcubes]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Speicherprogrammierbare Steuerung]]&lt;br /&gt;
[[Kategorie:Programmierwerkzeug]]&lt;br /&gt;
[[Kategorie:Integrierte Entwicklungsumgebung]]&lt;br /&gt;
[[Kategorie:Visuelle Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>imported&gt;TaxonBot</name></author>
	</entry>
</feed>