Download

Stand: Vorabversion 0.2

Alle Pakete sind Vorabversionen der Reihe 0.2 (aktuell 0.2.2). Im produktiven Einsatz (Pilotbetrieb) ist der ST-Editor. Je Release kommt eine IEC-Sprache hinzu: 0.3 LD, 0.4 FBD, 0.5 SFC; IL ist abgekündigt. Siehe Roadmap.

ForgeIEC-Komponenten im Überblick

ForgeIEC besteht aus mehreren Komponenten. Welche Sie brauchen, hängt von Ihrer Rolle:

RolleKomponenteWo installieren
SPS-Programmierer / Anwenderforgeiec-studioWorkstation
Inbetriebnehmerforgeiec-anvil-server — der Anvil-Server (anvild); Dienst forgeiec-anvil-server.service, Programm anvil-serverZiel-SPS
Modbus TCPim Paket forgeiec-anvil-server enthaltenZiel-SPS
EtherCAT / PROFIBUS / EtherNet/IPGerüst, ebenfalls in forgeiec-anvil-server — Protokoll in ArbeitZiel-SPS
Bedienoberfläche (HMI, Vorschau)forgeiec-hearth-serverZiel-SPS
Bedien-Panelforgeiec-screen-wayland oder -xorgPanel-Hardware
OPC-UA-Gatewayforgeiec-bellows-server — ruht, ohne Wartung—

Installation aus dem Paket-Repository

ForgeIEC wird als signiertes Debian-Repository unter apt.forgeiec.io und als signiertes RPM-Repository unter rpm.forgeiec.io bereitgestellt — signierte Pakete aus einer automatisierten CI. Einrichtung ist einmalig pro Workstation bzw. Ziel-SPS — wählen Sie Ihre Distribution aus:

Passend zum System auswählen.

# Signier-Schlüssel hinterlegen
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://apt.forgeiec.io/forgeiec.gpg \
  | sudo tee /etc/apt/keyrings/forgeiec.gpg >/dev/null

# Repository-Quelle eintragen
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/forgeiec.gpg] \
https://apt.forgeiec.io/trixie trixie main" \
  | sudo tee /etc/apt/sources.list.d/forgeiec.list

sudo apt update

Danach Komponenten einzeln installieren:

# Workstation
sudo apt install forgeiec-studio          # ForgeIEC Studio
sudo apt install forgeiec-fdd-data        # Gerätebeschreibungen (empfohlen)

# Ziel-SPS
sudo apt install forgeiec-anvil-server    # SPS-Runtime (Anvil-Server + alle tongs-*)
sudo apt install forgeiec-hearth-server   # Bedienoberfläche (Vorschau)

# Bedien-Panel
sudo apt install forgeiec-screen-wayland  # Kiosk unter Wayland
sudo apt install forgeiec-screen-xorg     # Kiosk unter X11

Auf RPM-Systemen heißen die Befehle sudo dnf install … bei sonst gleichen Paketnamen — welche Pakete es dort gibt, zeigt die Tabelle unten (die Runtime noch nicht).

Die Bus-Bridges (tongs-modbustcp, tongs-ethercat, tongs-profibus, tongs-ethernetip) sind keine eigenen Pakete — sie liegen im Paket forgeiec-anvil-server und werden vom Anvil-Server gestartet.

Das Paket forgeiec-bellows-server (OPC-UA-Gateway) liegt weiter im APT-Repository, ruht aber — es wird derzeit nicht entwickelt und nicht gewartet.

Updates folgen dem normalen apt update && apt upgrade-Zyklus — keine manuellen .deb-Dateien nötig.


Unterstützte Plattformen

Debian / Ubuntu (apt.forgeiec.io)

PaketArchitekturenSuites
forgeiec-studioamd64, arm64bookworm, trixie, noble
forgeiec-fdd-dataarchitekturunabhängigbookworm, trixie, noble
forgeiec-anvil-serveramd64, arm64, armhfbookworm, trixie, jammy, noble
forgeiec-hearth-serveramd64, arm64, armhfbookworm, trixie, jammy, noble
forgeiec-screen-waylandamd64, arm64bullseye, bookworm, trixie, jammy, noble
forgeiec-screen-xorgamd64, arm64bullseye, bookworm, trixie, jammy, noble
forgeiec-bellows-server (ruht)amd64, arm64, armhfbookworm, trixie, jammy, noble

Suite-Zuordnung: bullseye = Debian 11, bookworm = Debian 12, trixie = Debian 13, jammy = Ubuntu 22.04, noble = Ubuntu 24.04. armhf (ARMv7) gibt es für die Runtime, Hearth und die Gerätebeschreibungen.

Enterprise Linux / Fedora (rpm.forgeiec.io)

PaketArchitekturenDistributionen
forgeiec-studiox86_64, aarch64AlmaLinux 9 (el9), Fedora 44
forgeiec-fdd-datax86_64, aarch64AlmaLinux 9 (el9), Fedora 44
forgeiec-hearth-serverx86_64AlmaLinux 9 (el9)
forgeiec-screen-waylandx86_64AlmaLinux 9 (el9), Fedora 44
forgeiec-screen-xorgx86_64AlmaLinux 9 (el9), Fedora 44

Runtime als RPM: noch nicht verfügbar. forgeiec-anvil-server gibt es derzeit nur als Debian-Paket.

Es gibt zwei verschiedene Signierschlüssel: forgeiec.gpg (ed25519) für apt und forgeiec-rpm.asc (RSA-4096) für rpm. Der Unterschied ist nicht kosmetisch — RHEL 9 liefert rpm 4.16, dessen interner PGP-Parser ed25519 nicht verifizieren kann.

Windows

Einen Windows-Build von ForgeIEC Studio gibt es, die Windows-CI läuft. Einen öffentlichen Download gibt es noch nicht — den Installer erhalten Sie auf Anfrage an blacksmith@forgeiec.io.


Quellcode

Der Quellcode steht unter der AGPL-3.0-or-later (der in Ihr Projekt gelinkte Teil unter Apache-2.0). Die Repositories sind nicht öffentlich einsehbar — Einsicht auf Anfrage: Schicken Sie Ihren SSH-Public-Key an blacksmith@forgeiec.io, wir schalten ihn frei. Danach stehen Ihnen unter anderem diese Repositories offen:

  • ForgeIEC Studio: ForgeIEC/forgeiec-studio
  • Anvil-Server (anvild): ForgeIEC/anvil
  • Tongs (Bus-Bridges): ForgeIEC/tongs-core und je Protokoll ForgeIEC/tongs-*
  • Hearth: ForgeIEC/hearth
  • bellowsd (ruht): ForgeIEC/bellows
  • Webseite: ForgeIEC/forgeiec-website

Die normativen Spezifikationen liegen im Repository forgeiec-studio unter documentation/architecture/.


Bauen aus dem Quellcode

# Repository klonen (mit Submodules) — nur über SSH, nach
# Freischaltung Ihres SSH-Public-Keys
git clone --recurse-submodules ssh://git@git.forgeiec.io/ForgeIEC/forgeiec-studio.git
cd forgeiec-studio

# Studio bauen
cmake -B build -DCMAKE_BUILD_TYPE=Release && cmake --build build -j$(nproc)

# Deployen auf das lokale System
./deploy.sh all

Voraussetzungen (Debian 12/13, Ubuntu 24.04), so wie die CI sie installiert:

sudo apt install build-essential cmake ninja-build pkg-config git \
  qt6-base-dev qt6-base-dev-tools qt6-tools-dev qt6-tools-dev-tools \
  libqt6svg6-dev libqt6sql6-sqlite libqt6charts6-dev libqt6opengl6-dev \
  libgl-dev libssl-dev libre2-dev libargon2-dev libsqlite3-dev libxml2-dev \
  libtomlplusplus-dev libprotobuf-dev protobuf-compiler \
  libgrpc++-dev protobuf-compiler-grpc \
  forgeiec-libforge-mcp-dev   # aus dem ForgeIEC-APT-Repository
# Debian 13 zusätzlich: qt6-svg-plugins

Maßgeblich ist die Paketliste in .forgejo/workflows/linux.yml im Repository.


Beispielprojekte

Mit ForgeIEC Studio ausgelieferte Beispiele (Studio: File -> Open Example):

BeispielInhalt
BlinkyBlinklicht mit TON/TOF
Star-Delta Reversing StarterStern-Dreieck-Wendeschaltung
Knight RiderLauflicht, 16 Bit
Traffic LightAmpelsteuerung
PID ControllerPID-Temperaturregelung (Funktion)
Weekly TimerWochenschaltuhr (Funktionsbaustein)
FOC DemoFeldorientierte Regelung, 3-Phasen-Umrichter
TankanlageTankanlage mit Hearth-Bedienoberfläche
Conveyor Pick & PlaceFörderband mit Greifer
Compressor StationKompressorstation
Axis ControlAchssteuerung mit verschachteltem STRUCT

Nächste Schritte