Working State
This commit is contained in:
14
.gitignore
vendored
14
.gitignore
vendored
@@ -1,8 +1,8 @@
|
||||
Temp/
|
||||
Binaries/
|
||||
Diagnosis/
|
||||
*.AppleDouble/
|
||||
.DS_Store
|
||||
*.back
|
||||
*.orig
|
||||
Temp/
|
||||
Binaries/
|
||||
Diagnosis/
|
||||
*.AppleDouble/
|
||||
.DS_Store
|
||||
*.back
|
||||
*.orig
|
||||
*.isopen
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.18?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<Print Header="%lProject: %n%c%x" Footer="%cPage: %p" />
|
||||
<ConfigurationManager ActiveConfigurationName="Config2" />
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.18?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<Print Header="%lProject: %n%c%x" Footer="%cPage: %p" />
|
||||
<ConfigurationManager ActiveConfigurationName="Config2" />
|
||||
</ProjectSettings>
|
||||
10
LastUser.set
10
LastUser.set
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<Print Header="%lProject: %n%c%x" Footer="%cPage: %p" />
|
||||
<ConfigurationManager ActiveConfigurationName="Config1" />
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<Print Header="%lProject: %n%c%x" Footer="%cPage: %p" />
|
||||
<ConfigurationManager ActiveConfigurationName="Config1" />
|
||||
</ProjectSettings>
|
||||
@@ -1,12 +1,12 @@
|
||||
VAR
|
||||
bBlink0_1 : BOOL;
|
||||
bBlink0_5 : BOOL;
|
||||
bBlink1_0 : BOOL;
|
||||
bBlink2_0 : BOOL;
|
||||
bBlink5_0 : BOOL;
|
||||
gdtActTime : DATE_AND_TIME; (*Current Date and Time*)
|
||||
gDTSActTimeUTC : DTStructure := (0); (*Current Date and Time as DTS (ms) UTC !!!*)
|
||||
gudUnixTimeUTC : UDINT; (*Current Date and Time as Unixts UTC !!!*)
|
||||
gOuNull : BOOL; (*DUMMY for Output*)
|
||||
gAOuNull : INT; (*DUMMY for Output*)
|
||||
END_VAR
|
||||
VAR
|
||||
bBlink0_1 : BOOL;
|
||||
bBlink0_5 : BOOL;
|
||||
bBlink1_0 : BOOL;
|
||||
bBlink2_0 : BOOL;
|
||||
bBlink5_0 : BOOL;
|
||||
gdtActTime : DATE_AND_TIME; (*Current Date and Time*)
|
||||
gDTSActTimeUTC : DTStructure := (0); (*Current Date and Time as DTS (ms) UTC !!!*)
|
||||
gudUnixTimeUTC : UDINT; (*Current Date and Time as Unixts UTC !!!*)
|
||||
gOuNull : BOOL; (*DUMMY for Output*)
|
||||
gAOuNull : INT; (*DUMMY for Output*)
|
||||
END_VAR
|
||||
|
||||
@@ -1,67 +1,67 @@
|
||||
(*// Constants*)
|
||||
VAR CONSTANT
|
||||
gAInNull : INT := 0; (*O FOR Analog Input*)
|
||||
gTrue : BOOL := TRUE; (*Konstant TRUE*)
|
||||
gFalse : BOOL := FALSE; (*Konstant False*)
|
||||
gInNull : BOOL := FALSE; (*FALSE FOR Input *)
|
||||
iAIVoltageOverflow : INT := 16#7FFF; (* Analog Input Voltage Mode,Overflow *)
|
||||
iAIVoltageUnderflow : INT := -32767; (* Analog Input Voltage Underflow *)
|
||||
END_VAR
|
||||
(*## Bathtypes*)
|
||||
VAR CONSTANT
|
||||
btDEPOT : USINT := 1; (*Bathtype*)
|
||||
btSINK : USINT := 2; (*Bathtype*)
|
||||
btBLOW_DRYER : USINT := 3; (*Bathtype*)
|
||||
btACTIVE : USINT := 4; (*Bathtype*)
|
||||
btTRANSPORT : USINT := 5; (*Bathtype*)
|
||||
END_VAR
|
||||
(*## DEPOT/TRANSPORT CarrierModes*)
|
||||
VAR CONSTANT
|
||||
gRECIPEMODE_NOP : USINT := 0; (*RecipeMode No Operation*)
|
||||
gRECIPEMODE_RESET : USINT := 1; (*RecipeMode Reset Carrier Step*)
|
||||
gRECIPEMODE_COPY : USINT := 2; (*RecipeMode Copy Recipe*)
|
||||
END_VAR
|
||||
(*## DEPOT/TRANSPORT LogMode*)
|
||||
VAR CONSTANT
|
||||
gLOGMODE_NOP : USINT := 0; (*Logmode No Operation*)
|
||||
gLOGMODE_WRITE : USINT := 0; (*Logmode Write Logfile*)
|
||||
END_VAR
|
||||
(*## Carriertypes*)
|
||||
VAR CONSTANT
|
||||
gCARRIER_CARRIER : USINT := 1; (*Carriertype*)
|
||||
gCARRIER_DRUM : USINT := 2; (*Carriertype*)
|
||||
gudProdID_EMPTY : UDINT := 0; (*Sparecarrier *)
|
||||
gudProdID_TEST : UDINT := 4294967295; (*Testproduction *)
|
||||
gMAXBathGroup : USINT := 8; (*Available Bathgroups*)
|
||||
gMAXBathInGroup : USINT := 7; (*Maximum Baths -1 in Group*)
|
||||
gMAXCurrentProg : USINT := 9; (*Maximum Currentprograms -1*)
|
||||
usMAX_BATHPOS : USINT := 60; (*Maximum Bathpositon (Machine independent)*)
|
||||
usMAX_CARRIER : USINT := 50; (*Maximum Carrier*)
|
||||
usMAX_CARRIERSTEP : USINT := 20; (*Maximum Step in Carrier Log*)
|
||||
END_VAR
|
||||
(*Statusbits of Carrierstep*)
|
||||
VAR CONSTANT
|
||||
gCARRIERSTEP_UNUSED : USINT := 0; (*Carrier Step not Used*)
|
||||
gCARRIERSTEP_USED : USINT := 1; (*Carrier Step Used*)
|
||||
gCARRIERSTEP_OK : USINT := 2; (*Carrier Step Finished without Problems*)
|
||||
gCARRIERSTEP_INTERUPTED : USINT := 4; (*Carrier Step Stopped before Min Time*)
|
||||
gCARRIERSTEP_OVERTIME : USINT := 8; (*Carrier Step took to long*)
|
||||
gCARRIERSTEP_TEMPERATURE : USINT := 16; (*Carrier Step Temperature Error*)
|
||||
gCARRIERSTEP_BATHMOVEMENT : USINT := 32; (*Carrier Step Problem with Bathmovement*)
|
||||
gCARRIERSTEP_CURRENT : USINT := 64; (*Carrier Step Problem with Current*)
|
||||
gCARRIERSTEP_CURRENT_CHANGED : USINT := 128; (*Carrier Step Current Changed*)
|
||||
END_VAR
|
||||
(*## States of Carrier*)
|
||||
VAR CONSTANT
|
||||
gCARRIER_CLEAN : USINT := 0; (*Carrier was placed on Depot*)
|
||||
gCARRIER_SPARE : USINT := 1; (*Carrier was marked as Empty Carrier*)
|
||||
gCARRIER_INPROCESS : USINT := 2; (*Carrier was marked as Full Carrier*)
|
||||
gCARRIER_INPROCESS_WITH_ERROR : USINT := 3; (*Carrier is in process with errors*)
|
||||
gCARRIER_FINISHED_OK : USINT := 4; (*Carrier is finished without errors*)
|
||||
gCARRIER_FINISHED_WITH_ERROR : USINT := 5; (*Carrier is finished errors*)
|
||||
END_VAR
|
||||
(*## Sprayreg behaviour*)
|
||||
VAR CONSTANT
|
||||
SPRAY_ON_LIFT : USINT := 2; (*Sprayregs spray on Lift*)
|
||||
SPRAY_ON_SINK : USINT := 1; (*Sprayregs spray on Sink*)
|
||||
END_VAR
|
||||
(*// Constants*)
|
||||
VAR CONSTANT
|
||||
gAInNull : INT := 0; (*O FOR Analog Input*)
|
||||
gTrue : BOOL := TRUE; (*Konstant TRUE*)
|
||||
gFalse : BOOL := FALSE; (*Konstant False*)
|
||||
gInNull : BOOL := FALSE; (*FALSE FOR Input *)
|
||||
iAIVoltageOverflow : INT := 16#7FFF; (* Analog Input Voltage Mode,Overflow *)
|
||||
iAIVoltageUnderflow : INT := -32767; (* Analog Input Voltage Underflow *)
|
||||
END_VAR
|
||||
(*## Bathtypes*)
|
||||
VAR CONSTANT
|
||||
btDEPOT : USINT := 1; (*Bathtype*)
|
||||
btSINK : USINT := 2; (*Bathtype*)
|
||||
btBLOW_DRYER : USINT := 3; (*Bathtype*)
|
||||
btACTIVE : USINT := 4; (*Bathtype*)
|
||||
btTRANSPORT : USINT := 5; (*Bathtype*)
|
||||
END_VAR
|
||||
(*## DEPOT/TRANSPORT CarrierModes*)
|
||||
VAR CONSTANT
|
||||
gRECIPEMODE_NOP : USINT := 0; (*RecipeMode No Operation*)
|
||||
gRECIPEMODE_RESET : USINT := 1; (*RecipeMode Reset Carrier Step*)
|
||||
gRECIPEMODE_COPY : USINT := 2; (*RecipeMode Copy Recipe*)
|
||||
END_VAR
|
||||
(*## DEPOT/TRANSPORT LogMode*)
|
||||
VAR CONSTANT
|
||||
gLOGMODE_NOP : USINT := 0; (*Logmode No Operation*)
|
||||
gLOGMODE_WRITE : USINT := 0; (*Logmode Write Logfile*)
|
||||
END_VAR
|
||||
(*## Carriertypes*)
|
||||
VAR CONSTANT
|
||||
gCARRIER_CARRIER : USINT := 1; (*Carriertype*)
|
||||
gCARRIER_DRUM : USINT := 2; (*Carriertype*)
|
||||
gudProdID_EMPTY : UDINT := 0; (*Sparecarrier *)
|
||||
gudProdID_TEST : UDINT := 4294967295; (*Testproduction *)
|
||||
gMAXBathGroup : USINT := 8; (*Available Bathgroups*)
|
||||
gMAXBathInGroup : USINT := 7; (*Maximum Baths -1 in Group*)
|
||||
gMAXCurrentProg : USINT := 9; (*Maximum Currentprograms -1*)
|
||||
usMAX_BATHPOS : USINT := 60; (*Maximum Bathpositon (Machine independent)*)
|
||||
usMAX_CARRIER : USINT := 50; (*Maximum Carrier*)
|
||||
usMAX_CARRIERSTEP : USINT := 20; (*Maximum Step in Carrier Log*)
|
||||
END_VAR
|
||||
(*Statusbits of Carrierstep*)
|
||||
VAR CONSTANT
|
||||
gCARRIERSTEP_UNUSED : USINT := 0; (*Carrier Step not Used*)
|
||||
gCARRIERSTEP_USED : USINT := 1; (*Carrier Step Used*)
|
||||
gCARRIERSTEP_OK : USINT := 2; (*Carrier Step Finished without Problems*)
|
||||
gCARRIERSTEP_INTERUPTED : USINT := 4; (*Carrier Step Stopped before Min Time*)
|
||||
gCARRIERSTEP_OVERTIME : USINT := 8; (*Carrier Step took to long*)
|
||||
gCARRIERSTEP_TEMPERATURE : USINT := 16; (*Carrier Step Temperature Error*)
|
||||
gCARRIERSTEP_BATHMOVEMENT : USINT := 32; (*Carrier Step Problem with Bathmovement*)
|
||||
gCARRIERSTEP_CURRENT : USINT := 64; (*Carrier Step Problem with Current*)
|
||||
gCARRIERSTEP_CURRENT_CHANGED : USINT := 128; (*Carrier Step Current Changed*)
|
||||
END_VAR
|
||||
(*## States of Carrier*)
|
||||
VAR CONSTANT
|
||||
gCARRIER_CLEAN : USINT := 0; (*Carrier was placed on Depot*)
|
||||
gCARRIER_SPARE : USINT := 1; (*Carrier was marked as Empty Carrier*)
|
||||
gCARRIER_INPROCESS : USINT := 2; (*Carrier was marked as Full Carrier*)
|
||||
gCARRIER_INPROCESS_WITH_ERROR : USINT := 3; (*Carrier is in process with errors*)
|
||||
gCARRIER_FINISHED_OK : USINT := 4; (*Carrier is finished without errors*)
|
||||
gCARRIER_FINISHED_WITH_ERROR : USINT := 5; (*Carrier is finished errors*)
|
||||
END_VAR
|
||||
(*## Sprayreg behaviour*)
|
||||
VAR CONSTANT
|
||||
SPRAY_ON_LIFT : USINT := 2; (*Sprayregs spray on Lift*)
|
||||
SPRAY_ON_SINK : USINT := 1; (*Sprayregs spray on Sink*)
|
||||
END_VAR
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File">GlobalComon.var</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Actual Date_And_Time">get_dt</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Blinker 0,1 -0,5s">blinker</Object>
|
||||
<Object Type="File">GlobalConstants.var</Object>
|
||||
</Objects>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File">GlobalComon.var</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Actual Date_And_Time">get_dt</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Blinker 0,1 -0,5s">blinker</Object>
|
||||
<Object Type="File">GlobalConstants.var</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Local variables" Private="true">blinker.var</File>
|
||||
<File Description="Initialization code">blinkerInit.ab</File>
|
||||
<File Description="Cyclic code">blinkerCyclic.ab</File>
|
||||
</Files>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Local variables" Private="true">blinker.var</File>
|
||||
<File Description="Initialization code">blinkerInit.ab</File>
|
||||
<File Description="Cyclic code">blinkerCyclic.ab</File>
|
||||
</Files>
|
||||
</Program>
|
||||
@@ -1,13 +1,13 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- kA
|
||||
********************************************************************
|
||||
* Program: blinker
|
||||
* File: blinker.var
|
||||
* Author: michi
|
||||
* Created: November 23, 2009
|
||||
********************************************************************
|
||||
* Local variables of program blinker
|
||||
********************************************************************)
|
||||
VAR
|
||||
iCount : USINT;
|
||||
END_VAR
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- kA
|
||||
********************************************************************
|
||||
* Program: blinker
|
||||
* File: blinker.var
|
||||
* Author: michi
|
||||
* Created: November 23, 2009
|
||||
********************************************************************
|
||||
* Local variables of program blinker
|
||||
********************************************************************)
|
||||
VAR
|
||||
iCount : USINT;
|
||||
END_VAR
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- kA
|
||||
********************************************************************
|
||||
* Program: blinker
|
||||
* File: blinkerCyclic.ab
|
||||
* Author: michi
|
||||
* Created: November 23, 2009
|
||||
********************************************************************
|
||||
* Implementation of program blinker
|
||||
********************************************************************)
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
(* cyclic program *)
|
||||
;Has to be taskclass 10ms
|
||||
bBlink0_1 = not bBlink0_1
|
||||
inc (iCount)
|
||||
if ((iCount mod 5) = 0) then
|
||||
bBlink0_5 = not bBlink0_5
|
||||
endif
|
||||
if ((iCount mod 10) = 0) then
|
||||
bBlink1_0 = not bBlink1_0
|
||||
endif
|
||||
if ((iCount mod 20) = 0) then
|
||||
bBlink2_0 = not bBlink2_0
|
||||
endif
|
||||
if ((iCount mod 50) = 0) then
|
||||
bBlink5_0 = not bBlink5_0
|
||||
iCount = 0
|
||||
endif
|
||||
END_PROGRAM
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- kA
|
||||
********************************************************************
|
||||
* Program: blinker
|
||||
* File: blinkerCyclic.ab
|
||||
* Author: michi
|
||||
* Created: November 23, 2009
|
||||
********************************************************************
|
||||
* Implementation of program blinker
|
||||
********************************************************************)
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
(* cyclic program *)
|
||||
;Has to be taskclass 10ms
|
||||
bBlink0_1 = not bBlink0_1
|
||||
inc (iCount)
|
||||
if ((iCount mod 5) = 0) then
|
||||
bBlink0_5 = not bBlink0_5
|
||||
endif
|
||||
if ((iCount mod 10) = 0) then
|
||||
bBlink1_0 = not bBlink1_0
|
||||
endif
|
||||
if ((iCount mod 20) = 0) then
|
||||
bBlink2_0 = not bBlink2_0
|
||||
endif
|
||||
if ((iCount mod 50) = 0) then
|
||||
bBlink5_0 = not bBlink5_0
|
||||
iCount = 0
|
||||
endif
|
||||
END_PROGRAM
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- kA
|
||||
********************************************************************
|
||||
* Program: blinker
|
||||
* File: blinkerInit.ab
|
||||
* Author: michi
|
||||
* Created: November 23, 2009
|
||||
********************************************************************
|
||||
* Implementation of program blinker
|
||||
********************************************************************)
|
||||
|
||||
PROGRAM _INIT
|
||||
iCount = 0
|
||||
|
||||
END_PROGRAM
|
||||
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- kA
|
||||
********************************************************************
|
||||
* Program: blinker
|
||||
* File: blinkerInit.ab
|
||||
* Author: michi
|
||||
* Created: November 23, 2009
|
||||
********************************************************************
|
||||
* Implementation of program blinker
|
||||
********************************************************************)
|
||||
|
||||
PROGRAM _INIT
|
||||
iCount = 0
|
||||
|
||||
END_PROGRAM
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Private="true">get_dt.var</File>
|
||||
<File>get_dtInit.ab</File>
|
||||
<File>get_dtCyclic.ab</File>
|
||||
</Files>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Private="true">get_dt.var</File>
|
||||
<File>get_dtInit.ab</File>
|
||||
<File>get_dtCyclic.ab</File>
|
||||
</Files>
|
||||
</Program>
|
||||
@@ -1,13 +1,13 @@
|
||||
VAR
|
||||
lDTGetTime : DTGetTime;
|
||||
lUtcDTStructureGetTime : UtcDTStructureGetTime;
|
||||
END_VAR
|
||||
(*For unixtimestamp conversion*)
|
||||
VAR CONSTANT
|
||||
uiDaysToMonthStart : ARRAY[0..11] OF UINT := [0,31,59,90,120,151,181,212,243,273,304,334];
|
||||
END_VAR
|
||||
VAR
|
||||
udYears : UDINT;
|
||||
udSwitchYears : UDINT;
|
||||
udUnixTime : UDINT;
|
||||
END_VAR
|
||||
VAR
|
||||
lDTGetTime : DTGetTime;
|
||||
lUtcDTStructureGetTime : UtcDTStructureGetTime;
|
||||
END_VAR
|
||||
(*For unixtimestamp conversion*)
|
||||
VAR CONSTANT
|
||||
uiDaysToMonthStart : ARRAY[0..11] OF UINT := [0,31,59,90,120,151,181,212,243,273,304,334];
|
||||
END_VAR
|
||||
VAR
|
||||
udYears : UDINT;
|
||||
udSwitchYears : UDINT;
|
||||
udUnixTime : UDINT;
|
||||
END_VAR
|
||||
|
||||
@@ -1,26 +1,27 @@
|
||||
PROGRAM _CYCLIC
|
||||
//SGC Version
|
||||
//Retrieve actual Date and Time in different Formats
|
||||
//as Date and Time
|
||||
lDTGetTime.enable = true
|
||||
lDTGetTime FUB DTGetTime ()
|
||||
gdtActTime = lDTGetTime.DT1
|
||||
DT_TO_DTStructure (gdtActTime, ADR (gDTSActTimeUTC))
|
||||
|
||||
|
||||
//as Unix Timestamp
|
||||
udYears = gDTSActTimeUTC.year - 1970
|
||||
udSwitchYears = ((gDTSActTimeUTC.year - 1) - 1968) / 4\
|
||||
- ((gDTSActTimeUTC.year - 1) - 1900) / 100\
|
||||
+ ((gDTSActTimeUTC.year - 1) - 1600) / 400
|
||||
|
||||
udUnixTime = gDTSActTimeUTC.second + 60 * gDTSActTimeUTC.minute + 3600 * gDTSActTimeUTC.hour + \
|
||||
(uiDaysToMonthStart[gDTSActTimeUTC.month - 1] + gDTSActTimeUTC.day -1 + udYears * 365 + udSwitchYears) * 86400
|
||||
|
||||
IF (gDTSActTimeUTC.month > 2) AND (gDTSActTimeUTC.year MOD 4 = 0) AND ((gDTSActTimeUTC.year MOD 100 <> 0) OR (gDTSActTimeUTC.year MOD 400 = 0)) THEN
|
||||
udUnixTime = udUnixTime + 86400
|
||||
ENDIF
|
||||
gudUnixTimeUTC = udUnixTime
|
||||
|
||||
END_PROGRAM
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
//SGC Version
|
||||
//Retrieve actual Date and Time in different Formats
|
||||
//as Date and Time
|
||||
lDTGetTime.enable = true
|
||||
lDTGetTime FUB DTGetTime ()
|
||||
gdtActTime = lDTGetTime.DT1
|
||||
DT_TO_DTStructure (gdtActTime, ADR (gDTSActTimeUTC))
|
||||
|
||||
|
||||
//as Unix Timestamp
|
||||
udYears = gDTSActTimeUTC.year - 1970
|
||||
udSwitchYears = ((gDTSActTimeUTC.year - 1) - 1968) / 4\
|
||||
- ((gDTSActTimeUTC.year - 1) - 1900) / 100\
|
||||
+ ((gDTSActTimeUTC.year - 1) - 1600) / 400
|
||||
|
||||
udUnixTime = gDTSActTimeUTC.second + UDINT (60) * gDTSActTimeUTC.minute + UDINT (3600) * gDTSActTimeUTC.hour + \
|
||||
(uiDaysToMonthStart[gDTSActTimeUTC.month - 1] + gDTSActTimeUTC.day -1 + udYears * 365 + udSwitchYears) * 86400
|
||||
|
||||
|
||||
IF (gDTSActTimeUTC.month > 2) AND (gDTSActTimeUTC.year MOD 4 = 0) AND ((gDTSActTimeUTC.year MOD 100 <> 0) OR (gDTSActTimeUTC.year MOD 400 = 0)) THEN
|
||||
udUnixTime = udUnixTime + 86400
|
||||
ENDIF
|
||||
gudUnixTimeUTC = udUnixTime
|
||||
|
||||
END_PROGRAM
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
PROGRAM _INIT
|
||||
(* init program *)
|
||||
;tSEtSntpClient_0.enalbe = true
|
||||
END_PROGRAM
|
||||
|
||||
PROGRAM _INIT
|
||||
(* init program *)
|
||||
;tSEtSntpClient_0.enalbe = true
|
||||
END_PROGRAM
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Program" Language="IEC" Description="Collectd Client">collectd</Object>
|
||||
</Objects>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Program" Language="IEC" Description="Collectd Client">collectd</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Implementation code">collectd.st</File>
|
||||
<File Description="Local data types" Private="true">collectd.typ</File>
|
||||
<File Description="Local variables" Private="true">collectd.var</File>
|
||||
</Files>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Implementation code">collectd.st</File>
|
||||
<File Description="Local data types" Private="true">collectd.typ</File>
|
||||
<File Description="Local variables" Private="true">collectd.var</File>
|
||||
</Files>
|
||||
</Program>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,26 +1,26 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* Program: collectd
|
||||
* File: collectd.typ
|
||||
* Author: michi
|
||||
* Created: July 10, 2012
|
||||
********************************************************************
|
||||
* Local data types of program collectd
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
Steps_enum :
|
||||
(
|
||||
enSTEP_INIT,
|
||||
enSTEP_OPEN,
|
||||
enSTEP_CLIENT,
|
||||
enSTEP_READY,
|
||||
enSTEP_SEND,
|
||||
enSTEP_WAIT,
|
||||
enSTEP_CLOSE,
|
||||
enSTEP_ERROR,
|
||||
enSTEP_ERROR_STOP,
|
||||
enSTEP_CLOSED
|
||||
);
|
||||
END_TYPE
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* Program: collectd
|
||||
* File: collectd.typ
|
||||
* Author: michi
|
||||
* Created: July 10, 2012
|
||||
********************************************************************
|
||||
* Local data types of program collectd
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
Steps_enum :
|
||||
(
|
||||
enSTEP_INIT,
|
||||
enSTEP_OPEN,
|
||||
enSTEP_CLIENT,
|
||||
enSTEP_READY,
|
||||
enSTEP_SEND,
|
||||
enSTEP_WAIT,
|
||||
enSTEP_CLOSE,
|
||||
enSTEP_ERROR,
|
||||
enSTEP_ERROR_STOP,
|
||||
enSTEP_CLOSED
|
||||
);
|
||||
END_TYPE
|
||||
|
||||
@@ -1,41 +1,41 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* Program: collectd
|
||||
* File: collectd.var
|
||||
* Author: michi
|
||||
* Created: July 10, 2012
|
||||
********************************************************************
|
||||
* Local variables of program collectd
|
||||
********************************************************************)
|
||||
VAR
|
||||
FUB_UdpOpen : UdpOpen;
|
||||
FUB_UdpConnect : UdpConnect;
|
||||
FUB_UdpClose : UdpClose;
|
||||
FUB_UdpSend : UdpSend;
|
||||
TON_Delay : TON;
|
||||
luiStatus : UINT;
|
||||
ludStartAdr : UDINT;
|
||||
lrValue : REAL := 1234.0;
|
||||
ldValue : DWORD;
|
||||
ldValue1 : DWORD;
|
||||
ldValue2 : DWORD;
|
||||
ludNextAdr : UDINT;
|
||||
ludUnixTimeUTC : UDINT;
|
||||
lStrDebug : STRING[80];
|
||||
lBSendBuf : ARRAY[0..1023] OF BYTE;
|
||||
enStep : Steps_enum := (0); (*Steps of Connection Handling*)
|
||||
END_VAR
|
||||
(*//Collectd Part Types*)
|
||||
VAR
|
||||
PT_HOST : STRING[2] := '$00$00';
|
||||
PT_TIME : STRING[2] := '$00$01';
|
||||
PT_PLUGIN : STRING[2] := '$00$02';
|
||||
PT_PLUGIN_INSTANCE : STRING[2] := '$00$03';
|
||||
PT_TYPE : STRING[2] := '$00$04';
|
||||
PT_TYPE_INSTANCE : STRING[2] := '$00$05';
|
||||
PT_VALUES : STRING[2] := '$00$06';
|
||||
PT_INTERVAL : STRING[2] := '$00$07';
|
||||
PT_TIME_HR : STRING[2] := '$00$08'; (*Time High Resolution*)
|
||||
VT_GAUGE : STRING[1] := '$01'; (*GAUGE: Double (LREAL) little Endian*)
|
||||
END_VAR
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* Program: collectd
|
||||
* File: collectd.var
|
||||
* Author: michi
|
||||
* Created: July 10, 2012
|
||||
********************************************************************
|
||||
* Local variables of program collectd
|
||||
********************************************************************)
|
||||
VAR
|
||||
FUB_UdpOpen : UdpOpen;
|
||||
FUB_UdpConnect : UdpConnect;
|
||||
FUB_UdpClose : UdpClose;
|
||||
FUB_UdpSend : UdpSend;
|
||||
TON_Delay : TON;
|
||||
luiStatus : UINT;
|
||||
ludStartAdr : UDINT;
|
||||
lrValue : REAL := 1234.0;
|
||||
ldValue : DWORD;
|
||||
ldValue1 : DWORD;
|
||||
ldValue2 : DWORD;
|
||||
ludNextAdr : UDINT;
|
||||
ludUnixTimeUTC : UDINT;
|
||||
lStrDebug : STRING[80];
|
||||
lBSendBuf : ARRAY[0..1023] OF BYTE;
|
||||
enStep : Steps_enum := (0); (*Steps of Connection Handling*)
|
||||
END_VAR
|
||||
(*//Collectd Part Types*)
|
||||
VAR
|
||||
PT_HOST : STRING[2] := '$00$00';
|
||||
PT_TIME : STRING[2] := '$00$01';
|
||||
PT_PLUGIN : STRING[2] := '$00$02';
|
||||
PT_PLUGIN_INSTANCE : STRING[2] := '$00$03';
|
||||
PT_TYPE : STRING[2] := '$00$04';
|
||||
PT_TYPE_INSTANCE : STRING[2] := '$00$05';
|
||||
PT_VALUES : STRING[2] := '$00$06';
|
||||
PT_INTERVAL : STRING[2] := '$00$07';
|
||||
PT_TIME_HR : STRING[2] := '$00$08'; (*Time High Resolution*)
|
||||
VT_GAUGE : STRING[1] := '$01'; (*GAUGE: Double (LREAL) little Endian*)
|
||||
END_VAR
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: Global.typ
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* Global data types of project testplc
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
|
||||
END_TYPE
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: Global.typ
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* Global data types of project testplc
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
|
||||
END_TYPE
|
||||
|
||||
@@ -1,27 +1,18 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: Global.var
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* Global variables of project testplc
|
||||
********************************************************************)
|
||||
VAR
|
||||
giOven1Temp1 : INT;
|
||||
giOven1Temp2 : INT;
|
||||
giOven1Temp3 : INT;
|
||||
giOven1Temp4 : INT;
|
||||
giOven1Temp5 : INT;
|
||||
giOven1Temp6 : INT;
|
||||
giOven1Temp7 : INT;
|
||||
giOven1Temp8 : INT;
|
||||
giOven2Temp1 : INT;
|
||||
giOven2Temp2 : INT;
|
||||
giOven2Temp3 : INT;
|
||||
giOven2Temp4 : INT;
|
||||
giOven2Temp5 : INT;
|
||||
giOven2Temp6 : INT;
|
||||
giOven2Temp7 : INT;
|
||||
giOven2Temp8 : INT;
|
||||
END_VAR
|
||||
VAR
|
||||
giOven1Temp1 : INT;
|
||||
giOven1Temp2 : INT;
|
||||
giOven1Temp3 : INT;
|
||||
giOven1Temp4 : INT;
|
||||
giOven1Temp5 : INT;
|
||||
giOven1Temp6 : INT;
|
||||
giOven1Temp7 : INT;
|
||||
giOven1Temp8 : INT;
|
||||
giOven2Temp1 : INT;
|
||||
giOven2Temp2 : INT;
|
||||
giOven2Temp3 : INT;
|
||||
giOven2Temp4 : INT;
|
||||
giOven2Temp5 : INT;
|
||||
giOven2Temp6 : INT;
|
||||
giOven2Temp7 : INT;
|
||||
giOven2Temp8 : INT;
|
||||
END_VAR
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,49 +1,49 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASIECCON_H_
|
||||
#define ASIECCON_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
signed short H_TO_NINT(signed short IN);
|
||||
unsigned short H_TO_NUINT(unsigned short IN);
|
||||
signed long H_TO_NDINT(signed long IN);
|
||||
unsigned long H_TO_NUDINT(unsigned long IN);
|
||||
float H_TO_NREAL(float IN);
|
||||
plctime H_TO_NTIME(plctime IN);
|
||||
DATE_AND_TIME H_TO_NDT(DATE_AND_TIME IN);
|
||||
signed short N_TO_HINT(signed short IN);
|
||||
unsigned short N_TO_HUINT(unsigned short IN);
|
||||
signed long N_TO_HDINT(signed long IN);
|
||||
unsigned long N_TO_HUDINT(unsigned long IN);
|
||||
float N_TO_HREAL(float IN);
|
||||
plctime N_TO_HTIME(plctime IN);
|
||||
DATE_AND_TIME N_TO_HDT(DATE_AND_TIME IN);
|
||||
signed short swapINT(signed short IN);
|
||||
unsigned short swapUINT(unsigned short IN);
|
||||
signed long swapDINT(signed long IN);
|
||||
unsigned long swapUDINT(unsigned long IN);
|
||||
float swapREAL(float IN);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASIECCON_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASIECCON_H_
|
||||
#define ASIECCON_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
signed short H_TO_NINT(signed short IN);
|
||||
unsigned short H_TO_NUINT(unsigned short IN);
|
||||
signed long H_TO_NDINT(signed long IN);
|
||||
unsigned long H_TO_NUDINT(unsigned long IN);
|
||||
float H_TO_NREAL(float IN);
|
||||
plctime H_TO_NTIME(plctime IN);
|
||||
DATE_AND_TIME H_TO_NDT(DATE_AND_TIME IN);
|
||||
signed short N_TO_HINT(signed short IN);
|
||||
unsigned short N_TO_HUINT(unsigned short IN);
|
||||
signed long N_TO_HDINT(signed long IN);
|
||||
unsigned long N_TO_HUDINT(unsigned long IN);
|
||||
float N_TO_HREAL(float IN);
|
||||
plctime N_TO_HTIME(plctime IN);
|
||||
DATE_AND_TIME N_TO_HDT(DATE_AND_TIME IN);
|
||||
signed short swapINT(signed short IN);
|
||||
unsigned short swapUINT(unsigned short IN);
|
||||
signed long swapDINT(signed long IN);
|
||||
unsigned long swapUDINT(unsigned long IN);
|
||||
float swapREAL(float IN);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASIECCON_H_ */
|
||||
|
||||
|
||||
@@ -1,62 +1,62 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASIECCON_H_
|
||||
#define ASIECCON_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
signed short H_TO_NINT(signed short IN);
|
||||
unsigned short H_TO_NUINT(unsigned short IN);
|
||||
signed long H_TO_NDINT(signed long IN);
|
||||
unsigned long H_TO_NUDINT(unsigned long IN);
|
||||
float H_TO_NREAL(float IN);
|
||||
plctime H_TO_NTIME(plctime IN);
|
||||
DATE_AND_TIME H_TO_NDT(DATE_AND_TIME IN);
|
||||
DATE H_TO_NDATE(DATE IN);
|
||||
TOD H_TO_NTOD(TOD IN);
|
||||
signed short N_TO_HINT(signed short IN);
|
||||
unsigned short N_TO_HUINT(unsigned short IN);
|
||||
signed long N_TO_HDINT(signed long IN);
|
||||
unsigned long N_TO_HUDINT(unsigned long IN);
|
||||
float N_TO_HREAL(float IN);
|
||||
plctime N_TO_HTIME(plctime IN);
|
||||
DATE_AND_TIME N_TO_HDT(DATE_AND_TIME IN);
|
||||
DATE N_TO_HDATE(DATE IN);
|
||||
TOD N_TO_HTOD(TOD IN);
|
||||
signed short swapINT(signed short IN);
|
||||
unsigned short swapUINT(unsigned short IN);
|
||||
WORD swapWORD(WORD IN);
|
||||
signed long swapDINT(signed long IN);
|
||||
unsigned long swapUDINT(unsigned long IN);
|
||||
DWORD swapDWORD(DWORD IN);
|
||||
TIME swapTIME(TIME IN);
|
||||
DATE_AND_TIME swapDT(DATE_AND_TIME IN);
|
||||
DATE swapDATE(DATE IN);
|
||||
TOD swapTOD(TOD IN);
|
||||
float swapREAL(float IN);
|
||||
|
||||
/* The interface declarations of the AsIecCon functions are not included here
|
||||
* because they are inline in IEC languages. The x_TO_STRING and the
|
||||
* STRING_TO_x functions are not available for C programms. */
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASIECCON_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASIECCON_H_
|
||||
#define ASIECCON_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
signed short H_TO_NINT(signed short IN);
|
||||
unsigned short H_TO_NUINT(unsigned short IN);
|
||||
signed long H_TO_NDINT(signed long IN);
|
||||
unsigned long H_TO_NUDINT(unsigned long IN);
|
||||
float H_TO_NREAL(float IN);
|
||||
plctime H_TO_NTIME(plctime IN);
|
||||
DATE_AND_TIME H_TO_NDT(DATE_AND_TIME IN);
|
||||
DATE H_TO_NDATE(DATE IN);
|
||||
TOD H_TO_NTOD(TOD IN);
|
||||
signed short N_TO_HINT(signed short IN);
|
||||
unsigned short N_TO_HUINT(unsigned short IN);
|
||||
signed long N_TO_HDINT(signed long IN);
|
||||
unsigned long N_TO_HUDINT(unsigned long IN);
|
||||
float N_TO_HREAL(float IN);
|
||||
plctime N_TO_HTIME(plctime IN);
|
||||
DATE_AND_TIME N_TO_HDT(DATE_AND_TIME IN);
|
||||
DATE N_TO_HDATE(DATE IN);
|
||||
TOD N_TO_HTOD(TOD IN);
|
||||
signed short swapINT(signed short IN);
|
||||
unsigned short swapUINT(unsigned short IN);
|
||||
WORD swapWORD(WORD IN);
|
||||
signed long swapDINT(signed long IN);
|
||||
unsigned long swapUDINT(unsigned long IN);
|
||||
DWORD swapDWORD(DWORD IN);
|
||||
TIME swapTIME(TIME IN);
|
||||
DATE_AND_TIME swapDT(DATE_AND_TIME IN);
|
||||
DATE swapDATE(DATE IN);
|
||||
TOD swapTOD(TOD IN);
|
||||
float swapREAL(float IN);
|
||||
|
||||
/* The interface declarations of the AsIecCon functions are not included here
|
||||
* because they are inline in IEC languages. The x_TO_STRING and the
|
||||
* STRING_TO_x functions are not available for C programms. */
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASIECCON_H_ */
|
||||
|
||||
|
||||
@@ -1,62 +1,62 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASIECCON_H_
|
||||
#define ASIECCON_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
signed short H_TO_NINT(signed short IN);
|
||||
unsigned short H_TO_NUINT(unsigned short IN);
|
||||
signed long H_TO_NDINT(signed long IN);
|
||||
unsigned long H_TO_NUDINT(unsigned long IN);
|
||||
float H_TO_NREAL(float IN);
|
||||
plctime H_TO_NTIME(plctime IN);
|
||||
DATE_AND_TIME H_TO_NDT(DATE_AND_TIME IN);
|
||||
DATE H_TO_NDATE(DATE IN);
|
||||
TOD H_TO_NTOD(TOD IN);
|
||||
signed short N_TO_HINT(signed short IN);
|
||||
unsigned short N_TO_HUINT(unsigned short IN);
|
||||
signed long N_TO_HDINT(signed long IN);
|
||||
unsigned long N_TO_HUDINT(unsigned long IN);
|
||||
float N_TO_HREAL(float IN);
|
||||
plctime N_TO_HTIME(plctime IN);
|
||||
DATE_AND_TIME N_TO_HDT(DATE_AND_TIME IN);
|
||||
DATE N_TO_HDATE(DATE IN);
|
||||
TOD N_TO_HTOD(TOD IN);
|
||||
signed short swapINT(signed short IN);
|
||||
unsigned short swapUINT(unsigned short IN);
|
||||
WORD swapWORD(WORD IN);
|
||||
signed long swapDINT(signed long IN);
|
||||
unsigned long swapUDINT(unsigned long IN);
|
||||
DWORD swapDWORD(DWORD IN);
|
||||
TIME swapTIME(TIME IN);
|
||||
DATE_AND_TIME swapDT(DATE_AND_TIME IN);
|
||||
DATE swapDATE(DATE IN);
|
||||
TOD swapTOD(TOD IN);
|
||||
float swapREAL(float IN);
|
||||
|
||||
/* The interface declarations of the AsIecCon functions are not included here
|
||||
* because they are inline in IEC languages. The x_TO_STRING and the
|
||||
* STRING_TO_x functions are not available for C programms. */
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASIECCON_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASIECCON_H_
|
||||
#define ASIECCON_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
signed short H_TO_NINT(signed short IN);
|
||||
unsigned short H_TO_NUINT(unsigned short IN);
|
||||
signed long H_TO_NDINT(signed long IN);
|
||||
unsigned long H_TO_NUDINT(unsigned long IN);
|
||||
float H_TO_NREAL(float IN);
|
||||
plctime H_TO_NTIME(plctime IN);
|
||||
DATE_AND_TIME H_TO_NDT(DATE_AND_TIME IN);
|
||||
DATE H_TO_NDATE(DATE IN);
|
||||
TOD H_TO_NTOD(TOD IN);
|
||||
signed short N_TO_HINT(signed short IN);
|
||||
unsigned short N_TO_HUINT(unsigned short IN);
|
||||
signed long N_TO_HDINT(signed long IN);
|
||||
unsigned long N_TO_HUDINT(unsigned long IN);
|
||||
float N_TO_HREAL(float IN);
|
||||
plctime N_TO_HTIME(plctime IN);
|
||||
DATE_AND_TIME N_TO_HDT(DATE_AND_TIME IN);
|
||||
DATE N_TO_HDATE(DATE IN);
|
||||
TOD N_TO_HTOD(TOD IN);
|
||||
signed short swapINT(signed short IN);
|
||||
unsigned short swapUINT(unsigned short IN);
|
||||
WORD swapWORD(WORD IN);
|
||||
signed long swapDINT(signed long IN);
|
||||
unsigned long swapUDINT(unsigned long IN);
|
||||
DWORD swapDWORD(DWORD IN);
|
||||
TIME swapTIME(TIME IN);
|
||||
DATE_AND_TIME swapDT(DATE_AND_TIME IN);
|
||||
DATE swapDATE(DATE IN);
|
||||
TOD swapTOD(TOD IN);
|
||||
float swapREAL(float IN);
|
||||
|
||||
/* The interface declarations of the AsIecCon functions are not included here
|
||||
* because they are inline in IEC languages. The x_TO_STRING and the
|
||||
* STRING_TO_x functions are not available for C programms. */
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASIECCON_H_ */
|
||||
|
||||
|
||||
@@ -1,149 +1,149 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: AsUDP
|
||||
* File: AsUDP.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library AsUDP
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK UdpOpen (*opens a UDP port; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
pIfAddr : UDINT; (*pointer to the IP address of the ethernet interface where the UDP socket should be connected*)
|
||||
port : UINT; (*port number that the UDP socket should connect to*)
|
||||
options : UDINT; (*options that can be set during opening, e.g., udpOPT_REUSEADDR*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
ident : UDINT; (*identifier used for all other UDP FBKs as an input parameter*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpClose (*closes a UDP port and frees up all required resources; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpConnect (*connects a UDP port to an opposite station; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
pHost : UDINT; (*pointer to the ip address of the receiver*)
|
||||
port : UINT; (*port number of the receiver*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpDisconnect (*connects a UDP port and the opposite station; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpSend (*sends udp datagrams; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
pHost : UDINT; (*pointer to the ip address or name of the receiver*)
|
||||
port : UINT; (*port number of the receiver*)
|
||||
pData : UDINT; (*pointer to the send datagram*)
|
||||
datalen : UDINT; (*length of send datagram*)
|
||||
flags : UDINT; (*send flags*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
sentlen : UDINT; (*number of bytes sent*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpRecv (*receives udp datagrams; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
pData : UDINT; (*pointer to the buffer where to store received datagram*)
|
||||
datamax : UDINT; (*buffer size (max. length of received datagram)*)
|
||||
flags : UDINT; (*receive flags*)
|
||||
pIpAddr : UDINT; (*pointer where to store the ip address of the sender*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
recvlen : UDINT; (*lentgh of received datagram*)
|
||||
port : UINT; (*port number of transmitter*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpIoctl (*changes or retrieves settings; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
ioctl : UDINT; (*io control code*)
|
||||
pData : UDINT; (*pointer to the input/output data buffer*)
|
||||
datalen : UDINT; (*lentgh of io control input data*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
outlen : UDINT; (*length of the input data or maximum length of the output data*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: AsUDP
|
||||
* File: AsUDP.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library AsUDP
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK UdpOpen (*opens a UDP port; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
pIfAddr : UDINT; (*pointer to the IP address of the ethernet interface where the UDP socket should be connected*)
|
||||
port : UINT; (*port number that the UDP socket should connect to*)
|
||||
options : UDINT; (*options that can be set during opening, e.g., udpOPT_REUSEADDR*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
ident : UDINT; (*identifier used for all other UDP FBKs as an input parameter*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpClose (*closes a UDP port and frees up all required resources; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpConnect (*connects a UDP port to an opposite station; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
pHost : UDINT; (*pointer to the ip address of the receiver*)
|
||||
port : UINT; (*port number of the receiver*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpDisconnect (*connects a UDP port and the opposite station; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpSend (*sends udp datagrams; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
pHost : UDINT; (*pointer to the ip address or name of the receiver*)
|
||||
port : UINT; (*port number of the receiver*)
|
||||
pData : UDINT; (*pointer to the send datagram*)
|
||||
datalen : UDINT; (*length of send datagram*)
|
||||
flags : UDINT; (*send flags*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
sentlen : UDINT; (*number of bytes sent*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpRecv (*receives udp datagrams; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
pData : UDINT; (*pointer to the buffer where to store received datagram*)
|
||||
datamax : UDINT; (*buffer size (max. length of received datagram)*)
|
||||
flags : UDINT; (*receive flags*)
|
||||
pIpAddr : UDINT; (*pointer where to store the ip address of the sender*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
recvlen : UDINT; (*lentgh of received datagram*)
|
||||
port : UINT; (*port number of transmitter*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UdpIoctl (*changes or retrieves settings; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
ident : UDINT; (*identifier returned from UdpOpen*)
|
||||
ioctl : UDINT; (*io control code*)
|
||||
pData : UDINT; (*pointer to the input/output data buffer*)
|
||||
datalen : UDINT; (*lentgh of io control input data*)
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
status : UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
outlen : UDINT; (*length of the input data or maximum length of the output data*)
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
@@ -1,21 +1,21 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: AsUDP
|
||||
* File: AsUDP.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library AsUDP
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
udpIP_MREQ_typ : STRUCT (*multicast*)
|
||||
pMcastAddr : UDINT; (*pointer to the multicast address*)
|
||||
pIfAddr : UDINT; (*pointer to the interface address*)
|
||||
END_STRUCT;
|
||||
|
||||
udpSO_ADDRESS_typ : STRUCT (*socket address*)
|
||||
pPort : UDINT; (*pointer where to store the portnumber*)
|
||||
pIpAddr : UDINT; (*pointer where to store the socket ip address*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: AsUDP
|
||||
* File: AsUDP.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library AsUDP
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
udpIP_MREQ_typ : STRUCT (*multicast*)
|
||||
pMcastAddr : UDINT; (*pointer to the multicast address*)
|
||||
pIfAddr : UDINT; (*pointer to the interface address*)
|
||||
END_STRUCT;
|
||||
|
||||
udpSO_ADDRESS_typ : STRUCT (*socket address*)
|
||||
pPort : UDINT; (*pointer where to store the portnumber*)
|
||||
pIpAddr : UDINT; (*pointer where to store the socket ip address*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
@@ -1,66 +1,66 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: AsUDP
|
||||
* File: AsUDP.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library AsUDP
|
||||
********************************************************************)
|
||||
|
||||
VAR CONSTANT
|
||||
udpERR_INVALID_IDENT : UINT := 32500; (*invalid ident*)
|
||||
udpERR_NOMORE_IDENTS : UINT := 32501; (*no more idents*)
|
||||
udpERR_ALREADY_EXIST : UINT := 32502; (*socket already exists*)
|
||||
udpERR_PARAMETER : UINT := 32503; (*invalid parameter, check parameter*)
|
||||
udpERR_INVALID_IOCTL : UINT := 32504; (*io control not supported*)
|
||||
udpERR_NO_DATA : UINT := 32505; (*no data to receive*)
|
||||
udpERR_SENTLEN : UINT := 32506; (*send failed*)
|
||||
udpERR_WOULDBLOCK : UINT := 32507; (*would block, call again*)
|
||||
udpERR_CONNREFUSED : UINT := 32508; (*connection refused*)
|
||||
udpERR_ACCESS : UINT := 32509; (*send broadcast failed (broadcast option not set)*)
|
||||
udpERR_UNREACHABLE : UINT := 32510; (*network/host is unreachable*)
|
||||
udpERR_INTERFACE : UINT := 32511; (*illegal inetrafce*)
|
||||
|
||||
udpERR_SOCKET_CREATE : UINT := 32550; (*create socket failed*)
|
||||
udpERR_SOCKET_BIND : UINT := 32551; (*bind socket failed*)
|
||||
udpERR_SOCKET_CONNECT : UINT := 32552; (*connect socket failed*)
|
||||
|
||||
udpERR_SYSTEM : UINT := 32599; (*system error*)
|
||||
|
||||
udpSO_BROADCAST_SET : UDINT := 1001; (*set option broadcast (true/false)*)
|
||||
udpSO_BROADCAST_GET : UDINT := 1002; (*get option broadcast*)
|
||||
udpSO_SNDBUF_SET : UDINT := 1003; (*set option send buffer*)
|
||||
udpSO_SNDBUF_GET : UDINT := 1004; (*get option send buffer*)
|
||||
udpSO_RCVBUF_SET : UDINT := 1005; (*set option receive buffer*)
|
||||
udpSO_RCVBUF_GET : UDINT := 1006; (*get option receive buffer*)
|
||||
udpSO_ADDRESS_GET : UDINT := 1007; (*get socket address*)
|
||||
udpIP_ADD_MEMBERSHIP : UDINT := 2001; (*add multicast group*)
|
||||
udpIP_DROP_MEMBERSHIP : UDINT := 2002; (*leave multicast group*)
|
||||
udpIP_MULTICAST_IF_SET : UDINT := 2003; (*set interface for outgoing multicats*)
|
||||
udpIP_MULTICAST_IF_GET : UDINT := 2004; (*get interface for outgoing multicats*)
|
||||
udpIP_MULTICAST_TTL_SET : UDINT := 2005; (*set time to life for outgoing multicats*)
|
||||
udpIP_MULTICAST_TTL_GET : UDINT := 2006; (*get time to life for outgoing multicats*)
|
||||
udpIP_MULTICAST_LOOP_SET : UDINT := 2007; (*set wether or not loopback multicats*)
|
||||
udpIP_MULTICAST_LOOP_GET : UDINT := 2008; (*get loopback multicats*)
|
||||
udpIP_TOS_SET : UDINT := 2009; (*set type of service field for outgoing packets*)
|
||||
udpIP_TOS_GET : UDINT := 2010; (*get type of service field for outgoing packets*)
|
||||
udpIP_TTL_SET : UDINT := 2011; (*set time to live field for outgoing packets*)
|
||||
udpIP_TTL_GET : UDINT := 2012; (*get time to live field for outgoing packets*)
|
||||
udpID_LIST_GET : UDINT := 3001; (*get ident list*)
|
||||
udpID_MAX_GET : UDINT := 3002; (*get max ident count*)
|
||||
|
||||
udpMSG_PEEK : UDINT := 1; (*don't remove data from socket (receive)*)
|
||||
udpMSG_DONTROUTE : UDINT := 2; (*message don't route (send)*)
|
||||
|
||||
udpOPT_REUSEADDR : UDINT := 1; (*option reuse address*)
|
||||
udpOPT_REUSEPORT : UDINT := 2; (*option reuse port*)
|
||||
udpOPT_BROADCAST : UDINT := 4; (*option enable broadcast*)
|
||||
|
||||
udpIP_TOS_LOWDELAY : UDINT := 16; (*type of service priority low delay*)
|
||||
udpIP_TOS_THROUGHPUT : UDINT := 8; (*type of service priority throughput*)
|
||||
udpIP_TOS_RELIABILITY : UDINT := 4; (*type of service priority reliability*)
|
||||
udpIP_TOS_MINCOST : UDINT := 2; (*type of service priority mincost*)
|
||||
|
||||
udpINVALID_IDENT : UDINT := 0; (*invlaid ident*)
|
||||
END_VAR
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: AsUDP
|
||||
* File: AsUDP.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library AsUDP
|
||||
********************************************************************)
|
||||
|
||||
VAR CONSTANT
|
||||
udpERR_INVALID_IDENT : UINT := 32500; (*invalid ident*)
|
||||
udpERR_NOMORE_IDENTS : UINT := 32501; (*no more idents*)
|
||||
udpERR_ALREADY_EXIST : UINT := 32502; (*socket already exists*)
|
||||
udpERR_PARAMETER : UINT := 32503; (*invalid parameter, check parameter*)
|
||||
udpERR_INVALID_IOCTL : UINT := 32504; (*io control not supported*)
|
||||
udpERR_NO_DATA : UINT := 32505; (*no data to receive*)
|
||||
udpERR_SENTLEN : UINT := 32506; (*send failed*)
|
||||
udpERR_WOULDBLOCK : UINT := 32507; (*would block, call again*)
|
||||
udpERR_CONNREFUSED : UINT := 32508; (*connection refused*)
|
||||
udpERR_ACCESS : UINT := 32509; (*send broadcast failed (broadcast option not set)*)
|
||||
udpERR_UNREACHABLE : UINT := 32510; (*network/host is unreachable*)
|
||||
udpERR_INTERFACE : UINT := 32511; (*illegal inetrafce*)
|
||||
|
||||
udpERR_SOCKET_CREATE : UINT := 32550; (*create socket failed*)
|
||||
udpERR_SOCKET_BIND : UINT := 32551; (*bind socket failed*)
|
||||
udpERR_SOCKET_CONNECT : UINT := 32552; (*connect socket failed*)
|
||||
|
||||
udpERR_SYSTEM : UINT := 32599; (*system error*)
|
||||
|
||||
udpSO_BROADCAST_SET : UDINT := 1001; (*set option broadcast (true/false)*)
|
||||
udpSO_BROADCAST_GET : UDINT := 1002; (*get option broadcast*)
|
||||
udpSO_SNDBUF_SET : UDINT := 1003; (*set option send buffer*)
|
||||
udpSO_SNDBUF_GET : UDINT := 1004; (*get option send buffer*)
|
||||
udpSO_RCVBUF_SET : UDINT := 1005; (*set option receive buffer*)
|
||||
udpSO_RCVBUF_GET : UDINT := 1006; (*get option receive buffer*)
|
||||
udpSO_ADDRESS_GET : UDINT := 1007; (*get socket address*)
|
||||
udpIP_ADD_MEMBERSHIP : UDINT := 2001; (*add multicast group*)
|
||||
udpIP_DROP_MEMBERSHIP : UDINT := 2002; (*leave multicast group*)
|
||||
udpIP_MULTICAST_IF_SET : UDINT := 2003; (*set interface for outgoing multicats*)
|
||||
udpIP_MULTICAST_IF_GET : UDINT := 2004; (*get interface for outgoing multicats*)
|
||||
udpIP_MULTICAST_TTL_SET : UDINT := 2005; (*set time to life for outgoing multicats*)
|
||||
udpIP_MULTICAST_TTL_GET : UDINT := 2006; (*get time to life for outgoing multicats*)
|
||||
udpIP_MULTICAST_LOOP_SET : UDINT := 2007; (*set wether or not loopback multicats*)
|
||||
udpIP_MULTICAST_LOOP_GET : UDINT := 2008; (*get loopback multicats*)
|
||||
udpIP_TOS_SET : UDINT := 2009; (*set type of service field for outgoing packets*)
|
||||
udpIP_TOS_GET : UDINT := 2010; (*get type of service field for outgoing packets*)
|
||||
udpIP_TTL_SET : UDINT := 2011; (*set time to live field for outgoing packets*)
|
||||
udpIP_TTL_GET : UDINT := 2012; (*get time to live field for outgoing packets*)
|
||||
udpID_LIST_GET : UDINT := 3001; (*get ident list*)
|
||||
udpID_MAX_GET : UDINT := 3002; (*get max ident count*)
|
||||
|
||||
udpMSG_PEEK : UDINT := 1; (*don't remove data from socket (receive)*)
|
||||
udpMSG_DONTROUTE : UDINT := 2; (*message don't route (send)*)
|
||||
|
||||
udpOPT_REUSEADDR : UDINT := 1; (*option reuse address*)
|
||||
udpOPT_REUSEPORT : UDINT := 2; (*option reuse port*)
|
||||
udpOPT_BROADCAST : UDINT := 4; (*option enable broadcast*)
|
||||
|
||||
udpIP_TOS_LOWDELAY : UDINT := 16; (*type of service priority low delay*)
|
||||
udpIP_TOS_THROUGHPUT : UDINT := 8; (*type of service priority throughput*)
|
||||
udpIP_TOS_RELIABILITY : UDINT := 4; (*type of service priority reliability*)
|
||||
udpIP_TOS_MINCOST : UDINT := 2; (*type of service priority mincost*)
|
||||
|
||||
udpINVALID_IDENT : UDINT := 0; (*invlaid ident*)
|
||||
END_VAR
|
||||
|
||||
@@ -1,268 +1,268 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASUDP_
|
||||
#define _ASUDP_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define udpINVALID_IDENT 0U
|
||||
#define udpIP_TOS_MINCOST 2U
|
||||
#define udpIP_TOS_RELIABILITY 4U
|
||||
#define udpIP_TOS_THROUGHPUT 8U
|
||||
#define udpIP_TOS_LOWDELAY 16U
|
||||
#define udpOPT_BROADCAST 4U
|
||||
#define udpOPT_REUSEPORT 2U
|
||||
#define udpOPT_REUSEADDR 1U
|
||||
#define udpMSG_DONTROUTE 2U
|
||||
#define udpMSG_PEEK 1U
|
||||
#define udpID_MAX_GET 3002U
|
||||
#define udpID_LIST_GET 3001U
|
||||
#define udpIP_TTL_GET 2012U
|
||||
#define udpIP_TTL_SET 2011U
|
||||
#define udpIP_TOS_GET 2010U
|
||||
#define udpIP_TOS_SET 2009U
|
||||
#define udpIP_MULTICAST_LOOP_GET 2008U
|
||||
#define udpIP_MULTICAST_LOOP_SET 2007U
|
||||
#define udpIP_MULTICAST_TTL_GET 2006U
|
||||
#define udpIP_MULTICAST_TTL_SET 2005U
|
||||
#define udpIP_MULTICAST_IF_GET 2004U
|
||||
#define udpIP_MULTICAST_IF_SET 2003U
|
||||
#define udpIP_DROP_MEMBERSHIP 2002U
|
||||
#define udpIP_ADD_MEMBERSHIP 2001U
|
||||
#define udpSO_ADDRESS_GET 1007U
|
||||
#define udpSO_RCVBUF_GET 1006U
|
||||
#define udpSO_RCVBUF_SET 1005U
|
||||
#define udpSO_SNDBUF_GET 1004U
|
||||
#define udpSO_SNDBUF_SET 1003U
|
||||
#define udpSO_BROADCAST_GET 1002U
|
||||
#define udpSO_BROADCAST_SET 1001U
|
||||
#define udpERR_SYSTEM 32599U
|
||||
#define udpERR_SOCKET_CONNECT 32552U
|
||||
#define udpERR_SOCKET_BIND 32551U
|
||||
#define udpERR_SOCKET_CREATE 32550U
|
||||
#define udpERR_INTERFACE 32511U
|
||||
#define udpERR_UNREACHABLE 32510U
|
||||
#define udpERR_ACCESS 32509U
|
||||
#define udpERR_CONNREFUSED 32508U
|
||||
#define udpERR_WOULDBLOCK 32507U
|
||||
#define udpERR_SENTLEN 32506U
|
||||
#define udpERR_NO_DATA 32505U
|
||||
#define udpERR_INVALID_IOCTL 32504U
|
||||
#define udpERR_PARAMETER 32503U
|
||||
#define udpERR_ALREADY_EXIST 32502U
|
||||
#define udpERR_NOMORE_IDENTS 32501U
|
||||
#define udpERR_INVALID_IDENT 32500U
|
||||
#else
|
||||
_IEC_CONST unsigned long udpINVALID_IDENT = 0U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_MINCOST = 2U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_RELIABILITY = 4U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_THROUGHPUT = 8U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_LOWDELAY = 16U;
|
||||
_IEC_CONST unsigned long udpOPT_BROADCAST = 4U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEPORT = 2U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEADDR = 1U;
|
||||
_IEC_CONST unsigned long udpMSG_DONTROUTE = 2U;
|
||||
_IEC_CONST unsigned long udpMSG_PEEK = 1U;
|
||||
_IEC_CONST unsigned long udpID_MAX_GET = 3002U;
|
||||
_IEC_CONST unsigned long udpID_LIST_GET = 3001U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_GET = 2012U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_SET = 2011U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_GET = 2010U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_SET = 2009U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_GET = 2008U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_SET = 2007U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_GET = 2006U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_SET = 2005U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_GET = 2004U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_SET = 2003U;
|
||||
_IEC_CONST unsigned long udpIP_DROP_MEMBERSHIP = 2002U;
|
||||
_IEC_CONST unsigned long udpIP_ADD_MEMBERSHIP = 2001U;
|
||||
_IEC_CONST unsigned long udpSO_ADDRESS_GET = 1007U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_GET = 1006U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_SET = 1005U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_GET = 1004U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_SET = 1003U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_GET = 1002U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_SET = 1001U;
|
||||
_IEC_CONST unsigned short udpERR_SYSTEM = 32599U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CONNECT = 32552U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_BIND = 32551U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CREATE = 32550U;
|
||||
_IEC_CONST unsigned short udpERR_INTERFACE = 32511U;
|
||||
_IEC_CONST unsigned short udpERR_UNREACHABLE = 32510U;
|
||||
_IEC_CONST unsigned short udpERR_ACCESS = 32509U;
|
||||
_IEC_CONST unsigned short udpERR_CONNREFUSED = 32508U;
|
||||
_IEC_CONST unsigned short udpERR_WOULDBLOCK = 32507U;
|
||||
_IEC_CONST unsigned short udpERR_SENTLEN = 32506U;
|
||||
_IEC_CONST unsigned short udpERR_NO_DATA = 32505U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IOCTL = 32504U;
|
||||
_IEC_CONST unsigned short udpERR_PARAMETER = 32503U;
|
||||
_IEC_CONST unsigned short udpERR_ALREADY_EXIST = 32502U;
|
||||
_IEC_CONST unsigned short udpERR_NOMORE_IDENTS = 32501U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IDENT = 32500U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct udpIP_MREQ_typ
|
||||
{ unsigned long pMcastAddr;
|
||||
unsigned long pIfAddr;
|
||||
} udpIP_MREQ_typ;
|
||||
|
||||
typedef struct udpSO_ADDRESS_typ
|
||||
{ unsigned long pPort;
|
||||
unsigned long pIpAddr;
|
||||
} udpSO_ADDRESS_typ;
|
||||
|
||||
typedef struct UdpOpen
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pIfAddr;
|
||||
unsigned short port;
|
||||
unsigned long options;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long ident;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpOpen_typ;
|
||||
|
||||
typedef struct UdpClose
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpClose_typ;
|
||||
|
||||
typedef struct UdpConnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpConnect_typ;
|
||||
|
||||
typedef struct UdpDisconnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpDisconnect_typ;
|
||||
|
||||
typedef struct UdpSend
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
unsigned long flags;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long sentlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpSend_typ;
|
||||
|
||||
typedef struct UdpRecv
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pData;
|
||||
unsigned long datamax;
|
||||
unsigned long flags;
|
||||
unsigned long pIpAddr;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long recvlen;
|
||||
unsigned short port;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpRecv_typ;
|
||||
|
||||
typedef struct UdpIoctl
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long ioctl;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long outlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpIoctl_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void UdpOpen(struct UdpOpen* inst);
|
||||
void UdpClose(struct UdpClose* inst);
|
||||
void UdpConnect(struct UdpConnect* inst);
|
||||
void UdpDisconnect(struct UdpDisconnect* inst);
|
||||
void UdpSend(struct UdpSend* inst);
|
||||
void UdpRecv(struct UdpRecv* inst);
|
||||
void UdpIoctl(struct UdpIoctl* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASUDP_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASUDP_
|
||||
#define _ASUDP_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define udpINVALID_IDENT 0U
|
||||
#define udpIP_TOS_MINCOST 2U
|
||||
#define udpIP_TOS_RELIABILITY 4U
|
||||
#define udpIP_TOS_THROUGHPUT 8U
|
||||
#define udpIP_TOS_LOWDELAY 16U
|
||||
#define udpOPT_BROADCAST 4U
|
||||
#define udpOPT_REUSEPORT 2U
|
||||
#define udpOPT_REUSEADDR 1U
|
||||
#define udpMSG_DONTROUTE 2U
|
||||
#define udpMSG_PEEK 1U
|
||||
#define udpID_MAX_GET 3002U
|
||||
#define udpID_LIST_GET 3001U
|
||||
#define udpIP_TTL_GET 2012U
|
||||
#define udpIP_TTL_SET 2011U
|
||||
#define udpIP_TOS_GET 2010U
|
||||
#define udpIP_TOS_SET 2009U
|
||||
#define udpIP_MULTICAST_LOOP_GET 2008U
|
||||
#define udpIP_MULTICAST_LOOP_SET 2007U
|
||||
#define udpIP_MULTICAST_TTL_GET 2006U
|
||||
#define udpIP_MULTICAST_TTL_SET 2005U
|
||||
#define udpIP_MULTICAST_IF_GET 2004U
|
||||
#define udpIP_MULTICAST_IF_SET 2003U
|
||||
#define udpIP_DROP_MEMBERSHIP 2002U
|
||||
#define udpIP_ADD_MEMBERSHIP 2001U
|
||||
#define udpSO_ADDRESS_GET 1007U
|
||||
#define udpSO_RCVBUF_GET 1006U
|
||||
#define udpSO_RCVBUF_SET 1005U
|
||||
#define udpSO_SNDBUF_GET 1004U
|
||||
#define udpSO_SNDBUF_SET 1003U
|
||||
#define udpSO_BROADCAST_GET 1002U
|
||||
#define udpSO_BROADCAST_SET 1001U
|
||||
#define udpERR_SYSTEM 32599U
|
||||
#define udpERR_SOCKET_CONNECT 32552U
|
||||
#define udpERR_SOCKET_BIND 32551U
|
||||
#define udpERR_SOCKET_CREATE 32550U
|
||||
#define udpERR_INTERFACE 32511U
|
||||
#define udpERR_UNREACHABLE 32510U
|
||||
#define udpERR_ACCESS 32509U
|
||||
#define udpERR_CONNREFUSED 32508U
|
||||
#define udpERR_WOULDBLOCK 32507U
|
||||
#define udpERR_SENTLEN 32506U
|
||||
#define udpERR_NO_DATA 32505U
|
||||
#define udpERR_INVALID_IOCTL 32504U
|
||||
#define udpERR_PARAMETER 32503U
|
||||
#define udpERR_ALREADY_EXIST 32502U
|
||||
#define udpERR_NOMORE_IDENTS 32501U
|
||||
#define udpERR_INVALID_IDENT 32500U
|
||||
#else
|
||||
_IEC_CONST unsigned long udpINVALID_IDENT = 0U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_MINCOST = 2U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_RELIABILITY = 4U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_THROUGHPUT = 8U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_LOWDELAY = 16U;
|
||||
_IEC_CONST unsigned long udpOPT_BROADCAST = 4U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEPORT = 2U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEADDR = 1U;
|
||||
_IEC_CONST unsigned long udpMSG_DONTROUTE = 2U;
|
||||
_IEC_CONST unsigned long udpMSG_PEEK = 1U;
|
||||
_IEC_CONST unsigned long udpID_MAX_GET = 3002U;
|
||||
_IEC_CONST unsigned long udpID_LIST_GET = 3001U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_GET = 2012U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_SET = 2011U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_GET = 2010U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_SET = 2009U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_GET = 2008U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_SET = 2007U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_GET = 2006U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_SET = 2005U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_GET = 2004U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_SET = 2003U;
|
||||
_IEC_CONST unsigned long udpIP_DROP_MEMBERSHIP = 2002U;
|
||||
_IEC_CONST unsigned long udpIP_ADD_MEMBERSHIP = 2001U;
|
||||
_IEC_CONST unsigned long udpSO_ADDRESS_GET = 1007U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_GET = 1006U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_SET = 1005U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_GET = 1004U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_SET = 1003U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_GET = 1002U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_SET = 1001U;
|
||||
_IEC_CONST unsigned short udpERR_SYSTEM = 32599U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CONNECT = 32552U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_BIND = 32551U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CREATE = 32550U;
|
||||
_IEC_CONST unsigned short udpERR_INTERFACE = 32511U;
|
||||
_IEC_CONST unsigned short udpERR_UNREACHABLE = 32510U;
|
||||
_IEC_CONST unsigned short udpERR_ACCESS = 32509U;
|
||||
_IEC_CONST unsigned short udpERR_CONNREFUSED = 32508U;
|
||||
_IEC_CONST unsigned short udpERR_WOULDBLOCK = 32507U;
|
||||
_IEC_CONST unsigned short udpERR_SENTLEN = 32506U;
|
||||
_IEC_CONST unsigned short udpERR_NO_DATA = 32505U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IOCTL = 32504U;
|
||||
_IEC_CONST unsigned short udpERR_PARAMETER = 32503U;
|
||||
_IEC_CONST unsigned short udpERR_ALREADY_EXIST = 32502U;
|
||||
_IEC_CONST unsigned short udpERR_NOMORE_IDENTS = 32501U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IDENT = 32500U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct udpIP_MREQ_typ
|
||||
{ unsigned long pMcastAddr;
|
||||
unsigned long pIfAddr;
|
||||
} udpIP_MREQ_typ;
|
||||
|
||||
typedef struct udpSO_ADDRESS_typ
|
||||
{ unsigned long pPort;
|
||||
unsigned long pIpAddr;
|
||||
} udpSO_ADDRESS_typ;
|
||||
|
||||
typedef struct UdpOpen
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pIfAddr;
|
||||
unsigned short port;
|
||||
unsigned long options;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long ident;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpOpen_typ;
|
||||
|
||||
typedef struct UdpClose
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpClose_typ;
|
||||
|
||||
typedef struct UdpConnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpConnect_typ;
|
||||
|
||||
typedef struct UdpDisconnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpDisconnect_typ;
|
||||
|
||||
typedef struct UdpSend
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
unsigned long flags;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long sentlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpSend_typ;
|
||||
|
||||
typedef struct UdpRecv
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pData;
|
||||
unsigned long datamax;
|
||||
unsigned long flags;
|
||||
unsigned long pIpAddr;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long recvlen;
|
||||
unsigned short port;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpRecv_typ;
|
||||
|
||||
typedef struct UdpIoctl
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long ioctl;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long outlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpIoctl_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void UdpOpen(struct UdpOpen* inst);
|
||||
void UdpClose(struct UdpClose* inst);
|
||||
void UdpConnect(struct UdpConnect* inst);
|
||||
void UdpDisconnect(struct UdpDisconnect* inst);
|
||||
void UdpSend(struct UdpSend* inst);
|
||||
void UdpRecv(struct UdpRecv* inst);
|
||||
void UdpIoctl(struct UdpIoctl* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASUDP_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,268 +1,268 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASUDP_
|
||||
#define _ASUDP_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define udpINVALID_IDENT 0U
|
||||
#define udpIP_TOS_MINCOST 2U
|
||||
#define udpIP_TOS_RELIABILITY 4U
|
||||
#define udpIP_TOS_THROUGHPUT 8U
|
||||
#define udpIP_TOS_LOWDELAY 16U
|
||||
#define udpOPT_BROADCAST 4U
|
||||
#define udpOPT_REUSEPORT 2U
|
||||
#define udpOPT_REUSEADDR 1U
|
||||
#define udpMSG_DONTROUTE 2U
|
||||
#define udpMSG_PEEK 1U
|
||||
#define udpID_MAX_GET 3002U
|
||||
#define udpID_LIST_GET 3001U
|
||||
#define udpIP_TTL_GET 2012U
|
||||
#define udpIP_TTL_SET 2011U
|
||||
#define udpIP_TOS_GET 2010U
|
||||
#define udpIP_TOS_SET 2009U
|
||||
#define udpIP_MULTICAST_LOOP_GET 2008U
|
||||
#define udpIP_MULTICAST_LOOP_SET 2007U
|
||||
#define udpIP_MULTICAST_TTL_GET 2006U
|
||||
#define udpIP_MULTICAST_TTL_SET 2005U
|
||||
#define udpIP_MULTICAST_IF_GET 2004U
|
||||
#define udpIP_MULTICAST_IF_SET 2003U
|
||||
#define udpIP_DROP_MEMBERSHIP 2002U
|
||||
#define udpIP_ADD_MEMBERSHIP 2001U
|
||||
#define udpSO_ADDRESS_GET 1007U
|
||||
#define udpSO_RCVBUF_GET 1006U
|
||||
#define udpSO_RCVBUF_SET 1005U
|
||||
#define udpSO_SNDBUF_GET 1004U
|
||||
#define udpSO_SNDBUF_SET 1003U
|
||||
#define udpSO_BROADCAST_GET 1002U
|
||||
#define udpSO_BROADCAST_SET 1001U
|
||||
#define udpERR_SYSTEM 32599U
|
||||
#define udpERR_SOCKET_CONNECT 32552U
|
||||
#define udpERR_SOCKET_BIND 32551U
|
||||
#define udpERR_SOCKET_CREATE 32550U
|
||||
#define udpERR_INTERFACE 32511U
|
||||
#define udpERR_UNREACHABLE 32510U
|
||||
#define udpERR_ACCESS 32509U
|
||||
#define udpERR_CONNREFUSED 32508U
|
||||
#define udpERR_WOULDBLOCK 32507U
|
||||
#define udpERR_SENTLEN 32506U
|
||||
#define udpERR_NO_DATA 32505U
|
||||
#define udpERR_INVALID_IOCTL 32504U
|
||||
#define udpERR_PARAMETER 32503U
|
||||
#define udpERR_ALREADY_EXIST 32502U
|
||||
#define udpERR_NOMORE_IDENTS 32501U
|
||||
#define udpERR_INVALID_IDENT 32500U
|
||||
#else
|
||||
_IEC_CONST unsigned long udpINVALID_IDENT = 0U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_MINCOST = 2U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_RELIABILITY = 4U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_THROUGHPUT = 8U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_LOWDELAY = 16U;
|
||||
_IEC_CONST unsigned long udpOPT_BROADCAST = 4U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEPORT = 2U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEADDR = 1U;
|
||||
_IEC_CONST unsigned long udpMSG_DONTROUTE = 2U;
|
||||
_IEC_CONST unsigned long udpMSG_PEEK = 1U;
|
||||
_IEC_CONST unsigned long udpID_MAX_GET = 3002U;
|
||||
_IEC_CONST unsigned long udpID_LIST_GET = 3001U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_GET = 2012U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_SET = 2011U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_GET = 2010U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_SET = 2009U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_GET = 2008U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_SET = 2007U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_GET = 2006U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_SET = 2005U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_GET = 2004U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_SET = 2003U;
|
||||
_IEC_CONST unsigned long udpIP_DROP_MEMBERSHIP = 2002U;
|
||||
_IEC_CONST unsigned long udpIP_ADD_MEMBERSHIP = 2001U;
|
||||
_IEC_CONST unsigned long udpSO_ADDRESS_GET = 1007U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_GET = 1006U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_SET = 1005U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_GET = 1004U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_SET = 1003U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_GET = 1002U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_SET = 1001U;
|
||||
_IEC_CONST unsigned short udpERR_SYSTEM = 32599U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CONNECT = 32552U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_BIND = 32551U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CREATE = 32550U;
|
||||
_IEC_CONST unsigned short udpERR_INTERFACE = 32511U;
|
||||
_IEC_CONST unsigned short udpERR_UNREACHABLE = 32510U;
|
||||
_IEC_CONST unsigned short udpERR_ACCESS = 32509U;
|
||||
_IEC_CONST unsigned short udpERR_CONNREFUSED = 32508U;
|
||||
_IEC_CONST unsigned short udpERR_WOULDBLOCK = 32507U;
|
||||
_IEC_CONST unsigned short udpERR_SENTLEN = 32506U;
|
||||
_IEC_CONST unsigned short udpERR_NO_DATA = 32505U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IOCTL = 32504U;
|
||||
_IEC_CONST unsigned short udpERR_PARAMETER = 32503U;
|
||||
_IEC_CONST unsigned short udpERR_ALREADY_EXIST = 32502U;
|
||||
_IEC_CONST unsigned short udpERR_NOMORE_IDENTS = 32501U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IDENT = 32500U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct udpIP_MREQ_typ
|
||||
{ unsigned long pMcastAddr;
|
||||
unsigned long pIfAddr;
|
||||
} udpIP_MREQ_typ;
|
||||
|
||||
typedef struct udpSO_ADDRESS_typ
|
||||
{ unsigned long pPort;
|
||||
unsigned long pIpAddr;
|
||||
} udpSO_ADDRESS_typ;
|
||||
|
||||
typedef struct UdpOpen
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pIfAddr;
|
||||
unsigned short port;
|
||||
unsigned long options;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long ident;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpOpen_typ;
|
||||
|
||||
typedef struct UdpClose
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpClose_typ;
|
||||
|
||||
typedef struct UdpConnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpConnect_typ;
|
||||
|
||||
typedef struct UdpDisconnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpDisconnect_typ;
|
||||
|
||||
typedef struct UdpSend
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
unsigned long flags;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long sentlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpSend_typ;
|
||||
|
||||
typedef struct UdpRecv
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pData;
|
||||
unsigned long datamax;
|
||||
unsigned long flags;
|
||||
unsigned long pIpAddr;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long recvlen;
|
||||
unsigned short port;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpRecv_typ;
|
||||
|
||||
typedef struct UdpIoctl
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long ioctl;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long outlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpIoctl_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void UdpOpen(struct UdpOpen* inst);
|
||||
void UdpClose(struct UdpClose* inst);
|
||||
void UdpConnect(struct UdpConnect* inst);
|
||||
void UdpDisconnect(struct UdpDisconnect* inst);
|
||||
void UdpSend(struct UdpSend* inst);
|
||||
void UdpRecv(struct UdpRecv* inst);
|
||||
void UdpIoctl(struct UdpIoctl* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASUDP_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASUDP_
|
||||
#define _ASUDP_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define udpINVALID_IDENT 0U
|
||||
#define udpIP_TOS_MINCOST 2U
|
||||
#define udpIP_TOS_RELIABILITY 4U
|
||||
#define udpIP_TOS_THROUGHPUT 8U
|
||||
#define udpIP_TOS_LOWDELAY 16U
|
||||
#define udpOPT_BROADCAST 4U
|
||||
#define udpOPT_REUSEPORT 2U
|
||||
#define udpOPT_REUSEADDR 1U
|
||||
#define udpMSG_DONTROUTE 2U
|
||||
#define udpMSG_PEEK 1U
|
||||
#define udpID_MAX_GET 3002U
|
||||
#define udpID_LIST_GET 3001U
|
||||
#define udpIP_TTL_GET 2012U
|
||||
#define udpIP_TTL_SET 2011U
|
||||
#define udpIP_TOS_GET 2010U
|
||||
#define udpIP_TOS_SET 2009U
|
||||
#define udpIP_MULTICAST_LOOP_GET 2008U
|
||||
#define udpIP_MULTICAST_LOOP_SET 2007U
|
||||
#define udpIP_MULTICAST_TTL_GET 2006U
|
||||
#define udpIP_MULTICAST_TTL_SET 2005U
|
||||
#define udpIP_MULTICAST_IF_GET 2004U
|
||||
#define udpIP_MULTICAST_IF_SET 2003U
|
||||
#define udpIP_DROP_MEMBERSHIP 2002U
|
||||
#define udpIP_ADD_MEMBERSHIP 2001U
|
||||
#define udpSO_ADDRESS_GET 1007U
|
||||
#define udpSO_RCVBUF_GET 1006U
|
||||
#define udpSO_RCVBUF_SET 1005U
|
||||
#define udpSO_SNDBUF_GET 1004U
|
||||
#define udpSO_SNDBUF_SET 1003U
|
||||
#define udpSO_BROADCAST_GET 1002U
|
||||
#define udpSO_BROADCAST_SET 1001U
|
||||
#define udpERR_SYSTEM 32599U
|
||||
#define udpERR_SOCKET_CONNECT 32552U
|
||||
#define udpERR_SOCKET_BIND 32551U
|
||||
#define udpERR_SOCKET_CREATE 32550U
|
||||
#define udpERR_INTERFACE 32511U
|
||||
#define udpERR_UNREACHABLE 32510U
|
||||
#define udpERR_ACCESS 32509U
|
||||
#define udpERR_CONNREFUSED 32508U
|
||||
#define udpERR_WOULDBLOCK 32507U
|
||||
#define udpERR_SENTLEN 32506U
|
||||
#define udpERR_NO_DATA 32505U
|
||||
#define udpERR_INVALID_IOCTL 32504U
|
||||
#define udpERR_PARAMETER 32503U
|
||||
#define udpERR_ALREADY_EXIST 32502U
|
||||
#define udpERR_NOMORE_IDENTS 32501U
|
||||
#define udpERR_INVALID_IDENT 32500U
|
||||
#else
|
||||
_IEC_CONST unsigned long udpINVALID_IDENT = 0U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_MINCOST = 2U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_RELIABILITY = 4U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_THROUGHPUT = 8U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_LOWDELAY = 16U;
|
||||
_IEC_CONST unsigned long udpOPT_BROADCAST = 4U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEPORT = 2U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEADDR = 1U;
|
||||
_IEC_CONST unsigned long udpMSG_DONTROUTE = 2U;
|
||||
_IEC_CONST unsigned long udpMSG_PEEK = 1U;
|
||||
_IEC_CONST unsigned long udpID_MAX_GET = 3002U;
|
||||
_IEC_CONST unsigned long udpID_LIST_GET = 3001U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_GET = 2012U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_SET = 2011U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_GET = 2010U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_SET = 2009U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_GET = 2008U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_SET = 2007U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_GET = 2006U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_SET = 2005U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_GET = 2004U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_SET = 2003U;
|
||||
_IEC_CONST unsigned long udpIP_DROP_MEMBERSHIP = 2002U;
|
||||
_IEC_CONST unsigned long udpIP_ADD_MEMBERSHIP = 2001U;
|
||||
_IEC_CONST unsigned long udpSO_ADDRESS_GET = 1007U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_GET = 1006U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_SET = 1005U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_GET = 1004U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_SET = 1003U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_GET = 1002U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_SET = 1001U;
|
||||
_IEC_CONST unsigned short udpERR_SYSTEM = 32599U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CONNECT = 32552U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_BIND = 32551U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CREATE = 32550U;
|
||||
_IEC_CONST unsigned short udpERR_INTERFACE = 32511U;
|
||||
_IEC_CONST unsigned short udpERR_UNREACHABLE = 32510U;
|
||||
_IEC_CONST unsigned short udpERR_ACCESS = 32509U;
|
||||
_IEC_CONST unsigned short udpERR_CONNREFUSED = 32508U;
|
||||
_IEC_CONST unsigned short udpERR_WOULDBLOCK = 32507U;
|
||||
_IEC_CONST unsigned short udpERR_SENTLEN = 32506U;
|
||||
_IEC_CONST unsigned short udpERR_NO_DATA = 32505U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IOCTL = 32504U;
|
||||
_IEC_CONST unsigned short udpERR_PARAMETER = 32503U;
|
||||
_IEC_CONST unsigned short udpERR_ALREADY_EXIST = 32502U;
|
||||
_IEC_CONST unsigned short udpERR_NOMORE_IDENTS = 32501U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IDENT = 32500U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct udpIP_MREQ_typ
|
||||
{ unsigned long pMcastAddr;
|
||||
unsigned long pIfAddr;
|
||||
} udpIP_MREQ_typ;
|
||||
|
||||
typedef struct udpSO_ADDRESS_typ
|
||||
{ unsigned long pPort;
|
||||
unsigned long pIpAddr;
|
||||
} udpSO_ADDRESS_typ;
|
||||
|
||||
typedef struct UdpOpen
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pIfAddr;
|
||||
unsigned short port;
|
||||
unsigned long options;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long ident;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpOpen_typ;
|
||||
|
||||
typedef struct UdpClose
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpClose_typ;
|
||||
|
||||
typedef struct UdpConnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpConnect_typ;
|
||||
|
||||
typedef struct UdpDisconnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpDisconnect_typ;
|
||||
|
||||
typedef struct UdpSend
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
unsigned long flags;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long sentlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpSend_typ;
|
||||
|
||||
typedef struct UdpRecv
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pData;
|
||||
unsigned long datamax;
|
||||
unsigned long flags;
|
||||
unsigned long pIpAddr;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long recvlen;
|
||||
unsigned short port;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpRecv_typ;
|
||||
|
||||
typedef struct UdpIoctl
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long ioctl;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long outlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpIoctl_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void UdpOpen(struct UdpOpen* inst);
|
||||
void UdpClose(struct UdpClose* inst);
|
||||
void UdpConnect(struct UdpConnect* inst);
|
||||
void UdpDisconnect(struct UdpDisconnect* inst);
|
||||
void UdpSend(struct UdpSend* inst);
|
||||
void UdpRecv(struct UdpRecv* inst);
|
||||
void UdpIoctl(struct UdpIoctl* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASUDP_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,268 +1,268 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASUDP_
|
||||
#define _ASUDP_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define udpINVALID_IDENT 0U
|
||||
#define udpIP_TOS_MINCOST 2U
|
||||
#define udpIP_TOS_RELIABILITY 4U
|
||||
#define udpIP_TOS_THROUGHPUT 8U
|
||||
#define udpIP_TOS_LOWDELAY 16U
|
||||
#define udpOPT_BROADCAST 4U
|
||||
#define udpOPT_REUSEPORT 2U
|
||||
#define udpOPT_REUSEADDR 1U
|
||||
#define udpMSG_DONTROUTE 2U
|
||||
#define udpMSG_PEEK 1U
|
||||
#define udpID_MAX_GET 3002U
|
||||
#define udpID_LIST_GET 3001U
|
||||
#define udpIP_TTL_GET 2012U
|
||||
#define udpIP_TTL_SET 2011U
|
||||
#define udpIP_TOS_GET 2010U
|
||||
#define udpIP_TOS_SET 2009U
|
||||
#define udpIP_MULTICAST_LOOP_GET 2008U
|
||||
#define udpIP_MULTICAST_LOOP_SET 2007U
|
||||
#define udpIP_MULTICAST_TTL_GET 2006U
|
||||
#define udpIP_MULTICAST_TTL_SET 2005U
|
||||
#define udpIP_MULTICAST_IF_GET 2004U
|
||||
#define udpIP_MULTICAST_IF_SET 2003U
|
||||
#define udpIP_DROP_MEMBERSHIP 2002U
|
||||
#define udpIP_ADD_MEMBERSHIP 2001U
|
||||
#define udpSO_ADDRESS_GET 1007U
|
||||
#define udpSO_RCVBUF_GET 1006U
|
||||
#define udpSO_RCVBUF_SET 1005U
|
||||
#define udpSO_SNDBUF_GET 1004U
|
||||
#define udpSO_SNDBUF_SET 1003U
|
||||
#define udpSO_BROADCAST_GET 1002U
|
||||
#define udpSO_BROADCAST_SET 1001U
|
||||
#define udpERR_SYSTEM 32599U
|
||||
#define udpERR_SOCKET_CONNECT 32552U
|
||||
#define udpERR_SOCKET_BIND 32551U
|
||||
#define udpERR_SOCKET_CREATE 32550U
|
||||
#define udpERR_INTERFACE 32511U
|
||||
#define udpERR_UNREACHABLE 32510U
|
||||
#define udpERR_ACCESS 32509U
|
||||
#define udpERR_CONNREFUSED 32508U
|
||||
#define udpERR_WOULDBLOCK 32507U
|
||||
#define udpERR_SENTLEN 32506U
|
||||
#define udpERR_NO_DATA 32505U
|
||||
#define udpERR_INVALID_IOCTL 32504U
|
||||
#define udpERR_PARAMETER 32503U
|
||||
#define udpERR_ALREADY_EXIST 32502U
|
||||
#define udpERR_NOMORE_IDENTS 32501U
|
||||
#define udpERR_INVALID_IDENT 32500U
|
||||
#else
|
||||
_IEC_CONST unsigned long udpINVALID_IDENT = 0U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_MINCOST = 2U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_RELIABILITY = 4U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_THROUGHPUT = 8U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_LOWDELAY = 16U;
|
||||
_IEC_CONST unsigned long udpOPT_BROADCAST = 4U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEPORT = 2U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEADDR = 1U;
|
||||
_IEC_CONST unsigned long udpMSG_DONTROUTE = 2U;
|
||||
_IEC_CONST unsigned long udpMSG_PEEK = 1U;
|
||||
_IEC_CONST unsigned long udpID_MAX_GET = 3002U;
|
||||
_IEC_CONST unsigned long udpID_LIST_GET = 3001U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_GET = 2012U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_SET = 2011U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_GET = 2010U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_SET = 2009U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_GET = 2008U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_SET = 2007U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_GET = 2006U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_SET = 2005U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_GET = 2004U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_SET = 2003U;
|
||||
_IEC_CONST unsigned long udpIP_DROP_MEMBERSHIP = 2002U;
|
||||
_IEC_CONST unsigned long udpIP_ADD_MEMBERSHIP = 2001U;
|
||||
_IEC_CONST unsigned long udpSO_ADDRESS_GET = 1007U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_GET = 1006U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_SET = 1005U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_GET = 1004U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_SET = 1003U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_GET = 1002U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_SET = 1001U;
|
||||
_IEC_CONST unsigned short udpERR_SYSTEM = 32599U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CONNECT = 32552U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_BIND = 32551U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CREATE = 32550U;
|
||||
_IEC_CONST unsigned short udpERR_INTERFACE = 32511U;
|
||||
_IEC_CONST unsigned short udpERR_UNREACHABLE = 32510U;
|
||||
_IEC_CONST unsigned short udpERR_ACCESS = 32509U;
|
||||
_IEC_CONST unsigned short udpERR_CONNREFUSED = 32508U;
|
||||
_IEC_CONST unsigned short udpERR_WOULDBLOCK = 32507U;
|
||||
_IEC_CONST unsigned short udpERR_SENTLEN = 32506U;
|
||||
_IEC_CONST unsigned short udpERR_NO_DATA = 32505U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IOCTL = 32504U;
|
||||
_IEC_CONST unsigned short udpERR_PARAMETER = 32503U;
|
||||
_IEC_CONST unsigned short udpERR_ALREADY_EXIST = 32502U;
|
||||
_IEC_CONST unsigned short udpERR_NOMORE_IDENTS = 32501U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IDENT = 32500U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct udpIP_MREQ_typ
|
||||
{ unsigned long pMcastAddr;
|
||||
unsigned long pIfAddr;
|
||||
} udpIP_MREQ_typ;
|
||||
|
||||
typedef struct udpSO_ADDRESS_typ
|
||||
{ unsigned long pPort;
|
||||
unsigned long pIpAddr;
|
||||
} udpSO_ADDRESS_typ;
|
||||
|
||||
typedef struct UdpOpen
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pIfAddr;
|
||||
unsigned short port;
|
||||
unsigned long options;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long ident;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpOpen_typ;
|
||||
|
||||
typedef struct UdpClose
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpClose_typ;
|
||||
|
||||
typedef struct UdpConnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpConnect_typ;
|
||||
|
||||
typedef struct UdpDisconnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpDisconnect_typ;
|
||||
|
||||
typedef struct UdpSend
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
unsigned long flags;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long sentlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpSend_typ;
|
||||
|
||||
typedef struct UdpRecv
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pData;
|
||||
unsigned long datamax;
|
||||
unsigned long flags;
|
||||
unsigned long pIpAddr;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long recvlen;
|
||||
unsigned short port;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpRecv_typ;
|
||||
|
||||
typedef struct UdpIoctl
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long ioctl;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long outlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpIoctl_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void UdpOpen(struct UdpOpen* inst);
|
||||
void UdpClose(struct UdpClose* inst);
|
||||
void UdpConnect(struct UdpConnect* inst);
|
||||
void UdpDisconnect(struct UdpDisconnect* inst);
|
||||
void UdpSend(struct UdpSend* inst);
|
||||
void UdpRecv(struct UdpRecv* inst);
|
||||
void UdpIoctl(struct UdpIoctl* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASUDP_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASUDP_
|
||||
#define _ASUDP_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define udpINVALID_IDENT 0U
|
||||
#define udpIP_TOS_MINCOST 2U
|
||||
#define udpIP_TOS_RELIABILITY 4U
|
||||
#define udpIP_TOS_THROUGHPUT 8U
|
||||
#define udpIP_TOS_LOWDELAY 16U
|
||||
#define udpOPT_BROADCAST 4U
|
||||
#define udpOPT_REUSEPORT 2U
|
||||
#define udpOPT_REUSEADDR 1U
|
||||
#define udpMSG_DONTROUTE 2U
|
||||
#define udpMSG_PEEK 1U
|
||||
#define udpID_MAX_GET 3002U
|
||||
#define udpID_LIST_GET 3001U
|
||||
#define udpIP_TTL_GET 2012U
|
||||
#define udpIP_TTL_SET 2011U
|
||||
#define udpIP_TOS_GET 2010U
|
||||
#define udpIP_TOS_SET 2009U
|
||||
#define udpIP_MULTICAST_LOOP_GET 2008U
|
||||
#define udpIP_MULTICAST_LOOP_SET 2007U
|
||||
#define udpIP_MULTICAST_TTL_GET 2006U
|
||||
#define udpIP_MULTICAST_TTL_SET 2005U
|
||||
#define udpIP_MULTICAST_IF_GET 2004U
|
||||
#define udpIP_MULTICAST_IF_SET 2003U
|
||||
#define udpIP_DROP_MEMBERSHIP 2002U
|
||||
#define udpIP_ADD_MEMBERSHIP 2001U
|
||||
#define udpSO_ADDRESS_GET 1007U
|
||||
#define udpSO_RCVBUF_GET 1006U
|
||||
#define udpSO_RCVBUF_SET 1005U
|
||||
#define udpSO_SNDBUF_GET 1004U
|
||||
#define udpSO_SNDBUF_SET 1003U
|
||||
#define udpSO_BROADCAST_GET 1002U
|
||||
#define udpSO_BROADCAST_SET 1001U
|
||||
#define udpERR_SYSTEM 32599U
|
||||
#define udpERR_SOCKET_CONNECT 32552U
|
||||
#define udpERR_SOCKET_BIND 32551U
|
||||
#define udpERR_SOCKET_CREATE 32550U
|
||||
#define udpERR_INTERFACE 32511U
|
||||
#define udpERR_UNREACHABLE 32510U
|
||||
#define udpERR_ACCESS 32509U
|
||||
#define udpERR_CONNREFUSED 32508U
|
||||
#define udpERR_WOULDBLOCK 32507U
|
||||
#define udpERR_SENTLEN 32506U
|
||||
#define udpERR_NO_DATA 32505U
|
||||
#define udpERR_INVALID_IOCTL 32504U
|
||||
#define udpERR_PARAMETER 32503U
|
||||
#define udpERR_ALREADY_EXIST 32502U
|
||||
#define udpERR_NOMORE_IDENTS 32501U
|
||||
#define udpERR_INVALID_IDENT 32500U
|
||||
#else
|
||||
_IEC_CONST unsigned long udpINVALID_IDENT = 0U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_MINCOST = 2U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_RELIABILITY = 4U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_THROUGHPUT = 8U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_LOWDELAY = 16U;
|
||||
_IEC_CONST unsigned long udpOPT_BROADCAST = 4U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEPORT = 2U;
|
||||
_IEC_CONST unsigned long udpOPT_REUSEADDR = 1U;
|
||||
_IEC_CONST unsigned long udpMSG_DONTROUTE = 2U;
|
||||
_IEC_CONST unsigned long udpMSG_PEEK = 1U;
|
||||
_IEC_CONST unsigned long udpID_MAX_GET = 3002U;
|
||||
_IEC_CONST unsigned long udpID_LIST_GET = 3001U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_GET = 2012U;
|
||||
_IEC_CONST unsigned long udpIP_TTL_SET = 2011U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_GET = 2010U;
|
||||
_IEC_CONST unsigned long udpIP_TOS_SET = 2009U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_GET = 2008U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_LOOP_SET = 2007U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_GET = 2006U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_TTL_SET = 2005U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_GET = 2004U;
|
||||
_IEC_CONST unsigned long udpIP_MULTICAST_IF_SET = 2003U;
|
||||
_IEC_CONST unsigned long udpIP_DROP_MEMBERSHIP = 2002U;
|
||||
_IEC_CONST unsigned long udpIP_ADD_MEMBERSHIP = 2001U;
|
||||
_IEC_CONST unsigned long udpSO_ADDRESS_GET = 1007U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_GET = 1006U;
|
||||
_IEC_CONST unsigned long udpSO_RCVBUF_SET = 1005U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_GET = 1004U;
|
||||
_IEC_CONST unsigned long udpSO_SNDBUF_SET = 1003U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_GET = 1002U;
|
||||
_IEC_CONST unsigned long udpSO_BROADCAST_SET = 1001U;
|
||||
_IEC_CONST unsigned short udpERR_SYSTEM = 32599U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CONNECT = 32552U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_BIND = 32551U;
|
||||
_IEC_CONST unsigned short udpERR_SOCKET_CREATE = 32550U;
|
||||
_IEC_CONST unsigned short udpERR_INTERFACE = 32511U;
|
||||
_IEC_CONST unsigned short udpERR_UNREACHABLE = 32510U;
|
||||
_IEC_CONST unsigned short udpERR_ACCESS = 32509U;
|
||||
_IEC_CONST unsigned short udpERR_CONNREFUSED = 32508U;
|
||||
_IEC_CONST unsigned short udpERR_WOULDBLOCK = 32507U;
|
||||
_IEC_CONST unsigned short udpERR_SENTLEN = 32506U;
|
||||
_IEC_CONST unsigned short udpERR_NO_DATA = 32505U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IOCTL = 32504U;
|
||||
_IEC_CONST unsigned short udpERR_PARAMETER = 32503U;
|
||||
_IEC_CONST unsigned short udpERR_ALREADY_EXIST = 32502U;
|
||||
_IEC_CONST unsigned short udpERR_NOMORE_IDENTS = 32501U;
|
||||
_IEC_CONST unsigned short udpERR_INVALID_IDENT = 32500U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct udpIP_MREQ_typ
|
||||
{ unsigned long pMcastAddr;
|
||||
unsigned long pIfAddr;
|
||||
} udpIP_MREQ_typ;
|
||||
|
||||
typedef struct udpSO_ADDRESS_typ
|
||||
{ unsigned long pPort;
|
||||
unsigned long pIpAddr;
|
||||
} udpSO_ADDRESS_typ;
|
||||
|
||||
typedef struct UdpOpen
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pIfAddr;
|
||||
unsigned short port;
|
||||
unsigned long options;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long ident;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpOpen_typ;
|
||||
|
||||
typedef struct UdpClose
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpClose_typ;
|
||||
|
||||
typedef struct UdpConnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpConnect_typ;
|
||||
|
||||
typedef struct UdpDisconnect
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpDisconnect_typ;
|
||||
|
||||
typedef struct UdpSend
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pHost;
|
||||
unsigned short port;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
unsigned long flags;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long sentlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpSend_typ;
|
||||
|
||||
typedef struct UdpRecv
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long pData;
|
||||
unsigned long datamax;
|
||||
unsigned long flags;
|
||||
unsigned long pIpAddr;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long recvlen;
|
||||
unsigned short port;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpRecv_typ;
|
||||
|
||||
typedef struct UdpIoctl
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long ident;
|
||||
unsigned long ioctl;
|
||||
unsigned long pData;
|
||||
unsigned long datalen;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long outlen;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UdpIoctl_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void UdpOpen(struct UdpOpen* inst);
|
||||
void UdpClose(struct UdpClose* inst);
|
||||
void UdpConnect(struct UdpConnect* inst);
|
||||
void UdpDisconnect(struct UdpDisconnect* inst);
|
||||
void UdpSend(struct UdpSend* inst);
|
||||
void UdpRecv(struct UdpRecv* inst);
|
||||
void UdpIoctl(struct UdpIoctl* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASUDP_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC1131-3 operator functions. For the most part, these are mathematical and logical functions.">Operator</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains runtime functions for IEC tasks.">Runtime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsTime Library supports DATE_AND_TIME and TIME data types.">AsTime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC 1131-3 conversion functions.">AsIecCon</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The BRSystem library provides the user with a number of system functions for e.g. handling permanent memory, accessing exception information, etc.">brsystem</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The SYS_LIB library contains functions for memory management and operating system manipulation as well as hardware-specific functions.">sys_lib</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsString Library contains FBKs for memory and character string handling.">asstring</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains FBKs for exchanging data packets via datagram sockets (UDP).">AsUDP</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains standard function blocks and funtions for IEC 1131-3.">standard</Object>
|
||||
</Objects>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC1131-3 operator functions. For the most part, these are mathematical and logical functions.">Operator</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains runtime functions for IEC tasks.">Runtime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsTime Library supports DATE_AND_TIME and TIME data types.">AsTime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC 1131-3 conversion functions.">AsIecCon</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The BRSystem library provides the user with a number of system functions for e.g. handling permanent memory, accessing exception information, etc.">brsystem</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The SYS_LIB library contains functions for memory management and operating system manipulation as well as hardware-specific functions.">sys_lib</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsString Library contains FBKs for memory and character string handling.">asstring</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains FBKs for exchanging data packets via datagram sockets (UDP).">AsUDP</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains standard function blocks and funtions for IEC 1131-3.">standard</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,33 +1,33 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASSTRING_H_
|
||||
#define ASSTRING_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short ftoa(float value, unsigned long pString);
|
||||
unsigned short itoa(signed long value, unsigned long pString);
|
||||
float atof(unsigned long pString);
|
||||
signed long atoi(unsigned long pString);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASSTRING_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASSTRING_H_
|
||||
#define ASSTRING_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short ftoa(float value, unsigned long pString);
|
||||
unsigned short itoa(signed long value, unsigned long pString);
|
||||
float atof(unsigned long pString);
|
||||
signed long atoi(unsigned long pString);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASSTRING_H_ */
|
||||
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASSTRING_H_
|
||||
#define ASSTRING_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short ftoa(float value, unsigned long pString);
|
||||
unsigned short itoa(signed long value, unsigned long pString);
|
||||
float atof(unsigned long pString);
|
||||
signed long atoi(unsigned long pString);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASSTRING_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASSTRING_H_
|
||||
#define ASSTRING_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short ftoa(float value, unsigned long pString);
|
||||
unsigned short itoa(signed long value, unsigned long pString);
|
||||
float atof(unsigned long pString);
|
||||
signed long atoi(unsigned long pString);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASSTRING_H_ */
|
||||
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASSTRING_H_
|
||||
#define ASSTRING_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short ftoa(float value, unsigned long pString);
|
||||
unsigned short itoa(signed long value, unsigned long pString);
|
||||
float atof(unsigned long pString);
|
||||
signed long atoi(unsigned long pString);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASSTRING_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef ASSTRING_H_
|
||||
#define ASSTRING_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short ftoa(float value, unsigned long pString);
|
||||
unsigned short itoa(signed long value, unsigned long pString);
|
||||
float atof(unsigned long pString);
|
||||
signed long atoi(unsigned long pString);
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* ASSTRING_H_ */
|
||||
|
||||
|
||||
@@ -1,83 +1,83 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: asstring
|
||||
* File: asstring.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library asstring
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION ftoa : UINT (*converts a REAL value into a character string*)
|
||||
VAR_INPUT
|
||||
value :REAL; (*REAL (FLOAT) value to be converted into a character string*)
|
||||
pString :UDINT; (*pointer to the destination character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION atof : REAL (*converts a character string into a REAL (FLOAT) value*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the character string to be converted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION itoa : UINT (*converts a DINT value into a character string*)
|
||||
VAR_INPUT
|
||||
value :DINT; (*numerical value to be converted into a string*)
|
||||
pString :UDINT; (*pointer to the destination character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION atoi : DINT (*converts a character string into a DINT value*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the character string to be converted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memset : UDINT (*fills the memory area with specific values*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination memory*)
|
||||
value :USINT; (*initialization value*)
|
||||
length :UDINT; (*number of bytes to be initialized*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memcpy : UDINT (*copies the memory area*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination memory*)
|
||||
pSrc :UDINT; (*pointer to the data to be copied*)
|
||||
length :UDINT; (*size of bytes to be copied*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memmove : UDINT (*copies the memory area (even if the memory areas overlap)*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination memory*)
|
||||
pSrc :UDINT; (*pointer to the data to be copied*)
|
||||
length :UDINT; (*size of bytes to be copied*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memcmp : DINT (*compares memory areas*)
|
||||
VAR_INPUT
|
||||
pMem1 :UDINT; (*pointer to the memory area 1*)
|
||||
pMem2 :UDINT; (*pointer to the memory area 2*)
|
||||
length :UDINT; (*size of bytes to be checked*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strcat : UDINT (*attaches character strings to one another*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination character string*)
|
||||
pSrc :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strlen : UINT (*provides the length of a character string*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strcpy : UDINT (*copies one character string into another*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination character string*)
|
||||
pSrc :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strcmp : DINT (*compares two character strings*)
|
||||
VAR_INPUT
|
||||
pString1 :UDINT; (*pointer to the first character string*)
|
||||
pString2 :UDINT; (*pointer to the second character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: asstring
|
||||
* File: asstring.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library asstring
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION ftoa : UINT (*converts a REAL value into a character string*)
|
||||
VAR_INPUT
|
||||
value :REAL; (*REAL (FLOAT) value to be converted into a character string*)
|
||||
pString :UDINT; (*pointer to the destination character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION atof : REAL (*converts a character string into a REAL (FLOAT) value*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the character string to be converted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION itoa : UINT (*converts a DINT value into a character string*)
|
||||
VAR_INPUT
|
||||
value :DINT; (*numerical value to be converted into a string*)
|
||||
pString :UDINT; (*pointer to the destination character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION atoi : DINT (*converts a character string into a DINT value*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the character string to be converted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memset : UDINT (*fills the memory area with specific values*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination memory*)
|
||||
value :USINT; (*initialization value*)
|
||||
length :UDINT; (*number of bytes to be initialized*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memcpy : UDINT (*copies the memory area*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination memory*)
|
||||
pSrc :UDINT; (*pointer to the data to be copied*)
|
||||
length :UDINT; (*size of bytes to be copied*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memmove : UDINT (*copies the memory area (even if the memory areas overlap)*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination memory*)
|
||||
pSrc :UDINT; (*pointer to the data to be copied*)
|
||||
length :UDINT; (*size of bytes to be copied*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION memcmp : DINT (*compares memory areas*)
|
||||
VAR_INPUT
|
||||
pMem1 :UDINT; (*pointer to the memory area 1*)
|
||||
pMem2 :UDINT; (*pointer to the memory area 2*)
|
||||
length :UDINT; (*size of bytes to be checked*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strcat : UDINT (*attaches character strings to one another*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination character string*)
|
||||
pSrc :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strlen : UINT (*provides the length of a character string*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strcpy : UDINT (*copies one character string into another*)
|
||||
VAR_INPUT
|
||||
pDest :UDINT; (*pointer to the destination character string*)
|
||||
pSrc :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION strcmp : DINT (*compares two character strings*)
|
||||
VAR_INPUT
|
||||
pString1 :UDINT; (*pointer to the first character string*)
|
||||
pString2 :UDINT; (*pointer to the second character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
@@ -1,130 +1,130 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASTIME_
|
||||
#define _ASTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define timERR_AR 33213U
|
||||
#define timERR_INVALID_DTSTRUCTURE 33212U
|
||||
#define timERR_INVALID_LEN 33211U
|
||||
#define timERR_INVALID_PARAMETER 33210U
|
||||
#define timTIME_SERVER 2U
|
||||
#define timREAL_TIME_CLOCK 1U
|
||||
#define timNO_DST 3U
|
||||
#define timDAYLIGHT_SAVING_TIME 2U
|
||||
#define timNORMAL_TIME 1U
|
||||
#define TIME_MAX 2073600000
|
||||
#define TIME_MIN (-2073600000)
|
||||
#define DATE_AND_TIME_MAX 4102444799U
|
||||
#define timEXSETTIME_NO_OPTION 0U
|
||||
#define timEXSETTIME_NO_LOGENTRY 1U
|
||||
#else
|
||||
_IEC_CONST unsigned short timERR_AR = 33213U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_DTSTRUCTURE = 33212U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_LEN = 33211U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_PARAMETER = 33210U;
|
||||
_IEC_CONST unsigned char timTIME_SERVER = 2U;
|
||||
_IEC_CONST unsigned char timREAL_TIME_CLOCK = 1U;
|
||||
_IEC_CONST unsigned char timNO_DST = 3U;
|
||||
_IEC_CONST unsigned char timDAYLIGHT_SAVING_TIME = 2U;
|
||||
_IEC_CONST unsigned char timNORMAL_TIME = 1U;
|
||||
_IEC_CONST signed long TIME_MAX = 2073600000;
|
||||
_IEC_CONST signed long TIME_MIN = -2073600000;
|
||||
_IEC_CONST unsigned long DATE_AND_TIME_MAX = 4102444799U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_OPTION = 0U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_LOGENTRY = 1U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct TIMEStructure
|
||||
{ signed char day;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} TIMEStructure;
|
||||
|
||||
typedef struct DTStructure
|
||||
{ unsigned short year;
|
||||
unsigned char month;
|
||||
unsigned char day;
|
||||
unsigned char wday;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} DTStructure;
|
||||
|
||||
typedef struct DTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTExSetTime_typ;
|
||||
|
||||
typedef struct DTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTSetTime_typ;
|
||||
|
||||
typedef struct DTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTGetTime_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void DTExSetTime(struct DTExSetTime* inst);
|
||||
void DTSetTime(struct DTSetTime* inst);
|
||||
void DTGetTime(struct DTGetTime* inst);
|
||||
unsigned long ascTIMEStructure(unsigned long pTIMEStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDTStructure(unsigned long pDTStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascTIME(plctime TIME1, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDT(plcdt DT1, unsigned long pStr, unsigned long len);
|
||||
plctime TIMEStructure_TO_TIME(unsigned long pTIMEStructure);
|
||||
unsigned long TIME_TO_TIMEStructure(plctime TIME1, unsigned long pTIMEStructure);
|
||||
plcdt DTStructure_TO_DT(unsigned long pDTStructure);
|
||||
unsigned long DT_TO_DTStructure(plcdt DT1, unsigned long pDTStructure);
|
||||
unsigned long DiffT(plctime TIME2, plctime TIME1);
|
||||
unsigned long DiffDT(plcdt DT2, plcdt DT1);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASTIME_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASTIME_
|
||||
#define _ASTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define timERR_AR 33213U
|
||||
#define timERR_INVALID_DTSTRUCTURE 33212U
|
||||
#define timERR_INVALID_LEN 33211U
|
||||
#define timERR_INVALID_PARAMETER 33210U
|
||||
#define timTIME_SERVER 2U
|
||||
#define timREAL_TIME_CLOCK 1U
|
||||
#define timNO_DST 3U
|
||||
#define timDAYLIGHT_SAVING_TIME 2U
|
||||
#define timNORMAL_TIME 1U
|
||||
#define TIME_MAX 2073600000
|
||||
#define TIME_MIN (-2073600000)
|
||||
#define DATE_AND_TIME_MAX 4102444799U
|
||||
#define timEXSETTIME_NO_OPTION 0U
|
||||
#define timEXSETTIME_NO_LOGENTRY 1U
|
||||
#else
|
||||
_IEC_CONST unsigned short timERR_AR = 33213U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_DTSTRUCTURE = 33212U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_LEN = 33211U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_PARAMETER = 33210U;
|
||||
_IEC_CONST unsigned char timTIME_SERVER = 2U;
|
||||
_IEC_CONST unsigned char timREAL_TIME_CLOCK = 1U;
|
||||
_IEC_CONST unsigned char timNO_DST = 3U;
|
||||
_IEC_CONST unsigned char timDAYLIGHT_SAVING_TIME = 2U;
|
||||
_IEC_CONST unsigned char timNORMAL_TIME = 1U;
|
||||
_IEC_CONST signed long TIME_MAX = 2073600000;
|
||||
_IEC_CONST signed long TIME_MIN = -2073600000;
|
||||
_IEC_CONST unsigned long DATE_AND_TIME_MAX = 4102444799U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_OPTION = 0U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_LOGENTRY = 1U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct TIMEStructure
|
||||
{ signed char day;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} TIMEStructure;
|
||||
|
||||
typedef struct DTStructure
|
||||
{ unsigned short year;
|
||||
unsigned char month;
|
||||
unsigned char day;
|
||||
unsigned char wday;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} DTStructure;
|
||||
|
||||
typedef struct DTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTExSetTime_typ;
|
||||
|
||||
typedef struct DTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTSetTime_typ;
|
||||
|
||||
typedef struct DTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTGetTime_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void DTExSetTime(struct DTExSetTime* inst);
|
||||
void DTSetTime(struct DTSetTime* inst);
|
||||
void DTGetTime(struct DTGetTime* inst);
|
||||
unsigned long ascTIMEStructure(unsigned long pTIMEStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDTStructure(unsigned long pDTStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascTIME(plctime TIME1, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDT(plcdt DT1, unsigned long pStr, unsigned long len);
|
||||
plctime TIMEStructure_TO_TIME(unsigned long pTIMEStructure);
|
||||
unsigned long TIME_TO_TIMEStructure(plctime TIME1, unsigned long pTIMEStructure);
|
||||
plcdt DTStructure_TO_DT(unsigned long pDTStructure);
|
||||
unsigned long DT_TO_DTStructure(plcdt DT1, unsigned long pDTStructure);
|
||||
unsigned long DiffT(plctime TIME2, plctime TIME1);
|
||||
unsigned long DiffDT(plcdt DT2, plcdt DT1);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASTIME_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,362 +1,362 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASTIME_
|
||||
#define _ASTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define timERR_AR 33213U
|
||||
#define timERR_INVALID_DTSTRUCTURE 33212U
|
||||
#define timERR_INVALID_LEN 33211U
|
||||
#define timERR_INVALID_PARAMETER 33210U
|
||||
#define timTIME_SERVER 2U
|
||||
#define timREAL_TIME_CLOCK 1U
|
||||
#define timNO_DST 3U
|
||||
#define timDAYLIGHT_SAVING_TIME 2U
|
||||
#define timNORMAL_TIME 1U
|
||||
#define TIME_MAX 2073600000
|
||||
#define TIME_MIN (-2073600000)
|
||||
#define DATE_AND_TIME_MAX 4102444799U
|
||||
#define timEXSETTIME_NO_OPTION 0U
|
||||
#define timEXSETTIME_NO_LOGENTRY 1U
|
||||
#else
|
||||
_IEC_CONST unsigned short timERR_AR = 33213U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_DTSTRUCTURE = 33212U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_LEN = 33211U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_PARAMETER = 33210U;
|
||||
_IEC_CONST unsigned char timTIME_SERVER = 2U;
|
||||
_IEC_CONST unsigned char timREAL_TIME_CLOCK = 1U;
|
||||
_IEC_CONST unsigned char timNO_DST = 3U;
|
||||
_IEC_CONST unsigned char timDAYLIGHT_SAVING_TIME = 2U;
|
||||
_IEC_CONST unsigned char timNORMAL_TIME = 1U;
|
||||
_IEC_CONST signed long TIME_MAX = 2073600000;
|
||||
_IEC_CONST signed long TIME_MIN = -2073600000;
|
||||
_IEC_CONST unsigned long DATE_AND_TIME_MAX = 4102444799U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_OPTION = 0U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_LOGENTRY = 1U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct TIMEStructure
|
||||
{ signed char day;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} TIMEStructure;
|
||||
|
||||
typedef struct DTStructure
|
||||
{ unsigned short year;
|
||||
unsigned char month;
|
||||
unsigned char day;
|
||||
unsigned char wday;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} DTStructure;
|
||||
|
||||
typedef struct DTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTExSetTime_typ;
|
||||
|
||||
typedef struct DTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTSetTime_typ;
|
||||
|
||||
typedef struct DTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTGetTime_typ;
|
||||
|
||||
typedef struct UtcDTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTGetTime_typ;
|
||||
|
||||
typedef struct UtcDTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTSetTime_typ;
|
||||
|
||||
typedef struct UtcDTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTExSetTime_typ;
|
||||
|
||||
typedef struct DTStructureGetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTStructureGetTime_typ;
|
||||
|
||||
typedef struct DTStructureSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTStructureSetTime_typ;
|
||||
|
||||
typedef struct DTStructureExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTStructureExSetTime_typ;
|
||||
|
||||
typedef struct UtcDTStructureGetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructureGetTime_typ;
|
||||
|
||||
typedef struct UtcDTStructureSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructureSetTime_typ;
|
||||
|
||||
typedef struct UtcDTStructureExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructureExSetTime_typ;
|
||||
|
||||
typedef struct UtcDT_TO_LocalDTStructure
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDT_TO_LocalDTStructure_typ;
|
||||
|
||||
typedef struct LocalDT_TO_UtcDTStructure
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} LocalDT_TO_UtcDTStructure_typ;
|
||||
|
||||
typedef struct UtcDTStructure_TO_LocalDT
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructure_TO_LocalDT_typ;
|
||||
|
||||
typedef struct LocalDTStructure_TO_UtcDT
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} LocalDTStructure_TO_UtcDT_typ;
|
||||
|
||||
typedef struct TimeDeviceGetInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pServer;
|
||||
unsigned char len;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char timeDevice;
|
||||
float avgDeviation;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TimeDeviceGetInfo_typ;
|
||||
|
||||
typedef struct DstGetInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char dstState;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DstGetInfo_typ;
|
||||
|
||||
typedef struct DstGetInfoDT
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char dstState;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DstGetInfoDT_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void DTExSetTime(struct DTExSetTime* inst);
|
||||
void DTSetTime(struct DTSetTime* inst);
|
||||
void DTGetTime(struct DTGetTime* inst);
|
||||
void UtcDTGetTime(struct UtcDTGetTime* inst);
|
||||
void UtcDTSetTime(struct UtcDTSetTime* inst);
|
||||
void UtcDTExSetTime(struct UtcDTExSetTime* inst);
|
||||
void DTStructureGetTime(struct DTStructureGetTime* inst);
|
||||
void DTStructureSetTime(struct DTStructureSetTime* inst);
|
||||
void DTStructureExSetTime(struct DTStructureExSetTime* inst);
|
||||
void UtcDTStructureGetTime(struct UtcDTStructureGetTime* inst);
|
||||
void UtcDTStructureSetTime(struct UtcDTStructureSetTime* inst);
|
||||
void UtcDTStructureExSetTime(struct UtcDTStructureExSetTime* inst);
|
||||
void UtcDT_TO_LocalDTStructure(struct UtcDT_TO_LocalDTStructure* inst);
|
||||
void LocalDT_TO_UtcDTStructure(struct LocalDT_TO_UtcDTStructure* inst);
|
||||
void UtcDTStructure_TO_LocalDT(struct UtcDTStructure_TO_LocalDT* inst);
|
||||
void LocalDTStructure_TO_UtcDT(struct LocalDTStructure_TO_UtcDT* inst);
|
||||
void TimeDeviceGetInfo(struct TimeDeviceGetInfo* inst);
|
||||
void DstGetInfo(struct DstGetInfo* inst);
|
||||
void DstGetInfoDT(struct DstGetInfoDT* inst);
|
||||
plctime clock_ms();
|
||||
unsigned long ascTIMEStructure(unsigned long pTIMEStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDTStructure(unsigned long pDTStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascTIME(plctime TIME1, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDT(plcdt DT1, unsigned long pStr, unsigned long len);
|
||||
plctime TIMEStructure_TO_TIME(unsigned long pTIMEStructure);
|
||||
unsigned long TIME_TO_TIMEStructure(plctime TIME1, unsigned long pTIMEStructure);
|
||||
plcdt DTStructure_TO_DT(unsigned long pDTStructure);
|
||||
unsigned long DT_TO_DTStructure(plcdt DT1, unsigned long pDTStructure);
|
||||
unsigned long DiffT(plctime TIME2, plctime TIME1);
|
||||
unsigned long DiffDT(plcdt DT2, plcdt DT1);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASTIME_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASTIME_
|
||||
#define _ASTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define timERR_AR 33213U
|
||||
#define timERR_INVALID_DTSTRUCTURE 33212U
|
||||
#define timERR_INVALID_LEN 33211U
|
||||
#define timERR_INVALID_PARAMETER 33210U
|
||||
#define timTIME_SERVER 2U
|
||||
#define timREAL_TIME_CLOCK 1U
|
||||
#define timNO_DST 3U
|
||||
#define timDAYLIGHT_SAVING_TIME 2U
|
||||
#define timNORMAL_TIME 1U
|
||||
#define TIME_MAX 2073600000
|
||||
#define TIME_MIN (-2073600000)
|
||||
#define DATE_AND_TIME_MAX 4102444799U
|
||||
#define timEXSETTIME_NO_OPTION 0U
|
||||
#define timEXSETTIME_NO_LOGENTRY 1U
|
||||
#else
|
||||
_IEC_CONST unsigned short timERR_AR = 33213U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_DTSTRUCTURE = 33212U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_LEN = 33211U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_PARAMETER = 33210U;
|
||||
_IEC_CONST unsigned char timTIME_SERVER = 2U;
|
||||
_IEC_CONST unsigned char timREAL_TIME_CLOCK = 1U;
|
||||
_IEC_CONST unsigned char timNO_DST = 3U;
|
||||
_IEC_CONST unsigned char timDAYLIGHT_SAVING_TIME = 2U;
|
||||
_IEC_CONST unsigned char timNORMAL_TIME = 1U;
|
||||
_IEC_CONST signed long TIME_MAX = 2073600000;
|
||||
_IEC_CONST signed long TIME_MIN = -2073600000;
|
||||
_IEC_CONST unsigned long DATE_AND_TIME_MAX = 4102444799U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_OPTION = 0U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_LOGENTRY = 1U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct TIMEStructure
|
||||
{ signed char day;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} TIMEStructure;
|
||||
|
||||
typedef struct DTStructure
|
||||
{ unsigned short year;
|
||||
unsigned char month;
|
||||
unsigned char day;
|
||||
unsigned char wday;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} DTStructure;
|
||||
|
||||
typedef struct DTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTExSetTime_typ;
|
||||
|
||||
typedef struct DTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTSetTime_typ;
|
||||
|
||||
typedef struct DTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTGetTime_typ;
|
||||
|
||||
typedef struct UtcDTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTGetTime_typ;
|
||||
|
||||
typedef struct UtcDTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTSetTime_typ;
|
||||
|
||||
typedef struct UtcDTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTExSetTime_typ;
|
||||
|
||||
typedef struct DTStructureGetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTStructureGetTime_typ;
|
||||
|
||||
typedef struct DTStructureSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTStructureSetTime_typ;
|
||||
|
||||
typedef struct DTStructureExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTStructureExSetTime_typ;
|
||||
|
||||
typedef struct UtcDTStructureGetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructureGetTime_typ;
|
||||
|
||||
typedef struct UtcDTStructureSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructureSetTime_typ;
|
||||
|
||||
typedef struct UtcDTStructureExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructureExSetTime_typ;
|
||||
|
||||
typedef struct UtcDT_TO_LocalDTStructure
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDT_TO_LocalDTStructure_typ;
|
||||
|
||||
typedef struct LocalDT_TO_UtcDTStructure
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} LocalDT_TO_UtcDTStructure_typ;
|
||||
|
||||
typedef struct UtcDTStructure_TO_LocalDT
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} UtcDTStructure_TO_LocalDT_typ;
|
||||
|
||||
typedef struct LocalDTStructure_TO_UtcDT
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} LocalDTStructure_TO_UtcDT_typ;
|
||||
|
||||
typedef struct TimeDeviceGetInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pServer;
|
||||
unsigned char len;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char timeDevice;
|
||||
float avgDeviation;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TimeDeviceGetInfo_typ;
|
||||
|
||||
typedef struct DstGetInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDTStructure;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char dstState;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DstGetInfo_typ;
|
||||
|
||||
typedef struct DstGetInfoDT
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char dstState;
|
||||
unsigned short status;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DstGetInfoDT_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void DTExSetTime(struct DTExSetTime* inst);
|
||||
void DTSetTime(struct DTSetTime* inst);
|
||||
void DTGetTime(struct DTGetTime* inst);
|
||||
void UtcDTGetTime(struct UtcDTGetTime* inst);
|
||||
void UtcDTSetTime(struct UtcDTSetTime* inst);
|
||||
void UtcDTExSetTime(struct UtcDTExSetTime* inst);
|
||||
void DTStructureGetTime(struct DTStructureGetTime* inst);
|
||||
void DTStructureSetTime(struct DTStructureSetTime* inst);
|
||||
void DTStructureExSetTime(struct DTStructureExSetTime* inst);
|
||||
void UtcDTStructureGetTime(struct UtcDTStructureGetTime* inst);
|
||||
void UtcDTStructureSetTime(struct UtcDTStructureSetTime* inst);
|
||||
void UtcDTStructureExSetTime(struct UtcDTStructureExSetTime* inst);
|
||||
void UtcDT_TO_LocalDTStructure(struct UtcDT_TO_LocalDTStructure* inst);
|
||||
void LocalDT_TO_UtcDTStructure(struct LocalDT_TO_UtcDTStructure* inst);
|
||||
void UtcDTStructure_TO_LocalDT(struct UtcDTStructure_TO_LocalDT* inst);
|
||||
void LocalDTStructure_TO_UtcDT(struct LocalDTStructure_TO_UtcDT* inst);
|
||||
void TimeDeviceGetInfo(struct TimeDeviceGetInfo* inst);
|
||||
void DstGetInfo(struct DstGetInfo* inst);
|
||||
void DstGetInfoDT(struct DstGetInfoDT* inst);
|
||||
plctime clock_ms();
|
||||
unsigned long ascTIMEStructure(unsigned long pTIMEStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDTStructure(unsigned long pDTStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascTIME(plctime TIME1, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDT(plcdt DT1, unsigned long pStr, unsigned long len);
|
||||
plctime TIMEStructure_TO_TIME(unsigned long pTIMEStructure);
|
||||
unsigned long TIME_TO_TIMEStructure(plctime TIME1, unsigned long pTIMEStructure);
|
||||
plcdt DTStructure_TO_DT(unsigned long pDTStructure);
|
||||
unsigned long DT_TO_DTStructure(plcdt DT1, unsigned long pDTStructure);
|
||||
unsigned long DiffT(plctime TIME2, plctime TIME1);
|
||||
unsigned long DiffDT(plcdt DT2, plcdt DT1);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASTIME_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,130 +1,130 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASTIME_
|
||||
#define _ASTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define timERR_AR 33213U
|
||||
#define timERR_INVALID_DTSTRUCTURE 33212U
|
||||
#define timERR_INVALID_LEN 33211U
|
||||
#define timERR_INVALID_PARAMETER 33210U
|
||||
#define timTIME_SERVER 2U
|
||||
#define timREAL_TIME_CLOCK 1U
|
||||
#define timNO_DST 3U
|
||||
#define timDAYLIGHT_SAVING_TIME 2U
|
||||
#define timNORMAL_TIME 1U
|
||||
#define TIME_MAX 2073600000
|
||||
#define TIME_MIN (-2073600000)
|
||||
#define DATE_AND_TIME_MAX 4102444799U
|
||||
#define timEXSETTIME_NO_OPTION 0U
|
||||
#define timEXSETTIME_NO_LOGENTRY 1U
|
||||
#else
|
||||
_IEC_CONST unsigned short timERR_AR = 33213U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_DTSTRUCTURE = 33212U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_LEN = 33211U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_PARAMETER = 33210U;
|
||||
_IEC_CONST unsigned char timTIME_SERVER = 2U;
|
||||
_IEC_CONST unsigned char timREAL_TIME_CLOCK = 1U;
|
||||
_IEC_CONST unsigned char timNO_DST = 3U;
|
||||
_IEC_CONST unsigned char timDAYLIGHT_SAVING_TIME = 2U;
|
||||
_IEC_CONST unsigned char timNORMAL_TIME = 1U;
|
||||
_IEC_CONST signed long TIME_MAX = 2073600000;
|
||||
_IEC_CONST signed long TIME_MIN = -2073600000;
|
||||
_IEC_CONST unsigned long DATE_AND_TIME_MAX = 4102444799U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_OPTION = 0U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_LOGENTRY = 1U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct TIMEStructure
|
||||
{ signed char day;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} TIMEStructure;
|
||||
|
||||
typedef struct DTStructure
|
||||
{ unsigned short year;
|
||||
unsigned char month;
|
||||
unsigned char day;
|
||||
unsigned char wday;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} DTStructure;
|
||||
|
||||
typedef struct DTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTExSetTime_typ;
|
||||
|
||||
typedef struct DTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTSetTime_typ;
|
||||
|
||||
typedef struct DTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTGetTime_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void DTExSetTime(struct DTExSetTime* inst);
|
||||
void DTSetTime(struct DTSetTime* inst);
|
||||
void DTGetTime(struct DTGetTime* inst);
|
||||
unsigned long ascTIMEStructure(unsigned long pTIMEStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDTStructure(unsigned long pDTStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascTIME(plctime TIME1, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDT(plcdt DT1, unsigned long pStr, unsigned long len);
|
||||
plctime TIMEStructure_TO_TIME(unsigned long pTIMEStructure);
|
||||
unsigned long TIME_TO_TIMEStructure(plctime TIME1, unsigned long pTIMEStructure);
|
||||
plcdt DTStructure_TO_DT(unsigned long pDTStructure);
|
||||
unsigned long DT_TO_DTStructure(plcdt DT1, unsigned long pDTStructure);
|
||||
unsigned long DiffT(plctime TIME2, plctime TIME1);
|
||||
unsigned long DiffDT(plcdt DT2, plcdt DT1);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASTIME_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASTIME_
|
||||
#define _ASTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define timERR_AR 33213U
|
||||
#define timERR_INVALID_DTSTRUCTURE 33212U
|
||||
#define timERR_INVALID_LEN 33211U
|
||||
#define timERR_INVALID_PARAMETER 33210U
|
||||
#define timTIME_SERVER 2U
|
||||
#define timREAL_TIME_CLOCK 1U
|
||||
#define timNO_DST 3U
|
||||
#define timDAYLIGHT_SAVING_TIME 2U
|
||||
#define timNORMAL_TIME 1U
|
||||
#define TIME_MAX 2073600000
|
||||
#define TIME_MIN (-2073600000)
|
||||
#define DATE_AND_TIME_MAX 4102444799U
|
||||
#define timEXSETTIME_NO_OPTION 0U
|
||||
#define timEXSETTIME_NO_LOGENTRY 1U
|
||||
#else
|
||||
_IEC_CONST unsigned short timERR_AR = 33213U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_DTSTRUCTURE = 33212U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_LEN = 33211U;
|
||||
_IEC_CONST unsigned short timERR_INVALID_PARAMETER = 33210U;
|
||||
_IEC_CONST unsigned char timTIME_SERVER = 2U;
|
||||
_IEC_CONST unsigned char timREAL_TIME_CLOCK = 1U;
|
||||
_IEC_CONST unsigned char timNO_DST = 3U;
|
||||
_IEC_CONST unsigned char timDAYLIGHT_SAVING_TIME = 2U;
|
||||
_IEC_CONST unsigned char timNORMAL_TIME = 1U;
|
||||
_IEC_CONST signed long TIME_MAX = 2073600000;
|
||||
_IEC_CONST signed long TIME_MIN = -2073600000;
|
||||
_IEC_CONST unsigned long DATE_AND_TIME_MAX = 4102444799U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_OPTION = 0U;
|
||||
_IEC_CONST unsigned char timEXSETTIME_NO_LOGENTRY = 1U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct TIMEStructure
|
||||
{ signed char day;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} TIMEStructure;
|
||||
|
||||
typedef struct DTStructure
|
||||
{ unsigned short year;
|
||||
unsigned char month;
|
||||
unsigned char day;
|
||||
unsigned char wday;
|
||||
unsigned char hour;
|
||||
unsigned char minute;
|
||||
unsigned char second;
|
||||
unsigned short millisec;
|
||||
unsigned short microsec;
|
||||
} DTStructure;
|
||||
|
||||
typedef struct DTExSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
unsigned char Option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTExSetTime_typ;
|
||||
|
||||
typedef struct DTSetTime
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
plcdt DT1;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTSetTime_typ;
|
||||
|
||||
typedef struct DTGetTime
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
plcdt DT1;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} DTGetTime_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void DTExSetTime(struct DTExSetTime* inst);
|
||||
void DTSetTime(struct DTSetTime* inst);
|
||||
void DTGetTime(struct DTGetTime* inst);
|
||||
unsigned long ascTIMEStructure(unsigned long pTIMEStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDTStructure(unsigned long pDTStructure, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascTIME(plctime TIME1, unsigned long pStr, unsigned long len);
|
||||
unsigned long ascDT(plcdt DT1, unsigned long pStr, unsigned long len);
|
||||
plctime TIMEStructure_TO_TIME(unsigned long pTIMEStructure);
|
||||
unsigned long TIME_TO_TIMEStructure(plctime TIME1, unsigned long pTIMEStructure);
|
||||
plcdt DTStructure_TO_DT(unsigned long pDTStructure);
|
||||
unsigned long DT_TO_DTStructure(plcdt DT1, unsigned long pDTStructure);
|
||||
unsigned long DiffT(plctime TIME2, plctime TIME1);
|
||||
unsigned long DiffDT(plcdt DT2, plcdt DT1);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASTIME_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,342 +1,342 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: astime
|
||||
* File: astime.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library astime
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK DTExSetTime (*sets the current time using the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*date and time to be written*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTSetTime (*sets current time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*date and time to be written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTGetTime (*reads the current time in the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
DT1 :DATE_AND_TIME; (*date and time read*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION clock_ms : TIME (*provides a continuous millisecond counter in the TIME data type*)
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION_BLOCK UtcDTGetTime (*reads the current UTC-time in the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time read*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTSetTime (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time to be written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTExSetTime (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time to be written*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTStructureGetTime (*reads the current time in the calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTStructureSetTime (*sets current time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTStructureExSetTime (*sets current time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructureGetTime (*reads the UTC time in the calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructureSetTime (*sets UTC time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructureExSetTime (*sets UTC time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDT_TO_LocalDTStructure (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK LocalDT_TO_UtcDTStructure (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*Local date and time*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructure_TO_LocalDT (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
DT1 :DATE_AND_TIME; (*Local date and time*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK LocalDTStructure_TO_UtcDT (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION ascTIMEStructure : UDINT (*converts a "time" structure to a character string in the format "15:14:13\0"*)
|
||||
VAR_INPUT
|
||||
pTIMEStructure :UDINT; (*address of the time structure*)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field *)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION ascDTStructure : UDINT (*converts a "date" structure to a character string in the format "Sun Jan 3 15:14:13 1988\0"*)
|
||||
VAR_INPUT
|
||||
pDTStructure :UDINT; (*address of the calendar structure *)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION ascTIME : UDINT (*converts the TIME data type to a character string in the format "15:14:13\0"*)
|
||||
VAR_INPUT
|
||||
TIME1 :TIME; (*time*)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION ascDT : UDINT (*converts the DATE_AND_TIME data type to character string in the format "Sun Jan 3 15:14:13 1988\0"*)
|
||||
VAR_INPUT
|
||||
DT1 :DATE_AND_TIME; (*date and time*)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION TIMEStructure_TO_TIME : TIME (*converts a "time" structure to the TIME data type*)
|
||||
VAR_INPUT
|
||||
pTIMEStructure :UDINT; (*address of the time structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION TIME_TO_TIMEStructure : UDINT (*converts the TIME data type to a "time" structure*)
|
||||
VAR_INPUT
|
||||
TIME1 :TIME; (*time*)
|
||||
pTIMEStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DTStructure_TO_DT : DATE_AND_TIME (*converts a "date" structure to the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DT_TO_DTStructure : UDINT (*converts the DATE_AND_TIME data type to a "date" structure*)
|
||||
VAR_INPUT
|
||||
DT1 :DATE_AND_TIME; (*date and time*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DiffT : UDINT (*shows the difference between two times (TIME data type) expressed in milliseconds*)
|
||||
VAR_INPUT
|
||||
TIME2 :TIME; (*time 2*)
|
||||
TIME1 :TIME; (*time 1*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DiffDT : UDINT (*shows the difference between two times (DATE_AND_TIME data type) expressed in seconds*)
|
||||
VAR_INPUT
|
||||
DT2 :DATE_AND_TIME; (*date and time 2*)
|
||||
DT1 :DATE_AND_TIME; (*date and time 1*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION_BLOCK TimeDeviceGetInfo (*read information about time device*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pServer :UDINT; (*Pointer to string*)
|
||||
len :USINT; (*length of pServer*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
timeDevice :USINT; (*sntpREAL_TIME_CLOCK or sntpTIME_SERVER*)
|
||||
avgDeviation :REAL; (*average deviation between software time and time device*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DstGetInfo (*read information about time device*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*Pointer to DTStructure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
dstState :USINT; (*timDAYLIGHT_SAVING_TIME, timNORMAL_TIME or timNO_DST*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DstGetInfoDT (*read information about time device*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*date and time in UTC*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
dstState :USINT; (*timDAYLIGHT_SAVING_TIME, timNORMAL_TIME or timNO_DST*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: astime
|
||||
* File: astime.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library astime
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK DTExSetTime (*sets the current time using the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*date and time to be written*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTSetTime (*sets current time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*date and time to be written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTGetTime (*reads the current time in the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
DT1 :DATE_AND_TIME; (*date and time read*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION clock_ms : TIME (*provides a continuous millisecond counter in the TIME data type*)
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION_BLOCK UtcDTGetTime (*reads the current UTC-time in the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time read*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTSetTime (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time to be written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTExSetTime (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time to be written*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTStructureGetTime (*reads the current time in the calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTStructureSetTime (*sets current time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DTStructureExSetTime (*sets current time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructureGetTime (*reads the UTC time in the calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructureSetTime (*sets UTC time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructureExSetTime (*sets UTC time in calendar structure*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
Option :USINT; (*additional option: timEXSETTIME_NO_OPTION, timEXSETTIME_NO_LOGENTRY*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDT_TO_LocalDTStructure (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK LocalDT_TO_UtcDTStructure (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*Local date and time*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK UtcDTStructure_TO_LocalDT (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
DT1 :DATE_AND_TIME; (*Local date and time*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK LocalDTStructure_TO_UtcDT (*sets current UTC-time in DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
DT1 :DATE_AND_TIME; (*UTC date and time*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state : UINT; (*internal variable*)
|
||||
i_result : UINT; (*internal variable*)
|
||||
i_tmp : UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION ascTIMEStructure : UDINT (*converts a "time" structure to a character string in the format "15:14:13\0"*)
|
||||
VAR_INPUT
|
||||
pTIMEStructure :UDINT; (*address of the time structure*)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field *)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION ascDTStructure : UDINT (*converts a "date" structure to a character string in the format "Sun Jan 3 15:14:13 1988\0"*)
|
||||
VAR_INPUT
|
||||
pDTStructure :UDINT; (*address of the calendar structure *)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION ascTIME : UDINT (*converts the TIME data type to a character string in the format "15:14:13\0"*)
|
||||
VAR_INPUT
|
||||
TIME1 :TIME; (*time*)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION ascDT : UDINT (*converts the DATE_AND_TIME data type to character string in the format "Sun Jan 3 15:14:13 1988\0"*)
|
||||
VAR_INPUT
|
||||
DT1 :DATE_AND_TIME; (*date and time*)
|
||||
pStr :UDINT; (*address of the character field*)
|
||||
len :UDINT; (*length of the character field*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION TIMEStructure_TO_TIME : TIME (*converts a "time" structure to the TIME data type*)
|
||||
VAR_INPUT
|
||||
pTIMEStructure :UDINT; (*address of the time structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION TIME_TO_TIMEStructure : UDINT (*converts the TIME data type to a "time" structure*)
|
||||
VAR_INPUT
|
||||
TIME1 :TIME; (*time*)
|
||||
pTIMEStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DTStructure_TO_DT : DATE_AND_TIME (*converts a "date" structure to the DATE_AND_TIME data type*)
|
||||
VAR_INPUT
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DT_TO_DTStructure : UDINT (*converts the DATE_AND_TIME data type to a "date" structure*)
|
||||
VAR_INPUT
|
||||
DT1 :DATE_AND_TIME; (*date and time*)
|
||||
pDTStructure :UDINT; (*address of the calendar structure*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DiffT : UDINT (*shows the difference between two times (TIME data type) expressed in milliseconds*)
|
||||
VAR_INPUT
|
||||
TIME2 :TIME; (*time 2*)
|
||||
TIME1 :TIME; (*time 1*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION DiffDT : UDINT (*shows the difference between two times (DATE_AND_TIME data type) expressed in seconds*)
|
||||
VAR_INPUT
|
||||
DT2 :DATE_AND_TIME; (*date and time 2*)
|
||||
DT1 :DATE_AND_TIME; (*date and time 1*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION_BLOCK TimeDeviceGetInfo (*read information about time device*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pServer :UDINT; (*Pointer to string*)
|
||||
len :USINT; (*length of pServer*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
timeDevice :USINT; (*sntpREAL_TIME_CLOCK or sntpTIME_SERVER*)
|
||||
avgDeviation :REAL; (*average deviation between software time and time device*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DstGetInfo (*read information about time device*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDTStructure :UDINT; (*Pointer to DTStructure*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
dstState :USINT; (*timDAYLIGHT_SAVING_TIME, timNORMAL_TIME or timNO_DST*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK DstGetInfoDT (*read information about time device*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
DT1 :DATE_AND_TIME; (*date and time in UTC*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
dstState :USINT; (*timDAYLIGHT_SAVING_TIME, timNORMAL_TIME or timNO_DST*)
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: astime
|
||||
* File: astime.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library astime
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
TIMEStructure : STRUCT (*time structure*)
|
||||
day : SINT ; (*day (1-31)*)
|
||||
hour : USINT ; (*hours (0-23)*)
|
||||
minute : USINT ; (*minutes (0-59)*)
|
||||
second : USINT ; (*seconds (0-59)*)
|
||||
millisec : UINT ; (*milliseconds (0-999)*)
|
||||
microsec : UINT ; (*microseconds (0-999)*)
|
||||
END_STRUCT;
|
||||
DTStructure : STRUCT (*date structure*)
|
||||
year : UINT ; (*year*)
|
||||
month : USINT ; (*month (1-12)*)
|
||||
day : USINT ; (*day (1-31)*)
|
||||
wday : USINT ; (*day of the week (0-6), e.g. 0 = Sunday, 6 = Saturday*)
|
||||
hour : USINT ; (*hours (0-23)*)
|
||||
minute : USINT ; (*minutes (0-59)*)
|
||||
second : USINT ; (*seconds (0-59)*)
|
||||
millisec : UINT ; (*milliseconds (0-999)*)
|
||||
microsec : UINT ; (*microseconds (0-999)*)
|
||||
END_STRUCT;
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: astime
|
||||
* File: astime.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library astime
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
TIMEStructure : STRUCT (*time structure*)
|
||||
day : SINT ; (*day (1-31)*)
|
||||
hour : USINT ; (*hours (0-23)*)
|
||||
minute : USINT ; (*minutes (0-59)*)
|
||||
second : USINT ; (*seconds (0-59)*)
|
||||
millisec : UINT ; (*milliseconds (0-999)*)
|
||||
microsec : UINT ; (*microseconds (0-999)*)
|
||||
END_STRUCT;
|
||||
DTStructure : STRUCT (*date structure*)
|
||||
year : UINT ; (*year*)
|
||||
month : USINT ; (*month (1-12)*)
|
||||
day : USINT ; (*day (1-31)*)
|
||||
wday : USINT ; (*day of the week (0-6), e.g. 0 = Sunday, 6 = Saturday*)
|
||||
hour : USINT ; (*hours (0-23)*)
|
||||
minute : USINT ; (*minutes (0-59)*)
|
||||
second : USINT ; (*seconds (0-59)*)
|
||||
millisec : UINT ; (*milliseconds (0-999)*)
|
||||
microsec : UINT ; (*microseconds (0-999)*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
@@ -1,26 +1,26 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: astime
|
||||
* File: astime.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library astime
|
||||
********************************************************************)
|
||||
|
||||
VAR CONSTANT
|
||||
timEXSETTIME_NO_LOGENTRY : USINT := 1;
|
||||
timEXSETTIME_NO_OPTION : USINT := 0;
|
||||
DATE_AND_TIME_MAX : UDINT := 4102444799;
|
||||
TIME_MIN : DINT := -2073600000;
|
||||
TIME_MAX : DINT := 2073600000;
|
||||
timNORMAL_TIME : USINT := 1;
|
||||
timDAYLIGHT_SAVING_TIME : USINT := 2;
|
||||
timNO_DST : USINT := 3;
|
||||
timREAL_TIME_CLOCK : USINT := 1;
|
||||
timTIME_SERVER : USINT := 2;
|
||||
timERR_INVALID_PARAMETER : UINT := 33210;
|
||||
timERR_INVALID_LEN : UINT := 33211;
|
||||
timERR_INVALID_DTSTRUCTURE : UINT := 33212;
|
||||
timERR_AR : UINT := 33213;
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: astime
|
||||
* File: astime.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library astime
|
||||
********************************************************************)
|
||||
|
||||
VAR CONSTANT
|
||||
timEXSETTIME_NO_LOGENTRY : USINT := 1;
|
||||
timEXSETTIME_NO_OPTION : USINT := 0;
|
||||
DATE_AND_TIME_MAX : UDINT := 4102444799;
|
||||
TIME_MIN : DINT := -2073600000;
|
||||
TIME_MAX : DINT := 2073600000;
|
||||
timNORMAL_TIME : USINT := 1;
|
||||
timDAYLIGHT_SAVING_TIME : USINT := 2;
|
||||
timNO_DST : USINT := 3;
|
||||
timREAL_TIME_CLOCK : USINT := 1;
|
||||
timTIME_SERVER : USINT := 2;
|
||||
timERR_INVALID_PARAMETER : UINT := 33210;
|
||||
timERR_INVALID_LEN : UINT := 33211;
|
||||
timERR_INVALID_DTSTRUCTURE : UINT := 33212;
|
||||
timERR_AR : UINT := 33213;
|
||||
END_VAR
|
||||
@@ -1,271 +1,271 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _BRSYSTEM_
|
||||
#define _BRSYSTEM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define brX2X 10U
|
||||
#define brPP 255U
|
||||
#define brCPU 1U
|
||||
#define brKEY 8U
|
||||
#define brDRAM 0U
|
||||
#define br2003 2U
|
||||
#define br2005 1U
|
||||
#define br2010 0U
|
||||
#define brC200 9U
|
||||
#define brC300 8U
|
||||
#define brADDON 7U
|
||||
#define brPANEL 6U
|
||||
#define brGLOBAL_REMANENT_PV 5U
|
||||
#define brLOCAL_REMANENT_PV 4U
|
||||
#define brUSRROM 3U
|
||||
#define brSYSROM 2U
|
||||
#define brUSRRAM 1U
|
||||
#define brACOPOS 7U
|
||||
#define brCAN_IO 5U
|
||||
#define brBASE_IO 3U
|
||||
#define brPRODUCT 0U
|
||||
#define brETHER_IO 6U
|
||||
#define brNO_FAMILY 255U
|
||||
#define brREMOTE_IO 4U
|
||||
#define brBATTERY_OK 1U
|
||||
#define brPOWERPANEL 5U
|
||||
#define brBATTERY_LOW 0U
|
||||
#define brLOGICSCANNER 3U
|
||||
#define brPLUGIN_MODULE 10U
|
||||
#define brSYSTEM_MODULE 2U
|
||||
#define brBATTERY_NOTEST 2U
|
||||
#define TARGET_BIG_ENDIAN 2U
|
||||
#define brBATTERY_MISSING 3U
|
||||
#define INIT_REASON_UNKNOWN (-1)
|
||||
#define INIT_REASON_DOWNLOAD 3
|
||||
#define TARGET_LITTLE_ENDIAN 1U
|
||||
#define brAUTOMATION_RUNTIME 4U
|
||||
#define brERR_INVALID_DEVICE 27250U
|
||||
#define INIT_REASON_COLDSTART 2
|
||||
#define INIT_REASON_WARMSTART 1
|
||||
#define brSYSCONF_SET_VOLATILE 0
|
||||
#define brERR_INVALID_PARAMETER 27251U
|
||||
#define brSYSCONF_SET_NON_VOLATILE 1
|
||||
#else
|
||||
_IEC_CONST unsigned char brX2X = 10U;
|
||||
_IEC_CONST unsigned char brPP = 255U;
|
||||
_IEC_CONST unsigned char brCPU = 1U;
|
||||
_IEC_CONST unsigned char brKEY = 8U;
|
||||
_IEC_CONST unsigned long brDRAM = 0U;
|
||||
_IEC_CONST unsigned char br2003 = 2U;
|
||||
_IEC_CONST unsigned char br2005 = 1U;
|
||||
_IEC_CONST unsigned char br2010 = 0U;
|
||||
_IEC_CONST unsigned char brC200 = 9U;
|
||||
_IEC_CONST unsigned char brC300 = 8U;
|
||||
_IEC_CONST unsigned char brADDON = 7U;
|
||||
_IEC_CONST unsigned char brPANEL = 6U;
|
||||
_IEC_CONST unsigned long brGLOBAL_REMANENT_PV = 5U;
|
||||
_IEC_CONST unsigned long brLOCAL_REMANENT_PV = 4U;
|
||||
_IEC_CONST unsigned long brUSRROM = 3U;
|
||||
_IEC_CONST unsigned long brSYSROM = 2U;
|
||||
_IEC_CONST unsigned long brUSRRAM = 1U;
|
||||
_IEC_CONST unsigned char brACOPOS = 7U;
|
||||
_IEC_CONST unsigned char brCAN_IO = 5U;
|
||||
_IEC_CONST unsigned char brBASE_IO = 3U;
|
||||
_IEC_CONST unsigned char brPRODUCT = 0U;
|
||||
_IEC_CONST unsigned char brETHER_IO = 6U;
|
||||
_IEC_CONST unsigned char brNO_FAMILY = 255U;
|
||||
_IEC_CONST unsigned char brREMOTE_IO = 4U;
|
||||
_IEC_CONST unsigned char brBATTERY_OK = 1U;
|
||||
_IEC_CONST unsigned char brPOWERPANEL = 5U;
|
||||
_IEC_CONST unsigned char brBATTERY_LOW = 0U;
|
||||
_IEC_CONST unsigned char brLOGICSCANNER = 3U;
|
||||
_IEC_CONST unsigned char brPLUGIN_MODULE = 10U;
|
||||
_IEC_CONST unsigned char brSYSTEM_MODULE = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_NOTEST = 2U;
|
||||
_IEC_CONST unsigned char TARGET_BIG_ENDIAN = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_MISSING = 3U;
|
||||
_IEC_CONST signed char INIT_REASON_UNKNOWN = -1;
|
||||
_IEC_CONST signed char INIT_REASON_DOWNLOAD = 3;
|
||||
_IEC_CONST unsigned char TARGET_LITTLE_ENDIAN = 1U;
|
||||
_IEC_CONST unsigned char brAUTOMATION_RUNTIME = 4U;
|
||||
_IEC_CONST unsigned short brERR_INVALID_DEVICE = 27250U;
|
||||
_IEC_CONST signed char INIT_REASON_COLDSTART = 2;
|
||||
_IEC_CONST signed char INIT_REASON_WARMSTART = 1;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_VOLATILE = 0;
|
||||
_IEC_CONST unsigned short brERR_INVALID_PARAMETER = 27251U;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_NON_VOLATILE = 1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct MEMInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long FreeUSR_Ram;
|
||||
unsigned long FreeSYSTEM;
|
||||
unsigned long FreeUSR_Prom;
|
||||
unsigned long FreeSYS_Prom;
|
||||
unsigned long FreeFIX_Ram;
|
||||
unsigned long FreeTMP_Ram;
|
||||
unsigned long FreeMEMCARD;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMInfo_typ;
|
||||
|
||||
typedef struct SysInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char init_reason;
|
||||
unsigned char init_count;
|
||||
unsigned long tick_count;
|
||||
unsigned long version;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysInfo_typ;
|
||||
|
||||
typedef struct RTInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long cycle_time;
|
||||
signed char init_reason;
|
||||
signed char task_class;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} RTInfo_typ;
|
||||
|
||||
typedef struct TARGETInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pOSVersion;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char DataFormat;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TARGETInfo_typ;
|
||||
|
||||
typedef struct HWInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pName;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char family;
|
||||
unsigned char usetype;
|
||||
unsigned long module_typ;
|
||||
unsigned char master_no;
|
||||
unsigned char slave_no;
|
||||
unsigned char module_adr;
|
||||
unsigned char slot_no;
|
||||
/* VAR (analog) */
|
||||
unsigned long next_vw_p;
|
||||
unsigned long last_modul_p;
|
||||
unsigned long next_entry_p;
|
||||
unsigned char next_entry_ix;
|
||||
unsigned char next_slot_ix;
|
||||
unsigned char last_rio_master;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit first;
|
||||
} HWInfo_typ;
|
||||
|
||||
typedef struct BatteryInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char state;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} BatteryInfo_typ;
|
||||
|
||||
typedef struct EXCInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long task_class;
|
||||
unsigned long task_ident;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} EXCInfo_typ;
|
||||
|
||||
typedef struct ZYKVLenable
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit mode;
|
||||
} ZYKVLenable_typ;
|
||||
|
||||
typedef struct PMemGet
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemGet_typ;
|
||||
|
||||
typedef struct PMemPut
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemPut_typ;
|
||||
|
||||
typedef struct PMemSize
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long size;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemSize_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void MEMInfo(struct MEMInfo* inst);
|
||||
void SysInfo(struct SysInfo* inst);
|
||||
void RTInfo(struct RTInfo* inst);
|
||||
void TARGETInfo(struct TARGETInfo* inst);
|
||||
void HWInfo(struct HWInfo* inst);
|
||||
void BatteryInfo(struct BatteryInfo* inst);
|
||||
void EXCInfo(struct EXCInfo* inst);
|
||||
void ZYKVLenable(struct ZYKVLenable* inst);
|
||||
void PMemGet(struct PMemGet* inst);
|
||||
void PMemPut(struct PMemPut* inst);
|
||||
void PMemSize(struct PMemSize* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _BRSYSTEM_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _BRSYSTEM_
|
||||
#define _BRSYSTEM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define brX2X 10U
|
||||
#define brPP 255U
|
||||
#define brCPU 1U
|
||||
#define brKEY 8U
|
||||
#define brDRAM 0U
|
||||
#define br2003 2U
|
||||
#define br2005 1U
|
||||
#define br2010 0U
|
||||
#define brC200 9U
|
||||
#define brC300 8U
|
||||
#define brADDON 7U
|
||||
#define brPANEL 6U
|
||||
#define brGLOBAL_REMANENT_PV 5U
|
||||
#define brLOCAL_REMANENT_PV 4U
|
||||
#define brUSRROM 3U
|
||||
#define brSYSROM 2U
|
||||
#define brUSRRAM 1U
|
||||
#define brACOPOS 7U
|
||||
#define brCAN_IO 5U
|
||||
#define brBASE_IO 3U
|
||||
#define brPRODUCT 0U
|
||||
#define brETHER_IO 6U
|
||||
#define brNO_FAMILY 255U
|
||||
#define brREMOTE_IO 4U
|
||||
#define brBATTERY_OK 1U
|
||||
#define brPOWERPANEL 5U
|
||||
#define brBATTERY_LOW 0U
|
||||
#define brLOGICSCANNER 3U
|
||||
#define brPLUGIN_MODULE 10U
|
||||
#define brSYSTEM_MODULE 2U
|
||||
#define brBATTERY_NOTEST 2U
|
||||
#define TARGET_BIG_ENDIAN 2U
|
||||
#define brBATTERY_MISSING 3U
|
||||
#define INIT_REASON_UNKNOWN (-1)
|
||||
#define INIT_REASON_DOWNLOAD 3
|
||||
#define TARGET_LITTLE_ENDIAN 1U
|
||||
#define brAUTOMATION_RUNTIME 4U
|
||||
#define brERR_INVALID_DEVICE 27250U
|
||||
#define INIT_REASON_COLDSTART 2
|
||||
#define INIT_REASON_WARMSTART 1
|
||||
#define brSYSCONF_SET_VOLATILE 0
|
||||
#define brERR_INVALID_PARAMETER 27251U
|
||||
#define brSYSCONF_SET_NON_VOLATILE 1
|
||||
#else
|
||||
_IEC_CONST unsigned char brX2X = 10U;
|
||||
_IEC_CONST unsigned char brPP = 255U;
|
||||
_IEC_CONST unsigned char brCPU = 1U;
|
||||
_IEC_CONST unsigned char brKEY = 8U;
|
||||
_IEC_CONST unsigned long brDRAM = 0U;
|
||||
_IEC_CONST unsigned char br2003 = 2U;
|
||||
_IEC_CONST unsigned char br2005 = 1U;
|
||||
_IEC_CONST unsigned char br2010 = 0U;
|
||||
_IEC_CONST unsigned char brC200 = 9U;
|
||||
_IEC_CONST unsigned char brC300 = 8U;
|
||||
_IEC_CONST unsigned char brADDON = 7U;
|
||||
_IEC_CONST unsigned char brPANEL = 6U;
|
||||
_IEC_CONST unsigned long brGLOBAL_REMANENT_PV = 5U;
|
||||
_IEC_CONST unsigned long brLOCAL_REMANENT_PV = 4U;
|
||||
_IEC_CONST unsigned long brUSRROM = 3U;
|
||||
_IEC_CONST unsigned long brSYSROM = 2U;
|
||||
_IEC_CONST unsigned long brUSRRAM = 1U;
|
||||
_IEC_CONST unsigned char brACOPOS = 7U;
|
||||
_IEC_CONST unsigned char brCAN_IO = 5U;
|
||||
_IEC_CONST unsigned char brBASE_IO = 3U;
|
||||
_IEC_CONST unsigned char brPRODUCT = 0U;
|
||||
_IEC_CONST unsigned char brETHER_IO = 6U;
|
||||
_IEC_CONST unsigned char brNO_FAMILY = 255U;
|
||||
_IEC_CONST unsigned char brREMOTE_IO = 4U;
|
||||
_IEC_CONST unsigned char brBATTERY_OK = 1U;
|
||||
_IEC_CONST unsigned char brPOWERPANEL = 5U;
|
||||
_IEC_CONST unsigned char brBATTERY_LOW = 0U;
|
||||
_IEC_CONST unsigned char brLOGICSCANNER = 3U;
|
||||
_IEC_CONST unsigned char brPLUGIN_MODULE = 10U;
|
||||
_IEC_CONST unsigned char brSYSTEM_MODULE = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_NOTEST = 2U;
|
||||
_IEC_CONST unsigned char TARGET_BIG_ENDIAN = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_MISSING = 3U;
|
||||
_IEC_CONST signed char INIT_REASON_UNKNOWN = -1;
|
||||
_IEC_CONST signed char INIT_REASON_DOWNLOAD = 3;
|
||||
_IEC_CONST unsigned char TARGET_LITTLE_ENDIAN = 1U;
|
||||
_IEC_CONST unsigned char brAUTOMATION_RUNTIME = 4U;
|
||||
_IEC_CONST unsigned short brERR_INVALID_DEVICE = 27250U;
|
||||
_IEC_CONST signed char INIT_REASON_COLDSTART = 2;
|
||||
_IEC_CONST signed char INIT_REASON_WARMSTART = 1;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_VOLATILE = 0;
|
||||
_IEC_CONST unsigned short brERR_INVALID_PARAMETER = 27251U;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_NON_VOLATILE = 1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct MEMInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long FreeUSR_Ram;
|
||||
unsigned long FreeSYSTEM;
|
||||
unsigned long FreeUSR_Prom;
|
||||
unsigned long FreeSYS_Prom;
|
||||
unsigned long FreeFIX_Ram;
|
||||
unsigned long FreeTMP_Ram;
|
||||
unsigned long FreeMEMCARD;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMInfo_typ;
|
||||
|
||||
typedef struct SysInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char init_reason;
|
||||
unsigned char init_count;
|
||||
unsigned long tick_count;
|
||||
unsigned long version;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysInfo_typ;
|
||||
|
||||
typedef struct RTInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long cycle_time;
|
||||
signed char init_reason;
|
||||
signed char task_class;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} RTInfo_typ;
|
||||
|
||||
typedef struct TARGETInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pOSVersion;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char DataFormat;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TARGETInfo_typ;
|
||||
|
||||
typedef struct HWInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pName;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char family;
|
||||
unsigned char usetype;
|
||||
unsigned long module_typ;
|
||||
unsigned char master_no;
|
||||
unsigned char slave_no;
|
||||
unsigned char module_adr;
|
||||
unsigned char slot_no;
|
||||
/* VAR (analog) */
|
||||
unsigned long next_vw_p;
|
||||
unsigned long last_modul_p;
|
||||
unsigned long next_entry_p;
|
||||
unsigned char next_entry_ix;
|
||||
unsigned char next_slot_ix;
|
||||
unsigned char last_rio_master;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit first;
|
||||
} HWInfo_typ;
|
||||
|
||||
typedef struct BatteryInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char state;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} BatteryInfo_typ;
|
||||
|
||||
typedef struct EXCInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long task_class;
|
||||
unsigned long task_ident;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} EXCInfo_typ;
|
||||
|
||||
typedef struct ZYKVLenable
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit mode;
|
||||
} ZYKVLenable_typ;
|
||||
|
||||
typedef struct PMemGet
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemGet_typ;
|
||||
|
||||
typedef struct PMemPut
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemPut_typ;
|
||||
|
||||
typedef struct PMemSize
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long size;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemSize_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void MEMInfo(struct MEMInfo* inst);
|
||||
void SysInfo(struct SysInfo* inst);
|
||||
void RTInfo(struct RTInfo* inst);
|
||||
void TARGETInfo(struct TARGETInfo* inst);
|
||||
void HWInfo(struct HWInfo* inst);
|
||||
void BatteryInfo(struct BatteryInfo* inst);
|
||||
void EXCInfo(struct EXCInfo* inst);
|
||||
void ZYKVLenable(struct ZYKVLenable* inst);
|
||||
void PMemGet(struct PMemGet* inst);
|
||||
void PMemPut(struct PMemPut* inst);
|
||||
void PMemSize(struct PMemSize* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _BRSYSTEM_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,258 +1,258 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _BRSYSTEM_
|
||||
#define _BRSYSTEM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define brX2X 10U
|
||||
#define brPP 255U
|
||||
#define brCPU 1U
|
||||
#define brKEY 8U
|
||||
#define brDRAM 0U
|
||||
#define br2003 2U
|
||||
#define br2005 1U
|
||||
#define br2010 0U
|
||||
#define brC200 9U
|
||||
#define brC300 8U
|
||||
#define brADDON 7U
|
||||
#define brPANEL 6U
|
||||
#define brGLOBAL_REMANENT_PV 5U
|
||||
#define brLOCAL_REMANENT_PV 4U
|
||||
#define brUSRROM 3U
|
||||
#define brSYSROM 2U
|
||||
#define brUSRRAM 1U
|
||||
#define brACOPOS 7U
|
||||
#define brCAN_IO 5U
|
||||
#define brBASE_IO 3U
|
||||
#define brPRODUCT 0U
|
||||
#define brETHER_IO 6U
|
||||
#define brNO_FAMILY 255U
|
||||
#define brREMOTE_IO 4U
|
||||
#define brBATTERY_OK 1U
|
||||
#define brPOWERPANEL 5U
|
||||
#define brBATTERY_LOW 0U
|
||||
#define brLOGICSCANNER 3U
|
||||
#define brPLUGIN_MODULE 10U
|
||||
#define brSYSTEM_MODULE 2U
|
||||
#define brBATTERY_NOTEST 2U
|
||||
#define TARGET_BIG_ENDIAN 2U
|
||||
#define brBATTERY_MISSING 3U
|
||||
#define INIT_REASON_UNKNOWN (-1)
|
||||
#define INIT_REASON_DOWNLOAD 3
|
||||
#define TARGET_LITTLE_ENDIAN 1U
|
||||
#define brAUTOMATION_RUNTIME 4U
|
||||
#define brERR_INVALID_DEVICE 27250U
|
||||
#define INIT_REASON_COLDSTART 2
|
||||
#define INIT_REASON_WARMSTART 1
|
||||
#define brSYSCONF_SET_VOLATILE 0
|
||||
#define brERR_INVALID_PARAMETER 27251U
|
||||
#define brSYSCONF_SET_NON_VOLATILE 1
|
||||
#else
|
||||
_IEC_CONST unsigned char brX2X = 10U;
|
||||
_IEC_CONST unsigned char brPP = 255U;
|
||||
_IEC_CONST unsigned char brCPU = 1U;
|
||||
_IEC_CONST unsigned char brKEY = 8U;
|
||||
_IEC_CONST unsigned long brDRAM = 0U;
|
||||
_IEC_CONST unsigned char br2003 = 2U;
|
||||
_IEC_CONST unsigned char br2005 = 1U;
|
||||
_IEC_CONST unsigned char br2010 = 0U;
|
||||
_IEC_CONST unsigned char brC200 = 9U;
|
||||
_IEC_CONST unsigned char brC300 = 8U;
|
||||
_IEC_CONST unsigned char brADDON = 7U;
|
||||
_IEC_CONST unsigned char brPANEL = 6U;
|
||||
_IEC_CONST unsigned long brGLOBAL_REMANENT_PV = 5U;
|
||||
_IEC_CONST unsigned long brLOCAL_REMANENT_PV = 4U;
|
||||
_IEC_CONST unsigned long brUSRROM = 3U;
|
||||
_IEC_CONST unsigned long brSYSROM = 2U;
|
||||
_IEC_CONST unsigned long brUSRRAM = 1U;
|
||||
_IEC_CONST unsigned char brACOPOS = 7U;
|
||||
_IEC_CONST unsigned char brCAN_IO = 5U;
|
||||
_IEC_CONST unsigned char brBASE_IO = 3U;
|
||||
_IEC_CONST unsigned char brPRODUCT = 0U;
|
||||
_IEC_CONST unsigned char brETHER_IO = 6U;
|
||||
_IEC_CONST unsigned char brNO_FAMILY = 255U;
|
||||
_IEC_CONST unsigned char brREMOTE_IO = 4U;
|
||||
_IEC_CONST unsigned char brBATTERY_OK = 1U;
|
||||
_IEC_CONST unsigned char brPOWERPANEL = 5U;
|
||||
_IEC_CONST unsigned char brBATTERY_LOW = 0U;
|
||||
_IEC_CONST unsigned char brLOGICSCANNER = 3U;
|
||||
_IEC_CONST unsigned char brPLUGIN_MODULE = 10U;
|
||||
_IEC_CONST unsigned char brSYSTEM_MODULE = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_NOTEST = 2U;
|
||||
_IEC_CONST unsigned char TARGET_BIG_ENDIAN = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_MISSING = 3U;
|
||||
_IEC_CONST signed char INIT_REASON_UNKNOWN = -1;
|
||||
_IEC_CONST signed char INIT_REASON_DOWNLOAD = 3;
|
||||
_IEC_CONST unsigned char TARGET_LITTLE_ENDIAN = 1U;
|
||||
_IEC_CONST unsigned char brAUTOMATION_RUNTIME = 4U;
|
||||
_IEC_CONST unsigned short brERR_INVALID_DEVICE = 27250U;
|
||||
_IEC_CONST signed char INIT_REASON_COLDSTART = 2;
|
||||
_IEC_CONST signed char INIT_REASON_WARMSTART = 1;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_VOLATILE = 0;
|
||||
_IEC_CONST unsigned short brERR_INVALID_PARAMETER = 27251U;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_NON_VOLATILE = 1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct MEMInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long FreeUSR_Ram;
|
||||
unsigned long FreeSYSTEM;
|
||||
unsigned long FreeUSR_Prom;
|
||||
unsigned long FreeSYS_Prom;
|
||||
unsigned long FreeFIX_Ram;
|
||||
unsigned long FreeTMP_Ram;
|
||||
unsigned long FreeMEMCARD;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMInfo_typ;
|
||||
|
||||
typedef struct MEMxInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long mem_typ;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long MemSize;
|
||||
unsigned long FreeMemSize;
|
||||
unsigned long BiggestFreeBlockSize;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMxInfo_typ;
|
||||
|
||||
typedef struct SysInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char init_reason;
|
||||
unsigned char init_count;
|
||||
unsigned long tick_count;
|
||||
unsigned long version;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysInfo_typ;
|
||||
|
||||
typedef struct RTInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long cycle_time;
|
||||
signed char init_reason;
|
||||
signed char task_class;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} RTInfo_typ;
|
||||
|
||||
typedef struct TARGETInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pOSVersion;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char DataFormat;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TARGETInfo_typ;
|
||||
|
||||
typedef struct HWInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pName;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char family;
|
||||
unsigned char usetype;
|
||||
unsigned long module_typ;
|
||||
unsigned char master_no;
|
||||
unsigned char slave_no;
|
||||
unsigned char module_adr;
|
||||
unsigned char slot_no;
|
||||
/* VAR (analog) */
|
||||
unsigned long next_vw_p;
|
||||
unsigned long last_modul_p;
|
||||
unsigned long next_entry_p;
|
||||
unsigned char next_entry_ix;
|
||||
unsigned char next_slot_ix;
|
||||
unsigned char last_rio_master;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit first;
|
||||
} HWInfo_typ;
|
||||
|
||||
typedef struct SysconfInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pEntry;
|
||||
unsigned long pValue;
|
||||
unsigned long value_len;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysconfInfo_typ;
|
||||
|
||||
typedef struct SysconfSet
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pEntry;
|
||||
unsigned long pNewValue;
|
||||
unsigned char option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysconfSet_typ;
|
||||
|
||||
typedef struct BatteryInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char state;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} BatteryInfo_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void MEMInfo(struct MEMInfo* inst);
|
||||
void MEMxInfo(struct MEMxInfo* inst);
|
||||
void SysInfo(struct SysInfo* inst);
|
||||
void RTInfo(struct RTInfo* inst);
|
||||
void TARGETInfo(struct TARGETInfo* inst);
|
||||
void HWInfo(struct HWInfo* inst);
|
||||
void SysconfInfo(struct SysconfInfo* inst);
|
||||
void SysconfSet(struct SysconfSet* inst);
|
||||
void BatteryInfo(struct BatteryInfo* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _BRSYSTEM_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _BRSYSTEM_
|
||||
#define _BRSYSTEM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define brX2X 10U
|
||||
#define brPP 255U
|
||||
#define brCPU 1U
|
||||
#define brKEY 8U
|
||||
#define brDRAM 0U
|
||||
#define br2003 2U
|
||||
#define br2005 1U
|
||||
#define br2010 0U
|
||||
#define brC200 9U
|
||||
#define brC300 8U
|
||||
#define brADDON 7U
|
||||
#define brPANEL 6U
|
||||
#define brGLOBAL_REMANENT_PV 5U
|
||||
#define brLOCAL_REMANENT_PV 4U
|
||||
#define brUSRROM 3U
|
||||
#define brSYSROM 2U
|
||||
#define brUSRRAM 1U
|
||||
#define brACOPOS 7U
|
||||
#define brCAN_IO 5U
|
||||
#define brBASE_IO 3U
|
||||
#define brPRODUCT 0U
|
||||
#define brETHER_IO 6U
|
||||
#define brNO_FAMILY 255U
|
||||
#define brREMOTE_IO 4U
|
||||
#define brBATTERY_OK 1U
|
||||
#define brPOWERPANEL 5U
|
||||
#define brBATTERY_LOW 0U
|
||||
#define brLOGICSCANNER 3U
|
||||
#define brPLUGIN_MODULE 10U
|
||||
#define brSYSTEM_MODULE 2U
|
||||
#define brBATTERY_NOTEST 2U
|
||||
#define TARGET_BIG_ENDIAN 2U
|
||||
#define brBATTERY_MISSING 3U
|
||||
#define INIT_REASON_UNKNOWN (-1)
|
||||
#define INIT_REASON_DOWNLOAD 3
|
||||
#define TARGET_LITTLE_ENDIAN 1U
|
||||
#define brAUTOMATION_RUNTIME 4U
|
||||
#define brERR_INVALID_DEVICE 27250U
|
||||
#define INIT_REASON_COLDSTART 2
|
||||
#define INIT_REASON_WARMSTART 1
|
||||
#define brSYSCONF_SET_VOLATILE 0
|
||||
#define brERR_INVALID_PARAMETER 27251U
|
||||
#define brSYSCONF_SET_NON_VOLATILE 1
|
||||
#else
|
||||
_IEC_CONST unsigned char brX2X = 10U;
|
||||
_IEC_CONST unsigned char brPP = 255U;
|
||||
_IEC_CONST unsigned char brCPU = 1U;
|
||||
_IEC_CONST unsigned char brKEY = 8U;
|
||||
_IEC_CONST unsigned long brDRAM = 0U;
|
||||
_IEC_CONST unsigned char br2003 = 2U;
|
||||
_IEC_CONST unsigned char br2005 = 1U;
|
||||
_IEC_CONST unsigned char br2010 = 0U;
|
||||
_IEC_CONST unsigned char brC200 = 9U;
|
||||
_IEC_CONST unsigned char brC300 = 8U;
|
||||
_IEC_CONST unsigned char brADDON = 7U;
|
||||
_IEC_CONST unsigned char brPANEL = 6U;
|
||||
_IEC_CONST unsigned long brGLOBAL_REMANENT_PV = 5U;
|
||||
_IEC_CONST unsigned long brLOCAL_REMANENT_PV = 4U;
|
||||
_IEC_CONST unsigned long brUSRROM = 3U;
|
||||
_IEC_CONST unsigned long brSYSROM = 2U;
|
||||
_IEC_CONST unsigned long brUSRRAM = 1U;
|
||||
_IEC_CONST unsigned char brACOPOS = 7U;
|
||||
_IEC_CONST unsigned char brCAN_IO = 5U;
|
||||
_IEC_CONST unsigned char brBASE_IO = 3U;
|
||||
_IEC_CONST unsigned char brPRODUCT = 0U;
|
||||
_IEC_CONST unsigned char brETHER_IO = 6U;
|
||||
_IEC_CONST unsigned char brNO_FAMILY = 255U;
|
||||
_IEC_CONST unsigned char brREMOTE_IO = 4U;
|
||||
_IEC_CONST unsigned char brBATTERY_OK = 1U;
|
||||
_IEC_CONST unsigned char brPOWERPANEL = 5U;
|
||||
_IEC_CONST unsigned char brBATTERY_LOW = 0U;
|
||||
_IEC_CONST unsigned char brLOGICSCANNER = 3U;
|
||||
_IEC_CONST unsigned char brPLUGIN_MODULE = 10U;
|
||||
_IEC_CONST unsigned char brSYSTEM_MODULE = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_NOTEST = 2U;
|
||||
_IEC_CONST unsigned char TARGET_BIG_ENDIAN = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_MISSING = 3U;
|
||||
_IEC_CONST signed char INIT_REASON_UNKNOWN = -1;
|
||||
_IEC_CONST signed char INIT_REASON_DOWNLOAD = 3;
|
||||
_IEC_CONST unsigned char TARGET_LITTLE_ENDIAN = 1U;
|
||||
_IEC_CONST unsigned char brAUTOMATION_RUNTIME = 4U;
|
||||
_IEC_CONST unsigned short brERR_INVALID_DEVICE = 27250U;
|
||||
_IEC_CONST signed char INIT_REASON_COLDSTART = 2;
|
||||
_IEC_CONST signed char INIT_REASON_WARMSTART = 1;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_VOLATILE = 0;
|
||||
_IEC_CONST unsigned short brERR_INVALID_PARAMETER = 27251U;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_NON_VOLATILE = 1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct MEMInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long FreeUSR_Ram;
|
||||
unsigned long FreeSYSTEM;
|
||||
unsigned long FreeUSR_Prom;
|
||||
unsigned long FreeSYS_Prom;
|
||||
unsigned long FreeFIX_Ram;
|
||||
unsigned long FreeTMP_Ram;
|
||||
unsigned long FreeMEMCARD;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMInfo_typ;
|
||||
|
||||
typedef struct MEMxInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long mem_typ;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long MemSize;
|
||||
unsigned long FreeMemSize;
|
||||
unsigned long BiggestFreeBlockSize;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMxInfo_typ;
|
||||
|
||||
typedef struct SysInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char init_reason;
|
||||
unsigned char init_count;
|
||||
unsigned long tick_count;
|
||||
unsigned long version;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysInfo_typ;
|
||||
|
||||
typedef struct RTInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long cycle_time;
|
||||
signed char init_reason;
|
||||
signed char task_class;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} RTInfo_typ;
|
||||
|
||||
typedef struct TARGETInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pOSVersion;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char DataFormat;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TARGETInfo_typ;
|
||||
|
||||
typedef struct HWInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pName;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char family;
|
||||
unsigned char usetype;
|
||||
unsigned long module_typ;
|
||||
unsigned char master_no;
|
||||
unsigned char slave_no;
|
||||
unsigned char module_adr;
|
||||
unsigned char slot_no;
|
||||
/* VAR (analog) */
|
||||
unsigned long next_vw_p;
|
||||
unsigned long last_modul_p;
|
||||
unsigned long next_entry_p;
|
||||
unsigned char next_entry_ix;
|
||||
unsigned char next_slot_ix;
|
||||
unsigned char last_rio_master;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit first;
|
||||
} HWInfo_typ;
|
||||
|
||||
typedef struct SysconfInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pEntry;
|
||||
unsigned long pValue;
|
||||
unsigned long value_len;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysconfInfo_typ;
|
||||
|
||||
typedef struct SysconfSet
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pEntry;
|
||||
unsigned long pNewValue;
|
||||
unsigned char option;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysconfSet_typ;
|
||||
|
||||
typedef struct BatteryInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char state;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} BatteryInfo_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void MEMInfo(struct MEMInfo* inst);
|
||||
void MEMxInfo(struct MEMxInfo* inst);
|
||||
void SysInfo(struct SysInfo* inst);
|
||||
void RTInfo(struct RTInfo* inst);
|
||||
void TARGETInfo(struct TARGETInfo* inst);
|
||||
void HWInfo(struct HWInfo* inst);
|
||||
void SysconfInfo(struct SysconfInfo* inst);
|
||||
void SysconfSet(struct SysconfSet* inst);
|
||||
void BatteryInfo(struct BatteryInfo* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _BRSYSTEM_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,238 +1,238 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _BRSYSTEM_
|
||||
#define _BRSYSTEM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define brX2X 10U
|
||||
#define brPP 255U
|
||||
#define brCPU 1U
|
||||
#define brKEY 8U
|
||||
#define brDRAM 0U
|
||||
#define br2003 2U
|
||||
#define br2005 1U
|
||||
#define br2010 0U
|
||||
#define brC200 9U
|
||||
#define brC300 8U
|
||||
#define brADDON 7U
|
||||
#define brPANEL 6U
|
||||
#define brGLOBAL_REMANENT_PV 5U
|
||||
#define brLOCAL_REMANENT_PV 4U
|
||||
#define brUSRROM 3U
|
||||
#define brSYSROM 2U
|
||||
#define brUSRRAM 1U
|
||||
#define brACOPOS 7U
|
||||
#define brCAN_IO 5U
|
||||
#define brBASE_IO 3U
|
||||
#define brPRODUCT 0U
|
||||
#define brETHER_IO 6U
|
||||
#define brNO_FAMILY 255U
|
||||
#define brREMOTE_IO 4U
|
||||
#define brBATTERY_OK 1U
|
||||
#define brPOWERPANEL 5U
|
||||
#define brBATTERY_LOW 0U
|
||||
#define brLOGICSCANNER 3U
|
||||
#define brPLUGIN_MODULE 10U
|
||||
#define brSYSTEM_MODULE 2U
|
||||
#define brBATTERY_NOTEST 2U
|
||||
#define TARGET_BIG_ENDIAN 2U
|
||||
#define brBATTERY_MISSING 3U
|
||||
#define INIT_REASON_UNKNOWN (-1)
|
||||
#define INIT_REASON_DOWNLOAD 3
|
||||
#define TARGET_LITTLE_ENDIAN 1U
|
||||
#define brAUTOMATION_RUNTIME 4U
|
||||
#define brERR_INVALID_DEVICE 27250U
|
||||
#define INIT_REASON_COLDSTART 2
|
||||
#define INIT_REASON_WARMSTART 1
|
||||
#define brSYSCONF_SET_VOLATILE 0
|
||||
#define brERR_INVALID_PARAMETER 27251U
|
||||
#define brSYSCONF_SET_NON_VOLATILE 1
|
||||
#else
|
||||
_IEC_CONST unsigned char brX2X = 10U;
|
||||
_IEC_CONST unsigned char brPP = 255U;
|
||||
_IEC_CONST unsigned char brCPU = 1U;
|
||||
_IEC_CONST unsigned char brKEY = 8U;
|
||||
_IEC_CONST unsigned long brDRAM = 0U;
|
||||
_IEC_CONST unsigned char br2003 = 2U;
|
||||
_IEC_CONST unsigned char br2005 = 1U;
|
||||
_IEC_CONST unsigned char br2010 = 0U;
|
||||
_IEC_CONST unsigned char brC200 = 9U;
|
||||
_IEC_CONST unsigned char brC300 = 8U;
|
||||
_IEC_CONST unsigned char brADDON = 7U;
|
||||
_IEC_CONST unsigned char brPANEL = 6U;
|
||||
_IEC_CONST unsigned long brGLOBAL_REMANENT_PV = 5U;
|
||||
_IEC_CONST unsigned long brLOCAL_REMANENT_PV = 4U;
|
||||
_IEC_CONST unsigned long brUSRROM = 3U;
|
||||
_IEC_CONST unsigned long brSYSROM = 2U;
|
||||
_IEC_CONST unsigned long brUSRRAM = 1U;
|
||||
_IEC_CONST unsigned char brACOPOS = 7U;
|
||||
_IEC_CONST unsigned char brCAN_IO = 5U;
|
||||
_IEC_CONST unsigned char brBASE_IO = 3U;
|
||||
_IEC_CONST unsigned char brPRODUCT = 0U;
|
||||
_IEC_CONST unsigned char brETHER_IO = 6U;
|
||||
_IEC_CONST unsigned char brNO_FAMILY = 255U;
|
||||
_IEC_CONST unsigned char brREMOTE_IO = 4U;
|
||||
_IEC_CONST unsigned char brBATTERY_OK = 1U;
|
||||
_IEC_CONST unsigned char brPOWERPANEL = 5U;
|
||||
_IEC_CONST unsigned char brBATTERY_LOW = 0U;
|
||||
_IEC_CONST unsigned char brLOGICSCANNER = 3U;
|
||||
_IEC_CONST unsigned char brPLUGIN_MODULE = 10U;
|
||||
_IEC_CONST unsigned char brSYSTEM_MODULE = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_NOTEST = 2U;
|
||||
_IEC_CONST unsigned char TARGET_BIG_ENDIAN = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_MISSING = 3U;
|
||||
_IEC_CONST signed char INIT_REASON_UNKNOWN = -1;
|
||||
_IEC_CONST signed char INIT_REASON_DOWNLOAD = 3;
|
||||
_IEC_CONST unsigned char TARGET_LITTLE_ENDIAN = 1U;
|
||||
_IEC_CONST unsigned char brAUTOMATION_RUNTIME = 4U;
|
||||
_IEC_CONST unsigned short brERR_INVALID_DEVICE = 27250U;
|
||||
_IEC_CONST signed char INIT_REASON_COLDSTART = 2;
|
||||
_IEC_CONST signed char INIT_REASON_WARMSTART = 1;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_VOLATILE = 0;
|
||||
_IEC_CONST unsigned short brERR_INVALID_PARAMETER = 27251U;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_NON_VOLATILE = 1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct MEMInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long FreeUSR_Ram;
|
||||
unsigned long FreeSYSTEM;
|
||||
unsigned long FreeUSR_Prom;
|
||||
unsigned long FreeSYS_Prom;
|
||||
unsigned long FreeFIX_Ram;
|
||||
unsigned long FreeTMP_Ram;
|
||||
unsigned long FreeMEMCARD;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMInfo_typ;
|
||||
|
||||
typedef struct SysInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char init_reason;
|
||||
unsigned char init_count;
|
||||
unsigned long tick_count;
|
||||
unsigned long version;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysInfo_typ;
|
||||
|
||||
typedef struct RTInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long cycle_time;
|
||||
signed char init_reason;
|
||||
signed char task_class;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} RTInfo_typ;
|
||||
|
||||
typedef struct TARGETInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pOSVersion;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char DataFormat;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TARGETInfo_typ;
|
||||
|
||||
typedef struct HWInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pName;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char family;
|
||||
unsigned char usetype;
|
||||
unsigned long module_typ;
|
||||
unsigned char master_no;
|
||||
unsigned char slave_no;
|
||||
unsigned char module_adr;
|
||||
unsigned char slot_no;
|
||||
/* VAR (analog) */
|
||||
unsigned long next_vw_p;
|
||||
unsigned long last_modul_p;
|
||||
unsigned long next_entry_p;
|
||||
unsigned char next_entry_ix;
|
||||
unsigned char next_slot_ix;
|
||||
unsigned char last_rio_master;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit first;
|
||||
} HWInfo_typ;
|
||||
|
||||
typedef struct PMemGet
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemGet_typ;
|
||||
|
||||
typedef struct PMemPut
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemPut_typ;
|
||||
|
||||
typedef struct PMemSize
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long size;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemSize_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void MEMInfo(struct MEMInfo* inst);
|
||||
void SysInfo(struct SysInfo* inst);
|
||||
void RTInfo(struct RTInfo* inst);
|
||||
void TARGETInfo(struct TARGETInfo* inst);
|
||||
void HWInfo(struct HWInfo* inst);
|
||||
void PMemGet(struct PMemGet* inst);
|
||||
void PMemPut(struct PMemPut* inst);
|
||||
void PMemSize(struct PMemSize* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _BRSYSTEM_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _BRSYSTEM_
|
||||
#define _BRSYSTEM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define brX2X 10U
|
||||
#define brPP 255U
|
||||
#define brCPU 1U
|
||||
#define brKEY 8U
|
||||
#define brDRAM 0U
|
||||
#define br2003 2U
|
||||
#define br2005 1U
|
||||
#define br2010 0U
|
||||
#define brC200 9U
|
||||
#define brC300 8U
|
||||
#define brADDON 7U
|
||||
#define brPANEL 6U
|
||||
#define brGLOBAL_REMANENT_PV 5U
|
||||
#define brLOCAL_REMANENT_PV 4U
|
||||
#define brUSRROM 3U
|
||||
#define brSYSROM 2U
|
||||
#define brUSRRAM 1U
|
||||
#define brACOPOS 7U
|
||||
#define brCAN_IO 5U
|
||||
#define brBASE_IO 3U
|
||||
#define brPRODUCT 0U
|
||||
#define brETHER_IO 6U
|
||||
#define brNO_FAMILY 255U
|
||||
#define brREMOTE_IO 4U
|
||||
#define brBATTERY_OK 1U
|
||||
#define brPOWERPANEL 5U
|
||||
#define brBATTERY_LOW 0U
|
||||
#define brLOGICSCANNER 3U
|
||||
#define brPLUGIN_MODULE 10U
|
||||
#define brSYSTEM_MODULE 2U
|
||||
#define brBATTERY_NOTEST 2U
|
||||
#define TARGET_BIG_ENDIAN 2U
|
||||
#define brBATTERY_MISSING 3U
|
||||
#define INIT_REASON_UNKNOWN (-1)
|
||||
#define INIT_REASON_DOWNLOAD 3
|
||||
#define TARGET_LITTLE_ENDIAN 1U
|
||||
#define brAUTOMATION_RUNTIME 4U
|
||||
#define brERR_INVALID_DEVICE 27250U
|
||||
#define INIT_REASON_COLDSTART 2
|
||||
#define INIT_REASON_WARMSTART 1
|
||||
#define brSYSCONF_SET_VOLATILE 0
|
||||
#define brERR_INVALID_PARAMETER 27251U
|
||||
#define brSYSCONF_SET_NON_VOLATILE 1
|
||||
#else
|
||||
_IEC_CONST unsigned char brX2X = 10U;
|
||||
_IEC_CONST unsigned char brPP = 255U;
|
||||
_IEC_CONST unsigned char brCPU = 1U;
|
||||
_IEC_CONST unsigned char brKEY = 8U;
|
||||
_IEC_CONST unsigned long brDRAM = 0U;
|
||||
_IEC_CONST unsigned char br2003 = 2U;
|
||||
_IEC_CONST unsigned char br2005 = 1U;
|
||||
_IEC_CONST unsigned char br2010 = 0U;
|
||||
_IEC_CONST unsigned char brC200 = 9U;
|
||||
_IEC_CONST unsigned char brC300 = 8U;
|
||||
_IEC_CONST unsigned char brADDON = 7U;
|
||||
_IEC_CONST unsigned char brPANEL = 6U;
|
||||
_IEC_CONST unsigned long brGLOBAL_REMANENT_PV = 5U;
|
||||
_IEC_CONST unsigned long brLOCAL_REMANENT_PV = 4U;
|
||||
_IEC_CONST unsigned long brUSRROM = 3U;
|
||||
_IEC_CONST unsigned long brSYSROM = 2U;
|
||||
_IEC_CONST unsigned long brUSRRAM = 1U;
|
||||
_IEC_CONST unsigned char brACOPOS = 7U;
|
||||
_IEC_CONST unsigned char brCAN_IO = 5U;
|
||||
_IEC_CONST unsigned char brBASE_IO = 3U;
|
||||
_IEC_CONST unsigned char brPRODUCT = 0U;
|
||||
_IEC_CONST unsigned char brETHER_IO = 6U;
|
||||
_IEC_CONST unsigned char brNO_FAMILY = 255U;
|
||||
_IEC_CONST unsigned char brREMOTE_IO = 4U;
|
||||
_IEC_CONST unsigned char brBATTERY_OK = 1U;
|
||||
_IEC_CONST unsigned char brPOWERPANEL = 5U;
|
||||
_IEC_CONST unsigned char brBATTERY_LOW = 0U;
|
||||
_IEC_CONST unsigned char brLOGICSCANNER = 3U;
|
||||
_IEC_CONST unsigned char brPLUGIN_MODULE = 10U;
|
||||
_IEC_CONST unsigned char brSYSTEM_MODULE = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_NOTEST = 2U;
|
||||
_IEC_CONST unsigned char TARGET_BIG_ENDIAN = 2U;
|
||||
_IEC_CONST unsigned char brBATTERY_MISSING = 3U;
|
||||
_IEC_CONST signed char INIT_REASON_UNKNOWN = -1;
|
||||
_IEC_CONST signed char INIT_REASON_DOWNLOAD = 3;
|
||||
_IEC_CONST unsigned char TARGET_LITTLE_ENDIAN = 1U;
|
||||
_IEC_CONST unsigned char brAUTOMATION_RUNTIME = 4U;
|
||||
_IEC_CONST unsigned short brERR_INVALID_DEVICE = 27250U;
|
||||
_IEC_CONST signed char INIT_REASON_COLDSTART = 2;
|
||||
_IEC_CONST signed char INIT_REASON_WARMSTART = 1;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_VOLATILE = 0;
|
||||
_IEC_CONST unsigned short brERR_INVALID_PARAMETER = 27251U;
|
||||
_IEC_CONST plcbit brSYSCONF_SET_NON_VOLATILE = 1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct MEMInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long FreeUSR_Ram;
|
||||
unsigned long FreeSYSTEM;
|
||||
unsigned long FreeUSR_Prom;
|
||||
unsigned long FreeSYS_Prom;
|
||||
unsigned long FreeFIX_Ram;
|
||||
unsigned long FreeTMP_Ram;
|
||||
unsigned long FreeMEMCARD;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} MEMInfo_typ;
|
||||
|
||||
typedef struct SysInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned char init_reason;
|
||||
unsigned char init_count;
|
||||
unsigned long tick_count;
|
||||
unsigned long version;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} SysInfo_typ;
|
||||
|
||||
typedef struct RTInfo
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long cycle_time;
|
||||
signed char init_reason;
|
||||
signed char task_class;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} RTInfo_typ;
|
||||
|
||||
typedef struct TARGETInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pOSVersion;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char DataFormat;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} TARGETInfo_typ;
|
||||
|
||||
typedef struct HWInfo
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pName;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char family;
|
||||
unsigned char usetype;
|
||||
unsigned long module_typ;
|
||||
unsigned char master_no;
|
||||
unsigned char slave_no;
|
||||
unsigned char module_adr;
|
||||
unsigned char slot_no;
|
||||
/* VAR (analog) */
|
||||
unsigned long next_vw_p;
|
||||
unsigned long last_modul_p;
|
||||
unsigned long next_entry_p;
|
||||
unsigned char next_entry_ix;
|
||||
unsigned char next_slot_ix;
|
||||
unsigned char last_rio_master;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
plcbit first;
|
||||
} HWInfo_typ;
|
||||
|
||||
typedef struct PMemGet
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemGet_typ;
|
||||
|
||||
typedef struct PMemPut
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long offset;
|
||||
unsigned long len;
|
||||
unsigned long adress;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemPut_typ;
|
||||
|
||||
typedef struct PMemSize
|
||||
{
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned long size;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} PMemSize_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void MEMInfo(struct MEMInfo* inst);
|
||||
void SysInfo(struct SysInfo* inst);
|
||||
void RTInfo(struct RTInfo* inst);
|
||||
void TARGETInfo(struct TARGETInfo* inst);
|
||||
void HWInfo(struct HWInfo* inst);
|
||||
void PMemGet(struct PMemGet* inst);
|
||||
void PMemPut(struct PMemPut* inst);
|
||||
void PMemSize(struct PMemSize* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _BRSYSTEM_ */
|
||||
|
||||
|
||||
|
||||
@@ -1,194 +1,194 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: brsystem
|
||||
* File: brsystem.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library brsystem
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK MEMInfo (*returns information about the memory areas available on the system*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
FreeUSR_Ram :UDINT; (*SG3: free memory in USER RAM SG4: free memory in SRAM (Userram)*)
|
||||
FreeSYSTEM :UDINT; (*SG3: free system memory SG4: not used, always 0*)
|
||||
FreeUSR_Prom :UDINT; (*SG3: free memory in USER PROM SG4: free memory of HD where RPSHD is located*)
|
||||
FreeSYS_Prom :UDINT; (*SG3: free memory in system PROM SG4: free memory of HD where RPSHD is located*)
|
||||
FreeFIX_Ram :UDINT; (*SG3: free memory in FIX RAM SG4: not used, always 0*)
|
||||
FreeTMP_Ram :UDINT; (*SG3: free temporary memory in RAM SG4: free memory in DRAM*)
|
||||
FreeMEMCARD :UDINT; (*SG3: free memory on MEMCARD SG4: not used, always 0*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK MEMxInfo (*returns information about the memory areas available in the system; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
mem_typ :UDINT; (*memory type: brDRAM, brUSRRAM, brSYSROM, brUSRROM*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
MemSize :UDINT; (*total memory size in bytes*)
|
||||
FreeMemSize :UDINT; (*size of available memory in bytes*)
|
||||
BiggestFreeBlockSize :UDINT; (*size of the largest available block in memory in bytes*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK SysInfo (*returns information about the target system*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
init_reason :USINT; (*reason for initialization*)
|
||||
init_count :USINT; (*SG3: the value is increased by every INIT (warm restart) SG4: not used, always 0*)
|
||||
tick_count :UDINT; (*tick count*)
|
||||
version :UDINT; (*operating system version of the target system*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK RTInfo (*returns runtime information about the software object*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
cycle_time :UDINT; (*cycle time in microsec*)
|
||||
init_reason :SINT; (*reason for initialization*)
|
||||
task_class :SINT; (*task class (SG3: #1 - #4 SG4: #1 - #8)*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK TARGETInfo (*returns information about the target system used*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pOSVersion :UDINT; (*string given as a pointer (min. 7 char), where the os version is written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
DataFormat :USINT; (*wether "big endian" or "little endian" ("TARGET_BIG_ENDIAN"/"TARGET_LITTLE_ENDIAN")*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK HWInfo (*returns information about the hardware configuration*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
first :BOOL; (*determines the hardware module on which the FUB is used 0/1 next/first*)
|
||||
pName :UDINT; (*string given as a pointer, where the name of the module is written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
family :USINT; (*family designation*)
|
||||
usetype :USINT; (*hardware type*)
|
||||
module_typ :UDINT; (*module type*)
|
||||
master_no :USINT; (*logical number of the IO master, RIO master, CAN bus with CANIO*)
|
||||
slave_no :USINT; (*slave number*)
|
||||
module_adr :USINT; (*hardware module address (decimal)*)
|
||||
slot_no :USINT; (*slot of the first submodule found (decimal)*)
|
||||
END_VAR
|
||||
VAR
|
||||
next_vw_p :UDINT; (*internal variable*)
|
||||
last_modul_p :UDINT; (*internal variable*)
|
||||
next_entry_p :UDINT; (*internal variable*)
|
||||
next_entry_ix :USINT; (*internal variable*)
|
||||
next_slot_ix :USINT; (*internal variable*)
|
||||
last_rio_master :USINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK SysconfInfo (*returns the parameters for a sysconf entry*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pEntry :UDINT; (*string given as a pointer, where the name of the entry is written*)
|
||||
pValue :UDINT; (*string given as a pointer, where the value of the entry is copied*)
|
||||
value_len :UDINT; (*length of the "value-string"*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK SysconfSet (*sets the parameters for a sysconf entry*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pEntry :UDINT; (*string given as a pointer, where the name of the entry is written*)
|
||||
pNewValue :UDINT; (*string given as a pointer, where the new value of the entry is written*)
|
||||
option :USINT; (*sets the parameter volatile/permanent ("brSYSCONF_SET_VOLATILE"/"brSYSCONF_SET_NON_VOLATILE")*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK BatteryInfo (*returns the state of the battery*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDevice :UDINT; (*device name given as a pointer*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
state :USINT; (*state of the battery*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK EXCInfo (*returns information about the software object that triggered the exception*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
task_class :UDINT; (*task class in which the exception was triggered*)
|
||||
task_ident :UDINT; (*ID number of the software object that triggered the exception*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK ZYKVLenable (*enables/disables the cycle time monitoring of software objects*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
mode :BOOL; (*0/1 monitoring off/on*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK PMemGet (*reads data of len byte from the permanent memeory area beginning at offset*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
offset :UDINT; (*offset within the permanent memory area*)
|
||||
len :UDINT; (*length of data area to be read*)
|
||||
adress :UDINT; (*address where the read data is copied*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK PMemPut (*writes len bytes to the permanent memory area beginning at offset*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
offset :UDINT; (*offset within the permanent memory area*)
|
||||
len :UDINT; (*length of data area to be written*)
|
||||
adress :UDINT; (*address of the data to be written to the permanent memory area*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK PMemSize (*determines the size of permanent memory area in its existing configuration*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
size :UDINT; (*size of permanent memory area*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: brsystem
|
||||
* File: brsystem.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library brsystem
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK MEMInfo (*returns information about the memory areas available on the system*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
FreeUSR_Ram :UDINT; (*SG3: free memory in USER RAM SG4: free memory in SRAM (Userram)*)
|
||||
FreeSYSTEM :UDINT; (*SG3: free system memory SG4: not used, always 0*)
|
||||
FreeUSR_Prom :UDINT; (*SG3: free memory in USER PROM SG4: free memory of HD where RPSHD is located*)
|
||||
FreeSYS_Prom :UDINT; (*SG3: free memory in system PROM SG4: free memory of HD where RPSHD is located*)
|
||||
FreeFIX_Ram :UDINT; (*SG3: free memory in FIX RAM SG4: not used, always 0*)
|
||||
FreeTMP_Ram :UDINT; (*SG3: free temporary memory in RAM SG4: free memory in DRAM*)
|
||||
FreeMEMCARD :UDINT; (*SG3: free memory on MEMCARD SG4: not used, always 0*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK MEMxInfo (*returns information about the memory areas available in the system; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
mem_typ :UDINT; (*memory type: brDRAM, brUSRRAM, brSYSROM, brUSRROM*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, ERR_FUB_BUSY, 0xXXXX = see help*)
|
||||
MemSize :UDINT; (*total memory size in bytes*)
|
||||
FreeMemSize :UDINT; (*size of available memory in bytes*)
|
||||
BiggestFreeBlockSize :UDINT; (*size of the largest available block in memory in bytes*)
|
||||
END_VAR
|
||||
VAR
|
||||
i_state :UINT; (*internal variable*)
|
||||
i_result :UINT; (*internal variable*)
|
||||
i_tmp :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK SysInfo (*returns information about the target system*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
init_reason :USINT; (*reason for initialization*)
|
||||
init_count :USINT; (*SG3: the value is increased by every INIT (warm restart) SG4: not used, always 0*)
|
||||
tick_count :UDINT; (*tick count*)
|
||||
version :UDINT; (*operating system version of the target system*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK RTInfo (*returns runtime information about the software object*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
cycle_time :UDINT; (*cycle time in microsec*)
|
||||
init_reason :SINT; (*reason for initialization*)
|
||||
task_class :SINT; (*task class (SG3: #1 - #4 SG4: #1 - #8)*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK TARGETInfo (*returns information about the target system used*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pOSVersion :UDINT; (*string given as a pointer (min. 7 char), where the os version is written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
DataFormat :USINT; (*wether "big endian" or "little endian" ("TARGET_BIG_ENDIAN"/"TARGET_LITTLE_ENDIAN")*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK HWInfo (*returns information about the hardware configuration*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
first :BOOL; (*determines the hardware module on which the FUB is used 0/1 next/first*)
|
||||
pName :UDINT; (*string given as a pointer, where the name of the module is written*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
family :USINT; (*family designation*)
|
||||
usetype :USINT; (*hardware type*)
|
||||
module_typ :UDINT; (*module type*)
|
||||
master_no :USINT; (*logical number of the IO master, RIO master, CAN bus with CANIO*)
|
||||
slave_no :USINT; (*slave number*)
|
||||
module_adr :USINT; (*hardware module address (decimal)*)
|
||||
slot_no :USINT; (*slot of the first submodule found (decimal)*)
|
||||
END_VAR
|
||||
VAR
|
||||
next_vw_p :UDINT; (*internal variable*)
|
||||
last_modul_p :UDINT; (*internal variable*)
|
||||
next_entry_p :UDINT; (*internal variable*)
|
||||
next_entry_ix :USINT; (*internal variable*)
|
||||
next_slot_ix :USINT; (*internal variable*)
|
||||
last_rio_master :USINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK SysconfInfo (*returns the parameters for a sysconf entry*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pEntry :UDINT; (*string given as a pointer, where the name of the entry is written*)
|
||||
pValue :UDINT; (*string given as a pointer, where the value of the entry is copied*)
|
||||
value_len :UDINT; (*length of the "value-string"*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK SysconfSet (*sets the parameters for a sysconf entry*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pEntry :UDINT; (*string given as a pointer, where the name of the entry is written*)
|
||||
pNewValue :UDINT; (*string given as a pointer, where the new value of the entry is written*)
|
||||
option :USINT; (*sets the parameter volatile/permanent ("brSYSCONF_SET_VOLATILE"/"brSYSCONF_SET_NON_VOLATILE")*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK BatteryInfo (*returns the state of the battery*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
pDevice :UDINT; (*device name given as a pointer*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
state :USINT; (*state of the battery*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK EXCInfo (*returns information about the software object that triggered the exception*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
task_class :UDINT; (*task class in which the exception was triggered*)
|
||||
task_ident :UDINT; (*ID number of the software object that triggered the exception*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK ZYKVLenable (*enables/disables the cycle time monitoring of software objects*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
mode :BOOL; (*0/1 monitoring off/on*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK PMemGet (*reads data of len byte from the permanent memeory area beginning at offset*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
offset :UDINT; (*offset within the permanent memory area*)
|
||||
len :UDINT; (*length of data area to be read*)
|
||||
adress :UDINT; (*address where the read data is copied*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK PMemPut (*writes len bytes to the permanent memory area beginning at offset*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
offset :UDINT; (*offset within the permanent memory area*)
|
||||
len :UDINT; (*length of data area to be written*)
|
||||
adress :UDINT; (*address of the data to be written to the permanent memory area*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK PMemSize (*determines the size of permanent memory area in its existing configuration*)
|
||||
VAR_INPUT
|
||||
enable :BOOL; (*enables execution*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
status :UINT; (*execution status: ERR_OK, ERR_FUB_ENABLE_FALSE, 0xXXXX = see help*)
|
||||
size :UDINT; (*size of permanent memory area*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
@@ -1,55 +1,55 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: brsystem
|
||||
* File: brsystem.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library brsystem
|
||||
********************************************************************)
|
||||
|
||||
VAR CONSTANT
|
||||
brSYSCONF_SET_NON_VOLATILE : BOOL := TRUE; (*set permanent value*)
|
||||
brERR_INVALID_PARAMETER : UINT := 27251; (*invalid parameter transferred*)
|
||||
brSYSCONF_SET_VOLATILE : BOOL := FALSE; (*set non-permanent value*)
|
||||
INIT_REASON_WARMSTART : SINT := 1; (*warm restart boot information*)
|
||||
INIT_REASON_COLDSTART : SINT := 2; (*cold restart boot information*)
|
||||
brERR_INVALID_DEVICE : UINT := 27250; (*battery monitoring*)
|
||||
brAUTOMATION_RUNTIME : USINT := 4; (*series recognition*)
|
||||
TARGET_LITTLE_ENDIAN : USINT := 1; (*formatSpec*)
|
||||
INIT_REASON_DOWNLOAD : SINT := 3; (*download boot information*)
|
||||
INIT_REASON_UNKNOWN : SINT := -1; (*unknown boot information*)
|
||||
brBATTERY_MISSING : USINT := 3; (*battery monitoring*)
|
||||
TARGET_BIG_ENDIAN : USINT := 2; (*formatSpec*)
|
||||
brBATTERY_NOTEST : USINT := 2; (*battery monitoring*)
|
||||
brSYSTEM_MODULE : USINT := 2; (*usage recognition*)
|
||||
brPLUGIN_MODULE : USINT := 10; (*usage recognition*)
|
||||
brLOGICSCANNER : USINT := 3; (*series recognition*)
|
||||
brBATTERY_LOW : USINT := 0; (*battery monitoring*)
|
||||
brPOWERPANEL : USINT := 5; (*series recognition*)
|
||||
brBATTERY_OK : USINT := 1; (*battery monitoring*)
|
||||
brREMOTE_IO : USINT := 4; (*usage recognition*)
|
||||
brNO_FAMILY : USINT := 255; (*series recognition*)
|
||||
brETHER_IO : USINT := 6; (*usage recognition*)
|
||||
brPRODUCT : USINT := 0; (*usage recognition*)
|
||||
brBASE_IO : USINT := 3; (*usage recognition*)
|
||||
brCAN_IO : USINT := 5; (*usage recognition*)
|
||||
brACOPOS : USINT := 7; (*usage recognition*)
|
||||
brUSRRAM : UDINT := 1; (*USRRAM memory type*)
|
||||
brSYSROM : UDINT := 2; (*SYSROM memory type*)
|
||||
brUSRROM : UDINT := 3; (*USRROM memory type*)
|
||||
brLOCAL_REMANENT_PV : UDINT := 4; (*local REMMEM memory type*)
|
||||
brGLOBAL_REMANENT_PV : UDINT := 5; (*global REMMEM memory type*)
|
||||
brPANEL : USINT := 6; (*series recognition*)
|
||||
brADDON : USINT := 7; (*series recognition*)
|
||||
brC300 : USINT := 8; (*series recognition*)
|
||||
brC200 : USINT := 9; (*series recognition*)
|
||||
br2010 : USINT := 0; (*series recognition*)
|
||||
br2005 : USINT := 1; (*series recognition*)
|
||||
br2003 : USINT := 2; (*series recognition*)
|
||||
brDRAM : UDINT := 0; (*DRAM memory type*)
|
||||
brKEY : USINT := 8; (*usage recognition*)
|
||||
brCPU : USINT := 1; (*usage recognition*)
|
||||
brPP : USINT := 255; (*usage recognition*)
|
||||
brX2X : USINT := 10; (*series recognition*)
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: brsystem
|
||||
* File: brsystem.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library brsystem
|
||||
********************************************************************)
|
||||
|
||||
VAR CONSTANT
|
||||
brSYSCONF_SET_NON_VOLATILE : BOOL := TRUE; (*set permanent value*)
|
||||
brERR_INVALID_PARAMETER : UINT := 27251; (*invalid parameter transferred*)
|
||||
brSYSCONF_SET_VOLATILE : BOOL := FALSE; (*set non-permanent value*)
|
||||
INIT_REASON_WARMSTART : SINT := 1; (*warm restart boot information*)
|
||||
INIT_REASON_COLDSTART : SINT := 2; (*cold restart boot information*)
|
||||
brERR_INVALID_DEVICE : UINT := 27250; (*battery monitoring*)
|
||||
brAUTOMATION_RUNTIME : USINT := 4; (*series recognition*)
|
||||
TARGET_LITTLE_ENDIAN : USINT := 1; (*formatSpec*)
|
||||
INIT_REASON_DOWNLOAD : SINT := 3; (*download boot information*)
|
||||
INIT_REASON_UNKNOWN : SINT := -1; (*unknown boot information*)
|
||||
brBATTERY_MISSING : USINT := 3; (*battery monitoring*)
|
||||
TARGET_BIG_ENDIAN : USINT := 2; (*formatSpec*)
|
||||
brBATTERY_NOTEST : USINT := 2; (*battery monitoring*)
|
||||
brSYSTEM_MODULE : USINT := 2; (*usage recognition*)
|
||||
brPLUGIN_MODULE : USINT := 10; (*usage recognition*)
|
||||
brLOGICSCANNER : USINT := 3; (*series recognition*)
|
||||
brBATTERY_LOW : USINT := 0; (*battery monitoring*)
|
||||
brPOWERPANEL : USINT := 5; (*series recognition*)
|
||||
brBATTERY_OK : USINT := 1; (*battery monitoring*)
|
||||
brREMOTE_IO : USINT := 4; (*usage recognition*)
|
||||
brNO_FAMILY : USINT := 255; (*series recognition*)
|
||||
brETHER_IO : USINT := 6; (*usage recognition*)
|
||||
brPRODUCT : USINT := 0; (*usage recognition*)
|
||||
brBASE_IO : USINT := 3; (*usage recognition*)
|
||||
brCAN_IO : USINT := 5; (*usage recognition*)
|
||||
brACOPOS : USINT := 7; (*usage recognition*)
|
||||
brUSRRAM : UDINT := 1; (*USRRAM memory type*)
|
||||
brSYSROM : UDINT := 2; (*SYSROM memory type*)
|
||||
brUSRROM : UDINT := 3; (*USRROM memory type*)
|
||||
brLOCAL_REMANENT_PV : UDINT := 4; (*local REMMEM memory type*)
|
||||
brGLOBAL_REMANENT_PV : UDINT := 5; (*global REMMEM memory type*)
|
||||
brPANEL : USINT := 6; (*series recognition*)
|
||||
brADDON : USINT := 7; (*series recognition*)
|
||||
brC300 : USINT := 8; (*series recognition*)
|
||||
brC200 : USINT := 9; (*series recognition*)
|
||||
br2010 : USINT := 0; (*series recognition*)
|
||||
br2005 : USINT := 1; (*series recognition*)
|
||||
br2003 : USINT := 2; (*series recognition*)
|
||||
brDRAM : UDINT := 0; (*DRAM memory type*)
|
||||
brKEY : USINT := 8; (*usage recognition*)
|
||||
brCPU : USINT := 1; (*usage recognition*)
|
||||
brPP : USINT := 255; (*usage recognition*)
|
||||
brX2X : USINT := 10; (*series recognition*)
|
||||
END_VAR
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="This library contains function interfaces for IEC1131-3 operator functions. For the most part, these are mathematical and logical functions.">
|
||||
<Files>
|
||||
<File>operator.fun</File>
|
||||
</Files>
|
||||
</Library>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="This library contains function interfaces for IEC1131-3 operator functions. For the most part, these are mathematical and logical functions.">
|
||||
<Files>
|
||||
<File>operator.fun</File>
|
||||
</Files>
|
||||
</Library>
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/****************************************************************************/
|
||||
/* */
|
||||
/* operator.h */
|
||||
/* */
|
||||
/* Automation Studio */
|
||||
/* Copyright Bernecker&Rainer 1998-1999 */
|
||||
/* */
|
||||
/****************************************************************************/
|
||||
|
||||
/* This library does not contain C code */
|
||||
|
||||
/****************************************************************************/
|
||||
/* */
|
||||
/* operator.h */
|
||||
/* */
|
||||
/* Automation Studio */
|
||||
/* Copyright Bernecker&Rainer 1998-1999 */
|
||||
/* */
|
||||
/****************************************************************************/
|
||||
|
||||
/* This library does not contain C code */
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/****************************************************************************/
|
||||
/* */
|
||||
/* operator.h */
|
||||
/* */
|
||||
/* Automation Studio */
|
||||
/* Copyright Bernecker&Rainer 1998-1999 */
|
||||
/* */
|
||||
/****************************************************************************/
|
||||
|
||||
/* This library does not contain C code */
|
||||
|
||||
/****************************************************************************/
|
||||
/* */
|
||||
/* operator.h */
|
||||
/* */
|
||||
/* Automation Studio */
|
||||
/* Copyright Bernecker&Rainer 1998-1999 */
|
||||
/* */
|
||||
/****************************************************************************/
|
||||
|
||||
/* This library does not contain C code */
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/****************************************************************************/
|
||||
/* */
|
||||
/* operator.h */
|
||||
/* */
|
||||
/* Automation Studio */
|
||||
/* Copyright Bernecker&Rainer 1998-1999 */
|
||||
/* */
|
||||
/****************************************************************************/
|
||||
|
||||
/* This library does not contain C code */
|
||||
|
||||
/****************************************************************************/
|
||||
/* */
|
||||
/* operator.h */
|
||||
/* */
|
||||
/* Automation Studio */
|
||||
/* Copyright Bernecker&Rainer 1998-1999 */
|
||||
/* */
|
||||
/****************************************************************************/
|
||||
|
||||
/* This library does not contain C code */
|
||||
|
||||
|
||||
@@ -1,231 +1,231 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: operator
|
||||
* File: operator.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library operator
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION SIZEOF : UDINT (*determines the size of a variable in bytes*)
|
||||
VAR_INPUT
|
||||
in :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ADR : UDINT (*determines the address of a data point*)
|
||||
VAR_INPUT
|
||||
in :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SHR : ANY (*shifts bitwise to the right*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be shifted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ROR : ANY (*rotates bitwise to the right*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be rotated*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ROL : ANY (*rotates bitwise to the left*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be rotated*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SHL : ANY (*shifts bitwise to the left*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be shifted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION AND : ANY (*makes a bitwise AND relation for 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION XOR : ANY (*makes a bitwise XOR relation for 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION OR : ANY (*makes a bitwise OR relation for 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION NOT : ANY (*makes a bitwise inversion of variables*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ADD : ANY (*adds 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MUL : ANY_NUM (*multiplies 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY_NUM; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SUB : ANY (*subtracts one or more variables from another variable*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*value 1*)
|
||||
IN2 :ANY; (*value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION DIV : ANY_NUM (*divides a variable by one or more variables*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY_NUM; (*dividend*)
|
||||
IN2 :ANY_NUM; (*divisor*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MOD : ANY_INT (*makes a remainder when dividing a variable by another variable*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY_INT; (*dividend*)
|
||||
IN2 :ANY_INT; (*divisor*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MOVE : ANY (*copies the contents of the input variables to the corresponding output variables*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input variable*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MAX : ANY (*determines the maximum value of two or more values*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*input value 1*)
|
||||
IN2 :ANY; (*input value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MIN : ANY (*determines the lowest value of two or more values*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*input value 1*)
|
||||
IN2 :ANY; (*input value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LIMIT : ANY (*limits a value to within maximum and minimum boundaries*)
|
||||
VAR_INPUT
|
||||
MN :ANY; (*minimum value*)
|
||||
IN :ANY; (*input value*)
|
||||
MX :ANY; (*maximum value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SEL : ANY (*selects one value from two values*)
|
||||
VAR_INPUT
|
||||
G :BOOL; (*selection variable*)
|
||||
IN0 :ANY; (*input value for FALSE*)
|
||||
IN1 :ANY; (*input value for TRUE*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MUX : ANY (*selects a value from several values*)
|
||||
VAR_INPUT
|
||||
K :SINT; (*selection variable*)
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION GE : BOOL (*checks if the input values are in decreasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION EQ : BOOL (*compares two or more values whether they are equal*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION GT : BOOL (*checks if the input values are in decreasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LE : BOOL (*checks if the input values are in increasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LT : BOOL (*checks if the input values are in increasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION NE : BOOL (*compares two values whether they are not equal*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ABS : ANY_NUM (*returns the absolute value of a number*)
|
||||
VAR_INPUT
|
||||
IN :ANY_NUM; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SQRT : ANY_REAL (*returns the square root of a number*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LN : ANY_REAL (*returns the result of a natural logarithm*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LOG : ANY_REAL (*returns the result of a base 10 logarithm*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION EXP : ANY_REAL (*returns the result of a natural exponential function*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SIN : ANY_REAL (*returns the sine of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value in radian*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION COS : ANY_REAL (*returns the cosine of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value in radian*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION TAN : ANY_REAL (*returns the tangent of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value in radian*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ASIN : ANY_REAL (*returns the arc sine (inverse function of sine) of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ACOS : ANY_REAL (*returns the arc cosine (inverse function of cosine) of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ATAN : ANY_REAL (*returns the arc tangent (inverse function of tangent) of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION EXPT : REAL (*raises one variable to the power of another*)
|
||||
VAR_INPUT
|
||||
IN1 :REAL; (*base*)
|
||||
IN2 :ANY_NUM; (*exponent*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION TRUNC : INT (*converts from type REAL to type INT (number is always rounded down)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: operator
|
||||
* File: operator.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library operator
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION SIZEOF : UDINT (*determines the size of a variable in bytes*)
|
||||
VAR_INPUT
|
||||
in :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ADR : UDINT (*determines the address of a data point*)
|
||||
VAR_INPUT
|
||||
in :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SHR : ANY (*shifts bitwise to the right*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be shifted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ROR : ANY (*rotates bitwise to the right*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be rotated*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ROL : ANY (*rotates bitwise to the left*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be rotated*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SHL : ANY (*shifts bitwise to the left*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
N :SINT; (*number of bits to be shifted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION AND : ANY (*makes a bitwise AND relation for 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION XOR : ANY (*makes a bitwise XOR relation for 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION OR : ANY (*makes a bitwise OR relation for 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION NOT : ANY (*makes a bitwise inversion of variables*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ADD : ANY (*adds 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MUL : ANY_NUM (*multiplies 2 or more variables*)
|
||||
VAR_INPUT
|
||||
INx :ANY_NUM; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SUB : ANY (*subtracts one or more variables from another variable*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*value 1*)
|
||||
IN2 :ANY; (*value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION DIV : ANY_NUM (*divides a variable by one or more variables*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY_NUM; (*dividend*)
|
||||
IN2 :ANY_NUM; (*divisor*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MOD : ANY_INT (*makes a remainder when dividing a variable by another variable*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY_INT; (*dividend*)
|
||||
IN2 :ANY_INT; (*divisor*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MOVE : ANY (*copies the contents of the input variables to the corresponding output variables*)
|
||||
VAR_INPUT
|
||||
IN :ANY; (*input variable*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MAX : ANY (*determines the maximum value of two or more values*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*input value 1*)
|
||||
IN2 :ANY; (*input value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MIN : ANY (*determines the lowest value of two or more values*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*input value 1*)
|
||||
IN2 :ANY; (*input value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LIMIT : ANY (*limits a value to within maximum and minimum boundaries*)
|
||||
VAR_INPUT
|
||||
MN :ANY; (*minimum value*)
|
||||
IN :ANY; (*input value*)
|
||||
MX :ANY; (*maximum value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SEL : ANY (*selects one value from two values*)
|
||||
VAR_INPUT
|
||||
G :BOOL; (*selection variable*)
|
||||
IN0 :ANY; (*input value for FALSE*)
|
||||
IN1 :ANY; (*input value for TRUE*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MUX : ANY (*selects a value from several values*)
|
||||
VAR_INPUT
|
||||
K :SINT; (*selection variable*)
|
||||
INx :ANY; (*input values*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION GE : BOOL (*checks if the input values are in decreasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION EQ : BOOL (*compares two or more values whether they are equal*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION GT : BOOL (*checks if the input values are in decreasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LE : BOOL (*checks if the input values are in increasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LT : BOOL (*checks if the input values are in increasing order*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION NE : BOOL (*compares two values whether they are not equal*)
|
||||
VAR_INPUT
|
||||
IN1 :ANY; (*comparison value 1*)
|
||||
IN2 :ANY; (*comparison value 2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ABS : ANY_NUM (*returns the absolute value of a number*)
|
||||
VAR_INPUT
|
||||
IN :ANY_NUM; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SQRT : ANY_REAL (*returns the square root of a number*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LN : ANY_REAL (*returns the result of a natural logarithm*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LOG : ANY_REAL (*returns the result of a base 10 logarithm*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION EXP : ANY_REAL (*returns the result of a natural exponential function*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION SIN : ANY_REAL (*returns the sine of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value in radian*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION COS : ANY_REAL (*returns the cosine of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value in radian*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION TAN : ANY_REAL (*returns the tangent of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value in radian*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ASIN : ANY_REAL (*returns the arc sine (inverse function of sine) of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ACOS : ANY_REAL (*returns the arc cosine (inverse function of cosine) of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION ATAN : ANY_REAL (*returns the arc tangent (inverse function of tangent) of a number (calculated in radian)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION EXPT : REAL (*raises one variable to the power of another*)
|
||||
VAR_INPUT
|
||||
IN1 :REAL; (*base*)
|
||||
IN2 :ANY_NUM; (*exponent*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION TRUNC : INT (*converts from type REAL to type INT (number is always rounded down)*)
|
||||
VAR_INPUT
|
||||
IN :ANY_REAL; (*input value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
@@ -1,80 +1,80 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _RUNTIME_
|
||||
#define _RUNTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define ERR_OK 0
|
||||
#define ERR_NOTIMPLEMENTED 9999
|
||||
#define ERR_FUB_ENABLE_FALSE 0xFFFE
|
||||
#define ERR_FUB_BUSY 0xFFFF
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
#define IEC_DATATYPE_BOOL 1
|
||||
#define IEC_DATATYPE_SINT 2
|
||||
#define IEC_DATATYPE_INT 3
|
||||
#define IEC_DATATYPE_DINT 4
|
||||
#define IEC_DATATYPE_USINT 5
|
||||
#define IEC_DATATYPE_UINT 6
|
||||
#define IEC_DATATYPE_UDINT 7
|
||||
#define IEC_DATATYPE_REAL 8
|
||||
#define IEC_DATATYPE_STRING 9
|
||||
#define IEC_DATATYPE_ULINT 10
|
||||
#define IEC_DATATYPE_DATE_AND_TIME 11
|
||||
#define IEC_DATATYPE_TIME 12
|
||||
#define IEC_DATATYPE_DATE 13
|
||||
#define IEC_DATATYPE_LREAL 14
|
||||
#define IEC_DATATYPE_TIME_OF_DAY 16
|
||||
#define IEC_DATATYPE_BYTE 17
|
||||
#define IEC_DATATYPE_WORD 18
|
||||
#define IEC_DATATYPE_DWORD 19
|
||||
#define IEC_DATATYPE_LWORD 20
|
||||
#define IEC_DATATYPE_WSTRING 21
|
||||
#define IEC_DATATYPE_LINT 23
|
||||
|
||||
#else
|
||||
_IEC_CONST unsigned short ERR_OK = 0U;
|
||||
_IEC_CONST unsigned short ERR_NOTIMPLEMENTED = 9999U;
|
||||
_IEC_CONST unsigned short ERR_FUB_ENABLE_FALSE = 0xFFFEU;
|
||||
_IEC_CONST unsigned short ERR_FUB_BUSY = 0xFFFFU;
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BOOL = 1;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_SINT = 2;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_INT = 3;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DINT = 4;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_USINT = 5;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UINT = 6;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UDINT = 7;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_REAL = 8;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_STRING = 9;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_ULINT = 10;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE_AND_TIME = 11;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME = 12;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE = 13;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LREAL = 14;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME_OF_DAY = 16;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BYTE = 17;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WORD = 18;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DWORD = 19;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LWORD = 20;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WSTRING = 21;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LINT = 23;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _RUNTIME_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _RUNTIME_
|
||||
#define _RUNTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define ERR_OK 0
|
||||
#define ERR_NOTIMPLEMENTED 9999
|
||||
#define ERR_FUB_ENABLE_FALSE 0xFFFE
|
||||
#define ERR_FUB_BUSY 0xFFFF
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
#define IEC_DATATYPE_BOOL 1
|
||||
#define IEC_DATATYPE_SINT 2
|
||||
#define IEC_DATATYPE_INT 3
|
||||
#define IEC_DATATYPE_DINT 4
|
||||
#define IEC_DATATYPE_USINT 5
|
||||
#define IEC_DATATYPE_UINT 6
|
||||
#define IEC_DATATYPE_UDINT 7
|
||||
#define IEC_DATATYPE_REAL 8
|
||||
#define IEC_DATATYPE_STRING 9
|
||||
#define IEC_DATATYPE_ULINT 10
|
||||
#define IEC_DATATYPE_DATE_AND_TIME 11
|
||||
#define IEC_DATATYPE_TIME 12
|
||||
#define IEC_DATATYPE_DATE 13
|
||||
#define IEC_DATATYPE_LREAL 14
|
||||
#define IEC_DATATYPE_TIME_OF_DAY 16
|
||||
#define IEC_DATATYPE_BYTE 17
|
||||
#define IEC_DATATYPE_WORD 18
|
||||
#define IEC_DATATYPE_DWORD 19
|
||||
#define IEC_DATATYPE_LWORD 20
|
||||
#define IEC_DATATYPE_WSTRING 21
|
||||
#define IEC_DATATYPE_LINT 23
|
||||
|
||||
#else
|
||||
_IEC_CONST unsigned short ERR_OK = 0U;
|
||||
_IEC_CONST unsigned short ERR_NOTIMPLEMENTED = 9999U;
|
||||
_IEC_CONST unsigned short ERR_FUB_ENABLE_FALSE = 0xFFFEU;
|
||||
_IEC_CONST unsigned short ERR_FUB_BUSY = 0xFFFFU;
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BOOL = 1;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_SINT = 2;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_INT = 3;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DINT = 4;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_USINT = 5;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UINT = 6;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UDINT = 7;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_REAL = 8;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_STRING = 9;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_ULINT = 10;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE_AND_TIME = 11;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME = 12;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE = 13;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LREAL = 14;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME_OF_DAY = 16;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BYTE = 17;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WORD = 18;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DWORD = 19;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LWORD = 20;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WSTRING = 21;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LINT = 23;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _RUNTIME_ */
|
||||
|
||||
|
||||
@@ -1,80 +1,80 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _RUNTIME_
|
||||
#define _RUNTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define ERR_OK 0
|
||||
#define ERR_NOTIMPLEMENTED 9999
|
||||
#define ERR_FUB_ENABLE_FALSE 0xFFFE
|
||||
#define ERR_FUB_BUSY 0xFFFF
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
#define IEC_DATATYPE_BOOL 1
|
||||
#define IEC_DATATYPE_SINT 2
|
||||
#define IEC_DATATYPE_INT 3
|
||||
#define IEC_DATATYPE_DINT 4
|
||||
#define IEC_DATATYPE_USINT 5
|
||||
#define IEC_DATATYPE_UINT 6
|
||||
#define IEC_DATATYPE_UDINT 7
|
||||
#define IEC_DATATYPE_REAL 8
|
||||
#define IEC_DATATYPE_STRING 9
|
||||
#define IEC_DATATYPE_ULINT 10
|
||||
#define IEC_DATATYPE_DATE_AND_TIME 11
|
||||
#define IEC_DATATYPE_TIME 12
|
||||
#define IEC_DATATYPE_DATE 13
|
||||
#define IEC_DATATYPE_LREAL 14
|
||||
#define IEC_DATATYPE_TIME_OF_DAY 16
|
||||
#define IEC_DATATYPE_BYTE 17
|
||||
#define IEC_DATATYPE_WORD 18
|
||||
#define IEC_DATATYPE_DWORD 19
|
||||
#define IEC_DATATYPE_LWORD 20
|
||||
#define IEC_DATATYPE_WSTRING 21
|
||||
#define IEC_DATATYPE_LINT 23
|
||||
|
||||
#else
|
||||
_IEC_CONST unsigned short ERR_OK = 0U;
|
||||
_IEC_CONST unsigned short ERR_NOTIMPLEMENTED = 9999U;
|
||||
_IEC_CONST unsigned short ERR_FUB_ENABLE_FALSE = 0xFFFEU;
|
||||
_IEC_CONST unsigned short ERR_FUB_BUSY = 0xFFFFU;
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BOOL = 1;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_SINT = 2;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_INT = 3;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DINT = 4;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_USINT = 5;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UINT = 6;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UDINT = 7;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_REAL = 8;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_STRING = 9;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_ULINT = 10;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE_AND_TIME = 11;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME = 12;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE = 13;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LREAL = 14;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME_OF_DAY = 16;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BYTE = 17;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WORD = 18;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DWORD = 19;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LWORD = 20;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WSTRING = 21;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LINT = 23;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _RUNTIME_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _RUNTIME_
|
||||
#define _RUNTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define ERR_OK 0
|
||||
#define ERR_NOTIMPLEMENTED 9999
|
||||
#define ERR_FUB_ENABLE_FALSE 0xFFFE
|
||||
#define ERR_FUB_BUSY 0xFFFF
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
#define IEC_DATATYPE_BOOL 1
|
||||
#define IEC_DATATYPE_SINT 2
|
||||
#define IEC_DATATYPE_INT 3
|
||||
#define IEC_DATATYPE_DINT 4
|
||||
#define IEC_DATATYPE_USINT 5
|
||||
#define IEC_DATATYPE_UINT 6
|
||||
#define IEC_DATATYPE_UDINT 7
|
||||
#define IEC_DATATYPE_REAL 8
|
||||
#define IEC_DATATYPE_STRING 9
|
||||
#define IEC_DATATYPE_ULINT 10
|
||||
#define IEC_DATATYPE_DATE_AND_TIME 11
|
||||
#define IEC_DATATYPE_TIME 12
|
||||
#define IEC_DATATYPE_DATE 13
|
||||
#define IEC_DATATYPE_LREAL 14
|
||||
#define IEC_DATATYPE_TIME_OF_DAY 16
|
||||
#define IEC_DATATYPE_BYTE 17
|
||||
#define IEC_DATATYPE_WORD 18
|
||||
#define IEC_DATATYPE_DWORD 19
|
||||
#define IEC_DATATYPE_LWORD 20
|
||||
#define IEC_DATATYPE_WSTRING 21
|
||||
#define IEC_DATATYPE_LINT 23
|
||||
|
||||
#else
|
||||
_IEC_CONST unsigned short ERR_OK = 0U;
|
||||
_IEC_CONST unsigned short ERR_NOTIMPLEMENTED = 9999U;
|
||||
_IEC_CONST unsigned short ERR_FUB_ENABLE_FALSE = 0xFFFEU;
|
||||
_IEC_CONST unsigned short ERR_FUB_BUSY = 0xFFFFU;
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BOOL = 1;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_SINT = 2;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_INT = 3;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DINT = 4;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_USINT = 5;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UINT = 6;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UDINT = 7;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_REAL = 8;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_STRING = 9;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_ULINT = 10;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE_AND_TIME = 11;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME = 12;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE = 13;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LREAL = 14;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME_OF_DAY = 16;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BYTE = 17;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WORD = 18;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DWORD = 19;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LWORD = 20;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WSTRING = 21;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LINT = 23;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _RUNTIME_ */
|
||||
|
||||
|
||||
@@ -1,80 +1,80 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _RUNTIME_
|
||||
#define _RUNTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define ERR_OK 0
|
||||
#define ERR_NOTIMPLEMENTED 9999
|
||||
#define ERR_FUB_ENABLE_FALSE 0xFFFE
|
||||
#define ERR_FUB_BUSY 0xFFFF
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
#define IEC_DATATYPE_BOOL 1
|
||||
#define IEC_DATATYPE_SINT 2
|
||||
#define IEC_DATATYPE_INT 3
|
||||
#define IEC_DATATYPE_DINT 4
|
||||
#define IEC_DATATYPE_USINT 5
|
||||
#define IEC_DATATYPE_UINT 6
|
||||
#define IEC_DATATYPE_UDINT 7
|
||||
#define IEC_DATATYPE_REAL 8
|
||||
#define IEC_DATATYPE_STRING 9
|
||||
#define IEC_DATATYPE_ULINT 10
|
||||
#define IEC_DATATYPE_DATE_AND_TIME 11
|
||||
#define IEC_DATATYPE_TIME 12
|
||||
#define IEC_DATATYPE_DATE 13
|
||||
#define IEC_DATATYPE_LREAL 14
|
||||
#define IEC_DATATYPE_TIME_OF_DAY 16
|
||||
#define IEC_DATATYPE_BYTE 17
|
||||
#define IEC_DATATYPE_WORD 18
|
||||
#define IEC_DATATYPE_DWORD 19
|
||||
#define IEC_DATATYPE_LWORD 20
|
||||
#define IEC_DATATYPE_WSTRING 21
|
||||
#define IEC_DATATYPE_LINT 23
|
||||
|
||||
#else
|
||||
_IEC_CONST unsigned short ERR_OK = 0U;
|
||||
_IEC_CONST unsigned short ERR_NOTIMPLEMENTED = 9999U;
|
||||
_IEC_CONST unsigned short ERR_FUB_ENABLE_FALSE = 0xFFFEU;
|
||||
_IEC_CONST unsigned short ERR_FUB_BUSY = 0xFFFFU;
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BOOL = 1;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_SINT = 2;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_INT = 3;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DINT = 4;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_USINT = 5;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UINT = 6;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UDINT = 7;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_REAL = 8;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_STRING = 9;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_ULINT = 10;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE_AND_TIME = 11;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME = 12;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE = 13;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LREAL = 14;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME_OF_DAY = 16;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BYTE = 17;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WORD = 18;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DWORD = 19;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LWORD = 20;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WSTRING = 21;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LINT = 23;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _RUNTIME_ */
|
||||
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _RUNTIME_
|
||||
#define _RUNTIME_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define ERR_OK 0
|
||||
#define ERR_NOTIMPLEMENTED 9999
|
||||
#define ERR_FUB_ENABLE_FALSE 0xFFFE
|
||||
#define ERR_FUB_BUSY 0xFFFF
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
#define IEC_DATATYPE_BOOL 1
|
||||
#define IEC_DATATYPE_SINT 2
|
||||
#define IEC_DATATYPE_INT 3
|
||||
#define IEC_DATATYPE_DINT 4
|
||||
#define IEC_DATATYPE_USINT 5
|
||||
#define IEC_DATATYPE_UINT 6
|
||||
#define IEC_DATATYPE_UDINT 7
|
||||
#define IEC_DATATYPE_REAL 8
|
||||
#define IEC_DATATYPE_STRING 9
|
||||
#define IEC_DATATYPE_ULINT 10
|
||||
#define IEC_DATATYPE_DATE_AND_TIME 11
|
||||
#define IEC_DATATYPE_TIME 12
|
||||
#define IEC_DATATYPE_DATE 13
|
||||
#define IEC_DATATYPE_LREAL 14
|
||||
#define IEC_DATATYPE_TIME_OF_DAY 16
|
||||
#define IEC_DATATYPE_BYTE 17
|
||||
#define IEC_DATATYPE_WORD 18
|
||||
#define IEC_DATATYPE_DWORD 19
|
||||
#define IEC_DATATYPE_LWORD 20
|
||||
#define IEC_DATATYPE_WSTRING 21
|
||||
#define IEC_DATATYPE_LINT 23
|
||||
|
||||
#else
|
||||
_IEC_CONST unsigned short ERR_OK = 0U;
|
||||
_IEC_CONST unsigned short ERR_NOTIMPLEMENTED = 9999U;
|
||||
_IEC_CONST unsigned short ERR_FUB_ENABLE_FALSE = 0xFFFEU;
|
||||
_IEC_CONST unsigned short ERR_FUB_BUSY = 0xFFFFU;
|
||||
|
||||
/* IEC 61131-3 Datentypen */
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BOOL = 1;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_SINT = 2;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_INT = 3;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DINT = 4;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_USINT = 5;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UINT = 6;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_UDINT = 7;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_REAL = 8;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_STRING = 9;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_ULINT = 10;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE_AND_TIME = 11;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME = 12;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DATE = 13;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LREAL = 14;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_TIME_OF_DAY = 16;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_BYTE = 17;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WORD = 18;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_DWORD = 19;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LWORD = 20;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_WSTRING = 21;
|
||||
_IEC_CONST unsigned short IEC_DATATYPE_LINT = 23;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _RUNTIME_ */
|
||||
|
||||
|
||||
@@ -1,189 +1,189 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: runtime
|
||||
* File: runtime.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library runtime
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK r_trig (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK f_trig (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK rf_trig (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION GetTime : TIME (*for internal use only - do not use this function in user programs*)
|
||||
END_FUNCTION
|
||||
FUNCTION_BLOCK SFCActionControl (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
N :BOOL;
|
||||
R0 :BOOL;
|
||||
S0 :BOOL;
|
||||
L :BOOL;
|
||||
D :BOOL;
|
||||
P :BOOL;
|
||||
SD :BOOL;
|
||||
DS :BOOL;
|
||||
SL :BOOL;
|
||||
T :TIME;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
S_FF_SET :USINT;
|
||||
S_FF_R1 :USINT;
|
||||
S_FF_Q :USINT;
|
||||
dummy1 :USINT;
|
||||
L_TMR_PT :TIME;
|
||||
L_TMR_ET :TIME;
|
||||
L_TMR_STAR :TIME;
|
||||
L_TMR_IN :USINT;
|
||||
L_TMR_Q :USINT;
|
||||
L_TMR_M :USINT;
|
||||
dummy2 :USINT;
|
||||
D_TMR_PT :TIME;
|
||||
D_TMR_ET :TIME;
|
||||
D_TMR_STAR :TIME;
|
||||
D_TMR_IN :USINT;
|
||||
D_TMR_Q :USINT;
|
||||
D_TMR_M :USINT;
|
||||
dummy3 :USINT;
|
||||
P_TRIG_CLK :USINT;
|
||||
P_TRIG_Q :USINT;
|
||||
P_TRIG_M :USINT;
|
||||
dummy4 :USINT;
|
||||
SD_TMR_PT :TIME;
|
||||
SD_TMR_ET :TIME;
|
||||
SD_TMR_STA :TIME;
|
||||
SD_TMR_IN :USINT;
|
||||
SD_TMR_Q :USINT;
|
||||
SD_TMR_M :USINT;
|
||||
dummy5 :USINT;
|
||||
SD_FF_SET :USINT;
|
||||
SD_FF_R1 :USINT;
|
||||
SD_FF_Q :USINT;
|
||||
DS_FF_SET :USINT;
|
||||
DS_FF_R1 :USINT;
|
||||
DS_FF_Q :USINT;
|
||||
DS_TMR_PT :TIME;
|
||||
DS_TMR_ET :TIME;
|
||||
DS_TMR_STA :TIME;
|
||||
DS_TMR_IN :USINT;
|
||||
DS_TMR_Q :USINT;
|
||||
DS_TMR_M :USINT;
|
||||
dummy6 :USINT;
|
||||
SL_FF_SET :USINT;
|
||||
SL_FF_R1 :USINT;
|
||||
SL_FF_Q :USINT;
|
||||
dummy7 :USINT;
|
||||
SL_TMR_PT :TIME;
|
||||
SL_TMR_ET :TIME;
|
||||
SL_TMR_STA :TIME;
|
||||
SL_TMR_IN :USINT;
|
||||
SL_TMR_Q :USINT;
|
||||
SL_TMR_M :USINT;
|
||||
dummy8 :USINT;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK SFCAC2 (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
N :BOOL;
|
||||
R0 :BOOL;
|
||||
S0 :BOOL;
|
||||
L :BOOL;
|
||||
D :BOOL;
|
||||
P :BOOL;
|
||||
P1 :BOOL;
|
||||
P0 :BOOL;
|
||||
SD :BOOL;
|
||||
DS :BOOL;
|
||||
SL :BOOL;
|
||||
T :TIME;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
A :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
S_FF_SET :USINT;
|
||||
S_FF_R1 :USINT;
|
||||
S_FF_Q :USINT;
|
||||
L_TMR_PT :TIME;
|
||||
L_TMR_ET :TIME;
|
||||
L_TMR_STAR :TIME;
|
||||
L_TMR_IN :USINT;
|
||||
L_TMR_Q :USINT;
|
||||
L_TMR_M :USINT;
|
||||
D_TMR_PT :TIME;
|
||||
D_TMR_ET :TIME;
|
||||
D_TMR_STAR :TIME;
|
||||
D_TMR_IN :USINT;
|
||||
D_TMR_Q :USINT;
|
||||
D_TMR_M :USINT;
|
||||
SD_TMR_PT :TIME;
|
||||
SD_TMR_ET :TIME;
|
||||
SD_TMR_STA :TIME;
|
||||
SD_TMR_IN :USINT;
|
||||
SD_TMR_Q :USINT;
|
||||
SD_TMR_M :USINT;
|
||||
SD_FF_SET :USINT;
|
||||
SD_FF_R1 :USINT;
|
||||
SD_FF_Q1 :USINT;
|
||||
DS_FF_SET :USINT;
|
||||
DS_FF_R1 :USINT;
|
||||
DS_FF_Q1 :USINT;
|
||||
DS_TMR_PT :TIME;
|
||||
DS_TMR_ET :TIME;
|
||||
DS_TMR_STA :TIME;
|
||||
DS_TMR_IN :USINT;
|
||||
DS_TMR_Q :USINT;
|
||||
DS_TMR_M :USINT;
|
||||
SL_FF_SET :USINT;
|
||||
SL_FF_R1 :USINT;
|
||||
SL_FF_Q :USINT;
|
||||
SL_TMR_PT :TIME;
|
||||
SL_TMR_ET :TIME;
|
||||
SL_TMR_STA :TIME;
|
||||
SL_TMR_IN :USINT;
|
||||
SL_TMR_Q :USINT;
|
||||
SL_TMR_M :USINT;
|
||||
P_TRIG_Q :USINT;
|
||||
P_TRIG_M :USINT;
|
||||
Q_TRIG_Q :USINT;
|
||||
Q_TRIG_M :USINT;
|
||||
P1_TRIG_Q :USINT;
|
||||
P1_TRIG_M :USINT;
|
||||
P0_TRIG_Q :USINT;
|
||||
P0_TRIG_M :USINT;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: runtime
|
||||
* File: runtime.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library runtime
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK r_trig (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK f_trig (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK rf_trig (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION GetTime : TIME (*for internal use only - do not use this function in user programs*)
|
||||
END_FUNCTION
|
||||
FUNCTION_BLOCK SFCActionControl (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
N :BOOL;
|
||||
R0 :BOOL;
|
||||
S0 :BOOL;
|
||||
L :BOOL;
|
||||
D :BOOL;
|
||||
P :BOOL;
|
||||
SD :BOOL;
|
||||
DS :BOOL;
|
||||
SL :BOOL;
|
||||
T :TIME;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
S_FF_SET :USINT;
|
||||
S_FF_R1 :USINT;
|
||||
S_FF_Q :USINT;
|
||||
dummy1 :USINT;
|
||||
L_TMR_PT :TIME;
|
||||
L_TMR_ET :TIME;
|
||||
L_TMR_STAR :TIME;
|
||||
L_TMR_IN :USINT;
|
||||
L_TMR_Q :USINT;
|
||||
L_TMR_M :USINT;
|
||||
dummy2 :USINT;
|
||||
D_TMR_PT :TIME;
|
||||
D_TMR_ET :TIME;
|
||||
D_TMR_STAR :TIME;
|
||||
D_TMR_IN :USINT;
|
||||
D_TMR_Q :USINT;
|
||||
D_TMR_M :USINT;
|
||||
dummy3 :USINT;
|
||||
P_TRIG_CLK :USINT;
|
||||
P_TRIG_Q :USINT;
|
||||
P_TRIG_M :USINT;
|
||||
dummy4 :USINT;
|
||||
SD_TMR_PT :TIME;
|
||||
SD_TMR_ET :TIME;
|
||||
SD_TMR_STA :TIME;
|
||||
SD_TMR_IN :USINT;
|
||||
SD_TMR_Q :USINT;
|
||||
SD_TMR_M :USINT;
|
||||
dummy5 :USINT;
|
||||
SD_FF_SET :USINT;
|
||||
SD_FF_R1 :USINT;
|
||||
SD_FF_Q :USINT;
|
||||
DS_FF_SET :USINT;
|
||||
DS_FF_R1 :USINT;
|
||||
DS_FF_Q :USINT;
|
||||
DS_TMR_PT :TIME;
|
||||
DS_TMR_ET :TIME;
|
||||
DS_TMR_STA :TIME;
|
||||
DS_TMR_IN :USINT;
|
||||
DS_TMR_Q :USINT;
|
||||
DS_TMR_M :USINT;
|
||||
dummy6 :USINT;
|
||||
SL_FF_SET :USINT;
|
||||
SL_FF_R1 :USINT;
|
||||
SL_FF_Q :USINT;
|
||||
dummy7 :USINT;
|
||||
SL_TMR_PT :TIME;
|
||||
SL_TMR_ET :TIME;
|
||||
SL_TMR_STA :TIME;
|
||||
SL_TMR_IN :USINT;
|
||||
SL_TMR_Q :USINT;
|
||||
SL_TMR_M :USINT;
|
||||
dummy8 :USINT;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK SFCAC2 (*for internal use only - do not use this function in user programs*)
|
||||
VAR_INPUT
|
||||
N :BOOL;
|
||||
R0 :BOOL;
|
||||
S0 :BOOL;
|
||||
L :BOOL;
|
||||
D :BOOL;
|
||||
P :BOOL;
|
||||
P1 :BOOL;
|
||||
P0 :BOOL;
|
||||
SD :BOOL;
|
||||
DS :BOOL;
|
||||
SL :BOOL;
|
||||
T :TIME;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL;
|
||||
A :BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
S_FF_SET :USINT;
|
||||
S_FF_R1 :USINT;
|
||||
S_FF_Q :USINT;
|
||||
L_TMR_PT :TIME;
|
||||
L_TMR_ET :TIME;
|
||||
L_TMR_STAR :TIME;
|
||||
L_TMR_IN :USINT;
|
||||
L_TMR_Q :USINT;
|
||||
L_TMR_M :USINT;
|
||||
D_TMR_PT :TIME;
|
||||
D_TMR_ET :TIME;
|
||||
D_TMR_STAR :TIME;
|
||||
D_TMR_IN :USINT;
|
||||
D_TMR_Q :USINT;
|
||||
D_TMR_M :USINT;
|
||||
SD_TMR_PT :TIME;
|
||||
SD_TMR_ET :TIME;
|
||||
SD_TMR_STA :TIME;
|
||||
SD_TMR_IN :USINT;
|
||||
SD_TMR_Q :USINT;
|
||||
SD_TMR_M :USINT;
|
||||
SD_FF_SET :USINT;
|
||||
SD_FF_R1 :USINT;
|
||||
SD_FF_Q1 :USINT;
|
||||
DS_FF_SET :USINT;
|
||||
DS_FF_R1 :USINT;
|
||||
DS_FF_Q1 :USINT;
|
||||
DS_TMR_PT :TIME;
|
||||
DS_TMR_ET :TIME;
|
||||
DS_TMR_STA :TIME;
|
||||
DS_TMR_IN :USINT;
|
||||
DS_TMR_Q :USINT;
|
||||
DS_TMR_M :USINT;
|
||||
SL_FF_SET :USINT;
|
||||
SL_FF_R1 :USINT;
|
||||
SL_FF_Q :USINT;
|
||||
SL_TMR_PT :TIME;
|
||||
SL_TMR_ET :TIME;
|
||||
SL_TMR_STA :TIME;
|
||||
SL_TMR_IN :USINT;
|
||||
SL_TMR_Q :USINT;
|
||||
SL_TMR_M :USINT;
|
||||
P_TRIG_Q :USINT;
|
||||
P_TRIG_M :USINT;
|
||||
Q_TRIG_Q :USINT;
|
||||
Q_TRIG_M :USINT;
|
||||
P1_TRIG_Q :USINT;
|
||||
P1_TRIG_M :USINT;
|
||||
P0_TRIG_Q :USINT;
|
||||
P0_TRIG_M :USINT;
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
@@ -1,78 +1,78 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: runtime
|
||||
* File: runtime.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library runtime
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
SFCActionType : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
t : TIME ;
|
||||
_t : TIME ;
|
||||
AC : SFCActionControl;
|
||||
END_STRUCT;
|
||||
SFCActionType2 : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
AC : SFCAC2 ;
|
||||
END_STRUCT;
|
||||
SFCActionCType : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
AC : SFCActionControl ;
|
||||
END_STRUCT;
|
||||
SFCActionCType2 : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
AC : SFCAC2 ;
|
||||
END_STRUCT;
|
||||
SFCStepType : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
t : TIME ;
|
||||
_x : BOOL ;
|
||||
_t : TIME ;
|
||||
END_STRUCT;
|
||||
SFCStepCType : STRUCT (*internal use*)
|
||||
t : TIME ;
|
||||
_t : TIME ;
|
||||
inactive_actions : UDINT ;
|
||||
_inactive_actions : UDINT ;
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
error : BOOL ;
|
||||
END_STRUCT;
|
||||
SFCSimpleStepCType : STRUCT (*internal use*)
|
||||
t : TIME ;
|
||||
_t : TIME ;
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
error : BOOL ;
|
||||
END_STRUCT;
|
||||
SFCTransitionCType : STRUCT (*internal use*)
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
END_STRUCT;
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: runtime
|
||||
* File: runtime.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library runtime
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
SFCActionType : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
t : TIME ;
|
||||
_t : TIME ;
|
||||
AC : SFCActionControl;
|
||||
END_STRUCT;
|
||||
SFCActionType2 : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
AC : SFCAC2 ;
|
||||
END_STRUCT;
|
||||
SFCActionCType : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
AC : SFCActionControl ;
|
||||
END_STRUCT;
|
||||
SFCActionCType2 : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
AC : SFCAC2 ;
|
||||
END_STRUCT;
|
||||
SFCStepType : STRUCT (*internal use*)
|
||||
x : BOOL ;
|
||||
t : TIME ;
|
||||
_x : BOOL ;
|
||||
_t : TIME ;
|
||||
END_STRUCT;
|
||||
SFCStepCType : STRUCT (*internal use*)
|
||||
t : TIME ;
|
||||
_t : TIME ;
|
||||
inactive_actions : UDINT ;
|
||||
_inactive_actions : UDINT ;
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
error : BOOL ;
|
||||
END_STRUCT;
|
||||
SFCSimpleStepCType : STRUCT (*internal use*)
|
||||
t : TIME ;
|
||||
_t : TIME ;
|
||||
x : BOOL ;
|
||||
_x : BOOL ;
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
error : BOOL ;
|
||||
END_STRUCT;
|
||||
SFCTransitionCType : STRUCT (*internal use*)
|
||||
force : BOOL ;
|
||||
_force : BOOL ;
|
||||
active : BOOL ;
|
||||
_active : BOOL ;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
@@ -1,42 +1,42 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: runtime
|
||||
* File: runtime.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library runtime
|
||||
********************************************************************)
|
||||
|
||||
(*Common Functionblock Status*)
|
||||
VAR CONSTANT
|
||||
ERR_OK : UINT := 0; (*no error*)
|
||||
ERR_NOTIMPLEMENTED : UINT := 9999; (*function or function block not implemented*)
|
||||
ERR_FUB_ENABLE_FALSE : UINT := 16#FFFE; (*function block parameter "enable" is FALSE*)
|
||||
ERR_FUB_BUSY : UINT := 16#FFFF; (*function block still working*)
|
||||
END_VAR
|
||||
|
||||
(*IEC 61131-3 Datatypes*)
|
||||
VAR CONSTANT
|
||||
IEC_DATATYPE_BOOL : UINT := 1; (*8 Bit containing a boolean value FALSE=0 or TRUE=1*)
|
||||
IEC_DATATYPE_SINT : UINT := 2; (*8 Bit signed integer*)
|
||||
IEC_DATATYPE_INT : UINT := 3; (*16 Bit signed integer*)
|
||||
IEC_DATATYPE_DINT : UINT := 4; (*32 Bit signed integer*)
|
||||
IEC_DATATYPE_USINT : UINT := 5; (*8 Bit unsigned integer*)
|
||||
IEC_DATATYPE_UINT : UINT := 6; (*16 Bit unsigned integer*)
|
||||
IEC_DATATYPE_UDINT : UINT := 7; (*32 Bit unsigned integer*)
|
||||
IEC_DATATYPE_REAL : UINT := 8; (*32 Bit floating point number*)
|
||||
IEC_DATATYPE_STRING : UINT := 9; (*Variable-length single-byte character string*)
|
||||
IEC_DATATYPE_ULINT : UINT := 10; (*64 Bit unsigned integer*)
|
||||
IEC_DATATYPE_DATE_AND_TIME : UINT := 11; (*32 Bit of Date in Seconds since 01.01.1970 00:00:00*)
|
||||
IEC_DATATYPE_TIME : UINT := 12; (*32 Bit of Time in ms*)
|
||||
IEC_DATATYPE_DATE : UINT := 13; (*32 Bit of Date (only)*)
|
||||
IEC_DATATYPE_LREAL : UINT := 14; (*64 Bit floating point number*)
|
||||
IEC_DATATYPE_TIME_OF_DAY: UINT := 16; (*32 Bit Time of day (only)*)
|
||||
IEC_DATATYPE_BYTE : UINT := 17; (*Bit string of length 8*)
|
||||
IEC_DATATYPE_WORD : UINT := 18; (*Bit string of length 16*)
|
||||
IEC_DATATYPE_DWORD : UINT := 19; (*Bit string of length 32*)
|
||||
IEC_DATATYPE_LWORD : UINT := 20; (*Bit string of length 64*)
|
||||
IEC_DATATYPE_WSTRING : UINT := 21; (*Variable-length double-byte character string*)
|
||||
IEC_DATATYPE_LINT : UINT := 23; (*64 Bit signed integer*)
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: runtime
|
||||
* File: runtime.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library runtime
|
||||
********************************************************************)
|
||||
|
||||
(*Common Functionblock Status*)
|
||||
VAR CONSTANT
|
||||
ERR_OK : UINT := 0; (*no error*)
|
||||
ERR_NOTIMPLEMENTED : UINT := 9999; (*function or function block not implemented*)
|
||||
ERR_FUB_ENABLE_FALSE : UINT := 16#FFFE; (*function block parameter "enable" is FALSE*)
|
||||
ERR_FUB_BUSY : UINT := 16#FFFF; (*function block still working*)
|
||||
END_VAR
|
||||
|
||||
(*IEC 61131-3 Datatypes*)
|
||||
VAR CONSTANT
|
||||
IEC_DATATYPE_BOOL : UINT := 1; (*8 Bit containing a boolean value FALSE=0 or TRUE=1*)
|
||||
IEC_DATATYPE_SINT : UINT := 2; (*8 Bit signed integer*)
|
||||
IEC_DATATYPE_INT : UINT := 3; (*16 Bit signed integer*)
|
||||
IEC_DATATYPE_DINT : UINT := 4; (*32 Bit signed integer*)
|
||||
IEC_DATATYPE_USINT : UINT := 5; (*8 Bit unsigned integer*)
|
||||
IEC_DATATYPE_UINT : UINT := 6; (*16 Bit unsigned integer*)
|
||||
IEC_DATATYPE_UDINT : UINT := 7; (*32 Bit unsigned integer*)
|
||||
IEC_DATATYPE_REAL : UINT := 8; (*32 Bit floating point number*)
|
||||
IEC_DATATYPE_STRING : UINT := 9; (*Variable-length single-byte character string*)
|
||||
IEC_DATATYPE_ULINT : UINT := 10; (*64 Bit unsigned integer*)
|
||||
IEC_DATATYPE_DATE_AND_TIME : UINT := 11; (*32 Bit of Date in Seconds since 01.01.1970 00:00:00*)
|
||||
IEC_DATATYPE_TIME : UINT := 12; (*32 Bit of Time in ms*)
|
||||
IEC_DATATYPE_DATE : UINT := 13; (*32 Bit of Date (only)*)
|
||||
IEC_DATATYPE_LREAL : UINT := 14; (*64 Bit floating point number*)
|
||||
IEC_DATATYPE_TIME_OF_DAY: UINT := 16; (*32 Bit Time of day (only)*)
|
||||
IEC_DATATYPE_BYTE : UINT := 17; (*Bit string of length 8*)
|
||||
IEC_DATATYPE_WORD : UINT := 18; (*Bit string of length 16*)
|
||||
IEC_DATATYPE_DWORD : UINT := 19; (*Bit string of length 32*)
|
||||
IEC_DATATYPE_LWORD : UINT := 20; (*Bit string of length 64*)
|
||||
IEC_DATATYPE_WSTRING : UINT := 21; (*Variable-length double-byte character string*)
|
||||
IEC_DATATYPE_LINT : UINT := 23; (*64 Bit signed integer*)
|
||||
END_VAR
|
||||
@@ -1,262 +1,262 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef STANDARD_H_
|
||||
#define STANDARD_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
#define TP_10mstyp TP_10ms_typ
|
||||
#define TOF_10mstyp TOF_10ms_typ
|
||||
#define TON_10mstyp TON_10ms_typ
|
||||
#define TPtyp TP_typ
|
||||
#define TOFtyp TOF_typ
|
||||
#define TONtyp TON_typ
|
||||
#define SEMAtyp SEMA_typ
|
||||
#define RStyp RS_typ
|
||||
#define SRtyp SR_typ
|
||||
#define R_TRIGtyp R_TRIG_typ
|
||||
#define F_TRIGtyp F_TRIG_typ
|
||||
#define CTUtyp CTU_typ
|
||||
#define CTDtyp CTD_typ
|
||||
#define CTUDtyp CTUD_typ
|
||||
#define RF_TRIGtyp RF_TRIG_typ
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
typedef struct TP_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_10ms_typ;
|
||||
|
||||
typedef struct TOF_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_10ms_typ;
|
||||
|
||||
typedef struct TON_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_10ms_typ;
|
||||
|
||||
typedef struct TP
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_typ;
|
||||
|
||||
typedef struct TOF
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_typ;
|
||||
|
||||
typedef struct TON
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_typ;
|
||||
|
||||
typedef struct SEMA
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLAIM;
|
||||
plcbit RELEASE;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit BUSY;
|
||||
/* VAR (digital) */
|
||||
plcbit X;
|
||||
} SEMA_typ;
|
||||
|
||||
typedef struct RS
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET;
|
||||
plcbit RESET1;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} RS_typ;
|
||||
|
||||
typedef struct SR
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET1;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} SR_typ;
|
||||
|
||||
typedef struct R_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} R_TRIG_typ;
|
||||
|
||||
typedef struct F_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} F_TRIG_typ;
|
||||
|
||||
typedef struct CTU
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTU_typ;
|
||||
|
||||
typedef struct CTD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CD;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTD_typ;
|
||||
|
||||
typedef struct CTUD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
signed short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
signed short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit CD;
|
||||
plcbit RESET;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit QU;
|
||||
plcbit QD;
|
||||
/* VAR (digital) */
|
||||
plcbit MU;
|
||||
plcbit MD;
|
||||
} CTUD_typ;
|
||||
|
||||
typedef struct RF_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} RF_TRIG_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void TP_10ms(TP_10ms_typ* inst);
|
||||
void TOF_10ms(TOF_10ms_typ* inst);
|
||||
void TON_10ms(TON_10ms_typ* inst);
|
||||
void TP(TP_typ* inst);
|
||||
void TOF(TOF_typ* inst);
|
||||
void TON(TON_typ* inst);
|
||||
void SEMA(SEMA_typ* inst);
|
||||
void RS(RS_typ* inst);
|
||||
void SR(SR_typ* inst);
|
||||
void R_TRIG(R_TRIG_typ* inst);
|
||||
void F_TRIG(F_TRIG_typ* inst);
|
||||
void CTU(CTU_typ* inst);
|
||||
void CTD(CTD_typ* inst);
|
||||
void CTUD(CTUD_typ* inst);
|
||||
void RF_TRIG(RF_TRIG_typ* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* STANDARD_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef STANDARD_H_
|
||||
#define STANDARD_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
#define TP_10mstyp TP_10ms_typ
|
||||
#define TOF_10mstyp TOF_10ms_typ
|
||||
#define TON_10mstyp TON_10ms_typ
|
||||
#define TPtyp TP_typ
|
||||
#define TOFtyp TOF_typ
|
||||
#define TONtyp TON_typ
|
||||
#define SEMAtyp SEMA_typ
|
||||
#define RStyp RS_typ
|
||||
#define SRtyp SR_typ
|
||||
#define R_TRIGtyp R_TRIG_typ
|
||||
#define F_TRIGtyp F_TRIG_typ
|
||||
#define CTUtyp CTU_typ
|
||||
#define CTDtyp CTD_typ
|
||||
#define CTUDtyp CTUD_typ
|
||||
#define RF_TRIGtyp RF_TRIG_typ
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
typedef struct TP_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_10ms_typ;
|
||||
|
||||
typedef struct TOF_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_10ms_typ;
|
||||
|
||||
typedef struct TON_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_10ms_typ;
|
||||
|
||||
typedef struct TP
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_typ;
|
||||
|
||||
typedef struct TOF
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_typ;
|
||||
|
||||
typedef struct TON
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_typ;
|
||||
|
||||
typedef struct SEMA
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLAIM;
|
||||
plcbit RELEASE;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit BUSY;
|
||||
/* VAR (digital) */
|
||||
plcbit X;
|
||||
} SEMA_typ;
|
||||
|
||||
typedef struct RS
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET;
|
||||
plcbit RESET1;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} RS_typ;
|
||||
|
||||
typedef struct SR
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET1;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} SR_typ;
|
||||
|
||||
typedef struct R_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} R_TRIG_typ;
|
||||
|
||||
typedef struct F_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} F_TRIG_typ;
|
||||
|
||||
typedef struct CTU
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTU_typ;
|
||||
|
||||
typedef struct CTD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CD;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTD_typ;
|
||||
|
||||
typedef struct CTUD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
signed short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
signed short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit CD;
|
||||
plcbit RESET;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit QU;
|
||||
plcbit QD;
|
||||
/* VAR (digital) */
|
||||
plcbit MU;
|
||||
plcbit MD;
|
||||
} CTUD_typ;
|
||||
|
||||
typedef struct RF_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} RF_TRIG_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void TP_10ms(TP_10ms_typ* inst);
|
||||
void TOF_10ms(TOF_10ms_typ* inst);
|
||||
void TON_10ms(TON_10ms_typ* inst);
|
||||
void TP(TP_typ* inst);
|
||||
void TOF(TOF_typ* inst);
|
||||
void TON(TON_typ* inst);
|
||||
void SEMA(SEMA_typ* inst);
|
||||
void RS(RS_typ* inst);
|
||||
void SR(SR_typ* inst);
|
||||
void R_TRIG(R_TRIG_typ* inst);
|
||||
void F_TRIG(F_TRIG_typ* inst);
|
||||
void CTU(CTU_typ* inst);
|
||||
void CTD(CTD_typ* inst);
|
||||
void CTUD(CTUD_typ* inst);
|
||||
void RF_TRIG(RF_TRIG_typ* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* STANDARD_H_ */
|
||||
|
||||
|
||||
@@ -1,262 +1,262 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef STANDARD_H_
|
||||
#define STANDARD_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
#define TP_10mstyp TP_10ms_typ
|
||||
#define TOF_10mstyp TOF_10ms_typ
|
||||
#define TON_10mstyp TON_10ms_typ
|
||||
#define TPtyp TP_typ
|
||||
#define TOFtyp TOF_typ
|
||||
#define TONtyp TON_typ
|
||||
#define SEMAtyp SEMA_typ
|
||||
#define RStyp RS_typ
|
||||
#define SRtyp SR_typ
|
||||
#define R_TRIGtyp R_TRIG_typ
|
||||
#define F_TRIGtyp F_TRIG_typ
|
||||
#define CTUtyp CTU_typ
|
||||
#define CTDtyp CTD_typ
|
||||
#define CTUDtyp CTUD_typ
|
||||
#define RF_TRIGtyp RF_TRIG_typ
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
typedef struct TP_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_10ms_typ;
|
||||
|
||||
typedef struct TOF_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_10ms_typ;
|
||||
|
||||
typedef struct TON_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_10ms_typ;
|
||||
|
||||
typedef struct TP
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_typ;
|
||||
|
||||
typedef struct TOF
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_typ;
|
||||
|
||||
typedef struct TON
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_typ;
|
||||
|
||||
typedef struct SEMA
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLAIM;
|
||||
plcbit RELEASE;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit BUSY;
|
||||
/* VAR (digital) */
|
||||
plcbit X;
|
||||
} SEMA_typ;
|
||||
|
||||
typedef struct RS
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET;
|
||||
plcbit RESET1;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} RS_typ;
|
||||
|
||||
typedef struct SR
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET1;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} SR_typ;
|
||||
|
||||
typedef struct R_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} R_TRIG_typ;
|
||||
|
||||
typedef struct F_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} F_TRIG_typ;
|
||||
|
||||
typedef struct CTU
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTU_typ;
|
||||
|
||||
typedef struct CTD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CD;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTD_typ;
|
||||
|
||||
typedef struct CTUD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
signed short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
signed short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit CD;
|
||||
plcbit RESET;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit QU;
|
||||
plcbit QD;
|
||||
/* VAR (digital) */
|
||||
plcbit MU;
|
||||
plcbit MD;
|
||||
} CTUD_typ;
|
||||
|
||||
typedef struct RF_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} RF_TRIG_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void TP_10ms(TP_10ms_typ* inst);
|
||||
void TOF_10ms(TOF_10ms_typ* inst);
|
||||
void TON_10ms(TON_10ms_typ* inst);
|
||||
void TP(TP_typ* inst);
|
||||
void TOF(TOF_typ* inst);
|
||||
void TON(TON_typ* inst);
|
||||
void SEMA(SEMA_typ* inst);
|
||||
void RS(RS_typ* inst);
|
||||
void SR(SR_typ* inst);
|
||||
void R_TRIG(R_TRIG_typ* inst);
|
||||
void F_TRIG(F_TRIG_typ* inst);
|
||||
void CTU(CTU_typ* inst);
|
||||
void CTD(CTD_typ* inst);
|
||||
void CTUD(CTUD_typ* inst);
|
||||
void RF_TRIG(RF_TRIG_typ* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* STANDARD_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef STANDARD_H_
|
||||
#define STANDARD_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
#define TP_10mstyp TP_10ms_typ
|
||||
#define TOF_10mstyp TOF_10ms_typ
|
||||
#define TON_10mstyp TON_10ms_typ
|
||||
#define TPtyp TP_typ
|
||||
#define TOFtyp TOF_typ
|
||||
#define TONtyp TON_typ
|
||||
#define SEMAtyp SEMA_typ
|
||||
#define RStyp RS_typ
|
||||
#define SRtyp SR_typ
|
||||
#define R_TRIGtyp R_TRIG_typ
|
||||
#define F_TRIGtyp F_TRIG_typ
|
||||
#define CTUtyp CTU_typ
|
||||
#define CTDtyp CTD_typ
|
||||
#define CTUDtyp CTUD_typ
|
||||
#define RF_TRIGtyp RF_TRIG_typ
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
typedef struct TP_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_10ms_typ;
|
||||
|
||||
typedef struct TOF_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_10ms_typ;
|
||||
|
||||
typedef struct TON_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_10ms_typ;
|
||||
|
||||
typedef struct TP
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_typ;
|
||||
|
||||
typedef struct TOF
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_typ;
|
||||
|
||||
typedef struct TON
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_typ;
|
||||
|
||||
typedef struct SEMA
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLAIM;
|
||||
plcbit RELEASE;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit BUSY;
|
||||
/* VAR (digital) */
|
||||
plcbit X;
|
||||
} SEMA_typ;
|
||||
|
||||
typedef struct RS
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET;
|
||||
plcbit RESET1;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} RS_typ;
|
||||
|
||||
typedef struct SR
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET1;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} SR_typ;
|
||||
|
||||
typedef struct R_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} R_TRIG_typ;
|
||||
|
||||
typedef struct F_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} F_TRIG_typ;
|
||||
|
||||
typedef struct CTU
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTU_typ;
|
||||
|
||||
typedef struct CTD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CD;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTD_typ;
|
||||
|
||||
typedef struct CTUD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
signed short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
signed short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit CD;
|
||||
plcbit RESET;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit QU;
|
||||
plcbit QD;
|
||||
/* VAR (digital) */
|
||||
plcbit MU;
|
||||
plcbit MD;
|
||||
} CTUD_typ;
|
||||
|
||||
typedef struct RF_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} RF_TRIG_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void TP_10ms(TP_10ms_typ* inst);
|
||||
void TOF_10ms(TOF_10ms_typ* inst);
|
||||
void TON_10ms(TON_10ms_typ* inst);
|
||||
void TP(TP_typ* inst);
|
||||
void TOF(TOF_typ* inst);
|
||||
void TON(TON_typ* inst);
|
||||
void SEMA(SEMA_typ* inst);
|
||||
void RS(RS_typ* inst);
|
||||
void SR(SR_typ* inst);
|
||||
void R_TRIG(R_TRIG_typ* inst);
|
||||
void F_TRIG(F_TRIG_typ* inst);
|
||||
void CTU(CTU_typ* inst);
|
||||
void CTD(CTD_typ* inst);
|
||||
void CTUD(CTUD_typ* inst);
|
||||
void RF_TRIG(RF_TRIG_typ* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* STANDARD_H_ */
|
||||
|
||||
|
||||
@@ -1,262 +1,262 @@
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef STANDARD_H_
|
||||
#define STANDARD_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
#define TP_10mstyp TP_10ms_typ
|
||||
#define TOF_10mstyp TOF_10ms_typ
|
||||
#define TON_10mstyp TON_10ms_typ
|
||||
#define TPtyp TP_typ
|
||||
#define TOFtyp TOF_typ
|
||||
#define TONtyp TON_typ
|
||||
#define SEMAtyp SEMA_typ
|
||||
#define RStyp RS_typ
|
||||
#define SRtyp SR_typ
|
||||
#define R_TRIGtyp R_TRIG_typ
|
||||
#define F_TRIGtyp F_TRIG_typ
|
||||
#define CTUtyp CTU_typ
|
||||
#define CTDtyp CTD_typ
|
||||
#define CTUDtyp CTUD_typ
|
||||
#define RF_TRIGtyp RF_TRIG_typ
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
typedef struct TP_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_10ms_typ;
|
||||
|
||||
typedef struct TOF_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_10ms_typ;
|
||||
|
||||
typedef struct TON_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_10ms_typ;
|
||||
|
||||
typedef struct TP
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_typ;
|
||||
|
||||
typedef struct TOF
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_typ;
|
||||
|
||||
typedef struct TON
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_typ;
|
||||
|
||||
typedef struct SEMA
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLAIM;
|
||||
plcbit RELEASE;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit BUSY;
|
||||
/* VAR (digital) */
|
||||
plcbit X;
|
||||
} SEMA_typ;
|
||||
|
||||
typedef struct RS
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET;
|
||||
plcbit RESET1;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} RS_typ;
|
||||
|
||||
typedef struct SR
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET1;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} SR_typ;
|
||||
|
||||
typedef struct R_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} R_TRIG_typ;
|
||||
|
||||
typedef struct F_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} F_TRIG_typ;
|
||||
|
||||
typedef struct CTU
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTU_typ;
|
||||
|
||||
typedef struct CTD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CD;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTD_typ;
|
||||
|
||||
typedef struct CTUD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
signed short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
signed short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit CD;
|
||||
plcbit RESET;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit QU;
|
||||
plcbit QD;
|
||||
/* VAR (digital) */
|
||||
plcbit MU;
|
||||
plcbit MD;
|
||||
} CTUD_typ;
|
||||
|
||||
typedef struct RF_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} RF_TRIG_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void TP_10ms(TP_10ms_typ* inst);
|
||||
void TOF_10ms(TOF_10ms_typ* inst);
|
||||
void TON_10ms(TON_10ms_typ* inst);
|
||||
void TP(TP_typ* inst);
|
||||
void TOF(TOF_typ* inst);
|
||||
void TON(TON_typ* inst);
|
||||
void SEMA(SEMA_typ* inst);
|
||||
void RS(RS_typ* inst);
|
||||
void SR(SR_typ* inst);
|
||||
void R_TRIG(R_TRIG_typ* inst);
|
||||
void F_TRIG(F_TRIG_typ* inst);
|
||||
void CTU(CTU_typ* inst);
|
||||
void CTD(CTD_typ* inst);
|
||||
void CTUD(CTUD_typ* inst);
|
||||
void RF_TRIG(RF_TRIG_typ* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* STANDARD_H_ */
|
||||
|
||||
/* Automation Studio Generated Header File, Format Version 1.00 */
|
||||
/* do not change */
|
||||
#ifndef STANDARD_H_
|
||||
#define STANDARD_H_
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#include <bur/plc.h>
|
||||
|
||||
#define TP_10mstyp TP_10ms_typ
|
||||
#define TOF_10mstyp TOF_10ms_typ
|
||||
#define TON_10mstyp TON_10ms_typ
|
||||
#define TPtyp TP_typ
|
||||
#define TOFtyp TOF_typ
|
||||
#define TONtyp TON_typ
|
||||
#define SEMAtyp SEMA_typ
|
||||
#define RStyp RS_typ
|
||||
#define SRtyp SR_typ
|
||||
#define R_TRIGtyp R_TRIG_typ
|
||||
#define F_TRIGtyp F_TRIG_typ
|
||||
#define CTUtyp CTU_typ
|
||||
#define CTDtyp CTD_typ
|
||||
#define CTUDtyp CTUD_typ
|
||||
#define RF_TRIGtyp RF_TRIG_typ
|
||||
|
||||
/* Constants */
|
||||
|
||||
|
||||
/* Datatypes */
|
||||
|
||||
|
||||
/* Datatypes of function blocks */
|
||||
typedef struct TP_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_10ms_typ;
|
||||
|
||||
typedef struct TOF_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_10ms_typ;
|
||||
|
||||
typedef struct TON_10ms
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned long PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned long ET;
|
||||
/* VAR (analogous) */
|
||||
unsigned long StartTime;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_10ms_typ;
|
||||
|
||||
typedef struct TP
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
} TP_typ;
|
||||
|
||||
typedef struct TOF
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TOF_typ;
|
||||
|
||||
typedef struct TON
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
plctime PT;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
plctime ET;
|
||||
/* VAR (analogous) */
|
||||
plctime StartTime;
|
||||
unsigned long Restart;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit IN;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} TON_typ;
|
||||
|
||||
typedef struct SEMA
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLAIM;
|
||||
plcbit RELEASE;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit BUSY;
|
||||
/* VAR (digital) */
|
||||
plcbit X;
|
||||
} SEMA_typ;
|
||||
|
||||
typedef struct RS
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET;
|
||||
plcbit RESET1;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} RS_typ;
|
||||
|
||||
typedef struct SR
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit SET1;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q1;
|
||||
} SR_typ;
|
||||
|
||||
typedef struct R_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} R_TRIG_typ;
|
||||
|
||||
typedef struct F_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} F_TRIG_typ;
|
||||
|
||||
typedef struct CTU
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit RESET;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTU_typ;
|
||||
|
||||
typedef struct CTD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
unsigned short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
unsigned short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CD;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} CTD_typ;
|
||||
|
||||
typedef struct CTUD
|
||||
{
|
||||
/* VAR_INPUT (analogous) */
|
||||
signed short PV;
|
||||
/* VAR_OUTPUT (analogous) */
|
||||
signed short CV;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CU;
|
||||
plcbit CD;
|
||||
plcbit RESET;
|
||||
plcbit LOAD;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit QU;
|
||||
plcbit QD;
|
||||
/* VAR (digital) */
|
||||
plcbit MU;
|
||||
plcbit MD;
|
||||
} CTUD_typ;
|
||||
|
||||
typedef struct RF_TRIG
|
||||
{
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit CLK;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Q;
|
||||
/* VAR (digital) */
|
||||
plcbit M;
|
||||
} RF_TRIG_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void TP_10ms(TP_10ms_typ* inst);
|
||||
void TOF_10ms(TOF_10ms_typ* inst);
|
||||
void TON_10ms(TON_10ms_typ* inst);
|
||||
void TP(TP_typ* inst);
|
||||
void TOF(TOF_typ* inst);
|
||||
void TON(TON_typ* inst);
|
||||
void SEMA(SEMA_typ* inst);
|
||||
void RS(RS_typ* inst);
|
||||
void SR(SR_typ* inst);
|
||||
void R_TRIG(R_TRIG_typ* inst);
|
||||
void F_TRIG(F_TRIG_typ* inst);
|
||||
void CTU(CTU_typ* inst);
|
||||
void CTD(CTD_typ* inst);
|
||||
void CTUD(CTUD_typ* inst);
|
||||
void RF_TRIG(RF_TRIG_typ* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* STANDARD_H_ */
|
||||
|
||||
|
||||
@@ -1,262 +1,262 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: standard
|
||||
* File: standard.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library standard
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK RF_TRIG (*recognizes both edges of BOOL values*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL; (*input signal of the edge to be recognized*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*TRUE if the input signal was FALSE on the last call and is now TRUE*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK CTUD (*counts upward or downward*)
|
||||
VAR_INPUT
|
||||
CU :BOOL; (*counter CV is increased by 1 by CU when the edge is rising*)
|
||||
CD :BOOL; (*counter CV is reduced by 1 by CD when the edge is rising*)
|
||||
RESET :BOOL; (*counter CV is set to 0 if RESET is TRUE*)
|
||||
LOAD :BOOL; (*if LOAD is TRUE, then counter CV is initialized with the starting value PV*)
|
||||
PV :INT; (*start value*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
QU :BOOL; (*is TRUE if CV is greater than or equal to PV*)
|
||||
QD :BOOL; (*is TRUE if CV equals 0*)
|
||||
CV :INT; (*counter*)
|
||||
END_VAR
|
||||
VAR
|
||||
MU :BOOL; (*internal variable*)
|
||||
MD :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK CTD (*counts downward*)
|
||||
VAR_INPUT
|
||||
CD :BOOL; (*counter CV is reduced by 1 by CD when the edge is rising*)
|
||||
LOAD :BOOL; (*if LOAD is TRUE, then counter CV is initialized with the starting value PV*)
|
||||
PV :UINT; (*start value*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is TRUE if CV equals 0*)
|
||||
CV :UINT; (*counter*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK CTU (*counts upward*)
|
||||
VAR_INPUT
|
||||
CU :BOOL; (*counter CV is increased by 1 by CU when the edge is rising*)
|
||||
RESET :BOOL; (*counter CV is set to 0 if RESET is TRUE*)
|
||||
PV :UINT; (*comparison variable*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is TRUE if counter CV is greater than or equal to the PV comparison variable*)
|
||||
CV :UINT; (*counter*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK F_TRIG (*recognizes falling edges from BOOL values*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL; (*input signal whose edge should be detected*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is set to TRUE if the input signal was TRUE during the last call and is now FALSE*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK R_TRIG (*recognizes rising edges from BOOL values*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL; (*input signal whose edge should be detected*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is set to TRUE if the input signal was FALSE during the last call and is now TRUE*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK SR (*sets or resets the output (set has priority)*)
|
||||
VAR_INPUT
|
||||
SET1 :BOOL; (*sets output Q1 (priority)*)
|
||||
RESET :BOOL; (*resets output Q1*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q1 :BOOL; (*output value *)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK RS (*sets or resets the output (reset has priority)*)
|
||||
VAR_INPUT
|
||||
SET :BOOL; (*sets output Q1*)
|
||||
RESET1 :BOOL; (*resets output Q1 (priority)*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q1 :BOOL; (*output value*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK SEMA (*blocks access within the same task class (simple semaphore)*)
|
||||
VAR_INPUT
|
||||
CLAIM :BOOL; (*locks semaphore*)
|
||||
RELEASE :BOOL; (*releases semaphore*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
BUSY :BOOL; (*TRUE if the semaphore was already locked*)
|
||||
END_VAR
|
||||
VAR
|
||||
X :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TON (*implements a switch on delay*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :TIME; (*delay time*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*rising edge of the input signal is delayed by PT*)
|
||||
ET :TIME; (*elapsed time*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :TIME; (*internal variable*)
|
||||
M :BOOL; (*internal variable*)
|
||||
Restart :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TOF (*implements a switch off delay*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :TIME; (*delay time*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*falling edge of the input signal is delayed by PT*)
|
||||
ET :TIME; (*elapsed time*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
StartTime :TIME; (*internal variable*)
|
||||
Restart :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TP (*implements a pulse generator*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :TIME; (*pulse time*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal*)
|
||||
ET :TIME; (*elapsed time*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :TIME; (*internal variable*)
|
||||
Restart :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TON_10ms (*implements a switch on delay based on 10 ms steps*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :UDINT; (*delay time in 10 ms steps*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal, the rising edge of the input signal is delayed by PT*)
|
||||
ET :UDINT; (*elapsed time in 10 ms increments*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :UDINT; (*internal variable*)
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TOF_10ms (*implements a switch off delay based on 10 ms steps*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :UDINT; (*delay time in 10 ms steps*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal, the falling edge of the input signal is delayed by PT*)
|
||||
ET :UDINT; (*elapsed time in 10 ms increments*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
StartTime :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TP_10ms (*implements a pulse using 10 ms steps*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :UDINT; (*pulse time in 10 ms steps*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal*)
|
||||
ET :UDINT; (*elapsed time in 10 ms increments*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION LEN : INT (*calculates the length of a string*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LEFT : STRING[255] (*extracts a certain amount (L) of leftmost characters from a string*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
L :INT; (*number of characters*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION RIGHT : STRING[255] (*extracts a certain amount (L) of rightmost characters from a string*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
L :INT; (*number of characters*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MID : STRING[255] (*extracts L number of characters out of string beginning with position P*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*string which should be extracted from*)
|
||||
L :INT; (*number of characters*)
|
||||
P :INT; (*position of the first character which should be extracted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION CONCAT : STRING[255] (*attaches strings to one another*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*first input string*)
|
||||
IN2 :STRING[32767]; (*second input string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION INSERT : STRING[255] (*inserts a string into a string*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*string which should be inserted into*)
|
||||
IN2 :STRING[32767]; (*string which should be inserted*)
|
||||
P :INT; (*position where insertion should take place*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION DELETE : STRING[255] (*deletes L number of characters from the IN string beginning with the Pth character position*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
L :INT; (*number of characters to be deleted*)
|
||||
P :INT; (*starting position of characters to be deleted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION REPLACE : STRING[255] (*replaces characters in a string*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*string which should have characters replaced*)
|
||||
IN2 :STRING[32767]; (*string used for the replacement*)
|
||||
L :INT; (*length of the area to be replaced*)
|
||||
P :INT; (*starting position of replacement*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION FIND : INT (*determines the position of a string inside a string*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*string which should be looked through*)
|
||||
IN2 :STRING[32767]; (*string which should be looked for*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: standard
|
||||
* File: standard.fun
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Functions and function blocks of library standard
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION_BLOCK RF_TRIG (*recognizes both edges of BOOL values*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL; (*input signal of the edge to be recognized*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*TRUE if the input signal was FALSE on the last call and is now TRUE*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK CTUD (*counts upward or downward*)
|
||||
VAR_INPUT
|
||||
CU :BOOL; (*counter CV is increased by 1 by CU when the edge is rising*)
|
||||
CD :BOOL; (*counter CV is reduced by 1 by CD when the edge is rising*)
|
||||
RESET :BOOL; (*counter CV is set to 0 if RESET is TRUE*)
|
||||
LOAD :BOOL; (*if LOAD is TRUE, then counter CV is initialized with the starting value PV*)
|
||||
PV :INT; (*start value*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
QU :BOOL; (*is TRUE if CV is greater than or equal to PV*)
|
||||
QD :BOOL; (*is TRUE if CV equals 0*)
|
||||
CV :INT; (*counter*)
|
||||
END_VAR
|
||||
VAR
|
||||
MU :BOOL; (*internal variable*)
|
||||
MD :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK CTD (*counts downward*)
|
||||
VAR_INPUT
|
||||
CD :BOOL; (*counter CV is reduced by 1 by CD when the edge is rising*)
|
||||
LOAD :BOOL; (*if LOAD is TRUE, then counter CV is initialized with the starting value PV*)
|
||||
PV :UINT; (*start value*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is TRUE if CV equals 0*)
|
||||
CV :UINT; (*counter*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK CTU (*counts upward*)
|
||||
VAR_INPUT
|
||||
CU :BOOL; (*counter CV is increased by 1 by CU when the edge is rising*)
|
||||
RESET :BOOL; (*counter CV is set to 0 if RESET is TRUE*)
|
||||
PV :UINT; (*comparison variable*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is TRUE if counter CV is greater than or equal to the PV comparison variable*)
|
||||
CV :UINT; (*counter*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK F_TRIG (*recognizes falling edges from BOOL values*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL; (*input signal whose edge should be detected*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is set to TRUE if the input signal was TRUE during the last call and is now FALSE*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK R_TRIG (*recognizes rising edges from BOOL values*)
|
||||
VAR_INPUT
|
||||
CLK :BOOL; (*input signal whose edge should be detected*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*is set to TRUE if the input signal was FALSE during the last call and is now TRUE*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK SR (*sets or resets the output (set has priority)*)
|
||||
VAR_INPUT
|
||||
SET1 :BOOL; (*sets output Q1 (priority)*)
|
||||
RESET :BOOL; (*resets output Q1*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q1 :BOOL; (*output value *)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK RS (*sets or resets the output (reset has priority)*)
|
||||
VAR_INPUT
|
||||
SET :BOOL; (*sets output Q1*)
|
||||
RESET1 :BOOL; (*resets output Q1 (priority)*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q1 :BOOL; (*output value*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK SEMA (*blocks access within the same task class (simple semaphore)*)
|
||||
VAR_INPUT
|
||||
CLAIM :BOOL; (*locks semaphore*)
|
||||
RELEASE :BOOL; (*releases semaphore*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
BUSY :BOOL; (*TRUE if the semaphore was already locked*)
|
||||
END_VAR
|
||||
VAR
|
||||
X :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TON (*implements a switch on delay*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :TIME; (*delay time*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*rising edge of the input signal is delayed by PT*)
|
||||
ET :TIME; (*elapsed time*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :TIME; (*internal variable*)
|
||||
M :BOOL; (*internal variable*)
|
||||
Restart :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TOF (*implements a switch off delay*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :TIME; (*delay time*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*falling edge of the input signal is delayed by PT*)
|
||||
ET :TIME; (*elapsed time*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
StartTime :TIME; (*internal variable*)
|
||||
Restart :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TP (*implements a pulse generator*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :TIME; (*pulse time*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal*)
|
||||
ET :TIME; (*elapsed time*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :TIME; (*internal variable*)
|
||||
Restart :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TON_10ms (*implements a switch on delay based on 10 ms steps*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :UDINT; (*delay time in 10 ms steps*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal, the rising edge of the input signal is delayed by PT*)
|
||||
ET :UDINT; (*elapsed time in 10 ms increments*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :UDINT; (*internal variable*)
|
||||
M :BOOL; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TOF_10ms (*implements a switch off delay based on 10 ms steps*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :UDINT; (*delay time in 10 ms steps*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal, the falling edge of the input signal is delayed by PT*)
|
||||
ET :UDINT; (*elapsed time in 10 ms increments*)
|
||||
END_VAR
|
||||
VAR
|
||||
M :BOOL; (*internal variable*)
|
||||
StartTime :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION_BLOCK TP_10ms (*implements a pulse using 10 ms steps*)
|
||||
VAR_INPUT
|
||||
IN :BOOL; (*input signal*)
|
||||
PT :UDINT; (*pulse time in 10 ms steps*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q :BOOL; (*output signal*)
|
||||
ET :UDINT; (*elapsed time in 10 ms increments*)
|
||||
END_VAR
|
||||
VAR
|
||||
StartTime :UDINT; (*internal variable*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
FUNCTION LEN : INT (*calculates the length of a string*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION LEFT : STRING[255] (*extracts a certain amount (L) of leftmost characters from a string*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
L :INT; (*number of characters*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION RIGHT : STRING[255] (*extracts a certain amount (L) of rightmost characters from a string*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
L :INT; (*number of characters*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION MID : STRING[255] (*extracts L number of characters out of string beginning with position P*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*string which should be extracted from*)
|
||||
L :INT; (*number of characters*)
|
||||
P :INT; (*position of the first character which should be extracted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION CONCAT : STRING[255] (*attaches strings to one another*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*first input string*)
|
||||
IN2 :STRING[32767]; (*second input string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION INSERT : STRING[255] (*inserts a string into a string*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*string which should be inserted into*)
|
||||
IN2 :STRING[32767]; (*string which should be inserted*)
|
||||
P :INT; (*position where insertion should take place*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION DELETE : STRING[255] (*deletes L number of characters from the IN string beginning with the Pth character position*)
|
||||
VAR_INPUT
|
||||
IN :STRING[32767]; (*input string*)
|
||||
L :INT; (*number of characters to be deleted*)
|
||||
P :INT; (*starting position of characters to be deleted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION REPLACE : STRING[255] (*replaces characters in a string*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*string which should have characters replaced*)
|
||||
IN2 :STRING[32767]; (*string used for the replacement*)
|
||||
L :INT; (*length of the area to be replaced*)
|
||||
P :INT; (*starting position of replacement*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
FUNCTION FIND : INT (*determines the position of a string inside a string*)
|
||||
VAR_INPUT
|
||||
IN1 :STRING[32767]; (*string which should be looked through*)
|
||||
IN2 :STRING[32767]; (*string which should be looked for*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,99 +1,99 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: sys_lib
|
||||
* File: sys_lib.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library sys_lib
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
MoVerStruc_typ : STRUCT
|
||||
version : ARRAY[0..9] OF USINT ;
|
||||
year : UINT ;
|
||||
month : USINT ;
|
||||
day : USINT ;
|
||||
reserve : USINT ;
|
||||
hour : USINT ;
|
||||
minute : USINT ;
|
||||
second : USINT ;
|
||||
END_STRUCT;
|
||||
ERR_xtyp : STRUCT
|
||||
err_nr : UINT ;
|
||||
err_info : UDINT ;
|
||||
t_name : ARRAY[0..4] OF SINT ;
|
||||
err_type : USINT ;
|
||||
err_year : UINT ;
|
||||
err_month : USINT ;
|
||||
err_day : USINT ;
|
||||
err_reserve : USINT ;
|
||||
err_hour : USINT ;
|
||||
err_minute : USINT ;
|
||||
err_second : USINT ;
|
||||
err_millisec : UINT ;
|
||||
err_microsec : UINT ;
|
||||
err_string : ARRAY[0..33] OF USINT ;
|
||||
END_STRUCT;
|
||||
ERR_typ : STRUCT
|
||||
err_nr : UINT ;
|
||||
err_info : UDINT ;
|
||||
t_name : ARRAY[0..4] OF SINT ;
|
||||
err_type : USINT ;
|
||||
err_year : UINT ;
|
||||
err_month : USINT ;
|
||||
err_day : USINT ;
|
||||
err_reserve : USINT ;
|
||||
err_hour : USINT ;
|
||||
err_minute : USINT ;
|
||||
err_second : USINT ;
|
||||
err_millisec : UINT ;
|
||||
err_microsec : UINT ;
|
||||
END_STRUCT;
|
||||
PV_xList_typ : STRUCT
|
||||
name : ARRAY[0..32] OF SINT ; (*name of the process variable*)
|
||||
data_typ : USINT ; (*PV data type (see PV_info())*)
|
||||
data_len : UDINT ; (*length of the PV in bytes*)
|
||||
dimension : UDINT ; (*number of array elements*)
|
||||
adress : UDINT ; (*physical address of the PV (for dynamic access)*)
|
||||
END_STRUCT;
|
||||
PV_List_typ : STRUCT
|
||||
name : ARRAY[0..13] OF SINT ; (*name of the PV*)
|
||||
tcnr : USINT ; (*PV resource*)
|
||||
grp : USINT ; (*group number of the PV (standard = 0)*)
|
||||
ident : UDINT ; (*PV ID number*)
|
||||
adress : UDINT ; (*physical address of the PV (for dynamic access)*)
|
||||
END_STRUCT;
|
||||
MO_List_typ : STRUCT
|
||||
name : ARRAY[0..13] OF SINT ;
|
||||
grp : USINT ;
|
||||
type : USINT ;
|
||||
state : USINT ;
|
||||
reserve : USINT ;
|
||||
adress : UDINT ;
|
||||
memtype : UDINT ;
|
||||
END_STRUCT;
|
||||
SYSxinfo_typ : STRUCT
|
||||
aws_name : ARRAY[0..5] OF SINT ;
|
||||
aws_type : ARRAY[0..1] OF SINT ;
|
||||
cpu_info : UDINT ;
|
||||
ma_globl_len : UINT ;
|
||||
md_globl_len : UINT ;
|
||||
os_len : UDINT ;
|
||||
user_len : UDINT ;
|
||||
tmp_len : UDINT ;
|
||||
eprom_len : UDINT ;
|
||||
fix_ram_len : UDINT ;
|
||||
END_STRUCT;
|
||||
RTCtime_typ : STRUCT
|
||||
year : UINT ;
|
||||
month : USINT ;
|
||||
day : USINT ;
|
||||
reserve : USINT ;
|
||||
hour : USINT ;
|
||||
minute : USINT ;
|
||||
second : USINT ;
|
||||
millisec : UINT ;
|
||||
microsec : UINT ;
|
||||
END_STRUCT;
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: sys_lib
|
||||
* File: sys_lib.typ
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Data types of library sys_lib
|
||||
********************************************************************)
|
||||
|
||||
TYPE
|
||||
MoVerStruc_typ : STRUCT
|
||||
version : ARRAY[0..9] OF USINT ;
|
||||
year : UINT ;
|
||||
month : USINT ;
|
||||
day : USINT ;
|
||||
reserve : USINT ;
|
||||
hour : USINT ;
|
||||
minute : USINT ;
|
||||
second : USINT ;
|
||||
END_STRUCT;
|
||||
ERR_xtyp : STRUCT
|
||||
err_nr : UINT ;
|
||||
err_info : UDINT ;
|
||||
t_name : ARRAY[0..4] OF SINT ;
|
||||
err_type : USINT ;
|
||||
err_year : UINT ;
|
||||
err_month : USINT ;
|
||||
err_day : USINT ;
|
||||
err_reserve : USINT ;
|
||||
err_hour : USINT ;
|
||||
err_minute : USINT ;
|
||||
err_second : USINT ;
|
||||
err_millisec : UINT ;
|
||||
err_microsec : UINT ;
|
||||
err_string : ARRAY[0..33] OF USINT ;
|
||||
END_STRUCT;
|
||||
ERR_typ : STRUCT
|
||||
err_nr : UINT ;
|
||||
err_info : UDINT ;
|
||||
t_name : ARRAY[0..4] OF SINT ;
|
||||
err_type : USINT ;
|
||||
err_year : UINT ;
|
||||
err_month : USINT ;
|
||||
err_day : USINT ;
|
||||
err_reserve : USINT ;
|
||||
err_hour : USINT ;
|
||||
err_minute : USINT ;
|
||||
err_second : USINT ;
|
||||
err_millisec : UINT ;
|
||||
err_microsec : UINT ;
|
||||
END_STRUCT;
|
||||
PV_xList_typ : STRUCT
|
||||
name : ARRAY[0..32] OF SINT ; (*name of the process variable*)
|
||||
data_typ : USINT ; (*PV data type (see PV_info())*)
|
||||
data_len : UDINT ; (*length of the PV in bytes*)
|
||||
dimension : UDINT ; (*number of array elements*)
|
||||
adress : UDINT ; (*physical address of the PV (for dynamic access)*)
|
||||
END_STRUCT;
|
||||
PV_List_typ : STRUCT
|
||||
name : ARRAY[0..13] OF SINT ; (*name of the PV*)
|
||||
tcnr : USINT ; (*PV resource*)
|
||||
grp : USINT ; (*group number of the PV (standard = 0)*)
|
||||
ident : UDINT ; (*PV ID number*)
|
||||
adress : UDINT ; (*physical address of the PV (for dynamic access)*)
|
||||
END_STRUCT;
|
||||
MO_List_typ : STRUCT
|
||||
name : ARRAY[0..13] OF SINT ;
|
||||
grp : USINT ;
|
||||
type : USINT ;
|
||||
state : USINT ;
|
||||
reserve : USINT ;
|
||||
adress : UDINT ;
|
||||
memtype : UDINT ;
|
||||
END_STRUCT;
|
||||
SYSxinfo_typ : STRUCT
|
||||
aws_name : ARRAY[0..5] OF SINT ;
|
||||
aws_type : ARRAY[0..1] OF SINT ;
|
||||
cpu_info : UDINT ;
|
||||
ma_globl_len : UINT ;
|
||||
md_globl_len : UINT ;
|
||||
os_len : UDINT ;
|
||||
user_len : UDINT ;
|
||||
tmp_len : UDINT ;
|
||||
eprom_len : UDINT ;
|
||||
fix_ram_len : UDINT ;
|
||||
END_STRUCT;
|
||||
RTCtime_typ : STRUCT
|
||||
year : UINT ;
|
||||
month : USINT ;
|
||||
day : USINT ;
|
||||
reserve : USINT ;
|
||||
hour : USINT ;
|
||||
minute : USINT ;
|
||||
second : USINT ;
|
||||
millisec : UINT ;
|
||||
microsec : UINT ;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
@@ -1,105 +1,105 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: sys_lib
|
||||
* File: sys_lib.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library sys_lib
|
||||
********************************************************************)
|
||||
|
||||
(*error codes of the SYS_LIB services*)
|
||||
VAR CONSTANT
|
||||
ERR_BUR_WRROW : UINT := 2061; (*illegal row*)
|
||||
ERR_BUR_WRCOL : UINT := 2062; (*illegal column*)
|
||||
ERR_BUR_WR_CHAR : UINT := 2063; (*invalid ASCII character*)
|
||||
ERR_BUR_NORTC : UINT := 2073; (*RTC not existing or uninitialized*)
|
||||
|
||||
ERR_BUR_NOMEM : UINT := 3030; (*out of memory*)
|
||||
ERR_BUR_MEMVWBUSY : UINT := 3035; (*memory management busy*)
|
||||
ERR_BUR_ILLPTR : UINT := 3104; (*illegal data pointer in MEM_free*)
|
||||
|
||||
ERR_BUR_ILLTKNR : UINT := 3300; (*illegal task-class number*)
|
||||
ERR_BUR_WROFFSET : UINT := 3301; (*illegal offset*)
|
||||
ERR_BUR_ILLSTATE : UINT := 3302; (*illegal state of object*)
|
||||
ERR_BUR_NOMSG : UINT := 3303; (*no message sent/received*)
|
||||
ERR_BUR_DUPOBJ : UINT := 3305; (*object exists*)
|
||||
ERR_BUR_TIMEOUT : UINT := 3304; (*timeout error*)
|
||||
ERR_BUR_EXISTS : UINT := 3306; (*entry exists*)
|
||||
ERR_BUR_LCOUNT : UINT := 3307; (*Linkcnt <> 0 in AVT_cancel ()*)
|
||||
ERR_BUR_BURNING : UINT := 3308; (*error burning module*)
|
||||
ERR_BUR_INVALIDMBX : UINT := 3309; (*invalid mailbox*)
|
||||
|
||||
ERR_BUR_ILLBPTR : UINT := 3310; (*invalid base pointer*)
|
||||
ERR_BUR_ILLTYP : UINT := 3311; (*invalid I/O type*)
|
||||
ERR_BUR_ILLEXT : UINT := 3312; (*invalid ext. bit*)
|
||||
ERR_BUR_ILLVER : UINT := 3313; (*invalid version, e.g. BURTRAP V1.10 to SPSSW V1.05*)
|
||||
ERR_BUR_ILLLEN : UINT := 3314; (*invalid data length*)
|
||||
ERR_BUR_MAX_LCOUNT : UINT := 3315; (*AVT_attach: LCOUNT > 127*)
|
||||
ERR_BUR_AVT_FREE : UINT := 3316; (*AVT_release:LCOUNT = 0*)
|
||||
ERR_BUR_ILLPAR : UINT := 3317; (*illegal parameter*)
|
||||
ERR_BUR_INSTALL : UINT := 3318; (*error install datamodule*)
|
||||
ERR_BUR_WRONG_MODTYP : UINT := 3319; (*wrong Moduletype*)
|
||||
|
||||
ERR_BUR_OBJDEL : UINT := 3320; (*object already deleted*)
|
||||
ERR_BUR_ILLOBJ : UINT := 3324; (*object does not exist*)
|
||||
ERR_BUR_ILLOBJTYP : UINT := 3328; (*invalid object type*)
|
||||
ERR_BUR_NOENTRY : UINT := 3332; (*no entry*)
|
||||
ERR_BUR_TOOLONG_PVNAME : UINT := 3333; (*too long PV name*)
|
||||
ERR_BUR_ILLIDENT : UINT := 3336; (*illegal ident*)
|
||||
ERR_BUR_NOSMBUF : UINT := 3560; (*no more semaphore buffers*)
|
||||
ERR_BUR_NOSM : UINT := 3564; (*semaphore not available*)
|
||||
ERR_BUR_SMDEL : UINT := 3568; (*semaphore deleted*)
|
||||
ERR_BUR_NOTIME : UINT := 3584; (*time not available*)
|
||||
ERR_BUR_ILLDATE : UINT := 3588; (*date : out of range*)
|
||||
ERR_BUR_ILLTIME : UINT := 3592; (*time : out of range*)
|
||||
ERR_BUR_ILLTICKS : UINT := 3596; (*ticks : out of range*)
|
||||
|
||||
ERR_BUR_MEM_ALLOC : UINT := 3600; (*not enough continuous memory*)
|
||||
ERR_BUR_TMP_ALLOC : UINT := 3601; (*not enough continuous memory*)
|
||||
ERR_BUR_MEM_FREE : UINT := 3700; (*invalid pointer/length*)
|
||||
ERR_BUR_TMP_FREE : UINT := 3701; (*invalid pointer/length*)
|
||||
END_VAR
|
||||
|
||||
(*state for object PLC task*)
|
||||
VAR CONSTANT
|
||||
Z_ST_created : UINT := 1; (*object installed*)
|
||||
Z_ST_running : UINT := 2; (*object running*)
|
||||
Z_ST_blocked : UINT := 3; (*object stopped*)
|
||||
Z_ST_exist : UINT := 16#00; (*object exists*)
|
||||
Z_ST_installed : UINT := 16#82; (*temporary status during installation*)
|
||||
Z_ST_PVinstalled : UINT := 16#83; (*temporary status during installation*)
|
||||
Z_ST_IOinstalled : UINT := 16#84; (*temporary status during installation*)
|
||||
Z_ST_IOdeinstalled : UINT := 16#85; (*temporary status during installation*)
|
||||
Z_ST_PVdeinstalled : UINT := 16#86; (*temporary status during installation*)
|
||||
Z_ST_delete : UINT := 16#87; (*temporary status during installation*)
|
||||
Z_ST_stdebug : UINT := 16#88; (*temporary status during installation*)
|
||||
Z_ST_tmp_suspended : UINT := 16#90; (*object temporarily stopped*)
|
||||
END_VAR
|
||||
|
||||
(*PV data types*)
|
||||
VAR CONSTANT
|
||||
PB_DT_STRUCT : UINT := 0; (*structure*)
|
||||
PB_DT_BOOL : UINT := 1; (*boolean*)
|
||||
PB_DT_INT8 : UINT := 2; (*integer8*)
|
||||
PB_DT_INT16 : UINT := 3; (*integer16*)
|
||||
PB_DT_INT32 : UINT := 4; (*integer32*)
|
||||
PB_DT_BYTE : UINT := 5; (*unsigned integer8*)
|
||||
PB_DT_WORD : UINT := 6; (*unsigned integer16*)
|
||||
PB_DT_LONG : UINT := 7; (*unsigned integer32*)
|
||||
PB_DT_FLOAT : UINT := 8; (*floating point*)
|
||||
PB_DT_VIS : UINT := 9; (*visible string*)
|
||||
PB_DT_OCTET : UINT := 10; (*octet string*)
|
||||
PB_DT_DATE : UINT := 11; (*date*)
|
||||
PB_DT_TIME : UINT := 12; (*time of day*)
|
||||
PB_DT_DIFF : UINT := 13; (*time difference*)
|
||||
PB_DT_BIT : UINT := 14; (*bit string*)
|
||||
PB_DT_ARRAY : UINT := 15; (*array*)
|
||||
END_VAR
|
||||
|
||||
(*memory types*)
|
||||
VAR CONSTANT
|
||||
SYS_RAM : UINT := 1; (*RAM*)
|
||||
USER_ROM1 : UINT := 2; (*EPROM*)
|
||||
FIX_RAM : UINT := 5; (*fixed RAM*)
|
||||
(********************************************************************
|
||||
* COPYRIGHT -- Bernecker + Rainer
|
||||
********************************************************************
|
||||
* Library: sys_lib
|
||||
* File: sys_lib.var
|
||||
* Author: B+R
|
||||
********************************************************************
|
||||
* Local variables of library sys_lib
|
||||
********************************************************************)
|
||||
|
||||
(*error codes of the SYS_LIB services*)
|
||||
VAR CONSTANT
|
||||
ERR_BUR_WRROW : UINT := 2061; (*illegal row*)
|
||||
ERR_BUR_WRCOL : UINT := 2062; (*illegal column*)
|
||||
ERR_BUR_WR_CHAR : UINT := 2063; (*invalid ASCII character*)
|
||||
ERR_BUR_NORTC : UINT := 2073; (*RTC not existing or uninitialized*)
|
||||
|
||||
ERR_BUR_NOMEM : UINT := 3030; (*out of memory*)
|
||||
ERR_BUR_MEMVWBUSY : UINT := 3035; (*memory management busy*)
|
||||
ERR_BUR_ILLPTR : UINT := 3104; (*illegal data pointer in MEM_free*)
|
||||
|
||||
ERR_BUR_ILLTKNR : UINT := 3300; (*illegal task-class number*)
|
||||
ERR_BUR_WROFFSET : UINT := 3301; (*illegal offset*)
|
||||
ERR_BUR_ILLSTATE : UINT := 3302; (*illegal state of object*)
|
||||
ERR_BUR_NOMSG : UINT := 3303; (*no message sent/received*)
|
||||
ERR_BUR_DUPOBJ : UINT := 3305; (*object exists*)
|
||||
ERR_BUR_TIMEOUT : UINT := 3304; (*timeout error*)
|
||||
ERR_BUR_EXISTS : UINT := 3306; (*entry exists*)
|
||||
ERR_BUR_LCOUNT : UINT := 3307; (*Linkcnt <> 0 in AVT_cancel ()*)
|
||||
ERR_BUR_BURNING : UINT := 3308; (*error burning module*)
|
||||
ERR_BUR_INVALIDMBX : UINT := 3309; (*invalid mailbox*)
|
||||
|
||||
ERR_BUR_ILLBPTR : UINT := 3310; (*invalid base pointer*)
|
||||
ERR_BUR_ILLTYP : UINT := 3311; (*invalid I/O type*)
|
||||
ERR_BUR_ILLEXT : UINT := 3312; (*invalid ext. bit*)
|
||||
ERR_BUR_ILLVER : UINT := 3313; (*invalid version, e.g. BURTRAP V1.10 to SPSSW V1.05*)
|
||||
ERR_BUR_ILLLEN : UINT := 3314; (*invalid data length*)
|
||||
ERR_BUR_MAX_LCOUNT : UINT := 3315; (*AVT_attach: LCOUNT > 127*)
|
||||
ERR_BUR_AVT_FREE : UINT := 3316; (*AVT_release:LCOUNT = 0*)
|
||||
ERR_BUR_ILLPAR : UINT := 3317; (*illegal parameter*)
|
||||
ERR_BUR_INSTALL : UINT := 3318; (*error install datamodule*)
|
||||
ERR_BUR_WRONG_MODTYP : UINT := 3319; (*wrong Moduletype*)
|
||||
|
||||
ERR_BUR_OBJDEL : UINT := 3320; (*object already deleted*)
|
||||
ERR_BUR_ILLOBJ : UINT := 3324; (*object does not exist*)
|
||||
ERR_BUR_ILLOBJTYP : UINT := 3328; (*invalid object type*)
|
||||
ERR_BUR_NOENTRY : UINT := 3332; (*no entry*)
|
||||
ERR_BUR_TOOLONG_PVNAME : UINT := 3333; (*too long PV name*)
|
||||
ERR_BUR_ILLIDENT : UINT := 3336; (*illegal ident*)
|
||||
ERR_BUR_NOSMBUF : UINT := 3560; (*no more semaphore buffers*)
|
||||
ERR_BUR_NOSM : UINT := 3564; (*semaphore not available*)
|
||||
ERR_BUR_SMDEL : UINT := 3568; (*semaphore deleted*)
|
||||
ERR_BUR_NOTIME : UINT := 3584; (*time not available*)
|
||||
ERR_BUR_ILLDATE : UINT := 3588; (*date : out of range*)
|
||||
ERR_BUR_ILLTIME : UINT := 3592; (*time : out of range*)
|
||||
ERR_BUR_ILLTICKS : UINT := 3596; (*ticks : out of range*)
|
||||
|
||||
ERR_BUR_MEM_ALLOC : UINT := 3600; (*not enough continuous memory*)
|
||||
ERR_BUR_TMP_ALLOC : UINT := 3601; (*not enough continuous memory*)
|
||||
ERR_BUR_MEM_FREE : UINT := 3700; (*invalid pointer/length*)
|
||||
ERR_BUR_TMP_FREE : UINT := 3701; (*invalid pointer/length*)
|
||||
END_VAR
|
||||
|
||||
(*state for object PLC task*)
|
||||
VAR CONSTANT
|
||||
Z_ST_created : UINT := 1; (*object installed*)
|
||||
Z_ST_running : UINT := 2; (*object running*)
|
||||
Z_ST_blocked : UINT := 3; (*object stopped*)
|
||||
Z_ST_exist : UINT := 16#00; (*object exists*)
|
||||
Z_ST_installed : UINT := 16#82; (*temporary status during installation*)
|
||||
Z_ST_PVinstalled : UINT := 16#83; (*temporary status during installation*)
|
||||
Z_ST_IOinstalled : UINT := 16#84; (*temporary status during installation*)
|
||||
Z_ST_IOdeinstalled : UINT := 16#85; (*temporary status during installation*)
|
||||
Z_ST_PVdeinstalled : UINT := 16#86; (*temporary status during installation*)
|
||||
Z_ST_delete : UINT := 16#87; (*temporary status during installation*)
|
||||
Z_ST_stdebug : UINT := 16#88; (*temporary status during installation*)
|
||||
Z_ST_tmp_suspended : UINT := 16#90; (*object temporarily stopped*)
|
||||
END_VAR
|
||||
|
||||
(*PV data types*)
|
||||
VAR CONSTANT
|
||||
PB_DT_STRUCT : UINT := 0; (*structure*)
|
||||
PB_DT_BOOL : UINT := 1; (*boolean*)
|
||||
PB_DT_INT8 : UINT := 2; (*integer8*)
|
||||
PB_DT_INT16 : UINT := 3; (*integer16*)
|
||||
PB_DT_INT32 : UINT := 4; (*integer32*)
|
||||
PB_DT_BYTE : UINT := 5; (*unsigned integer8*)
|
||||
PB_DT_WORD : UINT := 6; (*unsigned integer16*)
|
||||
PB_DT_LONG : UINT := 7; (*unsigned integer32*)
|
||||
PB_DT_FLOAT : UINT := 8; (*floating point*)
|
||||
PB_DT_VIS : UINT := 9; (*visible string*)
|
||||
PB_DT_OCTET : UINT := 10; (*octet string*)
|
||||
PB_DT_DATE : UINT := 11; (*date*)
|
||||
PB_DT_TIME : UINT := 12; (*time of day*)
|
||||
PB_DT_DIFF : UINT := 13; (*time difference*)
|
||||
PB_DT_BIT : UINT := 14; (*bit string*)
|
||||
PB_DT_ARRAY : UINT := 15; (*array*)
|
||||
END_VAR
|
||||
|
||||
(*memory types*)
|
||||
VAR CONSTANT
|
||||
SYS_RAM : UINT := 1; (*RAM*)
|
||||
USER_ROM1 : UINT := 2; (*EPROM*)
|
||||
FIX_RAM : UINT := 5; (*fixed RAM*)
|
||||
END_VAR
|
||||
@@ -1,11 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Global data types">Global.typ</Object>
|
||||
<Object Type="File" Description="Global variables">Global.var</Object>
|
||||
<Object Type="Package" Description="Common Defaults">Common</Object>
|
||||
<Object Type="Package" Description="Communication">Communication</Object>
|
||||
<Object Type="Package" Description="Global libraries">Libraries</Object>
|
||||
</Objects>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.22 SP04?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Global data types">Global.typ</Object>
|
||||
<Object Type="File" Description="Global variables">Global.var</Object>
|
||||
<Object Type="Package" Description="Common Defaults">Common</Object>
|
||||
<Object Type="Package" Description="Communication">Communication</Object>
|
||||
<Object Type="Package" Description="Global libraries">Libraries</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Oven locic">oven1</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.18?>
|
||||
<Configuration xmlns="http://br-automation.co.at/AS/Configuration">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Hardware topology">Hardware.hc</Object>
|
||||
<Object Type="PLC" Description="Files belonging to this PLC">PLC1</Object>
|
||||
</Objects>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.18?>
|
||||
<Configuration xmlns="http://br-automation.co.at/AS/Configuration">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Hardware topology">Hardware.hc</Object>
|
||||
<Object Type="PLC" Description="Files belonging to this PLC">PLC1</Object>
|
||||
</Objects>
|
||||
</Configuration>
|
||||
@@ -1,123 +1,123 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=?>
|
||||
<RuntimeConfiguration Version="2.32.22">
|
||||
<Module ID="IF4" Hardware="X20CP0291 (X2x)" />
|
||||
<Module ID="IF4.ST0" Hardware="X20PS9500">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="on" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="StatusInfo" Value="on" />
|
||||
<Parameter ID="PowerInfo" Value="off" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST1" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST2" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST3" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST4" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST5" Hardware="X20DI9371">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="10" />
|
||||
<Parameter ID="DigitalInputsPacked" Value="off" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST6" Hardware="X20DO9322">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="StatusInfo" Value="on" />
|
||||
<Parameter ID="DigitalOutputsPacked" Value="off" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=?>
|
||||
<RuntimeConfiguration Version="2.32.22">
|
||||
<Module ID="IF4" Hardware="X20CP0291 (X2x)" />
|
||||
<Module ID="IF4.ST0" Hardware="X20PS9500">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="on" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="StatusInfo" Value="on" />
|
||||
<Parameter ID="PowerInfo" Value="off" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST1" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST2" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST3" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST4" Hardware="X20AT4222">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="IOCycleCounter" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="20ms" />
|
||||
</Group>
|
||||
<Group ID="Channel01">
|
||||
<Parameter ID="SensorType01" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel02">
|
||||
<Parameter ID="SensorType02" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel03">
|
||||
<Parameter ID="SensorType03" Value="PT100" />
|
||||
</Group>
|
||||
<Group ID="Channel04">
|
||||
<Parameter ID="SensorType04" Value="PT100" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST5" Hardware="X20DI9371">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="InputFilter" Value="10" />
|
||||
<Parameter ID="DigitalInputsPacked" Value="off" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
<Module ID="IF4.ST6" Hardware="X20DO9322">
|
||||
<Selector ID="FunctionModel" Value="Standard">
|
||||
<Group ID="General">
|
||||
<Parameter ID="Supervision" Value="off" />
|
||||
<Parameter ID="ModuleInfo" Value="off" />
|
||||
<Parameter ID="StatusInfo" Value="on" />
|
||||
<Parameter ID="DigitalOutputsPacked" Value="off" />
|
||||
</Group>
|
||||
</Selector>
|
||||
</Module>
|
||||
</RuntimeConfiguration>
|
||||
@@ -1,13 +1,13 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: Cpu.per
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* Declaration of permanent variables
|
||||
********************************************************************)
|
||||
|
||||
VAR_CONFIG
|
||||
|
||||
END_VAR
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: Cpu.per
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* Declaration of permanent variables
|
||||
********************************************************************)
|
||||
|
||||
VAR_CONFIG
|
||||
|
||||
END_VAR
|
||||
|
||||
@@ -1,34 +1,37 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<SwConfiguration CpuAddress="SL1" xmlns="http://br-automation.co.at/AS/SwConfiguration">
|
||||
<TaskClass Name="Cyclic#1">
|
||||
<Task Name="get_dt" Source="Common.get_dt.prg" Memory="UserROM" Language="IEC" Debugging="true" />
|
||||
</TaskClass>
|
||||
<TaskClass Name="Cyclic#2">
|
||||
<Task Name="collectd" Source="Communication.collectd.prg" Memory="UserROM" Language="IEC" Debugging="true" />
|
||||
</TaskClass>
|
||||
<TaskClass Name="Cyclic#3" />
|
||||
<TaskClass Name="Cyclic#4" />
|
||||
<DataObjects />
|
||||
<NcDataObjects />
|
||||
<VcDataObjects />
|
||||
<Binaries>
|
||||
<BinaryObject Name="asfw" Source="" Memory="SystemROM" Language="Binary" />
|
||||
<BinaryObject Name="arconfig" Source="" Memory="SystemROM" Language="Binary" />
|
||||
<BinaryObject Name="iomap" Source="" Memory="UserROM" Language="Binary" />
|
||||
<BinaryObject Name="sysconf" Source="" Memory="SystemROM" Language="Binary" />
|
||||
<BinaryObject Name="rtk68k" Source="" Memory="UserROM" Language="Binary" />
|
||||
</Binaries>
|
||||
<Libraries>
|
||||
<LibraryObject Name="brsystem" Source="Libraries.brsystem.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="sys_lib" Source="Libraries.sys_lib.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="burtrap" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="runtime" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="AsUDP" Source="Libraries.AsUDP.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="standard" Source="Libraries.standard.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="asieccon" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="astime" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="asima" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="asstring" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
</Libraries>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.22 SP04?>
|
||||
<SwConfiguration CpuAddress="SL1" xmlns="http://br-automation.co.at/AS/SwConfiguration">
|
||||
<TaskClass Name="Cyclic#1">
|
||||
<Task Name="get_dt" Source="Common.get_dt.prg" Memory="UserROM" Language="IEC" Debugging="true" />
|
||||
</TaskClass>
|
||||
<TaskClass Name="Cyclic#2">
|
||||
<Task Name="collectd" Source="Communication.collectd.prg" Memory="UserROM" Language="IEC" Debugging="true" />
|
||||
</TaskClass>
|
||||
<TaskClass Name="Cyclic#3">
|
||||
<Task Name="oven1" Source="oven1.prg" Memory="UserROM" Language="IEC" Debugging="true" />
|
||||
</TaskClass>
|
||||
<TaskClass Name="Cyclic#4" />
|
||||
<DataObjects />
|
||||
<NcDataObjects />
|
||||
<VcDataObjects />
|
||||
<Binaries>
|
||||
<BinaryObject Name="gcloader" Source="" Memory="UserROM" Language="Binary" />
|
||||
<BinaryObject Name="sysconf" Source="" Memory="SystemROM" Language="Binary" />
|
||||
<BinaryObject Name="iomap" Source="" Memory="UserROM" Language="Binary" />
|
||||
<BinaryObject Name="arconfig" Source="" Memory="SystemROM" Language="Binary" />
|
||||
<BinaryObject Name="asfw" Source="" Memory="SystemROM" Language="Binary" />
|
||||
<BinaryObject Name="rtk68k" Source="" Memory="UserROM" Language="Binary" />
|
||||
</Binaries>
|
||||
<Libraries>
|
||||
<LibraryObject Name="brsystem" Source="Libraries.brsystem.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="sys_lib" Source="Libraries.sys_lib.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="burtrap" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="runtime" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="AsUDP" Source="Libraries.AsUDP.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="standard" Source="Libraries.standard.lby" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="asieccon" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="astime" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="asstring" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
<LibraryObject Name="asima" Source="" Memory="UserROM" Language="Binary" Debugging="true" />
|
||||
</Libraries>
|
||||
</SwConfiguration>
|
||||
@@ -1,27 +1,27 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: IoMap.iom
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* IO mapping file
|
||||
********************************************************************)
|
||||
VAR_CONFIG
|
||||
giOven1Temp1 AT %IW.IF4.ST1.Temperature01;
|
||||
giOven1Temp2 AT %IW.IF4.ST1.Temperature02;
|
||||
giOven1Temp3 AT %IW.IF4.ST1.Temperature03;
|
||||
giOven1Temp4 AT %IW.IF4.ST1.Temperature04;
|
||||
giOven1Temp5 AT %IW.IF4.ST2.Temperature01;
|
||||
giOven1Temp7 AT %IW.IF4.ST2.Temperature03;
|
||||
giOven1Temp6 AT %IW.IF4.ST2.Temperature02;
|
||||
giOven1Temp8 AT %IW.IF4.ST2.Temperature04;
|
||||
giOven2Temp1 AT %IW.IF4.ST3.Temperature01;
|
||||
giOven2Temp2 AT %IW.IF4.ST3.Temperature02;
|
||||
giOven2Temp3 AT %IW.IF4.ST3.Temperature03;
|
||||
giOven2Temp4 AT %IW.IF4.ST3.Temperature04;
|
||||
giOven2Temp5 AT %IW.IF4.ST4.Temperature01;
|
||||
giOven2Temp6 AT %IW.IF4.ST4.Temperature02;
|
||||
giOven2Temp7 AT %IW.IF4.ST4.Temperature03;
|
||||
giOven2Temp8 AT %IW.IF4.ST4.Temperature04;
|
||||
END_VAR
|
||||
(********************************************************************
|
||||
* COPYRIGHT --
|
||||
********************************************************************
|
||||
* File: IoMap.iom
|
||||
* Author: Administrator
|
||||
* Created: November 03, 2011
|
||||
********************************************************************
|
||||
* IO mapping file
|
||||
********************************************************************)
|
||||
VAR_CONFIG
|
||||
giOven1Temp1 AT %IW.IF4.ST1.Temperature01;
|
||||
giOven1Temp2 AT %IW.IF4.ST1.Temperature02;
|
||||
giOven1Temp3 AT %IW.IF4.ST1.Temperature03;
|
||||
giOven1Temp4 AT %IW.IF4.ST1.Temperature04;
|
||||
giOven1Temp5 AT %IW.IF4.ST2.Temperature01;
|
||||
giOven1Temp7 AT %IW.IF4.ST2.Temperature03;
|
||||
giOven1Temp6 AT %IW.IF4.ST2.Temperature02;
|
||||
giOven1Temp8 AT %IW.IF4.ST2.Temperature04;
|
||||
giOven2Temp1 AT %IW.IF4.ST3.Temperature01;
|
||||
giOven2Temp2 AT %IW.IF4.ST3.Temperature02;
|
||||
giOven2Temp3 AT %IW.IF4.ST3.Temperature03;
|
||||
giOven2Temp4 AT %IW.IF4.ST3.Temperature04;
|
||||
giOven2Temp5 AT %IW.IF4.ST4.Temperature01;
|
||||
giOven2Temp6 AT %IW.IF4.ST4.Temperature02;
|
||||
giOven2Temp7 AT %IW.IF4.ST4.Temperature03;
|
||||
giOven2Temp8 AT %IW.IF4.ST4.Temperature04;
|
||||
END_VAR
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<PLC xmlns="http://br-automation.co.at/AS/PLC">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Software configuration">Cpu.sw</Object>
|
||||
<Object Type="File" Description="Declaration of permanent variables">Cpu.per</Object>
|
||||
<Object Type="File" Description="IO mapping file">IoMap.iom</Object>
|
||||
<Object Type="File" Description="Runtime configuration file">ArConfig.rtc</Object>
|
||||
<Object Type="File" Description="CPU system configuration">sysconf.br</Object>
|
||||
</Objects>
|
||||
<CpuModules>
|
||||
<CpuModule LocalVariablesMemory="MemoryPool" GeneratePPCode="false" HasNcOperatingSystem="false" Target="SGC" ModuleID="CP0291" ClassID="X20CP0291" GccVersion="V2.95.3" OnlineConfigurationName="Temperöfen">
|
||||
<DefaultTargetMemory Tasks="UserROM" Libraries="UserROM" DataObjects="UserROM" />
|
||||
<DefaultTaskClass Name="Cyclic4" />
|
||||
<IO DefaultTaskClass="Automatic" ArConfigDataModule="false" ArConfigDataModulePath="$(AS_CPU_PATH)\AS\CfgData.br" IoMapDataModule="false" IoMapDataModulePath="$(AS_CPU_PATH)\AS\IomData.br" />
|
||||
<OS Version="2.32.0" Status="V" />
|
||||
<Transfer DownloadMode="Overload" PromptBeforeProject="false" PromptBeforeTask="false" PackedArConfig="false" PackedIoMap="false" IgnoreTargetOnlyObjects="false" GeneratePviTransferList="true" TransferOnlyRelevantChanges="false" AllowWarmRestart="true" IgnoreBrDependencies="false" />
|
||||
<Build />
|
||||
<VC FirmwareVersion="V3.95.6" />
|
||||
<OPC />
|
||||
</CpuModule>
|
||||
</CpuModules>
|
||||
<Communication>
|
||||
<OnlineConfiguration Name="Temperöfen" DeviceType="TCPIP" DeviceParameters="/IF=tcpip /LOPO=11159 /SA=1" ConnectionParameters="/RT=1000 /DAIP=192.168.100.56 /REPO=11159 /ANSL=1" Description="" />
|
||||
</Communication>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<PLC xmlns="http://br-automation.co.at/AS/PLC">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Software configuration">Cpu.sw</Object>
|
||||
<Object Type="File" Description="Declaration of permanent variables">Cpu.per</Object>
|
||||
<Object Type="File" Description="IO mapping file">IoMap.iom</Object>
|
||||
<Object Type="File" Description="Runtime configuration file">ArConfig.rtc</Object>
|
||||
<Object Type="File" Description="CPU system configuration">sysconf.br</Object>
|
||||
</Objects>
|
||||
<CpuModules>
|
||||
<CpuModule LocalVariablesMemory="MemoryPool" GeneratePPCode="false" HasNcOperatingSystem="false" Target="SGC" ModuleID="CP0291" ClassID="X20CP0291" GccVersion="V2.95.3" OnlineConfigurationName="Temperöfen">
|
||||
<DefaultTargetMemory Tasks="UserROM" Libraries="UserROM" DataObjects="UserROM" />
|
||||
<DefaultTaskClass Name="Cyclic4" />
|
||||
<IO DefaultTaskClass="Automatic" ArConfigDataModule="false" ArConfigDataModulePath="$(AS_CPU_PATH)\AS\CfgData.br" IoMapDataModule="false" IoMapDataModulePath="$(AS_CPU_PATH)\AS\IomData.br" />
|
||||
<OS Version="2.32.0" Status="V" />
|
||||
<Transfer DownloadMode="Overload" PromptBeforeProject="false" PromptBeforeTask="false" PackedArConfig="false" PackedIoMap="false" IgnoreTargetOnlyObjects="false" GeneratePviTransferList="true" TransferOnlyRelevantChanges="false" AllowWarmRestart="true" IgnoreBrDependencies="false" />
|
||||
<Build />
|
||||
<VC FirmwareVersion="V3.95.6" />
|
||||
<OPC />
|
||||
</CpuModule>
|
||||
</CpuModules>
|
||||
<Communication>
|
||||
<OnlineConfiguration Name="Temperöfen" DeviceType="TCPIP" DeviceParameters="/IF=tcpip /LOPO=11159 /SA=1" ConnectionParameters="/RT=1000 /DAIP=192.168.100.56 /REPO=11159 /ANSL=1" Description="" />
|
||||
</Communication>
|
||||
</PLC>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Physical xmlns="http://br-automation.co.at/AS/Physical">
|
||||
<Configurations>
|
||||
<Configuration Name="Config1" Description="" />
|
||||
</Configurations>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Physical xmlns="http://br-automation.co.at/AS/Physical">
|
||||
<Configurations>
|
||||
<Configuration Name="Config1" Description="" />
|
||||
</Configurations>
|
||||
</Physical>
|
||||
@@ -1,7 +1,7 @@
|
||||
[config]
|
||||
rule: MK_TK_zyklimit1, 4, 60000, 1, 17027
|
||||
rule: MK_TK_zyklimit2, 4, 60000, 1, 17027
|
||||
rule: MK_TK_zyklimit3, 4, 60000, 1, 17027
|
||||
rule: MK_TK_zyklimit4, 4, 60000, 1, 17027
|
||||
rule: MK_RK_SystemTick, 4000, 10000, 1, 17537
|
||||
|
||||
[config]
|
||||
rule: MK_TK_zyklimit1, 4, 60000, 1, 17027
|
||||
rule: MK_TK_zyklimit2, 4, 60000, 1, 17027
|
||||
rule: MK_TK_zyklimit3, 4, 60000, 1, 17027
|
||||
rule: MK_TK_zyklimit4, 4, 60000, 1, 17027
|
||||
rule: MK_RK_SystemTick, 4000, 10000, 1, 17537
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Configuration>
|
||||
<AutomationStudio>
|
||||
<Dependency FromVersion="3.0.90" ToVersion=""/>
|
||||
</AutomationStudio>
|
||||
</Configuration>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Configuration>
|
||||
<AutomationStudio>
|
||||
<Dependency FromVersion="3.0.90" ToVersion=""/>
|
||||
</AutomationStudio>
|
||||
</Configuration>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,445 +1,445 @@
|
||||
; DO NOT EDIT THIS FILE
|
||||
; Offsetdefinitionen f<>r das SYSCONF Modul
|
||||
[Offsets]
|
||||
[HEADER]
|
||||
M_Sync = 0
|
||||
M_ModTyp = 2
|
||||
M_ModInfo = 3
|
||||
M_Name = 4
|
||||
M_GrupId = 12
|
||||
M_NSection = 13
|
||||
M_Laenge = 14
|
||||
M_Password = 18
|
||||
M_Specific = 26
|
||||
M_Reserve1 = 27
|
||||
M_SpoolAdr = 28
|
||||
M_Checksum = 30
|
||||
|
||||
[MB]
|
||||
MK_MB_ModVer = 0
|
||||
MK_MB_ErDatTim = 1
|
||||
MK_MB_ModRev = 6
|
||||
MK_MB_AeDatTim = 7
|
||||
MK_MB_ErUsName = 12
|
||||
MK_MB_AeUsName = 20
|
||||
MK_MB_spsname = 28
|
||||
MK_MB_spspassword = 36
|
||||
MK_MB_PB_gruppe = 44
|
||||
MK_MB_PB_password = 45
|
||||
MK_MB_sysversion = 46
|
||||
MK_MB_PB_count = 50
|
||||
MK_MB_RB_count = 51
|
||||
MK_MB_NW_count = 52
|
||||
MK_MB_SM_count = 53
|
||||
MK_MB_emu_asic2 = 54
|
||||
MK_MB_sys_zykvl = 55
|
||||
MK_MB_systakt = 56
|
||||
MK_MB_as1teiler = 58
|
||||
MK_MB_spsio_flags = 59
|
||||
MK_MB_ssp_basis = 60
|
||||
MK_MB_usp_basis = 61
|
||||
MK_MB_itsk_ssp_basis = 62
|
||||
MK_MB_itsk_usp_basis = 63
|
||||
MK_MB_reserve0 = 64
|
||||
MK_MB_reserve1 = 65
|
||||
MK_MB_reserve2 = 66
|
||||
MK_MB_reserve3 = 67
|
||||
MK_MB_reserve4 = 68
|
||||
MK_MB_reserve5 = 69
|
||||
MK_MB_reserve6 = 70
|
||||
MK_MB_fatal_initdescr = 71
|
||||
MK_MB_sysversion_ext = 72
|
||||
MK_MB_cfg_version = 73
|
||||
MK_MB_cputype = 74
|
||||
MK_MB_mpct = 78
|
||||
MK_MB_psosct = 82
|
||||
MK_MB_probect = 86
|
||||
MK_MB_philect = 90
|
||||
MK_MB_prepcct = 94
|
||||
MK_MB_picct = 98
|
||||
MK_MB_pnact = 102
|
||||
MK_MB_res1 = 106
|
||||
MK_MB_res2 = 110
|
||||
MK_MB_res3 = 114
|
||||
MK_MB_res4 = 118
|
||||
MK_MB_SM_count_OFFSET = 0
|
||||
MK_MB_PB_count_OFFSET = 0
|
||||
MK_MB_PB_count_LAENGE = 6
|
||||
MK_MB_RB_count_OFFSET = 0
|
||||
MK_MB_RB_count_LAENGE = 52
|
||||
MK_MB_SM_count_LAENGE = 1
|
||||
[NW]
|
||||
MK_NW_IX_Liste_OFFSET = 0
|
||||
MK_NW_IXdtanf = 0
|
||||
MK_NW_IXdtend = 2
|
||||
MK_NW_IXstanf = 4
|
||||
MK_NW_IXstend = 6
|
||||
MK_NW_IXvlanf = 8
|
||||
MK_NW_IXvlend = 10
|
||||
MK_NW_IXpianf = 12
|
||||
MK_NW_IXpiend = 14
|
||||
MK_NW_IXdmanf = 16
|
||||
MK_NW_IXdmend = 18
|
||||
MK_NW_IXpvanf = 20
|
||||
MK_NW_IXpvend = 22
|
||||
MK_NW_IXvpanf = 24
|
||||
MK_NW_IXvpend = 26
|
||||
MK_NW_IXvqanf = 28
|
||||
MK_NW_IXvqend = 30
|
||||
MK_NW_IXtkanf = 32
|
||||
MK_NW_IXtkend = 34
|
||||
MK_NW_IXsyanf = 36
|
||||
MK_NW_IXsyend = 38
|
||||
MK_NW_IXssanf = 40
|
||||
MK_NW_IXssend = 42
|
||||
MK_NW_IXutanf = 44
|
||||
MK_NW_IXutend = 46
|
||||
MK_NW_IXgranf = 48
|
||||
MK_NW_IXgrend = 50
|
||||
MK_NW_IXtnanf = 52
|
||||
MK_NW_IXtnend = 54
|
||||
MK_NW_IXspanf = 56
|
||||
MK_NW_IXspend = 58
|
||||
MK_NW_IXresanf = 60
|
||||
MK_NW_IXresend = 62
|
||||
MK_NW_IX_Liste_LAENGE = 64
|
||||
[PB]
|
||||
MK_PB_KonfigListe_OFFSET = 0
|
||||
MK_PB_moduladr = 0
|
||||
MK_PB_as2ctrl = 2
|
||||
MK_PB_repeat = 4
|
||||
MK_PB_reserve = 5
|
||||
MK_PB_KonfigListe_LAENGE = 6
|
||||
[PS]
|
||||
MK_PS_psoscode = 0
|
||||
MK_PS_rn0sadr = 4
|
||||
MK_PS_rn0len = 8
|
||||
MK_PS_rn0usize = 12
|
||||
MK_PS_ntask = 16
|
||||
MK_PS_nqueue = 20
|
||||
MK_PS_nsema4 = 24
|
||||
MK_PS_nmsgbuf = 28
|
||||
MK_PS_ntimer = 32
|
||||
MK_PS_nlocobj = 36
|
||||
MK_PS_ticks2sec = 40
|
||||
MK_PS_ticks2slice = 44
|
||||
MK_PS_nio = 48
|
||||
MK_PS_iojtable = 52
|
||||
MK_PS_sysstk = 56
|
||||
MK_PS_rootsadr = 60
|
||||
MK_PS_rootsstk = 64
|
||||
MK_PS_rootustk = 68
|
||||
MK_PS_rootmode = 72
|
||||
MK_PS_startco = 76
|
||||
MK_PS_deleteco = 80
|
||||
MK_PS_switchco = 84
|
||||
MK_PS_fatal = 88
|
||||
MK_PS_reserve0 = 92
|
||||
MK_PS_reserve1 = 96
|
||||
MK_PS_reserve2 = 100
|
||||
MK_PS_reserve3 = 104
|
||||
MK_PS_reserve4 = 108
|
||||
MK_PS_reserve5 = 112
|
||||
MK_PS_reserve6 = 116
|
||||
MK_PS_reserve7 = 120
|
||||
MK_PS_reserve8 = 124
|
||||
[RB]
|
||||
MK_RB_KonfigListe_OFFSET = 0
|
||||
MK_RB_moduladr = 0
|
||||
MK_RB_Tidle = 2
|
||||
MK_RB_Thear = 3
|
||||
MK_RB_Blocklen = 4
|
||||
MK_RB_baud = 5
|
||||
MK_RB_Tperiod = 6
|
||||
MK_RB_sstk_zyklus = 7
|
||||
MK_RB_Tredun = 8
|
||||
MK_RB_TimeoutIO = 9
|
||||
MK_RB_Tslot = 10
|
||||
MK_RB_Frepeat = 11
|
||||
MK_RB_Chkrepeat = 12
|
||||
MK_RB_RegLen = 13
|
||||
MK_RB_MXStation = 14
|
||||
MK_RB_RedunRepeat = 15
|
||||
MK_RB_sl_mode = 16
|
||||
MK_RB_Reserve = 17
|
||||
MK_RB_Slave_Timeout = 18
|
||||
MK_RB_Slave_Nr0 = 20
|
||||
MK_RB_Slave_Nr1 = 21
|
||||
MK_RB_Slave_Nr2 = 22
|
||||
MK_RB_Slave_Nr3 = 23
|
||||
MK_RB_Slave_Nr4 = 24
|
||||
MK_RB_Slave_Nr5 = 25
|
||||
MK_RB_Slave_Nr6 = 26
|
||||
MK_RB_Slave_Nr7 = 27
|
||||
MK_RB_Slave_Nr8 = 28
|
||||
MK_RB_Slave_Nr9 = 29
|
||||
MK_RB_Slave_Nr10 = 30
|
||||
MK_RB_Slave_Nr11 = 31
|
||||
MK_RB_Slave_Nr12 = 32
|
||||
MK_RB_Slave_Nr13 = 33
|
||||
MK_RB_Slave_Nr14 = 34
|
||||
MK_RB_Slave_Nr15 = 35
|
||||
MK_RB_Slave_Nr16 = 36
|
||||
MK_RB_Slave_Nr17 = 37
|
||||
MK_RB_Slave_Nr18 = 38
|
||||
MK_RB_Slave_Nr19 = 39
|
||||
MK_RB_Slave_Nr20 = 40
|
||||
MK_RB_Slave_Nr21 = 41
|
||||
MK_RB_Slave_Nr22 = 42
|
||||
MK_RB_Slave_Nr23 = 43
|
||||
MK_RB_Slave_Nr24 = 44
|
||||
MK_RB_Slave_Nr25 = 45
|
||||
MK_RB_Slave_Nr26 = 46
|
||||
MK_RB_Slave_Nr27 = 47
|
||||
MK_RB_Slave_Nr28 = 48
|
||||
MK_RB_Slave_Nr29 = 49
|
||||
MK_RB_Slave_Nr30 = 50
|
||||
MK_RB_Slave_Nr31 = 51
|
||||
MK_RB_KonfigListe_LAENGE = 52
|
||||
[RK]
|
||||
MK_RK_NMXVBLI = 0
|
||||
MK_RK_NMXOPVBNR = 2
|
||||
MK_RK_NMERRTAB = 4
|
||||
MK_RK_cache_param = 6
|
||||
MK_RK_max_vb_parallel = 7
|
||||
MK_RK_NUMTK = 8
|
||||
MK_RK_TKmode = 9
|
||||
MK_RK_TKsysstack = 10
|
||||
MK_RK_TKusrstack = 12
|
||||
MK_RK_TimeOUT_DN = 14
|
||||
MK_RK_reserve_2 = 15
|
||||
MK_RK_ANAglobal = 16
|
||||
MK_RK_DIGglobal = 18
|
||||
MK_RK_ANApermanent = 20
|
||||
MK_RK_DIGpermanent = 22
|
||||
MK_RK_reserve0 = 24
|
||||
MK_RK_reserve1 = 28
|
||||
MK_RK_urinit_wait = 32
|
||||
MK_RK_init_wait = 33
|
||||
MK_RK_NUMEXC = 34
|
||||
MK_RK_NUMIRQ = 35
|
||||
MK_RK_NUMSS = 36
|
||||
MK_RK_SVWrecnum = 37
|
||||
MK_RK_memvwtyp = 38
|
||||
MK_RK_mempercent = 39
|
||||
MK_RK_SVWliste_LAENGE = 2
|
||||
MK_RK_NUMTK_LAENGE = 16
|
||||
MK_RK_Taskklasse_LAENGE = 16
|
||||
MK_RK_SSTaskklasse_OFFSET = 0
|
||||
MK_RK_SSTaskklasse_LAENGE = 10
|
||||
MK_RK_NUMTK_OFFSET = 0
|
||||
MK_RK_Taskklasse_OFFSET = 0
|
||||
;spezielle Offsets
|
||||
MK_RK_FIXRAM = 49
|
||||
MK_RK_SystemTick = 28
|
||||
[SK]
|
||||
MK_SK_NMXTSKKL = 0
|
||||
MK_SK_NMXSPSTSK = 2
|
||||
MK_SK_NMXSSTSK = 4
|
||||
MK_SK_NMXUTSK = 6
|
||||
MK_SK_NMXSYSTSK = 8
|
||||
MK_SK_NMXIOTAB = 10
|
||||
MK_SK_NMXSCHFTAB = 12
|
||||
MK_SK_NMXDFORCE = 14
|
||||
MK_SK_NMXCFORCE = 16
|
||||
MK_SK_NMXPVTABEY = 18
|
||||
MK_SK_NMXBRMODUL = 20
|
||||
MK_SK_NMXAVT = 22
|
||||
MK_SK_NMXEVLI = 24
|
||||
MK_SK_NMXSAPLI = 26
|
||||
MK_SK_NMXLVL = 28
|
||||
MK_SK_NMXPVL = 30
|
||||
MK_SK_NMXINCOPY = 32
|
||||
MK_SK_NMXOUTCOPY = 34
|
||||
MK_SK_NMXMEMTAB = 36
|
||||
MK_SK_NMX_SBTAB = 38
|
||||
MK_SK_NMXDEVTAB = 40
|
||||
MK_SK_NMXLOGVB = 42
|
||||
MK_SK_NMXBTCTRL = 44
|
||||
MK_SK_reserve = 46
|
||||
[SM]
|
||||
MK_SM_Auftragsliste_OFFSET = 0
|
||||
MK_SM_auftrag = 0
|
||||
MK_SM_Auftragsliste_LAENGE = 1
|
||||
[SK]
|
||||
MK_SK_NMXSSTSK_OFFSET = 0
|
||||
MK_SK_NMXSSTSK_LAENGE = 10
|
||||
[SS]
|
||||
MK_SS_zyklimit0 = 0
|
||||
MK_SS_timerid = 2
|
||||
MK_SS_irlevel = 3
|
||||
MK_SS_stacksize0 = 4
|
||||
MK_SS_flags = 6
|
||||
MK_SS_ustacksize0 = 7
|
||||
MK_SS_reserve0 = 8
|
||||
MK_SS_reserve1 = 9
|
||||
;SS Stackgr<67><72>en MK_RK_SSTaskklasse_LAENGE = 10
|
||||
MK_SS_ustacksize0 = 7
|
||||
MK_SS_ustacksize1 = 17
|
||||
MK_SS_ustacksize2 = 27
|
||||
MK_SS_ustacksize3 = 37
|
||||
MK_SS_ustacksize4 = 47
|
||||
MK_SS_ustacksize5 = 57
|
||||
MK_SS_ustacksize6 = 67
|
||||
MK_SS_ustacksize7 = 77
|
||||
MK_SS_ustacksize8 = 87
|
||||
MK_SS_ustacksize9 = 97
|
||||
MK_SS_stacksize0 = 4
|
||||
MK_SS_stacksize1 = 14
|
||||
MK_SS_stacksize2 = 24
|
||||
MK_SS_stacksize3 = 34
|
||||
MK_SS_stacksize4 = 44
|
||||
MK_SS_stacksize5 = 54
|
||||
MK_SS_stacksize6 = 64
|
||||
MK_SS_stacksize7 = 74
|
||||
MK_SS_stacksize8 = 84
|
||||
MK_SS_stacksize9 = 94
|
||||
;SS zyklimit
|
||||
MK_SS_zyklimit0 = 0
|
||||
MK_SS_zyklimit1 = 10
|
||||
MK_SS_zyklimit2 = 20
|
||||
MK_SS_zyklimit3 = 30
|
||||
MK_SS_zyklimit4 = 40
|
||||
MK_SS_zyklimit5 = 50
|
||||
MK_SS_zyklimit6 = 60
|
||||
MK_SS_zyklimit7 = 70
|
||||
MK_SS_zyklimit8 = 80
|
||||
MK_SS_zyklimit9 = 90
|
||||
[TK]
|
||||
MK_TK_zyklimit1 = 0
|
||||
MK_TK_zyklimit2 = 16
|
||||
MK_TK_zyklimit3 = 32
|
||||
MK_TK_zyklimit4 = 48
|
||||
MK_TK_mxzyklimit1 = 2
|
||||
MK_TK_mxzyklimit2 = 18
|
||||
MK_TK_mxzyklimit3 = 34
|
||||
MK_TK_mxzyklimit4 = 50
|
||||
MK_TK_digdatenlng1 = 4
|
||||
MK_TK_digdatenlng2 = 20
|
||||
MK_TK_digdatenlng3 = 36
|
||||
MK_TK_digdatenlng4 = 52
|
||||
MK_TK_anadatenlng1 = 6
|
||||
MK_TK_anadatenlng2 = 22
|
||||
MK_TK_anadatenlng3 = 38
|
||||
MK_TK_anadatenlng4 = 54
|
||||
MK_TK_mxusedspsio = 8
|
||||
MK_TK_timer = 10
|
||||
MK_TK_reserve = 12
|
||||
MK_TK_RIOswitch = 14
|
||||
MK_TK_flags1 = 15
|
||||
MK_TK_flags2 = 31
|
||||
MK_TK_flags3 = 47
|
||||
MK_TK_flags4 = 63
|
||||
MK_TK_IdleTime1 = 12
|
||||
MK_TK_IdleTime2 = 28
|
||||
MK_TK_IdleTime3 = 44
|
||||
MK_TK_IdleTime4 = 60
|
||||
|
||||
[CPUs]
|
||||
CPU1=x2t:X20CP0201;c,@cfx20cp0201.br,X20, 16.00,X20CP0201,ID 1
|
||||
CPU2=x2t:X20CP0291;c,@cfx20cp0291.br,X20, 16.00,X20CP0291,ID 2
|
||||
CPU3=x2t:X20CP0292;c,@cfx20cp0292.br,X20, 16.00,X20CP0292,ID 3
|
||||
CPU4=x2t:X20XC0201;c,@cfx20xc0201.br,X20, 16.00,X20XC0201,ID 4
|
||||
CPU5=x2t:X20XC0202;c,@cfx20xc0202.br,X20, 16.00,X20XC0202,ID 5
|
||||
CPU6=x2t:X20XC0292;c,@cfx20xc0292.br,X20, 16.00,X20XC0292,ID 6
|
||||
|
||||
; Rules for ALL
|
||||
[rules]
|
||||
rule: MK_RK_max_vb_parallel,1, 16, 1, 17037
|
||||
rule: MK_RK_ANAglobal, 0, 32767, 1, 17032
|
||||
rule: MK_RK_DIGglobal, 0, 16383, 1, 17038
|
||||
rule: MK_SK_NMXBRMODUL, 20, 1000, 1, 17007
|
||||
rule: MK_SK_NMXSYSTSK, 10, 100, 1, 17008
|
||||
rule: MK_TK_zyklimit1, 2, 60000, 1, 17026
|
||||
rule: MK_TK_zyklimit2, 2, 60000, 1, 17026
|
||||
rule: MK_TK_zyklimit3, 2, 60000, 1, 17026
|
||||
rule: MK_TK_zyklimit4, 2, 60000, 1, 17026
|
||||
rule: MK_TK_mxzyklimit1, 0, 60000, 1, 17033
|
||||
rule: MK_TK_mxzyklimit2, 0, 60000, 1, 17033
|
||||
rule: MK_TK_mxzyklimit3, 0, 60000, 1, 17033
|
||||
rule: MK_TK_mxzyklimit4, 0, 60000, 1, 17033
|
||||
rule: MK_RK_TKusrstack, 512, 65535, 1, 17010
|
||||
rule: MK_RK_TKsysstack, 640, 65535, 1, 17011
|
||||
rule: MK_RK_SystemTick, 2000, 10000, 1, 17536
|
||||
rule: MK_SK_NMXDEVTAB, 6, 50, 1, 17016
|
||||
rule: MK_SK_NMXAVT, 50, 5461, 1, 17017
|
||||
rule: MK_PS_nsema4, 20, 150, 1, 17018
|
||||
rule: MK_PS_nqueue, 8, 100, 1, 17019
|
||||
rule: MK_PS_ntimer, 6, 25, 1, 17039
|
||||
rule: MK_PS_rootsstk, 1536, 16384, 1, 17040
|
||||
rule: MK_TK_IdleTime1, 0, 20000, 1, 17535
|
||||
rule: MK_TK_IdleTime2, 0, 20000, 1, 17535
|
||||
rule: MK_TK_IdleTime3, 0, 20000, 1, 17535
|
||||
rule: MK_TK_IdleTime4, 0, 20000, 1, 17535
|
||||
rule: MK_PS_rn0len, 98304, 9048576,1, 17534
|
||||
|
||||
[EndDefault]
|
||||
|
||||
; Error messages
|
||||
[001]
|
||||
17007=minimal 20, maximal 1000 B&R modules!
|
||||
17008=minimal 10, maximal 100 System tasks!
|
||||
17010=User stack minimal 512Byte maximal 64kByte!
|
||||
17011=System stack minimal 640Byte maximal 64kByte!
|
||||
17016=Device drivers minimal 6 maximal 50!
|
||||
17017=AVT entries minimal 50 maximal 5461!
|
||||
17018=Semaphor minimal 20 maximal 100!
|
||||
17019=Queues minimal 8 maximal 100!
|
||||
17026=Cycle time from 2 to 60000ms!
|
||||
17027=Cycle time from 4 to 60000ms!
|
||||
17032=Analog global variables must be smaller than 32kByte!
|
||||
17033=Time value from 0 to 60000ms!
|
||||
17037=One upto sixteen connections allowed!
|
||||
17038=Digital global variables must be smaller than 16kBit!
|
||||
17039=Timer minimal 6, maximum 25!
|
||||
17040=Minimum stacksize of root task 1536 bytes, maximum stacksize 16384 bytes!
|
||||
17534=TMP-RAM/OS Area from 96kB to RAMSIZE-256kB!
|
||||
17535=Taskclass idle time from 0 to 20000<30>s!
|
||||
17536=System tick from 2 to 10ms!
|
||||
17537=System tick from 4 to 10ms!
|
||||
|
||||
[049]
|
||||
17007=minimal 20, maximal 1000 B&R Module!
|
||||
17008=minimal 10, maximal 100 Systemtasks!
|
||||
17010=User-Stack minimal 512Byte maximal 64kByte!
|
||||
17011=System-Stack minimal 640Byte maximal 64kByte!
|
||||
17016=Ger<EFBFBD>tetreiber minimal 6 maximal 50!
|
||||
17017=AVT Eintr<74>ge minimal 50 maximal 5461!
|
||||
17018=Semaphoren minimal 20 maximal 100!
|
||||
17019=Queues minimal 8 maximal 100!
|
||||
17026=Zyklusdauer von 2 bis 60000ms!
|
||||
17027=Zyklusdauer von 4 bis 60000ms!
|
||||
17032=Analoge globale Merker m<>ssen kleiner als 32kByte sein!
|
||||
17033=Zeitwert von 0 bis 60000ms!
|
||||
17037=Ein bis sechzehn Verbindungen erlaubt!
|
||||
17038=Digitale globale Merker m<>ssen kleiner als 16kBit sein!
|
||||
17039=Timer minimal 6, maximal 25!
|
||||
17040=Stack-Gr<47><72>e der Root-Task minimal 1536 Byte, maximal 16384 Byte!
|
||||
17534=TMP-RAM/OS Area von 96kB bis RAMSIZE-256kB!
|
||||
17535=Restzeit der Taskklassen von 0 bis 20000<30>s!
|
||||
17536=System Takt von 2 bis 10ms!
|
||||
17537=System Takt von 4 bis 10ms!
|
||||
|
||||
[033]
|
||||
17007=Minimum 20, maximum 1000<30>modules B&R<>!
|
||||
17008=Minimum 10, maximum 100<30>t<EFBFBD>ches syst<73>mes !
|
||||
17010=Pile utilisateur<75>minimum 512 octets maximum 64 k-octets<74>!
|
||||
17011=Pile utilisateur<75>minimum 640 octets maximum 64 k-octets<74>!
|
||||
17016=Driver d<>appareil minimum 6 maximum 50<35>!
|
||||
17017=Entr<EFBFBD>es AVT minimum 50 maximum 5461<36>!
|
||||
17018=S<EFBFBD>maphores minimum 20<32>maximum 100 !
|
||||
17019=Files d<>attente minimum 8 maximum 100<30>!
|
||||
17026=Temps de cycle de 2 <20> 60000 ms!
|
||||
17027=Temps de cycle de 4 <20> 60000 ms!
|
||||
17032=Les variables globales analogiques doivent <20>tre plus petites que 32 ko<6B>!
|
||||
17033=Valeur de temps de 0 <20> 60000 ms<6D>!
|
||||
17037=Une <20> seize liaisons autoris<69>es !
|
||||
17038=Les variables globales digitales doivent <20>tre plus petites que 16 ko<6B>!
|
||||
17039=Timer minimum 6, maximum 25<32>!
|
||||
17040=Taille de pile pour t<>che racine minimum 1536 octets, maximum 16384 octets<74>!
|
||||
17534=TMP-RAM/OS Area dans la zone de 96 <20> RAMSIZE-256 ko !
|
||||
17535=Temps d<>inactivit<69> de classe de t<>ches de 0 <20> 20000 <20>s<EFBFBD>!
|
||||
17536=Horloge syst<73>me de 2 <20> 10 ms !
|
||||
17537=Horloge syst<73>me de 4 <20> 10 ms !
|
||||
|
||||
|
||||
; DO NOT EDIT THIS FILE
|
||||
; Offsetdefinitionen f<>r das SYSCONF Modul
|
||||
[Offsets]
|
||||
[HEADER]
|
||||
M_Sync = 0
|
||||
M_ModTyp = 2
|
||||
M_ModInfo = 3
|
||||
M_Name = 4
|
||||
M_GrupId = 12
|
||||
M_NSection = 13
|
||||
M_Laenge = 14
|
||||
M_Password = 18
|
||||
M_Specific = 26
|
||||
M_Reserve1 = 27
|
||||
M_SpoolAdr = 28
|
||||
M_Checksum = 30
|
||||
|
||||
[MB]
|
||||
MK_MB_ModVer = 0
|
||||
MK_MB_ErDatTim = 1
|
||||
MK_MB_ModRev = 6
|
||||
MK_MB_AeDatTim = 7
|
||||
MK_MB_ErUsName = 12
|
||||
MK_MB_AeUsName = 20
|
||||
MK_MB_spsname = 28
|
||||
MK_MB_spspassword = 36
|
||||
MK_MB_PB_gruppe = 44
|
||||
MK_MB_PB_password = 45
|
||||
MK_MB_sysversion = 46
|
||||
MK_MB_PB_count = 50
|
||||
MK_MB_RB_count = 51
|
||||
MK_MB_NW_count = 52
|
||||
MK_MB_SM_count = 53
|
||||
MK_MB_emu_asic2 = 54
|
||||
MK_MB_sys_zykvl = 55
|
||||
MK_MB_systakt = 56
|
||||
MK_MB_as1teiler = 58
|
||||
MK_MB_spsio_flags = 59
|
||||
MK_MB_ssp_basis = 60
|
||||
MK_MB_usp_basis = 61
|
||||
MK_MB_itsk_ssp_basis = 62
|
||||
MK_MB_itsk_usp_basis = 63
|
||||
MK_MB_reserve0 = 64
|
||||
MK_MB_reserve1 = 65
|
||||
MK_MB_reserve2 = 66
|
||||
MK_MB_reserve3 = 67
|
||||
MK_MB_reserve4 = 68
|
||||
MK_MB_reserve5 = 69
|
||||
MK_MB_reserve6 = 70
|
||||
MK_MB_fatal_initdescr = 71
|
||||
MK_MB_sysversion_ext = 72
|
||||
MK_MB_cfg_version = 73
|
||||
MK_MB_cputype = 74
|
||||
MK_MB_mpct = 78
|
||||
MK_MB_psosct = 82
|
||||
MK_MB_probect = 86
|
||||
MK_MB_philect = 90
|
||||
MK_MB_prepcct = 94
|
||||
MK_MB_picct = 98
|
||||
MK_MB_pnact = 102
|
||||
MK_MB_res1 = 106
|
||||
MK_MB_res2 = 110
|
||||
MK_MB_res3 = 114
|
||||
MK_MB_res4 = 118
|
||||
MK_MB_SM_count_OFFSET = 0
|
||||
MK_MB_PB_count_OFFSET = 0
|
||||
MK_MB_PB_count_LAENGE = 6
|
||||
MK_MB_RB_count_OFFSET = 0
|
||||
MK_MB_RB_count_LAENGE = 52
|
||||
MK_MB_SM_count_LAENGE = 1
|
||||
[NW]
|
||||
MK_NW_IX_Liste_OFFSET = 0
|
||||
MK_NW_IXdtanf = 0
|
||||
MK_NW_IXdtend = 2
|
||||
MK_NW_IXstanf = 4
|
||||
MK_NW_IXstend = 6
|
||||
MK_NW_IXvlanf = 8
|
||||
MK_NW_IXvlend = 10
|
||||
MK_NW_IXpianf = 12
|
||||
MK_NW_IXpiend = 14
|
||||
MK_NW_IXdmanf = 16
|
||||
MK_NW_IXdmend = 18
|
||||
MK_NW_IXpvanf = 20
|
||||
MK_NW_IXpvend = 22
|
||||
MK_NW_IXvpanf = 24
|
||||
MK_NW_IXvpend = 26
|
||||
MK_NW_IXvqanf = 28
|
||||
MK_NW_IXvqend = 30
|
||||
MK_NW_IXtkanf = 32
|
||||
MK_NW_IXtkend = 34
|
||||
MK_NW_IXsyanf = 36
|
||||
MK_NW_IXsyend = 38
|
||||
MK_NW_IXssanf = 40
|
||||
MK_NW_IXssend = 42
|
||||
MK_NW_IXutanf = 44
|
||||
MK_NW_IXutend = 46
|
||||
MK_NW_IXgranf = 48
|
||||
MK_NW_IXgrend = 50
|
||||
MK_NW_IXtnanf = 52
|
||||
MK_NW_IXtnend = 54
|
||||
MK_NW_IXspanf = 56
|
||||
MK_NW_IXspend = 58
|
||||
MK_NW_IXresanf = 60
|
||||
MK_NW_IXresend = 62
|
||||
MK_NW_IX_Liste_LAENGE = 64
|
||||
[PB]
|
||||
MK_PB_KonfigListe_OFFSET = 0
|
||||
MK_PB_moduladr = 0
|
||||
MK_PB_as2ctrl = 2
|
||||
MK_PB_repeat = 4
|
||||
MK_PB_reserve = 5
|
||||
MK_PB_KonfigListe_LAENGE = 6
|
||||
[PS]
|
||||
MK_PS_psoscode = 0
|
||||
MK_PS_rn0sadr = 4
|
||||
MK_PS_rn0len = 8
|
||||
MK_PS_rn0usize = 12
|
||||
MK_PS_ntask = 16
|
||||
MK_PS_nqueue = 20
|
||||
MK_PS_nsema4 = 24
|
||||
MK_PS_nmsgbuf = 28
|
||||
MK_PS_ntimer = 32
|
||||
MK_PS_nlocobj = 36
|
||||
MK_PS_ticks2sec = 40
|
||||
MK_PS_ticks2slice = 44
|
||||
MK_PS_nio = 48
|
||||
MK_PS_iojtable = 52
|
||||
MK_PS_sysstk = 56
|
||||
MK_PS_rootsadr = 60
|
||||
MK_PS_rootsstk = 64
|
||||
MK_PS_rootustk = 68
|
||||
MK_PS_rootmode = 72
|
||||
MK_PS_startco = 76
|
||||
MK_PS_deleteco = 80
|
||||
MK_PS_switchco = 84
|
||||
MK_PS_fatal = 88
|
||||
MK_PS_reserve0 = 92
|
||||
MK_PS_reserve1 = 96
|
||||
MK_PS_reserve2 = 100
|
||||
MK_PS_reserve3 = 104
|
||||
MK_PS_reserve4 = 108
|
||||
MK_PS_reserve5 = 112
|
||||
MK_PS_reserve6 = 116
|
||||
MK_PS_reserve7 = 120
|
||||
MK_PS_reserve8 = 124
|
||||
[RB]
|
||||
MK_RB_KonfigListe_OFFSET = 0
|
||||
MK_RB_moduladr = 0
|
||||
MK_RB_Tidle = 2
|
||||
MK_RB_Thear = 3
|
||||
MK_RB_Blocklen = 4
|
||||
MK_RB_baud = 5
|
||||
MK_RB_Tperiod = 6
|
||||
MK_RB_sstk_zyklus = 7
|
||||
MK_RB_Tredun = 8
|
||||
MK_RB_TimeoutIO = 9
|
||||
MK_RB_Tslot = 10
|
||||
MK_RB_Frepeat = 11
|
||||
MK_RB_Chkrepeat = 12
|
||||
MK_RB_RegLen = 13
|
||||
MK_RB_MXStation = 14
|
||||
MK_RB_RedunRepeat = 15
|
||||
MK_RB_sl_mode = 16
|
||||
MK_RB_Reserve = 17
|
||||
MK_RB_Slave_Timeout = 18
|
||||
MK_RB_Slave_Nr0 = 20
|
||||
MK_RB_Slave_Nr1 = 21
|
||||
MK_RB_Slave_Nr2 = 22
|
||||
MK_RB_Slave_Nr3 = 23
|
||||
MK_RB_Slave_Nr4 = 24
|
||||
MK_RB_Slave_Nr5 = 25
|
||||
MK_RB_Slave_Nr6 = 26
|
||||
MK_RB_Slave_Nr7 = 27
|
||||
MK_RB_Slave_Nr8 = 28
|
||||
MK_RB_Slave_Nr9 = 29
|
||||
MK_RB_Slave_Nr10 = 30
|
||||
MK_RB_Slave_Nr11 = 31
|
||||
MK_RB_Slave_Nr12 = 32
|
||||
MK_RB_Slave_Nr13 = 33
|
||||
MK_RB_Slave_Nr14 = 34
|
||||
MK_RB_Slave_Nr15 = 35
|
||||
MK_RB_Slave_Nr16 = 36
|
||||
MK_RB_Slave_Nr17 = 37
|
||||
MK_RB_Slave_Nr18 = 38
|
||||
MK_RB_Slave_Nr19 = 39
|
||||
MK_RB_Slave_Nr20 = 40
|
||||
MK_RB_Slave_Nr21 = 41
|
||||
MK_RB_Slave_Nr22 = 42
|
||||
MK_RB_Slave_Nr23 = 43
|
||||
MK_RB_Slave_Nr24 = 44
|
||||
MK_RB_Slave_Nr25 = 45
|
||||
MK_RB_Slave_Nr26 = 46
|
||||
MK_RB_Slave_Nr27 = 47
|
||||
MK_RB_Slave_Nr28 = 48
|
||||
MK_RB_Slave_Nr29 = 49
|
||||
MK_RB_Slave_Nr30 = 50
|
||||
MK_RB_Slave_Nr31 = 51
|
||||
MK_RB_KonfigListe_LAENGE = 52
|
||||
[RK]
|
||||
MK_RK_NMXVBLI = 0
|
||||
MK_RK_NMXOPVBNR = 2
|
||||
MK_RK_NMERRTAB = 4
|
||||
MK_RK_cache_param = 6
|
||||
MK_RK_max_vb_parallel = 7
|
||||
MK_RK_NUMTK = 8
|
||||
MK_RK_TKmode = 9
|
||||
MK_RK_TKsysstack = 10
|
||||
MK_RK_TKusrstack = 12
|
||||
MK_RK_TimeOUT_DN = 14
|
||||
MK_RK_reserve_2 = 15
|
||||
MK_RK_ANAglobal = 16
|
||||
MK_RK_DIGglobal = 18
|
||||
MK_RK_ANApermanent = 20
|
||||
MK_RK_DIGpermanent = 22
|
||||
MK_RK_reserve0 = 24
|
||||
MK_RK_reserve1 = 28
|
||||
MK_RK_urinit_wait = 32
|
||||
MK_RK_init_wait = 33
|
||||
MK_RK_NUMEXC = 34
|
||||
MK_RK_NUMIRQ = 35
|
||||
MK_RK_NUMSS = 36
|
||||
MK_RK_SVWrecnum = 37
|
||||
MK_RK_memvwtyp = 38
|
||||
MK_RK_mempercent = 39
|
||||
MK_RK_SVWliste_LAENGE = 2
|
||||
MK_RK_NUMTK_LAENGE = 16
|
||||
MK_RK_Taskklasse_LAENGE = 16
|
||||
MK_RK_SSTaskklasse_OFFSET = 0
|
||||
MK_RK_SSTaskklasse_LAENGE = 10
|
||||
MK_RK_NUMTK_OFFSET = 0
|
||||
MK_RK_Taskklasse_OFFSET = 0
|
||||
;spezielle Offsets
|
||||
MK_RK_FIXRAM = 49
|
||||
MK_RK_SystemTick = 28
|
||||
[SK]
|
||||
MK_SK_NMXTSKKL = 0
|
||||
MK_SK_NMXSPSTSK = 2
|
||||
MK_SK_NMXSSTSK = 4
|
||||
MK_SK_NMXUTSK = 6
|
||||
MK_SK_NMXSYSTSK = 8
|
||||
MK_SK_NMXIOTAB = 10
|
||||
MK_SK_NMXSCHFTAB = 12
|
||||
MK_SK_NMXDFORCE = 14
|
||||
MK_SK_NMXCFORCE = 16
|
||||
MK_SK_NMXPVTABEY = 18
|
||||
MK_SK_NMXBRMODUL = 20
|
||||
MK_SK_NMXAVT = 22
|
||||
MK_SK_NMXEVLI = 24
|
||||
MK_SK_NMXSAPLI = 26
|
||||
MK_SK_NMXLVL = 28
|
||||
MK_SK_NMXPVL = 30
|
||||
MK_SK_NMXINCOPY = 32
|
||||
MK_SK_NMXOUTCOPY = 34
|
||||
MK_SK_NMXMEMTAB = 36
|
||||
MK_SK_NMX_SBTAB = 38
|
||||
MK_SK_NMXDEVTAB = 40
|
||||
MK_SK_NMXLOGVB = 42
|
||||
MK_SK_NMXBTCTRL = 44
|
||||
MK_SK_reserve = 46
|
||||
[SM]
|
||||
MK_SM_Auftragsliste_OFFSET = 0
|
||||
MK_SM_auftrag = 0
|
||||
MK_SM_Auftragsliste_LAENGE = 1
|
||||
[SK]
|
||||
MK_SK_NMXSSTSK_OFFSET = 0
|
||||
MK_SK_NMXSSTSK_LAENGE = 10
|
||||
[SS]
|
||||
MK_SS_zyklimit0 = 0
|
||||
MK_SS_timerid = 2
|
||||
MK_SS_irlevel = 3
|
||||
MK_SS_stacksize0 = 4
|
||||
MK_SS_flags = 6
|
||||
MK_SS_ustacksize0 = 7
|
||||
MK_SS_reserve0 = 8
|
||||
MK_SS_reserve1 = 9
|
||||
;SS Stackgr<67><72>en MK_RK_SSTaskklasse_LAENGE = 10
|
||||
MK_SS_ustacksize0 = 7
|
||||
MK_SS_ustacksize1 = 17
|
||||
MK_SS_ustacksize2 = 27
|
||||
MK_SS_ustacksize3 = 37
|
||||
MK_SS_ustacksize4 = 47
|
||||
MK_SS_ustacksize5 = 57
|
||||
MK_SS_ustacksize6 = 67
|
||||
MK_SS_ustacksize7 = 77
|
||||
MK_SS_ustacksize8 = 87
|
||||
MK_SS_ustacksize9 = 97
|
||||
MK_SS_stacksize0 = 4
|
||||
MK_SS_stacksize1 = 14
|
||||
MK_SS_stacksize2 = 24
|
||||
MK_SS_stacksize3 = 34
|
||||
MK_SS_stacksize4 = 44
|
||||
MK_SS_stacksize5 = 54
|
||||
MK_SS_stacksize6 = 64
|
||||
MK_SS_stacksize7 = 74
|
||||
MK_SS_stacksize8 = 84
|
||||
MK_SS_stacksize9 = 94
|
||||
;SS zyklimit
|
||||
MK_SS_zyklimit0 = 0
|
||||
MK_SS_zyklimit1 = 10
|
||||
MK_SS_zyklimit2 = 20
|
||||
MK_SS_zyklimit3 = 30
|
||||
MK_SS_zyklimit4 = 40
|
||||
MK_SS_zyklimit5 = 50
|
||||
MK_SS_zyklimit6 = 60
|
||||
MK_SS_zyklimit7 = 70
|
||||
MK_SS_zyklimit8 = 80
|
||||
MK_SS_zyklimit9 = 90
|
||||
[TK]
|
||||
MK_TK_zyklimit1 = 0
|
||||
MK_TK_zyklimit2 = 16
|
||||
MK_TK_zyklimit3 = 32
|
||||
MK_TK_zyklimit4 = 48
|
||||
MK_TK_mxzyklimit1 = 2
|
||||
MK_TK_mxzyklimit2 = 18
|
||||
MK_TK_mxzyklimit3 = 34
|
||||
MK_TK_mxzyklimit4 = 50
|
||||
MK_TK_digdatenlng1 = 4
|
||||
MK_TK_digdatenlng2 = 20
|
||||
MK_TK_digdatenlng3 = 36
|
||||
MK_TK_digdatenlng4 = 52
|
||||
MK_TK_anadatenlng1 = 6
|
||||
MK_TK_anadatenlng2 = 22
|
||||
MK_TK_anadatenlng3 = 38
|
||||
MK_TK_anadatenlng4 = 54
|
||||
MK_TK_mxusedspsio = 8
|
||||
MK_TK_timer = 10
|
||||
MK_TK_reserve = 12
|
||||
MK_TK_RIOswitch = 14
|
||||
MK_TK_flags1 = 15
|
||||
MK_TK_flags2 = 31
|
||||
MK_TK_flags3 = 47
|
||||
MK_TK_flags4 = 63
|
||||
MK_TK_IdleTime1 = 12
|
||||
MK_TK_IdleTime2 = 28
|
||||
MK_TK_IdleTime3 = 44
|
||||
MK_TK_IdleTime4 = 60
|
||||
|
||||
[CPUs]
|
||||
CPU1=x2t:X20CP0201;c,@cfx20cp0201.br,X20, 16.00,X20CP0201,ID 1
|
||||
CPU2=x2t:X20CP0291;c,@cfx20cp0291.br,X20, 16.00,X20CP0291,ID 2
|
||||
CPU3=x2t:X20CP0292;c,@cfx20cp0292.br,X20, 16.00,X20CP0292,ID 3
|
||||
CPU4=x2t:X20XC0201;c,@cfx20xc0201.br,X20, 16.00,X20XC0201,ID 4
|
||||
CPU5=x2t:X20XC0202;c,@cfx20xc0202.br,X20, 16.00,X20XC0202,ID 5
|
||||
CPU6=x2t:X20XC0292;c,@cfx20xc0292.br,X20, 16.00,X20XC0292,ID 6
|
||||
|
||||
; Rules for ALL
|
||||
[rules]
|
||||
rule: MK_RK_max_vb_parallel,1, 16, 1, 17037
|
||||
rule: MK_RK_ANAglobal, 0, 32767, 1, 17032
|
||||
rule: MK_RK_DIGglobal, 0, 16383, 1, 17038
|
||||
rule: MK_SK_NMXBRMODUL, 20, 1000, 1, 17007
|
||||
rule: MK_SK_NMXSYSTSK, 10, 100, 1, 17008
|
||||
rule: MK_TK_zyklimit1, 2, 60000, 1, 17026
|
||||
rule: MK_TK_zyklimit2, 2, 60000, 1, 17026
|
||||
rule: MK_TK_zyklimit3, 2, 60000, 1, 17026
|
||||
rule: MK_TK_zyklimit4, 2, 60000, 1, 17026
|
||||
rule: MK_TK_mxzyklimit1, 0, 60000, 1, 17033
|
||||
rule: MK_TK_mxzyklimit2, 0, 60000, 1, 17033
|
||||
rule: MK_TK_mxzyklimit3, 0, 60000, 1, 17033
|
||||
rule: MK_TK_mxzyklimit4, 0, 60000, 1, 17033
|
||||
rule: MK_RK_TKusrstack, 512, 65535, 1, 17010
|
||||
rule: MK_RK_TKsysstack, 640, 65535, 1, 17011
|
||||
rule: MK_RK_SystemTick, 2000, 10000, 1, 17536
|
||||
rule: MK_SK_NMXDEVTAB, 6, 50, 1, 17016
|
||||
rule: MK_SK_NMXAVT, 50, 5461, 1, 17017
|
||||
rule: MK_PS_nsema4, 20, 150, 1, 17018
|
||||
rule: MK_PS_nqueue, 8, 100, 1, 17019
|
||||
rule: MK_PS_ntimer, 6, 25, 1, 17039
|
||||
rule: MK_PS_rootsstk, 1536, 16384, 1, 17040
|
||||
rule: MK_TK_IdleTime1, 0, 20000, 1, 17535
|
||||
rule: MK_TK_IdleTime2, 0, 20000, 1, 17535
|
||||
rule: MK_TK_IdleTime3, 0, 20000, 1, 17535
|
||||
rule: MK_TK_IdleTime4, 0, 20000, 1, 17535
|
||||
rule: MK_PS_rn0len, 98304, 9048576,1, 17534
|
||||
|
||||
[EndDefault]
|
||||
|
||||
; Error messages
|
||||
[001]
|
||||
17007=minimal 20, maximal 1000 B&R modules!
|
||||
17008=minimal 10, maximal 100 System tasks!
|
||||
17010=User stack minimal 512Byte maximal 64kByte!
|
||||
17011=System stack minimal 640Byte maximal 64kByte!
|
||||
17016=Device drivers minimal 6 maximal 50!
|
||||
17017=AVT entries minimal 50 maximal 5461!
|
||||
17018=Semaphor minimal 20 maximal 100!
|
||||
17019=Queues minimal 8 maximal 100!
|
||||
17026=Cycle time from 2 to 60000ms!
|
||||
17027=Cycle time from 4 to 60000ms!
|
||||
17032=Analog global variables must be smaller than 32kByte!
|
||||
17033=Time value from 0 to 60000ms!
|
||||
17037=One upto sixteen connections allowed!
|
||||
17038=Digital global variables must be smaller than 16kBit!
|
||||
17039=Timer minimal 6, maximum 25!
|
||||
17040=Minimum stacksize of root task 1536 bytes, maximum stacksize 16384 bytes!
|
||||
17534=TMP-RAM/OS Area from 96kB to RAMSIZE-256kB!
|
||||
17535=Taskclass idle time from 0 to 20000<30>s!
|
||||
17536=System tick from 2 to 10ms!
|
||||
17537=System tick from 4 to 10ms!
|
||||
|
||||
[049]
|
||||
17007=minimal 20, maximal 1000 B&R Module!
|
||||
17008=minimal 10, maximal 100 Systemtasks!
|
||||
17010=User-Stack minimal 512Byte maximal 64kByte!
|
||||
17011=System-Stack minimal 640Byte maximal 64kByte!
|
||||
17016=Ger<EFBFBD>tetreiber minimal 6 maximal 50!
|
||||
17017=AVT Eintr<74>ge minimal 50 maximal 5461!
|
||||
17018=Semaphoren minimal 20 maximal 100!
|
||||
17019=Queues minimal 8 maximal 100!
|
||||
17026=Zyklusdauer von 2 bis 60000ms!
|
||||
17027=Zyklusdauer von 4 bis 60000ms!
|
||||
17032=Analoge globale Merker m<>ssen kleiner als 32kByte sein!
|
||||
17033=Zeitwert von 0 bis 60000ms!
|
||||
17037=Ein bis sechzehn Verbindungen erlaubt!
|
||||
17038=Digitale globale Merker m<>ssen kleiner als 16kBit sein!
|
||||
17039=Timer minimal 6, maximal 25!
|
||||
17040=Stack-Gr<47><72>e der Root-Task minimal 1536 Byte, maximal 16384 Byte!
|
||||
17534=TMP-RAM/OS Area von 96kB bis RAMSIZE-256kB!
|
||||
17535=Restzeit der Taskklassen von 0 bis 20000<30>s!
|
||||
17536=System Takt von 2 bis 10ms!
|
||||
17537=System Takt von 4 bis 10ms!
|
||||
|
||||
[033]
|
||||
17007=Minimum 20, maximum 1000<30>modules B&R<>!
|
||||
17008=Minimum 10, maximum 100<30>t<EFBFBD>ches syst<73>mes !
|
||||
17010=Pile utilisateur<75>minimum 512 octets maximum 64 k-octets<74>!
|
||||
17011=Pile utilisateur<75>minimum 640 octets maximum 64 k-octets<74>!
|
||||
17016=Driver d<>appareil minimum 6 maximum 50<35>!
|
||||
17017=Entr<EFBFBD>es AVT minimum 50 maximum 5461<36>!
|
||||
17018=S<EFBFBD>maphores minimum 20<32>maximum 100 !
|
||||
17019=Files d<>attente minimum 8 maximum 100<30>!
|
||||
17026=Temps de cycle de 2 <20> 60000 ms!
|
||||
17027=Temps de cycle de 4 <20> 60000 ms!
|
||||
17032=Les variables globales analogiques doivent <20>tre plus petites que 32 ko<6B>!
|
||||
17033=Valeur de temps de 0 <20> 60000 ms<6D>!
|
||||
17037=Une <20> seize liaisons autoris<69>es !
|
||||
17038=Les variables globales digitales doivent <20>tre plus petites que 16 ko<6B>!
|
||||
17039=Timer minimum 6, maximum 25<32>!
|
||||
17040=Taille de pile pour t<>che racine minimum 1536 octets, maximum 16384 octets<74>!
|
||||
17534=TMP-RAM/OS Area dans la zone de 96 <20> RAMSIZE-256 ko !
|
||||
17535=Temps d<>inactivit<69> de classe de t<>ches de 0 <20> 20000 <20>s<EFBFBD>!
|
||||
17536=Horloge syst<73>me de 2 <20> 10 ms !
|
||||
17537=Horloge syst<73>me de 4 <20> 10 ms !
|
||||
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Project Version="1.00.0" Edition="Standard" EditionComment="Standard" xmlns="http://br-automation.co.at/AS/Project">
|
||||
<Communication />
|
||||
<IEC KeywordsAsStructureMembers="false" Pointers="true" ExtendedConstants="true" NamingConventions="true" IecExtendedComments="true" Preprocessor="false" />
|
||||
<Motion RestartInitParameter="true" RestartAcoposParameter="true" />
|
||||
<Variables DefaultInitValue="0" DefaultVolatile="true" DefaultRetain="false" />
|
||||
<ANSIC DefaultIncludes="true" />
|
||||
<Project StoreRuntimeInProject="true" />
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<Project Version="1.00.0" Edition="Standard" EditionComment="Standard" xmlns="http://br-automation.co.at/AS/Project">
|
||||
<Communication />
|
||||
<IEC KeywordsAsStructureMembers="false" Pointers="true" ExtendedConstants="true" NamingConventions="true" IecExtendedComments="true" Preprocessor="false" />
|
||||
<Motion RestartInitParameter="true" RestartAcoposParameter="true" />
|
||||
<Variables DefaultInitValue="0" DefaultVolatile="true" DefaultRetain="false" />
|
||||
<ANSIC DefaultIncludes="true" />
|
||||
<Project StoreRuntimeInProject="true" />
|
||||
</Project>
|
||||
@@ -1,5 +1,5 @@
|
||||
[OsDownload]
|
||||
ArDownloadType=1
|
||||
CANBaudrate=500
|
||||
CANId=1598
|
||||
CANNode=0
|
||||
[OsDownload]
|
||||
ArDownloadType=1
|
||||
CANBaudrate=500
|
||||
CANId=1598
|
||||
CANNode=0
|
||||
|
||||
10
michi.set
10
michi.set
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<Print Header="%lProject: %n%c%x" Footer="%cPage: %p" />
|
||||
<ConfigurationManager ActiveConfigurationName="Config1" />
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.90.21 SP03?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<Print Header="%lProject: %n%c%x" Footer="%cPage: %p" />
|
||||
<ConfigurationManager ActiveConfigurationName="Config1" />
|
||||
</ProjectSettings>
|
||||
Reference in New Issue
Block a user