Konfiguration
Die Speicherbausteine befinden sich in der Bibliothek SEW_MK_PES_PowerMode.SEW_StorageMon oder in der Bibliothek SEW_MK_PES_EnergyMode.SEW_StorageMon. Jeder Speicherbaustein muss zunächst initialisiert werden. Der Baustein vom Typ Storage besitzt eine Init-Methode, welche zu Beginn einmal im User_PRG.Init aufgerufen werden muss. Siehe folgendes Code-Beispiel:
StorageMan.Init(
rMaxTemperature := 60.0,
rTemperatureWarnLevel := 55.0,
rMinTemperature := -20.0,
xIsOverTempAvailable := FALSE,
xIsOverTempWarningAvailable := FALSE,
xIsOverVoltageAvailable := TRUE,
xIsTempValAvailable := TRUE,
xIsUnderTempAvailable := TRUE,
xIsWireBreakAvailable := TRUE,
xStorageErrorAvailable := FALSE,
sStorageName := 'Storage1',
usiStackID := 1);
Erläuterung zum Code-Beispiel:
Die xIs-Variablen und xStorageErrorAvailable geben an, welche Signale der Speicher liefert. Liefert er beispielsweise kein Übertemperatursignal, dafür aber einen Temperaturwert, kann dennoch eine Übertemperatur erkannt werden. Liefert der Speicher ein entsprechendes Bit und den Wert, werden die Ergebnisse verodert.
Für die Initialisierung des Storage stehen folgende Variablen zur Verfügung:
Variablenname | Beschreibung |
|---|---|
rMaxTemperature | Datentyp - REAL |
Temperaturgrenze für Übertemperatur | |
rMinTemperature | Datentyp - REAL |
Temperaturgrenze für Untertemperatur | |
rTemperatureWarnLevel | Datentyp - REAL |
Temperaturgrenze für Übertemperaturwarnung | |
xIsTempValAvailable | Datentyp - BOOL |
| |
xIsOverTempAvailable | Datentyp - BOOL |
| |
xIsOverTempWarningAvailable | Datentyp - BOOL |
| |
xIsUnderTempAvailable | Datentyp - BOOL |
| |
xIsOverVoltageAvailable | Datentyp - BOOL |
| |
xStorageErrorAvailable | Datentyp - BOOL |
| |
xIsWireBreakAvailable | Datentyp - BOOL |
| |
usiStackID | Datentyp - USINT |
Frei wählbare ID im Bereich 0..255, die das Speichermodul einem Speicherstack zuweist. (Defaultwert: 1) |
Die Eingangsvariable usiStackID der Init-Methode dient zur Identifizierung eines Speicherverbunds. Jedes Speichermodul mit der gleichen ID wird intern vom Softwaremodul einem Speicherverbund zugeordnet. Dies ist vor allem für das Plausibilisieren der Temperatursensoren untereinander notwendig. Die ID ist zwischen 1 und 255 frei wählbar und muss bei allen Modulen, die dem gleichen Speicherverbund angehören gleich sein.
Die vollständige Initialisierung aus dem Code-Beispiel ist nur nötig, wenn der Typ StorageManual oder StorageOCE1n_On_PTnSensor verwendet wird, da hier der Speichertyp nicht vordefiniert ist. Die Varianten SewEKS, LSMtron und MDC benötigen lediglich den Wert für sStorageName.
HINWEIS

Die Init-Funktion muss auch bei den speicherspezifischen Varianten aufgerufen werden, da der zu vergebende Name des Speichers für die Meldungen benötigt wird.
Die Energiespeicher müssen zudem über folgenden Aufruf im User_PRG.Init an das jeweilige Softwaremodul angebunden werden. Im folgenden Beispiel ist MDP92A der von der automatischen Codegenerierung eingebundene Baustein vom Typ EnergyHubPowerMode.
MDP92A.LinkStorage(itfQueryInterfaceSEW :=StorageMan);
MDP92A.LinkStorage(itfQueryInterfaceSEW :=StorageEKS);
MDP92A.LinkStorage(itfQueryInterfaceSEW :=StoragePTn);
MDP92A.LinkStorage(itfQueryInterfaceSEW :=StorageLSMtron);
MDP92A.LinkStorage(itfQueryInterfaceSEW := Storage_Phoenix_AXLFBKEC_On_LSMtron);
Variablenname | Beschreibung |
|---|---|
itfQueryInterfaceSEW | Datentyp - IQueryInterfaceSEW |
Schnittstelle zum Verlinken eines Storage- oder Storage_SEW_StandardSet-Funktionsbaustein |
