Herunterladen Inhalt Inhalt Diese Seite drucken

Bosch rexroth IndraWorks 15VRS Anwendungsbeschreibung Seite 366

Feldbusse
Vorschau ausblenden Andere Handbücher für rexroth IndraWorks 15VRS:
Inhaltsverzeichnis

Werbung

354/395
Gebäudeautomatisierung
PROGRAM BACnetStartPRG
VAR
(* BACnet Init Case *)
BACnetInit : INT := 0; // init case counter
InitError : UINT := 0; // error counter
(* to set Timezone ... *)
TZI : TimezoneInformation;
(* get IP from PLC *)
FB_GetIP : ML_GetIpAddress; // from ML_BASE.library
(* IP als String *)
IPString : STRING;
(* IP als DWORD *)
dwIPAdr : DWORD;
(* IP als array of Byte *)
IPAdr : ARRAY [0..3] OF BYTE := [192,168,1,1]; // default
// TimeSync --> from
BACnetDefaultImpl.library
timeSync : BACnetDefaultimpl.TimeSync_SvcAppHook;
utcTimeSync : BACnetDefaultimpl.UTCTimeSync_SvcAppHook;
deviceDateTime : BACnetDefaultImpl.DeviceDateTime;
// trigger time sync of BACnet
TimeTON : TON;
TimeWait: TIME := T#1S;
END_VAR
IF UserVarGlobal.BACnetReady = FALSE THEN
// ...
// mandatory steps to initialize BACnet
// ...
CASE BACnetInit OF
0: (* set TimeZoneInformation of your local location in this example Germany *)
// iBias - unit mintues - distance to UTC
TZI.iBias := -60;
// iDaylightBias - unit minutes - distance daylight saving time UTC if exist in your country
TZI.iDaylightBias := -60;
TZI.szDaylightName := 'CEST'; // Timzone shortcut
TZI.szStandardName := 'CET'; // Timzone shortcut
TZI.ulDaylightDate := UserVarGlobal.g_ulDaylightDate; // last Sunday in Mar start daylight
TZI.ulStandardDate := UserVarGlobal.g_ulStandardDate; // last Sunday in Oct end daylight
(*
*)
SysTimeRtcSetTimezone(TZI); // set Timzone in runtime
(* ... *)
BACnetInit := BACnetInit + 1;
1: (* get/set IP-Adress and start BACnet-Server *)
// get IPAdress of control ...
FB_GetIP(Execute := TRUE);
(* run FB *)
IF FB_GetIP.Done THEN
Bosch Rexroth AG R911393282_Ausgabe 05
klarieren. Mit Hilfe der globalen Variablen kann man den Zeitpunkt der
Zeitumstellung jährlich anpassen.
Im Beispiel Programm werden dazu die "TimeSync" Plugins registriert.
7.
Das Starten und Stoppen des BACnet-Servers erfolgt mit dem SPS Pro‐
gramm "BACnetStartPRG", wie im folgenden Beispiel gezeigt.
Folgende Funktionen kommen im Programm zum Einsatz:
Zum Starten des BACnet-Servers: StartBACnetStack
Zum Stoppen des BACnet-Servers: StopBACnetStack
Zur Zuweisung der IP-Adresse: BACnet_IP_datalink.IPadd-
ress := [AAA.BBB.CCC.DDD];
Programm:
//form SysTimeRTC.library
Programm:
IndraWorks 15VRS Feldbusse

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis