OpenPLC
Der meistgenutzte Open-Source-Stack der Industrieautomatisierung.
Eine moderne IDE nach IEC 61131-3, eine produktionstaugliche Runtime und der Compiler, der beides verbindet.
- 2014
- Open Source seit
- 1 Mio.+
- Downloads
- 150+
- Länder
- IEC 61131-3
- Edition 3 unterstützt
Sicher durch Bauweise, nicht durch Verschleierung
Öffentlicher Quellcode seit 2014, gehärtet von allen, die ihn je eingesetzt haben.
Verschleierung ist keine Sicherheit
Eine geschlossene Runtime ist nicht sicherer, weil niemand sie lesen kann, sondern nur weniger geprüft. Ihre Fehler sind trotzdem da, und der Hersteller ist der Einzige, der nach ihnen suchen kann.
Am Quellcode prüfbar
Ihr Sicherheitsteam liest den Code, der Ihren Prozess steuert, und nicht ein Datenblatt, das ihn beschreibt. Unseres kann das ebenso, und jedes andere auch.
Im Feld bewährt
1 Mio.+ Downloads in 150+ Ländern. Mehr Hardware, mehr Sonderfälle und mehr Belastung, als ein Laborprogramm je nachstellen könnte.
Offen behoben
Fehler werden öffentlich gemeldet, behoben und geprüft. Sie sehen, was falsch war, wann es behoben wurde und was sich genau geändert hat.
Drei Teile, eine Toolchain
Sie schreiben die Logik im Editor, StruC++ übersetzt sie, und die Runtime führt sie aus. Wählen Sie einen Teil, um ihn im Detail zu sehen.
OpenPLC Editor herunterladen
Die Open-Source-SPS-Programmierumgebung für die Industrieautomatisierung. Verfügbar für Windows, macOS und Linux.
Ein SPS-Simulator ist eingebaut: Sie führen Ladder, ST und FBD mit einem Live-Debugger aus und prüfen Ihre Logik, bevor Hardware im Spiel ist.
Neu
CoPilot im Editor
Autonomy CoPilot arbeitet auch im Editor: Er vervollständigt den Code beim Tippen, und im Chat beschreiben Sie, was Sie brauchen, er schreibt es, und Sie prüfen und bestätigen das Ergebnis, bevor es in Ihr Projekt übernommen wird.
Mit dem Autonomy Edge Konto anmelden
Melden Sie sich bei Bedarf mit einem Autonomy Edge Konto an, holen Sie die dort gespeicherten Projekte in den Editor und halten Sie Ihren Code dabei versioniert.
Ausführung aus dem Quellcode
Voraussetzungen
Git
Versionsverwaltung
Node.js x64
Version >= 20
Schritt für Schritt
1. Repository klonen
git clone https://github.com/Autonomy-Logic/openplc-editor.git cd openplc-editor
2. Abhängigkeiten installieren
npm install
3. Entwicklungsserver starten
npm run start:dev
Nützliche Links
Der Structured-Text-Compiler hinter OpenPLC v4. IEC 61131-3 Edition 3 in voller Breite, übersetzt in C++17, das Sie wirklich lesen können.
Aus Structured Text wird idiomatisches C++17 mit echten Klassen, virtuellen Methoden und Templates, sodass Sie es debuggen, testen und in ein bestehendes C++-Projekt übernehmen können.
IEC 61131-3 Edition 3
Ein breiter Teilumfang der Edition 3 plus verbreitete CODESYS-Erweiterungen: POINTER TO, typisierte Literale und 64-Bit-Typen, mit direktem Import von CODESYS-Bibliotheken.
Echte Objektorientierung
Klassen, virtuelle Methoden, EXTENDS und IMPLEMENTS, Zugriffsmodifizierer, abstrakte und finale Deklarationen sowie Eigenschaften mit GET- und SET-Zugriff.
Unit-Tests, in ST geschrieben
Ein eingebautes Test-Framework mit SETUP und TEARDOWN, Mocking, Assertions und Zeitvorlauf. Zum Ausführen wird keine SPS-Hardware gebraucht.
Interaktive REPL
Gehen Sie ein kompiliertes Programm Schritt für Schritt durch, setzen Sie Eingänge, prüfen Sie Variablen und lesen Sie ST und erzeugtes C++ nebeneinander.
Standardbibliothek
Über 80 mathematische Funktionen und Hilfsfunktionen, dazu Timer, Zähler und Flankenerkennung, in ST implementiert und wie Ihr eigener Code übersetzt.
Keine Laufzeitabhängigkeiten
Ein Compiler als einzelne Binärdatei und eine reine Header-Runtime in C++, die sich mit g++, clang++ oder MSVC bauen lässt.
Lizenzierung
Der Compiler steht unter GPL-3.0. Die C++-Runtime und die Standardbibliotheken stehen unter GPL-3.0 mit Runtime Library Exception, sodass Sie kompilierte Programme unter einer Lizenz Ihrer Wahl weitergeben können.
Moderne Architektur
Vollständig neu konzipierte Architektur, entwickelt für die Anforderungen der modernen industriellen Automatisierung.
Echtzeit-Ausführung
Prioritätsbasiertes SCHED_FIFO-Scheduling liefert deterministische Scan-Zyklen für eine zuverlässige Steuerung.
WebSocket-Debugging
Die sichere WebSocket-Debug-Schnittstelle ermöglicht das Beobachten und Forcen von Variablen in Echtzeit.
Plugin-System
Erweiterbares Plugin-System mit Unterstützung für Python- und C/C++-Plugins für Hardware-E/A und ICS-Protokolle.
Multiarchitektur
Wo Linux läuft, läuft auch die OpenPLC Runtime. Volle Unterstützung für mehrere Architekturen.
Integrierte Sicherheit
TLS-Verschlüsselung für die gesamte Kommunikation und JWT-basierte Authentifizierung von Grund auf.
Das Beste aus beiden Welten
Open Source zum Lernen, Testen und Entwickeln. Die Autonomy Edition, wenn eine Anlage daran hängt.
Community Edition
Zum Lernen, Testen und Entwickeln. Dieselbe Runtime, die die Community seit einem Jahrzehnt einsetzt.
- Vollständiger Quellcode, keine gesperrten Funktionen
- MIT für die Runtime, GPL-3.0 für Editor und Compiler: nutzen, ändern und weitergeben
- Unterstützung über das Community-Forum
- Weit verbreitet in Forschung, Lehre und Entwicklung
Autonomy Edition
Für den geschäftskritischen Produktivbetrieb: Sicherheit nach IEC 62443, proprietäre Treiber und Industrieprotokolle, und Support dahinter.
- Kommerzieller Einsatz und Produktivbetrieb
- Entwickelt nach den Sicherheitsnormen IEC 62443-4-1 und IEC 62443-4-2
- Proprietäre Gerätetreiber und industrielle Kommunikationsprotokolle
- Kommerzieller Support und Wartung durch Autonomy
Installation
Wählen Sie die Installationsmethode, die am besten zu Ihrer Umgebung passt.
Native Installation unter Linux
Für die beste Performance auf Linux-Systemen installieren Sie die Runtime nativ.
Klonen und installieren
git clone https://github.com/Autonomy-Logic/openplc-runtime.git cd openplc-runtime sudo ./install.sh
Das Installationsskript erkennt automatisch Ihre Linux-Distribution, installiert alle erforderlichen Abhängigkeiten, erstellt virtuelle Python-Umgebungen, kompiliert die Runtime und richtet einen systemd-Dienst ein, der die Runtime automatisch startet und verwaltet.
Nach der Installation lauscht die Runtime auf Port 8443 auf Verbindungen vom OpenPLC Editor.
Verwaltung des Runtime-Dienstes
Status prüfen
sudo systemctl status openplc-runtime.service
Starten
sudo systemctl start openplc-runtime.service
Stoppen
sudo systemctl stop openplc-runtime.service
Neu starten
sudo systemctl restart openplc-runtime.service
Wo der Editor hineinpasst
Dieselbe Toolchain läuft an vier Orten. Den Editor installieren und betreiben Sie selbst; Autonomy Node, Autonomy Edge und Edge on-prem betreiben sie an einem anderen Ort.
| OpenPLC EditorAuf Ihrem Rechner installiert | Autonomy NodeVom Gerät ausgeliefert | Autonomy EdgeIn der Cloud gehostet | Edge on-premAuf Ihrer eigenen Hardware gehostet | |
|---|---|---|---|---|
| Wo die IDE läuft | Auf Ihrem Rechner | Auf dem Gerät | In der Cloud | In Ihrer eigenen Infrastruktur |
| SPS sind von der IDE unabhängig | Ja | Nein | Ja | Ja |
| Installation auf Ihrem Rechner | Ja | Nein | Nein | Nein |
| Internetzugang nötig | Nein | Nein | Ja, nur für die Verwaltung | Nein |
| Projektspeicher und Versionshistorie | Teilweise | Teilweise | Ja | Ja |
| Teams und feingranulare Berechtigungen | Nein | Teilweise | Ja | Ja |
| Rollout über die ganze Flotte | Nein | Nein | Ja | Ja |
| KI-Unterstützung | Ja | Teilweise | Ja | Ja |
Sie nutzen noch OpenPLC v3
OpenPLC v3 ist eingestellt. Es gibt keine weiteren v3-Releases und keine weiteren Korrekturen. Wenn Sie v3 noch benötigen, finden Sie die bisherige Dokumentation und den Quellcode unten im v3-Archiv.
Zum v3-Archiv

