ModulSolar Feststoff-Erweiterung: IDE-Anleitung
Quelle:
Stations/Dokumentation/IDE_Anleitung_ModulSolar_Feststoff_Erweiterung.mdim onekey-Repo (Stand der Übernahme: 2026-07-26). Bei Codeänderungen dort zuerst aktualisieren.
IDE-Anleitung: ModulSolar_ext um Feststoffkessel-Modus erweitern
Diese Schritte werden in der LASAL CLASS 2 IDE durchgeführt, da sie die DECLARATION-Region der Klasse betreffen, die nicht direkt im Quelltext editiert werden darf (sie wird vom Codegen überschrieben).
Nach Abschluss aller IDE-Schritte kann die zugehörige Logik im IMPLEMENTATION-Bereich ergänzt werden (siehe Abschnitt 5).
1. Neue Server-Channels anlegen
Klasse ModulSolar_ext öffnen, im Reiter Server folgende Kanäle hinzufügen:
| Name | Typ | Retentive | Initialize | Default | Kommentar |
|---|---|---|---|---|---|
P_QuellenTyp |
DINT | File | Ja | 0 | 0 = Solar, 1 = Feststoffkessel |
P_RL_Soll |
DINT | File | Ja | 60 | Sollwert Rücklauf-Mindesttemperatur (°C) |
P_RL_Hyst |
DINT | File | Ja | 3 | Hysterese Rücklauf-Anhebung (K) |
P_MischerLaufzeit |
DINT | File | Ja | 140 | Mischer-Laufzeit gesamt (Sekunden) |
P_MischerInvert |
DINT | File | Ja | 0 | 0 = normal, 1 = Motorrichtung invertiert |
P_MinKesselTemp |
DINT | File | Ja | 60 | Mindesttemperatur für Pumpenfreigabe (°C) |
RL_Ist |
DINT | – | Nein | – | Rücklauf-Ist-Temperatur (Read-Only Status) |
MischerPosition |
DINT | – | Nein | – | Mischer-Position 0-100% (Status) |
MischerState |
DINT | – | Nein | – | -1 = ZU, 0 = AUS, 1 = AUF |
Wichtig:
- Visualized = true (damit die Werte im UI verfügbar sind)
- WriteProtected = false bei den
P_*-Parametern - Bei
RL_Ist,MischerPosition,MischerState: WriteProtected = true (nur Anzeige)
2. Hardware-Zuordnungen (I/O)
In der Klassen-Eigenschaft ConfigClass oder analog zu In1_Assignment/Out1_Assignment zwei zusätzliche Konstanten anlegen:
In4_Assignment(UINT) – Rücklauffühler (analog)Out5_Assignment(UINT) – Mischer AUF (digital)Out6_Assignment(UINT) – Mischer ZU (digital)
Falls keine freien I/O-Plätze vorhanden sind: zwei vorhandene Outputs (z. B. Out3/Out4) umwidmen, dann muss aber die Manuell-Bedienung in CyWork entsprechend angepasst werden.
3. Struktur Datenstruct erweitern (types.h)
Datei Stations/Terminal/LSL/Include/types.h öffnen, Struct Datenstruct (ab Zeile 256) ergänzen:
Datenstruct : STRUCT
... // bestehende Felder
QuellenTyp : USINT; // 0 = Solar, 1 = Feststoff
RL_Soll : USINT;
RL_Hyst : USINT;
MischerLaufzeit : USINT;
MischerInvert : USINT;
MinKesselTemp : USINT;
END_STRUCT;
Achtung: Beim Hinzufügen am Ende ist die Größenänderung neutral für bestehende Module. Beim Einfügen in der Mitte würden alle Default-Tabellen verschoben.
4. DefaultValueSolar-Tabelle erweitern
In ModulSolar_ext.st, Funktion DefaultValueSolar (in der TAB-Region) die neuen Felder ergänzen:
00000$USINT, //QuellenTyp --> 0 = Solar (Default)
00060$USINT, //RL_Soll --> 60 °C
00003$USINT, //RL_Hyst --> 3 K
00140$USINT, //MischerLaufzeit --> 140 s
00000$USINT, //MischerInvert --> 0 = normal
00060$USINT, //MinKesselTemp --> 60 °C
5. Logik-Implementierung in IMPLEMENTATION-Region
Nach den obigen Schritten kompilieren (batch.Compile(prj)), dann den Logik-Code aus Code_Vorlage_Holzofen_Mode.md (im selben Verzeichnis) übernehmen:
CyWork– Modus-Verzweigung am Anfang des Automatik-Zweigs- Neue Methode
MischerCtrlRL()ergänzen InitSolarDaten– neue Parameter aus Tabelle übernehmenGetRetentiveJson/SetRetentiveJson– JSON-Serialisierung erweiternLoginToDataLog– neue Messwerte registrieren
6. Test
- Kompilieren: Sigmatek LASAL Class IDE → Build → muss ohne Warnings durchlaufen
- Download auf Test-PLC HZS 771 (.52)
- Solar-Modus (P_QuellenTyp = 0): Verhalten muss identisch zur Vorversion sein
- Feststoff-Modus (P_QuellenTyp = 1): Pumpe nur ab
P_MinKesselTemp, Mischer reagiert aufRL_Ist
7. Sicherheitshinweis
Beim ersten Inbetriebnehmen des Feststoff-Modus an einer realen Anlage:
- Mischer manuell auf "AUS" testen (kein Stromfluss)
P_MischerLaufzeitzunächst niedrig (z. B. 30 s) konfigurieren- Endlagenschalter / mechanische Endanschläge prüfen
- Rücklauffühler-Plausibilität verifizieren (Realwerte 30-70 °C)
No comments to display
No comments to display