Workbackup
This commit is contained in:
17
KD_Fritzmeier_Batteriewanne.apj
Normal file
17
KD_Fritzmeier_Batteriewanne.apj
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version="4.9.2.46" WorkingVersion="4.9"?>
|
||||
<Project Description="Lackierzelle" Version="1.00.0" Edition="Standard" EditionComment="Standard" xmlns="http://br-automation.co.at/AS/Project">
|
||||
<Communication />
|
||||
<ANSIC DefaultIncludes="true" />
|
||||
<IEC ExtendedConstants="true" IecExtendedComments="true" KeywordsAsStructureMembers="false" NamingConventions="true" Pointers="true" Preprocessor="false" />
|
||||
<Motion RestartAcoposParameter="true" RestartInitParameter="true" />
|
||||
<Project StoreRuntimeInProject="false" />
|
||||
<Variables DefaultInitValue="0" DefaultRetain="false" DefaultVolatile="true" />
|
||||
<TechnologyPackages>
|
||||
<mapp Version="5.13.0" />
|
||||
<mappCockpit Version="5.13.1" />
|
||||
<mappMotion McAcpDrv="5.13.1" McAcpSim="5.13.1" McAcpSys="5.13.1" McMechSys="5.13.1" McPathXT="5.13.1" McProfGen="5.13.1" Version="5.13.1" />
|
||||
<mappView Version="5.13.0" />
|
||||
<TextSystem udbdef="0.1.0" />
|
||||
</TechnologyPackages>
|
||||
</Project>
|
||||
7
LastUser.set
Normal file
7
LastUser.set
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version="4.9.2.46"?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<ConfigurationManager ActiveConfigurationName="Config0" />
|
||||
<Deployment Value="ActiveCpu" />
|
||||
<Print Footer="%cPage: %p" Header="%lProject: %n%c%x" />
|
||||
</ProjectSettings>
|
||||
7
Logical/CNCProgramme/CncInit/Cnc.dob
Normal file
7
Logical/CNCProgramme/CncInit/Cnc.dob
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<DataObject SubType="Cnc" xmlns="http://br-automation.co.at/AS/DataObject">
|
||||
<Files>
|
||||
<File Description="CNC program (G-Code-Alternative 1)">CncInit.mpf</File>
|
||||
</Files>
|
||||
</DataObject>
|
||||
32
Logical/CNCProgramme/CncInit/CncInit.mpf
Normal file
32
Logical/CNCProgramme/CncInit/CncInit.mpf
Normal file
@@ -0,0 +1,32 @@
|
||||
;*******************************************************************
|
||||
; COPYRIGHT -- Kerschdorfer Sondermaschinenbau GmbH
|
||||
;*******************************************************************
|
||||
; CNC program: CncInit
|
||||
; File: CncInit.mpf
|
||||
; Author: Michael Rest
|
||||
; Created: November 18, 2020
|
||||
;*******************************************************************
|
||||
;InitialisierungsProgramm
|
||||
;*******************************************************************
|
||||
%00 ;Definition Nummer Hauptprogramm)
|
||||
N10 (Kommentar)
|
||||
(Definition der PLC Variablen entf<74>llt passiert in SPS Config)
|
||||
(N40 DEF plc_global LREAL pParamPositions.lrToolZeroPosZ AS toolzero_z)
|
||||
|
||||
|
||||
N20 G90 (Absolutkoordinaten)
|
||||
|
||||
N30 F=lrFeedrate (Vorschub von SPS mm/min)
|
||||
|
||||
N100 (SC3 definieren)
|
||||
N110 IF bShuttle1InPos
|
||||
N120 G54 (Shuttle 1 ist in Position)
|
||||
N130 ELSE
|
||||
IF bShuttle3InPos
|
||||
N140 G55 (Shuttle 2 ist in Position)
|
||||
N150 ELSE
|
||||
N160 G53
|
||||
N170 M30 (Programmende)
|
||||
ENDIF
|
||||
N180 ENDIF
|
||||
N200 M30 (Program end)
|
||||
7
Logical/CNCProgramme/CncPrg1/Cnc.dob
Normal file
7
Logical/CNCProgramme/CncPrg1/Cnc.dob
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<DataObject SubType="Cnc" xmlns="http://br-automation.co.at/AS/DataObject">
|
||||
<Files>
|
||||
<File Description="CNC program (G-Code)">CncPrg01.cnc</File>
|
||||
</Files>
|
||||
</DataObject>
|
||||
40
Logical/CNCProgramme/CncPrg1/CncPrg01.cnc
Normal file
40
Logical/CNCProgramme/CncPrg1/CncPrg01.cnc
Normal file
@@ -0,0 +1,40 @@
|
||||
(*******************************************************************)
|
||||
( COPYRIGHT -- Kerschdorfer Sondermaschinenbau GmbH )
|
||||
(*******************************************************************)
|
||||
( CNC program: CncProg )
|
||||
( File: CncProg.cnc )
|
||||
( Author: Michael Rest )
|
||||
( Created: November 18, 2020 )
|
||||
(*******************************************************************)
|
||||
( CNC program file: CncProg.cnc )
|
||||
(*******************************************************************)
|
||||
%001 (Main program definition)
|
||||
N10 (Kommentar)
|
||||
(Definition der PLC Variablen)
|
||||
(N40 DEF plc_global LREAL pParamPositions.lrToolZeroPosZ AS toolzero_z)
|
||||
(N41 DEF plc_global LREAL MachCtrl:CNCVars.lrToolOffsetX AS tooloffset_x)
|
||||
(N42 DEF plc_global LREAL MachCtrl:CNCVars.lrToolOffsetY AS tooloffset_y)
|
||||
(N43 DEF plc_global LREAL MachCtrl:CNCVars.lrNozzleOffset AS nozzleoff_z)
|
||||
(N44 DEF plc_global LREAL MachCtrl:CNCVars.lrGlueGap AS gluegap_z)
|
||||
(N44 DEF plc_global LREAL MachCtrl:CNCVars.lrFeedrate AS feedrate)
|
||||
N50 G90 (Absolutkoordinaten)
|
||||
(N60 F=feedrate (Vorschub mm/min)
|
||||
N60 F500 (Vorschub mm/min)
|
||||
(Koordinatensystemverschiebungen)
|
||||
(N67 G292 X=tooloffset_x Y=tooloffset_y Z=toolzero_z (Werkzeug KO System)
|
||||
(N68 G192 Z=nozzleoff_z (DuesenKorrektur)
|
||||
(N69 G92 X2 Z=gluegap_z - 1 (Klebespalt)
|
||||
N70 G126 1.0 (Globale Verschleifungen mit Distanz 1mm)
|
||||
(N80 G00 Z=380-nozzleoff_z-toolzero_z (wg. SOFT Limits)
|
||||
|
||||
N200 G00 X 0 Y 50 Z 0 C 0 A 0
|
||||
(N205 G25 5.0 (Radieninterpolation)
|
||||
(Klebespur Lange Seite)
|
||||
N209 G01 X 500.9 Y 500 Z 500 C 0 A 0
|
||||
(N210 G01 X 190.9 Y 24.4 Z 142.2 M40 (M40 Start Kleber)
|
||||
(N400 G01 X 190.8 Y 189.4 Z 142.2 M41 (M41 Kleber Stop)
|
||||
N590 G00 Z 380-nozzleoff_z-toolzero_z (wg. SOFT Limits)
|
||||
N595 G25 5.0 (Radieninterpolation)
|
||||
N4998 G00 X 0 Y 50 Z 0 C 0 A 0
|
||||
N4999 G126 0 (Verschleifungen deaktivieren)
|
||||
N5000 M30 (Program end)
|
||||
8
Logical/CNCProgramme/Package.pkg
Normal file
8
Logical/CNCProgramme/Package.pkg
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="DataObject" Language="Cnc" Description="Initialisierungsprogramm">CncInit</Object>
|
||||
<Object Type="DataObject" Language="Cnc">CncPrg1</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
8
Logical/Common/GlobalCommon.typ
Normal file
8
Logical/Common/GlobalCommon.typ
Normal file
@@ -0,0 +1,8 @@
|
||||
|
||||
TYPE
|
||||
typAlarm : STRUCT (*Alarm Datenstruktur*)
|
||||
Alarm : ARRAY[0..127]OF BOOL;
|
||||
Ack : ARRAY[0..127]OF BOOL;
|
||||
Bypass : ARRAY[0..127]OF BOOL;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
25
Logical/Common/GlobalComon.var
Normal file
25
Logical/Common/GlobalComon.var
Normal file
@@ -0,0 +1,25 @@
|
||||
VAR
|
||||
bBlink0_1 : BOOL;
|
||||
bBlink0_5 : BOOL;
|
||||
bBlink1_0 : BOOL;
|
||||
bBlink2_0 : BOOL;
|
||||
bBlink5_0 : BOOL;
|
||||
gdtCurrentTime : DATE_AND_TIME; (*Current Date and Time*)
|
||||
gDTstrucCurrentTime : DTStructure := (0); (*Current Date and Time as DTStructure*)
|
||||
gsCurrentTime : STRING[25] := ''; (*Current Date and Time as String*)
|
||||
gsCurrentTimestamp : STRING[19] := ''; (*Current Date and Time as String Timestamp*)
|
||||
gTCurrentTime : TIME := T#0ms; (*Current Time*)
|
||||
END_VAR
|
||||
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 *)
|
||||
END_VAR
|
||||
VAR
|
||||
gOuNull : BOOL; (*DUMMY for Output*)
|
||||
END_VAR
|
||||
VAR CONSTANT
|
||||
iAIVoltageOverflow : INT := 16#7FFF; (* Analog Input Voltage Mode,Overflow *)
|
||||
iAIVoltageUnderflow : INT := -32767; (* Analog Input Voltage Underflow *)
|
||||
END_VAR
|
||||
10
Logical/Common/Package.pkg
Normal file
10
Logical/Common/Package.pkg
Normal file
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.2.3.159?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File">GlobalCommon.typ</Object>
|
||||
<Object Type="File">GlobalComon.var</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Current Date_And_Time / DT Struct">get_dt</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Blinker 0,1 -0,5s (f. 100ms Task) !!!">blinker</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
9
Logical/Common/blinker/IEC.prg
Normal file
9
Logical/Common/blinker/IEC.prg
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.2.3.159?>
|
||||
<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>
|
||||
13
Logical/Common/blinker/blinker.var
Normal file
13
Logical/Common/blinker/blinker.var
Normal file
@@ -0,0 +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
|
||||
30
Logical/Common/blinker/blinkerCyclic.ab
Normal file
30
Logical/Common/blinker/blinkerCyclic.ab
Normal file
@@ -0,0 +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 100ms
|
||||
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
|
||||
16
Logical/Common/blinker/blinkerInit.ab
Normal file
16
Logical/Common/blinker/blinkerInit.ab
Normal file
@@ -0,0 +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
|
||||
|
||||
9
Logical/Common/get_dt/IEC.prg
Normal file
9
Logical/Common/get_dt/IEC.prg
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.2.3.159?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File>get_dtCyclic.ab</File>
|
||||
<File Private="true">get_dt.var</File>
|
||||
<File>get_dtInit.ab</File>
|
||||
</Files>
|
||||
</Program>
|
||||
6
Logical/Common/get_dt/get_dt.var
Normal file
6
Logical/Common/get_dt/get_dt.var
Normal file
@@ -0,0 +1,6 @@
|
||||
VAR
|
||||
sTemp : STRING[10] := '';
|
||||
lDTStructureGetTime : DTStructureGetTime := (0);
|
||||
lDTGetTime : DTGetTime := (0);
|
||||
lTimeStructure : TIMEStructure := (0);
|
||||
END_VAR
|
||||
96
Logical/Common/get_dt/get_dtCyclic.ab
Normal file
96
Logical/Common/get_dt/get_dtCyclic.ab
Normal file
@@ -0,0 +1,96 @@
|
||||
PROGRAM _CYCLIC
|
||||
(* cyclic program *)
|
||||
|
||||
lDTGetTime.enable = true
|
||||
lDTGetTime FUB DTGetTime()
|
||||
gdtCurrentTime = lDTGetTime.DT1
|
||||
|
||||
lDTStructureGetTime.enable = true
|
||||
lDTStructureGetTime FUB DTStructureGetTime ()
|
||||
lDTStructureGetTime.pDTStructure = adr (gDTstrucCurrentTime)
|
||||
|
||||
ascDTStructure (ADR (gDTstrucCurrentTime), ADR (gsCurrentTime), 25)
|
||||
//Timestamp
|
||||
brsstrcpy (ADR (gsCurrentTime), "")
|
||||
brsitoa (gDTstrucCurrentTime.year, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
IF (gDTstrucCurrentTime.month < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTime), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.month, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
IF (gDTstrucCurrentTime.day < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTime), "0")
|
||||
ENDIF
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "")
|
||||
brsitoa (gDTstrucCurrentTime.day, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), "_")
|
||||
IF (gDTstrucCurrentTime.hour < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTime), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.hour, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), "-")
|
||||
IF (gDTstrucCurrentTime.minute < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTime), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.minute, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), "-")
|
||||
IF (gDTstrucCurrentTime.second < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTime), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.second, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), "_")
|
||||
brsitoa (gDTstrucCurrentTime.millisec, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTime), ADR (sTemp))
|
||||
|
||||
//Timestamp
|
||||
brsstrcpy (ADR (gsCurrentTimestamp), "")
|
||||
IF (gDTstrucCurrentTime.day < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "0")
|
||||
ENDIF
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "")
|
||||
brsitoa (gDTstrucCurrentTime.day, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ".")
|
||||
IF (gDTstrucCurrentTime.month < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.month, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ".")
|
||||
brsitoa (gDTstrucCurrentTime.year, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), " ")
|
||||
IF (gDTstrucCurrentTime.hour < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.hour, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ":")
|
||||
IF (gDTstrucCurrentTime.minute < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.minute, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ":")
|
||||
IF (gDTstrucCurrentTime.second < 10) THEN
|
||||
brsstrcat (ADR (gsCurrentTimestamp), "0")
|
||||
ENDIF
|
||||
brsitoa (gDTstrucCurrentTime.second, ADR (sTemp))
|
||||
brsstrcat (ADR (gsCurrentTimestamp), ADR (sTemp))
|
||||
|
||||
|
||||
lTimeStructure.day = gDTstrucCurrentTime.day
|
||||
lTimeStructure.hour = gDTstrucCurrentTime.hour
|
||||
lTimeStructure.minute = gDTstrucCurrentTime.minute
|
||||
lTimeStructure.second = gDTstrucCurrentTime.second
|
||||
lTimeStructure.millisec = gDTstrucCurrentTime.millisec
|
||||
lTimeStructure.microsec = gDTstrucCurrentTime.microsec
|
||||
gTCurrentTime = TIMEStructure_TO_TIME (adr (lTimeStructure))
|
||||
|
||||
END_PROGRAM
|
||||
|
||||
4
Logical/Common/get_dt/get_dtInit.ab
Normal file
4
Logical/Common/get_dt/get_dtInit.ab
Normal file
@@ -0,0 +1,4 @@
|
||||
PROGRAM _INIT
|
||||
(* init program *)
|
||||
END_PROGRAM
|
||||
|
||||
38
Logical/Communication/GlobalCom.typ
Normal file
38
Logical/Communication/GlobalCom.typ
Normal file
@@ -0,0 +1,38 @@
|
||||
(*//Interface IPG-Laser*)
|
||||
|
||||
TYPE
|
||||
gytp_IPGInterfaceIn : STRUCT (*Inputs from IPG Laser Interface*)
|
||||
bPilotLaserIsOn : BOOL := FALSE; (*Pilotlaser ist Ein (f. Handshake*)
|
||||
bLaserIsEnabled : BOOL := FALSE; (*Laserquelle aktiviert*)
|
||||
bLaserIsEmitting : BOOL := FALSE; (*Lasser emittiert*)
|
||||
END_STRUCT;
|
||||
gytp_IPGInterfaceOut : STRUCT (*Output to IPG Laser Interface*)
|
||||
bPilotLaserOn : BOOL := FALSE; (*Pilotlaser Einschalten*)
|
||||
bEnalbeLaser : BOOL := FALSE; (*Laser mit Programm 0 einschalten*)
|
||||
uiOutputPower : UINT; (*Laserleistung in W*)
|
||||
END_STRUCT;
|
||||
gytp_IPGInterface : STRUCT (*IPG Laser Interface*)
|
||||
In : gytp_IPGInterfaceIn; (*von IPG Laser Task*)
|
||||
Out : gytp_IPGInterfaceOut; (*an IPG Laser Task*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
(*//Interface Raytools-Interface*)
|
||||
|
||||
TYPE
|
||||
gytp_RTInterfaceIn : STRUCT (*Inputs from IPG Laser Interface*)
|
||||
bHeadIsOk : USINT; (*Kopf ist OK / Kalibriert / Referenziert und keine St<53>rung*)
|
||||
bHeadIsMidPos : BOOL := FALSE; (*Kopf ist in Mittelstellung*)
|
||||
bHeadIsInFollowpos : BOOL := FALSE; (*Kopf ist is in H<>henregelung*)
|
||||
END_STRUCT;
|
||||
gytp_RTInterfaceOut : STRUCT (*Output to IPG Laser Interface*)
|
||||
bMidPos : BOOL := FALSE; (*InMittelpos*)
|
||||
bFollowPos : BOOL := FALSE; (*Position folgen*)
|
||||
END_STRUCT;
|
||||
gytp_RTInterface : STRUCT (*Raytools Laser Interface*)
|
||||
In : gytp_RTInterfaceIn; (*von RT Laser Task*)
|
||||
Out : gytp_RTInterfaceOut; (*an RT Laser Task*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
(**)
|
||||
12
Logical/Communication/GlobalCom.var
Normal file
12
Logical/Communication/GlobalCom.var
Normal file
@@ -0,0 +1,12 @@
|
||||
(*//Kommunikationsstrukturen*)
|
||||
VAR RETAIN
|
||||
gIPGLaserInterface : gytp_IPGInterface;
|
||||
gRTLaserInterface : gytp_RTInterface;
|
||||
END_VAR
|
||||
(*Variablen / Strukturen*)
|
||||
VAR
|
||||
gudRFIDReader1ID : UDINT;
|
||||
gudRFIDReader2ID : UDINT;
|
||||
gudRFIDReader3ID : UDINT;
|
||||
gudRFIDReader4ID : UDINT;
|
||||
END_VAR
|
||||
148
Logical/Communication/IPG/IPG/Cyclic.st
Normal file
148
Logical/Communication/IPG/IPG/Cyclic.st
Normal file
@@ -0,0 +1,148 @@
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
//Eing<EFBFBD>nge
|
||||
//==============================================
|
||||
//Byte 1
|
||||
LaserIn.Status.bLaserIsAssigned := usInByte[1].0;
|
||||
LaserIn.Status.bLaserIsOn := usInByte[1].1;
|
||||
LaserIn.Status.bSystemError := usInByte[1].2;
|
||||
LaserIn.Status.bPilotLaserIsOn := usInByte[1].3;
|
||||
LaserIn.Status.bProgramActive := usInByte[1].4;
|
||||
LaserIn.Status.bProgramEnd := usInByte[1].5;
|
||||
LaserIn.Status.bProgramInterupted := usInByte[1].6;
|
||||
LaserIn.Status.bAnalogControlIsOn := usInByte[1].7;
|
||||
//Byte 2
|
||||
LaserIn.Status.bSystemWarning := usInByte[2].0;
|
||||
LaserIn.Status.bLaserIsReady := usInByte[2].1;
|
||||
LaserIn.Status.bEmissionIsOn := usInByte[2].2;
|
||||
LaserIn.Status.bSyncOutput := usInByte[2].3;
|
||||
LaserIn.Status.bSystemWarning := usInByte[2].4;
|
||||
LaserIn.Status.bRobotModeActive := usInByte[2].5;
|
||||
LaserIn.Status.bInterlockActive := usInByte[2].6;
|
||||
LaserIn.Status.bSoftwareCtrlActive := usInByte[2].7;
|
||||
//Byte 3 / 4
|
||||
LaserIn.uiOutPutPower := SHL (USINT_TO_UINT (usInByte[4]), 8) + USINT_TO_UINT (usInByte[3]);
|
||||
//Byte 5
|
||||
LaserIn.usOpticalChannel := usInByte[5];
|
||||
//Byte 6
|
||||
LaserIn.usProgramNumber := usInByte[6];
|
||||
|
||||
//Byte 7
|
||||
LaserIn.Status2.bLaserError := usInByte[7].0;
|
||||
LaserIn.Status2.bLaserWarning := usInByte[7].1;
|
||||
LaserIn.Status2.bChillerError := usInByte[7].2;
|
||||
LaserIn.Status2.bChillerWarning := usInByte[7].3;
|
||||
LaserIn.Status2.bSafetyOpen := usInByte[7].4;
|
||||
LaserIn.Status2.bChannelError := usInByte[7].5;
|
||||
LaserIn.Status2.bLaserIsBusy := usInByte[7].6;
|
||||
LaserIn.Status2.bSlotError := usInByte[7].7;
|
||||
//Byte 8
|
||||
LaserIn.Status2.bCabinetDoorOpen := usInByte[8].0;
|
||||
LaserIn.Status2.bReserverdModuleIsActive := usInByte[8].1;
|
||||
LaserIn.Status2.bReducedActiveModules := usInByte[8].2;
|
||||
LaserIn.Status2.bHighBackReflection := usInByte[8].3;
|
||||
LaserIn.Status2.bModulePowerSupplyWarning := usInByte[8].4;
|
||||
|
||||
//Byte 9
|
||||
LaserIn.usLaserNr := usInByte[9];
|
||||
|
||||
//Interface von Laser an Maschine (Eing<EFBFBD>nge verarbeiten)
|
||||
//=======================================
|
||||
gIPGLaserInterface.In.bPilotLaserIsOn := LaserIn.Status.bPilotLaserIsOn;
|
||||
gIPGLaserInterface.In.bLaserIsEnabled := LaserIn.Status.bLaserIsOn;
|
||||
gIPGLaserInterface.In.bLaserIsEmitting := LaserIn.Status.bEmissionIsOn;
|
||||
|
||||
//Interface Maschine an Laser (Ausg<EFBFBD>nge vorbereiten)
|
||||
//=======================================
|
||||
IF NOT Status.bLocalCtrl THEN
|
||||
//Pilotlaser steuern
|
||||
LaserOut.Control.bPilotLaserOn := gIPGLaserInterface.Out.bPilotLaserOn;
|
||||
//Laser einschalten
|
||||
IF gIPGLaserInterface.Out.bEnalbeLaser THEN
|
||||
LaserOut.Control.bLaserOn := LaserIn.Status.bRobotModeActive AND LaserIn.Status.bInterlockActive;
|
||||
//Programm starten
|
||||
IF LaserIn.Status.bLaserIsOn AND LaserIn.Status.bLaserIsReady THEN
|
||||
LaserOut.Control.bProgramStart := TRUE;
|
||||
END_IF
|
||||
//Lesitung <EFBFBD>bergeben
|
||||
LaserOut.uiOutPutPower := gIPGLaserInterface.Out.uiOutputPower;
|
||||
ELSE
|
||||
LaserOut.uiOutPutPower := 0;
|
||||
IF NOT LaserIn.Status.bEmissionIsOn THEN
|
||||
LaserOut.Control.bProgramStart := FALSE;
|
||||
END_IF
|
||||
IF NOT LaserIn.Status.bProgramActive THEN
|
||||
LaserOut.Control.bLaserOn := FALSE;
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
|
||||
//Fehler quittieren
|
||||
LaserOut.Control.bResetErrors := gMP7121.Button;
|
||||
END_IF
|
||||
|
||||
// Einzelschussmodus
|
||||
IF NOT Status.bLocalCtrl THEN
|
||||
Status.bShootMode := FALSE;
|
||||
END_IF
|
||||
TON_Shot.IN := (LaserOut.uiOutPutPower > 0) AND LaserOut.Control.bLaserOn AND Status.bShootMode;
|
||||
TON_Shot ();
|
||||
IF TON_Shot.Q THEN
|
||||
LaserOut.uiOutPutPower := 0;
|
||||
END_IF
|
||||
|
||||
|
||||
//Ausg<EFBFBD>nge
|
||||
//==============================================
|
||||
|
||||
//Schneidgas
|
||||
TOF_CuttingGas.IN := (LaserOut.uiOutPutPower > 0) AND LaserOut.Control.bLaserOn;
|
||||
TOF_CuttingGas.PT := t#8s;
|
||||
TOF_CuttingGas ();
|
||||
bOuCuttingGas := TOF_CuttingGas.Q;
|
||||
|
||||
//Byte 1
|
||||
LaserOut.Control.bRequestLaser := TRUE;
|
||||
usOuByte[1].0 := LaserOut.Control.bRequestLaser;
|
||||
usOuByte[1].1 := LaserOut.Control.bLaserOn;
|
||||
usOuByte[1].2 := LaserOut.Control.bResetErrors;
|
||||
usOuByte[1].3 := LaserOut.Control.bPilotLaserOn;
|
||||
usOuByte[1].4 := LaserOut.Control.bProgramStart;
|
||||
usOuByte[1].5 := LaserOut.Control.bProgramStop;
|
||||
usOuByte[1].6 := FALSE;
|
||||
usOuByte[1].7 := LaserOut.Control.bAnalogControlOn;
|
||||
//Byte 2
|
||||
usOuByte[2].0 := LaserOut.Control.bEnableLaserSoft;
|
||||
usOuByte[2].1 := LaserOut.Control.bSetRampUp;
|
||||
usOuByte[2].2 := LaserOut.Control.bSetRampDown;
|
||||
usOuByte[2].3 := LaserOut.Control.bSyncInput;
|
||||
usOuByte[2].4 := FALSE;
|
||||
usOuByte[2].5 := FALSE;
|
||||
usOuByte[2].6 := FALSE;
|
||||
LaserOut.Control.bExternalError := FALSE;
|
||||
usOuByte[2].7 := LaserOut.Control.bExternalError;
|
||||
|
||||
//Byte 3/4 Endianess vetauscht
|
||||
usOuByte[4] := UINT_TO_USINT (SHR (LaserOut.uiOutPutPower,8));
|
||||
usOuByte[3] := UINT_TO_USINT (LaserOut.uiOutPutPower);
|
||||
|
||||
//Byte 5
|
||||
LaserOut.usOpticalChannel := 0;
|
||||
usOuByte[5] := LaserOut.usOpticalChannel;
|
||||
|
||||
//Byte 6
|
||||
LaserOut.usProgramNumber := 0; //Analogwert oder Sollert <EFBFBD>ber Bus
|
||||
usOuByte[6] := LaserOut.usProgramNumber;
|
||||
|
||||
//Byte 7/8
|
||||
usOuByte[7] := UINT_TO_USINT (SHR (LaserOut.uiRampingTime,8));
|
||||
usOuByte[8] := UINT_TO_USINT (LaserOut.uiRampingTime);
|
||||
|
||||
//Byte 9
|
||||
LaserOut.usLaserNr := 1;
|
||||
usOuByte[9] := LaserOut.usLaserNr;
|
||||
|
||||
//Byte 10
|
||||
usOuByte[10] := 0;
|
||||
|
||||
END_PROGRAM
|
||||
6
Logical/Communication/IPG/IPG/Exit.st
Normal file
6
Logical/Communication/IPG/IPG/Exit.st
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
PROGRAM _EXIT
|
||||
(* Insert code here *)
|
||||
|
||||
END_PROGRAM
|
||||
12
Logical/Communication/IPG/IPG/IEC.prg
Normal file
12
Logical/Communication/IPG/IPG/IEC.prg
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Program SubType="IEC" xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Cyclic code">Cyclic.st</File>
|
||||
<File Description="Init code">Init.st</File>
|
||||
<File Description="Exit code">Exit.st</File>
|
||||
<File Description="Local data types" Private="true">Types.typ</File>
|
||||
<File Description="Local variables" Private="true">Variables.var</File>
|
||||
<File Description="IOs" Private="true">IOs.var</File>
|
||||
</Files>
|
||||
</Program>
|
||||
5
Logical/Communication/IPG/IPG/IOs.var
Normal file
5
Logical/Communication/IPG/IPG/IOs.var
Normal file
@@ -0,0 +1,5 @@
|
||||
VAR
|
||||
usInByte : ARRAY[1..32] OF USINT;
|
||||
usOuByte : ARRAY[1..32] OF USINT;
|
||||
bOuCuttingGas : BOOL;
|
||||
END_VAR
|
||||
10
Logical/Communication/IPG/IPG/Init.st
Normal file
10
Logical/Communication/IPG/IPG/Init.st
Normal file
@@ -0,0 +1,10 @@
|
||||
|
||||
|
||||
PROGRAM _INIT
|
||||
//Einzelschuss
|
||||
TON_Shot.PT := t#20ms;
|
||||
|
||||
Status.bLocalCtrl := FALSE;
|
||||
Status.bShootMode := FALSE;
|
||||
|
||||
END_PROGRAM
|
||||
70
Logical/Communication/IPG/IPG/Types.typ
Normal file
70
Logical/Communication/IPG/IPG/Types.typ
Normal file
@@ -0,0 +1,70 @@
|
||||
|
||||
TYPE
|
||||
typ_Status : STRUCT
|
||||
bLocalCtrl : BOOL; (*Lokale Steuerung - Interface deaktiviet*)
|
||||
bShootMode : BOOL; (*Einzelschuss f<>r lokale Steuerung*)
|
||||
END_STRUCT;
|
||||
typ_In : STRUCT
|
||||
Status : {REDUND_UNREPLICABLE} typ_In_Status;
|
||||
uiOutPutPower : UINT; (*Ausgangsleistung [W]*)
|
||||
usOpticalChannel : USINT; (*Optischer Kanal*)
|
||||
usProgramNumber : USINT; (*Programmnummer*)
|
||||
Status2 : typ_In_Status2;
|
||||
usLaserNr : USINT; (*Lasernummer*)
|
||||
END_STRUCT;
|
||||
typ_In_Status : STRUCT
|
||||
bLaserIsAssigned : BOOL; (*Laser ist zugeordnet / Steuerung <20>ber Feldbus*)
|
||||
bLaserIsOn : BOOL; (*Laser ist ein - Spannungsversorgung ist ein*)
|
||||
bSystemError : BOOL; (*Systemfehler*)
|
||||
bPilotLaserIsOn : BOOL; (*Pilotlaser ist ein*)
|
||||
bProgramActive : BOOL; (*Programm aktiv*)
|
||||
bProgramEnd : BOOL; (*Programm Ende*)
|
||||
bProgramInterupted : BOOL; (*Programm Unterbrochen*)
|
||||
bAnalogControlIsOn : BOOL; (*Analogsteuerung (Programmnummer 0) ist ein - Obsolete*)
|
||||
bSystemWarning : BOOL; (*Systemwarnung*)
|
||||
bLaserIsReady : BOOL; (*Laser ist Bereit f<>r Abstrahlung*)
|
||||
bEmissionIsOn : BOOL; (*Laserstrahl ist Ein*)
|
||||
bSyncOutput : BOOL; (*Synchronisationsausgang von Programm*)
|
||||
bRobotModeActive : BOOL; (*RoboterModus ist aktiv*)
|
||||
bInterlockActive : BOOL;
|
||||
bLaserAlive : BOOL; (*Feldbus aktiv*)
|
||||
bSoftwareCtrlActive : BOOL; (*LaserNet Software aktiv*)
|
||||
END_STRUCT;
|
||||
typ_In_Status2 : STRUCT
|
||||
bLaserError : BOOL; (*St<53>rung Laser*)
|
||||
bLaserWarning : BOOL; (*Warnung Laser*)
|
||||
bChillerError : BOOL; (*St<53>rung K<>hler*)
|
||||
bChillerWarning : BOOL; (*Warnung K<>hler*)
|
||||
bSafetyOpen : BOOL; (*Sicherheitskreis Offen*)
|
||||
bChannelError : BOOL; (*Kanalfehler*)
|
||||
bLaserIsBusy : BOOL; (*Laser von anderem Controller angew<65>hl*)
|
||||
bSlotError : BOOL; (*Ung<6E>ltige Lasernummer*)
|
||||
bCabinetDoorOpen : BOOL; (*Schrank offen*)
|
||||
bReserverdModuleIsActive : BOOL; (*ReserveModul aktiv*)
|
||||
bReducedActiveModules : BOOL; (*ReserveModule reduziert*)
|
||||
bHighBackReflection : BOOL; (*R<>ckreflektion zu hoch*)
|
||||
bModulePowerSupplyWarning : BOOL; (*Power Supply Warnung*)
|
||||
END_STRUCT;
|
||||
typ_Out : STRUCT
|
||||
Control : typ_Out_Ctrl;
|
||||
uiOutPutPower : UINT; (*Laserleistung [W]*)
|
||||
usOpticalChannel : USINT; (*Optischer Kanal - immer 1*)
|
||||
usProgramNumber : USINT; (*Programmnummer 0-50 - Immer 0*)
|
||||
uiRampingTime : UINT; (*Rampenzeiten [ms]*)
|
||||
usLaserNr : USINT; (*LaserNummer - Immer 0*)
|
||||
END_STRUCT;
|
||||
typ_Out_Ctrl : STRUCT
|
||||
bRequestLaser : BOOL; (*Laser Anfordern - Immer Ein*)
|
||||
bLaserOn : BOOL; (*Laser Spannungsversorgung Ein*)
|
||||
bResetErrors : BOOL; (*St<53>rungen quittieren*)
|
||||
bPilotLaserOn : BOOL; (*Pilotlaser Einschalten*)
|
||||
bProgramStart : BOOL; (*Programm starten*)
|
||||
bProgramStop : BOOL; (*Programm stoppen*)
|
||||
bAnalogControlOn : BOOL; (*Analogsteuerung einschalten - Obsolete*)
|
||||
bEnableLaserSoft : BOOL; (*Lasersoft Freigeben*)
|
||||
bSetRampUp : BOOL; (*Auframpzeit aktivieren - f<>r Prg 0*)
|
||||
bSetRampDown : BOOL; (*Abrampzeit aktivieren - f<>r Prg 0*)
|
||||
bSyncInput : BOOL; (*Synchronisationseingang an Programm*)
|
||||
bExternalError : BOOL; (*Externer Fehler - False*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
7
Logical/Communication/IPG/IPG/Variables.var
Normal file
7
Logical/Communication/IPG/IPG/Variables.var
Normal file
@@ -0,0 +1,7 @@
|
||||
VAR
|
||||
Status : typ_Status;
|
||||
LaserOut : typ_Out;
|
||||
LaserIn : typ_In;
|
||||
TON_Shot : TON;
|
||||
TOF_CuttingGas : TOF;
|
||||
END_VAR
|
||||
7
Logical/Communication/IPG/Package.pkg
Normal file
7
Logical/Communication/IPG/Package.pkg
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Program" Language="IEC">IPG</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
70
Logical/Communication/MP/GlobalMP.typ
Normal file
70
Logical/Communication/MP/GlobalMP.typ
Normal file
@@ -0,0 +1,70 @@
|
||||
(*//Interface Mobile Panel*)
|
||||
|
||||
TYPE
|
||||
gtyp_MP7150 : STRUCT
|
||||
Left1 : BOOL; (*Links 1 (von oben) [1]*)
|
||||
Left2 : BOOL; (*Links 2 (von oben) [2]*)
|
||||
Left3 : BOOL; (*Links 3 (von oben) [3]*)
|
||||
Left4 : BOOL; (*Links 4 (von oben) [4]*)
|
||||
Right1 : BOOL; (*Rechts 1 (von oben) [5]*)
|
||||
Right2 : BOOL; (*Rechts 2 (von oben) [6]*)
|
||||
Right3 : BOOL; (*Rechts 3 (von oben) [7]*)
|
||||
Right4 : BOOL; (*Rechts 4 (von oben) [8]*)
|
||||
ESC : BOOL; (*Escape Unten 1 (von links) [9]*)
|
||||
Second : BOOL; (*2te Ebene Unten 2 (von links) [10]*)
|
||||
VInc : BOOL; (*V+ Unten 3 (von links) [11]*)
|
||||
VDec : BOOL; (*V- Unten 4 (von links) [12]*)
|
||||
Vars : BOOL; (*X= VariablenMonitor Unten 5 (von links) [13]*)
|
||||
Positions : BOOL; (*Positionsmaske Unten 6 (von links) [14]*)
|
||||
Projekt : BOOL; (*Projektmaske Unten 7 (von links) [15]*)
|
||||
Service : BOOL; (*Serviceseite Unten 8 (von links) [0]*)
|
||||
Mask1 : BOOL; (*Applikationsmaske1 Unten 9 (von links) [16]*)
|
||||
Start : BOOL; (*Start Unten 10 (von links) [17]*)
|
||||
Stop : BOOL; (*Stop Unten 11 (von links) [18]*)
|
||||
Alarms : BOOL; (*Alarmmaske Unten 12 (von links) [19]*)
|
||||
Settings : BOOL; (*Einstellungen Unten 13 (von links) [20]*)
|
||||
Ctrl : BOOL; (*Steuertaste links Oben [21]*)
|
||||
KeyRight : BOOL; (*Schl<68>sselschalter Rechts [120]*)
|
||||
KeyLeft : BOOL; (*Schl<68>sselschalter Rechts [122]*)
|
||||
END_STRUCT;
|
||||
gtyp_MP7121 : STRUCT
|
||||
VInc : BOOL; (*V+ [33]*)
|
||||
VDec : BOOL; (*V- [25]*)
|
||||
Start : BOOL; (*Start [17]*)
|
||||
Stop : BOOL; (*Stop [9]*)
|
||||
Home : BOOL; (*Applikationsmaske1 [34]*)
|
||||
Alarms : BOOL; (*Alarmmaske [26]*)
|
||||
XDec : BOOL; (*X- [18]*)
|
||||
XInc : BOOL; (*X+ [10]*)
|
||||
Settings : BOOL; (*Einstellungen (Gabelschl<68>ssel) [35]*)
|
||||
Positions : BOOL; (*Positionsmaske [27]*)
|
||||
YDec : BOOL; (*Y- [19]*)
|
||||
YInc : BOOL; (*Y+ [11]*)
|
||||
Service : BOOL; (*Servicesetie [0]*)
|
||||
Up : BOOL; (*Auf [28]*)
|
||||
ZDec : BOOL; (*Z- [20]*)
|
||||
ZInc : BOOL; (*Z+ [12]*)
|
||||
Left : BOOL; (*Links [36]*)
|
||||
Down : BOOL; (*Ab [29]*)
|
||||
Right : BOOL; (*Rechts [21]*)
|
||||
Ctrl : BOOL; (*Steuertaste Hase [13]*)
|
||||
Button : BOOL; (*Leuchttaster [112]*)
|
||||
KeyRight : BOOL; (*Schl<68>sselschalter Rechts [115]*)
|
||||
KeyLeft : BOOL; (*Schl<68>sselschalter Links [114]*)
|
||||
udWheelPos : UDINT; (*Handrad*)
|
||||
LED_Process : gen_LEDState;
|
||||
LED_Motion : gen_LEDState;
|
||||
LED_Error : gen_LEDState;
|
||||
LED_Run : gen_LEDState;
|
||||
LED_Button : gen_LEDState;
|
||||
END_STRUCT;
|
||||
gen_LEDState :
|
||||
(
|
||||
enLED_OFF := 0,
|
||||
enLED_ON := 1,
|
||||
enLED_FLASH_SLOW := 2,
|
||||
enLED_FLASH_FAST := 3
|
||||
);
|
||||
END_TYPE
|
||||
|
||||
(**)
|
||||
4
Logical/Communication/MP/GlobalMP.var
Normal file
4
Logical/Communication/MP/GlobalMP.var
Normal file
@@ -0,0 +1,4 @@
|
||||
VAR
|
||||
gMP7150 : gtyp_MP7150; (*Tasten / LEDs MP 7150*)
|
||||
gMP7121 : gtyp_MP7121; (*Tasten / LEDs MP 7150*)
|
||||
END_VAR
|
||||
124
Logical/Communication/MP/MPComm/Cyclic.st
Normal file
124
Logical/Communication/MP/MPComm/Cyclic.st
Normal file
@@ -0,0 +1,124 @@
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
IF Status.bConnect THEN
|
||||
Status.uiRfbExtConnect := RfbExtConnect (ADR (RFBLib), ADR (Parameter.strVisuName));
|
||||
IF (Status.uiRfbExtConnect = 0) THEN
|
||||
Status.bConnect := FALSE;
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
Status.uiRfbDataAge := RfbExtDataAge (RFBLib, ADR (Status.udDataAge));
|
||||
IF (Status.udDataAge < Parameter.udTimeout) THEN
|
||||
//Daten g<EFBFBD>ltig ansonsten keine Verbindung zum VNC Server
|
||||
Status.uiRfbKeyState := RfbExtKeyState(RFBLib, 1, ADR (usKeystate));
|
||||
Status.uiRfbTemp := RfbExtTemperatureValue (RFBLib, 1, ADR (diTemperature));
|
||||
CASE Parameter.enPanelType OF
|
||||
enMP7121:
|
||||
RfbExtKeyState(RFBLib, 112, ADR (Status.usKeyState));
|
||||
gMP7121.Button := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 114, ADR (Status.usKeyState));
|
||||
gMP7121.KeyLeft := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 115, ADR (Status.usKeyState));
|
||||
gMP7121.KeyRight := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 33, ADR (Status.usKeyState));
|
||||
gMP7121.VInc := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 25, ADR (Status.usKeyState));
|
||||
gMP7121.VDec := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 17, ADR (Status.usKeyState));
|
||||
gMP7121.Start := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 9, ADR (Status.usKeyState));
|
||||
gMP7121.Stop := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 34, ADR (Status.usKeyState));
|
||||
gMP7121.Home := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 26, ADR (Status.usKeyState));
|
||||
gMP7121.Alarms := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 18, ADR (Status.usKeyState));
|
||||
gMP7121.XDec := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 10, ADR (Status.usKeyState));
|
||||
gMP7121.XInc := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 35, ADR (Status.usKeyState));
|
||||
gMP7121.Settings := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 27, ADR (Status.usKeyState));
|
||||
gMP7121.Positions := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 19, ADR (Status.usKeyState));
|
||||
gMP7121.YDec := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 11, ADR (Status.usKeyState));
|
||||
gMP7121.YInc := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 0, ADR (Status.usKeyState));
|
||||
gMP7121.Service := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 28, ADR (Status.usKeyState));
|
||||
gMP7121.Up := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 20, ADR (Status.usKeyState));
|
||||
gMP7121.ZDec := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 12, ADR (Status.usKeyState));
|
||||
gMP7121.ZInc := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 36, ADR (Status.usKeyState));
|
||||
gMP7121.Left := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 29, ADR (Status.usKeyState));
|
||||
gMP7121.Down := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 21, ADR (Status.usKeyState));
|
||||
gMP7121.Right := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 13, ADR (Status.usKeyState));
|
||||
gMP7121.Ctrl := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtHandwheelValue (RFBLib, 0, ADR (gMP7121.udWheelPos));
|
||||
enMP7150:
|
||||
RfbExtKeyState(RFBLib, 0, ADR (Status.usKeyState));
|
||||
gMP7150.Service := USINT_TO_BOOL (Status.usKeyState);
|
||||
Status.uiRfbKeyState := RfbExtKeyState(RFBLib, 1, ADR (Status.usKeyState));
|
||||
gMP7150.Left1 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 2, ADR (Status.usKeyState));
|
||||
gMP7150.Left2 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 3, ADR (Status.usKeyState));
|
||||
gMP7150.Left2 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 4, ADR (Status.usKeyState));
|
||||
gMP7150.Left2 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 5, ADR (Status.usKeyState));
|
||||
gMP7150.Right1 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 6, ADR (Status.usKeyState));
|
||||
gMP7150.Right2 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 7, ADR (Status.usKeyState));
|
||||
gMP7150.Right3 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 8, ADR (Status.usKeyState));
|
||||
gMP7150.Right4 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 9, ADR (Status.usKeyState));
|
||||
gMP7150.ESC := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 10, ADR (Status.usKeyState));
|
||||
gMP7150.Second := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 11, ADR (Status.usKeyState));
|
||||
gMP7150.VInc := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 12, ADR (Status.usKeyState));
|
||||
gMP7150.VDec := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 13, ADR (Status.usKeyState));
|
||||
gMP7150.Vars := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 14, ADR (Status.usKeyState));
|
||||
gMP7150.Positions := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 15, ADR (Status.usKeyState));
|
||||
gMP7150.Projekt := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 16, ADR (Status.usKeyState));
|
||||
gMP7150.Mask1 := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 17, ADR (Status.usKeyState));
|
||||
gMP7150.Start := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 18, ADR (Status.usKeyState));
|
||||
gMP7150.Stop := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 19, ADR (Status.usKeyState));
|
||||
gMP7150.Alarms := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 20, ADR (Status.usKeyState));
|
||||
gMP7150.Settings := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 21, ADR (Status.usKeyState));
|
||||
gMP7150.Ctrl := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 120, ADR (Status.usKeyState));
|
||||
gMP7150.KeyRight := USINT_TO_BOOL (Status.usKeyState);
|
||||
RfbExtKeyState(RFBLib, 121, ADR (Status.usKeyState));
|
||||
gMP7150.KeyLeft := USINT_TO_BOOL (Status.usKeyState);
|
||||
|
||||
END_CASE
|
||||
END_IF
|
||||
|
||||
usLEDMatrix[37] := UDINT_TO_USINT (gMP7121.LED_Run);
|
||||
usLEDMatrix[38] := UDINT_TO_USINT (gMP7121.LED_Motion);
|
||||
usLEDMatrix[39] := UDINT_TO_USINT (gMP7121.LED_Error);
|
||||
usLEDMatrix[40] := UDINT_TO_USINT (gMP7121.LED_Process);
|
||||
//FixMe
|
||||
usLEDMatrix[127] := UDINT_TO_USINT (gMP7121.LED_Run);
|
||||
|
||||
END_PROGRAM
|
||||
10
Logical/Communication/MP/MPComm/IEC.prg
Normal file
10
Logical/Communication/MP/MPComm/IEC.prg
Normal file
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Program SubType="IEC" xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Cyclic code">Cyclic.st</File>
|
||||
<File Description="Init code">Init.st</File>
|
||||
<File Description="Local data types" Private="true">Types.typ</File>
|
||||
<File Description="Local variables" Private="true">Variables.var</File>
|
||||
</Files>
|
||||
</Program>
|
||||
10
Logical/Communication/MP/MPComm/Init.st
Normal file
10
Logical/Communication/MP/MPComm/Init.st
Normal file
@@ -0,0 +1,10 @@
|
||||
|
||||
|
||||
PROGRAM _INIT
|
||||
Parameter.udTimeout := 250; //Max Alter von Daten
|
||||
Parameter.strVisuName := 'VisuMP';
|
||||
Parameter.enPanelType := enMP7121;
|
||||
|
||||
Status.bConnect := TRUE; //Verbindungsaufbau erzwingen
|
||||
RfbExtInit (ADR (RFBLib), Parameter.udTimeout);
|
||||
END_PROGRAM
|
||||
23
Logical/Communication/MP/MPComm/Types.typ
Normal file
23
Logical/Communication/MP/MPComm/Types.typ
Normal file
@@ -0,0 +1,23 @@
|
||||
|
||||
TYPE
|
||||
typ_Parameter : STRUCT
|
||||
udTimeout : UDINT;
|
||||
strVisuName : STRING[80];
|
||||
enPanelType : typ_enPanels;
|
||||
END_STRUCT;
|
||||
typ_Status : STRUCT
|
||||
bConnect : BOOL;
|
||||
usKeyState : USINT;
|
||||
uiRfbTemp : UINT;
|
||||
uiRfbExtConnect : UINT;
|
||||
uiRfbKeyState : UINT;
|
||||
uiRfbDataAge : UINT;
|
||||
udDataAge : UDINT;
|
||||
END_STRUCT;
|
||||
typ_enPanels :
|
||||
(
|
||||
enMP7140,
|
||||
enMP7150,
|
||||
enMP7121
|
||||
);
|
||||
END_TYPE
|
||||
9
Logical/Communication/MP/MPComm/Variables.var
Normal file
9
Logical/Communication/MP/MPComm/Variables.var
Normal file
@@ -0,0 +1,9 @@
|
||||
(*//Strukturen*)
|
||||
VAR
|
||||
usKeystate : USINT;
|
||||
diTemperature : DINT;
|
||||
RFBLib : AsRfbExt_typ; (*RFBLib*)
|
||||
Parameter : typ_Parameter;
|
||||
Status : typ_Status;
|
||||
usLEDMatrix : ARRAY[0..127] OF USINT; (*LEDS*)
|
||||
END_VAR
|
||||
10
Logical/Communication/MP/Package.pkg
Normal file
10
Logical/Communication/MP/Package.pkg
Normal file
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Communication Types">GlobalMP.typ</Object>
|
||||
<Object Type="File" Description="Logging Vars">GlobalMP.var</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Verbindung zu MobilePanel">MPComm</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsRfbExt library provides access to extended MP40/50 functions.">asrfbext</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
158
Logical/Communication/MP/asrfbext/AsRfbExt.fun
Normal file
158
Logical/Communication/MP/asrfbext/AsRfbExt.fun
Normal file
@@ -0,0 +1,158 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT (C) BERNECKER + RAINER, AUSTRIA, A-5142 EGGELSBERG
|
||||
********************************************************************
|
||||
* Library: ASRFBEXT
|
||||
* File: ASRFBEXT.fun
|
||||
* Created: 10.04.2008
|
||||
********************************************************************
|
||||
* Functions and function blocks of library ASRFBEXT
|
||||
********************************************************************)
|
||||
|
||||
FUNCTION RfbExtInit : UINT (*init the library*)
|
||||
VAR_INPUT
|
||||
pLib : UDINT; (*instance of the library*)
|
||||
uiTimeOut : UDINT; (*maximum age in ms of the data from the client for which a valid value can be read.*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtConnect : UINT (*connect to client*)
|
||||
VAR_INPUT
|
||||
pLib : UDINT; (*instance of the library*)
|
||||
pName : UDINT; (*pointer to STRING containing the name of the visualization*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtSetClientCaption : UINT (*set client caption*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
pClientCaption : UDINT; (*pointer to STRING containing the new title*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtSetPassword : UINT (*set vnc password*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
mode : USINT; (*defines which password to set. 0 = view only, 1 = view and control*)
|
||||
pPassword : UDINT; (*pointer to STRING which contains the new password*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtKeyState : UINT (*get the state of a key*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
index : USINT; (*index of the key*)
|
||||
pValue : UDINT; (*pointer to USINT variable containing the value of the key*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtReconnect : UINT (*terminate current connection and let client connect to new ip address*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
pTargetIp : UDINT; (*pointer to STRING containing the ip-address of the target*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
|
||||
FUNCTION RfbExtStartProcess : UINT (*start a process on the client side*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
pcmdLine : UDINT; (*pointer to STRING containing the name of the command line*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtProcessState : UINT (*get the state of a process running on the client side*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
piProcessState : UDINT; (*pointer to DINT variable containing the state of process*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
|
||||
FUNCTION RfbExtNrClientsConnected : UINT (*get the number of clients connected*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtServerTimeout : UINT (*set the server timeout*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
timeout : UDINT; (*timeout in ms*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtDisableClientLogin : UINT (*disable all clients from login*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtDisconnectAllClients : UINT (*disconnect all clients*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtEnableClientLogin : UINT (*enable client login*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtSetMaxClients : UINT (*set the max number of clients allowed*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
maxClients : USINT; (*maximum number of clients to be allowed (max = 10)*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
|
||||
FUNCTION RfbExtDataAge : UINT (*get the age of the client data*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
pAge : UDINT; (*age of last refresh of client window*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtJoystickValue : UINT (*get joystick value*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
index : USINT; (*index of the joystick (0 = first joystick)*)
|
||||
pValueX : UDINT; (*pointer to DINT variable containing the x value*)
|
||||
pValueY : UDINT; (*pointer to DINT variable containing the y value*)
|
||||
pValueZ : UDINT; (*pointer to DINT variable containing the z value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtResetHandwheelValue : UINT (*reset handwheel value*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
index : USINT; (*index of the handwheel (0 = first handwheel)*)
|
||||
value : DINT; (*new value for the handwheel*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtHandwheelValue : UINT (*get the handwheel value*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
index : USINT; (*index of the handwheel (0 = first handwheel)*)
|
||||
pValue : UDINT; (*pointer to UDINT variable containing the value of the handwheel*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtPotiValue : UINT (*get the value of the potentiometer*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
index : USINT; (*index of the potentiometer (0 = first potentiometer)*)
|
||||
pValue : UDINT; (*pointer to UDINT variable containing the value of the potentiometer*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION RfbExtTemperatureValue : UINT (*get the temperature value*)
|
||||
VAR_INPUT
|
||||
pLib : AsRfbExt_typ; (*pointer to the instance of the library*)
|
||||
index : USINT; (*index of the temperature (0 = first temperature)*)
|
||||
pValue : UDINT; (*pointer to DINT variable containing the temperature value*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
26
Logical/Communication/MP/asrfbext/AsRfbExt.typ
Normal file
26
Logical/Communication/MP/asrfbext/AsRfbExt.typ
Normal file
@@ -0,0 +1,26 @@
|
||||
(********************************************************************
|
||||
* COPYRIGHT (C) BERNECKER + RAINER, AUSTRIA, A-5142 EGGELSBERG
|
||||
********************************************************************
|
||||
* Library: AsRfbExt
|
||||
* File: AsRfbExt.typ
|
||||
* Created: 10.04.2008
|
||||
********************************************************************
|
||||
* Global data types of library AsRfbExt
|
||||
********************************************************************)
|
||||
TYPE
|
||||
AsRfbExtType : STRUCT
|
||||
pClient : UDINT;
|
||||
pHeader : UDINT;
|
||||
uiTimeOut : UDINT;
|
||||
uiTimeOutValue : UDINT;
|
||||
status : UINT;
|
||||
END_STRUCT;
|
||||
|
||||
AsRfbExt_typ : STRUCT
|
||||
pClient : UDINT;
|
||||
pHeader : UDINT;
|
||||
uiTimeOut : UDINT;
|
||||
uiTimeOutValue : UDINT;
|
||||
status : UINT;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
11
Logical/Communication/MP/asrfbext/Binary.lby
Normal file
11
Logical/Communication/MP/asrfbext/Binary.lby
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Version="4.33.0" Description="The AsRfbExt library provides access to extended MP40/50 functions." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsRfbExt.fun</File>
|
||||
<File>AsRfbExt.typ</File>
|
||||
</Files>
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
5
Logical/Communication/MP/asrfbext/Ignore.txt
Normal file
5
Logical/Communication/MP/asrfbext/Ignore.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
Just for internal use. Do not modify or delete this file!!
|
||||
|
||||
This file indicates that the default library structure for Ar dependent libraries will be irgnored and the libary is treated as versioned library.
|
||||
|
||||
Therefore if a library folder contains this file but no library versions the library isn't valid anymore.
|
||||
6
Logical/Communication/MP/asrfbext/IgnoreIgnore.txt
Normal file
6
Logical/Communication/MP/asrfbext/IgnoreIgnore.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
Just for internal use. Do not modify or delete this file!!
|
||||
|
||||
This file indicates that the default library structure for versioned libraries will be ignored and the libary is treated as Ar or Vc dependent library.
|
||||
Only counts for AS 3.00.80.xx or higher versions.
|
||||
|
||||
Therefore if a library folder contains this file but no library declaration files the library isn't valid anymore.
|
||||
66
Logical/Communication/MP/asrfbext/SG3/asrfbext.h
Normal file
66
Logical/Communication/MP/asrfbext/SG3/asrfbext.h
Normal file
@@ -0,0 +1,66 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASRFBEXT_
|
||||
#define _ASRFBEXT_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct AsRfbExtType
|
||||
{ unsigned long pClient;
|
||||
unsigned long pHeader;
|
||||
unsigned long uiTimeOut;
|
||||
unsigned long uiTimeOutValue;
|
||||
unsigned short status;
|
||||
} AsRfbExtType;
|
||||
|
||||
typedef struct AsRfbExt_typ
|
||||
{ unsigned long pClient;
|
||||
unsigned long pHeader;
|
||||
unsigned long uiTimeOut;
|
||||
unsigned long uiTimeOutValue;
|
||||
unsigned short status;
|
||||
} AsRfbExt_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short RfbExtInit(unsigned long pLib, unsigned long uiTimeOut);
|
||||
unsigned short RfbExtConnect(unsigned long pLib, unsigned long pName);
|
||||
unsigned short RfbExtSetClientCaption(struct AsRfbExt_typ* pLib, unsigned long pClientCaption);
|
||||
unsigned short RfbExtSetPassword(struct AsRfbExt_typ* pLib, unsigned char mode, unsigned long pPassword);
|
||||
unsigned short RfbExtKeyState(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
unsigned short RfbExtReconnect(struct AsRfbExt_typ* pLib, unsigned long pTargetIp);
|
||||
unsigned short RfbExtStartProcess(struct AsRfbExt_typ* pLib, unsigned long pcmdLine);
|
||||
unsigned short RfbExtProcessState(struct AsRfbExt_typ* pLib, unsigned long piProcessState);
|
||||
unsigned short RfbExtNrClientsConnected(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtServerTimeout(struct AsRfbExt_typ* pLib, unsigned long timeout);
|
||||
unsigned short RfbExtDisableClientLogin(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtDisconnectAllClients(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtEnableClientLogin(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtSetMaxClients(struct AsRfbExt_typ* pLib, unsigned char maxClients);
|
||||
unsigned short RfbExtDataAge(struct AsRfbExt_typ* pLib, unsigned long pAge);
|
||||
unsigned short RfbExtJoystickValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValueX, unsigned long pValueY, unsigned long pValueZ);
|
||||
unsigned short RfbExtResetHandwheelValue(struct AsRfbExt_typ* pLib, unsigned char index, signed long value);
|
||||
unsigned short RfbExtHandwheelValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
unsigned short RfbExtPotiValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
|
||||
|
||||
__asm__(".section \".plc\"");
|
||||
|
||||
__asm__(".previous");
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASRFBEXT_ */
|
||||
|
||||
62
Logical/Communication/MP/asrfbext/SG4/asrfbext.h
Normal file
62
Logical/Communication/MP/asrfbext/SG4/asrfbext.h
Normal file
@@ -0,0 +1,62 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASRFBEXT_
|
||||
#define _ASRFBEXT_
|
||||
#ifndef _BUR_PUBLIC
|
||||
#define _BUR_PUBLIC
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct AsRfbExtType
|
||||
{ unsigned long pClient;
|
||||
unsigned long pHeader;
|
||||
unsigned long uiTimeOut;
|
||||
unsigned long uiTimeOutValue;
|
||||
unsigned short status;
|
||||
} AsRfbExtType;
|
||||
|
||||
typedef struct AsRfbExt_typ
|
||||
{ unsigned long pClient;
|
||||
unsigned long pHeader;
|
||||
unsigned long uiTimeOut;
|
||||
unsigned long uiTimeOutValue;
|
||||
unsigned short status;
|
||||
} AsRfbExt_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
_BUR_PUBLIC unsigned short RfbExtInit(unsigned long pLib, unsigned long uiTimeOut);
|
||||
_BUR_PUBLIC unsigned short RfbExtConnect(unsigned long pLib, unsigned long pName);
|
||||
_BUR_PUBLIC unsigned short RfbExtSetClientCaption(struct AsRfbExt_typ* pLib, unsigned long pClientCaption);
|
||||
_BUR_PUBLIC unsigned short RfbExtSetPassword(struct AsRfbExt_typ* pLib, unsigned char mode, unsigned long pPassword);
|
||||
_BUR_PUBLIC unsigned short RfbExtKeyState(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
_BUR_PUBLIC unsigned short RfbExtReconnect(struct AsRfbExt_typ* pLib, unsigned long pTargetIp);
|
||||
_BUR_PUBLIC unsigned short RfbExtStartProcess(struct AsRfbExt_typ* pLib, unsigned long pcmdLine);
|
||||
_BUR_PUBLIC unsigned short RfbExtProcessState(struct AsRfbExt_typ* pLib, unsigned long piProcessState);
|
||||
_BUR_PUBLIC unsigned short RfbExtNrClientsConnected(struct AsRfbExt_typ* pLib);
|
||||
_BUR_PUBLIC unsigned short RfbExtServerTimeout(struct AsRfbExt_typ* pLib, unsigned long timeout);
|
||||
_BUR_PUBLIC unsigned short RfbExtDisableClientLogin(struct AsRfbExt_typ* pLib);
|
||||
_BUR_PUBLIC unsigned short RfbExtDisconnectAllClients(struct AsRfbExt_typ* pLib);
|
||||
_BUR_PUBLIC unsigned short RfbExtEnableClientLogin(struct AsRfbExt_typ* pLib);
|
||||
_BUR_PUBLIC unsigned short RfbExtSetMaxClients(struct AsRfbExt_typ* pLib, unsigned char maxClients);
|
||||
_BUR_PUBLIC unsigned short RfbExtDataAge(struct AsRfbExt_typ* pLib, unsigned long pAge);
|
||||
_BUR_PUBLIC unsigned short RfbExtJoystickValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValueX, unsigned long pValueY, unsigned long pValueZ);
|
||||
_BUR_PUBLIC unsigned short RfbExtResetHandwheelValue(struct AsRfbExt_typ* pLib, unsigned char index, signed long value);
|
||||
_BUR_PUBLIC unsigned short RfbExtHandwheelValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
_BUR_PUBLIC unsigned short RfbExtPotiValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
_BUR_PUBLIC unsigned short RfbExtTemperatureValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASRFBEXT_ */
|
||||
|
||||
66
Logical/Communication/MP/asrfbext/SGC/asrfbext.h
Normal file
66
Logical/Communication/MP/asrfbext/SGC/asrfbext.h
Normal file
@@ -0,0 +1,66 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASRFBEXT_
|
||||
#define _ASRFBEXT_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct AsRfbExtType
|
||||
{ unsigned long pClient;
|
||||
unsigned long pHeader;
|
||||
unsigned long uiTimeOut;
|
||||
unsigned long uiTimeOutValue;
|
||||
unsigned short status;
|
||||
} AsRfbExtType;
|
||||
|
||||
typedef struct AsRfbExt_typ
|
||||
{ unsigned long pClient;
|
||||
unsigned long pHeader;
|
||||
unsigned long uiTimeOut;
|
||||
unsigned long uiTimeOutValue;
|
||||
unsigned short status;
|
||||
} AsRfbExt_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short RfbExtInit(unsigned long pLib, unsigned long uiTimeOut);
|
||||
unsigned short RfbExtConnect(unsigned long pLib, unsigned long pName);
|
||||
unsigned short RfbExtSetClientCaption(struct AsRfbExt_typ* pLib, unsigned long pClientCaption);
|
||||
unsigned short RfbExtSetPassword(struct AsRfbExt_typ* pLib, unsigned char mode, unsigned long pPassword);
|
||||
unsigned short RfbExtKeyState(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
unsigned short RfbExtReconnect(struct AsRfbExt_typ* pLib, unsigned long pTargetIp);
|
||||
unsigned short RfbExtStartProcess(struct AsRfbExt_typ* pLib, unsigned long pcmdLine);
|
||||
unsigned short RfbExtProcessState(struct AsRfbExt_typ* pLib, unsigned long piProcessState);
|
||||
unsigned short RfbExtNrClientsConnected(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtServerTimeout(struct AsRfbExt_typ* pLib, unsigned long timeout);
|
||||
unsigned short RfbExtDisableClientLogin(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtDisconnectAllClients(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtEnableClientLogin(struct AsRfbExt_typ* pLib);
|
||||
unsigned short RfbExtSetMaxClients(struct AsRfbExt_typ* pLib, unsigned char maxClients);
|
||||
unsigned short RfbExtDataAge(struct AsRfbExt_typ* pLib, unsigned long pAge);
|
||||
unsigned short RfbExtJoystickValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValueX, unsigned long pValueY, unsigned long pValueZ);
|
||||
unsigned short RfbExtResetHandwheelValue(struct AsRfbExt_typ* pLib, unsigned char index, signed long value);
|
||||
unsigned short RfbExtHandwheelValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
unsigned short RfbExtPotiValue(struct AsRfbExt_typ* pLib, unsigned char index, unsigned long pValue);
|
||||
|
||||
|
||||
__asm__(".section \".plc\"");
|
||||
|
||||
__asm__(".previous");
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASRFBEXT_ */
|
||||
|
||||
12
Logical/Communication/Package.pkg
Normal file
12
Logical/Communication/Package.pkg
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio FileVersion="4.9"?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Communication Types">GlobalCom.typ</Object>
|
||||
<Object Type="File" Description="Logging Vars">GlobalCom.var</Object>
|
||||
<Object Type="Program" Language="IEC" Description="13 Mhz Transponder B&R + Scanner HR 100">RFID_USB</Object>
|
||||
<Object Type="Package" Description="Mobile Panel">MP</Object>
|
||||
<Object Type="Package" Description="IPG Laser">IPG</Object>
|
||||
<Object Type="Package" Description="Schneidkopf">RayTools</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
52
Logical/Communication/RFID_USB/ASCtoUDINT.st
Normal file
52
Logical/Communication/RFID_USB/ASCtoUDINT.st
Normal file
@@ -0,0 +1,52 @@
|
||||
FUNCTION ASCtoUDINT
|
||||
ASCtoUDINT := 0;
|
||||
udNextAdr := udInNextAdr;
|
||||
IF bInReverse THEN
|
||||
sStart := 7;
|
||||
sEnd := 0;
|
||||
sStep := -1;
|
||||
ELSE
|
||||
sStart := 0;
|
||||
sEnd := 7;
|
||||
sStep := 1;
|
||||
END_IF
|
||||
FOR usi := sStart TO sEnd BY sStep DO
|
||||
brsmemcpy (ADR (usChar), udNextAdr + usi, 1);
|
||||
CASE usChar OF
|
||||
48:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 0;
|
||||
49:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 1;
|
||||
50:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 2;
|
||||
51:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 3;
|
||||
52:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 4;
|
||||
53:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 5;
|
||||
54:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 6;
|
||||
55:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 7;
|
||||
56:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 8;
|
||||
57:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 9;
|
||||
65:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 10;
|
||||
66:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 11;
|
||||
67:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 12;
|
||||
68:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 13;
|
||||
69:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 14;
|
||||
70:
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 15;
|
||||
ELSE
|
||||
ASCtoUDINT := SHL (ASCtoUDINT, 4) + 16#f;
|
||||
END_CASE
|
||||
END_FOR
|
||||
END_FUNCTION
|
||||
12
Logical/Communication/RFID_USB/IEC.prg
Normal file
12
Logical/Communication/RFID_USB/IEC.prg
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.4.121 SP?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Implementation code">RFID_USB.st</File>
|
||||
<File Description="Local variables" Private="true">RFID_USB.var</File>
|
||||
<File Description="Local data types" Private="true">RFID_USB.typ</File>
|
||||
<File Private="true">RFID_USB.fun</File>
|
||||
<File Description="Convert ASCII Value to UDINT">ASCtoUDINT.st</File>
|
||||
<File Description="Convert UDINT Value to ASCII">UDINTtoASC.st</File>
|
||||
</Files>
|
||||
</Program>
|
||||
28
Logical/Communication/RFID_USB/RFID_USB.fun
Normal file
28
Logical/Communication/RFID_USB/RFID_USB.fun
Normal file
@@ -0,0 +1,28 @@
|
||||
|
||||
FUNCTION ASCtoUDINT : UDINT (*Convert ASCII Value to UDINT*)
|
||||
VAR_INPUT
|
||||
udInNextAdr : UDINT; (*Next Pos in ByteStream (No CHECK)*)
|
||||
bInReverse : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
udNextAdr : UDINT;
|
||||
usi : SINT;
|
||||
sStart : SINT;
|
||||
sEnd : SINT;
|
||||
sStep : SINT;
|
||||
usChar : USINT;
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
|
||||
FUNCTION UDINTtoASC : UDINT (*Convert UDINT Value to ASCII*)
|
||||
VAR_INPUT
|
||||
udInNextAdr : UDINT; (*Next Pos in ByteStream (No CHECK)*)
|
||||
udInValue : UDINT;
|
||||
END_VAR
|
||||
VAR
|
||||
udNextAdr : UDINT;
|
||||
udValue : UDINT;
|
||||
usi : USINT;
|
||||
usChar : USINT;
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
1019
Logical/Communication/RFID_USB/RFID_USB.st
Normal file
1019
Logical/Communication/RFID_USB/RFID_USB.st
Normal file
File diff suppressed because it is too large
Load Diff
68
Logical/Communication/RFID_USB/RFID_USB.typ
Normal file
68
Logical/Communication/RFID_USB/RFID_USB.typ
Normal file
@@ -0,0 +1,68 @@
|
||||
|
||||
TYPE
|
||||
typ_enStepRFID :
|
||||
( (*Schritte RFID Leser*)
|
||||
enRFIDStep_INIT, (*Init -> Search Reader*)
|
||||
enRFIDStep_USB_GETNODELIST, (*Get USB Devices*)
|
||||
enRFIDStep_USB_SEARCHDEVICE, (*Search Reader in Devices*)
|
||||
enRFIDStep_USB_READDEVDESCR, (*Get Device Descriptor*)
|
||||
enRFIDStep_IDLE
|
||||
);
|
||||
typ_enCmdRFID :
|
||||
(
|
||||
enRFIDCMD_NONE,
|
||||
enRFIDCMD_READ_INVENTORY,
|
||||
enRFIDCMD_READ_SYSINFO,
|
||||
enRFIDCMD_READ_SBLOCK,
|
||||
enRFIDCMD_WRITE_SBLOCK,
|
||||
enRFIDCMD_WRITE_AFI,
|
||||
enRFIDCMD_WRITE_DFSID
|
||||
);
|
||||
typ_enStepRFIDReader :
|
||||
( (*Schritte RFID Leser*)
|
||||
enRFIDReaderStep_INIT, (*Init -> Search Reader*)
|
||||
enRFIDReaderStep_USB_DVDEVOPEN, (*Open Reader*)
|
||||
enRFIDReaderStep_INIT_READER, (*Initialize Reader*)
|
||||
enRFIDReaderStep_INIT_SET_AGC, (*Initialize Reader*)
|
||||
enRFIDReaderStep_INIT_SET_RCVM, (*Initialize Reader*)
|
||||
enRFIDReaderStep_IDLE, (*Wait for commands*)
|
||||
enRFIDReaderStep_READ, (*READ from Reader*)
|
||||
enRFIDReaderStep_WRITE (*WRITE to Reader*)
|
||||
);
|
||||
typ_FUBs : STRUCT (*Funktionsblocks*)
|
||||
UsbNodeGet : {REDUND_UNREPLICABLE} UsbNodeGet;
|
||||
UsbNodeListGet : {REDUND_UNREPLICABLE} UsbNodeListGet;
|
||||
UsbDescriptorGet : {REDUND_UNREPLICABLE} UsbDescriptorGet;
|
||||
FrameRead1 : {REDUND_UNREPLICABLE} FRM_read;
|
||||
FrameRead2 : {REDUND_UNREPLICABLE} FRM_read;
|
||||
FrameRead3 : {REDUND_UNREPLICABLE} FRM_read;
|
||||
FrameRead4 : {REDUND_UNREPLICABLE} FRM_read;
|
||||
FrameRead5 : {REDUND_UNREPLICABLE} FRM_read;
|
||||
FrameReleaseBuffer1 : {REDUND_UNREPLICABLE} FRM_rbuf;
|
||||
FrameReleaseBuffer2 : {REDUND_UNREPLICABLE} FRM_rbuf;
|
||||
FrameReleaseBuffer3 : {REDUND_UNREPLICABLE} FRM_rbuf;
|
||||
FrameReleaseBuffer4 : {REDUND_UNREPLICABLE} FRM_rbuf;
|
||||
FrameReleaseBuffer5 : {REDUND_UNREPLICABLE} FRM_rbuf;
|
||||
FrameWrite1 : {REDUND_UNREPLICABLE} FRM_write;
|
||||
FrameWrite2 : {REDUND_UNREPLICABLE} FRM_write;
|
||||
FrameWrite3 : {REDUND_UNREPLICABLE} FRM_write;
|
||||
FrameWrite4 : {REDUND_UNREPLICABLE} FRM_write;
|
||||
FrameWrite5 : {REDUND_UNREPLICABLE} FRM_write;
|
||||
FrameXOpen1 : {REDUND_UNREPLICABLE} FRM_xopen;
|
||||
FrameXOpen2 : {REDUND_UNREPLICABLE} FRM_xopen;
|
||||
FrameXOpen3 : {REDUND_UNREPLICABLE} FRM_xopen;
|
||||
FrameXOpen4 : {REDUND_UNREPLICABLE} FRM_xopen;
|
||||
FrameXOpen5 : {REDUND_UNREPLICABLE} FRM_xopen;
|
||||
TON_DelayUSB : TON;
|
||||
TON_Read1 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Read2 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Read3 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Read4 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Read5 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Timeout1 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Timeout2 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Timeout3 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Timeout4 : {REDUND_UNREPLICABLE} TON;
|
||||
TON_Timeout5 : {REDUND_UNREPLICABLE} TON;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
76
Logical/Communication/RFID_USB/RFID_USB.var
Normal file
76
Logical/Communication/RFID_USB/RFID_USB.var
Normal file
@@ -0,0 +1,76 @@
|
||||
(*//Konfiguration*)
|
||||
VAR
|
||||
NEEDED_DEVICES : {REDUND_UNREPLICABLE} USINT := 1; (*Anzahl RFID Leser verbaut*)
|
||||
udRFIDSerialReader1 : {REDUND_UNREPLICABLE} UDINT := 1; (*Serien Nr RFID Reader 1 (User Auth)*)
|
||||
udRFIDSerialReader2 : {REDUND_UNREPLICABLE} UDINT := 0; (*Serien Nr RFID Reader 2 (Tool 1)*)
|
||||
udRFIDSerialReader3 : {REDUND_UNREPLICABLE} UDINT := 0; (*Serien Nr RFID Reader 3 (Tool 2)*)
|
||||
udRFIDSerialReader4 : {REDUND_UNREPLICABLE} UDINT := 0; (*Serien Nr RFID Reader 4*)
|
||||
END_VAR
|
||||
(*//---------------------------------------------*)
|
||||
VAR
|
||||
bDbgFlag : USINT;
|
||||
sizeUsbNode : USINT;
|
||||
END_VAR
|
||||
VAR RETAIN
|
||||
usNodeIx : USINT;
|
||||
END_VAR
|
||||
VAR
|
||||
usi : USINT;
|
||||
uij : UINT;
|
||||
usFoundReaders : USINT;
|
||||
usFoundScanner : USINT;
|
||||
END_VAR
|
||||
VAR RETAIN
|
||||
usNodeIxSanner : USINT := 99; (*Node Index Scanner*)
|
||||
usNodeIxReader1 : USINT := 99; (*Node Index Reader 1*)
|
||||
usNodeIxReader2 : USINT := 99; (*Node Index Reader 2*)
|
||||
usNodeIxReader3 : USINT := 99; (*Node Index Reader 3*)
|
||||
usNodeIxReader4 : USINT := 99; (*Node Index Reader 4*)
|
||||
END_VAR
|
||||
VAR
|
||||
usBlockNr : USINT;
|
||||
usTemp : USINT;
|
||||
udSerialNr : ARRAY[0..31] OF UDINT;
|
||||
uiReadAnswer : ARRAY[1..5] OF UINT;
|
||||
uiReadBufferLength : ARRAY[1..5] OF UINT;
|
||||
uiReadCount : ARRAY[1..5] OF UINT;
|
||||
uiLength : UINT;
|
||||
udAttachDetachCount : UDINT;
|
||||
udNodeList : ARRAY[0..31] OF UDINT;
|
||||
pReadBuffer : ARRAY[1..5] OF UDINT;
|
||||
udTemp : UDINT;
|
||||
usTempSc : ARRAY[0..200] OF USINT;
|
||||
udLastAuthRFID : UDINT;
|
||||
udTemp2 : UDINT;
|
||||
udWriteData : UDINT;
|
||||
udErrors : ARRAY[1..5] OF UDINT;
|
||||
strReadData : {REDUND_UNREPLICABLE} ARRAY[1..5] OF STRING[80];
|
||||
strReadTag : ARRAY[1..5] OF STRING[80];
|
||||
strDeviceDescr : ARRAY[1..5] OF WSTRING[80];
|
||||
strWriteData : ARRAY[1..5] OF STRING[80];
|
||||
strWriteDatalen : ARRAY[1..5] OF STRING[2];
|
||||
strWriteTelegram : ARRAY[1..5] OF STRING[80];
|
||||
strTemp : STRING[2];
|
||||
enStep : typ_enStepRFID;
|
||||
enStepReader1 : typ_enStepRFIDReader;
|
||||
enStepReader1_Latch : typ_enStepRFIDReader;
|
||||
enStepReader2 : typ_enStepRFIDReader;
|
||||
enStepReader2_Latch : typ_enStepRFIDReader;
|
||||
enStepReader3 : typ_enStepRFIDReader;
|
||||
enStepReader3_Latch : typ_enStepRFIDReader;
|
||||
enStepReader4 : typ_enStepRFIDReader;
|
||||
enStepReader4_Latch : typ_enStepRFIDReader;
|
||||
enStepScanner : typ_enStepRFIDReader;
|
||||
enStepScanner_Latch : typ_enStepRFIDReader;
|
||||
enCmd1 : typ_enCmdRFID;
|
||||
enCmd2 : typ_enCmdRFID;
|
||||
enCmd3 : typ_enCmdRFID;
|
||||
enCmd4 : typ_enCmdRFID;
|
||||
usbDevice : ARRAY[0..31] OF usbNode_typ;
|
||||
FUBs : typ_FUBs;
|
||||
END_VAR
|
||||
VAR CONSTANT
|
||||
TRANSPONDER_FTDI_VENDOR_ID : UINT := 16#0403;
|
||||
TRANSPONDER_FTDI_PRODUCT_ID : UINT := 16#6001;
|
||||
TRANSPONDER_FTDI_BCD : UINT := 16#0600;
|
||||
END_VAR
|
||||
44
Logical/Communication/RFID_USB/UDINTtoASC.st
Normal file
44
Logical/Communication/RFID_USB/UDINTtoASC.st
Normal file
@@ -0,0 +1,44 @@
|
||||
FUNCTION UDINTtoASC
|
||||
UDINTtoASC := udNextAdr + 8;
|
||||
udNextAdr := udInNextAdr;
|
||||
udValue := udInValue;
|
||||
FOR usi:=7 TO 0 BY -1 DO
|
||||
usChar := UDINT_TO_USINT (udValue MOD 16);
|
||||
usChar := UDINT_TO_USINT (udValue / 16);
|
||||
brsmemcpy (ADR (usChar), udNextAdr + usi, 1);
|
||||
CASE usChar OF
|
||||
0:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('0'), 1);
|
||||
1:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('1'), 1);
|
||||
2:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('2'), 1);
|
||||
3:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('3'), 1);
|
||||
4:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('4'), 1);
|
||||
5:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('5'), 1);
|
||||
6:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('6'), 1);
|
||||
7:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('7'), 1);
|
||||
8:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('8'), 1);
|
||||
9:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('9'), 1);
|
||||
10:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('A'), 1);
|
||||
11:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('B'), 1);
|
||||
12:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('C'), 1);
|
||||
13:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('D'), 1);
|
||||
14:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('E'), 1);
|
||||
15:
|
||||
brsmemcpy (udNextAdr + usi, ADR ('F'), 1);
|
||||
END_CASE
|
||||
END_FOR
|
||||
END_FUNCTION
|
||||
7
Logical/Communication/RayTools/Package.pkg
Normal file
7
Logical/Communication/RayTools/Package.pkg
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Program" Language="IEC">Raytools</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
31
Logical/Communication/RayTools/Raytools/Cyclic.st
Normal file
31
Logical/Communication/RayTools/Raytools/Cyclic.st
Normal file
@@ -0,0 +1,31 @@
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
|
||||
//Interface von Raytools Kopf
|
||||
gRTLaserInterface.In.bHeadIsOk := NOT bInAlarm AND bInCalibrated AND bInReady;
|
||||
gRTLaserInterface.In.bHeadIsMidPos := bInMidPosArrived;
|
||||
gRTLaserInterface.In.bHeadIsInFollowpos := bInFollowPosition;
|
||||
|
||||
//Interface an Raytools Kopf
|
||||
bOuFollowPos := gRTLaserInterface.Out.bFollowPos AND NOT TOF_Error.Q AND bInReady;
|
||||
bOuMidpos := gRTLaserInterface.Out.bMidPos AND NOT bInMidPosArrived AND NOT TOF_FollowPos.Q AND NOT TOF_Error.Q
|
||||
AND NOT TON_MidPosTimeout.Q AND NOT TOF_MidPosTimeouterror.Q AND bInReady;
|
||||
bOuReset := gMP7121.Button;
|
||||
|
||||
TOF_FollowPos.IN := bOuFollowPos;
|
||||
TOF_FollowPos.PT := t#20ms;
|
||||
TOF_FollowPos ();
|
||||
|
||||
TOF_Error.IN := bInAlarm;
|
||||
TOF_Error.PT := t#20ms;
|
||||
TOF_Error ();
|
||||
|
||||
TON_MidPosTimeout.IN := bOuMidpos;
|
||||
TON_MidPosTimeout.PT := t#1s;
|
||||
TON_MidPosTimeout ();
|
||||
|
||||
TOF_MidPosTimeouterror.IN := TON_MidPosTimeout.Q;
|
||||
TOF_MidPosTimeouterror.PT := t#20ms;
|
||||
TOF_MidPosTimeouterror ();
|
||||
|
||||
END_PROGRAM
|
||||
6
Logical/Communication/RayTools/Raytools/Exit.st
Normal file
6
Logical/Communication/RayTools/Raytools/Exit.st
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
PROGRAM _EXIT
|
||||
(* Insert code here *)
|
||||
|
||||
END_PROGRAM
|
||||
12
Logical/Communication/RayTools/Raytools/IEC.prg
Normal file
12
Logical/Communication/RayTools/Raytools/IEC.prg
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.7.5.60 SP?>
|
||||
<Program SubType="IEC" xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Cyclic code">Cyclic.st</File>
|
||||
<File Description="Init code">Init.st</File>
|
||||
<File Description="Exit code">Exit.st</File>
|
||||
<File Description="Local data types" Private="true">Types.typ</File>
|
||||
<File Description="Local variables" Private="true">Variables.var</File>
|
||||
<File Description="IOs" Private="true">IOs.var</File>
|
||||
</Files>
|
||||
</Program>
|
||||
21
Logical/Communication/RayTools/Raytools/IOs.var
Normal file
21
Logical/Communication/RayTools/Raytools/IOs.var
Normal file
@@ -0,0 +1,21 @@
|
||||
(*//Inputs*)
|
||||
VAR
|
||||
bInAlarm : BOOL;
|
||||
bInFollowPosition : BOOL;
|
||||
bInMidPosArrived : BOOL;
|
||||
bInInHome : BOOL;
|
||||
bInCalibrated : BOOL;
|
||||
bInReady : BOOL;
|
||||
bInPosLimits : BOOL;
|
||||
END_VAR
|
||||
(*//Outputs*)
|
||||
VAR
|
||||
bOuCalibrate : BOOL;
|
||||
bOuFollowPos : BOOL;
|
||||
bOuHome : BOOL;
|
||||
bOuClearToCapacitance : BOOL;
|
||||
bOuReset : BOOL;
|
||||
bOuMidpos : BOOL;
|
||||
bOuCornerComp1 : BOOL;
|
||||
bOuCornerComp2 : BOOL;
|
||||
END_VAR
|
||||
6
Logical/Communication/RayTools/Raytools/Init.st
Normal file
6
Logical/Communication/RayTools/Raytools/Init.st
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
PROGRAM _INIT
|
||||
(* Insert code here *)
|
||||
|
||||
END_PROGRAM
|
||||
0
Logical/Communication/RayTools/Raytools/Types.typ
Normal file
0
Logical/Communication/RayTools/Raytools/Types.typ
Normal file
6
Logical/Communication/RayTools/Raytools/Variables.var
Normal file
6
Logical/Communication/RayTools/Raytools/Variables.var
Normal file
@@ -0,0 +1,6 @@
|
||||
VAR
|
||||
TOF_FollowPos : TOF;
|
||||
TOF_Error : TOF;
|
||||
TOF_MidPosTimeouterror : TOF;
|
||||
TON_MidPosTimeout : TON;
|
||||
END_VAR
|
||||
324
Logical/File/FileEdit/Cyclic.st
Normal file
324
Logical/File/FileEdit/Cyclic.st
Normal file
@@ -0,0 +1,324 @@
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
strDevice := 'CNC_PrgDir';
|
||||
strPath := '';
|
||||
|
||||
//Parameter
|
||||
VCCtrl.ListboxEdit.usMinIndex := 0;
|
||||
VCCtrl.ListboxEdit.usMaxIndex := Parameter.usEditLines;
|
||||
|
||||
lstrEditline ACCESS ADR (strLines[VCCtrl.ListboxEdit.usIndexDatapoint]);
|
||||
|
||||
FUBs.TON_ReadDir.IN := NOT bReadDir;
|
||||
FUBs.TON_ReadDir.PT := t#90s;
|
||||
FUBs.TON_ReadDir ();
|
||||
IF FUBs.TON_ReadDir.Q THEN
|
||||
bReadDir := TRUE;
|
||||
END_IF
|
||||
|
||||
CASE enDirStep OF
|
||||
//auf Befehl warten
|
||||
//=================================
|
||||
enDirStep_WAIT:
|
||||
IF bReadDir THEN
|
||||
enDirStep := enDirStep_DIRINFO;
|
||||
bReadDir := FALSE;
|
||||
END_IF
|
||||
|
||||
|
||||
//Verzeichnisinfo lesen
|
||||
//=================================
|
||||
enDirStep_DIRINFO:
|
||||
FUBs.DirInfo.pDevice := ADR (strDevice);
|
||||
FUBs.DirInfo.pPath := ADR (strPath);
|
||||
FUBs.DirInfo.enable := TRUE;
|
||||
IF (FUBs.DirInfo.status = ERR_OK) THEN
|
||||
FUBs.DirInfo.enable := FALSE;
|
||||
States.udFilesInDir := FUBs.DirInfo.filenum;
|
||||
IF (States.udFilesInDir > 0) THEN
|
||||
States.udFilesInDir := States.udFilesInDir - 1;
|
||||
END_IF
|
||||
VCCtrl.DropDownBoxFile.usMaxIndex := UDINT_TO_USINT (States.udFilesInDir);
|
||||
udCurrentFile := 0;
|
||||
enDirStep := enDirStep_READDIR;
|
||||
ELSIF (FUBs.DirInfo.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBStates.DirInfo := FUBs.DirInfo.status;
|
||||
FUBs.DirInfo.enable := FALSE;
|
||||
enDirStep := enDirStep_WAIT;
|
||||
END_IF
|
||||
|
||||
//Datei lesen
|
||||
//=================================
|
||||
enDirStep_READDIR:
|
||||
FUBs.DirRead.enable := (udCurrentFile <= States.udFilesInDir);
|
||||
FUBs.DirRead.entry := udCurrentFile;
|
||||
FUBs.DirRead.pDevice := ADR (strDevice);
|
||||
FUBs.DirRead.pPath := ADR (strPath);
|
||||
FUBs.DirRead.option := fiFILE;
|
||||
FUBs.DirRead.pData := ADR (DirReadData);
|
||||
FUBs.DirRead.data_len := SIZEOF (DirReadData);
|
||||
IF (udCurrentFile > States.udFilesInDir) THEN
|
||||
enDirStep := enDirStep_WAIT;
|
||||
ELSIF (FUBs.DirRead.status = ERR_OK) THEN
|
||||
FUBs.DirRead.enable := FALSE;
|
||||
enDirStep := enDirStep_BUILDLIST;
|
||||
ELSIF (FUBs.DirRead.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBStates.DirRead := FUBs.DirRead.status;
|
||||
FUBs.DirRead.enable := FALSE;
|
||||
enDirStep := enDirStep_WAIT;
|
||||
END_IF
|
||||
|
||||
//Liste Bilden
|
||||
enDirStep_BUILDLIST:
|
||||
brsmemcpy (ADR (gstrFilenames[udCurrentFile]), ADR (DirReadData.Filename), SIZEOF (gstrFilenames[0]));
|
||||
udCurrentFile := udCurrentFile + 1;
|
||||
enDirStep := enDirStep_READDIR;
|
||||
|
||||
END_CASE
|
||||
|
||||
|
||||
//Buttons Anzeigen Verriegeln etc.
|
||||
VCCtrl.LineDown.usStatus.0 := (enFileStep <> enFileStep_WAITCMD2);
|
||||
VCCtrl.LineDown.usStatus.1 := (States.udOrgLineOffset[0] >= States.udFileLen);
|
||||
VCCtrl.LineUp.usStatus.0 := (enFileStep <> enFileStep_WAITCMD2);
|
||||
VCCtrl.LineUp.usStatus.1 := (States.udOrgLineOffset[0] = 0) AND (VCCtrl.ListboxEdit.usIndexDatapoint = 0);
|
||||
VCCtrl.ScrollDown.usStatus.0 := (enFileStep <> enFileStep_WAITCMD2);
|
||||
VCCtrl.ScrollDown.usStatus.1 := (States.udOrgLineOffset[0] >= States.udFileLen);
|
||||
VCCtrl.ScrollUp.usStatus.0 := (enFileStep <> enFileStep_WAITCMD2);
|
||||
VCCtrl.ScrollUp.usStatus.1 := (States.udOrgLineOffset[0] = 0);
|
||||
VCCtrl.Cancel.usStatus.0 := (enFileStep <> enFileStep_WAITCMD2);
|
||||
VCCtrl.DropDownBoxFile.usStatus.0 := (enFileStep <> enFileStep_WAIT);
|
||||
VCCtrl.LoadEdit.usStatus.0 := (enFileStep <> enFileStep_WAIT);
|
||||
|
||||
CASE enFileStep OF
|
||||
//auf Befehl warten
|
||||
//=================================
|
||||
enFileStep_WAIT:
|
||||
FUBs.FileOpen.enable := FALSE;
|
||||
strFile := gstrFilenames[usEditFileSelection];
|
||||
IF VCCtrl.LoadEdit.bCommand THEN
|
||||
VCCtrl.LoadEdit.bCommand := FALSE;
|
||||
VCCtrl.DropDownBoxFile.bCompletion := FALSE;
|
||||
enFileStep := enFileStep_OPEN;
|
||||
END_IF
|
||||
|
||||
IF (States.udFileHandle > 0) THEN
|
||||
//Offenes File schlie<EFBFBD>en
|
||||
FUBs.FileClose.ident := States.udFileHandle;
|
||||
enFileStep := enFileStep_CLOSE;
|
||||
END_IF
|
||||
|
||||
//Datei <EFBFBD>ffnen
|
||||
//=================================
|
||||
enFileStep_OPEN:
|
||||
FUBs.FileOpen.mode := fiREAD_WRITE;
|
||||
FUBs.FileOpen.pDevice := ADR (strDevice);
|
||||
FUBs.FileOpen.pFile := ADR (strFile);
|
||||
FUBs.FileOpen.enable := TRUE;
|
||||
IF (FUBs.FileOpen.status = ERR_OK) THEN
|
||||
FUBs.FileOpen.enable := FALSE;
|
||||
enFileStep := enFileStep_READLINE;
|
||||
States.udFileHandle := FUBs.FileOpen.ident;
|
||||
States.udReadlineOffset := 0;
|
||||
States.uiCurrentBlockLine := 0;
|
||||
States.udFileLen := FUBs.FileOpen.filelen;
|
||||
ELSIF (FUBs.FileOpen.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBs.FileOpen.enable := FALSE;
|
||||
enFileStep := enFileStep_WAIT;
|
||||
States.udFileHandle := 0;
|
||||
END_IF
|
||||
|
||||
//Datei "Zeile Lesen"
|
||||
//=================================
|
||||
enFileStep_READLINE:
|
||||
FUBs.FileRead.ident := States.udFileHandle;
|
||||
FUBs.FileRead.offset := States.udReadlineOffset;
|
||||
FUBs.FileRead.pDest := ADR (strReadBuffer);
|
||||
FUBs.FileRead.len := SIZEOF (strReadBuffer);
|
||||
FUBs.FileRead.enable := TRUE;
|
||||
|
||||
IF (FUBs.FileRead.status = ERR_OK) THEN
|
||||
FUBs.FileRead.enable := FALSE;
|
||||
States.udReadLineLen := FUBs.FileRead.bytesread;
|
||||
IF (States.udReadLineLen = 0) THEN
|
||||
enFileStep := enFileStep_WAITCMD2;
|
||||
FOR usi := UINT_TO_USINT (States.uiCurrentBlockLine) TO Parameter.usEditLines DO
|
||||
brsmemset (ADR (strLines[usi]), 0, SIZEOF (strLines[usi]));
|
||||
END_FOR
|
||||
ELSE
|
||||
enFileStep := enFileStep_PARSELINE;
|
||||
END_IF
|
||||
ELSIF (FUBs.FileRead.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBs.FileRead.enable := FALSE;
|
||||
//Offenes File schlie<EFBFBD>en
|
||||
FUBs.FileClose.ident := States.udFileHandle;
|
||||
enFileStep := enFileStep_CLOSE;
|
||||
END_IF
|
||||
|
||||
//Gelesene Zeile parsen
|
||||
//=================================
|
||||
enFileStep_PARSELINE:
|
||||
FOR udi := 0 TO (States.udReadLineLen - 2) DO
|
||||
IF (brsmemcmp (ADR (strReadBuffer) + udi, ADR (strLineEnd), 2) = 0) THEN
|
||||
brsmemcpy (ADR (strLines[States.uiCurrentBlockLine]), ADR (strReadBuffer), udi);
|
||||
//Offset und L<EFBFBD>nge speichern und Zeiter weiterstellen
|
||||
States.udOrgLineLen[States.uiCurrentBlockLine] := udi;
|
||||
States.udOrgLineOffset[States.uiCurrentBlockLine] := States.udReadlineOffset;
|
||||
States.udReadlineOffset := States.udReadlineOffset + udi + 2;
|
||||
brsmemset (ADR (strLines[States.uiCurrentBlockLine]) + udi, 0, 1);
|
||||
States.uiCurrentBlockLine := States.uiCurrentBlockLine + 1;
|
||||
IF States.uiCurrentBlockLine = Parameter.usEditLines THEN
|
||||
enFileStep := enFileStep_WAITCMD2;
|
||||
EXIT;
|
||||
ELSE
|
||||
brsmemset (ADR (strReadBuffer) + udi, 0, SIZEOF (strReadBuffer));
|
||||
enFileStep := enFileStep_READLINE;
|
||||
EXIT;
|
||||
END_IF
|
||||
END_IF
|
||||
END_FOR
|
||||
|
||||
//Auf neue Befehle warten
|
||||
//=================================
|
||||
enFileStep_WAITCMD2:
|
||||
IF VCCtrl.ScrollDown.bCommand AND (States.udOrgLineOffset[0] < States.udFileLen) THEN
|
||||
FOR usi := 0 TO Parameter.usPageLines DO
|
||||
//Zeilen shiften
|
||||
brsstrcpy (ADR (strLines[usi]), ADR (strLines[usi + Parameter.usPageLines]));
|
||||
END_FOR
|
||||
States.uiCurrentBlockLine := Parameter.usPageLines;
|
||||
VCCtrl.ScrollDown.bCommand := FALSE;
|
||||
enFileStep := enFileStep_READLINE;
|
||||
ELSIF VCCtrl.ScrollUp.bCommand AND (States.udOrgLineOffset[0] > 0) THEN
|
||||
VCCtrl.ScrollUp.bCommand := FALSE;
|
||||
States.udReadlineOffset := 0;
|
||||
States.uiCurrentBlockLine := 0;
|
||||
enFileStep := enFileStep_READLINE;
|
||||
ELSIF VCCtrl.LineUp.bCommand THEN
|
||||
IF (VCCtrl.ListboxEdit.usIndexDatapoint > 0) THEN
|
||||
VCCtrl.ListboxEdit.usIndexDatapoint := VCCtrl.ListboxEdit.usIndexDatapoint - 1;
|
||||
ELSIF (States.udOrgLineOffset[0] > 0) THEN
|
||||
//Seite scrollen
|
||||
VCCtrl.ScrollUp.bCommand := FALSE;
|
||||
END_IF
|
||||
VCCtrl.LineUp.bCommand := FALSE;
|
||||
ELSIF VCCtrl.LineDown.bCommand THEN
|
||||
IF (VCCtrl.ListboxEdit.usIndexDatapoint < VCCtrl.ListboxEdit.usMaxIndex) THEN
|
||||
VCCtrl.ListboxEdit.usIndexDatapoint := VCCtrl.ListboxEdit.usIndexDatapoint + 1;
|
||||
ELSIF (States.udOrgLineOffset[0] < States.udFileLen) THEN
|
||||
VCCtrl.ScrollDown.bCommand := TRUE;
|
||||
END_IF
|
||||
VCCtrl.LineDown.bCommand := FALSE;
|
||||
ELSIF VCCtrl.Cancel.bCommand THEN
|
||||
VCCtrl.Cancel.bCommand := FALSE;
|
||||
enFileStep := enFileStep_CLOSE;
|
||||
END_IF
|
||||
|
||||
IF VCCtrl.LineEdit.bCompletion THEN
|
||||
VCCtrl.LineEdit.bCompletion := FALSE;
|
||||
//Eingabe abgeschlossen
|
||||
udNewLen := brsstrlen (ADR (lstrEditline));
|
||||
brsmemset (ADR (strWriteBuffer) + udi, 0, SIZEOF (strWriteBuffer));
|
||||
brsstrcpy (ADR (strWriteBuffer), ADR (lstrEditline));
|
||||
brsstrcat (ADR (strWriteBuffer), ADR (strLineEnd));
|
||||
IF (udNewLen = States.udOrgLineLen[VCCtrl.ListboxEdit.usIndexDatapoint]) THEN
|
||||
//Gleiche L<EFBFBD>nge einfach <EFBFBD>berschreiben
|
||||
enFileStep := enFileStep_WRITELINE;
|
||||
ELSE
|
||||
enFileStep := enFileStep_READFILEREST;
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
//Restliches File auslesen
|
||||
//=================================
|
||||
enFileStep_READFILEREST:
|
||||
FUBs.FileRead.ident := States.udFileHandle;
|
||||
FUBs.FileRead.offset := States.udOrgLineOffset[VCCtrl.ListboxEdit.usIndexDatapoint] +
|
||||
States.udOrgLineLen[VCCtrl.ListboxEdit.usIndexDatapoint] + 2;
|
||||
FUBs.FileRead.pDest := ADR (usBuffer);
|
||||
FUBs.FileRead.len := SIZEOF (usBuffer);
|
||||
FUBs.FileRead.enable := TRUE;
|
||||
IF (FUBs.FileRead.status = ERR_OK) THEN
|
||||
FUBs.FileRead.enable := FALSE;
|
||||
States.udReadFileRestLen := FUBs.FileRead.bytesread;
|
||||
enFileStep := enFileStep_WRITELINE;
|
||||
ELSIF (FUBs.FileRead.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBs.FileRead.enable := FALSE;
|
||||
//Offenes File schlie<EFBFBD>en
|
||||
FUBs.FileClose.ident := States.udFileHandle;
|
||||
enFileStep := enFileStep_CLOSE;
|
||||
END_IF
|
||||
|
||||
//Ge<EFBFBD>nderte Zeile in Datei schreiben
|
||||
//=================================
|
||||
enFileStep_WRITELINE:
|
||||
FUBs.FileWrite.ident := States.udFileHandle;
|
||||
FUBs.FileWrite.pSrc := ADR (strWriteBuffer);
|
||||
FUBs.FileWrite.offset := States.udOrgLineOffset[VCCtrl.ListboxEdit.usIndexDatapoint];
|
||||
FUBs.FileWrite.len := brsstrlen (ADR (strWriteBuffer));
|
||||
FUBs.FileWrite.option := 0; //No Trunc
|
||||
FUBs.FileWrite.enable := TRUE;
|
||||
|
||||
IF (FUBs.FileWrite.status = ERR_OK) THEN
|
||||
FUBs.FileWrite.enable := FALSE;
|
||||
IF (udNewLen = States.udOrgLineLen[VCCtrl.ListboxEdit.usIndexDatapoint]) THEN
|
||||
//Editierte Zeile ohne L<EFBFBD>ngen<EFBFBD>nderung
|
||||
enFileStep := enFileStep_WAITCMD2;
|
||||
ELSE
|
||||
enFileStep := enFileStep_WriteFILEREST;
|
||||
END_IF
|
||||
ELSIF (FUBs.FileWrite.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBs.FileWrite.enable := FALSE;
|
||||
//Offenes File schlie<EFBFBD>en
|
||||
FUBs.FileClose.ident := States.udFileHandle;
|
||||
enFileStep := enFileStep_CLOSE;
|
||||
END_IF
|
||||
|
||||
//Restdaten in Datei schreiben
|
||||
//=================================
|
||||
enFileStep_WriteFILEREST:
|
||||
FUBs.FileWrite.ident := States.udFileHandle;
|
||||
FUBs.FileWrite.pSrc := ADR (usBuffer);
|
||||
FUBs.FileWrite.offset := States.udOrgLineOffset[VCCtrl.ListboxEdit.usIndexDatapoint] + brsstrlen (ADR (strWriteBuffer));
|
||||
FUBs.FileWrite.len := States.udReadFileRestLen;
|
||||
FUBs.FileWrite.option := 1; //With Trunc
|
||||
FUBs.FileWrite.enable := TRUE;
|
||||
|
||||
IF (FUBs.FileWrite.status = ERR_OK) THEN
|
||||
FUBs.FileWrite.enable := FALSE;
|
||||
States.udReadlineOffset := States.udOrgLineOffset[VCCtrl.ListboxEdit.usIndexDatapoint];
|
||||
States.uiCurrentBlockLine := VCCtrl.ListboxEdit.usIndexDatapoint;
|
||||
enFileStep := enFileStep_READLINE;
|
||||
ELSIF (FUBs.FileWrite.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
//Fehler
|
||||
FUBs.FileWrite.enable := FALSE;
|
||||
//Offenes File schlie<EFBFBD>en
|
||||
FUBs.FileClose.ident := States.udFileHandle;
|
||||
enFileStep := enFileStep_CLOSE;
|
||||
END_IF
|
||||
|
||||
//Datei schlie<EFBFBD>en
|
||||
//=================================
|
||||
enFileStep_CLOSE:
|
||||
FUBs.FileClose.enable := TRUE;
|
||||
IF (FUBs.FileClose.status = ERR_OK) OR (FUBs.FileClose.status < ERR_FUB_ENABLE_FALSE) THEN
|
||||
FUBs.FileClose.enable := FALSE;
|
||||
States.udFileHandle := 0;
|
||||
enFileStep := enFileStep_WAIT;
|
||||
END_IF
|
||||
|
||||
END_CASE
|
||||
|
||||
FUBs.DirInfo ();
|
||||
FUBs.DirRead ();
|
||||
FUBs.FileOpen ();
|
||||
FUBs.FileRead ();
|
||||
FUBs.FileWrite ();
|
||||
FUBs.FileClose ();
|
||||
END_PROGRAM
|
||||
6
Logical/File/FileEdit/Exit.st
Normal file
6
Logical/File/FileEdit/Exit.st
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
PROGRAM _EXIT
|
||||
(* Insert code here *)
|
||||
|
||||
END_PROGRAM
|
||||
11
Logical/File/FileEdit/IEC.prg
Normal file
11
Logical/File/FileEdit/IEC.prg
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.5.113 SP?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Cyclic code">Cyclic.st</File>
|
||||
<File Description="Init code">Init.st</File>
|
||||
<File Description="Exit code">Exit.st</File>
|
||||
<File Description="Local data types" Private="true">Types.typ</File>
|
||||
<File Description="Local variables" Private="true">Variables.var</File>
|
||||
</Files>
|
||||
</Program>
|
||||
7
Logical/File/FileEdit/Init.st
Normal file
7
Logical/File/FileEdit/Init.st
Normal file
@@ -0,0 +1,7 @@
|
||||
|
||||
|
||||
PROGRAM _INIT
|
||||
Parameter.usEditLines := 12;
|
||||
Parameter.usPageLines:= 5;
|
||||
bReadDir := TRUE;
|
||||
END_PROGRAM
|
||||
84
Logical/File/FileEdit/Types.typ
Normal file
84
Logical/File/FileEdit/Types.typ
Normal file
@@ -0,0 +1,84 @@
|
||||
(*//Schrittketten / Befehle / Bedingungen*)
|
||||
|
||||
TYPE
|
||||
typ_enStepFile :
|
||||
( (*Schrittkette*)
|
||||
enFileStep_WAIT := 0, (*Auf Befehl Warten*)
|
||||
enFileStep_OPEN, (*Datei <20>ffnen*)
|
||||
enFileStep_READLINE, (*Datei Zeile Lesen*)
|
||||
enFileStep_PARSELINE, (*Datei Zeile Parsen*)
|
||||
enFileStep_WAITCMD2, (*Auf Befehl Warten*)
|
||||
enFileStep_READFILEREST, (*Restliches File Lesen*)
|
||||
enFileStep_WRITELINE, (*Ge<47>nderte Zeile in Datei Schreiben*)
|
||||
enFileStep_WriteFILEREST, (*Restliches File Schreiben*)
|
||||
enFileStep_CLOSE (*Datei Schlie<69>en*)
|
||||
);
|
||||
typ_enStepDir :
|
||||
(
|
||||
enDirStep_WAIT,
|
||||
enDirStep_DIRINFO,
|
||||
enDirStep_READDIR,
|
||||
enDirStep_BUILDLIST
|
||||
);
|
||||
typ_States : STRUCT
|
||||
udFileHandle : UDINT; (*FileHandle*)
|
||||
udReadlineOffset : UDINT; (*Offset*)
|
||||
udFileLen : UDINT; (*Dateil<69>nge*)
|
||||
udReadLineLen : UDINT; (*Tats. gelesene L<>nge*)
|
||||
udReadFileRestLen : UDINT; (*Gelesene L<>nge Restl. File*)
|
||||
udOrgLineLen : ARRAY[0..EDIT_LINES]OF UDINT; (*Zeilen L<>nge (um L<>ngen<65>nderung festzustellen*)
|
||||
udOrgLineOffset : ARRAY[0..EDIT_LINES]OF UDINT; (*Offeset der Zeile im File*)
|
||||
uiCurrentBlockLine : UINT; (*Aktuelle Zeile (im Block)*)
|
||||
udFilesInDir : UDINT; (*Dateien in Verzeichnis*)
|
||||
END_STRUCT;
|
||||
typ_FUBstates : STRUCT
|
||||
DirInfo : UINT;
|
||||
DirRead : UINT;
|
||||
END_STRUCT;
|
||||
typ_Parameter : STRUCT
|
||||
usEditLines : USINT; (*Anzahl der Zeilen zum Editieren*)
|
||||
usPageLines : USINT; (*Anzahl der Zeilen zum Bl<42>ttern*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
(*//FunctionBlocks / Daten*)
|
||||
|
||||
TYPE
|
||||
typ_FUB : STRUCT (*Funktionsbausteine*)
|
||||
FileOpen : FileOpen := (0);
|
||||
FileClose : FileClose := (0);
|
||||
FileRead : FileReadEx := (0); (*Datei Lesen (mit L<>nge Gelesener Daten)*)
|
||||
FileWrite : FileWriteEx := (0); (*Datei Schreiben (Optional mit Truncate)*)
|
||||
DirInfo : DirInfo; (*Verzeichnisinfo*)
|
||||
DirRead : DirRead; (*Verzeichnisinhalt lesen*)
|
||||
TON_ReadDir : TON;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
(*Insert your comment here.*)
|
||||
|
||||
TYPE
|
||||
enumTabs :
|
||||
( (*Tabs*)
|
||||
TAB_TUNE_LOWER_TOOL := 8, (*Tab Tuning Unterwerkzeug*)
|
||||
TAB_TUNE_UPPER_TOOL := 9, (*Tab Tuning Oberwerkzeug*)
|
||||
TAB_PROFILE_LOWER_TOOL := 10, (*Tab Profil Unterwerkzeug*)
|
||||
TAB_PROFILE_UPPER_TOOL := 11 (*Tab Profil Oberwerkzeug*)
|
||||
);
|
||||
typ_VCCtrl : STRUCT (*VC Controls*)
|
||||
Status : typ_VCStatus;
|
||||
ListboxEdit : gtyp_VCListbox; (*Listbox Editor*)
|
||||
LineEdit : gtyp_VCString;
|
||||
DropDownBoxFile : gtyp_VCDropdownbox;
|
||||
LineUp : gtyp_VCButton;
|
||||
LineDown : gtyp_VCButton;
|
||||
ScrollUp : gtyp_VCButton;
|
||||
ScrollDown : gtyp_VCButton;
|
||||
Slider : gtyp_VCSlider;
|
||||
Cancel : gtyp_VCButton;
|
||||
LoadEdit : gtyp_VCButton;
|
||||
END_STRUCT;
|
||||
typ_VCStatus : STRUCT (*VC Statis - Allgemein*)
|
||||
usDummy : USINT;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
39
Logical/File/FileEdit/Variables.var
Normal file
39
Logical/File/FileEdit/Variables.var
Normal file
@@ -0,0 +1,39 @@
|
||||
VAR CONSTANT
|
||||
EDIT_LINES : USINT := 25;
|
||||
END_VAR
|
||||
VAR
|
||||
bScrollDown : BOOL;
|
||||
bScrollUp : BOOL;
|
||||
bReadDir : BOOL;
|
||||
usi : USINT;
|
||||
usEditFileSelection : USINT;
|
||||
udi : UDINT;
|
||||
udCurrentFile : UDINT;
|
||||
udNewLen : UDINT;
|
||||
usBuffer : {REDUND_UNREPLICABLE} ARRAY[0..999999] OF USINT; (*Puffer*)
|
||||
END_VAR
|
||||
(*//Strings*)
|
||||
VAR
|
||||
strDevice : STRING[80];
|
||||
strPath : STRING[80];
|
||||
strFile : STRING[80];
|
||||
strLineEnd : STRING[3] := '$r$n';
|
||||
strReadBuffer : STRING[80];
|
||||
strWriteBuffer : STRING[80];
|
||||
strLines : ARRAY[0..EDIT_LINES] OF STRING[80];
|
||||
lstrEditline : REFERENCE TO STRING[80]; (*Editierte Zeile*)
|
||||
END_VAR
|
||||
(*//Strukturen*)
|
||||
VAR
|
||||
enFileStep : typ_enStepFile;
|
||||
enDirStep : typ_enStepDir;
|
||||
States : typ_States;
|
||||
Parameter : typ_Parameter;
|
||||
VCCtrl : typ_VCCtrl; (*Seiteninterface spezifisch*)
|
||||
DirReadData : fiDIR_READ_DATA;
|
||||
FUBStates : typ_FUBstates;
|
||||
END_VAR
|
||||
(*//Funktionsbl<62>cke*)
|
||||
VAR
|
||||
FUBs : typ_FUB;
|
||||
END_VAR
|
||||
4
Logical/File/FileMan/Cyclic.st
Normal file
4
Logical/File/FileMan/Cyclic.st
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
(* Insert code here *)
|
||||
END_PROGRAM
|
||||
6
Logical/File/FileMan/Exit.st
Normal file
6
Logical/File/FileMan/Exit.st
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
PROGRAM _EXIT
|
||||
(* Insert code here *)
|
||||
|
||||
END_PROGRAM
|
||||
11
Logical/File/FileMan/IEC.prg
Normal file
11
Logical/File/FileMan/IEC.prg
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Program xmlns="http://br-automation.co.at/AS/Program">
|
||||
<Files>
|
||||
<File Description="Cyclic code">Cyclic.st</File>
|
||||
<File Description="Init code">Init.st</File>
|
||||
<File Description="Exit code">Exit.st</File>
|
||||
<File Description="Local data types" Private="true">Types.typ</File>
|
||||
<File Description="Local variables" Private="true">Variables.var</File>
|
||||
</Files>
|
||||
</Program>
|
||||
9
Logical/File/FileMan/Init.st
Normal file
9
Logical/File/FileMan/Init.st
Normal file
@@ -0,0 +1,9 @@
|
||||
|
||||
|
||||
PROGRAM _INIT
|
||||
MpFUBs.MpFileManagerConfig.MpLink := ADR (gFileManagerUI);
|
||||
|
||||
MpFUBs.MpFileManagerUI.MpLink := ADR (gFileManagerUI);
|
||||
|
||||
|
||||
END_PROGRAM
|
||||
8
Logical/File/FileMan/Types.typ
Normal file
8
Logical/File/FileMan/Types.typ
Normal file
@@ -0,0 +1,8 @@
|
||||
(*//FunctionBlocks / Daten*)
|
||||
|
||||
TYPE
|
||||
typ_MpFUB : STRUCT (*Funktionsbausteine*)
|
||||
MpFileManagerUI : MpFileManagerUI;
|
||||
MpFileManagerConfig : MpFileManagerConfig;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
4
Logical/File/FileMan/Variables.var
Normal file
4
Logical/File/FileMan/Variables.var
Normal file
@@ -0,0 +1,4 @@
|
||||
(*//Funktionsbl<62>cke*)
|
||||
VAR
|
||||
MpFUBs : typ_MpFUB;
|
||||
END_VAR
|
||||
3
Logical/File/GlobalFile.var
Normal file
3
Logical/File/GlobalFile.var
Normal file
@@ -0,0 +1,3 @@
|
||||
VAR
|
||||
gstrFilenames : ARRAY[0..100] OF STRING[25];
|
||||
END_VAR
|
||||
10
Logical/File/Package.pkg
Normal file
10
Logical/File/Package.pkg
Normal file
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.7.46 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Globale Variablen - File">GlobalFile.var</Object>
|
||||
<Object Type="File" Description="Package Variablen - File" Private="true">PackageFile.var</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Simple Texteditor">FileEdit</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Filemanagement">FileMan</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
3
Logical/File/PackageFile.var
Normal file
3
Logical/File/PackageFile.var
Normal file
@@ -0,0 +1,3 @@
|
||||
VAR
|
||||
VisuPageCtrl_File : gtyp_VisuCtrlPage; (*Seiteninterface allgemein*)
|
||||
END_VAR
|
||||
97
Logical/GlobalVars/Global.typ
Normal file
97
Logical/GlobalVars/Global.typ
Normal file
@@ -0,0 +1,97 @@
|
||||
|
||||
TYPE
|
||||
gtyp_ACPinverter : STRUCT (*Acopos Inverter*)
|
||||
bModuleOK : BOOL;
|
||||
In : gtyp_ACPinverterIn;
|
||||
Out : gtyp_ACPinverterOut;
|
||||
END_STRUCT;
|
||||
gtyp_ACPinverterIn : STRUCT (*Acopos Inverter Inputs*)
|
||||
bStat00_ReadytoSwitchOn : BOOL;
|
||||
bStat01_SwitchedOnReady : BOOL;
|
||||
bstat02_Enabled : BOOL;
|
||||
bStat03_FaultDetecton : BOOL;
|
||||
bStat04_VoltageDisabled : BOOL;
|
||||
bStat05_QuickstopINV : BOOL;
|
||||
bStat06_SwitchedOnDisabled : BOOL;
|
||||
bStat07_Alarm : BOOL;
|
||||
bStat09_ReferenceViaNetwork : BOOL;
|
||||
bStat10_TargetReferenceReached : BOOL;
|
||||
bStat11_InternalLimitActive : BOOL;
|
||||
bStat14_StopViaKey : BOOL;
|
||||
bStat15_RotationDirection : BOOL;
|
||||
bExtStat00_EEPROM_NonVolatile : BOOL;
|
||||
bExtStat01_ParameterConsCheck : BOOL;
|
||||
bExtStat02_DriveInFault : BOOL;
|
||||
bExtStat04_SpeedModeActive : BOOL;
|
||||
bExtStat05_DCInjection : BOOL;
|
||||
bExtStat06_TransientState : BOOL;
|
||||
bExtStat07_ThermalTreshold : BOOL;
|
||||
bExtStat08_Overbraking : BOOL;
|
||||
bExtStat09_Accelerating : BOOL;
|
||||
bExtStat10_Decellerating : BOOL;
|
||||
bExtStat11_I_Limited : BOOL;
|
||||
bExtStat12_FastStopping : BOOL;
|
||||
bExtStat13_ExtControlled0 : BOOL;
|
||||
bExtStat14_ExtCondrolled1 : BOOL;
|
||||
bExtStat15_OperationDir : BOOL;
|
||||
iRFRD_Velocity : INT;
|
||||
iOTR_Torque : INT;
|
||||
uiLCR_Current : UINT;
|
||||
uiTHD_ThermalStateDrive : UINT;
|
||||
uiTHR_ThermalStatMotor : UINT;
|
||||
bInputLI1 : BOOL;
|
||||
bInputLI2 : BOOL;
|
||||
bInputLI3 : BOOL;
|
||||
bInputLI4 : BOOL;
|
||||
bRelay2State : BOOL;
|
||||
uiErrorCode : UINT;
|
||||
iLastFault : INT;
|
||||
END_STRUCT;
|
||||
gtyp_ACPinverterOut : STRUCT (*Acopos Inverter Outputs*)
|
||||
bCmd00_SwitchOn : BOOL;
|
||||
bCmd01_DisableVoltage : BOOL;
|
||||
bCmd02_QuickStop : BOOL;
|
||||
bCmd03_EnableOperation : BOOL;
|
||||
bCmd07_ResetFault : BOOL;
|
||||
bCmd11_Direction : BOOL;
|
||||
bCmd12_StopCommand : BOOL;
|
||||
bCmd13 : BOOL;
|
||||
bCmd14 : BOOL;
|
||||
bCmd15 : BOOL;
|
||||
bCmi00_FactorySettings : BOOL;
|
||||
bCmi01_SaveToEEPROM : BOOL;
|
||||
bCmi03_ExternalFault : BOOL;
|
||||
bCmi04_RampSwitching : BOOL;
|
||||
bCmi09_FrequencyReference : BOOL;
|
||||
bCmi13_LockOnStandstill : BOOL;
|
||||
bCmi15_CheckParameterConsitency : BOOL;
|
||||
iLFR_Setpointspeed : INT;
|
||||
bOR_Relay2 : BOOL;
|
||||
END_STRUCT;
|
||||
gtyp_PushButton : STRUCT (*Leuchtringtaster*)
|
||||
bInKeyStatus : BOOL; (*Taster - Status*)
|
||||
bOuGreen : BOOL; (*Leuchtring Gr<47>n*)
|
||||
bOuYellow : BOOL; (*Leuchtring Gelb*)
|
||||
bOuRed : BOOL; (*Leuchtring Rot*)
|
||||
bOuWhite : BOOL; (*Leuchtring Wei<65>*)
|
||||
bOuBlue : BOOL; (*Leuchtring Blau (Optional)*)
|
||||
END_STRUCT;
|
||||
gtyp_PowerSupply : STRUCT (*80PS Stromversorgung*)
|
||||
In : gtyp_PowerSupplyInuts;
|
||||
Out : gtyp_PowerSupplyOutputs;
|
||||
END_STRUCT;
|
||||
gtyp_PowerSupplyInuts : STRUCT (*80PS Stromversorgung*)
|
||||
bIurrentLimitActive : BOOL; (*Strombegrenzung 01 aktiv*)
|
||||
siVoltage : SINT; (*Ausgangsspannung 01 [V]*)
|
||||
iCurrent : INT; (*Ausgangsstrom [0.1 A]*)
|
||||
bErrorOutput : BOOL; (*Ausgang abgeschaltet*)
|
||||
bErrorPhaseDetection : BOOL; (*Phasenausfall*)
|
||||
bErrorOvertemperature : BOOL; (*<2A>bertemperatur*)
|
||||
bErrorOverload : BOOL; (*<2A>berlast*)
|
||||
bErrorOverVoltage : BOOL; (*<2A>berstrom*)
|
||||
bError24VDC : BOOL; (*Fehler 24 Ausgang*)
|
||||
END_STRUCT;
|
||||
gtyp_PowerSupplyOutputs : STRUCT (*80PS Stromversorgung*)
|
||||
bClearError : BOOL; (*St<53>rung quittieren*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
128
Logical/GlobalVars/Global.var
Normal file
128
Logical/GlobalVars/Global.var
Normal file
@@ -0,0 +1,128 @@
|
||||
(*================================================================================================================*)
|
||||
(*CPU (PWLnk Node 240)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
udSerialNr : UDINT; (*Seriennummer*)
|
||||
guiTemperatureCPU : UINT; (*CPU Temperatur*)
|
||||
guiTemperatureENV : UINT; (*Umgebungstemperatur*)
|
||||
gdiSystemTime : DINT;
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST20 - X67DI1371*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST1 - SL8100*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*Signals to Safe PLC*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*BOOL 101 bis 105*)
|
||||
VAR
|
||||
gbSPLCMachineOn : BOOL;
|
||||
gbSPLCJogMode : BOOL; (*Handbetrieb*)
|
||||
END_VAR
|
||||
(*BOOL 106 bis 110*)
|
||||
VAR
|
||||
gbSPLCResetEStop : BOOL;
|
||||
gbSPLCResetDoors : BOOL;
|
||||
END_VAR
|
||||
(*BOOL 111 bis 115*)
|
||||
VAR
|
||||
gbSPLCResetSafeMCError : BOOL;
|
||||
END_VAR
|
||||
(*2 R<>cklesesignale direkt von Eingang gemappt*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*Signals from Safe PLC*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*BOOL 001 bis 005*)
|
||||
VAR
|
||||
gbSPLCInEstopOk : BOOL; (*Safety PLC E-Stop ist Ok*)
|
||||
gbSPLCInSafetyCNCOk : BOOL; (*Safety PLC Sicherheit f<>r CNC Achsen Ok*)
|
||||
gbSPLCInSafetyShuttle1Ok : BOOL; (*Safety PLC Sicherheit f<>r Shuttle 1 Ok*)
|
||||
gbSPLCInSafetyShuttle2Ok : BOOL; (*Safety PLC Sicherheit f<>r Shuttle 2 Ok*)
|
||||
gbSPLCInMaintDoorOk : {REDUND_UNREPLICABLE} BOOL := FALSE; (*Safety PLC Wartungst<73>r ist Geschlossen und Quittiert*)
|
||||
END_VAR
|
||||
(*BOOL 006 bis 010*)
|
||||
(*BOOL 011 bis 018*)
|
||||
(*//Fehler Safe MC*)
|
||||
(*UINT 001 bis 010*)
|
||||
(*UINT 011 bis 020*)
|
||||
(*//Diagnose Code Safe MC*)
|
||||
(*UDINT 001 bis 010*)
|
||||
(*//Status Code Safe MC*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST3 - SI4100*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbSInStopButtonPanel : BOOL; (*Sicherer Eingang 01/02 Equivalent - Stopp Taster Bedienpanel*)
|
||||
gbSInAckKeyPanel : BOOL; (*Sicherer Eingang 02/03 Equivalent - Zustimmtaster Panel*)
|
||||
gudST3FBK_Status : UDINT;
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST4 - SI9100*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbSInStopButtonLaser : BOOL; (*Sicherer Eingang 01/02 Equivalent - Not-Halt von Lasersteuerung*)
|
||||
END_VAR
|
||||
(*Insert your comment here.*)
|
||||
VAR
|
||||
gbSInMaintDoorLeftOk : BOOL; (*Sicherer Eingang 05/06 Equivalent - Wartungst<73>r Fl<46>gel Links*)
|
||||
gbSInMaintDoorRightOk : BOOL; (*Sicherer Eingang 07/08 Equivalent - Wartungst<73>r Fl<46>gel Rechts*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST5 - SO6300 (56K1)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbSOuOpenBreakZ : BOOL; (*Freigabe Z-Achse Zusatzbremse*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST6 - SO6530 (56K3)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbSOuP3 : BOOL; (*Potential P3 Nach Nothalt*)
|
||||
gbSOuP4 : BOOL; (*Potential P4 Sicherheit f. Tore / Zelle komplett*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST6 - SO6530 (56K3)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbSOuEStopLaser : {REDUND_UNREPLICABLE} BOOL := FALSE; (*Nothalt an Laser DO 1/2*)
|
||||
gbSOuEnableLaser : BOOL; (*Freigabe Laser DO 5/6*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST7 - DI9371 (60K1)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*//DI 4 R<>ckmeldung K<>hlung*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST8 - DI9371 (60K2)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST9 - DI9371 (60K3)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*1/2 Anmelde Quittiertaster f. Wartungst<73>r in machine.st*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST10 - DO9322 (62K1)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*1/2 Wartungstuer verriegeln in machine.st*)
|
||||
(*5/6 Ventile Kuehlung - in AcpTemnperat.st*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST11 - DO9322 (62K2)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*1/2 LEds Wartungst<73>r*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST12 - PS2100 (64K0) //IOs- Laserkopf*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST13 - DI9371 (64K1)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*alles in Raytools*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST14 - DO9322 (64K3)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*alles in Raytools*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST15 - PS2100 (65K0) //Geschaltende Ausg<73>nge f<>r Tore und Gas*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF1.ST10.IF1.ST16 - DO9322 (65K1)*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
8
Logical/GlobalVars/Package.pkg
Normal file
8
Logical/GlobalVars/Package.pkg
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.2.3.159?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File">Global.typ</Object>
|
||||
<Object Type="File" Description="Global variables / IOs">Global.var</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
1344
Logical/Libraries/AsARCfg/AsARCfg.fun
Normal file
1344
Logical/Libraries/AsARCfg/AsARCfg.fun
Normal file
File diff suppressed because it is too large
Load Diff
11
Logical/Libraries/AsARCfg/AsARCfg.typ
Normal file
11
Logical/Libraries/AsARCfg/AsARCfg.typ
Normal file
@@ -0,0 +1,11 @@
|
||||
|
||||
TYPE
|
||||
cfgLease_typ : STRUCT (*lease structure*)
|
||||
name : STRING[8]; (*name of lease (max 8)*)
|
||||
startAdr : STRING[16]; (*start address of lease*)
|
||||
stopAdr : STRING[16]; (*stop address of lease*)
|
||||
subnetMask : STRING[16]; (*subnet mask of lease*)
|
||||
defaultGateway : STRING[16]; (*default gateway of lease*)
|
||||
leaseTimeout : DINT; (*-1 for infinite timeout*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
90
Logical/Libraries/AsARCfg/AsARCfg.var
Normal file
90
Logical/Libraries/AsARCfg/AsARCfg.var
Normal file
@@ -0,0 +1,90 @@
|
||||
|
||||
VAR CONSTANT
|
||||
cfgERR_DEVICE_NOT_EXIST : UINT := 29000; (*device doesn't exist or device not configured*)
|
||||
cfgERR_DEVICE_INVALID : UINT := 29001; (*FBK "pDevice" parameter invalid (e.g. pDevice = 0)*)
|
||||
cfgERR_OPTION_INVALID : UINT := 29002; (*FBK "Option" parameter invalid*)
|
||||
cfgERR_VALUE_INVALID : UINT := 29003; (*invalid FBK parameter, error text depends on the function block*)
|
||||
cfgERR_SET_NOT_POSSIBLE : UINT := 29004; (*not possible to set the subnet mask (e.g. DHCP client)*)
|
||||
cfgERR_ARREG : UINT := 29005; (*error in the AR registry*)
|
||||
cfgERR_INANODE_NOT_SUPPORTED : UINT := 29006; (*INA device does not support INA node numbers (e.g. IF1 = RS232)*)
|
||||
cfgERR_FTP_SINIT : UINT := 29007; (*initialization error on FTP server*)
|
||||
cfgERR_FTP_SDOWN : UINT := 29008; (*shutdown error on FTP server*)
|
||||
cfgERR_PARAM_NOT_SET : UINT := 29009; (*default gateway not defined*)
|
||||
cfgERR_SNTP_SERVER : UINT := 29010; (*could not start the SNTP server*)
|
||||
cfgERR_SNTP_CLIENT : UINT := 29011; (*error starting SNTP client (e.g. client already running)*)
|
||||
cfgERR_SNTP_INTERVAL : UINT := 29012; (*invalid FBK parameter - values from 1 to 60 are valid*)
|
||||
cfgERR_SYSTEM : UINT := 29013; (*unexpected system error*)
|
||||
cfgERR_TIMEZONE : UINT := 29014; (*invalid timezone specified*)
|
||||
cfgERR_YEAR_INVALID : UINT := 29015; (*invalid year specified*)
|
||||
cfgERR_CIFS_DOMAIN_INVALID : UINT := 29016; (*cifs domain name not defined *)
|
||||
cfgERR_CIFS_DEFAULTUSER_INVALID : UINT := 29017; (*cifs defaultuser not defined *)
|
||||
cfgERR_INANODE_NUMBER_SET : UINT := 29018; (*could not set the INA node number*)
|
||||
cfgERR_CIFS_DEFAULTPW_INVALID : UINT := 29019; (*cifs default password not defined *)
|
||||
cfgERR_DHCP_SERVER_STARTED : UINT := 29020; (*server is already working*)
|
||||
cfgERR_INTERFACELIST_BUFFER : UINT := 29021; (*interfacelist buffer to small*)
|
||||
cfgERR_LEASES_BUFFER : UINT := 29022; (*leases array to small*)
|
||||
cfgERR_LEASE_EXISTS : UINT := 29023; (*leasename already exists*)
|
||||
cfgERR_LEASE_TIMEOUT : UINT := 29024; (*invalid lease timeout*)
|
||||
cfgERR_DHCP_CONFIG : UINT := 29025; (*DHCP server is not configured*)
|
||||
cfgERR_SDM_FUNCTION_NOT_FOUND : UINT := 29026; (*used arsdm function was not found*)
|
||||
cfgERR_CLEAR_NV_DATA : UINT := 29027; (*could not clear NV data*)
|
||||
cfgERR_FUNCTION_NOT_FOUND : UINT := 29028; (*referenced function was not found*)
|
||||
cfgERR_SDM_DISABLED : UINT := 29029; (*System diagnostics disabled*)
|
||||
cfgERR_WEBSERV_DISABLED : UINT := 29030; (*Web Server disabled*)
|
||||
cfgERR_DHCP_NO_DHCP_IP_OBTAINED : UINT := 29031; (*DHCP activated, but no IP obtained*)
|
||||
cfgERR_NTP_SERVER : UINT := 29032; (*could not start the NTP server*)
|
||||
cfgERR_NTP_CLIENT : UINT := 29033; (*error starting NTP client*)
|
||||
cfgERR_ROUTE_TABLE : UINT := 29034; (*error updating network routing table*)
|
||||
cfgERR_DST : UINT := 29035; (*could not enable or disable automatic daylight saving*)
|
||||
|
||||
cfgETHBAUDRATE_AUTO : UDINT := 0; (*auto-detect*)
|
||||
cfgETHBAUDRATE_10 : UDINT := 10; (*10 MBaud, half-duplex*)
|
||||
cfgETHBAUDRATE_10FD : UDINT := 11; (*10 MBaud, full-duplex*)
|
||||
cfgETHBAUDRATE_10AUTO : UDINT := 12; (*10 MBaud, auto-duplex*)
|
||||
cfgETHBAUDRATE_100 : UDINT := 100; (*100 MBaud, half-duplex*)
|
||||
cfgETHBAUDRATE_100FD : UDINT := 101; (*100 MBaud, full-duplex*)
|
||||
cfgETHBAUDRATE_100AUTO : UDINT := 102; (*100 MBaud, auto-duplex*)
|
||||
cfgETHBAUDRATE_1000FD : UDINT := 1001; (*1 GBaud, full-duplex*)
|
||||
|
||||
cfgOPTION_NON_VOLATILE : UDINT := 1; (*permanently sets parameters*)
|
||||
cfgOPTION_VOLATILE : UDINT := 0; (*temporarily sets parameters*)
|
||||
|
||||
cfgCONFIGMODE_MANUALLY : UDINT := 0; (*manual configuration*)
|
||||
cfgCONFIGMODE_DHCPCLIENT : UDINT := 1; (*DHCP client*)
|
||||
|
||||
cfgOPTION_DISABLE : UDINT := 0; (*disable*)
|
||||
cfgOPTION_ENABLE : UDINT := 1; (*enable*)
|
||||
|
||||
cfgOPTION_WORKGROUP : USINT := 1; (*Domain is Workgroup*)
|
||||
cfgOPTION_NON_WORKGROUP : USINT := 0; (*Domain isn't Workgroup*)
|
||||
|
||||
cfgOPTION_ENABLE_SDM : USINT := 1; (*enable sdm*)
|
||||
cfgOPTION_DISABLE_SDM : USINT := 2; (*disable sdm*)
|
||||
|
||||
cfgSTATUS_SDM_ENABLED : USINT := 1; (*sdm is enabled*)
|
||||
cfgSTATUS_SDM_DISABLED : USINT := 2; (*sdm is disabled*)
|
||||
|
||||
cfgWEB_MODE_GOFORM_DISABLE : UINT := 0; (*Webserver Goform disabled*)
|
||||
cfgWEB_MODE_GOFORM_ENABLE : UINT := 1; (*Webserver Goform enabled*)
|
||||
cfgWEB_MODE_GOFORM_NO_WRITE : UINT := 2; (*Webserver Goform readonly*)
|
||||
|
||||
cfgWEB_MODE_MIME_DEL : UINT := 0; (*Webserver delete MimeType*)
|
||||
cfgWEB_MODE_MIME_ADD : UINT := 1; (*Webserver set MimeType*)
|
||||
|
||||
cfgWEB_MODE_DISABLED : UINT := 0; (*Webserver disabled*)
|
||||
cfgWEB_MODE_ENABLED : UINT := 1; (*Webserver enabled*)
|
||||
|
||||
cfgOPTION_DNS_OFF : USINT := 0; (*disable DNS service*)
|
||||
cfgOPTION_DNS_ON_CONFIG : USINT := 1; (*DNS service using the server address as configured*)
|
||||
cfgOPTION_DNS_ON_DHCP : USINT := 2; (*Get the DNS address from the DHCP server*)
|
||||
|
||||
cfgNTP_START : UINT := 1; (*start NTP server/client*)
|
||||
cfgNTP_STOP : UINT := 0; (*stop NTP server/client*)
|
||||
cfgSTATUS_NTP_ACTIVE : UINT := 1; (*NTP server/client active*)
|
||||
cfgSTATUS_NTP_INACTIVE : UINT := 0; (*NTP server/client inactive*)
|
||||
|
||||
cfgSDM_COLOR_DEFAULT : UDINT := 2147483648; (*sdm default color*)
|
||||
|
||||
cfgDHCP_OPTION_VENDOR_CLASS_ID : USINT := 60; (*DHCP option vendor class identifier*)
|
||||
|
||||
END_VAR
|
||||
12
Logical/Libraries/AsARCfg/Binary.lby
Normal file
12
Logical/Libraries/AsARCfg/Binary.lby
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The AsARCfg library supports reading and writing Automation Runtime configurations.">
|
||||
<Files>
|
||||
<File>AsARCfg.fun</File>
|
||||
<File>AsARCfg.typ</File>
|
||||
<File>AsARCfg.var</File>
|
||||
</Files>
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
204
Logical/Libraries/AsARCfg/SG3/AsARCfg.h
Normal file
204
Logical/Libraries/AsARCfg/SG3/AsARCfg.h
Normal file
@@ -0,0 +1,204 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASARCFG_
|
||||
#define _ASARCFG_
|
||||
#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 cfgSTATUS_SDM_DISABLED 2U
|
||||
#define cfgSTATUS_SDM_ENABLED 1U
|
||||
#define cfgOPTION_DISABLE_SDM 2U
|
||||
#define cfgOPTION_ENABLE_SDM 1U
|
||||
#define cfgOPTION_NON_WORKGROUP 0U
|
||||
#define cfgOPTION_WORKGROUP 1U
|
||||
#define cfgOPTION_ENABLE 1U
|
||||
#define cfgOPTION_DISABLE 0U
|
||||
#define cfgCONFIGMODE_DHCPCLIENT 1U
|
||||
#define cfgCONFIGMODE_MANUALLY 0U
|
||||
#define cfgOPTION_VOLATILE 0U
|
||||
#define cfgOPTION_NON_VOLATILE 1U
|
||||
#define cfgETHBAUDRATE_1000FD 1001U
|
||||
#define cfgETHBAUDRATE_100FD 101U
|
||||
#define cfgETHBAUDRATE_100 100U
|
||||
#define cfgETHBAUDRATE_10FD 11U
|
||||
#define cfgETHBAUDRATE_10 10U
|
||||
#define cfgETHBAUDRATE_AUTO 0U
|
||||
#define cfgERR_CLEAR_NV_DATA 29027U
|
||||
#define cfgERR_SDM_FUNCTION_NOT_FOUND 29026U
|
||||
#define cfgERR_LEASE_TIMEOUT 29024U
|
||||
#define cfgERR_LEASE_EXISTS 29023U
|
||||
#define cfgERR_LEASES_BUFFER 29022U
|
||||
#define cfgERR_INTERFACELIST_BUFFER 29021U
|
||||
#define cfgERR_DHCP_SERVER_STARTED 29020U
|
||||
#define cfgERR_CIFS_DEFAULTPW_INVALID 29019U
|
||||
#define cfgERR_INANODE_NUMBER_SET 29018U
|
||||
#define cfgERR_CIFS_DEFAULTUSER_INVALID 29017U
|
||||
#define cfgERR_CIFS_DOMAIN_INVALID 29016U
|
||||
#define cfgERR_YEAR_INVALID 29015U
|
||||
#define cfgERR_TIMEZONE 29014U
|
||||
#define cfgERR_SYSTEM 29013U
|
||||
#define cfgERR_SNTP_INTERVAL 29012U
|
||||
#define cfgERR_SNTP_CLIENT 29011U
|
||||
#define cfgERR_SNTP_SERVER 29010U
|
||||
#define cfgERR_PARAM_NOT_SET 29009U
|
||||
#define cfgERR_FTP_SDOWN 29008U
|
||||
#define cfgERR_FTP_SINIT 29007U
|
||||
#define cfgERR_INANODE_NOT_SUPPORTED 29006U
|
||||
#define cfgERR_ARREG 29005U
|
||||
#define cfgERR_SET_NOT_POSSIBLE 29004U
|
||||
#define cfgERR_VALUE_INVALID 29003U
|
||||
#define cfgERR_OPTION_INVALID 29002U
|
||||
#define cfgERR_DEVICE_INVALID 29001U
|
||||
#define cfgERR_DEVICE_NOT_EXIST 29000U
|
||||
#else
|
||||
_IEC_CONST unsigned char cfgSTATUS_SDM_DISABLED = 2U;
|
||||
_IEC_CONST unsigned char cfgSTATUS_SDM_ENABLED = 1U;
|
||||
_IEC_CONST unsigned char cfgOPTION_DISABLE_SDM = 2U;
|
||||
_IEC_CONST unsigned char cfgOPTION_ENABLE_SDM = 1U;
|
||||
_IEC_CONST unsigned char cfgOPTION_NON_WORKGROUP = 0U;
|
||||
_IEC_CONST unsigned char cfgOPTION_WORKGROUP = 1U;
|
||||
_IEC_CONST unsigned long cfgOPTION_ENABLE = 1U;
|
||||
_IEC_CONST unsigned long cfgOPTION_DISABLE = 0U;
|
||||
_IEC_CONST unsigned long cfgCONFIGMODE_DHCPCLIENT = 1U;
|
||||
_IEC_CONST unsigned long cfgCONFIGMODE_MANUALLY = 0U;
|
||||
_IEC_CONST unsigned long cfgOPTION_VOLATILE = 0U;
|
||||
_IEC_CONST unsigned long cfgOPTION_NON_VOLATILE = 1U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_1000FD = 1001U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_100FD = 101U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_100 = 100U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_10FD = 11U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_10 = 10U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_AUTO = 0U;
|
||||
_IEC_CONST unsigned short cfgERR_CLEAR_NV_DATA = 29027U;
|
||||
_IEC_CONST unsigned short cfgERR_SDM_FUNCTION_NOT_FOUND = 29026U;
|
||||
_IEC_CONST unsigned short cfgERR_LEASE_TIMEOUT = 29024U;
|
||||
_IEC_CONST unsigned short cfgERR_LEASE_EXISTS = 29023U;
|
||||
_IEC_CONST unsigned short cfgERR_LEASES_BUFFER = 29022U;
|
||||
_IEC_CONST unsigned short cfgERR_INTERFACELIST_BUFFER = 29021U;
|
||||
_IEC_CONST unsigned short cfgERR_DHCP_SERVER_STARTED = 29020U;
|
||||
_IEC_CONST unsigned short cfgERR_CIFS_DEFAULTPW_INVALID = 29019U;
|
||||
_IEC_CONST unsigned short cfgERR_INANODE_NUMBER_SET = 29018U;
|
||||
_IEC_CONST unsigned short cfgERR_CIFS_DEFAULTUSER_INVALID = 29017U;
|
||||
_IEC_CONST unsigned short cfgERR_CIFS_DOMAIN_INVALID = 29016U;
|
||||
_IEC_CONST unsigned short cfgERR_YEAR_INVALID = 29015U;
|
||||
_IEC_CONST unsigned short cfgERR_TIMEZONE = 29014U;
|
||||
_IEC_CONST unsigned short cfgERR_SYSTEM = 29013U;
|
||||
_IEC_CONST unsigned short cfgERR_SNTP_INTERVAL = 29012U;
|
||||
_IEC_CONST unsigned short cfgERR_SNTP_CLIENT = 29011U;
|
||||
_IEC_CONST unsigned short cfgERR_SNTP_SERVER = 29010U;
|
||||
_IEC_CONST unsigned short cfgERR_PARAM_NOT_SET = 29009U;
|
||||
_IEC_CONST unsigned short cfgERR_FTP_SDOWN = 29008U;
|
||||
_IEC_CONST unsigned short cfgERR_FTP_SINIT = 29007U;
|
||||
_IEC_CONST unsigned short cfgERR_INANODE_NOT_SUPPORTED = 29006U;
|
||||
_IEC_CONST unsigned short cfgERR_ARREG = 29005U;
|
||||
_IEC_CONST unsigned short cfgERR_SET_NOT_POSSIBLE = 29004U;
|
||||
_IEC_CONST unsigned short cfgERR_VALUE_INVALID = 29003U;
|
||||
_IEC_CONST unsigned short cfgERR_OPTION_INVALID = 29002U;
|
||||
_IEC_CONST unsigned short cfgERR_DEVICE_INVALID = 29001U;
|
||||
_IEC_CONST unsigned short cfgERR_DEVICE_NOT_EXIST = 29000U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct cfgLease_typ
|
||||
{ plcstring name[9];
|
||||
plcstring startAdr[17];
|
||||
plcstring stopAdr[17];
|
||||
plcstring subnetMask[17];
|
||||
plcstring defaultGateway[17];
|
||||
signed long leaseTimeout;
|
||||
} cfgLease_typ;
|
||||
|
||||
typedef struct CfgGetInaNode
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char InaNode;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} CfgGetInaNode_typ;
|
||||
|
||||
typedef struct CfgGetIPAddr
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pIPAddr;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetIPAddr_typ;
|
||||
|
||||
typedef struct CfgGetSubnetMask
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pSubnetMask;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetSubnetMask_typ;
|
||||
|
||||
typedef struct CfgGetMacAddr
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pMacAddr;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetMacAddr_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void CfgGetInaNode(struct CfgGetInaNode* inst);
|
||||
void CfgGetIPAddr(struct CfgGetIPAddr* inst);
|
||||
void CfgGetSubnetMask(struct CfgGetSubnetMask* inst);
|
||||
void CfgGetMacAddr(struct CfgGetMacAddr* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASARCFG_ */
|
||||
|
||||
|
||||
1382
Logical/Libraries/AsARCfg/SG4/AsARCfg.h
Normal file
1382
Logical/Libraries/AsARCfg/SG4/AsARCfg.h
Normal file
File diff suppressed because it is too large
Load Diff
272
Logical/Libraries/AsARCfg/SGC/AsARCfg.h
Normal file
272
Logical/Libraries/AsARCfg/SGC/AsARCfg.h
Normal file
@@ -0,0 +1,272 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASARCFG_
|
||||
#define _ASARCFG_
|
||||
#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 cfgSTATUS_SDM_DISABLED 2U
|
||||
#define cfgSTATUS_SDM_ENABLED 1U
|
||||
#define cfgOPTION_DISABLE_SDM 2U
|
||||
#define cfgOPTION_ENABLE_SDM 1U
|
||||
#define cfgOPTION_NON_WORKGROUP 0U
|
||||
#define cfgOPTION_WORKGROUP 1U
|
||||
#define cfgOPTION_ENABLE 1U
|
||||
#define cfgOPTION_DISABLE 0U
|
||||
#define cfgCONFIGMODE_DHCPCLIENT 1U
|
||||
#define cfgCONFIGMODE_MANUALLY 0U
|
||||
#define cfgOPTION_VOLATILE 0U
|
||||
#define cfgOPTION_NON_VOLATILE 1U
|
||||
#define cfgETHBAUDRATE_1000FD 1001U
|
||||
#define cfgETHBAUDRATE_100FD 101U
|
||||
#define cfgETHBAUDRATE_100 100U
|
||||
#define cfgETHBAUDRATE_10FD 11U
|
||||
#define cfgETHBAUDRATE_10 10U
|
||||
#define cfgETHBAUDRATE_AUTO 0U
|
||||
#define cfgERR_CLEAR_NV_DATA 29027U
|
||||
#define cfgERR_SDM_FUNCTION_NOT_FOUND 29026U
|
||||
#define cfgERR_LEASE_TIMEOUT 29024U
|
||||
#define cfgERR_LEASE_EXISTS 29023U
|
||||
#define cfgERR_LEASES_BUFFER 29022U
|
||||
#define cfgERR_INTERFACELIST_BUFFER 29021U
|
||||
#define cfgERR_DHCP_SERVER_STARTED 29020U
|
||||
#define cfgERR_CIFS_DEFAULTPW_INVALID 29019U
|
||||
#define cfgERR_INANODE_NUMBER_SET 29018U
|
||||
#define cfgERR_CIFS_DEFAULTUSER_INVALID 29017U
|
||||
#define cfgERR_CIFS_DOMAIN_INVALID 29016U
|
||||
#define cfgERR_YEAR_INVALID 29015U
|
||||
#define cfgERR_TIMEZONE 29014U
|
||||
#define cfgERR_SYSTEM 29013U
|
||||
#define cfgERR_SNTP_INTERVAL 29012U
|
||||
#define cfgERR_SNTP_CLIENT 29011U
|
||||
#define cfgERR_SNTP_SERVER 29010U
|
||||
#define cfgERR_PARAM_NOT_SET 29009U
|
||||
#define cfgERR_FTP_SDOWN 29008U
|
||||
#define cfgERR_FTP_SINIT 29007U
|
||||
#define cfgERR_INANODE_NOT_SUPPORTED 29006U
|
||||
#define cfgERR_ARREG 29005U
|
||||
#define cfgERR_SET_NOT_POSSIBLE 29004U
|
||||
#define cfgERR_VALUE_INVALID 29003U
|
||||
#define cfgERR_OPTION_INVALID 29002U
|
||||
#define cfgERR_DEVICE_INVALID 29001U
|
||||
#define cfgERR_DEVICE_NOT_EXIST 29000U
|
||||
#else
|
||||
_IEC_CONST unsigned char cfgSTATUS_SDM_DISABLED = 2U;
|
||||
_IEC_CONST unsigned char cfgSTATUS_SDM_ENABLED = 1U;
|
||||
_IEC_CONST unsigned char cfgOPTION_DISABLE_SDM = 2U;
|
||||
_IEC_CONST unsigned char cfgOPTION_ENABLE_SDM = 1U;
|
||||
_IEC_CONST unsigned char cfgOPTION_NON_WORKGROUP = 0U;
|
||||
_IEC_CONST unsigned char cfgOPTION_WORKGROUP = 1U;
|
||||
_IEC_CONST unsigned long cfgOPTION_ENABLE = 1U;
|
||||
_IEC_CONST unsigned long cfgOPTION_DISABLE = 0U;
|
||||
_IEC_CONST unsigned long cfgCONFIGMODE_DHCPCLIENT = 1U;
|
||||
_IEC_CONST unsigned long cfgCONFIGMODE_MANUALLY = 0U;
|
||||
_IEC_CONST unsigned long cfgOPTION_VOLATILE = 0U;
|
||||
_IEC_CONST unsigned long cfgOPTION_NON_VOLATILE = 1U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_1000FD = 1001U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_100FD = 101U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_100 = 100U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_10FD = 11U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_10 = 10U;
|
||||
_IEC_CONST unsigned long cfgETHBAUDRATE_AUTO = 0U;
|
||||
_IEC_CONST unsigned short cfgERR_CLEAR_NV_DATA = 29027U;
|
||||
_IEC_CONST unsigned short cfgERR_SDM_FUNCTION_NOT_FOUND = 29026U;
|
||||
_IEC_CONST unsigned short cfgERR_LEASE_TIMEOUT = 29024U;
|
||||
_IEC_CONST unsigned short cfgERR_LEASE_EXISTS = 29023U;
|
||||
_IEC_CONST unsigned short cfgERR_LEASES_BUFFER = 29022U;
|
||||
_IEC_CONST unsigned short cfgERR_INTERFACELIST_BUFFER = 29021U;
|
||||
_IEC_CONST unsigned short cfgERR_DHCP_SERVER_STARTED = 29020U;
|
||||
_IEC_CONST unsigned short cfgERR_CIFS_DEFAULTPW_INVALID = 29019U;
|
||||
_IEC_CONST unsigned short cfgERR_INANODE_NUMBER_SET = 29018U;
|
||||
_IEC_CONST unsigned short cfgERR_CIFS_DEFAULTUSER_INVALID = 29017U;
|
||||
_IEC_CONST unsigned short cfgERR_CIFS_DOMAIN_INVALID = 29016U;
|
||||
_IEC_CONST unsigned short cfgERR_YEAR_INVALID = 29015U;
|
||||
_IEC_CONST unsigned short cfgERR_TIMEZONE = 29014U;
|
||||
_IEC_CONST unsigned short cfgERR_SYSTEM = 29013U;
|
||||
_IEC_CONST unsigned short cfgERR_SNTP_INTERVAL = 29012U;
|
||||
_IEC_CONST unsigned short cfgERR_SNTP_CLIENT = 29011U;
|
||||
_IEC_CONST unsigned short cfgERR_SNTP_SERVER = 29010U;
|
||||
_IEC_CONST unsigned short cfgERR_PARAM_NOT_SET = 29009U;
|
||||
_IEC_CONST unsigned short cfgERR_FTP_SDOWN = 29008U;
|
||||
_IEC_CONST unsigned short cfgERR_FTP_SINIT = 29007U;
|
||||
_IEC_CONST unsigned short cfgERR_INANODE_NOT_SUPPORTED = 29006U;
|
||||
_IEC_CONST unsigned short cfgERR_ARREG = 29005U;
|
||||
_IEC_CONST unsigned short cfgERR_SET_NOT_POSSIBLE = 29004U;
|
||||
_IEC_CONST unsigned short cfgERR_VALUE_INVALID = 29003U;
|
||||
_IEC_CONST unsigned short cfgERR_OPTION_INVALID = 29002U;
|
||||
_IEC_CONST unsigned short cfgERR_DEVICE_INVALID = 29001U;
|
||||
_IEC_CONST unsigned short cfgERR_DEVICE_NOT_EXIST = 29000U;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct cfgLease_typ
|
||||
{ plcstring name[9];
|
||||
plcstring startAdr[17];
|
||||
plcstring stopAdr[17];
|
||||
plcstring subnetMask[17];
|
||||
plcstring defaultGateway[17];
|
||||
signed long leaseTimeout;
|
||||
} cfgLease_typ;
|
||||
|
||||
typedef struct CfgGetInaNode
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
unsigned short status;
|
||||
unsigned char InaNode;
|
||||
/* VAR (analog) */
|
||||
unsigned short i_state;
|
||||
unsigned short i_result;
|
||||
unsigned long i_tmp;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit enable;
|
||||
} CfgGetInaNode_typ;
|
||||
|
||||
typedef struct CfgGetIPAddr
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pIPAddr;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetIPAddr_typ;
|
||||
|
||||
typedef struct CfgSetIPAddr
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pIPAddr;
|
||||
unsigned long 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;
|
||||
} CfgSetIPAddr_typ;
|
||||
|
||||
typedef struct CfgGetSubnetMask
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pSubnetMask;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetSubnetMask_typ;
|
||||
|
||||
typedef struct CfgSetSubnetMask
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pSubnetMask;
|
||||
unsigned long 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;
|
||||
} CfgSetSubnetMask_typ;
|
||||
|
||||
typedef struct CfgGetDefaultGateway
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pGateway;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetDefaultGateway_typ;
|
||||
|
||||
typedef struct CfgSetDefaultGateway
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pGateway;
|
||||
unsigned long 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;
|
||||
} CfgSetDefaultGateway_typ;
|
||||
|
||||
typedef struct CfgGetMacAddr
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long pDevice;
|
||||
unsigned long pMacAddr;
|
||||
unsigned char Len;
|
||||
/* 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;
|
||||
} CfgGetMacAddr_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
void CfgGetInaNode(struct CfgGetInaNode* inst);
|
||||
void CfgGetIPAddr(struct CfgGetIPAddr* inst);
|
||||
void CfgSetIPAddr(struct CfgSetIPAddr* inst);
|
||||
void CfgGetSubnetMask(struct CfgGetSubnetMask* inst);
|
||||
void CfgSetSubnetMask(struct CfgSetSubnetMask* inst);
|
||||
void CfgGetDefaultGateway(struct CfgGetDefaultGateway* inst);
|
||||
void CfgSetDefaultGateway(struct CfgSetDefaultGateway* inst);
|
||||
void CfgGetMacAddr(struct CfgGetMacAddr* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASARCFG_ */
|
||||
|
||||
|
||||
39
Logical/Libraries/AsArSdm/AsArSdm.fun
Normal file
39
Logical/Libraries/AsArSdm/AsArSdm.fun
Normal file
@@ -0,0 +1,39 @@
|
||||
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION_BLOCK SdmSystemDump (*SDM - create a system dump; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
configuration : UDINT; (*cfgSDM_SYSTEMDUMP_PARAM(0) parameters only or cfgSDM_SYSTEMDUMP_DATA(1) parameters and data-files*)
|
||||
pDevice : UDINT; (*Devicename given as a pointer*)
|
||||
pFile : UDINT; (*Filename given as a pointer*)
|
||||
pParam : UDINT; (*Parameterstring given as a pointer*)
|
||||
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
|
||||
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION_BLOCK SdmSetAppParam (*SDM - set application mode; asynchronous execution*)
|
||||
VAR_INPUT
|
||||
enable : BOOL; (*enables execution*)
|
||||
appMode : UDINT; (*cfgSDM_APPMODE_OK(1),cfgSDM_APPMODE_WARNING(2),cfgSDM_APPMODE_ERROR(3)*)
|
||||
pLink : UDINT; (*URL given as a pointer*)
|
||||
Option : UDINT; (*options: cfgOPTION_VOLATILE, cfgOPTION_NON_VOLATILE*)
|
||||
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
|
||||
1
Logical/Libraries/AsArSdm/AsArSdm.typ
Normal file
1
Logical/Libraries/AsArSdm/AsArSdm.typ
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
21
Logical/Libraries/AsArSdm/AsArSdm.var
Normal file
21
Logical/Libraries/AsArSdm/AsArSdm.var
Normal file
@@ -0,0 +1,21 @@
|
||||
|
||||
VAR CONSTANT
|
||||
sdmERR_NOT_EXIST : UINT := 34900; (*SDM not active*)
|
||||
sdmERR_ARREG : UINT := 34901; (*SDM AR registry error*)
|
||||
sdmERR_SYSTEMDUMP : UINT := 34902; (*SDM System dump error*)
|
||||
sdmERR_INVALID_DEVICE : UINT := 34903; (*SDM System dump invalid device*)
|
||||
sdmERR_INVALID_POINTER : UINT := 34904; (*SDM System dump invalid pointer*)
|
||||
sdmERR_INVALID_VALUE : UINT := 34905; (*SDM Invalid application mode*)
|
||||
sdmERR_OPTION_INVALID : UINT := 34906; (*SDM"Option" parameter invalid*)
|
||||
|
||||
sdm_SYSTEMDUMP_PARAM : UINT := 0; (*SDM System Dump parameters only*)
|
||||
sdm_SYSTEMDUMP_DATA : UINT := 1; (*SDM SDM System Dump parameters and data files*)
|
||||
|
||||
sdm_APPMODE_NOTUSED : UINT := 0; (*SDM Applicationmode not set*)
|
||||
sdm_APPMODE_OK : UINT := 1; (*SDM Application ok*)
|
||||
sdm_APPMODE_WARNING : UINT := 2; (*SDM Application warning *)
|
||||
sdm_APPMODE_ERROR : UINT := 3; (*SDM Application error*)
|
||||
|
||||
sdmOPTION_NON_VOLATILE : UDINT := 1; (*permanently sets parameters*)
|
||||
sdmOPTION_VOLATILE : UDINT := 0; (*temporarily sets parameters*)
|
||||
END_VAR
|
||||
12
Logical/Libraries/AsArSdm/Binary.lby
Normal file
12
Logical/Libraries/AsArSdm/Binary.lby
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The AsArSdm library supports the System Diagnostics Manager">
|
||||
<Files>
|
||||
<File>AsArSdm.fun</File>
|
||||
<File>AsArSdm.typ</File>
|
||||
<File>AsArSdm.var</File>
|
||||
</Files>
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
104
Logical/Libraries/AsArSdm/SG4/AsArSdm.h
Normal file
104
Logical/Libraries/AsArSdm/SG4/AsArSdm.h
Normal file
@@ -0,0 +1,104 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASARSDM_
|
||||
#define _ASARSDM_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#include <runtime.h>
|
||||
|
||||
#ifndef _BUR_PUBLIC
|
||||
#define _BUR_PUBLIC
|
||||
#endif
|
||||
/* Constants */
|
||||
#ifdef _REPLACE_CONST
|
||||
#define sdmOPTION_VOLATILE 0U
|
||||
#define sdmOPTION_NON_VOLATILE 1U
|
||||
#define sdm_APPMODE_ERROR 3U
|
||||
#define sdm_APPMODE_WARNING 2U
|
||||
#define sdm_APPMODE_OK 1U
|
||||
#define sdm_APPMODE_NOTUSED 0U
|
||||
#define sdm_SYSTEMDUMP_DATA 1U
|
||||
#define sdm_SYSTEMDUMP_PARAM 0U
|
||||
#define sdmERR_OPTION_INVALID 34906U
|
||||
#define sdmERR_INVALID_VALUE 34905U
|
||||
#define sdmERR_INVALID_POINTER 34904U
|
||||
#define sdmERR_INVALID_DEVICE 34903U
|
||||
#define sdmERR_SYSTEMDUMP 34902U
|
||||
#define sdmERR_ARREG 34901U
|
||||
#define sdmERR_NOT_EXIST 34900U
|
||||
#else
|
||||
#ifndef _GLOBAL_CONST
|
||||
#define _GLOBAL_CONST _WEAK const
|
||||
#endif
|
||||
_GLOBAL_CONST unsigned long sdmOPTION_VOLATILE;
|
||||
_GLOBAL_CONST unsigned long sdmOPTION_NON_VOLATILE;
|
||||
_GLOBAL_CONST unsigned short sdm_APPMODE_ERROR;
|
||||
_GLOBAL_CONST unsigned short sdm_APPMODE_WARNING;
|
||||
_GLOBAL_CONST unsigned short sdm_APPMODE_OK;
|
||||
_GLOBAL_CONST unsigned short sdm_APPMODE_NOTUSED;
|
||||
_GLOBAL_CONST unsigned short sdm_SYSTEMDUMP_DATA;
|
||||
_GLOBAL_CONST unsigned short sdm_SYSTEMDUMP_PARAM;
|
||||
_GLOBAL_CONST unsigned short sdmERR_OPTION_INVALID;
|
||||
_GLOBAL_CONST unsigned short sdmERR_INVALID_VALUE;
|
||||
_GLOBAL_CONST unsigned short sdmERR_INVALID_POINTER;
|
||||
_GLOBAL_CONST unsigned short sdmERR_INVALID_DEVICE;
|
||||
_GLOBAL_CONST unsigned short sdmERR_SYSTEMDUMP;
|
||||
_GLOBAL_CONST unsigned short sdmERR_ARREG;
|
||||
_GLOBAL_CONST unsigned short sdmERR_NOT_EXIST;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef struct SdmSystemDump
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long configuration;
|
||||
unsigned long pDevice;
|
||||
unsigned long pFile;
|
||||
unsigned long pParam;
|
||||
/* 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;
|
||||
} SdmSystemDump_typ;
|
||||
|
||||
typedef struct SdmSetAppParam
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
unsigned long appMode;
|
||||
unsigned long pLink;
|
||||
unsigned long 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;
|
||||
} SdmSetAppParam_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
_BUR_PUBLIC void SdmSystemDump(struct SdmSystemDump* inst);
|
||||
_BUR_PUBLIC void SdmSetAppParam(struct SdmSetAppParam* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASARSDM_ */
|
||||
|
||||
80
Logical/Libraries/AsBrStr/AsBrStr.fun
Normal file
80
Logical/Libraries/AsBrStr/AsBrStr.fun
Normal file
@@ -0,0 +1,80 @@
|
||||
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsftoa : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsatof : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsatod : LREAL (*converts a character string into a LREAL (DOUBLE) value*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the character string to be converted*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsitoa : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsatoi : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsmemset : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsmemcpy : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsmemmove : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsmemcmp : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsstrcat : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsstrlen : UDINT (*provides the length of a character string*)
|
||||
VAR_INPUT
|
||||
pString :UDINT; (*pointer to the source character string*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsstrcpy : 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
|
||||
{REDUND_CONTEXT} {REDUND_UNREPLICABLE} FUNCTION brsstrcmp : 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
|
||||
|
||||
4
Logical/Libraries/AsBrStr/AsBrStr.typ
Normal file
4
Logical/Libraries/AsBrStr/AsBrStr.typ
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
TYPE
|
||||
|
||||
END_TYPE
|
||||
4
Logical/Libraries/AsBrStr/AsBrStr.var
Normal file
4
Logical/Libraries/AsBrStr/AsBrStr.var
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
VAR CONSTANT
|
||||
|
||||
END_VAR
|
||||
9
Logical/Libraries/AsBrStr/Binary.lby
Normal file
9
Logical/Libraries/AsBrStr/Binary.lby
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The AsBrStr Library contains FBKs for memory and character string handling.">
|
||||
<Files>
|
||||
<File>AsBrStr.fun</File>
|
||||
<File>AsBrStr.typ</File>
|
||||
<File>AsBrStr.var</File>
|
||||
</Files>
|
||||
</Library>
|
||||
39
Logical/Libraries/AsBrStr/SG3/AsBrStr.h
Normal file
39
Logical/Libraries/AsBrStr/SG3/AsBrStr.h
Normal file
@@ -0,0 +1,39 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASBRSTR_
|
||||
#define _ASBRSTR_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short brsftoa(float value, unsigned long pString);
|
||||
float brsatof(unsigned long pString);
|
||||
unsigned short brsitoa(signed long value, unsigned long pString);
|
||||
signed long brsatoi(unsigned long pString);
|
||||
unsigned long brsmemset(unsigned long pDest, unsigned char value, unsigned long length);
|
||||
unsigned long brsmemcpy(unsigned long pDest, unsigned long pSrc, unsigned long length);
|
||||
unsigned long brsmemmove(unsigned long pDest, unsigned long pSrc, unsigned long length);
|
||||
signed long brsmemcmp(unsigned long pMem1, unsigned long pMem2, unsigned long length);
|
||||
unsigned long brsstrcat(unsigned long pDest, unsigned long pSrc);
|
||||
unsigned long brsstrlen(unsigned long pString);
|
||||
unsigned long brsstrcpy(unsigned long pDest, unsigned long pSrc);
|
||||
signed long brsstrcmp(unsigned long pString1, unsigned long pString2);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASBRSTR_ */
|
||||
|
||||
39
Logical/Libraries/AsBrStr/SG4/AsBrStr.h
Normal file
39
Logical/Libraries/AsBrStr/SG4/AsBrStr.h
Normal file
@@ -0,0 +1,39 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASBRSTR_
|
||||
#define _ASBRSTR_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _BUR_PUBLIC
|
||||
#define _BUR_PUBLIC
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
_BUR_PUBLIC unsigned short brsftoa(float value, unsigned long pString);
|
||||
_BUR_PUBLIC float brsatof(unsigned long pString);
|
||||
_BUR_PUBLIC double brsatod(unsigned long pString);
|
||||
_BUR_PUBLIC unsigned short brsitoa(signed long value, unsigned long pString);
|
||||
_BUR_PUBLIC signed long brsatoi(unsigned long pString);
|
||||
_BUR_PUBLIC unsigned long brsmemset(unsigned long pDest, unsigned char value, unsigned long length);
|
||||
_BUR_PUBLIC unsigned long brsmemcpy(unsigned long pDest, unsigned long pSrc, unsigned long length);
|
||||
_BUR_PUBLIC unsigned long brsmemmove(unsigned long pDest, unsigned long pSrc, unsigned long length);
|
||||
_BUR_PUBLIC signed long brsmemcmp(unsigned long pMem1, unsigned long pMem2, unsigned long length);
|
||||
_BUR_PUBLIC unsigned long brsstrcat(unsigned long pDest, unsigned long pSrc);
|
||||
_BUR_PUBLIC unsigned long brsstrlen(unsigned long pString);
|
||||
_BUR_PUBLIC unsigned long brsstrcpy(unsigned long pDest, unsigned long pSrc);
|
||||
_BUR_PUBLIC signed long brsstrcmp(unsigned long pString1, unsigned long pString2);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASBRSTR_ */
|
||||
|
||||
39
Logical/Libraries/AsBrStr/SGC/AsBrStr.h
Normal file
39
Logical/Libraries/AsBrStr/SGC/AsBrStr.h
Normal file
@@ -0,0 +1,39 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
|
||||
#ifndef _ASBRSTR_
|
||||
#define _ASBRSTR_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _IEC_CONST
|
||||
#define _IEC_CONST _WEAK const
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
unsigned short brsftoa(float value, unsigned long pString);
|
||||
float brsatof(unsigned long pString);
|
||||
unsigned short brsitoa(signed long value, unsigned long pString);
|
||||
signed long brsatoi(unsigned long pString);
|
||||
unsigned long brsmemset(unsigned long pDest, unsigned char value, unsigned long length);
|
||||
unsigned long brsmemcpy(unsigned long pDest, unsigned long pSrc, unsigned long length);
|
||||
unsigned long brsmemmove(unsigned long pDest, unsigned long pSrc, unsigned long length);
|
||||
signed long brsmemcmp(unsigned long pMem1, unsigned long pMem2, unsigned long length);
|
||||
unsigned long brsstrcat(unsigned long pDest, unsigned long pSrc);
|
||||
unsigned long brsstrlen(unsigned long pString);
|
||||
unsigned long brsstrcpy(unsigned long pDest, unsigned long pSrc);
|
||||
signed long brsstrcmp(unsigned long pString1, unsigned long pString2);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _ASBRSTR_ */
|
||||
|
||||
71
Logical/Libraries/AsBrWStr/AsBrWStr.fun
Normal file
71
Logical/Libraries/AsBrWStr/AsBrWStr.fun
Normal file
@@ -0,0 +1,71 @@
|
||||
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcsconv : UDINT (*converts one string to a different format*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO USINT; (*string to be appended to, given as a pointer*)
|
||||
pSource :REFERENCE TO USINT; (*string to be appended, given as a pointer*)
|
||||
level :USINT; (*brwU8toUC (= 0) if converting from U8 to UC; brwUCtoU8 (= 1) if converting from UC to U8*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcsncpy : UDINT (*copies a maximum of n characters from the pSource WC string to the pDestination address*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*pointer to the target memory for the string*)
|
||||
pSource :REFERENCE TO UINT; (*string to be copied, given as a pointer*)
|
||||
n :UDINT; (*max. number of characters to be copied*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcsncat : UDINT (*appends a maximum of n characters from the pSource string to the pDestination string*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*string to be appended to, given as a pointer*)
|
||||
pSource :REFERENCE TO UINT; (*string to be appended, given as a pointer*)
|
||||
n :UDINT; (*maximum number of characters to be added from pSource to pDestination*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcscat : UDINT (*connects two WC strings to each other (concatenation)*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*string to be appended to, given as a pointer*)
|
||||
pSource :REFERENCE TO UINT; (*string to be appended, given as a pointer*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcscmp : DINT (*compares two 16-bit character strings*)
|
||||
VAR_INPUT
|
||||
pUcstr1 :REFERENCE TO UINT; (*first string, given as a pointer*)
|
||||
pUcstr2 :REFERENCE TO UINT; (*second string, given as a pointer*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcslen : UDINT (*determines the length of a WC string*)
|
||||
VAR_INPUT
|
||||
pwcString :REFERENCE TO UINT; (*string whose length should be determined, given as a pointer*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcsset : UDINT (*appends the pSource string to the pDestination string*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*string being written, given as a pointer*)
|
||||
len :UDINT; (*number of characters to be written*)
|
||||
symbol :UINT; (*character used to overwrite*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcsncmp : DINT (*compares two 16-bit strings*)
|
||||
VAR_INPUT
|
||||
pwcString1 :REFERENCE TO UINT; (*first string given as a pointer*)
|
||||
pwcString2 :REFERENCE TO UINT; (*second string given as a pointer*)
|
||||
n :UDINT; (*max. number of characters from pUcstr1 to be compared with pUcstr2*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcscpy : UDINT (*copies a WC string*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*pointer to the target memory for the string*)
|
||||
pSource :REFERENCE TO UINT; (*string to be copied, given as a pointer*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcsrchr : UDINT (*searches for the last occurrence of a certain character in a WC string*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*character string being searched, given as a pointer*)
|
||||
symbol :UINT; (*character being looked for*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
{REDUND_OK} {REDUND_UNREPLICABLE} FUNCTION brwcschr : UDINT (*searches for the first occurrence of a certain character*)
|
||||
VAR_INPUT
|
||||
pDestination :REFERENCE TO UINT; (*string given as a pointer*)
|
||||
symbol :UINT; (*character being looked for*)
|
||||
END_VAR
|
||||
END_FUNCTION
|
||||
4
Logical/Libraries/AsBrWStr/AsBrWStr.typ
Normal file
4
Logical/Libraries/AsBrWStr/AsBrWStr.typ
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
TYPE
|
||||
|
||||
END_TYPE
|
||||
5
Logical/Libraries/AsBrWStr/AsBrWStr.var
Normal file
5
Logical/Libraries/AsBrWStr/AsBrWStr.var
Normal file
@@ -0,0 +1,5 @@
|
||||
|
||||
VAR CONSTANT
|
||||
brwUCtoU8 : USINT := 1; (*instructs the wcsconv function to convert a WC character string into an ANSI string*)
|
||||
brwU8toUC : USINT := 0; (*instructs the wcsconv function to convert an ANSI character string into a WC string*)
|
||||
END_VAR
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user