IBN Stand
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Project Description="Lackierzelle" Version="1.00.0" Edition="Standard" EditionComment="Standard" xmlns="http://br-automation.co.at/AS/Project">
|
||||
<Communication />
|
||||
<ANSIC DefaultIncludes="true" />
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<ProjectSettings xmlns="http://br-automation.co.at/AS/ProjectSettings">
|
||||
<ConfigurationManager ActiveConfigurationName="Config0" />
|
||||
<Deployment Value="ActiveCpu" />
|
||||
|
||||
32
Logical/Communication/MP/GlobalMP.typ
Normal file
32
Logical/Communication/MP/GlobalMP.typ
Normal file
@@ -0,0 +1,32 @@
|
||||
(*//Interface ABB Roboter*)
|
||||
|
||||
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;
|
||||
END_TYPE
|
||||
|
||||
(**)
|
||||
3
Logical/Communication/MP/GlobalMP.var
Normal file
3
Logical/Communication/MP/GlobalMP.var
Normal file
@@ -0,0 +1,3 @@
|
||||
VAR
|
||||
gMP7150 : gtyp_MP7150; (*Tasten / LEDs MP 7150*)
|
||||
END_VAR
|
||||
70
Logical/Communication/MP/MPComm/Cyclic.st
Normal file
70
Logical/Communication/MP/MPComm/Cyclic.st
Normal file
@@ -0,0 +1,70 @@
|
||||
|
||||
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
|
||||
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
|
||||
|
||||
|
||||
END_PROGRAM
|
||||
6
Logical/Communication/MP/MPComm/Exit.st
Normal file
6
Logical/Communication/MP/MPComm/Exit.st
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
PROGRAM _EXIT
|
||||
(* Insert code here *)
|
||||
|
||||
END_PROGRAM
|
||||
11
Logical/Communication/MP/MPComm/IEC.prg
Normal file
11
Logical/Communication/MP/MPComm/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>
|
||||
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 := 'Visu';
|
||||
Parameter.enPanelType := enMP7150;
|
||||
|
||||
Status.bConnect := TRUE; //Verbindungsaufbau erzwingen
|
||||
RfbExtInit (ADR (RFBLib), Parameter.udTimeout);
|
||||
END_PROGRAM
|
||||
22
Logical/Communication/MP/MPComm/Types.typ
Normal file
22
Logical/Communication/MP/MPComm/Types.typ
Normal file
@@ -0,0 +1,22 @@
|
||||
|
||||
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
|
||||
);
|
||||
END_TYPE
|
||||
8
Logical/Communication/MP/MPComm/Variables.var
Normal file
8
Logical/Communication/MP/MPComm/Variables.var
Normal file
@@ -0,0 +1,8 @@
|
||||
(*//Strukturen*)
|
||||
VAR
|
||||
usKeystate : USINT;
|
||||
diTemperature : DINT;
|
||||
RFBLib : AsRfbExt_typ; (*RFBLib*)
|
||||
Parameter : typ_Parameter;
|
||||
Status : typ_Status;
|
||||
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.3.6.57 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File" Description="Communication Types" Private="true">GlobalMP.typ</Object>
|
||||
<Object Type="File" Description="Logging Vars" Private="true">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_ */
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.5.113 SP?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<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="Kommunikation zu ABB Roboter (IRC 5 Version)">ABBCom</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>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,21 +1,107 @@
|
||||
|
||||
PROGRAM _CYCLIC
|
||||
pFileInterface.strDevice := 'CNC_PrgDir';
|
||||
pFileInterface.strFile := 'CncProg2.cnc';
|
||||
|
||||
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;
|
||||
IF pFileInterface.bReadFile THEN
|
||||
strFile := gstrFilenames[usEditFileSelection];
|
||||
IF VCCtrl.LoadEdit.bCommand THEN
|
||||
VCCtrl.LoadEdit.bCommand := FALSE;
|
||||
VCCtrl.DropDownBoxFile.bCompletion := FALSE;
|
||||
enFileStep := enFileStep_OPEN;
|
||||
pFileInterface.bReadFile := FALSE;
|
||||
END_IF
|
||||
|
||||
IF (States.udFileHandle > 0) THEN
|
||||
@@ -28,10 +114,9 @@ PROGRAM _CYCLIC
|
||||
//=================================
|
||||
enFileStep_OPEN:
|
||||
FUBs.FileOpen.mode := fiREAD_WRITE;
|
||||
FUBs.FileOpen.pDevice := ADR (pFileInterface.strDevice);
|
||||
FUBs.FileOpen.pFile := ADR (pFileInterface.strFile);
|
||||
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;
|
||||
@@ -100,19 +185,37 @@ PROGRAM _CYCLIC
|
||||
//Auf neue Befehle warten
|
||||
//=================================
|
||||
enFileStep_WAITCMD2:
|
||||
IF bScrollDown THEN
|
||||
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;
|
||||
bScrollDown := FALSE;
|
||||
VCCtrl.ScrollDown.bCommand := FALSE;
|
||||
enFileStep := enFileStep_READLINE;
|
||||
ELSIF bScrollUp AND (States.udOrgLineOffset[0] > 0) THEN
|
||||
bScrollUp := FALSE;
|
||||
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
|
||||
@@ -211,6 +314,9 @@ PROGRAM _CYCLIC
|
||||
END_IF
|
||||
|
||||
END_CASE
|
||||
|
||||
FUBs.DirInfo ();
|
||||
FUBs.DirRead ();
|
||||
FUBs.FileOpen ();
|
||||
FUBs.FileRead ();
|
||||
FUBs.FileWrite ();
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
|
||||
PROGRAM _INIT
|
||||
Parameter.usEditLines := 10;
|
||||
Parameter.usEditLines := 12;
|
||||
Parameter.usPageLines:= 5;
|
||||
|
||||
bReadDir := TRUE;
|
||||
END_PROGRAM
|
||||
@@ -13,6 +13,13 @@ TYPE
|
||||
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*)
|
||||
@@ -22,6 +29,11 @@ TYPE
|
||||
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*)
|
||||
@@ -37,6 +49,9 @@ TYPE
|
||||
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
|
||||
|
||||
@@ -54,8 +69,16 @@ TYPE
|
||||
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*)
|
||||
usProfilMode : USINT; (*Status Datenpunkt Modusanwahl Tuning*)
|
||||
usDummy : USINT;
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
@@ -4,13 +4,19 @@ 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];
|
||||
@@ -20,9 +26,12 @@ 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
|
||||
|
||||
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
|
||||
@@ -1,9 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.5.113 SP?>
|
||||
<?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="File" Description="Package Typen - File" Private="true">Package.typ</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Simple Texteditor">FileEdit</Object>
|
||||
<Object Type="Program" Language="IEC" Description="Filemanagement">FileMan</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,8 +0,0 @@
|
||||
|
||||
TYPE
|
||||
ptyp_FileInterface : STRUCT (*Interface*)
|
||||
strDevice : STRING[80] := ''; (*Filedevice*)
|
||||
strFile : STRING[80] := ''; (*Filename*)
|
||||
bReadFile : BOOL := FALSE; (*Datei einlesen*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
@@ -1,6 +1,3 @@
|
||||
VAR RETAIN
|
||||
pFileInterface : ptyp_FileInterface;
|
||||
END_VAR
|
||||
VAR
|
||||
VisuPageCtrl_TempCtrl : gtyp_VisuCtrlPage; (*Seiteninterface allgemein*)
|
||||
VisuPageCtrl_File : gtyp_VisuCtrlPage; (*Seiteninterface allgemein*)
|
||||
END_VAR
|
||||
|
||||
@@ -35,6 +35,8 @@ VAR
|
||||
gbSPLCReadbackInfeed : BOOL;
|
||||
gbSPLCResetReadbackError : BOOL;
|
||||
gbSPLCMachineOn : BOOL;
|
||||
gbSPLCJogMode : BOOL; (*Handbetrieb*)
|
||||
gbSPLCResetBumperError : BOOL; (*Handschutzleiste Ausl<73>sung quittieren*)
|
||||
END_VAR
|
||||
(*2 R<>cklesesignale direkt von Eingang gemappt*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
@@ -43,20 +45,26 @@ END_VAR
|
||||
VAR
|
||||
gbSPLCInEstopOk : BOOL; (*Safety PLC E-Stop ist Ok*)
|
||||
gbSPLCInAxisEnabledOk : BOOL; (*Safety PLC Achsen freigegeben Ok*)
|
||||
gbSPLCInDoorsOk : BOOL; (*Safety PLC T<EFBFBD>rkreis ist Ok*)
|
||||
gbSPLCInDoorsBackOk : BOOL; (*Safety PLC Wartungst<EFBFBD>ren hinten Ok*)
|
||||
gbSPLCInDoorsFrontOk : BOOL; (*Safety PLC Wartungst<73>ren hinten Ok*)
|
||||
gbSPLCInRdbckErrorEStop : BOOL; (*Safety PLC R<>cklesefehler E-Stop*)
|
||||
gbSPLCInRdbckErrorInfeed : BOOL; (*Safety PLC R<>cklesefehler Einlegebereich*)
|
||||
gbSPLCInErrorBumper : BOOL; (*Ausl<73>sung Handschutzleiste*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*I/O from SLX*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbSInFrontGateOk : BOOL; (*Sicherer Eingang 01/02 Equivalent - Frontt<74>r (Schiebet<65>r) geschlossen*)
|
||||
gbSInMaintenanceDoorFrontOk : BOOL; (*Sicherer Eingang 03/04 Equivalent - Fr<46>ntt<74>r (Wartung) geschlossen*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF6.ST2 - SC2212*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbIF6ST2ModuleOk : BOOL;
|
||||
gbSInFrontGateOk : BOOL; (*Sicherer Eingang 01/02 Equivalent - Frontt<EFBFBD>r geschlossen*)
|
||||
gbSInMaintenanceDoorOk : BOOL; (*Sicherer Eingang 03/04 Equivalent - Wartungst<73>r geschlossen*)
|
||||
gbIF6ST2ModuleOk : {REDUND_UNREPLICABLE} BOOL := FALSE;
|
||||
gbSInMaintenanceDoorBackOk : BOOL; (*Sicherer Eingang 01/02 Equivalent - Wartungst<EFBFBD>r hinten Fl<46>gel 1 geschlossen*)
|
||||
gbSInMaintenanceDoorBack2Ok : BOOL; (*Sicherer Eingang 03/04 Equivalent - Wartungst<73>r hinten Fl<46>gel 2 geschlossen*)
|
||||
gbSInBumperGateOk : BOOL; (*Sicherer Eingang 05/06 Equivalent - Handschutzleiste Frontt<74>r*)
|
||||
gbSOuEnableAxisses : BOOL; (*Sicherer Ausgang 01 - Freigabe Achsen*)
|
||||
gbSOuCloseFrontgate : BOOL; (*Sicherer Ausgang 02 - Frontt<74>r schlie<69>en*)
|
||||
@@ -67,11 +75,11 @@ END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbIF6ST3ModuleOk : BOOL;
|
||||
gbSInEStopPanel : BOOL; (*Sicherer Eingang 01/02 Equivalent - Nothalt Panel*)
|
||||
gbSInEStop : BOOL; (*Sicherer Eingang 01/02 Equivalent - Nothaltkette*)
|
||||
gbSInAckKeyPanel : BOOL; (*Sicherer Eingang 02/03 Equivalent - Zustimmtaster Panel*)
|
||||
gbSInEstopHPPump : BOOL; (*Sicherer Eingang 04 - Nothalt von HD Pumpe*)
|
||||
gbSOuMainsSafetyEStop : BOOL;
|
||||
gbSOuMainsSafetyDoors : BOOL;
|
||||
gbSOuMainsSafetyEStop : BOOL; (*Nach Nothalt*)
|
||||
gbSOuMainsSafetyDoors : BOOL; (*Nach Schutzt<7A>r*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF6.ST4 - SIO4110*)
|
||||
@@ -89,11 +97,10 @@ VAR
|
||||
gbOu5T1DI1 : BOOL; (*Eingang FU*)
|
||||
gbOu5T1DI2 : BOOL; (*Eingang FU*)
|
||||
gbOu6T1DI1 : BOOL; (*Eingang FU*)
|
||||
gbOu7T1DI1 : BOOL; (*Eingang FU*)
|
||||
gbOu6T1DI2 : BOOL; (*Eingang FU*)
|
||||
gbOu7T1DI1 : BOOL; (*Eingang FU*)
|
||||
gbOu7T1DI2 : BOOL; (*Eingang FU*)
|
||||
gbOuPower110A1 : BOOL; (*Versorgung Auswertger<65>t Handschutzleiste*)
|
||||
gbOuMaintenanceDoorLock : BOOL; (*Zuhaltung Wartungst<73>r*)
|
||||
END_VAR
|
||||
(*//1Spare*)
|
||||
VAR
|
||||
@@ -107,6 +114,9 @@ VAR
|
||||
gbOuAxisYOpenBrake : BOOL; (*Bremse Y-Achse <20>ffnen*)
|
||||
gbOuAxisAOpenBrake : BOOL; (*Bremse A-Achse <20>ffnen*)
|
||||
gbOuAxisShuttleOpenBrake : BOOL; (*Bremse Shuttle <20>ffnen*)
|
||||
gbOuLEDStartKey : BOOL; (*Leuchtmelder Start (gn)*)
|
||||
gbOuLEDReset : BOOL; (*Leuchtmelder Quittieren (rt)*)
|
||||
gbOuLEDResetDoor : BOOL; (*Leuchtmelder Anforder*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF6.ST7 - 15K6 - DI9371 (Eing<6E>nge Allgemein)*)
|
||||
@@ -116,10 +126,11 @@ VAR
|
||||
gbInDropoutFuse10F3 : BOOL; (*Sicherungsfall 10F3*)
|
||||
gbInDropoutFuse10F4 : BOOL; (*Sicherungsfall 10F4*)
|
||||
gbInDropoutFuse10F5 : BOOL; (*Sicherungsfall 10F5*)
|
||||
gbInAirOkEStop : BOOL; (*Presse in Position unten (AS Werkzeug1)*)
|
||||
gbInAirOkDoors : BOOL; (*Presse in Position unten (AS Werkzeug2)*)
|
||||
gbInMaintenanceDoorDiag : BOOL; (*T<>r Diagnose*)
|
||||
gbInMaintenanceDoorClosed : BOOL; (*T<>r Meldung Geschlossen (Keine Info Verriegelt)*)
|
||||
gbInAirOkEStop : BOOL; (*Druckluft nach Nothalt*)
|
||||
gbInAirOkDoors : BOOL; (*Druckluft nach Schutzt<7A>r*)
|
||||
END_VAR
|
||||
(*//2Spare*)
|
||||
VAR
|
||||
gbIn110A1Error : BOOL; (*Fehlermeldung Auswerteger<65>t Handschutzleiste*)
|
||||
gbInReadbackEstop : BOOL; (*R<>ckf<6B>hrkreis Sicherheit nach Nothalt*)
|
||||
gbInReadbackDoors : BOOL; (*R<>ckf<6B>hrkreis Sicherheit nach Schutzt<7A>r*)
|
||||
@@ -130,6 +141,17 @@ END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbIF6ST8ModuleOk : BOOL;
|
||||
gbInStartKey : BOOL; (*Starttaster*)
|
||||
gbInResetKey : BOOL; (*Resettaster*)
|
||||
gbInResetDoorKey : BOOL; (*Quittierung Wartungst<73>ren*)
|
||||
gbInWaterTempMax : BOOL; (*Wassertemperatur HD Pumpe Max*)
|
||||
gbInWaterPressMin : BOOL; (*Wasserdruck HD Pumpe Min*)
|
||||
gbInAirPressMin : BOOL; (*Luftdruck HD Pumpe Min*)
|
||||
gbInWaterLvlMin : BOOL; (*Wasserlevel HD Pumpe Min*)
|
||||
gbInWaterPrePress3Bar : BOOL; (*Wasservordruck 3 bar*)
|
||||
gbInHPPumpOn : BOOL; (*HD Pumpe ein*)
|
||||
gbInHPOn : BOOL; (*Hochdruck EIN*)
|
||||
gbInFrontGateOpen : BOOL; (*Zugangst<73>r ist offen*)
|
||||
END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*IF6.ST11 - BT9400 ( Bustransmitter P2)*)
|
||||
@@ -152,6 +174,3 @@ END_VAR
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
(*----------------------------------------------------------------------------------------------------------------*)
|
||||
VAR
|
||||
gbInStartKey : BOOL;
|
||||
END_VAR
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?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">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The AsArSdm library supports the System Diagnostics Manager" xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsArSdm.fun</File>
|
||||
<File>AsArSdm.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,9 +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.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The AsBrStr Library contains FBKs for memory and character string handling." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsBrStr.fun</File>
|
||||
<File>AsBrStr.typ</File>
|
||||
<File>AsBrStr.var</File>
|
||||
</Files>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,9 +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 AsBrWStr library allows 8-bit character strings to be implemented for 16-bit WC (AsBrWStr) strings.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The AsBrWStr library allows 8-bit character strings to be implemented for 16-bit WC (AsBrWStr) strings." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsBrWStr.fun</File>
|
||||
<File>AsBrWStr.typ</File>
|
||||
<File>AsBrWStr.var</File>
|
||||
</Files>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The AsMem library makes it possible to manage memory blocks located in large memory areas (memory partitions).">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The AsMem library makes it possible to manage memory blocks located in large memory areas (memory partitions)." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsMem.fun</File>
|
||||
<File>AsMem.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.5.113 SP?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="This library contains FBKs for exchanging data (data stream) via stream sockets (TCP)." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsTCP.fun</File>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="This library contains function blocks to handle USB devices on the target.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="This library contains function blocks to handle USB devices on the target." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsUSB.fun</File>
|
||||
<File>AsUSB.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The AsZip library offers compressing archive-support">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The AsZip library offers compressing archive-support" xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>AsZip.fun</File>
|
||||
<File>AsZip.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.4.121 SP?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Version="5.01.3" Description="This library contains functionality to execute traces (to sample numeric values periodically for a defined time-span)" xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>CoTrace.fun</File>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The DataObj library can be used to dynamically create, dynamically delete and copy data objects, etc. ">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The DataObj library can be used to dynamically create, dynamically delete and copy data objects, etc. " xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>DataObj.fun</File>
|
||||
<File>DataObj.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The FileIO library provides function blocks for file handling.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The FileIO library provides function blocks for file handling." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>FileIO.fun</File>
|
||||
<File>FileIO.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
14
Logical/Libraries/MpFile/Binary.lby
Normal file
14
Logical/Libraries/MpFile/Binary.lby
Normal file
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Version="5.01.0" Description="File explorer for B+R file devices" xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>MpFile.typ</File>
|
||||
<File>MpFileError.typ</File>
|
||||
<File>MpFileAlarm.typ</File>
|
||||
<File>MpFile.fun</File>
|
||||
</Files>
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="FileIO" />
|
||||
<Dependency ObjectName="MpBase" FromVersion="5.01.0" ToVersion="5.01.9" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
41
Logical/Libraries/MpFile/MpFile.fun
Normal file
41
Logical/Libraries/MpFile/MpFile.fun
Normal file
@@ -0,0 +1,41 @@
|
||||
|
||||
FUNCTION_BLOCK MpFileManagerUI (*File management system and UI connection to VC4*) (* $GROUP=mapp Services,$CAT=File Explorer,$GROUPICON=Icon_mapp.png,$CATICON=Icon_MpFile.png *)
|
||||
VAR_INPUT
|
||||
MpLink : REFERENCE TO MpComIdentType; (*Connection to mapp*) (* *) (*#PAR#;*)
|
||||
Enable : BOOL; (*Enables/Disables the function block*) (* *) (*#PAR#;*)
|
||||
ErrorReset : BOOL; (*Resets function block errors*) (* *) (*#PAR#;*)
|
||||
UISetup : MpFileManagerUISetupType; (*Used to configure the elements connected to the HMI application*) (* *) (*#PAR#;*)
|
||||
UIConnect : REFERENCE TO MpFileManagerUIConnectType; (*This structure contains the parameters needed for the connection to the HMI application*) (* *) (*#CMD#;*)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Active : BOOL; (*Indicates whether the function block is active*) (* *) (*#PAR#;*)
|
||||
Error : BOOL; (*Indicates that the function block is in an error state or a command was not executed correctly*) (* *) (*#PAR#;*)
|
||||
StatusID : DINT; (*Status information about the function block*) (* *) (*#PAR#; *)
|
||||
Info : MpFileInfoType; (*Additional information about the component*) (* *) (*#CMD#;*)
|
||||
END_VAR
|
||||
VAR
|
||||
Internal : MpComInternalDataType; (*Internal stucture*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
FUNCTION_BLOCK MpFileManagerConfig (*mapp component for read/write component configuration*) (* $GROUP=mapp Services,$CAT=File Explorer,$GROUPICON=Icon_mapp.png,$CATICON=Icon_MpFile.png *)
|
||||
VAR_INPUT
|
||||
MpLink : REFERENCE TO MpComIdentType; (*Incoming communication handle (mapp standard interface)*) (* *) (*#PAR#;*)
|
||||
Enable : BOOL; (*Enables/Disables the function block (mapp standard interface)*) (* *) (*#PAR#;*)
|
||||
ErrorReset : BOOL; (*Resets all function block errors (mapp standard interface)*) (* *) (*#PAR#;*)
|
||||
Configuration : REFERENCE TO MpFileManagerConfigType; (*The component configuration structure.*) (* *) (*#PAR#; *)
|
||||
Load : BOOL; (*Reads the component configuration.*) (* *) (*#CMD#; *)
|
||||
Save : BOOL; (*Writes the component configuration.*) (* *) (*#CMD#; *)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Active : BOOL; (*Function block is active (mapp standard interface)*) (* *) (*#PAR#;*)
|
||||
Error : BOOL; (*Indicates an error (mapp standard interface)*) (* *) (*#PAR#;*)
|
||||
StatusID : DINT; (*Error/Status information (mapp standard interface)*) (* *) (*#PAR#; *)
|
||||
CommandBusy : BOOL; (*Function block is busy processing a command*) (* *) (*#CMD#OPT#;*)
|
||||
CommandDone : BOOL; (*True if a command finshed successfully.*) (* *) (*#CMD#;*)
|
||||
Info : MpFileInfoType; (*Provide any further useful information as function block output.(mapp standard interface)*) (* *) (*#CMD#; *)
|
||||
END_VAR
|
||||
VAR
|
||||
Internal : MpComInternalDataType; (*Internal data*)
|
||||
END_VAR
|
||||
END_FUNCTION_BLOCK
|
||||
135
Logical/Libraries/MpFile/MpFile.typ
Normal file
135
Logical/Libraries/MpFile/MpFile.typ
Normal file
@@ -0,0 +1,135 @@
|
||||
|
||||
TYPE
|
||||
MpFileManagerUIItemType : STRUCT
|
||||
Name : STRING[255]; (*Filename / Folder name*)
|
||||
Size : UDINT; (*File size [bytes]*)
|
||||
LastModified : DATE_AND_TIME; (*Date when this file/folder was last modified*)
|
||||
ItemType : MpFileManagerUIItemTypeEnum; (*File type (.csv, .jpg, etc.)*)
|
||||
IsSelected : BOOL; (*Indicates that a file/folder is selected*)
|
||||
IsFolder : BOOL; (*Indicates that the element is a folder*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIItemTypeEnum :
|
||||
(
|
||||
mpFILE_ITEM_TYPE_NONE := 0, (*No type defined*)
|
||||
mpFILE_ITEM_TYPE_FOLDER := 1, (*Indicates that the element is a folder*)
|
||||
mpFILE_ITEM_TYPE_FILE := 2, (*Indicates that the element is a file*)
|
||||
mpFILE_ITEM_TYPE_TXT := 3, (*Indicates that the element is a text file*)
|
||||
mpFILE_ITEM_TYPE_HTML := 4, (*Indicates that the element is an HTML file*)
|
||||
mpFILE_ITEM_TYPE_DOC := 5, (*Indicates that the element is a Word file (.doc) *)
|
||||
mpFILE_ITEM_TYPE_XLS := 6, (*Indicates that the element is an Excel file (.xls)*)
|
||||
mpFILE_ITEM_TYPE_XML := 7, (*Indicates that the element is an XML file (.xml)*)
|
||||
mpFILE_ITEM_TYPE_CSV := 8, (*Indicates that the element is an CSV file (.csv)*)
|
||||
mpFILE_ITEM_TYPE_JPG := 9, (*Indicates that the element is an image file (.jpg)*)
|
||||
mpFILE_ITEM_TYPE_BMP := 10, (*Indicates that the element is an image file (.bmp)*)
|
||||
mpFILE_ITEM_TYPE_USER1 := 89, (*Indicates that the element is an user predefined type 1*)
|
||||
mpFILE_ITEM_TYPE_USER2 := 90, (*Indicates that the element is an user predefined type 2*)
|
||||
mpFILE_ITEM_TYPE_USER3 := 91, (*Indicates that the element is an user predefined type 3*)
|
||||
mpFILE_ITEM_TYPE_USER4 := 92, (*Indicates that the element is an user predefined type 4*)
|
||||
mpFILE_ITEM_TYPE_USER5 := 93, (*Indicates that the element is an user predefined type 5*)
|
||||
mpFILE_ITEM_TYPE_USER6 := 94, (*Indicates that the element is an user predefined type 6*)
|
||||
mpFILE_ITEM_TYPE_USER7 := 95, (*Indicates that the element is an user predefined type 7*)
|
||||
mpFILE_ITEM_TYPE_USER8 := 96, (*Indicates that the element is an user predefined type 8*)
|
||||
mpFILE_ITEM_TYPE_USER9 := 97, (*Indicates that the element is an user predefined type 9*)
|
||||
mpFILE_ITEM_TYPE_USER10 := 98, (*Indicates that the element is an user predefined type 10*)
|
||||
mpFILE_ITEM_TYPE_UNKNOWN := 99 (*Indicates that the file type is unknown*)
|
||||
);
|
||||
MpFileManagerUISortOrderEnum :
|
||||
(
|
||||
mpFILE_SORT_BY_NAME_ASC := 0, (*Sorts in ascending (alphabetic) order*)
|
||||
mpFILE_SORT_BY_NAME_DESC := 1, (*Sorts in descending (alphabetic) order*)
|
||||
mpFILE_SORT_BY_SIZE_ASC := 2, (*Sorts in ascending order by file size*)
|
||||
mpFILE_SORT_BY_SIZE_DES := 3, (*Sorts in descending order by file size*)
|
||||
mpFILE_SORT_BY_MOD_TIME_ASC := 4, (*Sorts in ascending order by date last modified*)
|
||||
mpFILE_SORT_BY_MOD_TIME_DESC := 5 (*Sorts in descending order by date last modified*)
|
||||
);
|
||||
MpFileManagerUIMessageEnum :
|
||||
(
|
||||
mpFILE_MSG_OK := 0, (*Dialog box for requesting confirmation of input*)
|
||||
mpFILE_MSG_CONFIRM_DELETE := 1, (*Dialog box for requesting confirmation of deletion*)
|
||||
mpFILE_MSG_CONFIRM_OVERWRITE := 2, (*Dialog box for requesting confirmation of overwriting*)
|
||||
mpFILE_MSG_BUSY := 3 (*Dialog box for requesting confirmation of busy UI*)
|
||||
);
|
||||
MpFileDiagType : STRUCT
|
||||
StatusID : MpFileStatusIDType; (*StatusID diagnostic structure*)
|
||||
END_STRUCT;
|
||||
MpFileStatusIDType : STRUCT
|
||||
ID : MpFileErrorEnum; (*Error code for mapp component*)
|
||||
Severity : MpComSeveritiesEnum; (*Describes the type of information supplied by the status ID (success, information, warning, error)*)
|
||||
Code : UINT; (*Code for the status ID. This error number can be used to search for additional information in the help system.*)
|
||||
END_STRUCT;
|
||||
MpFileInfoType : STRUCT
|
||||
Diag : MpFileDiagType; (*Diagnostic structure for the status ID*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIStatusEnum :
|
||||
(
|
||||
mpFILE_UI_STATUS_IDLE := 0, (*Indicates that no process is currently active*)
|
||||
mpFILE_UI_STATUS_REFRESH := 1, (*Updating elements*)
|
||||
mpFILE_UI_STATUS_CHANGE_PAGE := 2, (*Page change active*)
|
||||
mpFILE_UI_STATUS_CHANGE_DIR := 3, (*Folder change active*)
|
||||
mpFILE_UI_STATUS_CHANGE_DEVICE := 4, (*File Device Change active*)
|
||||
mpFILE_UI_STATUS_CREATE := 5, (*Creating a file/folder active*)
|
||||
mpFILE_UI_STATUS_RENAME := 6, (*Renaming a file/folder active*)
|
||||
mpFILE_UI_STATUS_DELETE := 7, (*Deleting a file/folder active*)
|
||||
mpFILE_UI_STATUS_COPY := 8, (*Copying a file/folder active*)
|
||||
mpFILE_UI_STATUS_CUT := 9, (*Cutting a file/folder active*)
|
||||
mpFILE_UI_STATUS_PASTE := 10, (*Pasting a file/folder active*)
|
||||
mpFILE_UI_STATUS_SORT := 11, (*Sorting files/folders in specified sort order*)
|
||||
mpFILE_UI_STATUS_ERROR := 99 (*The last operation generated an error*)
|
||||
);
|
||||
MpFileManagerUISetupType : STRUCT
|
||||
FileListSize : UINT := 10; (*Number of files to be displayed on one page of the list in the HMI application*)
|
||||
FileListScrollWindow : USINT := 1; (*Determines how many entries from the list are displayed in advance when scrolling up and down*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIConnectType : STRUCT
|
||||
Status : MpFileManagerUIStatusEnum; (*Current operation*)
|
||||
DeviceList : MpFileManagerUIDeviceListType; (*List of data storage media (file devices) accessible by the file manager*)
|
||||
File : MpFileManagerUIFileType; (*Contains the file list as well as additional information about files,folders and possible commands*)
|
||||
MessageBox : MpFileManagerUIMessageBoxType; (*Controls dialog boxes*)
|
||||
DefaultLayerStatus : UINT; (*Status DP for the default layer of the visu page where the file manager is being displayed*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIMessageBoxType : STRUCT
|
||||
LayerStatus : UINT; (*Visibility of the dialog box*)
|
||||
Type : MpFileManagerUIMessageEnum; (*Type of dialog box*)
|
||||
ErrorNumber : UINT; (*Current error number to be displayed*)
|
||||
Confirm : BOOL; (*Confirms the operation*)
|
||||
Cancel : BOOL; (*Cancels the operation*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIPathInfoType : STRUCT
|
||||
CurrentDir : STRING[255]; (*Current folder name*)
|
||||
FileCount : UDINT; (*Number of files in the current folder*)
|
||||
FolderCount : UDINT; (*Number of subfolders in the current folder*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIFileType : STRUCT
|
||||
List : MpFileManagerUIFileListType; (*List of all folders and files under the current path, as well as the navigation of the list*)
|
||||
Filter : STRING[255]; (*Filter used to sort the files*) (* *) (*#CMD#OPT#;*)
|
||||
SortOrder : MpFileManagerUISortOrderEnum; (*Responsible for the order of files in the list*)
|
||||
Refresh : BOOL; (*Updates the file list in the current folder*)
|
||||
PathInfo : MpFileManagerUIPathInfoType; (*Information about the current path*)
|
||||
EnterFolder : BOOL; (*Navigates one folder down*)
|
||||
FolderUp : BOOL; (*Navigates one folder up*)
|
||||
MultiSelect : BOOL; (*Allows the selection of multiple elements at the same time*)
|
||||
Delete : BOOL; (*Deletes a file or folder*)
|
||||
Copy : BOOL; (*Copying a file/folder*)
|
||||
Cut : BOOL; (*Cuts a file or folder*)
|
||||
Paste : BOOL; (*Pastes a file or folder*)
|
||||
NewName : STRING[255]; (*The new name of a file or folder when using the "Rename" or "CreateFolder" command*)
|
||||
Rename : BOOL; (*Renames a file or folder*)
|
||||
CreateFolder : BOOL; (*Creates a folder*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIFileListType : STRUCT
|
||||
Items : ARRAY[0..49]OF MpFileManagerUIItemType; (*List of all files and folders under the current path*)
|
||||
PageUp : BOOL; (*Jumps to the start of the current page and then scrolls up one page at a time*)
|
||||
StepUp : BOOL; (*Selects the previous entry in the list*)
|
||||
PageDown : BOOL; (*Jumps to the end of the current page and then scrolls down one page at a time*)
|
||||
StepDown : BOOL; (*Selects the next entry in the list*)
|
||||
RangeStart : REAL; (*Shows a bar indicating which part of the list is currently being displayed-Start [%]*)
|
||||
RangeEnd : REAL; (*Shows a bar indicating which part of the list is currently being displayed-End [%]*)
|
||||
END_STRUCT;
|
||||
MpFileManagerUIDeviceListType : STRUCT
|
||||
DeviceNames : ARRAY[0..9]OF STRING[50]; (*List of all available data storage media*)
|
||||
SelectedIndex : UINT; (*Index of the entry currently selected in the list*)
|
||||
END_STRUCT;
|
||||
MpFileManagerConfigType : STRUCT
|
||||
CustomizedFileType : ARRAY[0..9]OF STRING[5]; (*Customized file type names*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
9
Logical/Libraries/MpFile/MpFileAlarm.typ
Normal file
9
Logical/Libraries/MpFile/MpFileAlarm.typ
Normal file
@@ -0,0 +1,9 @@
|
||||
|
||||
TYPE
|
||||
MpFileUIAlarmEnum :
|
||||
( (* Alarms of MpFile UI *)
|
||||
mpFILE_ALM_DEVICE_NOT_FOUND := 0, (*FileDevice not found*)
|
||||
mpFILE_ALM_ALREADY_EXISTING := 1, (*File/Folder already exists*)
|
||||
mpFILE_ALM_ERROR_FILE_SYSTEM := 2 (*General error in file system*)
|
||||
);
|
||||
END_TYPE
|
||||
23
Logical/Libraries/MpFile/MpFileError.typ
Normal file
23
Logical/Libraries/MpFile/MpFileError.typ
Normal file
@@ -0,0 +1,23 @@
|
||||
|
||||
TYPE
|
||||
MpFileErrorEnum :
|
||||
( (* Error numbers of library MpFile *)
|
||||
mpFILE_NO_ERROR := 0, (* No error *)
|
||||
mpFILE_ERR_ACTIVATION := -1064239103, (* Could not create component [Error: 1, 0xc0910001] *)
|
||||
mpFILE_ERR_MPLINK_NULL := -1064239102, (* MpLink is NULL pointer [Error: 2, 0xc0910002] *)
|
||||
mpFILE_ERR_MPLINK_INVALID := -1064239101, (* MpLink connection not allowed [Error: 3, 0xc0910003] *)
|
||||
mpFILE_ERR_MPLINK_CHANGED := -1064239100, (* MpLink modified [Error: 4, 0xc0910004] *)
|
||||
mpFILE_ERR_MPLINK_CORRUPT := -1064239099, (* Invalid MpLink contents [Error: 5, 0xc0910005] *)
|
||||
mpFILE_ERR_MPLINK_IN_USE := -1064239098, (* MpLink already in use [Error: 6, 0xc0910006] *)
|
||||
mpFILE_ERR_MISSING_UICONNECT := -1064165376, (* Missing value on UIConnect [Error: 8192, 0xc0922000] *)
|
||||
mpFILE_ERR_CMD_NOT_ALLOWED := -1064165375, (* Command {2:Command} not allowed [Error: 8193, 0xc0922001] *)
|
||||
mpFILE_ERR_NOTHING_TO_PASTE := -1064165374, (* No element to paste [Error: 8194, 0xc0922002] *)
|
||||
mpFILE_ERR_NOTHING_SELECTED := -1064165373, (* Nothing selected [Error: 8195, 0xc0922003] *)
|
||||
mpFILE_ERR_DIR_ALREADY_EXISTS := -1064165372, (* Folder {2:PathName} already exists in {3:DeviceName} [Error: 8196, 0xc0922004] *)
|
||||
mpFILE_ERR_INVALID_FILE_DEV := -1064165371, (* Invalid file device {2:DeviceName} [Error: 8197, 0xc0922005] *)
|
||||
mpFILE_ERR_NAME_EMPTY := -1064165370, (* New name not entered [Error: 8198, 0xc0922006] *)
|
||||
mpFILE_ERR_INVALID_NAME := -1064165369, (* Invaild name (ErrorCause: {1:ErrorNumber}) [Error: 8199, 0xc0922007] *)
|
||||
mpFILE_ERR_PASTE_NOT_ALLOWED := -1064165368, (* Paste not allowed (ErrorCause: {1:ErrorNumber}) [Error: 8200, 0xc0922008] *)
|
||||
mpFILE_ERR_FILE_SYSTEM := -1064165367 (* General error from file system (ErrorCause: {1:ErrorNumber}) [Error: 8201, 0xc0922009] *)
|
||||
);
|
||||
END_TYPE
|
||||
BIN
Logical/Libraries/MpFile/SG4/ARM/MpFile.br
Normal file
BIN
Logical/Libraries/MpFile/SG4/ARM/MpFile.br
Normal file
Binary file not shown.
BIN
Logical/Libraries/MpFile/SG4/ARM/libMpFile.a
Normal file
BIN
Logical/Libraries/MpFile/SG4/ARM/libMpFile.a
Normal file
Binary file not shown.
BIN
Logical/Libraries/MpFile/SG4/IA32/MpFile.br
Normal file
BIN
Logical/Libraries/MpFile/SG4/IA32/MpFile.br
Normal file
Binary file not shown.
BIN
Logical/Libraries/MpFile/SG4/IA32/libMpFile.a
Normal file
BIN
Logical/Libraries/MpFile/SG4/IA32/libMpFile.a
Normal file
Binary file not shown.
258
Logical/Libraries/MpFile/SG4/MpFile.h
Normal file
258
Logical/Libraries/MpFile/SG4/MpFile.h
Normal file
@@ -0,0 +1,258 @@
|
||||
/* Automation Studio generated header file */
|
||||
/* Do not edit ! */
|
||||
/* MpFile 5.01.0 */
|
||||
|
||||
#ifndef _MPFILE_
|
||||
#define _MPFILE_
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
#ifndef _MpFile_VERSION
|
||||
#define _MpFile_VERSION 5.01.0
|
||||
#endif
|
||||
|
||||
#include <bur/plctypes.h>
|
||||
|
||||
#ifndef _BUR_PUBLIC
|
||||
#define _BUR_PUBLIC
|
||||
#endif
|
||||
#ifdef _SG4
|
||||
#include "MpBase.h"
|
||||
#include "FileIO.h"
|
||||
#endif
|
||||
|
||||
#ifdef _SG3
|
||||
#include "MpBase.h"
|
||||
#include "FileIO.h"
|
||||
#endif
|
||||
|
||||
#ifdef _SGC
|
||||
#include "MpBase.h"
|
||||
#include "FileIO.h"
|
||||
#endif
|
||||
|
||||
/* Datatypes and datatypes of function blocks */
|
||||
typedef enum MpFileManagerUIItemTypeEnum
|
||||
{ mpFILE_ITEM_TYPE_NONE = 0,
|
||||
mpFILE_ITEM_TYPE_FOLDER = 1,
|
||||
mpFILE_ITEM_TYPE_FILE = 2,
|
||||
mpFILE_ITEM_TYPE_TXT = 3,
|
||||
mpFILE_ITEM_TYPE_HTML = 4,
|
||||
mpFILE_ITEM_TYPE_DOC = 5,
|
||||
mpFILE_ITEM_TYPE_XLS = 6,
|
||||
mpFILE_ITEM_TYPE_XML = 7,
|
||||
mpFILE_ITEM_TYPE_CSV = 8,
|
||||
mpFILE_ITEM_TYPE_JPG = 9,
|
||||
mpFILE_ITEM_TYPE_BMP = 10,
|
||||
mpFILE_ITEM_TYPE_USER1 = 89,
|
||||
mpFILE_ITEM_TYPE_USER2 = 90,
|
||||
mpFILE_ITEM_TYPE_USER3 = 91,
|
||||
mpFILE_ITEM_TYPE_USER4 = 92,
|
||||
mpFILE_ITEM_TYPE_USER5 = 93,
|
||||
mpFILE_ITEM_TYPE_USER6 = 94,
|
||||
mpFILE_ITEM_TYPE_USER7 = 95,
|
||||
mpFILE_ITEM_TYPE_USER8 = 96,
|
||||
mpFILE_ITEM_TYPE_USER9 = 97,
|
||||
mpFILE_ITEM_TYPE_USER10 = 98,
|
||||
mpFILE_ITEM_TYPE_UNKNOWN = 99
|
||||
} MpFileManagerUIItemTypeEnum;
|
||||
|
||||
typedef enum MpFileManagerUISortOrderEnum
|
||||
{ mpFILE_SORT_BY_NAME_ASC = 0,
|
||||
mpFILE_SORT_BY_NAME_DESC = 1,
|
||||
mpFILE_SORT_BY_SIZE_ASC = 2,
|
||||
mpFILE_SORT_BY_SIZE_DES = 3,
|
||||
mpFILE_SORT_BY_MOD_TIME_ASC = 4,
|
||||
mpFILE_SORT_BY_MOD_TIME_DESC = 5
|
||||
} MpFileManagerUISortOrderEnum;
|
||||
|
||||
typedef enum MpFileManagerUIMessageEnum
|
||||
{ mpFILE_MSG_OK = 0,
|
||||
mpFILE_MSG_CONFIRM_DELETE = 1,
|
||||
mpFILE_MSG_CONFIRM_OVERWRITE = 2,
|
||||
mpFILE_MSG_BUSY = 3
|
||||
} MpFileManagerUIMessageEnum;
|
||||
|
||||
typedef enum MpFileManagerUIStatusEnum
|
||||
{ mpFILE_UI_STATUS_IDLE = 0,
|
||||
mpFILE_UI_STATUS_REFRESH = 1,
|
||||
mpFILE_UI_STATUS_CHANGE_PAGE = 2,
|
||||
mpFILE_UI_STATUS_CHANGE_DIR = 3,
|
||||
mpFILE_UI_STATUS_CHANGE_DEVICE = 4,
|
||||
mpFILE_UI_STATUS_CREATE = 5,
|
||||
mpFILE_UI_STATUS_RENAME = 6,
|
||||
mpFILE_UI_STATUS_DELETE = 7,
|
||||
mpFILE_UI_STATUS_COPY = 8,
|
||||
mpFILE_UI_STATUS_CUT = 9,
|
||||
mpFILE_UI_STATUS_PASTE = 10,
|
||||
mpFILE_UI_STATUS_SORT = 11,
|
||||
mpFILE_UI_STATUS_ERROR = 99
|
||||
} MpFileManagerUIStatusEnum;
|
||||
|
||||
typedef enum MpFileErrorEnum
|
||||
{ mpFILE_NO_ERROR = 0,
|
||||
mpFILE_ERR_ACTIVATION = -1064239103,
|
||||
mpFILE_ERR_MPLINK_NULL = -1064239102,
|
||||
mpFILE_ERR_MPLINK_INVALID = -1064239101,
|
||||
mpFILE_ERR_MPLINK_CHANGED = -1064239100,
|
||||
mpFILE_ERR_MPLINK_CORRUPT = -1064239099,
|
||||
mpFILE_ERR_MPLINK_IN_USE = -1064239098,
|
||||
mpFILE_ERR_MISSING_UICONNECT = -1064165376,
|
||||
mpFILE_ERR_CMD_NOT_ALLOWED = -1064165375,
|
||||
mpFILE_ERR_NOTHING_TO_PASTE = -1064165374,
|
||||
mpFILE_ERR_NOTHING_SELECTED = -1064165373,
|
||||
mpFILE_ERR_DIR_ALREADY_EXISTS = -1064165372,
|
||||
mpFILE_ERR_INVALID_FILE_DEV = -1064165371,
|
||||
mpFILE_ERR_NAME_EMPTY = -1064165370,
|
||||
mpFILE_ERR_INVALID_NAME = -1064165369,
|
||||
mpFILE_ERR_PASTE_NOT_ALLOWED = -1064165368,
|
||||
mpFILE_ERR_FILE_SYSTEM = -1064165367
|
||||
} MpFileErrorEnum;
|
||||
|
||||
typedef enum MpFileUIAlarmEnum
|
||||
{ mpFILE_ALM_DEVICE_NOT_FOUND = 0,
|
||||
mpFILE_ALM_ALREADY_EXISTING = 1,
|
||||
mpFILE_ALM_ERROR_FILE_SYSTEM = 2
|
||||
} MpFileUIAlarmEnum;
|
||||
|
||||
typedef struct MpFileManagerUIItemType
|
||||
{ plcstring Name[256];
|
||||
unsigned long Size;
|
||||
plcdt LastModified;
|
||||
enum MpFileManagerUIItemTypeEnum ItemType;
|
||||
plcbit IsSelected;
|
||||
plcbit IsFolder;
|
||||
} MpFileManagerUIItemType;
|
||||
|
||||
typedef struct MpFileStatusIDType
|
||||
{ enum MpFileErrorEnum ID;
|
||||
MpComSeveritiesEnum Severity;
|
||||
unsigned short Code;
|
||||
} MpFileStatusIDType;
|
||||
|
||||
typedef struct MpFileDiagType
|
||||
{ struct MpFileStatusIDType StatusID;
|
||||
} MpFileDiagType;
|
||||
|
||||
typedef struct MpFileInfoType
|
||||
{ struct MpFileDiagType Diag;
|
||||
} MpFileInfoType;
|
||||
|
||||
typedef struct MpFileManagerUISetupType
|
||||
{ unsigned short FileListSize;
|
||||
unsigned char FileListScrollWindow;
|
||||
} MpFileManagerUISetupType;
|
||||
|
||||
typedef struct MpFileManagerUIDeviceListType
|
||||
{ plcstring DeviceNames[10][51];
|
||||
unsigned short SelectedIndex;
|
||||
} MpFileManagerUIDeviceListType;
|
||||
|
||||
typedef struct MpFileManagerUIFileListType
|
||||
{ struct MpFileManagerUIItemType Items[50];
|
||||
plcbit PageUp;
|
||||
plcbit StepUp;
|
||||
plcbit PageDown;
|
||||
plcbit StepDown;
|
||||
float RangeStart;
|
||||
float RangeEnd;
|
||||
} MpFileManagerUIFileListType;
|
||||
|
||||
typedef struct MpFileManagerUIPathInfoType
|
||||
{ plcstring CurrentDir[256];
|
||||
unsigned long FileCount;
|
||||
unsigned long FolderCount;
|
||||
} MpFileManagerUIPathInfoType;
|
||||
|
||||
typedef struct MpFileManagerUIFileType
|
||||
{ struct MpFileManagerUIFileListType List;
|
||||
plcstring Filter[256];
|
||||
enum MpFileManagerUISortOrderEnum SortOrder;
|
||||
plcbit Refresh;
|
||||
struct MpFileManagerUIPathInfoType PathInfo;
|
||||
plcbit EnterFolder;
|
||||
plcbit FolderUp;
|
||||
plcbit MultiSelect;
|
||||
plcbit Delete;
|
||||
plcbit Copy;
|
||||
plcbit Cut;
|
||||
plcbit Paste;
|
||||
plcstring NewName[256];
|
||||
plcbit Rename;
|
||||
plcbit CreateFolder;
|
||||
} MpFileManagerUIFileType;
|
||||
|
||||
typedef struct MpFileManagerUIMessageBoxType
|
||||
{ unsigned short LayerStatus;
|
||||
enum MpFileManagerUIMessageEnum Type;
|
||||
unsigned short ErrorNumber;
|
||||
plcbit Confirm;
|
||||
plcbit Cancel;
|
||||
} MpFileManagerUIMessageBoxType;
|
||||
|
||||
typedef struct MpFileManagerUIConnectType
|
||||
{ enum MpFileManagerUIStatusEnum Status;
|
||||
struct MpFileManagerUIDeviceListType DeviceList;
|
||||
struct MpFileManagerUIFileType File;
|
||||
struct MpFileManagerUIMessageBoxType MessageBox;
|
||||
unsigned short DefaultLayerStatus;
|
||||
} MpFileManagerUIConnectType;
|
||||
|
||||
typedef struct MpFileManagerConfigType
|
||||
{ plcstring CustomizedFileType[10][6];
|
||||
} MpFileManagerConfigType;
|
||||
|
||||
typedef struct MpFileManagerUI
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
struct MpComIdentType* MpLink;
|
||||
struct MpFileManagerUISetupType UISetup;
|
||||
struct MpFileManagerUIConnectType* UIConnect;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
signed long StatusID;
|
||||
struct MpFileInfoType Info;
|
||||
/* VAR (analog) */
|
||||
struct MpComInternalDataType Internal;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit Enable;
|
||||
plcbit ErrorReset;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Active;
|
||||
plcbit Error;
|
||||
} MpFileManagerUI_typ;
|
||||
|
||||
typedef struct MpFileManagerConfig
|
||||
{
|
||||
/* VAR_INPUT (analog) */
|
||||
struct MpComIdentType* MpLink;
|
||||
struct MpFileManagerConfigType* Configuration;
|
||||
/* VAR_OUTPUT (analog) */
|
||||
signed long StatusID;
|
||||
struct MpFileInfoType Info;
|
||||
/* VAR (analog) */
|
||||
struct MpComInternalDataType Internal;
|
||||
/* VAR_INPUT (digital) */
|
||||
plcbit Enable;
|
||||
plcbit ErrorReset;
|
||||
plcbit Load;
|
||||
plcbit Save;
|
||||
/* VAR_OUTPUT (digital) */
|
||||
plcbit Active;
|
||||
plcbit Error;
|
||||
plcbit CommandBusy;
|
||||
plcbit CommandDone;
|
||||
} MpFileManagerConfig_typ;
|
||||
|
||||
|
||||
|
||||
/* Prototyping of functions and function blocks */
|
||||
_BUR_PUBLIC void MpFileManagerUI(struct MpFileManagerUI* inst);
|
||||
_BUR_PUBLIC void MpFileManagerConfig(struct MpFileManagerConfig* inst);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
#endif /* _MPFILE_ */
|
||||
|
||||
@@ -1,35 +1,37 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.5.113 SP?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Package xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC 61131-3 operator functions. For the most part, these are mathematical and logical functions.">operator</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains runtime functions for IEC tasks.">runtime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsTime Library supports DATE_AND_TIME and TIME data types.">astime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC 61131-3 conversion functions.">AsIecCon</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsSafety library provides function blocks for the safety system.">AsSafety</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The FileIO library provides function blocks for file handling.">FileIO</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains standard function blocks and functions for IEC 61131-3.">standard</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsARCfg library supports reading and writing Automation Runtime configurations.">AsARCfg</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library provides read and write access to non-cyclic I/O data points.">AsIOAcc</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The SYS_LIB library contains functions for memory management and operating system manipulation as well as hardware-specific functions.">sys_lib</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains functionality to execute traces (to sample numeric values periodically for a defined time-span)">CoTrace</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The DataObj library can be used to dynamically create, dynamically delete and copy data objects, etc. ">DataObj</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The FileIO library provides function blocks for file handling.">FileIO</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC 61131-3 operator functions. For the most part, these are mathematical and logical functions.">operator</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The DVFrame library and the frame driver can be used to exchange data with external devices.">dvframe</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains standard function blocks and functions for IEC 61131-3.">standard</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The SYS_LIB library contains functions for memory management and operating system manipulation as well as hardware-specific functions.">sys_lib</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains runtime functions for IEC tasks.">runtime</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The Visapi library provides support to access and control visualizations at runtime.">visapi</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The VcLib provides supplemental functions to the Visapi library. ">vclib</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsArSdm library supports the System Diagnostics Manager">AsArSdm</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsBrStr Library contains FBKs for memory and character string handling.">AsBrStr</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsBrWStr library allows 8-bit character strings to be implemented for 16-bit WC (AsBrWStr) strings.">AsBrWStr</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsArSdm library supports the System Diagnostics Manager">AsArSdm</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The VcLib provides supplemental functions to the Visapi library. ">vclib</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsMem library makes it possible to manage memory blocks located in large memory areas (memory partitions).">AsMem</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This mechatronics library contains different system datatypes and general error numbers.">MTTypes</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function blocks to handle USB devices on the target.">AsUSB</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The DVFrame library and the frame driver can be used to exchange data with external devices.">dvframe</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This mechatronics library contains basic control function blocks.">MTBasics</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsMem library makes it possible to manage memory blocks located in large memory areas (memory partitions).">AsMem</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains function interfaces for IEC 61131-3 conversion functions.">AsIecCon</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsSafety library provides function blocks for the safety system.">AsSafety</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsARCfg library supports reading and writing Automation Runtime configurations.">AsARCfg</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains FBKs for exchanging data (data stream) via stream sockets (TCP).">AsTCP</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library provides read and write access to non-cyclic I/O data points.">AsIOAcc</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The AsZip library offers compressing archive-support">AsZip</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This mechatronics library contains different system datatypes and general error numbers.">MTTypes</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This mechatronics library contains basic control function blocks.">MTBasics</Object>
|
||||
<Object Type="Library" Language="Binary" Description="Web access">MpWebXs</Object>
|
||||
<Object Type="Library" Language="Binary" Description="Core library for mapp components">MpBase</Object>
|
||||
<Object Type="Library" Language="Binary" Description="Centralized event audit trail">MpAudit</Object>
|
||||
<Object Type="Library" Language="Binary" Description="User management based on user role system">MpUserX</Object>
|
||||
<Object Type="Library" Language="Binary" Description="Advanced alarm management">MpAlarmX</Object>
|
||||
<Object Type="Library" Language="Binary" Description="mapp components diagnosis,hierarchy and unit handling">MpCom</Object>
|
||||
<Object Type="Library" Language="Binary" Description="The Visapi library provides support to access and control visualizations at runtime.">visapi</Object>
|
||||
<Object Type="Library" Language="Binary" Description="[mapp Motion] Robotics library">MpRobotics</Object>
|
||||
<Object Type="Library" Language="Binary" Description="[mapp Motion] CNC machines library">MpCnc</Object>
|
||||
<Object Type="Library" Language="Binary" Description="[mapp Motion] Axis library">MpAxis</Object>
|
||||
@@ -39,7 +41,6 @@
|
||||
<Object Type="Library" Language="Binary" Description="[mapp Motion] PLCopen axis library">McAxis</Object>
|
||||
<Object Type="Library" Language="Binary" Description="[mapp Motion] ACOPOS axis library">McAcpAx</Object>
|
||||
<Object Type="Library" Language="Binary" Description="[mapp Motion] Base library">McBase</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains functionality to execute traces (to sample numeric values periodically for a defined time-span)">CoTrace</Object>
|
||||
<Object Type="Library" Language="Binary" Description="This library contains FBKs for exchanging data (data stream) via stream sockets (TCP).">AsTCP</Object>
|
||||
<Object Type="Library" Language="Binary" Description="File explorer for B+R file devices">MpFile</Object>
|
||||
</Objects>
|
||||
</Package>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The AsTime Library supports DATE_AND_TIME and TIME data types.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The AsTime Library supports DATE_AND_TIME and TIME data types." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>astime.fun</File>
|
||||
<File>astime.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The DVFrame library and the frame driver can be used to exchange data with external devices.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The DVFrame library and the frame driver can be used to exchange data with external devices." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>dvframe.fun</File>
|
||||
<File>dvframe.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,9 +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="This library contains standard function blocks and functions for IEC 61131-3.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="This library contains standard function blocks and functions for IEC 61131-3." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>standard.fun</File>
|
||||
<File>standard.typ</File>
|
||||
<File>standard.var</File>
|
||||
</Files>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=3.0.0.0?>
|
||||
<Library xmlns="http://br-automation.co.at/AS/Library" Description="The SYS_LIB library contains functions for memory management and operating system manipulation as well as hardware-specific functions.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The SYS_LIB library contains functions for memory management and operating system manipulation as well as hardware-specific functions." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>sys_lib.fun</File>
|
||||
<File>sys_lib.typ</File>
|
||||
@@ -9,4 +9,4 @@
|
||||
<Dependencies>
|
||||
<Dependency ObjectName="runtime" />
|
||||
</Dependencies>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,10 +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 VcLib provides supplemental functions to the Visapi library. ">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The VcLib provides supplemental functions to the Visapi library. " xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>VCLIB.typ</File>
|
||||
<File>VCLIB.fun</File>
|
||||
<File>VCLIB.var</File>
|
||||
</Files>
|
||||
<Dependencies/>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,10 +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 Visapi library provides support to access and control visualizations at runtime.">
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Library Description="The Visapi library provides support to access and control visualizations at runtime." xmlns="http://br-automation.co.at/AS/Library">
|
||||
<Files>
|
||||
<File>Visapi.typ</File>
|
||||
<File>Visapi.fun</File>
|
||||
<File>Visapi.var</File>
|
||||
</Files>
|
||||
<Dependencies/>
|
||||
</Library>
|
||||
</Library>
|
||||
@@ -1,15 +1,15 @@
|
||||
ACTION DoInitAxLimits:
|
||||
//Grenzwerte Achsbewegungen
|
||||
Parameter.LimitAxis_X.lrLowerLimit := 1.0;
|
||||
Parameter.LimitAxis_X.lrUpperLimit := 479.0;
|
||||
Parameter.LimitAxis_X.lrUpperLimit := 243.0;
|
||||
Parameter.LimitAxis_Y.lrLowerLimit := 1.0;
|
||||
Parameter.LimitAxis_Y.lrUpperLimit := 899.0;
|
||||
Parameter.LimitAxis_Y.lrUpperLimit := 694.0;
|
||||
Parameter.LimitAxis_Z.lrLowerLimit := 1.0;
|
||||
Parameter.LimitAxis_Z.lrUpperLimit := 234.0;
|
||||
Parameter.LimitAxis_A.lrLowerLimit := -45.0;
|
||||
Parameter.LimitAxis_A.lrUpperLimit := 45.0;
|
||||
Parameter.LimitAxis_B.lrLowerLimit := -40.0;
|
||||
Parameter.LimitAxis_B.lrUpperLimit := 50.0;
|
||||
Parameter.LimitAxis_Z.lrUpperLimit := 233.9;
|
||||
Parameter.LimitAxis_A.lrLowerLimit := -20.0;
|
||||
Parameter.LimitAxis_A.lrUpperLimit := 20.0;
|
||||
Parameter.LimitAxis_B.lrLowerLimit := 0.0;
|
||||
Parameter.LimitAxis_B.lrUpperLimit := 0.0;
|
||||
Parameter.LimitAxis_Shuttle.lrLowerLimit := 1.0;
|
||||
Parameter.LimitAxis_Shuttle.lrUpperLimit := 235.0;
|
||||
END_ACTION
|
||||
@@ -101,7 +101,7 @@ ACTION DoCalibrateParameterA:
|
||||
MpFUB.InitHome_A.HomingParameters.Acceleration := 1000; // [<EFBFBD>/s2];
|
||||
MpFUB.InitHome_A.HomingParameters.StartVelocity := 10; // [<EFBFBD>/s]
|
||||
MpFUB.InitHome_A.HomingParameters.HomingVelocity := 10; // [<EFBFBD>/s]
|
||||
MpFUB.InitHome_A.HomingParameters.Position := 45; // [<EFBFBD>]
|
||||
MpFUB.InitHome_A.HomingParameters.Position := 20; // [<EFBFBD>]
|
||||
MpFUB.InitHome_A.HomingParameters.BlockDetectionPositionError := 0.05; // [mm]
|
||||
MpFUB.InitHome_A.HomingParameters.PositionErrorStopLimit := 0.5; // [mm]
|
||||
END_ACTION
|
||||
@@ -384,12 +384,55 @@ END_ACTION
|
||||
|
||||
ACTION DoAlarms:
|
||||
//Alarme erzeugen bzw. r<EFBFBD>cksetzen
|
||||
//Kartusche nicht angetastet
|
||||
//Prozessdaten fehlen (Scan)
|
||||
IF (AlarmIDs.udPartInfoMissing > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udPartInfoMissing);
|
||||
AlarmIDs.udPartInfoMissing := 0;
|
||||
IF (lMachine.enMode = enMACH_AUTOMATIC) AND NOT Parameter.bTestRun THEN
|
||||
IF NOT gbInWaterLvlMin AND (AlarmIDs.udWaterLvlMin = 0) THEN
|
||||
AlarmIDs.udWaterLvlMin := MpAlarmXSet (gMpAlarmXCore, 'WaterLvlMin');
|
||||
END_IF
|
||||
IF NOT gbInWaterPrePress3Bar AND (AlarmIDs.udWaterPrePress3Bar = 0) THEN
|
||||
AlarmIDs.udWaterPrePress3Bar := MpAlarmXSet (gMpAlarmXCore, 'WaterPrePress3Bar');
|
||||
END_IF
|
||||
IF NOT gbInWaterPressMin AND (AlarmIDs.udWaterPressMin = 0) THEN
|
||||
AlarmIDs.udWaterPressMin := MpAlarmXSet (gMpAlarmXCore, 'WaterPressMin');
|
||||
END_IF
|
||||
END_IF
|
||||
//Kleberdaten fehlen
|
||||
IF (gbInWaterLvlMin OR Parameter.bTestRun) AND (AlarmIDs.udWaterLvlMin > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udWaterLvlMin);
|
||||
AlarmIDs.udWaterLvlMin := 0;
|
||||
END_IF
|
||||
IF (gbInWaterPrePress3Bar OR Parameter.bTestRun) AND (AlarmIDs.udWaterPrePress3Bar > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udWaterPrePress3Bar);
|
||||
AlarmIDs.udWaterPrePress3Bar := 0;
|
||||
END_IF
|
||||
IF (gbInWaterPressMin OR Parameter.bTestRun) AND (AlarmIDs.udWaterPressMin > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udWaterPressMin);
|
||||
AlarmIDs.udWaterPressMin := 0;
|
||||
END_IF
|
||||
|
||||
//Zylinder<EFBFBD>berwachung Einlegetor
|
||||
FUBs.Cyl_Frontdoor.bInOutputCylinderBw := NOT gbSOuCloseFrontgate;
|
||||
FUBs.Cyl_Frontdoor.bInOutputCylinderFw := gbSOuCloseFrontgate;
|
||||
FUBs.Cyl_Frontdoor.bInSensorCylinderBw := gbInFrontGateOpen;
|
||||
FUBs.Cyl_Frontdoor.bInSensorCylinderFw := gbSInFrontGateOk;
|
||||
FUBs.Cyl_Frontdoor.tInCylinderBw := t#5s;
|
||||
FUBs.Cyl_Frontdoor.tInCylinderFw := t#5s;
|
||||
FUBs.Cyl_Frontdoor ();
|
||||
|
||||
IF FUBs.Cyl_Frontdoor.bOuErrorCylinderBw THEN
|
||||
IF (AlarmIDs.udFrontGateNotOpen = 0) THEN
|
||||
AlarmIDs.udFrontGateNotOpen := MpAlarmXSet (gMpAlarmXCore, 'FrontGateNotOpen');
|
||||
END_IF
|
||||
ELSIF NOT FUBs.Cyl_Frontdoor.bOuErrorCylinderBw AND (AlarmIDs.udFrontGateNotOpen > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udFrontGateNotOpen);
|
||||
AlarmIDs.udFrontGateNotOpen := 0;
|
||||
END_IF
|
||||
|
||||
IF FUBs.Cyl_Frontdoor.bOuErrorCylinderFw THEN
|
||||
IF (AlarmIDs.udFrontGateNotClosed = 0) THEN
|
||||
AlarmIDs.udFrontGateNotClosed := MpAlarmXSet (gMpAlarmXCore, 'FrontGateNotClosed');
|
||||
END_IF
|
||||
ELSIF NOT FUBs.Cyl_Frontdoor.bOuErrorCylinderFw AND (AlarmIDs.udFrontGateNotClosed > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udFrontGateNotClosed);
|
||||
AlarmIDs.udFrontGateNotClosed := 0;
|
||||
END_IF
|
||||
|
||||
END_ACTION
|
||||
|
||||
@@ -14,11 +14,13 @@ PROGRAM _CYCLIC
|
||||
MpFUB.ProcessParID_AcpAx_Shuttle.Execute := TRUE;
|
||||
strOperator := 'Bemusterung';
|
||||
strMachinename := 'Wasserstrahl';
|
||||
pParamPositions.lrHomePosX := 5.0;
|
||||
pParamPositions.lrHomePosY := 5.0;
|
||||
pParamPositions.lrHomePosZ := 5.0;
|
||||
pParamPositions.lrHomePosX := 240.0; //wg Shuttle
|
||||
pParamPositions.lrHomePosY := 50.0; //Damit frei gedreht werden kann
|
||||
pParamPositions.lrHomePosZ := 10.0;
|
||||
pParamPositions.lrHomePosA := 0.0; //<EFBFBD>
|
||||
pParamPositions.lrHomePosB := 0.0; //<EFBFBD>
|
||||
pParamPositions.lrHomePosShuttle := 234.0;
|
||||
pParamPositions.lrWorkPosShuttle := 5.0;
|
||||
END_IF
|
||||
|
||||
|
||||
@@ -43,7 +45,7 @@ PROGRAM _CYCLIC
|
||||
|
||||
//Sicherheitszonen - Stati
|
||||
States.bSafetyOk := gbSPLCInEstopOk;
|
||||
States.bSafetyDoorsOk := gbSPLCInDoorsOk;
|
||||
States.bSafetyDoorsOk := gbSPLCInDoorsBackOk AND gbSPLCInDoorsFrontOk;
|
||||
States.bSafetyInfeedOk := gbSPLCInAxisEnabledOk;
|
||||
FUBs.TON_SafetyInfeedOk.IN := States.bSafetyInfeedOk;
|
||||
FUBs.TON_SafetyInfeedOk.PT := t#900ms;
|
||||
@@ -57,15 +59,15 @@ PROGRAM _CYCLIC
|
||||
States.PosState.bHomeX := MpFUB.AxBasic_X.IsHomed AND FC_InTolerance (MpFUB.AxBasic_X.Position, pParamPositions.lrHomePosX, -0.1, 0.1);
|
||||
States.PosState.bHomeY := MpFUB.AxBasic_Y.IsHomed AND FC_InTolerance (MpFUB.AxBasic_Y.Position, pParamPositions.lrHomePosY, -0.1, 0.1);
|
||||
States.PosState.bHomeZ := MpFUB.AxBasic_Z.IsHomed AND FC_InTolerance (MpFUB.AxBasic_Z.Position, pParamPositions.lrHomePosZ, -0.1, 0.1);
|
||||
States.PosState.bHomeA := MpFUB.AxBasic_A.IsHomed AND FC_InTolerance (MpFUB.AxBasic_A.Position, pParamPositions.lrHomePosA, -0.1, 0.1);
|
||||
States.PosState.bHomeB := MpFUB.AxBasic_B.IsHomed AND FC_InTolerance (MpFUB.AxBasic_B.Position, pParamPositions.lrHomePosB, -0.1, 0.1);
|
||||
States.PosState.bHomeA := MpFUB.AxBasic_A.IsHomed AND FC_InTolerance (MpFUB.AxBasic_A.Position, pParamPositions.lrHomePosA, -0.1, 0.1);
|
||||
States.PosState.bHomeB := MpFUB.AxBasic_B.IsHomed AND (FC_InTolerance (MpFUB.AxBasic_B.Position, pParamPositions.lrHomePosB, -0.1, 0.1)
|
||||
OR FC_InTolerance (MpFUB.AxBasic_B.Position, 360.0 , -0.1, 0.1));
|
||||
States.PosState.bHomeShuttle := MpFUB.AxBasic_Shuttle.IsHomed AND FC_InTolerance (MpFUB.AxBasic_Shuttle.Position, pParamPositions.lrHomePosShuttle, -0.1, 0.1);
|
||||
States.PosState.bWorkposShuttle := MpFUB.AxBasic_Shuttle.IsHomed AND FC_InTolerance (MpFUB.AxBasic_Shuttle.Position, pParamPositions.lrWorkPosShuttle, -0.1, 0.1);
|
||||
|
||||
//Ist Positionen Zylinder
|
||||
States.CylinderPosState.bPressPosUp := Valves.bPressUp AND NOT Valves.bPressDown;
|
||||
|
||||
//Mapp Bausteine Versorgen
|
||||
States.CylinderPosState.bFrontGateOpen := NOT Valves.bCloseGate AND gbInFrontGateOpen;
|
||||
States.CylinderPosState.bFrontGateClosed := Valves.bCloseGate AND gbSInFrontGateOk;
|
||||
|
||||
//Zeiten
|
||||
Times.diSteptime := gdiSystemTime - TimesLatch.diSteptime;
|
||||
@@ -85,8 +87,9 @@ PROGRAM _CYCLIC
|
||||
|
||||
|
||||
//Grundstellungen
|
||||
lMachine.bMachineHOME := States.PosState.bHomeX AND States.PosState.bHomeY AND States.PosState.bHomeZ
|
||||
AND States.CylinderPosState.bPressPosUp;
|
||||
lMachine.bMachineHOME := States.PosState.bHomeX AND States.PosState.bHomeY AND States.PosState.bHomeZ AND
|
||||
States.PosState.bHomeA AND States.PosState.bHomeB AND States.PosState.bHomeShuttle AND
|
||||
States.CylinderPosState.bFrontGateOpen;
|
||||
IF lMachine.bMachineHOME THEN
|
||||
lMachine.bRequestHoming := FALSE;
|
||||
END_IF
|
||||
@@ -207,13 +210,18 @@ PROGRAM _CYCLIC
|
||||
//Bewegungsbedingungen
|
||||
//==========================================================
|
||||
//Zustellbewegung
|
||||
MoveConditions.bAxisXMove := TRUE;// AND States.CylinderPosState.bPressPosUp; //FixMe Z-Pos
|
||||
MoveConditions.bAxisYMove := TRUE; //FixMe Z-Pos
|
||||
MoveConditions.bAxisZMove := TRUE;
|
||||
MoveConditions.bAxisXMovePos := (MpFUB.AxBasic_Z.Position < 160.0);
|
||||
MoveConditions.bAxisXMoveNeg := ((MpFUB.AxBasic_Shuttle.Position + 10) < MpFUB.AxBasic_X.Position) AND (MpFUB.AxBasic_Z.Position < 160.0);
|
||||
MoveConditions.bAxisYMove := MpFUB.AxBasic_Z.Position < 160.0;
|
||||
MoveConditions.bAxisZMoveNeg := TRUE;
|
||||
MoveConditions.bAxisZMovePos := TRUE; //((MpFUB.AxBasic_Shuttle.Position - MpFUB.AxBasic_X.Position) > 125);
|
||||
MoveConditions.bAxisAMove := TRUE;
|
||||
MoveConditions.bAxisBMove := TRUE;
|
||||
MoveConditions.bAxisShuttleMove := TRUE;
|
||||
|
||||
MoveConditions.bAxisShuttleMoveNeg := MpFUB.AxBasic_Z.Position < 160.0;
|
||||
MoveConditions.bAxisShuttleMovePos := ((MpFUB.AxBasic_Shuttle.Position + 5) < MpFUB.AxBasic_X.Position) AND
|
||||
(MpFUB.AxBasic_Z.Position < 160.0);
|
||||
MoveConditions.bCloseFrontGate := gbSInBumperGateOk AND NOT gbSPLCInErrorBumper;
|
||||
|
||||
|
||||
|
||||
//Letzten Zyklus anfordern (deaktiviert)
|
||||
@@ -256,7 +264,7 @@ PROGRAM _CYCLIC
|
||||
//Stati
|
||||
//Einzelachsmodus / Einrichtbetrieb
|
||||
States.bSingleAxMode := ((gVisuCtrl.enCurrentPage = P10_MAIN) AND (gVisuCtrl.MainPage.usSetLayer = LAYER_MAINPAGE_SETUPMODE)
|
||||
AND lMachine.bSetupMode AND (lMachine.enMode = enMACH_JOG));
|
||||
AND (lMachine.enMode = enMACH_JOG));
|
||||
|
||||
|
||||
|
||||
@@ -278,6 +286,10 @@ PROGRAM _CYCLIC
|
||||
MpData.AxPar_Y.Jog.LimitPosition.LastPosition := Parameter.LimitAxis_Y.lrUpperLimit;
|
||||
MpData.AxPar_Z.Jog.LimitPosition.FirstPosition := Parameter.LimitAxis_Z.lrLowerLimit;
|
||||
MpData.AxPar_Z.Jog.LimitPosition.LastPosition := Parameter.LimitAxis_Z.lrUpperLimit;
|
||||
MpData.AxPar_A.Jog.LimitPosition.FirstPosition := Parameter.LimitAxis_A.lrLowerLimit;
|
||||
MpData.AxPar_A.Jog.LimitPosition.LastPosition := Parameter.LimitAxis_A.lrUpperLimit;
|
||||
MpData.AxPar_Shuttle.Jog.LimitPosition.FirstPosition := Parameter.LimitAxis_Shuttle.lrLowerLimit;
|
||||
MpData.AxPar_Shuttle.Jog.LimitPosition.LastPosition := Parameter.LimitAxis_Shuttle.lrUpperLimit;
|
||||
|
||||
//Geschwindigkeiten
|
||||
MpData.AxPar_X.Jog.Velocity := Parameter.rSpeedJog;
|
||||
@@ -661,6 +673,10 @@ PROGRAM _CYCLIC
|
||||
|
||||
|
||||
//Achsen direct Referenzieren (nur f<EFBFBD>r Einrichten)
|
||||
VCButtons.AxisHomeDirect.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisBHomeDirect.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisShuttleHomeDirect.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
|
||||
IF EDGEPOS (VCButtons.AxisHomeDirect.bCommand) THEN
|
||||
CASE States.enSelectedAxis OF
|
||||
0:
|
||||
@@ -700,6 +716,9 @@ PROGRAM _CYCLIC
|
||||
MpAuditCustomEvent (gMpAuditTrail, "DirectHomed", "Shuttle", "");
|
||||
END_IF
|
||||
|
||||
VCButtons.AxisHome.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisBHome.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisShuttleHome.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
//Achsen Referenzieren mit Parametrierten Daten
|
||||
IF VCButtons.AxisHome.bCommand THEN
|
||||
DoInitAxisparameter;
|
||||
@@ -743,17 +762,18 @@ PROGRAM _CYCLIC
|
||||
IF States.bSingleAxMode THEN
|
||||
bAxisReadyForCommand := MpFUB.AxBasic_X.Active AND MpFUB.AxBasic_X.PowerOn; // AND NOT MpFUB.AxBasic_X.CommandBusy;
|
||||
END_IF
|
||||
VCButtons.AxisJogBw.usStatus.1 := NOT MoveConditions.bAxisXMove OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_X.IsHomed;
|
||||
VCButtons.AxisJogBw.usStatus.1 := NOT MoveConditions.bAxisXMoveNeg OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_X.IsHomed;
|
||||
//OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisJogFw.usStatus.1 := NOT MoveConditions.bAxisXMove OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_X.IsHomed;
|
||||
VCButtons.AxisJogFw.usStatus.1 := NOT MoveConditions.bAxisXMovePos OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_X.IsHomed;
|
||||
//OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisTune.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisTune.usStatus.1 := NOT MoveConditions.bAxisXMove OR (MpFUB.AxBasic_X.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisTune.usStatus.1 := NOT MoveConditions.bAxisXMoveNeg OR NOT MoveConditions.bAxisXMoveNeg OR (MpFUB.AxBasic_X.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisTunePos.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisTunePos.usStatus.1 := NOT MoveConditions.bAxisXMove OR (MpFUB.AxBasic_X.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisTunePos.usStatus.1 := NOT MoveConditions.bAxisXMoveNeg OR NOT MoveConditions.bAxisXMoveNeg OR (MpFUB.AxBasic_X.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisCalibrate.usStatus.0 := NOT States.bSingleAxMode;
|
||||
VCButtons.AxisCalibrate.usStatus.1 := NOT MoveConditions.bAxisXMove OR NOT bAxisReadyForCommand
|
||||
OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisCalibrate.usStatus.1 := NOT MoveConditions.bAxisXMoveNeg OR NOT MoveConditions.bAxisXMoveNeg OR NOT bAxisReadyForCommand
|
||||
OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisBrake.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
IF VCButtons.AxisBrake.bCompletion THEN
|
||||
IF VCButtons.AxisBrake.bCommand THEN
|
||||
MpFUB.BrakeOperation_X.Command := mcBRAKE_OPEN;
|
||||
@@ -778,6 +798,7 @@ PROGRAM _CYCLIC
|
||||
VCButtons.AxisCalibrate.usStatus.0 := NOT States.bSingleAxMode;
|
||||
VCButtons.AxisCalibrate.usStatus.1 := NOT MoveConditions.bAxisYMove OR NOT bAxisReadyForCommand
|
||||
OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisBrake.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
IF VCButtons.AxisBrake.bCompletion THEN
|
||||
States.bExtBrakeY := VCButtons.AxisBrake.bCommand;
|
||||
VCButtons.AxisBrake.bCompletion := FALSE;
|
||||
@@ -788,15 +809,16 @@ PROGRAM _CYCLIC
|
||||
IF States.bSingleAxMode THEN
|
||||
bAxisReadyForCommand := MpFUB.AxBasic_Z.Active AND MpFUB.AxBasic_Z.PowerOn; // AND NOT MpFUB.AxBasic_Z.CommandBusy;
|
||||
END_IF
|
||||
VCButtons.AxisJogBw.usStatus.1 := NOT MoveConditions.bAxisZMove OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Z.IsHomed;
|
||||
VCButtons.AxisJogFw.usStatus.1 := NOT MoveConditions.bAxisZMove OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Z.IsHomed;
|
||||
VCButtons.AxisJogBw.usStatus.1 := NOT MoveConditions.bAxisZMoveNeg OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Z.IsHomed;
|
||||
VCButtons.AxisJogFw.usStatus.1 := NOT MoveConditions.bAxisZMovePos OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Z.IsHomed;
|
||||
VCButtons.AxisTune.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisTune.usStatus.1 := NOT MoveConditions.bAxisZMove OR (MpFUB.AxBasic_Z.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisTune.usStatus.1 := NOT MoveConditions.bAxisZMoveNeg OR NOT MoveConditions.bAxisZMovePos OR (MpFUB.AxBasic_Z.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisTunePos.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisTunePos.usStatus.1 := NOT MoveConditions.bAxisZMove OR (MpFUB.AxBasic_Z.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisTunePos.usStatus.1 := NOT MoveConditions.bAxisZMoveNeg OR NOT MoveConditions.bAxisZMovePos OR (MpFUB.AxBasic_Z.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisCalibrate.usStatus.0 := NOT States.bSingleAxMode;
|
||||
VCButtons.AxisCalibrate.usStatus.1 := NOT MoveConditions.bAxisZMove OR NOT bAxisReadyForCommand
|
||||
VCButtons.AxisCalibrate.usStatus.1 := NOT MoveConditions.bAxisZMoveNeg OR NOT MoveConditions.bAxisZMovePos OR NOT bAxisReadyForCommand
|
||||
OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisBrake.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
3:
|
||||
IF States.bSingleAxMode THEN
|
||||
bAxisReadyForCommand := MpFUB.AxBasic_A.Active AND MpFUB.AxBasic_A.PowerOn; // AND NOT MpFUB.AxBasic_A.CommandBusy;
|
||||
@@ -810,6 +832,7 @@ PROGRAM _CYCLIC
|
||||
VCButtons.AxisCalibrate.usStatus.0 := NOT States.bSingleAxMode;
|
||||
VCButtons.AxisCalibrate.usStatus.1 := NOT MoveConditions.bAxisAMove OR NOT bAxisReadyForCommand
|
||||
OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisBrake.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
IF VCButtons.AxisBrake.bCompletion THEN
|
||||
States.bExtBrakeA := VCButtons.AxisBrake.bCommand;
|
||||
VCButtons.AxisBrake.bCompletion := FALSE;
|
||||
@@ -818,16 +841,17 @@ PROGRAM _CYCLIC
|
||||
END_CASE
|
||||
|
||||
bAxisReadyForCommand := MpFUB.AxBasic_B.Active AND MpFUB.AxBasic_B.PowerOn; // AND NOT MpFUB.AxBasic_A.CommandBusy;
|
||||
VCButtons.AxisBJogBw.usStatus.1 := NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_B.IsHomed
|
||||
OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisBJogFw.usStatus.1 := NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_B.IsHomed
|
||||
OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisBJogBw.usStatus.1 := NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_B.IsHomed;
|
||||
//OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisBJogFw.usStatus.1 := NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_B.IsHomed;
|
||||
//OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisBTune.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisBTune.usStatus.1 := (MpFUB.AxBasic_B.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisBTunePos.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisBTunePos.usStatus.1 := (MpFUB.AxBasic_B.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisBCalibrate.usStatus.0 := NOT States.bSingleAxMode;
|
||||
VCButtons.AxisBCalibrate.usStatus.1 := NOT bAxisReadyForCommand OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisBBrake.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
IF VCButtons.AxisBrake.bCompletion THEN
|
||||
IF VCButtons.AxisBrake.bCommand THEN
|
||||
MpFUB.BrakeOperation_B.Command := mcBRAKE_OPEN;
|
||||
@@ -844,16 +868,17 @@ PROGRAM _CYCLIC
|
||||
|
||||
|
||||
bAxisReadyForCommand := MpFUB.AxBasic_Shuttle.Active AND MpFUB.AxBasic_Shuttle.PowerOn; // AND NOT MpFUB.AxBasic_A.CommandBusy;
|
||||
VCButtons.AxisShuttleJogBw.usStatus.1 := NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Shuttle.IsHomed
|
||||
OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisShuttleJogFw.usStatus.1 := NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Shuttle.IsHomed
|
||||
OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisShuttleJogBw.usStatus.1 := NOT MoveConditions.bAxisShuttleMoveNeg OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Shuttle.IsHomed;
|
||||
//OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisShuttleJogFw.usStatus.1 := NOT MoveConditions.bAxisShuttleMovePos OR NOT bAxisReadyForCommand OR NOT MpFUB.AxBasic_Shuttle.IsHomed;
|
||||
//OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.AxisShuttleTune.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisShuttleTune.usStatus.1 := (MpFUB.AxBasic_Shuttle.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisShuttleTunePos.usStatus.0 := NOT States.bSingleAxTuningMode;
|
||||
VCButtons.AxisShuttleTunePos.usStatus.1 := (MpFUB.AxBasic_Shuttle.Info.PLCopenState <> mcAXIS_DISABLED);
|
||||
VCButtons.AxisShuttleCalibrate.usStatus.0 := NOT States.bSingleAxMode;
|
||||
VCButtons.AxisShuttleCalibrate.usStatus.1 := NOT bAxisReadyForCommand OR (gUserRights.Right6_Setup < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.AxisShuttleBrake.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL);
|
||||
|
||||
IF VCButtons.AxisShuttleBrake.bCompletion THEN
|
||||
States.bExtBrakeShuttle := VCButtons.AxisShuttleBrake.bCommand;
|
||||
@@ -862,25 +887,22 @@ PROGRAM _CYCLIC
|
||||
VCButtons.AxisShuttleBrake.bCommand := States.bExtBrakeShuttle;
|
||||
|
||||
//Ventile
|
||||
VCButtons.OpenGripper.usStatus.0 := States.CylinderPosState.bPressPosUp;
|
||||
VCButtons.OpenGripper.usStatus.1 := NOT States.bSafetyInfeedOkDelayed
|
||||
OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
VCButtons.CloseGripper.usStatus.0 := NOT States.CylinderPosState.bPressPosUp;
|
||||
VCButtons.CloseGripper.usStatus.1 := NOT States.bSafetyInfeedOkDelayed
|
||||
OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL);
|
||||
IF VCButtons.OpenGripper.bCommand THEN
|
||||
Valves.bPressDown := FALSE;
|
||||
Valves.bPressUp := TRUE;
|
||||
ELSIF VCButtons.CloseGripper.bCommand THEN //AND MoveConditions.bPressDown THEN
|
||||
Valves.bPressDown := TRUE;
|
||||
Valves.bPressUp := FALSE;
|
||||
VCButtons.OpenGate.usStatus.0 := States.CylinderPosState.bFrontGateOpen;
|
||||
VCButtons.OpenGate.usStatus.1 := (gUserRights.Right4_Jog < mpUSERX_ACCESS_ACTUATE);
|
||||
VCButtons.CloseGate.usStatus.0 := States.CylinderPosState.bFrontGateClosed;
|
||||
VCButtons.CloseGate.usStatus.1 := (gUserRights.Right4_Jog < mpUSERX_ACCESS_ACTUATE);
|
||||
IF VCButtons.OpenGate.bCommand THEN
|
||||
Valves.bCloseGate := FALSE;
|
||||
ELSIF VCButtons.CloseGate.bCommand THEN
|
||||
Valves.bCloseGate := TRUE;
|
||||
END_IF
|
||||
|
||||
//HD Pumpe
|
||||
Valves.bHPValveOn := VCButtons.HPOn.bCommand;
|
||||
IF NOT gbSPLCInAxisEnabledOk THEN
|
||||
VCButtons.HPOn.usStatus.1 := NOT gbSPLCInDoorsFrontOk OR NOT gbSPLCInDoorsBackOk OR NOT gbSInFrontGateOk;
|
||||
IF NOT gbSPLCInDoorsBackOk OR NOT gbSPLCInDoorsBackOk OR NOT gbSInFrontGateOk THEN
|
||||
VCButtons.HPOn.bCommand := FALSE;
|
||||
END_IF
|
||||
Valves.bHPValveOn := VCButtons.HPOn.bCommand;
|
||||
|
||||
|
||||
|
||||
@@ -891,24 +913,27 @@ PROGRAM _CYCLIC
|
||||
VCButtons.AutoStartToolChange.usStatus.0 := (enStepAuto <> enAutoStep_WAIT_START);
|
||||
|
||||
VCButtons.AutoStartHome.usStatus.0 := (enStepAuto <> enAutoStep_HOME_WAIT_START);
|
||||
VCButtons.AutoStartHome.usStatus.1 := NOT States.bSafetyInfeedOk;
|
||||
VCButtons.AutoStartHome.usStatus.1 := NOT States.bSafetyDoorsOk;
|
||||
|
||||
VCButtons.AutoStartCycle.usStatus.0 := (enStepAuto <> enAutoStep_WAIT_START);
|
||||
VCButtons.AutoStartCycle.usStatus.0 := (enStepAuto <> enAutoStep_WAIT_START);
|
||||
VCButtons.AutoStartCycle.usStatus.1 := FALSE AND NOT States.bSafetyInfeedOk;
|
||||
|
||||
VCButtons.AutoStopCycle.usStatus.0 := (enStepAuto <> enAutoStep_CNC_FINISHED);
|
||||
|
||||
VCButtons.AutoRequestHome.usStatus.0 := (enStepAuto > enAutoStep_WAIT_START);
|
||||
|
||||
//Eingabefelder
|
||||
//Verbergen wenn nicht definiert
|
||||
VCStatus.usDtropDownCncPrg.1 := (enStepAuto > enAutoStep_WAIT_START);
|
||||
|
||||
|
||||
|
||||
//Fehler erzeugen allgemein
|
||||
IF FALSE AND (AlarmIDs.udCartridgeClosed = 0) AND States.bSafetyDoorsOk THEN
|
||||
AlarmIDs.udCartridgeClosed := MpAlarmXSet (gMpAlarmXCore, 'CartrigeHolderOpen');
|
||||
ELSIF FALSE AND (AlarmIDs.udNoCartrige = 0) AND States.bSafetyDoorsOk THEN
|
||||
AlarmIDs.udNoCartrige := MpAlarmXSet (gMpAlarmXCore, 'NoCartrige');
|
||||
END_IF
|
||||
//IF FALSE AND (AlarmIDs.udCartridgeClosed = 0) AND States.bSafetyDoorsOk THEN
|
||||
// AlarmIDs.udCartridgeClosed := MpAlarmXSet (gMpAlarmXCore, 'CartrigeHolderOpen');
|
||||
//ELSIF FALSE AND (AlarmIDs.udNoCartrige = 0) AND States.bSafetyDoorsOk THEN
|
||||
// AlarmIDs.udNoCartrige := MpAlarmXSet (gMpAlarmXCore, 'NoCartrige');
|
||||
//END_IF
|
||||
|
||||
// <EFBFBD>berwachungen w<EFBFBD>hrend Automatik
|
||||
//--------------------------------------------------------------------------------------------
|
||||
@@ -926,10 +951,10 @@ PROGRAM _CYCLIC
|
||||
|
||||
//Notaus w<EFBFBD>hrend Automatik (in Schritten wo keine Unterbrechung gew<EFBFBD>nscht ist)
|
||||
//--------------------------------------------------------------------------------------------
|
||||
IF NOT States.bSafetyInfeedOk AND (enStepAuto > enAutoStep_WAIT_START) THEN
|
||||
IF NOT States.bSafetyInfeedOk AND (enStepAuto > enAutoStep_WAIT_DOOR_CLOSED) AND (enStepAuto < enAutoStep_WAIT_DOOR_OPEN) THEN
|
||||
//Pr<EFBFBD>fen ob restart erlaubt
|
||||
DoResetAxCommands;
|
||||
IF (enStepAuto >= enAutoStep_CNC_ACTIVE) AND (enAutoStep_WAIT_START < enAutoStep_CNC_FINISHED) THEN
|
||||
IF (enStepAuto >= enAutoStep_CNC_ACTIVE) AND (enStepAuto < enAutoStep_CNC_FINISHED) THEN
|
||||
//FixMe Error
|
||||
enStepAuto := enAutoStep_INIT;
|
||||
enStepAutoRestartPoint := enStepAuto;
|
||||
@@ -940,9 +965,10 @@ PROGRAM _CYCLIC
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
IF NOT States.bSafetyInfeedOk AND (enStepAuto < enAutoStep_WAIT_RESTART) THEN
|
||||
|
||||
IF NOT States.bSafetyInfeedOk THEN
|
||||
DoResetAxCommands;
|
||||
enStepAuto := enAutoStep_INIT;
|
||||
// enStepAuto := enAutoStep_INIT;
|
||||
END_IF
|
||||
|
||||
//Automatik Schrittkette Kartusche
|
||||
@@ -954,11 +980,11 @@ PROGRAM _CYCLIC
|
||||
//Initial Schritt
|
||||
//---------------------------
|
||||
enAutoStep_INIT:
|
||||
bTransitionCondition := States.bSafetyInfeedOkDelayed AND NOT gCmd1.bReqDoorOpen;
|
||||
bTransitionCondition := TRUE;
|
||||
gABBRobot1.Out.bStop := FALSE;
|
||||
gABBRobot1.Out.bSwitchMotorOff := FALSE;
|
||||
Valves.bHPValveOn := FALSE;
|
||||
IF bTransitionCondition THEN //AND lMachine.bMachineHOME THEN
|
||||
IF bTransitionCondition AND lMachine.bMachineHOME THEN
|
||||
enStepAuto := enAutoStep_WAIT_START;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
ELSIF bTransitionCondition THEN
|
||||
@@ -972,13 +998,39 @@ PROGRAM _CYCLIC
|
||||
//GS: Warten auf Start
|
||||
//---------------------------
|
||||
enAutoStep_HOME_WAIT_START:
|
||||
bTransitionCondition := EDGEPOS (VCButtons.AutoStartHome.bCommand) AND States.bSafetyInfeedOkDelayed;
|
||||
bTransitionCondition := (EDGEPOS (gbInStartKey) OR VCButtons.AutoStartHome.bCommand) AND States.bSafetyDoorsOk;
|
||||
IF bTransitionCondition THEN
|
||||
enStepAuto := enAutoStep_HOME_WAIT_ZHOME;
|
||||
enStepAuto := enAutoStep_HOME_WAIT_DOORCLOSED;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
//Warten bis Tor geschlossen
|
||||
//---------------------------
|
||||
enAutoStep_HOME_WAIT_DOORCLOSED:
|
||||
Valves.bCloseGate := MoveConditions.bCloseFrontGate;
|
||||
bTransitionCondition := gbSInFrontGateOk AND States.bSafetyInfeedOkDelayed;
|
||||
IF bTransitionCondition THEN
|
||||
enStepAuto := enAutoStep_HOME_WAIT_HOMING;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
|
||||
//Warten bis Achsen Ref
|
||||
//---------------------------
|
||||
enAutoStep_HOME_WAIT_HOMING:
|
||||
bTransitionCondition := MpFUB.AxBasic_X.IsHomed AND
|
||||
MpFUB.AxBasic_Y.IsHomed AND
|
||||
MpFUB.AxBasic_Z.IsHomed AND
|
||||
MpFUB.AxBasic_A.IsHomed AND
|
||||
MpFUB.AxBasic_B.IsHomed AND
|
||||
MpFUB.AxBasic_Shuttle.IsHomed;
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
enStepAuto := enAutoStep_HOME_WAIT_ZHOME;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
|
||||
//GS: Warten bis Z-Achse in GS gefahren
|
||||
//---------------------------
|
||||
enAutoStep_HOME_WAIT_ZHOME:
|
||||
@@ -1060,9 +1112,37 @@ PROGRAM _CYCLIC
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
MpFUB.AxBasic_B.MoveAbsolute := FALSE;
|
||||
enStepAuto := enAutoStep_INIT;
|
||||
enStepAuto := enAutoStep_HOME_WAIT_SHUTTLEHOME;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
//Shuttle in Grundstellung
|
||||
//---------------------------
|
||||
enAutoStep_HOME_WAIT_SHUTTLEHOME:
|
||||
bTransitionCondition := MpFUB.AxBasic_Shuttle.InPosition AND MpFUB.AxBasic_Shuttle.MoveDone AND
|
||||
NOT MpFUB.AxBasic_Shuttle.CommandBusy AND MpFUB.AxBasic_Shuttle.MoveAbsolute;
|
||||
MpData.AxPar_Shuttle.Velocity := Parameter.rVelocityAxisLinear; //mm/s
|
||||
MpData.AxPar_Shuttle.Acceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_Shuttle.Deceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_Shuttle.Position := pParamPositions.lrHomePosShuttle;
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := MoveConditions.bAxisShuttleMovePos;
|
||||
IF bTransitionCondition THEN
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := FALSE;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_HOME_WAIT_DOOROPEN;
|
||||
END_IF
|
||||
|
||||
|
||||
//T<EFBFBD>r <EFBFBD>ffnen
|
||||
//---------------------------
|
||||
enAutoStep_HOME_WAIT_DOOROPEN:
|
||||
Valves.bCloseGate := FALSE;
|
||||
bTransitionCondition := gbInFrontGateOpen;
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_INIT;
|
||||
END_IF
|
||||
|
||||
|
||||
//Warten auf Start nach Notaus (inaktiv)
|
||||
@@ -1081,20 +1161,10 @@ PROGRAM _CYCLIC
|
||||
enAutoStep_WAIT_START:
|
||||
|
||||
//Werkzeugwechsel
|
||||
bTransitionCondition := VCButtons.AutoStartToolChange.bCommand;
|
||||
IF bTransitionCondition THEN
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_TOOLCH_PRESSPOS_RCHD;
|
||||
END_IF
|
||||
|
||||
//bTransitionCondition := VCButtons.AutoStartToolChange.bCommand;
|
||||
|
||||
//Automatik Ablauf EDGEPOS (gPB3.bInKeyStatus)
|
||||
bTransitionCondition := (FUBs.TOF_Startkey.Q AND EDGEPOS (States.bSafetyInfeedOkDelayed) OR
|
||||
EDGEPOS (gbInStartKey) AND States.bSafetyInfeedOkDelayed);
|
||||
|
||||
bTransitionCondition := EDGEPOS (VCButtons.AutoStartCycle.bCommand);
|
||||
//Fehler erzeugen Prozessrelevant
|
||||
|
||||
bTransitionCondition := EDGEPOS (gbInStartKey) OR EDGEPOS (VCButtons.AutoStartCycle.bCommand);
|
||||
//Fehler erzeugen Prozessrelevant
|
||||
|
||||
IF bTransitionCondition
|
||||
AND NOT MpAlarmXCheckReaction (gMpAlarmXCore, 'ReactionLockAuto')
|
||||
@@ -1111,45 +1181,31 @@ PROGRAM _CYCLIC
|
||||
END_IF
|
||||
|
||||
|
||||
//Werkzeugwechsel Presspositon anfahren
|
||||
//---------------------------
|
||||
enAutoStep_TOOLCH_PRESSPOS_RCHD:
|
||||
bTransitionCondition := MpFUB.AxBasic_X.InPosition AND MpFUB.AxBasic_X.MoveDone AND
|
||||
NOT MpFUB.AxBasic_X.CommandBusy AND MpFUB.AxBasic_X.MoveAbsolute
|
||||
AND MpFUB.MpCNC5Axis.PowerOn;
|
||||
MpData.AxPar_X.Velocity := Parameter.rVelocityAxisLinear; //mm/s
|
||||
MpData.AxPar_X.Acceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_X.Deceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_X.Position := pParamPositions.lrHomePosX;
|
||||
MpFUB.AxBasic_X.MoveAbsolute := MoveConditions.bAxisXMove AND MpFUB.MpCNC5Axis.PowerOn;
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
MpFUB.AxBasic_X.MoveAbsolute := FALSE;
|
||||
enStepAuto := enAutoStep_TOOLCH_PRESS_DOWN;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
//Werkzeugwechsel Presse absenken
|
||||
//---------------------------
|
||||
enAutoStep_TOOLCH_PRESS_DOWN:
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
enStepAuto := enAutoStep_INIT;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
|
||||
|
||||
//Warten bis Tor geschlossen
|
||||
//---------------------------
|
||||
enAutoStep_WAIT_DOOR_CLOSED:
|
||||
bTransitionCondition := TRUE;
|
||||
Valves.bCloseGate := MoveConditions.bCloseFrontGate;
|
||||
bTransitionCondition := gbSInFrontGateOk AND States.bSafetyInfeedOkDelayed;
|
||||
IF bTransitionCondition THEN
|
||||
enStepAuto := enAutoStep_WAIT_HOMING;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
//Warten bis Achsen Ref
|
||||
//---------------------------
|
||||
enAutoStep_WAIT_HOMING:
|
||||
bTransitionCondition := MpFUB.AxBasic_X.IsHomed AND
|
||||
MpFUB.AxBasic_Y.IsHomed AND
|
||||
MpFUB.AxBasic_Z.IsHomed AND
|
||||
MpFUB.AxBasic_A.IsHomed AND
|
||||
MpFUB.AxBasic_B.IsHomed AND
|
||||
MpFUB.AxBasic_Shuttle.IsHomed;
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
enStepAuto := enAutoStep_SHUTTLE_IN;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
END_IF
|
||||
|
||||
|
||||
//Schuttle in Bearbeitungspos
|
||||
//---------------------------
|
||||
enAutoStep_SHUTTLE_IN:
|
||||
@@ -1159,8 +1215,9 @@ PROGRAM _CYCLIC
|
||||
MpData.AxPar_Shuttle.Acceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_Shuttle.Deceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_Shuttle.Position := pParamPositions.lrWorkPosShuttle;
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := MoveConditions.bAxisShuttleMove;
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := MoveConditions.bAxisShuttleMoveNeg;
|
||||
IF bTransitionCondition THEN
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := FALSE;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_CNC_ACTIVE;
|
||||
END_IF
|
||||
@@ -1170,12 +1227,12 @@ PROGRAM _CYCLIC
|
||||
//---------------------------
|
||||
enAutoStep_CNC_ACTIVE:
|
||||
bTransitionCondition := (Parameter.bTestRun OR (Times.diSteptime > 500000));
|
||||
MpData.MpCnc5AxisPar.ProgramName := 'CncProg.cnc';
|
||||
//FisMe
|
||||
strCurrentCncPrg := gstrFilenames[usCncPrgSelection];
|
||||
MpData.MpCnc5AxisPar.ProgramName := strCurrentCncPrg;
|
||||
//MpData.MpCnc5AxisPar.ProgramName := lCurrentTool.SysPar.strCNCPrg;
|
||||
|
||||
//Parameter fixieren und an CNC Schreiben
|
||||
//CNCVars.lrGlueGap := lCurrentTool.ProcPar.lrGlueGap;
|
||||
//Sample CNCVars.lrGlueGap := lCurrentTool.ProcPar.lrGlueGap;
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
MpFUB.MpCNC5Axis.MoveProgram := TRUE;
|
||||
@@ -1191,11 +1248,11 @@ PROGRAM _CYCLIC
|
||||
//---------------------------
|
||||
enAutoStep_CNC_FINISHED:
|
||||
IF MFlags.b40_StartHP THEN
|
||||
Valves.bHPValveOn := TRUE;
|
||||
Valves.bHPValveOn := NOT Parameter.bTestRun;
|
||||
MFlags.b40_StartHP := FALSE;
|
||||
END_IF
|
||||
|
||||
IF MpFUB.MpCNC5Axis.MoveDone OR MpFUB.MpCNC5Axis.Error OR MFlags.b41_StopHP THEN
|
||||
IF MpFUB.MpCNC5Axis.MoveDone OR MpFUB.MpCNC5Axis.Error OR MFlags.b41_StopHP OR VCButtons.AutoStopCycle.bCommand THEN
|
||||
Valves.bHPValveOn := FALSE;
|
||||
MFlags.b41_StopHP := FALSE;
|
||||
END_IF
|
||||
@@ -1204,10 +1261,14 @@ PROGRAM _CYCLIC
|
||||
//CNC Program Ende
|
||||
bTransitionCondition := MpFUB.MpCNC5Axis.MoveDone;
|
||||
|
||||
IF FALSE THEN
|
||||
//FixMe
|
||||
IF VCButtons.AutoStopCycle.bCommand THEN
|
||||
//Abbruch
|
||||
Valves.bHPValveOn := FALSE;
|
||||
MpFUB.MpCNC5Axis.MoveProgram := FALSE;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_WAIT_DOOR_OPEN;
|
||||
ELSIF bTransitionCondition THEN
|
||||
Valves.bHPValveOn := FALSE;
|
||||
MpFUB.MpCNC5Axis.MoveProgram := FALSE;
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_ZHOME;
|
||||
@@ -1256,7 +1317,7 @@ PROGRAM _CYCLIC
|
||||
MpData.AxPar_X.Acceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_X.Deceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_X.Position := pParamPositions.lrHomePosX;
|
||||
MpFUB.AxBasic_X.MoveAbsolute := MoveConditions.bAxisXMove;
|
||||
MpFUB.AxBasic_X.MoveAbsolute := MoveConditions.bAxisXMoveNeg;
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
MpFUB.AxBasic_Y.MoveAbsolute := FALSE;
|
||||
@@ -1299,7 +1360,7 @@ PROGRAM _CYCLIC
|
||||
END_IF
|
||||
|
||||
|
||||
//Schuttle in Bearbeitungspos
|
||||
//Shuttle in Grundstellung
|
||||
//---------------------------
|
||||
enAutoStep_SHUTTLE_OUT:
|
||||
bTransitionCondition := MpFUB.AxBasic_Shuttle.InPosition AND MpFUB.AxBasic_Shuttle.MoveDone AND
|
||||
@@ -1308,7 +1369,7 @@ PROGRAM _CYCLIC
|
||||
MpData.AxPar_Shuttle.Acceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_Shuttle.Deceleration := 1000.0; //mm/s2
|
||||
MpData.AxPar_Shuttle.Position := pParamPositions.lrHomePosShuttle;
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := MoveConditions.bAxisShuttleMove;
|
||||
MpFUB.AxBasic_Shuttle.MoveAbsolute := MoveConditions.bAxisShuttleMovePos;
|
||||
IF bTransitionCondition THEN
|
||||
TimesLatch.diSteptime := gdiSystemTime;
|
||||
enStepAuto := enAutoStep_WAIT_DOOR_OPEN;
|
||||
@@ -1318,7 +1379,8 @@ PROGRAM _CYCLIC
|
||||
//T<EFBFBD>r <EFBFBD>ffnen
|
||||
//---------------------------
|
||||
enAutoStep_WAIT_DOOR_OPEN:
|
||||
bTransitionCondition := TRUE;
|
||||
Valves.bCloseGate := FALSE;
|
||||
bTransitionCondition := gbInFrontGateOpen;
|
||||
|
||||
|
||||
IF bTransitionCondition THEN
|
||||
@@ -1335,12 +1397,13 @@ PROGRAM _CYCLIC
|
||||
|
||||
//Ventile ansteuern (Sicherheit mit einschleifen)
|
||||
|
||||
IF Valves.bPressUp AND Valves.bPressDown THEN
|
||||
Valves.bPressDown := FALSE;
|
||||
IF NOT lMachine.bMachineON OR gbSPLCInErrorBumper THEN
|
||||
Valves.bCloseGate := FALSE;
|
||||
END_IF
|
||||
gbSOuCloseFrontgate := Valves.bCloseGate;
|
||||
|
||||
//HD Ventil
|
||||
IF NOT gbSPLCInAxisEnabledOk THEN
|
||||
IF NOT gbSPLCInDoorsBackOk OR NOT gbSPLCInDoorsBackOk OR NOT gbSInFrontGateOk THEN
|
||||
Valves.bHPValveOn := FALSE;
|
||||
END_IF
|
||||
gbSOuHPOn := Valves.bHPValveOn;
|
||||
@@ -1350,46 +1413,24 @@ PROGRAM _CYCLIC
|
||||
//Fehlermeldungen
|
||||
DoAlarms;
|
||||
|
||||
(*
|
||||
|
||||
//Zyliner<EFBFBD>berwachungen // Alarme ab 50
|
||||
|
||||
//Interface <EFBFBD>bergeordnete Anlage
|
||||
//=================================================================================
|
||||
|
||||
//Achsfehler zur<EFBFBD>cksetzen
|
||||
|
||||
IF lMachine.bMachineON THEN
|
||||
bWaitPowerSpindle := FALSE;
|
||||
END_IF
|
||||
|
||||
IF (gVCCommands.bErrorReset OR EDGEPOS (gPB5.bInKeyStatus)) AND MpFUB.AxBasic_01.Error THEN
|
||||
MpFUB.AxBasic_01.ErrorReset := TRUE;
|
||||
END_IF
|
||||
|
||||
|
||||
gbOuGripperChangeClose := TRUE;
|
||||
gbOuGripperChangeOpen := FALSE;
|
||||
|
||||
|
||||
|
||||
//Aufr<EFBFBD>umen
|
||||
IF bInit THEN
|
||||
bInit := FALSE;
|
||||
END_IF
|
||||
|
||||
|
||||
//Farben Leuchttatert
|
||||
gPB3.bOuGreen := (lMachine.enMode = enMACH_AUTOMATIC) AND (((enStepAuto = enAutoStep_HOME_WAIT_START) AND bBlink0_5) OR
|
||||
(enStepAuto > enAutoStep_HOME_WAIT_START) AND (enStepAuto < enAutoStep_WAIT_START));
|
||||
//Leuchttaster
|
||||
gbOuLEDStartKey := (lMachine.enMode = enMACH_AUTOMATIC) AND ((enStepAuto = enAutoStep_HOME_WAIT_START)
|
||||
OR (enStepAuto = enAutoStep_WAIT_START)
|
||||
OR ((enStepAuto > enAutoStep_HOME_WAIT_START) AND (enStepAuto < enAutoStep_WAIT_START) AND bBlink0_5 )
|
||||
OR ((enStepAuto > enAutoStep_WAIT_START) AND bBlink0_5 ));
|
||||
|
||||
*)
|
||||
|
||||
//Handshake T<EFBFBD>rfreigebe (FiXMe)
|
||||
gCmd1.bRelDoorOpen := gCmd1.bReqDoorOpen AND NOT MpFUB.MpCNC5Axis.PowerOn AND NOT MpFUB.AxBasic_X.PowerOn AND
|
||||
//Handshake T<EFBFBD>rfreigebe
|
||||
(*gCmd1.bRelDoorOpen := gCmd1.bReqDoorOpen AND NOT MpFUB.MpCNC5Axis.PowerOn AND NOT MpFUB.AxBasic_X.PowerOn AND
|
||||
NOT MpFUB.AxBasic_Y.PowerOn AND NOT MpFUB.AxBasic_Z.PowerOn AND NOT MpFUB.AxBasic_A.PowerOn AND
|
||||
((lMachine.enMode <> enMACH_AUTOMATIC) OR ((enStepAuto = enAutoStep_WAIT_START)));
|
||||
|
||||
*)
|
||||
|
||||
|
||||
//Externe Bremsansteuerung
|
||||
|
||||
@@ -167,10 +167,7 @@ PROGRAM _INIT
|
||||
|
||||
gStatusVCControls.bProgramChanged := TRUE;
|
||||
//Zylinder setzen
|
||||
Valves.bReleaseGripper := FALSE;
|
||||
Valves.bCloseGate := FALSE;
|
||||
Valves.bHPValveOn := FALSE;
|
||||
|
||||
IF NOT (Valves.bPressDown XOR Valves.bPressUp) THEN
|
||||
Valves.bPressUp := TRUE;
|
||||
Valves.bPressDown := FALSE;
|
||||
END_IF
|
||||
END_PROGRAM
|
||||
|
||||
@@ -7,7 +7,7 @@ TYPE
|
||||
rAccDecell : REAL; (*+*)
|
||||
rVelocityAxisLinear : REAL := 100; (*Verfahrgeschwindigkeit Einzelachsen Linear*)
|
||||
rVelocityAxisAngle : REAL := 45; (*Verfahrgeschwindigkeit Einzelachsen Winkel*)
|
||||
rVelocityShuttle : REAL := 240; (*Verfahrgeschwindigkeit Shuttle mm/s*)
|
||||
rVelocityShuttle : REAL := 220; (*Verfahrgeschwindigkeit Shuttle mm/s*)
|
||||
LimitAxis_X : typ_AxLimits;
|
||||
LimitAxis_Y : typ_AxLimits;
|
||||
LimitAxis_Z : typ_AxLimits;
|
||||
@@ -20,10 +20,8 @@ TYPE
|
||||
lrUpperLimit : LREAL; (*Oberer Positionsgrenzwerte*)
|
||||
END_STRUCT;
|
||||
typ_Valves : STRUCT (*Ventile*)
|
||||
bReleaseGripper : BOOL; (*Greifer Freigeben*)
|
||||
bCloseGate : BOOL; (*Einlegetor schlie<69>en*)
|
||||
bHPValveOn : BOOL; (*HD Ventil Ein*)
|
||||
bPressUp : BOOL; (*Presse Auffahren*)
|
||||
bPressDown : BOOL; (*Presse Abbfahren*)
|
||||
END_STRUCT;
|
||||
typ_PosStates : STRUCT (*Positionen*)
|
||||
bHomeX : BOOL; (*X - Achse in Grundstellung*)
|
||||
@@ -35,7 +33,8 @@ TYPE
|
||||
bHomeShuttle : BOOL; (*Shuttle in Einlegepos*)
|
||||
END_STRUCT;
|
||||
typ_CylinderPos : STRUCT (*Zylinderpositionen*)
|
||||
bPressPosUp : BOOL;
|
||||
bFrontGateOpen : BOOL;
|
||||
bFrontGateClosed : BOOL;
|
||||
END_STRUCT;
|
||||
typ_EncoderState : STRUCT (*Status Geber (Absteckkontrolle bei ACP<43>)*)
|
||||
usEncoderState : USINT; (*Status Geber *)
|
||||
@@ -83,17 +82,19 @@ TYPE
|
||||
( (*Schrittkette*)
|
||||
enAutoStep_INIT := 0, (*Grundstellung pr<70>fen*)
|
||||
enAutoStep_HOME_WAIT_START, (*GS: Warten Auf Startbefehl f<>r GS*)
|
||||
enAutoStep_HOME_WAIT_DOORCLOSED, (*GS: Warten Tor zu*)
|
||||
enAutoStep_HOME_WAIT_HOMING, (*GS: Warten Achsen Ref*)
|
||||
enAutoStep_HOME_WAIT_ZHOME, (*GS: Warten bis Z in GS*)
|
||||
enAutoStep_HOME_WAIT_YHOME, (*GS: Warten bis Y in GS*)
|
||||
enAutoStep_HOME_WAIT_XHOME, (*GS: Warten bis Z in GS*)
|
||||
enAutoStep_HOME_WAIT_AHOME, (*GS: Warten bis A in GS*)
|
||||
enAutoStep_HOME_WAIT_BHOME, (*GS: Warten bis B in GS*)
|
||||
enAutoStep_HOME_WAIT_SHUTTLEHOME, (*GS: Warten bis Shuttle in GS*)
|
||||
enAutoStep_WAIT_RESTART := 9, (*Auf Neustart Warten*)
|
||||
enAutoStep_WAIT_START := 10, (*Auf Startbedingungen Warten*)
|
||||
enAutoStep_TOOLCH_PRESSPOS_RCHD := 20, (*Werkzeugwechsel - Warten bis Presspos angefahren*)
|
||||
enAutoStep_TOOLCH_PRESS_DOWN, (*Werkzeugwechsel - Warten bis Presse geschlossen*)
|
||||
enAutoStep_HOME_WAIT_DOOROPEN, (*GS: Warten Tor AUF*)
|
||||
enAutoStep_WAIT_RESTART := 20, (*Auf Neustart Warten*)
|
||||
enAutoStep_WAIT_START := 21, (*Auf Startbedingungen Warten*)
|
||||
enAutoStep_WAIT_DOOR_CLOSED := 50, (*Warten bis T<>r geschlossen*)
|
||||
enAutoStep_WAIT_HOMING, (*Warten Achsen Ref*)
|
||||
enAutoStep_SHUTTLE_IN, (*Warten bis Shuttle eingeshuttelt*)
|
||||
enAutoStep_CNC_ACTIVE := 70, (*Warten bis CNC Aktiv - CNC Starten*)
|
||||
enAutoStep_CNC_FINISHED, (*Warten bis CNC Fertig*)
|
||||
@@ -103,19 +104,23 @@ TYPE
|
||||
enAutoStep_AHOME, (*Warten bis A-Achse R<>ckgestellt*)
|
||||
enAutoStep_BHOME, (*Warten bis B-Achse R<>ckgestellt*)
|
||||
enAutoStep_SHUTTLE_OUT, (*Warten bis Shuttle ausgeshuttelt*)
|
||||
enAutoStep_WAIT_DOOR_OPEN, (*Warten bis Lichtschranke unterbrochen*)
|
||||
enAutoStep_WAIT_DOOR_OPEN, (*Warten bis TOR AUF*)
|
||||
enAutoStep_FINISHED
|
||||
);
|
||||
typ_Commands : STRUCT (*Befehle*)
|
||||
bDummy : {REDUND_UNREPLICABLE} BOOL; (*<2A>*)
|
||||
END_STRUCT;
|
||||
typ_MoveConditions : STRUCT (*Bewegungsfreigaben*)
|
||||
bAxisXMove : BOOL; (*Freigabe X Achse bewegen*)
|
||||
bAxisXMovePos : BOOL; (*Freigabe X Achse bewegen*)
|
||||
bAxisXMoveNeg : BOOL; (*Freigabe X Achse bewegen*)
|
||||
bAxisYMove : BOOL; (*Freigabe Y Achse bewegen*)
|
||||
bAxisZMove : BOOL; (*Freigabe Z Achse bewegen*)
|
||||
bAxisZMovePos : BOOL; (*Freigabe Z Achse bewegen*)
|
||||
bAxisZMoveNeg : BOOL; (*Freigabe Z Achse bewegen*)
|
||||
bAxisAMove : BOOL; (*Freigabe A Achse bewegen*)
|
||||
bAxisBMove : BOOL; (*Freigabe B Achse bewegen*)
|
||||
bAxisShuttleMove : BOOL; (*Freigabe Shuttle Achse bewegen*)
|
||||
bAxisShuttleMovePos : BOOL; (*Freigabe Shuttle Achse bewegen*)
|
||||
bAxisShuttleMoveNeg : BOOL; (*Freigabe Shuttle Achse bewegen*)
|
||||
bCloseFrontGate : BOOL; (*Freigaba Tor schlie<69>en*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
@@ -129,6 +134,7 @@ TYPE
|
||||
TON_PowerCNC : TON;
|
||||
TOF_Startkey : TOF;
|
||||
TOF_SaftyInfeed : TOF;
|
||||
Cyl_Frontdoor : FUB_CylinderCheck;
|
||||
END_STRUCT;
|
||||
typ_MpFUB : STRUCT (*MApp Funktionsbausteine*)
|
||||
AxBasic_X : MpAxisBasic; (*Einzelachsfunktionalit<69>t*)
|
||||
@@ -234,18 +240,16 @@ TYPE
|
||||
AxisShuttleHome : gtyp_VCButton; (*Shuttle - Achse Referenzieren*)
|
||||
AxisShuttleCalibrate : gtyp_VCButton; (*Shuttle - Achse Kalibrieren*)
|
||||
HPOn : gtyp_VCButton; (*Ventil HD Ein*)
|
||||
OpenGripper : gtyp_VCButton; (*Greifer <20>ffner*)
|
||||
CloseGripper : gtyp_VCButton; (*Greifer Schlie<EFBFBD>en*)
|
||||
OpenGate : gtyp_VCButton; (*Einlegetor <20>ffnen*)
|
||||
CloseGate : gtyp_VCButton; (*Einlegetor schlie<EFBFBD>en*)
|
||||
AutoStartHome : gtyp_VCButton; (*Starte Grundstellung*)
|
||||
AutoStartCycle : gtyp_VCButton; (*Starte Zyklus*)
|
||||
AutoStopCycle : gtyp_VCButton; (*Stopp Zyklus*)
|
||||
AutoRequestHome : gtyp_VCButton; (*Grundstellung Anfordern (Abbruch Automatik)*)
|
||||
AutoStartToolChange : gtyp_VCButton; (*Automatik Werkzeugwechselpos*)
|
||||
END_STRUCT;
|
||||
typ_VCStatus : STRUCT (*Status Datenpunkte f<>r Eingabefelder etc*)
|
||||
usEditNrExtraPart1 : USINT; (*Status Bauteilnummer Zusatzteil editieren*)
|
||||
usEditNrExtraPart2 : USINT; (*Status Bauteilnummer Zusatzteil editieren*)
|
||||
usEditNrUpperTool : USINT; (*Status Bauteilnummer Oberwerkzeug editieren*)
|
||||
usEditNrLowertool : USINT; (*Status Bauteilnummer Unterwekzeug editieren*)
|
||||
usDtropDownCncPrg : USINT; (*CncProgramm ausw<73>hlen*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
@@ -253,22 +257,14 @@ END_TYPE
|
||||
|
||||
TYPE
|
||||
typ_AlarmIDs : STRUCT (*Puffer f<>r Alarm IDs*)
|
||||
udCartridgeClosed : UDINT; (*Kartuschenhalter nicht eingeschwenkt*)
|
||||
udNoCartrige : UDINT; (*Keine Kartusche eingelegt*)
|
||||
udCartrigeNotTouched : UDINT; (*Kartusche nicht angetastet*)
|
||||
udCartrigeEmpty : UDINT; (*Kartusche ist leer*)
|
||||
udCartrigeForceExceeded : UDINT; (*Kraft <20>berschritten Mischer leer*)
|
||||
udCartrigeInforamtionMissing : UDINT; (*Informationen zur Kartusche nicht vollst<73>ndig*)
|
||||
udPartInfoMissing : UDINT; (*Bauteilinformationen nicht vollst<73>ndig*)
|
||||
udOperatorMissing : UDINT; (*Bediener nicht eingegeben*)
|
||||
udHeatingDisabled : UDINT; (*Heizung deaktiviert*)
|
||||
udNotPreaheated : UDINT; (*Werkzeuge noch nicht aufgeheizt*)
|
||||
udVaccumLowerTool : UDINT; (*Vakuum Unterwerkzeug nicht erreicht*)
|
||||
udVaccumUpperTool : UDINT; (*Vakuum Oberwerkzeug nicht erreicht*)
|
||||
udOpenTimeExceeded : UDINT; (*Offene Zeit <20>berschritten*)
|
||||
udFrontGateNotOpen : UDINT; (*Einlegetor <20>ffnet nicht*)
|
||||
udFrontGateNotClosed : UDINT; (*Einlegetor schlie<69>t nicht*)
|
||||
udEStopDuringCycle : UDINT; (*Nothalt w<>hrend Zyklus*)
|
||||
udCNCErrorDuringCycle : UDINT; (*CNC Fehler*)
|
||||
udAxisError : UDINT;
|
||||
udWaterLvlMin : UDINT; (*Wassserstand HD Pumpe*)
|
||||
udWaterPrePress3Bar : UDINT; (*Wasservordruck 3 Bar*)
|
||||
udWaterPressMin : UDINT; (*Wasserdruck HD Min*)
|
||||
END_STRUCT;
|
||||
typ_AlarmSnippets : STRUCT (*Infos f<>r Alarmtexte*)
|
||||
strEStopButton : STRING[40]; (*Identifikation Nothalttaster*)
|
||||
|
||||
@@ -34,6 +34,7 @@ VAR
|
||||
usParts : USINT; (*Teilezahl*)
|
||||
udi : UDINT;
|
||||
uiRecipe : UINT; (*Aktueles Rezept*)
|
||||
usCncPrgSelection : USINT;
|
||||
END_VAR
|
||||
(*//REAL*)
|
||||
(*//Strings*)
|
||||
@@ -41,7 +42,8 @@ VAR
|
||||
strDOName : STRING[80];
|
||||
strTemp : STRING[80];
|
||||
strOperator : STRING[20];
|
||||
strMachinename : STRING[5];
|
||||
strMachinename : STRING[15];
|
||||
strCurrentCncPrg : STRING[80];
|
||||
END_VAR
|
||||
(*//Konstanten*)
|
||||
VAR
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
TYPE
|
||||
ptyp_Positions : STRUCT (*Positionen*)
|
||||
lrHomePosShuttle : LREAL := 235; (*HomePos Shuttle (Einlegepos)*)
|
||||
lrHomePosShuttle : LREAL := 234; (*HomePos Shuttle (Einlegepos)*)
|
||||
lrWorkPosShuttle : LREAL := 5; (*Bearbeitungspos Shuttle*)
|
||||
lrHomePosX : LREAL := 2.0; (*Homepos X (Einlegepos)*)
|
||||
lrHomePosY : LREAL := 10.0; (*Homepos Y*)
|
||||
|
||||
@@ -15,15 +15,23 @@ PROGRAM _CYCLIC
|
||||
MpFUB.UserXLogin.UserName := ADR (wstrUser);
|
||||
MpFUB.UserXLogin.Password := ADR (wstrPassword);
|
||||
|
||||
IF bRemoteUser THEN
|
||||
IF bRemoteUserAdmin THEN
|
||||
wstrUser := "REMOTE";
|
||||
wstrPassword := "08154711";
|
||||
IF (brwcsncmp (ADR (wstrUser), ADR (MpFUB.UserXLogin.CurrentUser), 16) <> 0)THEN
|
||||
MpFUB.UserXLogin.Login := TRUE;
|
||||
END_IF
|
||||
bRemoteUser := FALSE;
|
||||
bRemoteUserAdmin := FALSE;
|
||||
END_IF
|
||||
|
||||
|
||||
IF bRemoteUserDefault AND (brwcsncmp (ADR ("NOUSER"), ADR (MpFUB.UserXLogin.CurrentUser), 16) = 0)THEN
|
||||
wstrUser := "REMOTEOP";
|
||||
wstrPassword := "08154711";
|
||||
IF (brwcsncmp (ADR (wstrUser), ADR (MpFUB.UserXLogin.CurrentUser), 16) <> 0)THEN
|
||||
MpFUB.UserXLogin.Login := TRUE;
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
IF (ludKeyID > 0) AND NOT bSetup THEN
|
||||
udTemp := ludKeyID;
|
||||
wstrPassword := UDINT_TO_WSTRING (udTemp);
|
||||
|
||||
@@ -6,4 +6,6 @@ PROGRAM _INIT
|
||||
MpFUB.UserXManagerUI.UIConnect := ADR (MpData.UserXMgrUIConnectType);
|
||||
MpFUB.UserXLogin.Enable := TRUE;
|
||||
bSetup := FALSE;
|
||||
bRemoteUserAdmin := FALSE;
|
||||
bRemoteUserDefault := TRUE;
|
||||
END_PROGRAM
|
||||
@@ -1,6 +1,7 @@
|
||||
VAR
|
||||
bSetup : BOOL; (*Inbetriebnahmemodus (Leser umgehen)*)
|
||||
bRemoteUser : BOOL;
|
||||
bRemoteUserAdmin : BOOL; (*VPN Admin*)
|
||||
bRemoteUserDefault : BOOL; (*VPN Default user (Autologin)*)
|
||||
ludKeyID : REFERENCE TO UDINT; (*Referenz auf USB Leser ID*)
|
||||
udTemp : UDINT;
|
||||
uiTemp : UINT;
|
||||
|
||||
@@ -107,4 +107,21 @@ TYPE
|
||||
bCompletion : BOOL; (*Fertigstellung Eingabe*)
|
||||
bCommand : BOOL; (*Befehlstatus*)
|
||||
END_STRUCT;
|
||||
gtyp_VCDropdownbox : STRUCT (*VC - Listbox*)
|
||||
usStatus : USINT; (*Anzeige / Bedienstatus*)
|
||||
usIndexDatapoint : USINT; (*Index - Auswahl*)
|
||||
usMinIndex : USINT; (*Minimaler Index*)
|
||||
usMaxIndex : USINT; (*Maximaler Index*)
|
||||
bCompletion : BOOL; (*Fertigstellung Eingabe*)
|
||||
bCommand : BOOL; (*Befehlstatus*)
|
||||
END_STRUCT;
|
||||
gtyp_VCSlider : STRUCT (*VC - Listbox*)
|
||||
usStatus : USINT; (*Anzeige / Bedienstatus*)
|
||||
usIndexDatapoint : USINT; (*Index - Auswahl*)
|
||||
usMinIndex : USINT; (*Minimaler Index*)
|
||||
usMaxIndex : USINT; (*Maximaler Index*)
|
||||
usStartRange : USINT; (*Start Range*)
|
||||
usEndRange : USINT; (*End Range*)
|
||||
bCommand : BOOL; (*Befehlstatus*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
@@ -15,7 +15,7 @@ VAR CONSTANT
|
||||
VC_LOCK_BITPOS : USINT := 1;
|
||||
VC_IN_EDIT : USINT := 15;
|
||||
gNUMBER_OF_ESTOPS : USINT := 2; (*Anzahl Nothalttaster*)
|
||||
gNUMBER_OF_DOORS : USINT := 2; (*Anzahl Schutzt<7A>ren*)
|
||||
gNUMBER_OF_DOORS : USINT := 3; (*Anzahl Schutzt<7A>ren*)
|
||||
END_VAR
|
||||
VAR
|
||||
LAYER_MAINPAGE_MAIN : USINT := 1; (*Hauptlayer*)
|
||||
|
||||
@@ -26,7 +26,10 @@ PROGRAM _INIT
|
||||
MpFUB.MpAlarmXHistoryUI.UISetup.AlarmListSize := 13;
|
||||
//MpFUB.MpAlarmXHistoryUI.UISetup.TimeStampPattern :=
|
||||
|
||||
gVisuCtrl.GlobalLayer.usStateLayerAlarmBox.0 := TRUE;
|
||||
gVisuCtrl.GlobalLayer.usStateLayerAlarmBox.0 := TRUE;
|
||||
|
||||
//Startlayer setzeb
|
||||
VisuPageCtrl_Alarmtrl.usSetLayer := 4;
|
||||
|
||||
END_PROGRAM
|
||||
|
||||
@@ -42,8 +45,8 @@ PROGRAM _CYCLIC
|
||||
IF (gVisuCtrl.enCurrentPage = P30_ALARMS) THEN
|
||||
//Tabs einf<EFBFBD>rben // Layer Schalten
|
||||
FOR usi := 4 TO 11 DO
|
||||
VisuPageCtrl_TempCtrl.usStateLayer[usi].0 := (VisuPageCtrl_TempCtrl.usSetLayer <> usi); //Layerstatus wird als Farbe f<EFBFBD>r Tab verwendet
|
||||
VisuPageCtrl_TempCtrl.usStateTabBtn[usi].0 := (usi >= 8) AND (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL); //Tuning / Profile Tabs nur f<EFBFBD>r KD User
|
||||
VisuPageCtrl_Alarmtrl.usStateLayer[usi].0 := (VisuPageCtrl_Alarmtrl.usSetLayer <> usi); //Layerstatus wird als Farbe f<EFBFBD>r Tab verwendet
|
||||
VisuPageCtrl_Alarmtrl.usStateTabBtn[usi].0 := (usi >= 8) AND (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL); //Tuning / Profile Tabs nur f<EFBFBD>r KD User
|
||||
END_FOR
|
||||
END_IF
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ VAR
|
||||
END_VAR
|
||||
(*//Datenstrukturen*)
|
||||
VAR
|
||||
VisuPageCtrl_TempCtrl : gtyp_VisuCtrlPage; (*Seiteninterface allgemein*)
|
||||
VisuPageCtrl_Alarmtrl : gtyp_VisuCtrlPage; (*Seiteninterface allgemein*)
|
||||
MpData : typ_MpData;
|
||||
END_VAR
|
||||
(*//Funktionsbl<62>cke*)
|
||||
|
||||
@@ -27,9 +27,9 @@ ACTION DoSetupmodeButtons:
|
||||
END_IF
|
||||
|
||||
//Button Reset E-Stop (nur im Einrichtbetrieb)
|
||||
VCButtons.MachineResetEStop.usStatus.0 := gbSPLCInEstopOk OR NOT gMachine1.bMachineON;
|
||||
VCButtons.MachineResetDoors.usStatus.0 := gbSPLCInAxisEnabledOk OR NOT gMachine1.bMachineON;
|
||||
VCButtons.MachineResetEStop.usStatus.0 := TRUE; // gbSPLCInEstopOk OR NOT gMachine1.bMachineON;
|
||||
VCButtons.MachineResetDoors.usStatus.0 := TRUE; // gbSPLCInAxisEnabledOk OR NOT gMachine1.bMachineON;
|
||||
|
||||
//T<EFBFBD>ren Verriegeln entriegeln
|
||||
VCButtons.MachineLockUnlockDoors.usStatus.0 := NOT gbSPLCInEstopOk;
|
||||
VCButtons.MachineLockUnlockDoors.usStatus.0 := TRUE; // NOT gbSPLCInEstopOk;
|
||||
END_ACTION
|
||||
@@ -9,6 +9,7 @@ TYPE
|
||||
TON_StartDelay : TON; (*Wartezeit nach Start*)
|
||||
TOF_StartKey : TOF; (*Wartezeit nach Startaster gedr<64>ckt*)
|
||||
TOF_DoorKey : TOF;
|
||||
TOF_BumperError : TOF; (*Wartehzeit nach Fehler Handschutzleiste*)
|
||||
AsIOAccRead : AsIOAccRead; (*Register aus SLX Lesen*)
|
||||
END_STRUCT;
|
||||
typ_MpFUB : STRUCT (*MApp Funktionsbausteine*)
|
||||
@@ -31,17 +32,17 @@ TYPE
|
||||
END_STRUCT;
|
||||
typ_AlarmIDs : STRUCT (*Puffer f<>r Alarm IDs*)
|
||||
udEStop : ARRAY[1..gNUMBER_OF_ESTOPS]OF UDINT; (*Nothalttaster*)
|
||||
udEStopHPPump : UDINT; (*Nothalt von HD-Pumpe*)
|
||||
udDoor : ARRAY[1..gNUMBER_OF_DOORS]OF UDINT; (*Wartungst<73>ren*)
|
||||
udDoorUnlocked : ARRAY[1..gNUMBER_OF_DOORS]OF UDINT; (*Wartungst<73>ren*)
|
||||
udDoorUnreseted : ARRAY[1..gNUMBER_OF_DOORS]OF UDINT; (*Wartungst<73>ren*)
|
||||
udRefeedEstop : UDINT; (*R<>ckf<6B>hrkreis Nothalt*)
|
||||
udRefeedInfeed : UDINT; (*R<>ckf<6B>hrkreis Einlegebereich*)
|
||||
udAirCtrlEstop : UDINT;
|
||||
udAirCtrlInfeed : UDINT;
|
||||
udLightBarrier : UDINT;
|
||||
udBumperActivated : UDINT; (*Handschutzleiste ausgel<65>st*)
|
||||
udBumperNotReseted : UDINT; (*Handschutzleiste nicht quittiert*)
|
||||
END_STRUCT;
|
||||
typ_AlarmSnippets : STRUCT (*Infos f<>r Alarmtexte*)
|
||||
strEStopButton : STRING[40]; (*Identifikation Nothalttaster*)
|
||||
strDoorOpen : STRING[40]; (*Identifikaton Wartungst<73>r*)
|
||||
strDoorUnlocked : STRING[40]; (*Identifikaton Wartungst<73>r*)
|
||||
strDoorUnreseted : STRING[40]; (*Identifikaton Wartungst<73>r*)
|
||||
END_STRUCT;
|
||||
END_TYPE
|
||||
|
||||
@@ -23,24 +23,15 @@ PROGRAM _CYCLIC
|
||||
// gbOuFanOn := 0;
|
||||
END_IF
|
||||
|
||||
|
||||
//Werkzeugwechsler deaktiviert
|
||||
|
||||
|
||||
//Temperaturregelung
|
||||
VCButtons.TempCtrl.usStatus.0 := NOT gMachine1.bMachineON;
|
||||
|
||||
//Temperaturregelung Deaktiviert
|
||||
VCButtons.TempCtrl.usStatus.0 := TRUE; //DisabledNOT gMachine1.bMachineON;
|
||||
VCButtons.TempCtrl.usStatus.1 := NOT gbSPLCInEstopOk;
|
||||
|
||||
|
||||
|
||||
|
||||
//Einrichtbetrieb Anlage 1
|
||||
//=================================================
|
||||
//Button Setupmode
|
||||
VCButtons.MachineSetupMode.usStatus.0 := (gUserRights.Right6_Setup < mpUSERX_ACCESS_FULL) AND NOT gMachine1.bSetupMode;
|
||||
IF (gMachine1.enMode <> enMACH_JOG) OR (gUserRights.Right4_Jog < mpUSERX_ACCESS_FULL) THEN
|
||||
//FixMe
|
||||
//VCButtons.MachineSetupMode.bCommand := FALSE;
|
||||
END_IF
|
||||
gMachine1.bSetupMode := VCButtons.MachineSetupMode.bCommand ;
|
||||
|
||||
|
||||
@@ -68,7 +59,7 @@ PROGRAM _CYCLIC
|
||||
ELSIF gPB2.bInKeyStatus AND (gUserRights.Right4_Jog >= mpUSERX_ACCESS_ACTUATE) THEN
|
||||
//Tippbetrieb nicht aktiv
|
||||
gMachine1.enMode := enMACH_JOG;
|
||||
ELSIF gPB3.bInKeyStatus AND (gMachine1.enMode <> enMACH_AUTOMATIC) AND gbSPLCInDoorsOk THEN
|
||||
ELSIF gPB3.bInKeyStatus AND (gMachine1.enMode <> enMACH_AUTOMATIC) AND gbSPLCInDoorsBackOk THEN
|
||||
// AND NOT gMachine1.bDisableMachine AND NOT gAlarmReaction.b1StopAutomatic
|
||||
//AND (gUserRights.Right1_Operate >= mpUSER_ACCESS_ACTUATE) THEN //AND NOT gAlarmReaction.b2FinishCycle THEN
|
||||
//Automatik anfordern
|
||||
@@ -136,7 +127,8 @@ PROGRAM _CYCLIC
|
||||
//Globale Layer verwalten
|
||||
//===============================================================================================================
|
||||
//Setupmode
|
||||
gVisuCtrl.GlobalLayer.usStateLayerSetupMode.0 := NOT gMachine1.bSetupMode;
|
||||
//Tasten aktiviert wg Mobile panel
|
||||
gVisuCtrl.GlobalLayer.usStateLayerSetupMode.0 := FALSE; //NOT gMachine1.bSetupMode;
|
||||
IF EDGEPOS (gMachine1.bSetupMode) THEN
|
||||
DoInitSetupmodeButtons;
|
||||
MpAuditCustomEvent (gMpAuditTrail, "Setupmode", "", "enabled");
|
||||
@@ -144,7 +136,8 @@ PROGRAM _CYCLIC
|
||||
IF EDGENEG (gMachine1.bSetupMode) THEN
|
||||
MpAuditCustomEvent (gMpAuditTrail, "Setupmode", "", "disabled");
|
||||
END_IF
|
||||
IF gMachine1.bSetupMode THEN
|
||||
//Wg Mobile Panel
|
||||
IF gMachine1.bSetupMode OR TRUE THEN
|
||||
DoSetupmodeButtons;
|
||||
END_IF
|
||||
|
||||
@@ -159,8 +152,9 @@ PROGRAM _CYCLIC
|
||||
(gMachine1.enMode = enMACH_JOG) OR (gMachine1.enMode = enMACH_AUTOMATIC)
|
||||
);
|
||||
|
||||
//Tippen im CNC deaktiviert
|
||||
IF EDGEPOS (gMachine1.enMode = enMACH_JOG) THEN
|
||||
gVisuCtrl.MainPage.usSetLayer := LAYER_MAINPAGE_JOG;
|
||||
gVisuCtrl.MainPage.usSetLayer := LAYER_MAINPAGE_SETUPMODE;
|
||||
END_IF
|
||||
|
||||
//Layer f<EFBFBD>r die einzelnen Seiten verwalten
|
||||
@@ -207,16 +201,8 @@ PROGRAM _CYCLIC
|
||||
|
||||
//Alarme (Maschinenalarme)
|
||||
//=================================================
|
||||
//0 Sicherung 24 V DC
|
||||
IF FALSE THEN
|
||||
// MpAlarmSet (gMpGroup1AlarmMachine, 0, '');
|
||||
ELSE
|
||||
// MpAlarmReset (gMpGroup1AlarmMachine, 0);
|
||||
END_IF
|
||||
//Reset Sicherung 24V DC
|
||||
|
||||
|
||||
//1 Druckluft<EFBFBD>berwachung
|
||||
(*
|
||||
FUBs.TON_AirOk1.IN := gbInAirOkEStop ; //gbInAirOK;
|
||||
FUBs.TON_AirOk1.PT := t#2s;
|
||||
FUBs.TON_AirOk1 ();
|
||||
@@ -233,100 +219,111 @@ PROGRAM _CYCLIC
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udAirCtrlEstop);
|
||||
AlarmIDs.udAirCtrlEstop := 0;
|
||||
END_IF
|
||||
|
||||
//2 Anforderung Grundstellung
|
||||
IF gMachine1.bRequestHoming AND gMachine1.bMachineON THEN
|
||||
// MpAlarmSet (gMpGroup1AlarmMachine, 2, '');
|
||||
ELSIF NOT gMachine1.bRequestHoming THEN
|
||||
// MpAlarmReset (gMpGroup1AlarmMachine, 2);
|
||||
END_IF
|
||||
|
||||
|
||||
//3 Roboter nicht in Automatik
|
||||
IF NOT gABBRobot1.In.bAutomatic AND gMachine1.bMachineON THEN
|
||||
// MpAlarmSet (gMpGroup1AlarmMachine, 3, '');
|
||||
ELSIF gABBRobot1.In.bAutomatic THEN
|
||||
// udTemp := MpAlarmReset (gMpGroup1AlarmMachine, 3);
|
||||
END_IF
|
||||
|
||||
*)
|
||||
|
||||
|
||||
|
||||
//Alarme (Sicherheitsalarme)
|
||||
//=================================================
|
||||
//Nothalt bet<EFBFBD>tigt
|
||||
IF NOT gbSInEStopPanel AND gMachine1.bMachineON THEN
|
||||
IF NOT gbSInEStop AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udEStop[1] = 0) THEN
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strEStopButton), ADR ('Einlegen / Panel'));
|
||||
AlarmIDs.udEStop[1] := MpAlarmXSet (gMpAlarmXCore, 'EStopButton');
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strEStopButton), ADR ('1 (Einlegebereich)'));
|
||||
END_IF
|
||||
ELSIF gbSInEStopPanel AND (AlarmIDs.udEStop[1] > 0) THEN
|
||||
ELSIF gbSInEStop AND (AlarmIDs.udEStop[1] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udEStop[1]);
|
||||
AlarmIDs.udEStop[1] := 0;
|
||||
END_IF
|
||||
(*
|
||||
IF NOT gbSInEStop2Ok AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udEStop[2] = 0) THEN
|
||||
AlarmIDs.udEStop[2] := MpAlarmXSet (gMpAlarmXCore, 'EStopButton');
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strEStopButton), ADR ('2 (Reserve)'));
|
||||
|
||||
//Nothalt von HD-Pumpe
|
||||
IF NOT gbSInEstopHPPump AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udEStopHPPump = 0) THEN
|
||||
AlarmIDs.udEStopHPPump := MpAlarmXSet (gMpAlarmXCore, 'EStopHPPump');
|
||||
END_IF
|
||||
ELSIF gbSInEStop2Ok AND (AlarmIDs.udEStop[2] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udEStop[2]);
|
||||
AlarmIDs.udEStop[2] := 0;
|
||||
ELSIF gbSInEstopHPPump AND (AlarmIDs.udEStopHPPump > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udEStopHPPump);
|
||||
AlarmIDs.udEStopHPPump := 0;
|
||||
END_IF
|
||||
|
||||
|
||||
|
||||
//Nothalt nicht quittiert
|
||||
IF gbSInEStop1Ok AND gbSInEStop2Ok AND NOT gbSPLCInEstopOk AND gMachine1.bMachineON THEN
|
||||
IF gbSInEStop AND gbSInEstopHPPump AND NOT gbSPLCInEstopOk AND gMachine1.bMachineON THEN
|
||||
MpAlarmXSet (gMpAlarmXCore, 'EStopNACK');
|
||||
ELSIF gbSInEStop1Ok THEN
|
||||
ELSIF gbSPLCInEstopOk THEN
|
||||
MpAlarmXReset (gMpAlarmXCore, 'EStopNACK');
|
||||
END_IF
|
||||
|
||||
//Wartungst<EFBFBD>r offen
|
||||
IF NOT gbInDoorClosed1 AND gMachine1.bMachineON THEN
|
||||
IF NOT gbSInMaintenanceDoorFrontOk AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoor[1] = 0) THEN
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorOpen), ADR ('Vorne'));
|
||||
AlarmIDs.udDoor[1] := MpAlarmXSet (gMpAlarmXCore, 'DoorOpen');
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorOpen), ADR ('1 (Links)'));
|
||||
END_IF
|
||||
ELSIF gbInDoorClosed1 AND (AlarmIDs.udDoor[1] > 0) THEN
|
||||
ELSIF gbSInMaintenanceDoorFrontOk AND (AlarmIDs.udDoor[1] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoor[1]);
|
||||
AlarmIDs.udDoor[1] := 0;
|
||||
END_IF
|
||||
|
||||
IF NOT gbInDoorClosed2 AND gMachine1.bMachineON THEN
|
||||
IF NOT gbSInMaintenanceDoorBackOk AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoor[2] = 0) THEN
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorOpen), ADR ('Hinten Links'));
|
||||
AlarmIDs.udDoor[2] := MpAlarmXSet (gMpAlarmXCore, 'DoorOpen');
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorOpen), ADR ('2 (Rechts)'));
|
||||
END_IF
|
||||
ELSIF gbInDoorClosed2 AND (AlarmIDs.udDoor[2] > 0) THEN
|
||||
ELSIF gbSInMaintenanceDoorBackOk AND (AlarmIDs.udDoor[2] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoor[2]);
|
||||
AlarmIDs.udDoor[2] := 0;
|
||||
END_IF
|
||||
|
||||
//Wartungst<EFBFBD>r nicht verriegelt
|
||||
IF gbInDoorClosed1 AND NOT gbSInDoor1Ok AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoorUnlocked[1] = 0) THEN
|
||||
AlarmIDs.udDoorUnlocked[1] := MpAlarmXSet (gMpAlarmXCore, 'DoorUnlocked');
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorUnlocked), ADR ('1 (Links)'));
|
||||
IF NOT gbSInMaintenanceDoorBack2Ok AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoor[3] = 0) THEN
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorOpen), ADR ('Hinten rechts'));
|
||||
AlarmIDs.udDoor[3] := MpAlarmXSet (gMpAlarmXCore, 'DoorOpen');
|
||||
END_IF
|
||||
ELSIF gbInDoorClosed1 AND (AlarmIDs.udDoorUnlocked[1] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoorUnlocked[1]);
|
||||
AlarmIDs.udDoorUnlocked[1] := 0;
|
||||
ELSIF gbSInMaintenanceDoorBackOk AND (AlarmIDs.udDoor[3] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoor[3]);
|
||||
AlarmIDs.udDoor[3] := 0;
|
||||
END_IF
|
||||
//Wartungst<EFBFBD>r nicht quittiert
|
||||
IF gbSInMaintenanceDoorFrontOk AND NOT gbSPLCInDoorsFrontOk AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoorUnreseted[1] = 0) THEN
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorUnreseted), ADR ('Vorne'));
|
||||
AlarmIDs.udDoorUnreseted[1] := MpAlarmXSet (gMpAlarmXCore, 'DoorUnreseted');
|
||||
END_IF
|
||||
ELSIF gbSInMaintenanceDoorFrontOk AND (AlarmIDs.udDoorUnreseted[1] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoorUnreseted[1]);
|
||||
AlarmIDs.udDoorUnreseted[1] := 0;
|
||||
END_IF
|
||||
|
||||
IF gbInDoorClosed2 AND NOT gbSInDoor2Ok AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoorUnlocked[2] = 0) THEN
|
||||
AlarmIDs.udDoorUnlocked[2] := MpAlarmXSet (gMpAlarmXCore, 'DoorUnlocked');
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorUnlocked), ADR ('2 (Rechts)'));
|
||||
IF gbSInMaintenanceDoorBackOk AND NOT gbSPLCInDoorsBackOk AND gMachine1.bMachineON THEN
|
||||
IF (AlarmIDs.udDoorUnreseted[2] = 0) THEN
|
||||
brsstrcpy (ADR (AlarmTextSnippets.strDoorUnreseted), ADR ('Vorne'));
|
||||
AlarmIDs.udDoorUnreseted[2] := MpAlarmXSet (gMpAlarmXCore, 'DoorUnreseted');
|
||||
END_IF
|
||||
ELSIF gbInDoorClosed2 AND (AlarmIDs.udDoorUnlocked[2] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoorUnlocked[2]);
|
||||
AlarmIDs.udDoorUnlocked[2] := 0;
|
||||
ELSIF gbSPLCInDoorsBackOk AND (AlarmIDs.udDoorUnreseted[2] > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udDoorUnreseted[2]);
|
||||
AlarmIDs.udDoorUnreseted[2] := 0;
|
||||
END_IF
|
||||
|
||||
*)
|
||||
|
||||
|
||||
//Handschutzleiste ausgel<EFBFBD>st
|
||||
IF NOT gbSInBumperGateOk THEN
|
||||
IF (AlarmIDs.udBumperActivated = 0) THEN
|
||||
AlarmIDs.udBumperActivated := MpAlarmXSet (gMpAlarmXCore, 'BumperActivated');
|
||||
END_IF
|
||||
ELSIF gbSInBumperGateOk AND (AlarmIDs.udBumperActivated > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udBumperActivated);
|
||||
AlarmIDs.udBumperActivated := 0;
|
||||
END_IF
|
||||
|
||||
//Handschutzleiste nicht quittiert
|
||||
IF gbSPLCInErrorBumper THEN
|
||||
IF (AlarmIDs.udBumperNotReseted = 0) THEN
|
||||
AlarmIDs.udBumperNotReseted := MpAlarmXSet (gMpAlarmXCore, 'BumperNotReseted');
|
||||
END_IF
|
||||
ELSIF NOT gbSPLCInErrorBumper AND (AlarmIDs.udBumperNotReseted > 0) THEN
|
||||
MpAlarmXResetID (gMpAlarmXCore, AlarmIDs.udBumperNotReseted);
|
||||
AlarmIDs.udBumperNotReseted := 0;
|
||||
END_IF
|
||||
|
||||
//R<EFBFBD>cklesefehler Nothalt
|
||||
IF gbSPLCInRdbckErrorEStop THEN
|
||||
@@ -349,20 +346,6 @@ PROGRAM _CYCLIC
|
||||
END_IF
|
||||
|
||||
|
||||
//47 T<EFBFBD>r nicht quittiert
|
||||
// IF gbSInDoor AND gbSInCoverLeft AND gbSInCoverRight AND gbSInSlay AND NOT gbSPLCInDoorsOk AND gMachine1.bMachineON THEN
|
||||
// MpAlarmSet (gMpGroup2AlarmSafety, 47, '');
|
||||
// ELSIF gbSPLCInDoorsOk THEN
|
||||
// MpAlarmReset (gMpGroup2AlarmSafety, 47);
|
||||
// END_IF
|
||||
|
||||
//48 T<EFBFBD>r nicht verriegelt
|
||||
// IF gbInDoorClosed AND NOT gbOuLockDoor AND gbSPLCInEstopOk AND gMachine1.bMachineON THEN
|
||||
// MpAlarmSet (gMpGroup2AlarmSafety, 48, '');
|
||||
// ELSIF gbInDoorClosed AND gbOuLockDoor THEN
|
||||
// MpAlarmReset (gMpGroup2AlarmSafety, 48);
|
||||
// END_IF
|
||||
|
||||
|
||||
//Anlage Ein Verz<EFBFBD>gert
|
||||
FUBs.TOF_MachineOn.IN := gMachine1.bMachineON;
|
||||
@@ -377,19 +360,28 @@ PROGRAM _CYCLIC
|
||||
//Sch<EFBFBD>tz<EFBFBD>berwachugn R<EFBFBD>cklesesignale - Dummyaufruf wg. Mapping (werden direkt in SPLC gemappt
|
||||
|
||||
//Resetsignal Nothalt
|
||||
|
||||
gbSPLCResetEStop := (gPB5.bInKeyStatus OR VCButtons.MachineResetEStop.bCommand) AND
|
||||
gbSPLCResetEStop := (gbInResetKey OR VCButtons.MachineResetEStop.bCommand) AND
|
||||
gMachine1.bMachineON AND NOT bInit;
|
||||
gbSPLCResetDoors := (gPB5.bInKeyStatus OR EDGEPOS (gbInStartKey) OR VCButtons.MachineResetDoors.bCommand) AND
|
||||
gbSPLCResetDoors := (VCButtons.MachineResetDoors.bCommand OR
|
||||
(EDGEPOS (gbInResetDoorKey) AND NOT gbSPLCInDoorsFrontOk AND gbSInMaintenanceDoorFrontOk) OR
|
||||
(EDGEPOS (gbInResetDoorKey) AND NOT gbSPLCInDoorsBackOk AND gbSInMaintenanceDoorBackOk AND gbSInMaintenanceDoorBack2Ok)
|
||||
)AND
|
||||
gMachine1.bMachineON AND NOT bInit;
|
||||
gbSPLCResetInfeed := (gPB5.bInKeyStatus OR EDGEPOS (gbInStartKey) OR VCButtons.MachineResetDoors.bCommand) AND
|
||||
gMachine1.bMachineON AND NOT bInit;
|
||||
|
||||
gbSPLCResetBumperError := gbSPLCInErrorBumper AND EDGEPOS (gbInResetDoorKey) AND gMachine1.bMachineON AND NOT bInit;
|
||||
|
||||
gbSPLCResetReadbackError := (VCButtons.MachineResetEStop.bCommand OR gPB5.bInKeyStatus) AND MpAlarmXCheckReaction (gMpAlarmXCore, 'ReactionMachineOFF');
|
||||
gbSPLCResetReadbackError := (VCButtons.MachineResetEStop.bCommand OR gbInResetKey) AND MpAlarmXCheckReaction (gMpAlarmXCore, 'ReactionMachineOFF');
|
||||
|
||||
//Outputs
|
||||
//================================================
|
||||
//gbOuAcoposEnable := gMachine1.bMachineON;
|
||||
//Handschutzleisete
|
||||
FUBs.TOF_BumperError.IN := NOT gbIn110A1Error;
|
||||
FUBs.TOF_BumperError.PT := t#300ms;
|
||||
FUBs.TOF_BumperError ();
|
||||
gbOuPower110A1 := gMachine1.bMachineON;
|
||||
|
||||
|
||||
//Sicherheitsausg<EFBFBD>nge freigeben
|
||||
gbSOuMainsSafetyEStop := gMachine1.bMachineON;
|
||||
@@ -400,7 +392,9 @@ PROGRAM _CYCLIC
|
||||
//R<EFBFBD>cklesesignale
|
||||
gbSPLCReadbackEStop := gbInReadbackEstop;
|
||||
gbSPLCReadbackInfeed := gbInReadbackDoors;
|
||||
//Anlagenstauts
|
||||
gbSPLCMachineOn := gMachine1.bMachineON;
|
||||
gbSPLCJogMode := (gMachine1.enMode = enMACH_JOG);
|
||||
|
||||
//Zuhaltung
|
||||
IF (EDGEPOS (gPB4.bInKeyStatus) AND NOT FUBs.TOF_DoorKey.Q AND NOT gCmd1.bReqDoorOpen) OR EDGENEG (VCButtons.MachineLockUnlockDoors.bCommand) THEN
|
||||
@@ -415,48 +409,17 @@ PROGRAM _CYCLIC
|
||||
gCmd1.bReqDoorOpen := FALSE;
|
||||
END_IF
|
||||
|
||||
//gbOuDoorLock1 := gbInDoorClosed1 AND NOT (gCmd1.bReqDoorOpen AND gCmd1.bRelDoorOpen) AND gbSPLCInEstopOk;
|
||||
|
||||
|
||||
|
||||
//Hauptventil (<EFBFBD>ber Sicheren Ausgang)
|
||||
//gbSOuMainValve := gMachine1.bMachineON;
|
||||
|
||||
|
||||
|
||||
//Anlagenbeleuchtung
|
||||
//------------------------------------------------
|
||||
gbOuMachLightOn := VCButtons.MachineLight.bCommand;
|
||||
VCButtons.MachineLight.usStatus.0 := TRUE; //Keine Beleuchtung Taster deaktivieren
|
||||
|
||||
|
||||
// cond = Estop
|
||||
// blink 0,5Hz = Ready to reset
|
||||
gPB1.bOuGreen := gMachine1.bMachineON;
|
||||
gPB1.bOuRed := NOT gMachine1.bMachineON;
|
||||
|
||||
|
||||
//Tippbetrieb (gibts nicht)
|
||||
gPB2.bOuWhite := (gMachine1.enMode <> enMACH_JOG) AND NOT gMachine1.bMachineHOME AND gMachine1.bMachineON AND gbSPLCInDoorsOk AND NOT gPB2.bOuGreen;
|
||||
gPB2.bOuGreen := (gMachine1.enMode = enMACH_JOG) AND gMachine1.bMachineON;
|
||||
|
||||
//Automatik / Grundstellung
|
||||
gPB3.bOuYellow := gMachine1.bMachineHOME AND gMachine1.bMachineON AND TRUE;
|
||||
//Green in Mach Control
|
||||
gPB3.bOuWhite := (gMachine1.enMode <> enMACH_AUTOMATIC) AND NOT gMachine1.bMachineHOME AND gMachine1.bMachineON AND gbSPLCInDoorsOk AND NOT gPB3.bOuGreen;
|
||||
//ander Farben in MachCtrl-Gesetzt
|
||||
//gPB3.bOuWhite := (gMachine1.enMode <> enMACH_AUTOMATIC) AND gMachine1.bMachineON AND gMachine1.bMachineHOME AND gbSPLCInDoorsOk; //AND NOT gAlarmReaction.b1StopAutomatic;
|
||||
|
||||
|
||||
//T<EFBFBD>rverriegeleng
|
||||
gPB4.bOuWhite := FALSE;
|
||||
// gPB4.bOuGreen := gbOuDoorLock1 AND gbOuDoorLock2;
|
||||
// gPB4.bOuYellow := gCmd1.bRelDoorOpen AND NOT gCmd1.bRelDoorOpen AND gbOuDoorLock1 AND gbOuDoorLock2;
|
||||
// gPB4.bOuRed := NOT gbOuDoorLock1 AND NOT gbOuDoorLock2;
|
||||
|
||||
//E-Stop Reset (Rot: Notaus, Yellow: St<EFBFBD>rung)
|
||||
gPB5.bOuRed := NOT gbSPLCInEstopOk OR (NOT gbSPLCInDoorsOk AND bBlink0_5);
|
||||
gPB5.bOuYellow := NOT gPB5.bOuRed AND gbSPLCInEstopOk AND bBlink0_5 ;// AND
|
||||
// ((MpFUB.MpAlarmGroup1Machine.MpAlarmBasic.ActiveAlarms > 0) OR (MpFUB.MpAlarmGroup2Safety.MpAlarmBasic.ActiveAlarms > 0));
|
||||
// (bSafetyError AND bBlink0_5);
|
||||
gbOuLEDResetDoor := (NOT gbSPLCInDoorsBackOk OR NOT gbSPLCInDoorsFrontOk OR gbSPLCInErrorBumper) AND bBlink0_5 AND gMachine1.bMachineON;
|
||||
|
||||
gbOuLEDReset := NOT gbSPLCInEstopOk AND bBlink0_5 AND gMachine1.bMachineON;
|
||||
|
||||
|
||||
//Zeiten Taster entprellen
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?AutomationStudio Version=4.3.5.113 SP?>
|
||||
<?AutomationStudio Version=4.3.6.57 SP?>
|
||||
<Package Version="1.00.0" xmlns="http://br-automation.co.at/AS/Package">
|
||||
<Objects>
|
||||
<Object Type="File">Project.language</Object>
|
||||
<Object Type="Package" Description="Global Types and Vars">GlobalVars</Object>
|
||||
<Object Type="Package">Common</Object>
|
||||
<Object Type="Package" Description="Comunication Objects">Communication</Object>
|
||||
<Object Type="Package" Description="Kommunikation">Communication</Object>
|
||||
<Object Type="Package" Description="Maschine - Übergeordnet">Machine</Object>
|
||||
<Object Type="Package" Description="Machine - Ablaufsteuerung">MachCtrl</Object>
|
||||
<Object Type="Package" Description="Visualisierung">Vsualization</Object>
|
||||
|
||||
@@ -2,4 +2,6 @@ PSetup: wei
|
||||
Maintenance: brezn
|
||||
PLC: gloiffe
|
||||
|
||||
Auditrail: fmc
|
||||
Auditrail: fmc
|
||||
|
||||
Panel: helles
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<AlarmSystem xmlns="http://br-automation.co.at/AS/VC/Project">
|
||||
<Property Name="HistoryLength" Value="1000"/>
|
||||
<Property Name="SnippetBufferSize" Value="150"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<ComponentVersions xmlns="http://br-automation.co.at/AS/VC/Project">
|
||||
<ComponentVersion>
|
||||
<Property Name="ClassId" Value="0x00000500"/>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Languages xmlns="http://br-automation.co.at/AS/VC/Project">
|
||||
<Property Name="Default" Value="de"/>
|
||||
<Property Name="FallBackLanguage" Value="de"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Project xmlns="http://br-automation.co.at/AS/VC/Project">
|
||||
<Property Name="EnableEvents" Value="True"/>
|
||||
<Property Name="SharedTargetResourceRoot" Value=""/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.1.4.47"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Bitmap xmlns="http://br-automation.co.at/AS/VC/Project" Name="BackTransparent">
|
||||
<Property Name="Description" Value="bitmap to make shadow while popup"/>
|
||||
<Property Name="File" Value="BackTransparent.png"/>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 5.8 KiB |
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.5.113 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Bitmap xmlns="http://br-automation.co.at/AS/VC/Project" Name="BackgroundWXGA">
|
||||
<Property Name="Description" Value="Kerschdorfer Hintergrund WXGA"/>
|
||||
<Property Name="File" Value="BackgroundWXGA.png"/>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="1"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Control">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="7"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Control_pressed">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="8"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Decrease">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="42"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Decrease_pressed">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="43"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Global_Area">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="3"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Global_Area_pressed">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="4"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Increase">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="45"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_Increase_pressed">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="44"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_KeyRingOff">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="29"/>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?AutomationStudio Version="4.3.4.121 SP"?>
|
||||
<?AutomationStudio Version="4.3.7.46 SP"?>
|
||||
<Border xmlns="http://br-automation.co.at/AS/VC/Project" ClassId="0x00003005" Name="Button_KeyRingOn">
|
||||
<Property Name="BorderBitmapGroup" Value="Source[local].BitmapGroup[Borders]"/>
|
||||
<Property Name="BorderBitmapGroupIndex" Value="30"/>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user