Funktionsbausteine in eine Bibliothek auslagern
In der Anleitung Geräteprojekt mit CODESYS Control Win V3 x64 in Strukturiertem Text und Kontaktplan erstellen haben Sie den Regler für einen Lüfter innerhalb einer Applikation erstellt. In dieser Anleitung erzeugen Sie aus der Lüftersteuerung ein eigenes Bibliotheksprojekt. So wird der Regler zu wiederverwendbarem Code, den Sie projektübergreifend in anderen Applikationen einsetzen können.
Schritte der Anleitung
Eine wiederverwendbare Bibliothek, FanControlLib, enthält den ReglerFB_FanControl. Die Applikation im Geräteprojekt FanControl verwendet den Funktionsbaustein anschließend aus der Bibliothek, statt aus einer eigenen lokalen Kopie.
Erstellen eines Bibliotheksprojekts
Extrahieren der Funktionalität in die Bibliothek
Verwenden/Referenzieren des Bibliotheksprojekts
Voraussetzungen
Sie haben die Schritte zu Geräteprojekt mit CODESYS Control Win V3 x64 in Strukturiertem Text und Kontaktplan erstellen abgeschlossen. Der Workspace
TemperatureControlund das GeräteprojektFanControlexistieren.Die Soft-SPS CODESYS Control Win V3 x64 ist installiert und gestartet.
Erstellen des Bibliotheksprojekts
Klicken Sie auf die Schaltfläche
und öffnen Sie den Workspace
TemperatureControl.fbsws.Klicken Sie auf die Schaltfläche
und wählen Sie den Befehl Bibliotheksprojekt erzeugen. Geben Sie im Dialog Erzeugen eines neuen Bibliotheksprojekts folgende Daten ein:
Pfad:
D:\TemperatureControlProjektname:
FanControlLibTitel, Version und Firma
Klicken Sie auf Erzeugen.
Die neue Bibliothek mit dem Namen
FanControlLib.fbslibist jetzt im Workspace-Navigator vorhanden.
Extrahieren der Funktionalität in die Bibliothek
Verschieben Sie den Regler
FB_FanControlvon der Applikation in die Bibliothek:Kopieren Sie die Datei
FB_FanControl.fb.ldim Datei-Explorer Ihres Betriebssystems aus dem OrdnerD:\TemperatureControl\FanControl.fbsdev\Application.iecapp^und legen Sie die Kopie in den BibliotheksordnerD:\TemperatureControl\FanControlLib.fbslibab.Anmerkung
Aktuell unterstützt CODESYS 4 kein Kopieren und Einfügen von Elementen zwischen Projekten.
CODESYS 4 überwacht die Projektordner im Dateisystem. Wenn Sie das Element im Dateisystem verschieben, legt CODESYS 4 dieses automatisch im Workspace-Navigator an.
In CODESYS 4 erscheint
FB_FanControl.fb.ldim ProjektFanControlLib.fbslib.Entfernen Sie den Funktionsbaustein
FB_FanControl.fb.ldaus dem ProjektFanControl.fbsdev. Rechtsklicken Sie dazu im Geräteprojekt unterApplication.iecappauf das ElementFB_FanControl.fb.ldund wählen Sie den Befehl Element löschen. Bestätigen Sie den Schritt mit Löschen.
Verwenden/Referenzieren des Bibliotheksprojekts
Referenzieren Sie die Bibliothek
FanControlLib.fbslibim ProjektFanControl.fbsdev. Öffnen Sie dazu dieLibraries.jsondes Geräteprojekts im Editor:Fügen Sie den Namespace
FanControlLibhinzu.Fügen Sie unter dem Namespace eine Referenz vom Typ
RelativePathauf den Bibliotheksordner hinzu.
Die Bibliothek
FanControlLibist in der Applikation referenziert.{ "references": { "Standard": { "$type": "Placeholder", "placeholder": "Standard" }, "FanControlLib": { "$type": "RelativePath", "path": "../../FanControlLib.fbslib/" } }, "placeholderOverrides": {} }Rechtsklicken Sie im Navigator auf
Libraries.jsonund führen Sie den Befehl Alle Bibliotheken auflösen aus.Öffnen Sie die Ansicht LIBRARY RESOLUTION um die Meldungen zu kontrollieren.
Die Bibliotheken sind jetzt erfolgreich aufgelöst.
Verwenden Sie im Programm
PLC_PRG.prg.stden Funktionsbaustein aus der Bibliothek. Öffnen Sie dazuPLC_PRGim Editor und ändern Sie den Typ der VariablenfanControlauf den Namen des Funktionsbausteins der referenzierten BibliothekFanControlLib. Nur die Deklaration ändert sich. Der Aufruf bleibt gleich.Tipp
Während Sie tippen, unterstützt Sie die Autovervollständigung.
// before fanControl : FB_FanControl; // now fanControl : FanControlLib.FB_FanControl;
Rechtsklicken Sie auf das Element
Application.iecappund wählen Sie den Befehl Applikation erzeugen.Loggen Sie sich ein und starten Sie die Applikation, für weitere Informationen siehe Programm auf die Steuerung laden.
Der Lüfterregler läuft genau wie zuvor,
temperatureoszilliert zwischen 25 und 30 °C, währendfanOnumschaltet. Das Verhalten ist identisch. Die Logik liegt jetzt in einer Bibliothek, die Sie projektübergreifend einsetzen können. Damit haben Sie soeben Ihre eigene CODESYS 4-Bibliothek erstellt und genutzt.