70 Commits

Author SHA1 Message Date
Patrick McDonagh
705ae919f0 Fix for #1, as long PLC time is correct. 2018-03-02 13:58:55 -06:00
Patrick McDonagh
134ce5f01f Updates to use common channel objects, adds flow totals today and yesterday, public IP 2018-03-01 14:51:13 -06:00
Patrick McDonagh
8d3ecb3d7c Adds upgraded system 2018-02-01 11:48:45 -06:00
Patrick McDonagh
d2ba4eeb11 Merge branch 'master' of bitbucket.org:henrypump/e300-ipp 2016-11-27 19:55:14 -06:00
Patrick McDonagh
507b7c4e43 Removes CCWSUO file from tracking 2016-11-27 19:54:44 -06:00
Patrick McDonagh
919f45ac20 Completes IPP-151. Adds configuration for sensor height and Specific Gravity. Increments driver version to 8 2016-11-08 15:15:22 -06:00
Patrick McDonagh
0440f89433 Merged in IPP-164-e300-alarm-fix (pull request #1)
Completes IPP-164 by requiring contactor status to be on to set e300 trip alarm
2016-09-27 13:20:21 -05:00
Patrick McDonagh
b3070f0025 Completes IPP-164 by requiring contactor status to be on to set e300 trip alarm
Alarm clears once TripStatus is OK for 5 seconds
2016-09-27 13:18:01 -05:00
Patrick McDonagh
856b553f59 Merge branch 'master' of bitbucket.org:henrypump/e300-ipp 2016-09-23 13:18:35 -05:00
Patrick McDonagh
01967b1727 Auto-Setup Files
Changed project name to IPP, added files to automatically configure PLC
2016-09-23 13:18:06 -05:00
Patrick McDonagh
39405aa069 Merge branch 'master' of bitbucket.org:henrypump/e300-ipp 2016-09-23 13:17:37 -05:00
Patrick McDonagh
808acdca73 Auto-Setup Files
Changed project name to IPP, added files to automatically configure PLC
2016-09-23 13:17:03 -05:00
Patrick McDonagh
66477a580c Merge branch 'master' of bitbucket.org:henrypump/e300-ipp 2016-09-23 13:16:35 -05:00
Patrick McDonagh
0b8025c25e Auto-Setup Files
Changed project name to IPP, added files to automatically configure PLC
2016-09-23 13:16:18 -05:00
Patrick McDonagh
34326f8774 Merge branch 'master' of bitbucket.org:henrypump/e300-ipp 2016-09-23 13:12:36 -05:00
Patrick McDonagh
9a8729a70a Adds python script to calculate fluid level or pump intake pressure 2016-09-21 16:25:02 -05:00
Patrick McDonagh
613ff29fd2 Completes IPP-157 and adds custom PLC IP Address entry from POCloud, increments version number to 7 2016-09-20 17:07:59 -05:00
Patrick McDonagh
1993c53d21 Adds alarm status for notification, increments driver version 2016-09-20 11:15:38 -05:00
Patrick McDonagh
19321d4a3b Fixes sending strings by changing sendtodbJSON to sendtodb, increments version number because this shit is important 2016-09-20 10:40:12 -05:00
Patrick McDonagh
2e232ca8c2 Auto-Setup Files
Changed project name to IPP, added files to automatically configure PLC
2016-09-15 12:23:01 -05:00
Patrick McDonagh
93da65f4cf Updates version number to 4 after error trapping 2016-09-09 16:45:27 -05:00
Patrick McDonagh
d9460554ff Merge branch 'master' of ssh://bitbucket.poconsole.net:7999/ipp/e300-ipp 2016-09-07 23:25:33 -05:00
Patrick McDonagh
d993e0efe0 Completes IPP-144. Adds 5 second unstick timer to start command, maintains stop command until contactor_Status is false 2016-09-07 23:25:11 -05:00
Patrick McDonagh
1a6dbde50b converted spaces to Tabs 2016-09-07 23:03:26 -05:00
Patrick McDonagh
ab5e940bf1 Adds global version and switches start/stop to buttons 2016-09-07 16:43:00 -05:00
Patrick McDonagh
ad9d1cacde Fixes having a bunch of digits behind the decimal point on nodelist 2016-08-23 17:32:17 -05:00
Patrick McDonagh
73d3e0cb33 Completes IPP-67. Adds Device_Status_INT to PLC, should be mapped to IPP Driver 2016-08-23 13:12:52 -05:00
Patrick McDonagh
407982e7be Don't need to send "None" for E300 trip history 2016-08-23 10:14:59 -05:00
Patrick McDonagh
a8199543b4 Fixes IPP-130. min_seconds was missing from Epoch Time calculation 2016-08-19 13:02:05 -05:00
Patrick McDonagh
0c2defa280 Configured files for Driver V3 and uploaded to S3 2016-08-12 10:26:57 -05:00
Patrick McDonagh
75040109c5 Completes IPP-68 by mapping E300 status to a string 2016-08-08 12:17:45 -05:00
Patrick McDonagh
4e75523e2c Completes IPP-104, Flow now added to driver. Starts working on mapping E300 faults to strings, and then to one final string. IPP-68 2016-08-04 16:38:13 -05:00
Patrick McDonagh
4d8e3c1791 Merge pull request #3 in IPP/e300-ipp from feature/IPP-97-Flow-and-Totalization to master
* commit '1e6c5f3bec5eb7f719d8c40444b88336d3d1ab0b':
  Added HMI Screens and Flow Totalizer Logic. Resolution is 10 seconds.
  Added scaled flow to Analog Input 1
2016-08-01 20:00:06 +00:00
Patrick McDonagh
1e6c5f3bec Added HMI Screens and Flow Totalizer Logic. Resolution is 10 seconds. 2016-07-31 18:59:38 -05:00
Patrick McDonagh
cd26d7af5e Added scaled flow to Analog Input 1 2016-07-31 18:04:31 -05:00
Patrick McDonagh
38869bc514 Resolves IPP- 59. Enables writing to E300 after the tag value is set. Needs testing 2016-07-18 16:13:56 -05:00
Patrick McDonagh
523e6c435e Adds a sample modbus map for M1 configuration 2016-07-15 17:01:18 -05:00
Patrick McDonagh
c876eb53c9 No longer need pycomm_micro since my changes are now in pycomm 2016-07-15 17:00:52 -05:00
Patrick McDonagh
0f0bbdd061 Fixes ipp reading from Micro800 using class instances 2016-07-15 17:00:22 -05:00
Patrick McDonagh
d1440a9a36 Merge branch 'master' of http://bitbucket.poconsole.net/scm/ipp/e300-ipp 2016-07-15 09:01:45 -05:00
Patrick McDonagh
ae209c7b39 Adds error tracking to micro800 write tag 2016-07-14 18:55:12 -05:00
Patrick McDonagh
8bec0aafd4 Updated ipp.py to use new pycomm functions and Channel class instances 2016-07-14 18:32:04 -05:00
Patrick McDonagh
5b2b8571a7 Added pickle_to_class.py for converting pickled tags to class instances 2016-07-14 17:45:11 -05:00
Patrick McDonagh
6ee3662342 Changes time to Epoch time (See HPU-60), adds alarm channels to driver, trip limit reached tags 2016-07-13 16:12:19 -05:00
Patrick McDonagh
37605fe41d Writes 1 to cmd_Write after setting an E300 parameter 2016-07-13 08:04:43 -05:00
Patrick McDonagh
3602d40d9b Removes warning enables for E300 configuration parameters that do not have warnings 2016-07-13 08:04:09 -05:00
Patrick McDonagh
38bfdb5312 Fix for IPP-49. Timer was being told to run, but timer cycle was never started when powering up 2016-06-17 10:01:33 -05:00
Patrick McDonagh
1240e53f15 Fixes IPP-47. Timer no longer acts like a fault being cleared 2016-06-15 14:36:36 -05:00
Patrick McDonagh
875a9ad405 Merged branch master into master 2016-06-14 19:02:31 -05:00
Patrick McDonagh
9d97df075b Closes IPP-42. Trip and Warning History 2016-06-14 19:02:11 -05:00
Patrick McDonagh
82177cafed Fixes Wrong IO mapping after accidentally saving the Demo Unit program 2016-06-08 09:41:49 -05:00
Patrick McDonagh
c641ae64c7 Fixes IPP-46. DH Intake pressure is now automatically offset by -14PSI to show true pressure 2016-06-06 12:11:31 -05:00
Patrick McDonagh
1b9b5e1623 Merged branch master into master 2016-06-06 10:12:06 -05:00
Patrick McDonagh
7baff1f2f7 Updated driver to v2 2016-06-06 10:11:53 -05:00
Patrick McDonagh
f6f04586a0 Fixes IPP-38. Also converts time until startup from seconds to HH:SS 2016-06-03 11:17:45 -05:00
Patrick McDonagh
07ca941d70 Fixes HTML templates per IPP-40, IPP-44, and IPP-45 2016-06-02 16:17:04 -05:00
Patrick McDonagh
4940c83bb4 Adds HOA status 2016-05-27 17:32:27 -05:00
Patrick McDonagh
e7bce66d83 Begins adding E300 parameters to Config Page 2016-05-26 12:09:27 -05:00
Patrick McDonagh
bcf19f26fb fixes functions for writing to PLC 2016-05-26 10:17:19 -05:00
Patrick McDonagh
c393d346c9 Added alarms and popups 2016-05-24 21:12:15 -05:00
Patrick McDonagh
1e3fc4830b Merge remote-tracking branch 'origin/feature/IPP-22-pocloud-driver' 2016-05-24 20:55:02 -05:00
Patrick McDonagh
c73a8d1a17 Merge branch 'feature/IPP-22-pocloud-driver' 2016-05-23 17:49:13 -05:00
Patrick McDonagh
6d6f498148 Cleans up files 2016-05-12 23:55:38 -05:00
Patrick McDonagh
fca600c2aa Fixed IPP-32, IPP-33, IPP-34, IPP-35, IPP-36, IPP-37 2016-05-12 17:15:05 -05:00
Patrick McDonagh
e1cf7ba053 Fixes issue where pump is running, but status shows "Not Ready to Start" 2016-05-11 13:39:54 -05:00
Patrick McDonagh
57ebc3c6ab Fixes IPP-29. Attempts to clear E300 trips every 10 seconds when tripped 2016-05-10 14:24:12 -05:00
Patrick McDonagh
d7a70f5d20 IPP-28 and IPP-26 fixes. No longer restarts at weird times 2016-05-10 10:44:02 -05:00
Patrick McDonagh
247313ba42 Don't allow restarts if the unit switched to "Off" 2016-05-09 22:44:56 -05:00
Patrick McDonagh
3a0e47a96b Added password and changed config screen access rights to CONFIGSCREENS 2016-05-05 16:44:16 -05:00
Patrick McDonagh
381ed59f8d Fixed HMI Screen for setting Timer parameters 2016-04-27 11:40:24 -05:00
362 changed files with 39296 additions and 33804 deletions

View File

@@ -1,21 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{77f0df20-21d3-4637-a6d8-d269e0a5c640}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>MyRootNamespace</RootNamespace>
<AssemblyName>MyAssemblyName</AssemblyName>
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
<CAMProjectFile>Controller\PrjLibrary.mdb</CAMProjectFile>
<CAMProjectVersion>5.50.3</CAMProjectVersion>
<UniqueProjectId>{77f0df20-21d3-4637-a6d8-d269e0a5c640}</UniqueProjectId>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Online' ">
<OutputPath>bin\Online\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Simulation' " />
<Import Project="$(DevEnvDir)\PackagesToLoad\Targets\ISaGRAF.ISaGRAF5.targets" />
<Import Project="$(DevEnvDir)\PackagesToLoad\Targets\ISaGRAF.CCW.targets" />
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{77f0df20-21d3-4637-a6d8-d269e0a5c640}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>MyRootNamespace</RootNamespace>
<AssemblyName>MyAssemblyName</AssemblyName>
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
<CAMProjectFile>Controller\PrjLibrary.mdb</CAMProjectFile>
<CAMProjectVersion>5.50.5</CAMProjectVersion>
<UniqueProjectId>{77f0df20-21d3-4637-a6d8-d269e0a5c640}</UniqueProjectId>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Online' ">
<OutputPath>bin\Online\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Simulation' " />
<Import Project="$(DevEnvDir)\PackagesToLoad\Targets\ISaGRAF.ISaGRAF5.targets" />
<Import Project="$(DevEnvDir)\PackagesToLoad\Targets\ISaGRAF.CCW.targets" />
</Project>

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +0,0 @@
0::0021-0003::Checking database...
0::0047-0003::-------------------- Check project for resource(s) to pre-build: CONTROLLER --------------------
1::0002-0003::CONTROLLER: 0 error(s), 0 warning(s)
0::0021-0003::Checking database...
0::0007-0003::-------------------- Build project: CONTROLLER --------------------
1::0002-0003::CONTROLLER: 0 error(s), 0 warning(s)

View File

@@ -1,17 +1,17 @@
[MAIN]
NET=1
CONF=1
RES=1
[NET]
N1=CIPNetwork_1, CIPNetwork
[CONF]
C1=Micro820, 1
I1=1, ""
[RES]
R1=1, Micro820, 1
[MAIN]
NET=1
CONF=1
RES=1
[NET]
N1=CIPNetwork_1, CIPNetwork
[CONF]
C1=Micro820, 1
I1=1, ""
[RES]
R1=1, Micro820, 1

View File

@@ -0,0 +1,390 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Name="Controller" ElementGuid="6f7046bc-5d44-4aab-b0b3-376a7079d3f9" FileVersion="200.00.003" Comment="" SingleTextLine="template" DbVersion="05.50.05" LibraryType="Project" LegacyBinding="true" Password="" ReadOnly="false">
<FileHeader CompanyName="Rockwell Automation Canada, Ltd." ProductName="CAM ISaGRAF 5" CompanyUrl="http://www.isagraf.com" ProductVersion="0" />
<Libraries />
<DefineWords>
<DefineWord Name="IRQ_UFR" Define="1" Comment="" Access="ReadOnly" />
<DefineWord Name="IRQ_UPM0" Define="524288" Comment="" Access="ReadOnly" />
<DefineWord Name="IRQ_UPM1" Define="1048576" Comment="" Access="ReadOnly" />
<DefineWord Name="IRQ_STI0" Define="32768" Comment="" Access="ReadOnly" />
<DefineWord Name="IRQ_STI1" Define="65536" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET1" Define="1" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET2" Define="2" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET3" Define="3" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET4" Define="4" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET5" Define="5" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET6" Define="6" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET7" Define="7" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET8" Define="8" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET9" Define="9" Comment="" Access="ReadOnly" />
<DefineWord Name="DSET10" Define="10" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP1" Define="1" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP2" Define="2" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP3" Define="3" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP4" Define="4" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP5" Define="5" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP6" Define="6" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP7" Define="7" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP8" Define="8" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP9" Define="9" Comment="" Access="ReadOnly" />
<DefineWord Name="RCP10" Define="10" Comment="" Access="ReadOnly" />
</DefineWords>
<DataTypes>
<DataType Name="CIPEEOBJ_ATTRIBS" Comment="" Access="UserDefined">
<Struct FieldOrder="0" Order="1">
<Variable Name="RealEnergyConsumedOdometer" DataType="LREAL" Comment="" StringSize="0" Order="1" />
<Variable Name="RealEnergyGeneratedOdometer" DataType="LREAL" Comment="" StringSize="0" Order="2" />
<Variable Name="RealEnergyNetOdometer" DataType="LREAL" Comment="" StringSize="0" Order="3" />
<Variable Name="ReactiveEnergyConsumedOdometer" DataType="LREAL" Comment="" StringSize="0" Order="4" />
<Variable Name="ReactiveEnergyGeneratedOdometer" DataType="LREAL" Comment="" StringSize="0" Order="5" />
<Variable Name="ReactiveEnergyNetOdometer" DataType="LREAL" Comment="" StringSize="0" Order="6" />
<Variable Name="ApparentEnergyOdometer" DataType="LREAL" Comment="" StringSize="0" Order="7" />
<Variable Name="KiloampereHoursOdometer" DataType="LREAL" Comment="" StringSize="0" Order="8" />
<Variable Name="LineFrequency" DataType="REAL" Comment="" StringSize="0" Order="9" />
<Variable Name="L1Current" DataType="REAL" Comment="" StringSize="0" Order="10" />
<Variable Name="L2Current" DataType="REAL" Comment="" StringSize="0" Order="11" />
<Variable Name="L3Current" DataType="REAL" Comment="" StringSize="0" Order="12" />
<Variable Name="AverageCurrent" DataType="REAL" Comment="" StringSize="0" Order="13" />
<Variable Name="PercentCurrentUnbalance" DataType="REAL" Comment="" StringSize="0" Order="14" />
<Variable Name="L1NVoltage" DataType="REAL" Comment="" StringSize="0" Order="15" />
<Variable Name="L2NVoltage" DataType="REAL" Comment="" StringSize="0" Order="16" />
<Variable Name="L3NVoltage" DataType="REAL" Comment="" StringSize="0" Order="17" />
<Variable Name="AverageLNVoltage" DataType="REAL" Comment="" StringSize="0" Order="18" />
<Variable Name="L1L2Voltage" DataType="REAL" Comment="" StringSize="0" Order="19" />
<Variable Name="L2L3Voltage" DataType="REAL" Comment="" StringSize="0" Order="20" />
<Variable Name="L3L1Voltage" DataType="REAL" Comment="" StringSize="0" Order="21" />
<Variable Name="AverageLLVoltage" DataType="REAL" Comment="" StringSize="0" Order="22" />
<Variable Name="PercentVoltageUnbalance" DataType="REAL" Comment="" StringSize="0" Order="23" />
<Variable Name="L1RealPower" DataType="REAL" Comment="" StringSize="0" Order="24" />
<Variable Name="L2RealPower" DataType="REAL" Comment="" StringSize="0" Order="25" />
<Variable Name="L3RealPower" DataType="REAL" Comment="" StringSize="0" Order="26" />
<Variable Name="TotalRealPower" DataType="REAL" Comment="" StringSize="0" Order="27" />
<Variable Name="L1ReactivePower" DataType="REAL" Comment="" StringSize="0" Order="28" />
<Variable Name="L2ReactivePower" DataType="REAL" Comment="" StringSize="0" Order="29" />
<Variable Name="L3ReactivePower" DataType="REAL" Comment="" StringSize="0" Order="30" />
<Variable Name="TotalReactivePower" DataType="REAL" Comment="" StringSize="0" Order="31" />
<Variable Name="L1ApparentPower" DataType="REAL" Comment="" StringSize="0" Order="32" />
<Variable Name="L2ApparentPower" DataType="REAL" Comment="" StringSize="0" Order="33" />
<Variable Name="L3ApparentPower" DataType="REAL" Comment="" StringSize="0" Order="34" />
<Variable Name="TotalApparentPower" DataType="REAL" Comment="" StringSize="0" Order="35" />
<Variable Name="L1TruePowerFactor" DataType="REAL" Comment="" StringSize="0" Order="36" />
<Variable Name="L2TruePowerFactor" DataType="REAL" Comment="" StringSize="0" Order="37" />
<Variable Name="L3TruePowerFactor" DataType="REAL" Comment="" StringSize="0" Order="38" />
<Variable Name="ThreePhaseTruePowerFactor" DataType="REAL" Comment="" StringSize="0" Order="39" />
<Variable Name="PhaseRotation" DataType="STRING" Comment="" StringSize="4" Order="40" />
</Struct>
</DataType>
<DataType Name="MODBUSLOCADDR" Comment="" Access="ReadOnly">
<Array Order="6" DataType="WORD" StringSize="0">
<Dimension Lower="1" Upper="125" />
</Array>
</DataType>
<DataType Name="MODBUS2NODEADDR" Comment="" Access="ReadOnly">
<Array Order="7" DataType="USINT" StringSize="0">
<Dimension Lower="0" Upper="3" />
</Array>
</DataType>
<DataType Name="IPADDR" Comment="" Access="ReadOnly">
<Array Order="8" DataType="USINT" StringSize="0">
<Dimension Lower="0" Upper="3" />
</Array>
</DataType>
<DataType Name="CIPMEMBERID" Comment="" Access="ReadOnly">
<Array Order="9" DataType="UINT" StringSize="0">
<Dimension Lower="0" Upper="2" />
</Array>
</DataType>
<DataType Name="ASCIILOCADDR" Comment="" Access="ReadOnly">
<Array Order="10" DataType="BYTE" StringSize="0">
<Dimension Lower="1" Upper="82" />
</Array>
</DataType>
<DataType Name="IRQSTI" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="27">
<Variable Name="AS" DataType="BOOL" Comment="Auto start" StringSize="0" Order="1" />
<Variable Name="ENABLED" DataType="BOOL" Comment="Function Enabled" StringSize="0" Order="2" />
<Variable Name="PE" DataType="BOOL" Comment="Pending User Interrupt" StringSize="0" Order="3" />
<Variable Name="LS" DataType="BOOL" Comment="Lost User Interrupt" StringSize="0" Order="4" />
<Variable Name="EX" DataType="BOOL" Comment="Executing User Interrupt" StringSize="0" Order="5" />
<Variable Name="SP" DataType="UINT" Comment="Number of milliseconds between interrupts" StringSize="0" Order="6" />
</Struct>
</DataType>
<DataType Name="DOYDATA" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="28">
<Variable Name="Enable" DataType="BOOL" Comment="Enable (TRUE:enable; FALSE:disable)" StringSize="0" Order="1" />
<Variable Name="YearlyCenturial" DataType="BOOL" Comment="Timer Flag (FALSE: Yearly timer; TRUE: Centurial timer)" StringSize="0" Order="2" />
<Variable Name="YearOn" DataType="UINT" Comment="Year On value (must be in set [2000...2098])" StringSize="0" Order="3" />
<Variable Name="MonthOn" DataType="USINT" Comment="Month On value (must be in set [1...12])" StringSize="0" Order="4" />
<Variable Name="DayOn" DataType="USINT" Comment="Day On value (must be in set [1...31], determined by &quot;MonthOn&quot; value)" StringSize="0" Order="5" />
<Variable Name="YearOff" DataType="UINT" Comment="Year Off value (must be in set [2000...2098])" StringSize="0" Order="6" />
<Variable Name="MonthOff" DataType="USINT" Comment="Month Off value (must be in set [1...12])" StringSize="0" Order="7" />
<Variable Name="DayOff" DataType="USINT" Comment="Day Off value (must be in set [1...31], determined by &quot;MonthOff&quot; value)" StringSize="0" Order="8" />
</Struct>
</DataType>
<DataType Name="AWAAWT" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="29">
<Variable Name="Channel" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="Length" DataType="UINT" Comment="" StringSize="0" Order="2" />
<Variable Name="Cancel" DataType="BOOL" Comment="" StringSize="0" Order="3" />
</Struct>
</DataType>
<DataType Name="GAIN_PID" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="30">
<Variable Name="DirectActing" DataType="BOOL" Comment="''" StringSize="0" Order="1" />
<Variable Name="ProportionalGain" DataType="REAL" Comment="''" StringSize="0" Order="2" />
<Variable Name="TimeIntegral" DataType="REAL" Comment="''" StringSize="0" Order="3" />
<Variable Name="TimeDerivative" DataType="REAL" Comment="''" StringSize="0" Order="4" />
<Variable Name="DerivativeGain" DataType="REAL" Comment="''" StringSize="0" Order="5" />
</Struct>
</DataType>
<DataType Name="AHLI" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="31">
<Variable Name="Channel" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="ClrRts" DataType="BOOL" Comment="" StringSize="0" Order="2" />
<Variable Name="SetRts" DataType="BOOL" Comment="" StringSize="0" Order="3" />
<Variable Name="Cancel" DataType="BOOL" Comment="" StringSize="0" Order="4" />
</Struct>
</DataType>
<DataType Name="MODBUSLOCPARA" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="32">
<Variable Name="Channel" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="TriggerType" DataType="USINT" Comment="" StringSize="0" Order="2" />
<Variable Name="Cmd" DataType="USINT" Comment="" StringSize="0" Order="3" />
<Variable Name="ElementCnt" DataType="UINT" Comment="" StringSize="0" Order="4" />
</Struct>
</DataType>
<DataType Name="MODBUSTARPARA" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="33">
<Variable Name="Addr" DataType="UDINT" Comment="" StringSize="0" Order="1" />
<Variable Name="Node" DataType="USINT" Comment="" StringSize="0" Order="2" />
</Struct>
</DataType>
<DataType Name="MODBUS2LOCPARA" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="34">
<Variable Name="Channel" DataType="UINT" Comment="Local Channel number" StringSize="0" Order="1" />
<Variable Name="TriggerType" DataType="UDINT" Comment="0 = Trigger once, n = Cyclic Trigger" StringSize="0" Order="2" />
<Variable Name="Cmd" DataType="USINT" Comment="Modbus command" StringSize="0" Order="3" />
<Variable Name="ElementCnt" DataType="UINT" Comment="No. of elements to Read/Write" StringSize="0" Order="4" />
</Struct>
</DataType>
<DataType Name="MODBUS2TARPARA" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="35">
<Variable Name="Addr" DataType="UDINT" Comment="Target's Modbus data address" StringSize="0" Order="1" />
<Variable Name="NodeAddress" DataType="MODBUS2NODEADDR" Comment="Target node address" StringSize="0" Order="2" />
<Variable Name="Port" DataType="UINT" Comment="Target TCP port number" StringSize="0" Order="3" />
<Variable Name="UnitId" DataType="USINT" Comment="Unit Identifier" StringSize="0" Order="4" />
<Variable Name="MsgTimeout" DataType="UDINT" Comment="Message time out (in milliseconds)" StringSize="0" Order="5" />
<Variable Name="ConnTimeout" DataType="UDINT" Comment="Connection timeout (in milliseconds)" StringSize="0" Order="6" />
<Variable Name="ConnClose" DataType="BOOL" Comment="Connection closing behavior" StringSize="0" Order="7" />
</Struct>
</DataType>
<DataType Name="CIPCONTROLCFG" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="36">
<Variable Name="Cancel" DataType="BOOL" Comment="Abort the execution of message" StringSize="0" Order="1" />
<Variable Name="TriggerType" DataType="UDINT" Comment="0 - Trigger once, n - Cyclic trigger" StringSize="0" Order="2" />
<Variable Name="StrMode" DataType="USINT" Comment="reserved parameter" StringSize="0" Order="3" />
</Struct>
</DataType>
<DataType Name="CIPTARGETCFG" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="37">
<Variable Name="Path" DataType="STRING" Comment="CIP destination path" StringSize="80" Order="1" />
<Variable Name="CipConnMode" DataType="USINT" Comment="0 - Unconnected, 1 - Class3 connection" StringSize="0" Order="2" />
<Variable Name="UcmmTimeout" DataType="UDINT" Comment="Unconnected message time out." StringSize="0" Order="3" />
<Variable Name="ConnMsgTimeout" DataType="UDINT" Comment="Connected message time out." StringSize="0" Order="4" />
<Variable Name="ConnClose" DataType="BOOL" Comment="TRUE: Close CIP connection upon message completion" StringSize="0" Order="5" />
</Struct>
</DataType>
<DataType Name="CIPAPPCFG" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="38">
<Variable Name="Service" DataType="USINT" Comment="CIP Service code: 1 - 127" StringSize="0" Order="1" />
<Variable Name="Class" DataType="UINT" Comment="CIP Class ID: 1 - 65535" StringSize="0" Order="2" />
<Variable Name="Instance" DataType="UDINT" Comment="CIP Instance ID: 0 - 0xFFFFFFFF" StringSize="0" Order="3" />
<Variable Name="Attribute" DataType="UINT" Comment="CIP Attribute: 1 - 65535, 0 - No attribute" StringSize="0" Order="4" />
<Variable Name="MemberCnt" DataType="USINT" Comment="CIP Member ID count: 1 - 3, 0 - None" StringSize="0" Order="5" />
<Variable Name="MemberId" DataType="CIPMEMBERID" Comment="CIP Member ID: 0 - 65535" StringSize="0" Order="6" />
</Struct>
</DataType>
<DataType Name="CIPSYMBOLICCFG" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="39">
<Variable Name="Service" DataType="USINT" Comment="0 - Read, 1 - Write" StringSize="0" Order="1" />
<Variable Name="Symbol" DataType="STRING" Comment="Symbol name to read / write" StringSize="80" Order="2" />
<Variable Name="Count" DataType="UINT" Comment="Num of variables to read/ write. 1 - 65535." StringSize="0" Order="3" />
<Variable Name="DataType" DataType="USINT" Comment="Symbol data type" StringSize="0" Order="4" />
<Variable Name="Offset" DataType="USINT" Comment="Byte offset of variable to read / write. 0 - 0xffffffff" StringSize="0" Order="5" />
</Struct>
</DataType>
<DataType Name="CIPSTATUS" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="40">
<Variable Name="Error" DataType="BOOL" Comment="TRUE: message execution error" StringSize="0" Order="1" />
<Variable Name="ErrorID" DataType="UINT" Comment="Error code" StringSize="0" Order="2" />
<Variable Name="SubErrorID" DataType="UINT" Comment="Sub Error code" StringSize="0" Order="3" />
<Variable Name="ExtErrorID" DataType="UINT" Comment="CIP extended status error code" StringSize="0" Order="4" />
<Variable Name="StatusBits" DataType="UINT" Comment="Message execution status." StringSize="0" Order="5" />
</Struct>
</DataType>
<DataType Name="ABLACB" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="41">
<Variable Name="Channel" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="TriggerType" DataType="USINT" Comment="" StringSize="0" Order="2" />
<Variable Name="Cancel" DataType="BOOL" Comment="" StringSize="0" Order="3" />
</Struct>
</DataType>
<DataType Name="ARDARL" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="42">
<Variable Name="Channel" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="Length" DataType="UINT" Comment="" StringSize="0" Order="2" />
<Variable Name="Cancel" DataType="BOOL" Comment="" StringSize="0" Order="3" />
</Struct>
</DataType>
<DataType Name="AT_PARAM" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="43">
<Variable Name="Load" DataType="REAL" Comment="" StringSize="0" Order="1" />
<Variable Name="Deviation" DataType="REAL" Comment="" StringSize="0" Order="2" />
<Variable Name="Step" DataType="REAL" Comment="" StringSize="0" Order="3" />
<Variable Name="ATDynaSet" DataType="REAL" Comment="" StringSize="0" Order="4" />
<Variable Name="ATReset" DataType="BOOL" Comment="" StringSize="0" Order="5" />
</Struct>
</DataType>
<DataType Name="IRQUPM" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="44">
<Variable Name="AS" DataType="BOOL" Comment="Auto start" StringSize="0" Order="1" />
<Variable Name="ENABLED" DataType="BOOL" Comment="Function Enabled" StringSize="0" Order="2" />
<Variable Name="PE" DataType="BOOL" Comment="Pending User Interrupt" StringSize="0" Order="3" />
<Variable Name="LS" DataType="BOOL" Comment="Lost User Interrupt" StringSize="0" Order="4" />
<Variable Name="EX" DataType="BOOL" Comment="Executing User Interrupt" StringSize="0" Order="5" />
</Struct>
</DataType>
<DataType Name="TOWDATA" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="45">
<Variable Name="Enable" DataType="BOOL" Comment="Enable (TRUE:Enable; FALSE:Disable)" StringSize="0" Order="1" />
<Variable Name="DailyWeekly" DataType="BOOL" Comment="Type of Timer (FALSE:daily timer; TRUE:weekly timer)" StringSize="0" Order="2" />
<Variable Name="DayOn" DataType="USINT" Comment="Day of Week On value (must be in set [0...6])" StringSize="0" Order="3" />
<Variable Name="HourOn" DataType="USINT" Comment="Hour On value (must be in set [0...23])" StringSize="0" Order="4" />
<Variable Name="MinOn" DataType="USINT" Comment="Minute On value (must be in set [0...59])" StringSize="0" Order="5" />
<Variable Name="DayOff" DataType="USINT" Comment="Day of Week Off value (must be in set [0...6])" StringSize="0" Order="6" />
<Variable Name="HourOff" DataType="USINT" Comment="Hour Off value (must be in set [0...23])" StringSize="0" Order="7" />
<Variable Name="MinOff" DataType="USINT" Comment="Minute Off value (must be in set [0...59])" StringSize="0" Order="8" />
</Struct>
</DataType>
<DataType Name="MMCATNUM" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="46">
<Variable Name="CatalogStr" DataType="STRING" Comment="" StringSize="16" Order="1" />
</Struct>
</DataType>
<DataType Name="RTC" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="47">
<Variable Name="Year" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="Month" DataType="UINT" Comment="" StringSize="0" Order="2" />
<Variable Name="Day" DataType="UINT" Comment="" StringSize="0" Order="3" />
<Variable Name="Hours" DataType="UINT" Comment="" StringSize="0" Order="4" />
<Variable Name="Minutes" DataType="UINT" Comment="" StringSize="0" Order="5" />
<Variable Name="Seconds" DataType="UINT" Comment="" StringSize="0" Order="6" />
<Variable Name="DayOfWeek" DataType="UINT" Comment="" StringSize="0" Order="7" />
</Struct>
</DataType>
<DataType Name="MMINFO" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="48">
<Variable Name="MMCatalog" DataType="MMCATNUM" Comment="" StringSize="0" Order="1" />
<Variable Name="Series" DataType="UINT" Comment="" StringSize="0" Order="2" />
<Variable Name="Revision" DataType="UINT" Comment="" StringSize="0" Order="3" />
<Variable Name="UPValid" DataType="BOOL" Comment="" StringSize="0" Order="4" />
<Variable Name="ModeBehavior" DataType="BOOL" Comment="" StringSize="0" Order="5" />
<Variable Name="LoadAlways" DataType="BOOL" Comment="" StringSize="0" Order="6" />
<Variable Name="LoadOnError" DataType="BOOL" Comment="" StringSize="0" Order="7" />
<Variable Name="FaultOverride" DataType="BOOL" Comment="" StringSize="0" Order="8" />
<Variable Name="MMPresent" DataType="BOOL" Comment="" StringSize="0" Order="9" />
</Struct>
</DataType>
<DataType Name="SYSINFO" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="49">
<Variable Name="BootMajRev" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="BootMinRev" DataType="UINT" Comment="" StringSize="0" Order="2" />
<Variable Name="OSSeries" DataType="UINT" Comment="" StringSize="0" Order="3" />
<Variable Name="OSMajRev" DataType="UINT" Comment="" StringSize="0" Order="4" />
<Variable Name="OSMinRev" DataType="UINT" Comment="" StringSize="0" Order="5" />
<Variable Name="ModeBehaviour" DataType="BOOL" Comment="" StringSize="0" Order="6" />
<Variable Name="FaultOverride" DataType="BOOL" Comment="" StringSize="0" Order="7" />
<Variable Name="StrtUpProtect" DataType="BOOL" Comment="" StringSize="0" Order="8" />
<Variable Name="MajErrHalted" DataType="BOOL" Comment="" StringSize="0" Order="9" />
<Variable Name="MajErrCode" DataType="UINT" Comment="" StringSize="0" Order="10" />
<Variable Name="MajErrUFR" DataType="BOOL" Comment="" StringSize="0" Order="11" />
<Variable Name="UFRPouNum" DataType="UINT" Comment="" StringSize="0" Order="12" />
<Variable Name="MMLoadAlways" DataType="BOOL" Comment="" StringSize="0" Order="13" />
<Variable Name="MMLoadOnError" DataType="BOOL" Comment="" StringSize="0" Order="14" />
<Variable Name="MMPwdMismatch" DataType="BOOL" Comment="" StringSize="0" Order="15" />
<Variable Name="FreeRunClock" DataType="UINT" Comment="" StringSize="0" Order="16" />
<Variable Name="ForcesInstall" DataType="BOOL" Comment="" StringSize="0" Order="17" />
<Variable Name="EmInFilterMod" DataType="BOOL" Comment="" StringSize="0" Order="18" />
</Struct>
</DataType>
<DataType Name="ACLI" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="50">
<Variable Name="Channel" DataType="UINT" Comment="" StringSize="0" Order="1" />
<Variable Name="RXBuffer" DataType="BOOL" Comment="" StringSize="0" Order="2" />
<Variable Name="TXBuffer" DataType="BOOL" Comment="" StringSize="0" Order="3" />
</Struct>
</DataType>
<DataType Name="SOCKADDR_CFG" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="51">
<Variable Name="Port" DataType="UINT" Comment="TCP or UDP Port Number" StringSize="0" Order="1" />
<Variable Name="IPAddress" DataType="IPADDR" Comment="IP Address e.g specify 192.168.1.100, [0] = 192, [1] = 168, [2] = 1, [3] = 100" StringSize="0" Order="2" />
</Struct>
</DataType>
<DataType Name="SOCK_STATUS" Comment="" Access="ReadOnly">
<Struct FieldOrder="1" Order="52">
<Variable Name="ErrorID" DataType="USINT" Comment="Error Code" StringSize="0" Order="1" />
<Variable Name="SubErrorID" DataType="UINT" Comment="Sub Error code" StringSize="0" Order="2" />
<Variable Name="StatusBits" DataType="UINT" Comment="Socket FBs Execution Status" StringSize="0" Order="3" />
</Struct>
</DataType>
</DataTypes>
<Networks>
<Network Name="HSD" SingleTextLine="" LocalNet="true" DistributedNet="false" Comment="" UsedForBinding="true" BindingService="false" AllowWorkbenchCommunications="true">
<Parameters />
<ConnectionParameters />
<ResourceParameters>
<Parameter Name="ValidityTime" Format="Long" Default="0" Access="UserDefined" SingleTextLine="Produced Variables validity time." LocalNet="false" DistributedNet="false" />
</ResourceParameters>
<VariableParameters />
</Network>
<Network Name="ETCP" SingleTextLine="" LocalNet="false" DistributedNet="true" Comment="" UsedForBinding="true" BindingService="false" AllowWorkbenchCommunications="true">
<Parameters />
<ConnectionParameters>
<Parameter Name="IPAddress" Format="String" Default="" Access="UserDefined" SingleTextLine="IP address or Computer name" LocalNet="false" DistributedNet="true" />
</ConnectionParameters>
<ResourceParameters>
<Parameter Name="TimeOut" Format="Long" Default="10000" Access="UserDefined" SingleTextLine="Maximum allowed time (in ms) to transport a variable" LocalNet="false" DistributedNet="false" />
</ResourceParameters>
<VariableParameters />
</Network>
<Network Name="ISARSI" SingleTextLine="" LocalNet="false" DistributedNet="true" Comment="" UsedForBinding="true" BindingService="false" AllowWorkbenchCommunications="true">
<Parameters>
<Parameter Name="Port" Format="String" Default="COM1" Access="UserDefined" SingleTextLine="Workbench communication port" LocalNet="false" DistributedNet="true" />
<Parameter Name="BaudRate" Format="Long" Default="115200" Access="UserDefined" SingleTextLine="Data transfer baud rate" LocalNet="false" DistributedNet="true" />
<Parameter Name="Parity" Format="Character" Default="N" Access="UserDefined" SingleTextLine="N: None, E: Even, O: Odd" LocalNet="false" DistributedNet="true" />
<Parameter Name="StopBit" Format="Word" Default="1" Access="UserDefined" SingleTextLine="1 or 2 Stop bits" LocalNet="false" DistributedNet="true" />
<Parameter Name="HardwareFlowControl" Format="Boolean" Default="FALSE" Access="UserDefined" SingleTextLine="TRUE when using hardware flow control" LocalNet="false" DistributedNet="true" />
</Parameters>
<ConnectionParameters />
<ResourceParameters />
<VariableParameters />
</Network>
<Network Name="CIPNetwork" SingleTextLine="" LocalNet="false" DistributedNet="true" Comment="" UsedForBinding="true" BindingService="false" AllowWorkbenchCommunications="true">
<Parameters />
<ConnectionParameters>
<Parameter Name="CipPath" Format="String" Default="&quot;&quot;" Access="UserDefined" SingleTextLine="" LocalNet="false" DistributedNet="true" />
</ConnectionParameters>
<ResourceParameters />
<VariableParameters />
</Network>
</Networks>
<NetworkInstances>
<NetworkInstance NetworkName="CIPNetwork" Name="CIPNetwork1" />
</NetworkInstances>
<Targets>
<Target Name="2080LC2020QWBI" />
</Targets>
<Configurations>
<Configuration Name="Micro820" ElementGuid="939ebd4d-03fd-401c-ab85-9cdf9558de18" />
</Configurations>
</Project>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<DevicePreferences xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Micro800ConnectionPath>SHOPPC!AB_ETHIP-1\10.20.4.5</Micro800ConnectionPath>
<?xml version="1.0" encoding="utf-8"?>
<DevicePreferences xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Micro800ConnectionPath>PATRICKMCDO8E0A!HenryPump\10.20.4.40</Micro800ConnectionPath>
</DevicePreferences>

View File

@@ -1,47 +1,47 @@
<?xml version="1.0"?>
<DLGRCP_Config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MajorVersion>0</MajorVersion>
<MinorVersion>0</MinorVersion>
<DLGRCP_Set>
<DLGRCP_Set>
<ID>1</ID>
<DLGRCP_VarVA>
<DLGRCP_VarVA>
<ArrayLength>1</ArrayLength>
<VirtualAddress>1360</VirtualAddress>
<Name>DH_IntakeTemperature</Name>
<Index>1</Index>
<ISaDataType>REAL</ISaDataType>
<Valid>true</Valid>
<ErrorMsg />
<VarDataType>ISA_TYPREAL</VarDataType>
</DLGRCP_VarVA>
<DLGRCP_VarVA>
<ArrayLength>1</ArrayLength>
<VirtualAddress>1364</VirtualAddress>
<Name>DH_IntakePressure</Name>
<Index>2</Index>
<ISaDataType>REAL</ISaDataType>
<Valid>true</Valid>
<ErrorMsg />
<VarDataType>ISA_TYPREAL</VarDataType>
</DLGRCP_VarVA>
<DLGRCP_VarVA>
<ArrayLength>1</ArrayLength>
<VirtualAddress>2141</VirtualAddress>
<Name>DH_DownholeStatus</Name>
<Index>3</Index>
<ISaDataType>STRING</ISaDataType>
<Valid>true</Valid>
<ErrorMsg />
<VarDataType>ISA_TYPSTRING</VarDataType>
</DLGRCP_VarVA>
</DLGRCP_VarVA>
<Name>DSET1</Name>
<Description />
<Separator>COMMA</Separator>
<Valid>true</Valid>
<ErrorMsg />
</DLGRCP_Set>
</DLGRCP_Set>
<?xml version="1.0"?>
<DLGRCP_Config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MajorVersion>0</MajorVersion>
<MinorVersion>0</MinorVersion>
<DLGRCP_Set>
<DLGRCP_Set>
<ID>1</ID>
<DLGRCP_VarVA>
<DLGRCP_VarVA>
<ArrayLength>1</ArrayLength>
<VirtualAddress>1372</VirtualAddress>
<Name>DH_IntakeTemperature</Name>
<Index>1</Index>
<ISaDataType>REAL</ISaDataType>
<Valid>true</Valid>
<ErrorMsg />
<VarDataType>ISA_TYPREAL</VarDataType>
</DLGRCP_VarVA>
<DLGRCP_VarVA>
<ArrayLength>1</ArrayLength>
<VirtualAddress>1376</VirtualAddress>
<Name>DH_IntakePressure</Name>
<Index>2</Index>
<ISaDataType>REAL</ISaDataType>
<Valid>true</Valid>
<ErrorMsg />
<VarDataType>ISA_TYPREAL</VarDataType>
</DLGRCP_VarVA>
<DLGRCP_VarVA>
<ArrayLength>1</ArrayLength>
<VirtualAddress>2213</VirtualAddress>
<Name>DH_DownholeStatus</Name>
<Index>3</Index>
<ISaDataType>STRING</ISaDataType>
<Valid>true</Valid>
<ErrorMsg />
<VarDataType>ISA_TYPSTRING</VarDataType>
</DLGRCP_VarVA>
</DLGRCP_VarVA>
<Name>DSET1</Name>
<Description />
<Separator>COMMA</Separator>
<Valid>true</Valid>
<ErrorMsg />
</DLGRCP_Set>
</DLGRCP_Set>
</DLGRCP_Config>

File diff suppressed because it is too large Load Diff

View File

@@ -1,474 +1,474 @@
<modbusServer Version="2.0">
<modbusRegister name="DISCRETES_INPUTS">
<mapping variable="Auto_Mode" parent="Micro820" dataType="Bool" address="100001" va="0x470">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Test_Mode" parent="Micro820" dataType="Bool" address="100002" va="0x47a">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Hand_Mode" parent="Micro820" dataType="Bool" address="100003" va="0x46f">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Contactor_Status" parent="Micro820" dataType="Bool" address="100004" va="0x472">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Start_Permissive" parent="Micro820" dataType="Bool" address="100005" va="0x464">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Run_Permissive" parent="Micro820" dataType="Bool" address="100006" va="0x465">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_READ" parent="Micro820" dataType="Bool" address="100007" va="0x473">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_WRITE" parent="Micro820" dataType="Bool" address="100009" va="0x474">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="TripStatus" parent="Micro820" dataType="Bool" address="100010" va="0x478">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="WarningStatus" parent="Micro820" dataType="Bool" address="100011" va="0x479">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="OverloadTrip" parent="Micro820" dataType="Bool" address="100012" va="0x477">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="VoltageOK" parent="Micro820" dataType="Bool" address="100013" va="0x47b">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="TripResetCmd" parent="Micro820" dataType="Bool" address="100014" va="0x476">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_0" parent="Micro820" dataType="Bool" address="100015" va="0x45e">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_1" parent="Micro820" dataType="Bool" address="100016" va="0x45f">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_2" parent="Micro820" dataType="Bool" address="100017" va="0x460">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_3" parent="Micro820" dataType="Bool" address="100018" va="0x461">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_4" parent="Micro820" dataType="Bool" address="100019" va="0x468">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_5" parent="Micro820" dataType="Bool" address="100020" va="0x467">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Temp_Shutdown_Enabled" parent="Micro820" dataType="Bool" address="100021" va="0x469">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Pressure_Shutdown_Enabled" parent="Micro820" dataType="Bool" address="100022" va="0x46b">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Temp_Startup_Enabled" parent="Micro820" dataType="Bool" address="100023" va="0x46a">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Pressure_Startup_Enabled" parent="Micro820" dataType="Bool" address="100024" va="0x46c">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Start_Command" parent="Micro820" dataType="Bool" address="100025" va="0x462">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Stop_Command" parent="Micro820" dataType="Bool" address="100026" va="0x463">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Pressure_Switch_Enabled" parent="Micro820" dataType="Bool" address="100027" va="0x49c">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Downhole_Tool_Enabled" parent="Micro820" dataType="Bool" address="100028" va="0x49d">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_GF_GroundFaultInhibitTime" parent="Micro820" dataType="USInt" address="100056" va="0x4c3">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceInhibitTime" parent="Micro820" dataType="USInt" address="100064" va="0x4ca">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceInhibitTime" parent="Micro820" dataType="USInt" address="100072" va="0x4ca">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceTripDelay" parent="Micro820" dataType="USInt" address="100080" va="0x4cb">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceTripLevel" parent="Micro820" dataType="USInt" address="100088" va="0x4cc">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceWarningLevel" parent="Micro820" dataType="USInt" address="100096" va="0x4cd">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_JamInhibitTime" parent="Micro820" dataType="USInt" address="100104" va="0x4c5">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_JamTripDelay" parent="Micro820" dataType="USInt" address="100112" va="0x4c6">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_LineLossInhibitTime" parent="Micro820" dataType="USInt" address="100120" va="0x4dc">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_OvercurrentInhibitTime" parent="Micro820" dataType="USInt" address="100128" va="0x4d5">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_OvercurrentTripLevel" parent="Micro820" dataType="USInt" address="100136" va="0x4fe">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_OvercurrentWarningLevel" parent="Micro820" dataType="USInt" address="100144" va="0x4ff">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_StallEnabledTime" parent="Micro820" dataType="USInt" address="100152" va="0x4c4">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_TripEnableCurrent" parent="Micro820" dataType="UInt" address="100160" va="0x51a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_UndercurrentInhibitTime" parent="Micro820" dataType="USInt" address="100176" va="0x4ce">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_C_WarningEnableControl" parent="Micro820" dataType="UInt" address="100184" va="0x528">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_UndercurrentTripLevel" parent="Micro820" dataType="USInt" address="100200" va="0x4fc">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UndercurrentWarningLevel" parent="Micro820" dataType="USInt" address="100208" va="0x4fd">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UnderloadInhibitTime" parent="Micro820" dataType="USInt" address="100216" va="0x4c7">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UnderloadTripLevel" parent="Micro820" dataType="USInt" address="100224" va="0x4c8">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UnderloadWarningLevel" parent="Micro820" dataType="USInt" address="100232" va="0x4c9">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_WarningEnableCurrent" parent="Micro820" dataType="UInt" address="100240" va="0x522">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_PL_PhaseLossInhibitTime" parent="Micro820" dataType="USInt" address="100256" va="0x4c2">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_TCU_OLResetLevel" parent="Micro820" dataType="USInt" address="100264" va="0x4c0">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_TCU_OLWarningLevel" parent="Micro820" dataType="USInt" address="100272" va="0x4c1">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_TCU_TripClass" parent="Micro820" dataType="USInt" address="100280" va="0x4bf">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OverfrequencyInhibitTime" parent="Micro820" dataType="USInt" address="100288" va="0x4e8">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OverfrequencyTripLevel" parent="Micro820" dataType="USInt" address="100296" va="0x4e9">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OverfrequencyWarningLevel" parent="Micro820" dataType="USInt" address="100304" va="0x4ea">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OvervoltageInhibitTime" parent="Micro820" dataType="USInt" address="100312" va="0x4df">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_PhaseRotationInhibitTime" parent="Micro820" dataType="USInt" address="100320" va="0x4e0">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_PhaseRotationTripType" parent="Micro820" dataType="USInt" address="100328" va="0x4e1">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_TripEnableVoltage" parent="Micro820" dataType="UInt" address="100336" va="0x51c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyInhibitTime" parent="Micro820" dataType="USInt" address="100352" va="0x4e5">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyTripLevel" parent="Micro820" dataType="USInt" address="100360" va="0x4e6">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyWarningLevel" parent="Micro820" dataType="USInt" address="100368" va="0x4e7">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_UndervoltageInhibitTime" parent="Micro820" dataType="USInt" address="100376" va="0x4de">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceInhibitTime" parent="Micro820" dataType="USInt" address="100384" va="0x4e2">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceTripLevel" parent="Micro820" dataType="USInt" address="100392" va="0x4e3">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceWarningLevel" parent="Micro820" dataType="USInt" address="100400" va="0x4e4">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageMode" parent="Micro820" dataType="USInt" address="100408" va="0x4dd">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_WarningEnableVoltage" parent="Micro820" dataType="UInt" address="100416" va="0x524">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusControl_INT" parent="Micro820" dataType="UInt" address="100432" va="0x53e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusCurrent_INT" parent="Micro820" dataType="UInt" address="100448" va="0x538">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusPower_INT" parent="Micro820" dataType="UInt" address="100464" va="0x53c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusVoltage_INT" parent="Micro820" dataType="UInt" address="100480" va="0x53a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusControl_INT" parent="Micro820" dataType="UInt" address="100496" va="0x546">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusCurrent_INT" parent="Micro820" dataType="UInt" address="100512" va="0x540">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusPower_INT" parent="Micro820" dataType="UInt" address="100528" va="0x544">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusVoltage_INT" parent="Micro820" dataType="UInt" address="100544" va="0x542">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
</modbusRegister>
<modbusRegister name="HOLDING_REGISTERS">
<mapping variable="cfg_C_FLASetting" parent="Micro820" dataType="Real" address="400001" va="0x578">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_C_TripEnableControl" parent="Micro820" dataType="UInt" address="400003" va="0x520">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_GF_GroundFaultTripDelay" parent="Micro820" dataType="Real" address="400005" va="0x580">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_GF_GroundFaultTripLevel" parent="Micro820" dataType="Real" address="400007" va="0x584">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_GF_GroundFaultWarningDelay" parent="Micro820" dataType="Real" address="400009" va="0x588">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_CTPrimary" parent="Micro820" dataType="UInt" address="400011" va="0x530">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_CTSecondary" parent="Micro820" dataType="UInt" address="400012" va="0x532">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_JamTripLevel" parent="Micro820" dataType="UInt" address="400013" va="0x52c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_JamWarningLevel" parent="Micro820" dataType="UInt" address="400014" va="0x52e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_LineLossTripDelay" parent="Micro820" dataType="Real" address="400015" va="0x64c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_OvercurrentTripDelay" parent="Micro820" dataType="Real" address="400017" va="0x650">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_UndercurrentTripDelay" parent="Micro820" dataType="Real" address="400019" va="0x648">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_UnderloadTripDelay" parent="Micro820" dataType="Real" address="400021" va="0x590">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_PL_PhaseLossTripDelay" parent="Micro820" dataType="Real" address="400023" va="0x57c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OverfrequencyTripDelay" parent="Micro820" dataType="Real" address="400025" va="0x5d8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OvervoltageTripDelay" parent="Micro820" dataType="Real" address="400027" va="0x5c4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OvervoltageTripLevel" parent="Micro820" dataType="Real" address="400029" va="0x5c8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OvervoltageWarningLevel" parent="Micro820" dataType="Real" address="400031" va="0x5cc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_PTPrimary" parent="Micro820" dataType="UInt" address="400033" va="0x534">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_V_PTSecondary" parent="Micro820" dataType="UInt" address="400034" va="0x536">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyTripDelay" parent="Micro820" dataType="Real" address="400035" va="0x5d4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_UndervoltageTripDelay" parent="Micro820" dataType="Real" address="400037" va="0x5b8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_UndervoltageTripLevel" parent="Micro820" dataType="Real" address="400039" va="0x5bc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_UndervoltageWarningLevel" parent="Micro820" dataType="Real" address="400041" va="0x5c0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceTripDelay" parent="Micro820" dataType="Real" address="400043" va="0x5d0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_DischargePressure" parent="Micro820" dataType="UInt" address="400045" va="0x504">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_DischargeTemperature" parent="Micro820" dataType="UInt" address="400046" va="0x502">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_DownholeStatus_INT" parent="Micro820" dataType="UInt" address="400047" va="0x518">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_IntakePressure" parent="Micro820" dataType="Real" address="400048" va="0x554">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_IntakeTemperature" parent="Micro820" dataType="Real" address="400050" va="0x550">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_MaxIntakePressure_Forever" parent="Micro820" dataType="UInt" address="400052" va="0x516">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_MaxIntakePressure_Startup" parent="Micro820" dataType="UInt" address="400053" va="0x510">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_MaxIntakeTemperature_Forever" parent="Micro820" dataType="Real" address="400054" va="0x574">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_MaxIntakeTemperature_Startup" parent="Micro820" dataType="Real" address="400056" va="0x570">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_NumChannels" parent="Micro820" dataType="UInt" address="400058" va="0x50c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_PSIRating" parent="Micro820" dataType="UInt" address="400059" va="0x514">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_ToolType" parent="Micro820" dataType="UInt" address="400060" va="0x512">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_ToolVoltage" parent="Micro820" dataType="UInt" address="400061" va="0x50e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_VibrationX" parent="Micro820" dataType="UInt" address="400062" va="0x506">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_VibrationY" parent="Micro820" dataType="UInt" address="400063" va="0x508">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_WindingTemperature" parent="Micro820" dataType="UInt" address="400064" va="0x500">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="E300_kWh" parent="Micro820" dataType="Real" address="400065" va="0x568">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_kWh_Regen" parent="Micro820" dataType="Real" address="400067" va="0x56c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_SCAN_RATE" parent="Micro820" dataType="UInt" address="400069" va="0x50a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="Pressure_Shutdown" parent="Micro820" dataType="Real" address="400070" va="0x560">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Pressure_Startup" parent="Micro820" dataType="Real" address="400072" va="0x564">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Temp_Shutdown" parent="Micro820" dataType="Real" address="400074" va="0x558">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Temp_Startup" parent="Micro820" dataType="Real" address="400076" va="0x55c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_LineFrequency" parent="Micro820" dataType="Real" address="400078" va="0x654">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1Current" parent="Micro820" dataType="Real" address="400080" va="0x658">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2Current" parent="Micro820" dataType="Real" address="400082" va="0x65c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3Current" parent="Micro820" dataType="Real" address="400084" va="0x660">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_AverageCurrent" parent="Micro820" dataType="Real" address="400086" va="0x664">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_PercentCurrentUnbalance" parent="Micro820" dataType="Real" address="400088" va="0x668">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1NVoltage" parent="Micro820" dataType="Real" address="400090" va="0x66c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2NVoltage" parent="Micro820" dataType="Real" address="400092" va="0x670">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3NVoltage" parent="Micro820" dataType="Real" address="400094" va="0x674">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_AverageLNVoltage" parent="Micro820" dataType="Real" address="400096" va="0x678">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1L2Voltage" parent="Micro820" dataType="Real" address="400098" va="0x67c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2L3Voltage" parent="Micro820" dataType="Real" address="400100" va="0x680">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3L1Voltage" parent="Micro820" dataType="Real" address="400102" va="0x684">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_AverageLLVoltage" parent="Micro820" dataType="Real" address="400104" va="0x688">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1RealPower" parent="Micro820" dataType="Real" address="400106" va="0x690">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2RealPower" parent="Micro820" dataType="Real" address="400108" va="0x694">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3RealPower" parent="Micro820" dataType="Real" address="400110" va="0x698">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_TotalRealPower" parent="Micro820" dataType="Real" address="400112" va="0x69c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1ReactivePower" parent="Micro820" dataType="Real" address="400114" va="0x6a0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2ReactivePower" parent="Micro820" dataType="Real" address="400116" va="0x6a4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3ReactivePower" parent="Micro820" dataType="Real" address="400118" va="0x6a8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_TotalReactivePower" parent="Micro820" dataType="Real" address="400120" va="0x6ac">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1ApparentPower" parent="Micro820" dataType="Real" address="400122" va="0x6b0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2ApparentPower" parent="Micro820" dataType="Real" address="400124" va="0x6b4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3ApparentPower" parent="Micro820" dataType="Real" address="400126" va="0x6b8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_TotalApparentPower" parent="Micro820" dataType="Real" address="400128" va="0x6bc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1TruePowerFactor" parent="Micro820" dataType="Real" address="400130" va="0x6c0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2TruePowerFactor" parent="Micro820" dataType="Real" address="400132" va="0x6c4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3TruePowerFactor" parent="Micro820" dataType="Real" address="400134" va="0x6c8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_ThreePhaseTruePowerFactor" parent="Micro820" dataType="Real" address="400136" va="0x6cc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Pressure_In" parent="Micro820" dataType="Real" address="400138" va="0x6d0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
</modbusRegister>
<modbusServer Version="2.0">
<modbusRegister name="DISCRETES_INPUTS">
<mapping variable="Auto_Mode" parent="Micro820" dataType="Bool" address="100001" va="0x470">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Test_Mode" parent="Micro820" dataType="Bool" address="100002" va="0x47a">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Hand_Mode" parent="Micro820" dataType="Bool" address="100003" va="0x46f">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Contactor_Status" parent="Micro820" dataType="Bool" address="100004" va="0x472">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Start_Permissive" parent="Micro820" dataType="Bool" address="100005" va="0x464">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Run_Permissive" parent="Micro820" dataType="Bool" address="100006" va="0x465">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_READ" parent="Micro820" dataType="Bool" address="100007" va="0x473">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_WRITE" parent="Micro820" dataType="Bool" address="100009" va="0x474">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="TripStatus" parent="Micro820" dataType="Bool" address="100010" va="0x478">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="WarningStatus" parent="Micro820" dataType="Bool" address="100011" va="0x479">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="OverloadTrip" parent="Micro820" dataType="Bool" address="100012" va="0x477">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="VoltageOK" parent="Micro820" dataType="Bool" address="100013" va="0x47b">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="TripResetCmd" parent="Micro820" dataType="Bool" address="100014" va="0x476">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_0" parent="Micro820" dataType="Bool" address="100015" va="0x45e">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_1" parent="Micro820" dataType="Bool" address="100016" va="0x45f">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_2" parent="Micro820" dataType="Bool" address="100017" va="0x460">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_3" parent="Micro820" dataType="Bool" address="100018" va="0x461">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_4" parent="Micro820" dataType="Bool" address="100019" va="0x468">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="DigitalInput_Status_5" parent="Micro820" dataType="Bool" address="100020" va="0x467">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Temp_Shutdown_Enabled" parent="Micro820" dataType="Bool" address="100021" va="0x469">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Pressure_Shutdown_Enabled" parent="Micro820" dataType="Bool" address="100022" va="0x46b">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Temp_Startup_Enabled" parent="Micro820" dataType="Bool" address="100023" va="0x46a">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Pressure_Startup_Enabled" parent="Micro820" dataType="Bool" address="100024" va="0x46c">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Start_Command" parent="Micro820" dataType="Bool" address="100025" va="0x462">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Stop_Command" parent="Micro820" dataType="Bool" address="100026" va="0x463">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Pressure_Switch_Enabled" parent="Micro820" dataType="Bool" address="100027" va="0x49c">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="Downhole_Tool_Enabled" parent="Micro820" dataType="Bool" address="100028" va="0x49d">
<MBVarInfo ElemType="Bool" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_GF_GroundFaultInhibitTime" parent="Micro820" dataType="USInt" address="100056" va="0x4cb">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceInhibitTime" parent="Micro820" dataType="USInt" address="100064" va="0x4d2">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceInhibitTime" parent="Micro820" dataType="USInt" address="100072" va="0x4d2">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceTripDelay" parent="Micro820" dataType="USInt" address="100080" va="0x4d3">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceTripLevel" parent="Micro820" dataType="USInt" address="100088" va="0x4d4">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_CurrentImbalanceWarningLevel" parent="Micro820" dataType="USInt" address="100096" va="0x4d5">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_JamInhibitTime" parent="Micro820" dataType="USInt" address="100104" va="0x4cd">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_JamTripDelay" parent="Micro820" dataType="USInt" address="100112" va="0x4ce">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_LineLossInhibitTime" parent="Micro820" dataType="USInt" address="100120" va="0x4e4">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_OvercurrentInhibitTime" parent="Micro820" dataType="USInt" address="100128" va="0x4dd">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_OvercurrentTripLevel" parent="Micro820" dataType="USInt" address="100136" va="0x506">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_OvercurrentWarningLevel" parent="Micro820" dataType="USInt" address="100144" va="0x507">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_StallEnabledTime" parent="Micro820" dataType="USInt" address="100152" va="0x4cc">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_TripEnableCurrent" parent="Micro820" dataType="UInt" address="100160" va="0x522">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_UndercurrentInhibitTime" parent="Micro820" dataType="USInt" address="100176" va="0x4d6">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_C_WarningEnableControl" parent="Micro820" dataType="UInt" address="100184" va="0x530">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_UndercurrentTripLevel" parent="Micro820" dataType="USInt" address="100200" va="0x504">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UndercurrentWarningLevel" parent="Micro820" dataType="USInt" address="100208" va="0x505">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UnderloadInhibitTime" parent="Micro820" dataType="USInt" address="100216" va="0x4cf">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UnderloadTripLevel" parent="Micro820" dataType="USInt" address="100224" va="0x4d0">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_UnderloadWarningLevel" parent="Micro820" dataType="USInt" address="100232" va="0x4d1">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_I_WarningEnableCurrent" parent="Micro820" dataType="UInt" address="100240" va="0x52a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_PL_PhaseLossInhibitTime" parent="Micro820" dataType="USInt" address="100256" va="0x4ca">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_TCU_OLResetLevel" parent="Micro820" dataType="USInt" address="100264" va="0x4c8">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_TCU_OLWarningLevel" parent="Micro820" dataType="USInt" address="100272" va="0x4c9">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_TCU_TripClass" parent="Micro820" dataType="USInt" address="100280" va="0x4c7">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OverfrequencyInhibitTime" parent="Micro820" dataType="USInt" address="100288" va="0x4f0">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OverfrequencyTripLevel" parent="Micro820" dataType="USInt" address="100296" va="0x4f1">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OverfrequencyWarningLevel" parent="Micro820" dataType="USInt" address="100304" va="0x4f2">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_OvervoltageInhibitTime" parent="Micro820" dataType="USInt" address="100312" va="0x4e7">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_PhaseRotationInhibitTime" parent="Micro820" dataType="USInt" address="100320" va="0x4e8">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_PhaseRotationTripType" parent="Micro820" dataType="USInt" address="100328" va="0x4e9">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_TripEnableVoltage" parent="Micro820" dataType="UInt" address="100336" va="0x524">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyInhibitTime" parent="Micro820" dataType="USInt" address="100352" va="0x4ed">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyTripLevel" parent="Micro820" dataType="USInt" address="100360" va="0x4ee">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyWarningLevel" parent="Micro820" dataType="USInt" address="100368" va="0x4ef">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_UndervoltageInhibitTime" parent="Micro820" dataType="USInt" address="100376" va="0x4e6">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceInhibitTime" parent="Micro820" dataType="USInt" address="100384" va="0x4ea">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceTripLevel" parent="Micro820" dataType="USInt" address="100392" va="0x4eb">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceWarningLevel" parent="Micro820" dataType="USInt" address="100400" va="0x4ec">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_VoltageMode" parent="Micro820" dataType="USInt" address="100408" va="0x4e5">
<MBVarInfo ElemType="USInt" SubElemType="Any" DataTypeSize="1" />
</mapping>
<mapping variable="cfg_V_WarningEnableVoltage" parent="Micro820" dataType="UInt" address="100416" va="0x52c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusControl_INT" parent="Micro820" dataType="UInt" address="100432" va="0x546">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusCurrent_INT" parent="Micro820" dataType="UInt" address="100448" va="0x540">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusPower_INT" parent="Micro820" dataType="UInt" address="100464" va="0x544">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="TripStatusVoltage_INT" parent="Micro820" dataType="UInt" address="100480" va="0x542">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusControl_INT" parent="Micro820" dataType="UInt" address="100496" va="0x54e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusCurrent_INT" parent="Micro820" dataType="UInt" address="100512" va="0x548">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusPower_INT" parent="Micro820" dataType="UInt" address="100528" va="0x54c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="WarningStatusVoltage_INT" parent="Micro820" dataType="UInt" address="100544" va="0x54a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
</modbusRegister>
<modbusRegister name="HOLDING_REGISTERS">
<mapping variable="cfg_C_FLASetting" parent="Micro820" dataType="Real" address="400001" va="0x584">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_C_TripEnableControl" parent="Micro820" dataType="UInt" address="400003" va="0x528">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_GF_GroundFaultTripDelay" parent="Micro820" dataType="Real" address="400005" va="0x58c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_GF_GroundFaultTripLevel" parent="Micro820" dataType="Real" address="400007" va="0x590">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_GF_GroundFaultWarningDelay" parent="Micro820" dataType="Real" address="400009" va="0x594">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_CTPrimary" parent="Micro820" dataType="UInt" address="400011" va="0x538">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_CTSecondary" parent="Micro820" dataType="UInt" address="400012" va="0x53a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_JamTripLevel" parent="Micro820" dataType="UInt" address="400013" va="0x534">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_JamWarningLevel" parent="Micro820" dataType="UInt" address="400014" va="0x536">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_I_LineLossTripDelay" parent="Micro820" dataType="Real" address="400015" va="0x658">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_OvercurrentTripDelay" parent="Micro820" dataType="Real" address="400017" va="0x65c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_UndercurrentTripDelay" parent="Micro820" dataType="Real" address="400019" va="0x654">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_I_UnderloadTripDelay" parent="Micro820" dataType="Real" address="400021" va="0x59c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_PL_PhaseLossTripDelay" parent="Micro820" dataType="Real" address="400023" va="0x588">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OverfrequencyTripDelay" parent="Micro820" dataType="Real" address="400025" va="0x5e4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OvervoltageTripDelay" parent="Micro820" dataType="Real" address="400027" va="0x5d0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OvervoltageTripLevel" parent="Micro820" dataType="Real" address="400029" va="0x5d4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_OvervoltageWarningLevel" parent="Micro820" dataType="Real" address="400031" va="0x5d8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_PTPrimary" parent="Micro820" dataType="UInt" address="400033" va="0x53c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_V_PTSecondary" parent="Micro820" dataType="UInt" address="400034" va="0x53e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="cfg_V_UnderfrequencyTripDelay" parent="Micro820" dataType="Real" address="400035" va="0x5e0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_UndervoltageTripDelay" parent="Micro820" dataType="Real" address="400037" va="0x5c4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_UndervoltageTripLevel" parent="Micro820" dataType="Real" address="400039" va="0x5c8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_UndervoltageWarningLevel" parent="Micro820" dataType="Real" address="400041" va="0x5cc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="cfg_V_VoltageImbalanceTripDelay" parent="Micro820" dataType="Real" address="400043" va="0x5dc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_DischargePressure" parent="Micro820" dataType="UInt" address="400045" va="0x50c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_DischargeTemperature" parent="Micro820" dataType="UInt" address="400046" va="0x50a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_DownholeStatus_INT" parent="Micro820" dataType="UInt" address="400047" va="0x520">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_IntakePressure" parent="Micro820" dataType="Real" address="400048" va="0x560">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_IntakeTemperature" parent="Micro820" dataType="Real" address="400050" va="0x55c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_MaxIntakePressure_Forever" parent="Micro820" dataType="UInt" address="400052" va="0x51e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_MaxIntakePressure_Startup" parent="Micro820" dataType="UInt" address="400053" va="0x518">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_MaxIntakeTemperature_Forever" parent="Micro820" dataType="Real" address="400054" va="0x580">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_MaxIntakeTemperature_Startup" parent="Micro820" dataType="Real" address="400056" va="0x57c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="DH_NumChannels" parent="Micro820" dataType="UInt" address="400058" va="0x514">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_PSIRating" parent="Micro820" dataType="UInt" address="400059" va="0x51c">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_ToolType" parent="Micro820" dataType="UInt" address="400060" va="0x51a">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_ToolVoltage" parent="Micro820" dataType="UInt" address="400061" va="0x516">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_VibrationX" parent="Micro820" dataType="UInt" address="400062" va="0x50e">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_VibrationY" parent="Micro820" dataType="UInt" address="400063" va="0x510">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="DH_WindingTemperature" parent="Micro820" dataType="UInt" address="400064" va="0x508">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="E300_kWh" parent="Micro820" dataType="Real" address="400065" va="0x574">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_kWh_Regen" parent="Micro820" dataType="Real" address="400067" va="0x578">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_SCAN_RATE" parent="Micro820" dataType="UInt" address="400069" va="0x512">
<MBVarInfo ElemType="UInt" SubElemType="Any" DataTypeSize="2" />
</mapping>
<mapping variable="Pressure_Shutdown" parent="Micro820" dataType="Real" address="400070" va="0x56c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Pressure_Startup" parent="Micro820" dataType="Real" address="400072" va="0x570">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Temp_Shutdown" parent="Micro820" dataType="Real" address="400074" va="0x564">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Temp_Startup" parent="Micro820" dataType="Real" address="400076" va="0x568">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_LineFrequency" parent="Micro820" dataType="Real" address="400078" va="0x660">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1Current" parent="Micro820" dataType="Real" address="400080" va="0x664">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2Current" parent="Micro820" dataType="Real" address="400082" va="0x668">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3Current" parent="Micro820" dataType="Real" address="400084" va="0x66c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_AverageCurrent" parent="Micro820" dataType="Real" address="400086" va="0x670">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_PercentCurrentUnbalance" parent="Micro820" dataType="Real" address="400088" va="0x674">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1NVoltage" parent="Micro820" dataType="Real" address="400090" va="0x678">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2NVoltage" parent="Micro820" dataType="Real" address="400092" va="0x67c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3NVoltage" parent="Micro820" dataType="Real" address="400094" va="0x680">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_AverageLNVoltage" parent="Micro820" dataType="Real" address="400096" va="0x684">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1L2Voltage" parent="Micro820" dataType="Real" address="400098" va="0x688">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2L3Voltage" parent="Micro820" dataType="Real" address="400100" va="0x68c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3L1Voltage" parent="Micro820" dataType="Real" address="400102" va="0x690">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_AverageLLVoltage" parent="Micro820" dataType="Real" address="400104" va="0x694">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1RealPower" parent="Micro820" dataType="Real" address="400106" va="0x69c">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2RealPower" parent="Micro820" dataType="Real" address="400108" va="0x6a0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3RealPower" parent="Micro820" dataType="Real" address="400110" va="0x6a4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_TotalRealPower" parent="Micro820" dataType="Real" address="400112" va="0x6a8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1ReactivePower" parent="Micro820" dataType="Real" address="400114" va="0x6ac">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2ReactivePower" parent="Micro820" dataType="Real" address="400116" va="0x6b0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3ReactivePower" parent="Micro820" dataType="Real" address="400118" va="0x6b4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_TotalReactivePower" parent="Micro820" dataType="Real" address="400120" va="0x6b8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1ApparentPower" parent="Micro820" dataType="Real" address="400122" va="0x6bc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2ApparentPower" parent="Micro820" dataType="Real" address="400124" va="0x6c0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3ApparentPower" parent="Micro820" dataType="Real" address="400126" va="0x6c4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_TotalApparentPower" parent="Micro820" dataType="Real" address="400128" va="0x6c8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L1TruePowerFactor" parent="Micro820" dataType="Real" address="400130" va="0x6cc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L2TruePowerFactor" parent="Micro820" dataType="Real" address="400132" va="0x6d0">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_L3TruePowerFactor" parent="Micro820" dataType="Real" address="400134" va="0x6d4">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="E300_ThreePhaseTruePowerFactor" parent="Micro820" dataType="Real" address="400136" va="0x6d8">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
<mapping variable="Pressure_In" parent="Micro820" dataType="Real" address="400138" va="0x6dc">
<MBVarInfo ElemType="Real" SubElemType="Any" DataTypeSize="4" />
</mapping>
</modbusRegister>
</modbusServer>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<Configuration FileVersion="200.00.003" Name="Micro820" ElementGuid="939ebd4d-03fd-401c-ab85-9cdf9558de18" onlineBehavior="Always" TargetName="2080LC2020QWBI" Comment="" SingleTextLine="" Password="" IsEnhanced="false" IsEnhancedTarget="true" IsIsagraf3="false">
<Connections>
<Connection NetworkName="CIPNetwork1">
<Parameter Name="CipPath" Value="&quot;&quot;" />
</Connection>
</Connections>
<Resource Name="Micro820" ElementGuid="73aee734-b491-4716-bb8a-e114474b2e0b" />
</Configuration>

View File

@@ -1 +1 @@
CONTROL(161):FB,LINEARSCALE(159);
CONTROL(161):FB,EPOCH_TIME(163);FB,LINEARSCALE(159);F,RIGHT();F,MOD();

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
<?xml version="1.0" encoding="utf-8"?>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>

View File

@@ -0,0 +1,409 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="Control" ElementGuid="2e293809-2592-4360-9ef5-9e938bc7b980" Comment="" SingleTextLine="" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<Program />
<LocalVars>
<Variable Name="Pressure_Switch_OK" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="LinearScale_Pressure" DataType="LinearScale" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="TEST_started" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="cmd_AutoModeTimerStart" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="RTrig_AutoMode" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="Time_Until_Startup_Min" DataType="DINT" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="Time_Until_Startup_Sec" DataType="DINT" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="LinearScale_Flow" DataType="LinearScale" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="UNSTICK_STARTCOMMAND" DataType="TON" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="StartCommandTime" DataType="TIME" InitialValue="T#4s" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
</LocalVars>
<PouBody><![CDATA[PROGRAM Control
(* CURRENT TIME IN SECONDS... this doesn't really correlate to anything other than a second counter *)
(* time_CurrentTime := ANY_TO_DINT( __SYSVA_CYCLEDATE) / 1000;*)
CurrentTimeRTC(TRUE);
time_CurrentTime := ANY_TO_DINT(CurrentTimeRTC.Epoch);
(*IO Mapping*)
IF NOT Test_Mode THEN
Contactor_Status := DigitalInput_Status_0;
Start_Button := DigitalInput_Status_1;
Auto_Mode := DigitalInput_Status_2;
Hand_Mode := DigitalInput_Status_3;
LinearScale_Pressure(13107.0, 65535.0, Pressure_EU_Min, Pressure_EU_Max, ANY_TO_REAL(_IO_P1_AI_00));
LinearScale_Flow(13107.0, 65535.0, Flow_EU_Min, Flow_EU_Max, ANY_TO_REAL(_IO_P1_AI_01));
Pressure_In := LinearScale_Pressure.EU_Out;
Flowrate := LinearScale_Flow.EU_Out;
ELSE
Contactor_Status := cmd_Run;
VoltageOK := TRUE;
END_IF;
(* First Scan Variable Setting*)
IF (__SYSVA_FIRST_SCAN) THEN
Shutdown_Time := time_CurrentTime;
Device_Status:= 'Startup';
Device_Status_INT := 1;
Restart_Command := FALSE;
Restart_Allowed := FALSE;
Run_Permissive := FALSE;
Start_Permissive := FALSE;
cfg_READ := TRUE;
sts_TimerRunTimeSet := FALSE;
sts_TimerWaitTimeSet := FALSE;
sts_TimerCycleActive := FALSE;
sts_TripCountIncreased := FALSE;
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
(*Convert kWh and kWh regen to REAL from LREAL for HMI use *)
E300_kWh := ANY_TO_REAL(E300.RealEnergyConsumedOdometer);
E300_kWh_Regen := ANY_TO_REAL(E300.RealEnergyGeneratedOdometer);
IF Downhole_Tool_Enabled THEN
(*Modbus Mapping*)
DH_IntakeTemperature := ANY_TO_REAL(Modbus_Read0[2]) / 10.0;
DH_IntakePressure := ANY_TO_REAL(Modbus_Read0[3]) - 14.0;
DH_NumChannels := Modbus_Read0[10];
DH_ToolVoltage := Modbus_Read0[11];
DH_MaxIntakeTemperature_Startup := ANY_TO_REAL(Modbus_Read0[40]) / 10.0;
DH_MaxIntakePressure_Startup := Modbus_Read0[41];
DH_DownholeStatus_INT := Modbus_Read0[99];
DH_Fluid_Level := DH_IntakePressure * (1.0 / 0.433) * (1.0 / cfg_SpecificGravity) + cfg_DHSensorDistToIntake;
CASE Modbus_Read0[99] OF
0: DH_DownholeStatus := 'OK';
1: DH_DownholeStatus := 'Connecting';
2: DH_DownholeStatus := 'Open Circuit';
3: DH_DownholeStatus := 'Shorted';
4: DH_DownholeStatus := 'Cannot Decode';
ELSE
DH_DownholeStatus := 'Error';
END_CASE;
DH_ToolType := Modbus_Read1000[5];
DH_PSIRating := Modbus_Read1000[7] * 1000;
DH_MaxIntakeTemperature_Forever := ANY_TO_REAL(Modbus_Read1000[8]) / 10.0;
DH_MaxIntakePressure_Forever := Modbus_Read1000[9];
ELSE
DH_DownholeStatus := 'Disabled';
Pressure_Shutdown_Enabled := FALSE;
Pressure_Startup_Enabled := FALSE;
Temp_Shutdown_Enabled := FALSE;
Temp_Startup_Enabled := FALSE;
END_IF;
IF Pressure_Transducer_Enabled AND
Contactor_Status AND
Run_Time > Pressure_Alarm_Startup_Delay THEN
IF Pressure_In >= Pressure_Hi_SP THEN
Pressure_Hi := TRUE;
Pressure_Lo := FALSE;
ELSIF Pressure_in <= Pressure_Lo_SP THEN
Pressure_Hi := FALSE;
Pressure_Lo := TRUE;
ELSE
Pressure_Hi := FALSE;
Pressure_Lo := FALSE;
END_IF;
IF NOT Pressure_Hi AND NOT Pressure_Lo THEN
Pressure_OK := TRUE;
Pressure_OOT_Scans := 0;
Pressure_OOT_Seconds := 0;
ELSE
Pressure_OOT_Scans := Pressure_OOT_Scans + 1;
Pressure_OOT_Seconds := Pressure_OOT_Scans * ANY_TO_UDINT(__SYSVA_TCYCURRENT) / 1000;
END_IF;
IF Pressure_OOT_Seconds > Pressure_Alarm_Delay THEN
Pressure_OK := FALSE;
END_IF;
ELSE
Pressure_OK := TRUE;
END_IF;
alarm_TubingPressure := NOT Pressure_OK;
(* Start Permissive Status *)
SP_Pressure := (NOT Pressure_Startup_Enabled) OR (DH_IntakePressure > Pressure_Startup);
SP_Temperature := (NOT Temp_Startup_Enabled) OR (DH_IntakeTemperature < Temp_Startup);
SP_Mode := Hand_Mode OR Auto_Mode OR Test_Mode;
SP_Trip := NOT TripStatus;
SP_Voltage := VoltageOK;
(* Pressure should be above the startup pressure setpoint and temperature should be below the startup temp setpoint to begin*)
Start_Permissive := (SP_Pressure AND SP_Temperature AND SP_Mode AND SP_Trip AND SP_Voltage);
IF NOT Start_Permissive AND NOT cmd_Run THEN
Device_Status := 'Not ready to start';
Device_Status_INT := 2;
END_IF;
IF Device_Status = 'Not ready to start' AND Start_Permissive AND NOT cmd_Run THEN
Device_Status := 'Ready to start';
Device_Status_INT := 3;
END_IF;
(* Run Permissive Status *)
RP_Pressure := (NOT Pressure_Shutdown_Enabled) OR (DH_IntakePressure > Pressure_Shutdown);
RP_Temperature := (NOT Temp_Shutdown_Enabled) OR (DH_IntakeTemperature < Temp_Shutdown);
RP_Mode := Hand_Mode OR Auto_Mode OR Test_Mode;
RP_Trip := NOT TripStatus;
RP_TubingPressure := Pressure_OK;
(* Pressure should be be above the shutdown pressure and temperature should be below shutdown temp setpoint to continue to run *)
Run_Permissive := (RP_Pressure AND RP_Temperature AND RP_Mode AND RP_Trip AND RP_TubingPressure);
alarm_DHPressure := NOT RP_Pressure AND Contactor_Status;
alarm_DHTemperature := NOT RP_Temperature AND Contactor_Status;
IF (NOT Run_Permissive AND cmd_Run) THEN
Device_Status := 'Lost Run Permissive';
Device_Status_INT := 4;
Shutdown_Time := time_CurrentTime;
IF NOT sts_TripCountIncreased THEN
IF OverloadTrip THEN
val_OverloadTripCount := val_OverloadTripCount + 1;
ELSE
val_TripCount := val_TripCount + 1;
END_IF;
sts_TripCountIncreased := TRUE;
END_IF;
END_IF;
IF val_OverloadTripCount > cfg_OverloadTripCountLimit THEN
Restart_Allowed := FALSE;
Device_Status := 'Not able to restart - Overload Limit';
Device_Status_INT := 5;
sts_TripLimitOLReached := TRUE;
ELSE
sts_TripLimitOLReached := FALSE;
END_IF;
IF val_TripCount > cfg_TripCountLimit THEN
Restart_Allowed := FALSE;
Device_Status := 'Not able to restart - Trip Limit';
Device_Status_INT := 6;
sts_TripLimitReached := TRUE;
ELSE
sts_TripLimitReached := FALSE;
END_IF;
(* If the pump hasn't been started by the user, don't allow it to auto-restart *)
IF (Start_Command OR Start_Button) AND Start_Permissive THEN
TEST_started := TRUE;
Restart_Allowed := TRUE;
IF cfg_TimerModeEnabled THEN
sts_TimerCycleActive := TRUE;
cmd_TimerRun := TRUE;
END_IF;
END_IF;
(* If run permissive goes false, do not allow a restart for a specified amount of time *)
IF (Auto_Mode AND
(NOT OverloadTrip) AND
(NOT cmd_Run) AND
((sts_TimerCycleActive AND cmd_TimerRun) OR (NOT sts_TimerCycleActive)) AND
Restart_Allowed) THEN
IF (time_CurrentTime - Shutdown_Time) > Downtime_Time_Parameter THEN
IF (NOT Restart_Command) THEN
TripResetCmd := TRUE;
Restart_Command := TRUE;
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := TRUE;
sts_TimerCycleActive := TRUE;
END_IF;
END_IF;
ELSE
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := FALSE;
END_IF;
sts_TimerCycleActive := FALSE;
Restart_Command := FALSE;
Time_Until_Startup := Downtime_Time_Parameter - (time_CurrentTime - Shutdown_Time);
Time_Until_Startup_Min := Time_Until_Startup / 60;
Time_Until_Startup_Sec := Time_Until_Startup - (Time_Until_Startup_Min * 60);
Time_Until_Startup_String := ANY_TO_STRING(Time_Until_Startup_Min) + ':' + RIGHT('0' + ANY_TO_STRING(Time_Until_Startup_Sec),2);
IF Auto_Mode THEN
Device_Status := 'Waiting to attempt restart: ' + Time_Until_Startup_String;
Device_Status_INT := 7;
END_IF;
END_IF;
ELSIF (Auto_Mode AND
OverloadTrip AND
(NOT cmd_Run) AND
Restart_Allowed) THEN
IF (time_CurrentTime - Shutdown_Time) > Downtime_Time_Parameter_OL THEN
IF (NOT Restart_Command) THEN
Restart_Command := True;
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := TRUE;
sts_TimerCycleActive := TRUE;
END_IF;
END_IF;
ELSE
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := FALSE;
END_IF;
sts_TimerCycleActive := FALSE;
Restart_Command := FALSE;
Time_Until_Startup := Downtime_Time_Parameter_OL - (time_CurrentTime - Shutdown_Time);
Time_Until_Startup_Min := Time_Until_Startup / 60;
Time_Until_Startup_Sec := Time_Until_Startup - (Time_Until_Startup_Min * 60);
Time_Until_Startup_String := ANY_TO_STRING(Time_Until_Startup_Min) + ':' + RIGHT('0' + ANY_TO_STRING(Time_Until_Startup_Sec),2);
IF Auto_Mode THEN
Device_Status := 'Waiting to restart (OL Timer):' + Time_Until_Startup_String;
Device_Status_INT := 8;
END_IF;
END_IF;
END_IF;
(* Run only if commanded to start and start permissive is met or already running and not being told to stop *)
IF ((((Start_Button OR Start_Command OR cmd_TimerRun OR (Restart_Allowed AND Restart_Command)) AND Start_Permissive) OR cmd_Run) AND
(NOT Stop_Command) AND (cmd_TimerRun OR NOT cfg_TimerModeEnabled) AND Run_Permissive) THEN
cmd_Run := TRUE;
Restart_Command:= FALSE;
IF NOT Start_Time_Set THEN
Start_Time := time_CurrentTime;
Start_Time_Set := TRUE;
Device_Status := 'Running';
Device_Status_INT := 9;
sts_TripCountIncreased := FALSE;
END_IF;
IF Contactor_Status THEN
Run_Time := time_CurrentTime - Start_Time;
END_IF;
ELSE
cmd_Run := FALSE;
END_IF;
UNSTICK_STARTCOMMAND(Start_Command, StartCommandTime);
IF UNSTICK_STARTCOMMAND.Q THEN
Start_Command := FALSE;
END_IF;
IF cmd_Run AND NOT Contactor_Status THEN
IF NOT E300_Output_Enable THEN
IF E300_Output_Toggled THEN
E300_Output_Enable := TRUE;
END_IF;
E300_Output_Toggled := TRUE;
ELSE
IF NOT E300_Output_Toggled THEN
E300_Output_Enable := FALSE;
END_IF;
END_IF;
END_IF;
IF Contactor_Status AND (Run_Time > cfg_ClearTripCountAfter) THEN
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
IF NOT Auto_Mode THEN
Restart_Command := FALSE;
Restart_Allowed := FALSE;
END_IF;
(* Start up automatically if powering up in auto mode *)
RTrig_AutoMode(Auto_Mode);
IF RTrig_AutoMode.Q THEN
Restart_Allowed := TRUE;
Shutdown_Time := time_CurrentTime;
END_IF;
IF Stop_Command THEN
Restart_Allowed := FALSE;
Device_Status := 'User Stopped';
Device_Status_INT := 10;
sts_TimerCycleActive := FALSE;
val_OverloadTripCount := 0;
val_TripCount := 0;
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
IF NOT Contactor_Status THEN
Stop_Command := FALSE;
END_IF;
END_IF;
IF (NOT Hand_Mode) AND (NOT Auto_Mode) THEN
val_OverloadTripCount := 0;
val_TripCount := 0;
cmd_TimerRun := FALSE;
sts_TimerCycleActive := FALSE;
sts_TimerRunTimeSet := FALSE;
(*Restart_Allowed := FALSE;*)
END_IF;
IF NOT Contactor_Status THEN
Start_Time_Set := FALSE;
END_IF;
(* TIMER MODE *)
IF cfg_TimerModeEnabled AND sts_TimerCycleActive THEN
IF cmd_TimerRun THEN
IF NOT sts_TimerRunTimeSet THEN
sts_TimerRunTimeSet := TRUE;
time_TimerRunTime := time_CurrentTime;
END_IF;
timer_RunTimeLeft := (cfg_TimerRunTime * 60) - (time_CurrentTime - time_TimerRunTime);
IF timer_RunTimeLeft <= 0 THEN
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
END_IF;
time_RunTimeLeftMin := timer_RunTimeLeft / 60;
time_RunTimeLeftSec := timer_RunTimeLeft - (time_RunTimeLeftMin * 60);
ELSE
IF NOT sts_TimerWaitTimeSet THEN
sts_TimerWaitTimeSet := TRUE;
time_TimerWaitTime := time_CurrentTime;
Device_Status := 'Waiting to start (Timer Mode)';
Device_Status_INT := 11;
END_IF;
timer_WaitTimeLeft := (cfg_TimerWaitTime * 60) - (time_CurrentTime - time_TimerWaitTime);
IF timer_WaitTimeLeft <= 0 THEN
cmd_TimerRun := TRUE;
sts_TimerWaitTimeSet := FALSE;
END_IF;
time_WaitTimeLeftMin := timer_WaitTimeLeft / 60;
time_WaitTimeLeftSec := timer_WaitTimeLeft - (time_WaitTimeLeftMin * 60);
END_IF;
END_IF;
IF NOT cfg_TimerModeEnabled OR Stop_Command THEN
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
sts_TimerWaitTimeSet := FALSE;
END_IF;
IF TripStatus OR OverloadTrip THEN
IF MOD(time_CurrentTime, cfg_ResetCycle) = 0 THEN
TripResetCmd := TRUE;
END_IF;
END_IF;
END_PROGRAM]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

View File

@@ -1,303 +1,388 @@
PROGRAM Control
(* CURRENT TIME IN SECONDS... this doesn't really correlate to anything other than a second counter *)
time_CurrentTime := ANY_TO_DINT( __SYSVA_CYCLEDATE) / 1000;
(* First Scan Variable Setting*)
IF (__SYSVA_FIRST_SCAN) THEN
Shutdown_Time := time_CurrentTime;
Device_Status:= 'Startup';
Restart_Command := FALSE;
Restart_Allowed := FALSE;
Run_Permissive := FALSE;
Start_Permissive := FALSE;
cfg_READ := TRUE;
sts_TimerRunTimeSet := FALSE;
sts_TimerWaitTimeSet := FALSE;
sts_TimerCycleActive := FALSE;
sts_TripCountIncreased := FALSE;
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
(*Convert kWh and kWh regen to REAL from LREAL for HMI use *)
E300_kWh := ANY_TO_REAL(E300.RealEnergyConsumedOdometer);
E300_kWh_Regen := ANY_TO_REAL(E300.RealEnergyGeneratedOdometer);
IF Downhole_Tool_Enabled THEN
(*Modbus Mapping*)
DH_IntakeTemperature := ANY_TO_REAL(Modbus_Read0[2]) / 10.0;
DH_IntakePressure := ANY_TO_REAL(Modbus_Read0[3]);
DH_NumChannels := Modbus_Read0[10];
DH_ToolVoltage := Modbus_Read0[11];
DH_MaxIntakeTemperature_Startup := ANY_TO_REAL(Modbus_Read0[40]) / 10.0;
DH_MaxIntakePressure_Startup := Modbus_Read0[41];
DH_DownholeStatus_INT := Modbus_Read0[99];
DH_Fluid_Level := (DH_IntakePressure - 14.0) * (1.0 / 0.433) * (1.0 / cfg_SpecificGravity);
CASE Modbus_Read0[99] OF
0: DH_DownholeStatus := 'OK';
1: DH_DownholeStatus := 'Connecting';
2: DH_DownholeStatus := 'Open Circuit';
3: DH_DownholeStatus := 'Shorted';
4: DH_DownholeStatus := 'Cannot Decode';
ELSE
DH_DownholeStatus := 'Error';
END_CASE;
DH_ToolType := Modbus_Read1000[5];
DH_PSIRating := Modbus_Read1000[7] * 1000;
DH_MaxIntakeTemperature_Forever := ANY_TO_REAL(Modbus_Read1000[8]) / 10.0;
DH_MaxIntakePressure_Forever := Modbus_Read1000[9];
ELSE
DH_DownholeStatus := 'Disabled';
Pressure_Shutdown_Enabled := FALSE;
Pressure_Startup_Enabled := FALSE;
Temp_Shutdown_Enabled := FALSE;
Temp_Startup_Enabled := FALSE;
END_IF;
(*IO Mapping*)
IF NOT Test_Mode THEN
Contactor_Status := DigitalInput_Status_0;
Start_Button := DigitalInput_Status_1;
Auto_Mode := DigitalInput_Status_2;
Hand_Mode := DigitalInput_Status_3;
LinearScale_Pressure(13107.0, 65535.0, Pressure_EU_Min, Pressure_EU_Max, ANY_TO_REAL(_IO_P1_AI_00));
Pressure_In := LinearScale_Pressure.EU_Out;
ELSE
Contactor_Status := cmd_Run;
VoltageOK := TRUE;
END_IF;
IF Pressure_Transducer_Enabled AND
Contactor_Status AND
Run_Time > Pressure_Alarm_Startup_Delay THEN
IF Pressure_In >= Pressure_Hi_SP THEN
Pressure_Hi := TRUE;
Pressure_Lo := FALSE;
ELSIF Pressure_in <= Pressure_Lo_SP THEN
Pressure_Hi := FALSE;
Pressure_Lo := TRUE;
ELSE
Pressure_Hi := FALSE;
Pressure_Lo := FALSE;
END_IF;
IF NOT Pressure_Hi AND NOT Pressure_Lo THEN
Pressure_OK := TRUE;
Pressure_OOT_Scans := 0;
Pressure_OOT_Seconds := 0;
ELSE
Pressure_OOT_Scans := Pressure_OOT_Scans + 1;
Pressure_OOT_Seconds := Pressure_OOT_Scans * ANY_TO_UDINT(__SYSVA_TCYCURRENT) / 1000;
END_IF;
IF Pressure_OOT_Seconds > Pressure_Alarm_Delay THEN
Pressure_OK := FALSE;
END_IF;
ELSE
Pressure_OK := TRUE;
END_IF;
(* Start Permissive Status *)
SP_Pressure := (NOT Pressure_Startup_Enabled) OR (DH_IntakePressure > Pressure_Startup);
SP_Temperature := (NOT Temp_Startup_Enabled) OR (DH_IntakeTemperature < Temp_Startup);
SP_Mode := Hand_Mode OR Auto_Mode OR Test_Mode;
SP_Trip := NOT TripStatus;
SP_Voltage := VoltageOK;
(* Pressure should be above the startup pressure setpoint and temperature should be below the startup temp setpoint to begin*)
Start_Permissive := (SP_Pressure AND SP_Temperature AND SP_Mode AND SP_Trip AND SP_Voltage);
IF NOT Start_Permissive THEN
Device_Status := 'Not ready to start';
END_IF;
(* Run Permissive Status *)
RP_Pressure := (NOT Pressure_Shutdown_Enabled) OR (DH_IntakePressure > Pressure_Shutdown);
RP_Temperature := (NOT Temp_Shutdown_Enabled) OR (DH_IntakeTemperature < Temp_Shutdown);
RP_Mode := Hand_Mode OR Auto_Mode OR Test_Mode;
RP_Trip := NOT TripStatus;
RP_TubingPressure := Pressure_OK;
(* Pressure should be be above the shutdown pressure and temperature should be below shutdown temp setpoint to continue to run *)
Run_Permissive := (RP_Pressure AND RP_Temperature AND RP_Mode AND RP_Trip AND RP_TubingPressure);
IF (NOT Run_Permissive AND cmd_Run) THEN
Device_Status := 'Lost Run Permissive';
Shutdown_Time := time_CurrentTime;
IF NOT sts_TripCountIncreased THEN
IF OverloadTrip THEN
val_OverloadTripCount := val_OverloadTripCount + 1;
ELSE
val_TripCount := val_TripCount + 1;
END_IF;
sts_TripCountIncreased := TRUE;
END_IF;
END_IF;
IF val_OverloadTripCount > cfg_OverloadTripCountLimit THEN
Restart_Allowed := FALSE;
Device_Status := 'Not able to restart - Overload Limit';
END_IF;
IF val_TripCount > cfg_TripCountLimit THEN
Restart_Allowed := FALSE;
Device_Status := 'Not able to restart - Trip Limit';
END_IF;
(* If run permissive goes false, do not allow a restart for a specified amount of time *)
IF (Auto_Mode AND (NOT OverloadTrip) AND NOT cmd_Run AND Restart_Allowed) THEN
IF (time_CurrentTime - Shutdown_Time) > Downtime_Time_Parameter THEN
IF (NOT Restart_Command) THEN
TripResetCmd := TRUE;
Restart_Command := TRUE;
END_IF;
ELSE
(* Attempt to clear trip every 15 seconds *)
(*IF NOT Downtime_Timer.Q AND TripStatus THEN
Downtime_Timer(TRUE, Clear_Trip_Cycle);
ELSE
TripResetCmd := TRUE;
END_IF;*)
Restart_Command := FALSE;
Time_Until_Startup := Downtime_Time_Parameter - (time_CurrentTime - Shutdown_Time);
Time_Until_Startup_String := ANY_TO_STRING(Time_Until_Startup);
IF Auto_Mode THEN
Device_Status := 'Waiting to attempt restart ' + Time_Until_Startup_String;
END_IF;
END_IF;
ELSIF (Auto_Mode AND OverloadTrip AND NOT cmd_Run AND Restart_Allowed) THEN
IF (time_CurrentTime - Shutdown_Time) > Downtime_Time_Parameter_OL THEN
IF (NOT Restart_Command) THEN
Restart_Command := True;
END_IF;
ELSE
Restart_Command := FALSE;
Time_Until_Startup := Downtime_Time_Parameter_OL - (time_CurrentTime - Shutdown_Time);
Time_Until_Startup_String := ANY_TO_STRING(Time_Until_Startup);
IF Auto_Mode THEN
Device_Status := 'Waiting to restart (OL Timer)' + Time_Until_Startup_String;
END_IF;
END_IF;
END_IF;
(* Run only if commanded to start and start permissive is met or already running and not being told to stop *)
IF ((((Start_Button OR Start_Command OR cmd_TimerRun OR (Restart_Allowed AND Restart_Command)) AND Start_Permissive) OR cmd_Run) AND
(NOT Stop_Command) AND (cmd_TimerRun OR NOT cfg_TimerModeEnabled) AND Run_Permissive) THEN
cmd_Run := TRUE;
Restart_Command:= FALSE;
Start_Command := FALSE;
IF NOT Start_Time_Set THEN
Start_Time := time_CurrentTime;
Start_Time_Set := TRUE;
Device_Status := 'Running';
sts_TripCountIncreased := FALSE;
END_IF;
IF Contactor_Status THEN
Run_Time := time_CurrentTime - Start_Time;
END_IF;
ELSE
cmd_Run := FALSE;
END_IF;
IF cmd_Run AND NOT Contactor_Status THEN
Start_Command := TRUE;
Device_Status := 'Contactor Failure, Recovering';
IF NOT E300_Output_Enable THEN
IF E300_Output_Toggled THEN
E300_Output_Enable := TRUE;
END_IF;
E300_Output_Toggled := TRUE;
ELSE
IF NOT E300_Output_Toggled THEN
E300_Output_Enable := FALSE;
END_IF;
END_IF;
END_IF;
IF Contactor_Status AND (Run_Time > cfg_ClearTripCountAfter) THEN
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
IF NOT Auto_Mode THEN
Restart_Command := FALSE;
Restart_Allowed := FALSE;
END_IF;
(* If the pump hasn't been started by the user, don't allow it to auto-restart *)
IF (Start_Command OR Start_Button) AND Start_Permissive THEN
Restart_Allowed := TRUE;
IF cfg_TimerModeEnabled THEN
sts_TimerCycleActive := TRUE;
cmd_TimerRun := TRUE;
END_IF;
END_IF;
IF Stop_Command THEN
Restart_Allowed := FALSE;
Device_Status := 'User Stopped';
sts_TimerCycleActive := FALSE;
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
IF (NOT Hand_Mode) AND (NOT Auto_Mode) THEN
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
IF NOT Contactor_Status THEN
Start_Time_Set := FALSE;
END_IF;
(* TIMER MODE *)
IF cfg_TimerModeEnabled AND sts_TimerCycleActive THEN
IF cmd_TimerRun THEN
IF NOT sts_TimerRunTimeSet THEN
sts_TimerRunTimeSet := TRUE;
time_TimerRunTime := time_CurrentTime;
END_IF;
timer_RunTimeLeft := (cfg_TimerRunTime * 60) - (time_CurrentTime - time_TimerRunTime);
IF timer_RunTimeLeft <= 0 THEN
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
END_IF;
ELSE
IF NOT sts_TimerWaitTimeSet THEN
sts_TimerWaitTimeSet := TRUE;
time_TimerWaitTime := time_CurrentTime;
Device_Status := 'Waiting to start (Timer Mode)';
END_IF;
timer_WaitTimeLeft := (cfg_TimerWaitTime * 60) - (time_CurrentTime - time_TimerWaitTime);
IF timer_WaitTimeLeft <= 0 THEN
cmd_TimerRun := TRUE;
sts_TimerWaitTimeSet := FALSE;
END_IF;
END_IF;
END_IF;
IF NOT cfg_TimerModeEnabled OR Stop_Command THEN
cmd_TimerRun := FALSE;
END_IF;
PROGRAM Control
(* CURRENT TIME IN SECONDS... this doesn't really correlate to anything other than a second counter *)
(* time_CurrentTime := ANY_TO_DINT( __SYSVA_CYCLEDATE) / 1000;*)
CurrentTimeRTC(TRUE);
time_CurrentTime := ANY_TO_DINT(CurrentTimeRTC.Epoch);
(*IO Mapping*)
IF NOT Test_Mode THEN
Contactor_Status := DigitalInput_Status_0;
Start_Button := DigitalInput_Status_1;
Auto_Mode := DigitalInput_Status_2;
Hand_Mode := DigitalInput_Status_3;
LinearScale_Pressure(13107.0, 65535.0, Pressure_EU_Min, Pressure_EU_Max, ANY_TO_REAL(_IO_P1_AI_00));
LinearScale_Flow(13107.0, 65535.0, Flow_EU_Min, Flow_EU_Max, ANY_TO_REAL(_IO_P1_AI_01));
Pressure_In := LinearScale_Pressure.EU_Out;
Flowrate := LinearScale_Flow.EU_Out;
ELSE
Contactor_Status := cmd_Run;
VoltageOK := TRUE;
END_IF;
(* First Scan Variable Setting*)
IF (__SYSVA_FIRST_SCAN) THEN
Shutdown_Time := time_CurrentTime;
Device_Status:= 'Startup';
Device_Status_INT := 1;
Restart_Command := FALSE;
Restart_Allowed := FALSE;
Run_Permissive := FALSE;
Start_Permissive := FALSE;
cfg_READ := TRUE;
sts_TimerRunTimeSet := FALSE;
sts_TimerWaitTimeSet := FALSE;
sts_TimerCycleActive := FALSE;
sts_TripCountIncreased := FALSE;
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
(*Convert kWh and kWh regen to REAL from LREAL for HMI use *)
E300_kWh := ANY_TO_REAL(E300.RealEnergyConsumedOdometer);
E300_kWh_Regen := ANY_TO_REAL(E300.RealEnergyGeneratedOdometer);
IF Downhole_Tool_Enabled THEN
(*Modbus Mapping*)
DH_IntakeTemperature := ANY_TO_REAL(Modbus_Read0[2]) / 10.0;
DH_IntakePressure := ANY_TO_REAL(Modbus_Read0[3]) - 14.0;
DH_NumChannels := Modbus_Read0[10];
DH_ToolVoltage := Modbus_Read0[11];
DH_MaxIntakeTemperature_Startup := ANY_TO_REAL(Modbus_Read0[40]) / 10.0;
DH_MaxIntakePressure_Startup := Modbus_Read0[41];
DH_DownholeStatus_INT := Modbus_Read0[99];
DH_Fluid_Level := DH_IntakePressure * (1.0 / 0.433) * (1.0 / cfg_SpecificGravity) + cfg_DHSensorDistToIntake;
CASE Modbus_Read0[99] OF
0: DH_DownholeStatus := 'OK';
1: DH_DownholeStatus := 'Connecting';
2: DH_DownholeStatus := 'Open Circuit';
3: DH_DownholeStatus := 'Shorted';
4: DH_DownholeStatus := 'Cannot Decode';
ELSE
DH_DownholeStatus := 'Error';
END_CASE;
DH_ToolType := Modbus_Read1000[5];
DH_PSIRating := Modbus_Read1000[7] * 1000;
DH_MaxIntakeTemperature_Forever := ANY_TO_REAL(Modbus_Read1000[8]) / 10.0;
DH_MaxIntakePressure_Forever := Modbus_Read1000[9];
ELSE
DH_DownholeStatus := 'Disabled';
Pressure_Shutdown_Enabled := FALSE;
Pressure_Startup_Enabled := FALSE;
Temp_Shutdown_Enabled := FALSE;
Temp_Startup_Enabled := FALSE;
END_IF;
IF Pressure_Transducer_Enabled AND
Contactor_Status AND
Run_Time > Pressure_Alarm_Startup_Delay THEN
IF Pressure_In >= Pressure_Hi_SP THEN
Pressure_Hi := TRUE;
Pressure_Lo := FALSE;
ELSIF Pressure_in <= Pressure_Lo_SP THEN
Pressure_Hi := FALSE;
Pressure_Lo := TRUE;
ELSE
Pressure_Hi := FALSE;
Pressure_Lo := FALSE;
END_IF;
IF NOT Pressure_Hi AND NOT Pressure_Lo THEN
Pressure_OK := TRUE;
Pressure_OOT_Scans := 0;
Pressure_OOT_Seconds := 0;
ELSE
Pressure_OOT_Scans := Pressure_OOT_Scans + 1;
Pressure_OOT_Seconds := Pressure_OOT_Scans * ANY_TO_UDINT(__SYSVA_TCYCURRENT) / 1000;
END_IF;
IF Pressure_OOT_Seconds > Pressure_Alarm_Delay THEN
Pressure_OK := FALSE;
END_IF;
ELSE
Pressure_OK := TRUE;
END_IF;
alarm_TubingPressure := NOT Pressure_OK;
(* Start Permissive Status *)
SP_Pressure := (NOT Pressure_Startup_Enabled) OR (DH_IntakePressure > Pressure_Startup);
SP_Temperature := (NOT Temp_Startup_Enabled) OR (DH_IntakeTemperature < Temp_Startup);
SP_Mode := Hand_Mode OR Auto_Mode OR Test_Mode;
SP_Trip := NOT TripStatus;
SP_Voltage := VoltageOK;
(* Pressure should be above the startup pressure setpoint and temperature should be below the startup temp setpoint to begin*)
Start_Permissive := (SP_Pressure AND SP_Temperature AND SP_Mode AND SP_Trip AND SP_Voltage);
IF NOT Start_Permissive AND NOT cmd_Run THEN
Device_Status := 'Not ready to start';
Device_Status_INT := 2;
END_IF;
IF Device_Status = 'Not ready to start' AND Start_Permissive AND NOT cmd_Run THEN
Device_Status := 'Ready to start';
Device_Status_INT := 3;
END_IF;
(* Run Permissive Status *)
RP_Pressure := (NOT Pressure_Shutdown_Enabled) OR (DH_IntakePressure > Pressure_Shutdown);
RP_Temperature := (NOT Temp_Shutdown_Enabled) OR (DH_IntakeTemperature < Temp_Shutdown);
RP_Mode := Hand_Mode OR Auto_Mode OR Test_Mode;
RP_Trip := NOT TripStatus;
RP_TubingPressure := Pressure_OK;
(* Pressure should be be above the shutdown pressure and temperature should be below shutdown temp setpoint to continue to run *)
Run_Permissive := (RP_Pressure AND RP_Temperature AND RP_Mode AND RP_Trip AND RP_TubingPressure);
alarm_DHPressure := NOT RP_Pressure AND Contactor_Status;
alarm_DHTemperature := NOT RP_Temperature AND Contactor_Status;
IF (NOT Run_Permissive AND cmd_Run) THEN
Device_Status := 'Lost Run Permissive';
Device_Status_INT := 4;
Shutdown_Time := time_CurrentTime;
IF NOT sts_TripCountIncreased THEN
IF OverloadTrip THEN
val_OverloadTripCount := val_OverloadTripCount + 1;
ELSE
val_TripCount := val_TripCount + 1;
END_IF;
sts_TripCountIncreased := TRUE;
END_IF;
END_IF;
IF val_OverloadTripCount > cfg_OverloadTripCountLimit THEN
Restart_Allowed := FALSE;
Device_Status := 'Not able to restart - Overload Limit';
Device_Status_INT := 5;
sts_TripLimitOLReached := TRUE;
ELSE
sts_TripLimitOLReached := FALSE;
END_IF;
IF val_TripCount > cfg_TripCountLimit THEN
Restart_Allowed := FALSE;
Device_Status := 'Not able to restart - Trip Limit';
Device_Status_INT := 6;
sts_TripLimitReached := TRUE;
ELSE
sts_TripLimitReached := FALSE;
END_IF;
(* If the pump hasn't been started by the user, don't allow it to auto-restart *)
IF (Start_Command OR Start_Button) AND Start_Permissive THEN
TEST_started := TRUE;
Restart_Allowed := TRUE;
IF cfg_TimerModeEnabled THEN
sts_TimerCycleActive := TRUE;
cmd_TimerRun := TRUE;
END_IF;
END_IF;
(* If run permissive goes false, do not allow a restart for a specified amount of time *)
IF (Auto_Mode AND
(NOT OverloadTrip) AND
(NOT cmd_Run) AND
((sts_TimerCycleActive AND cmd_TimerRun) OR (NOT sts_TimerCycleActive)) AND
Restart_Allowed) THEN
IF (time_CurrentTime - Shutdown_Time) > Downtime_Time_Parameter THEN
IF (NOT Restart_Command) THEN
TripResetCmd := TRUE;
Restart_Command := TRUE;
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := TRUE;
sts_TimerCycleActive := TRUE;
END_IF;
END_IF;
ELSE
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := FALSE;
END_IF;
sts_TimerCycleActive := FALSE;
Restart_Command := FALSE;
Time_Until_Startup := Downtime_Time_Parameter - (time_CurrentTime - Shutdown_Time);
Time_Until_Startup_Min := Time_Until_Startup / 60;
Time_Until_Startup_Sec := Time_Until_Startup - (Time_Until_Startup_Min * 60);
Time_Until_Startup_String := ANY_TO_STRING(Time_Until_Startup_Min) + ':' + RIGHT('0' + ANY_TO_STRING(Time_Until_Startup_Sec),2);
IF Auto_Mode THEN
Device_Status := 'Waiting to attempt restart: ' + Time_Until_Startup_String;
Device_Status_INT := 7;
END_IF;
END_IF;
ELSIF (Auto_Mode AND
OverloadTrip AND
(NOT cmd_Run) AND
Restart_Allowed) THEN
IF (time_CurrentTime - Shutdown_Time) > Downtime_Time_Parameter_OL THEN
IF (NOT Restart_Command) THEN
Restart_Command := True;
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := TRUE;
sts_TimerCycleActive := TRUE;
END_IF;
END_IF;
ELSE
IF cfg_TimerModeEnabled THEN
cmd_TimerRun := FALSE;
END_IF;
sts_TimerCycleActive := FALSE;
Restart_Command := FALSE;
Time_Until_Startup := Downtime_Time_Parameter_OL - (time_CurrentTime - Shutdown_Time);
Time_Until_Startup_Min := Time_Until_Startup / 60;
Time_Until_Startup_Sec := Time_Until_Startup - (Time_Until_Startup_Min * 60);
Time_Until_Startup_String := ANY_TO_STRING(Time_Until_Startup_Min) + ':' + RIGHT('0' + ANY_TO_STRING(Time_Until_Startup_Sec),2);
IF Auto_Mode THEN
Device_Status := 'Waiting to restart (OL Timer):' + Time_Until_Startup_String;
Device_Status_INT := 8;
END_IF;
END_IF;
END_IF;
(* Run only if commanded to start and start permissive is met or already running and not being told to stop *)
IF ((((Start_Button OR Start_Command OR cmd_TimerRun OR (Restart_Allowed AND Restart_Command)) AND Start_Permissive) OR cmd_Run) AND
(NOT Stop_Command) AND (cmd_TimerRun OR NOT cfg_TimerModeEnabled) AND Run_Permissive) THEN
cmd_Run := TRUE;
Restart_Command:= FALSE;
IF NOT Start_Time_Set THEN
Start_Time := time_CurrentTime;
Start_Time_Set := TRUE;
Device_Status := 'Running';
Device_Status_INT := 9;
sts_TripCountIncreased := FALSE;
END_IF;
IF Contactor_Status THEN
Run_Time := time_CurrentTime - Start_Time;
END_IF;
ELSE
cmd_Run := FALSE;
END_IF;
UNSTICK_STARTCOMMAND(Start_Command, StartCommandTime);
IF UNSTICK_STARTCOMMAND.Q THEN
Start_Command := FALSE;
END_IF;
IF cmd_Run AND NOT Contactor_Status THEN
IF NOT E300_Output_Enable THEN
IF E300_Output_Toggled THEN
E300_Output_Enable := TRUE;
END_IF;
E300_Output_Toggled := TRUE;
ELSE
IF NOT E300_Output_Toggled THEN
E300_Output_Enable := FALSE;
END_IF;
END_IF;
END_IF;
IF Contactor_Status AND (Run_Time > cfg_ClearTripCountAfter) THEN
val_OverloadTripCount := 0;
val_TripCount := 0;
END_IF;
IF NOT Auto_Mode THEN
Restart_Command := FALSE;
Restart_Allowed := FALSE;
END_IF;
(* Start up automatically if powering up in auto mode *)
RTrig_AutoMode(Auto_Mode);
IF RTrig_AutoMode.Q THEN
Restart_Allowed := TRUE;
Shutdown_Time := time_CurrentTime;
END_IF;
IF Stop_Command THEN
Restart_Allowed := FALSE;
Device_Status := 'User Stopped';
Device_Status_INT := 10;
sts_TimerCycleActive := FALSE;
val_OverloadTripCount := 0;
val_TripCount := 0;
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
IF NOT Contactor_Status THEN
Stop_Command := FALSE;
END_IF;
END_IF;
IF (NOT Hand_Mode) AND (NOT Auto_Mode) THEN
val_OverloadTripCount := 0;
val_TripCount := 0;
cmd_TimerRun := FALSE;
sts_TimerCycleActive := FALSE;
sts_TimerRunTimeSet := FALSE;
(*Restart_Allowed := FALSE;*)
END_IF;
IF NOT Contactor_Status THEN
Start_Time_Set := FALSE;
END_IF;
(* TIMER MODE *)
IF cfg_TimerModeEnabled AND sts_TimerCycleActive THEN
IF cmd_TimerRun THEN
IF NOT sts_TimerRunTimeSet THEN
sts_TimerRunTimeSet := TRUE;
time_TimerRunTime := time_CurrentTime;
END_IF;
timer_RunTimeLeft := (cfg_TimerRunTime * 60) - (time_CurrentTime - time_TimerRunTime);
IF timer_RunTimeLeft <= 0 THEN
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
END_IF;
time_RunTimeLeftMin := timer_RunTimeLeft / 60;
time_RunTimeLeftSec := timer_RunTimeLeft - (time_RunTimeLeftMin * 60);
ELSE
IF NOT sts_TimerWaitTimeSet THEN
sts_TimerWaitTimeSet := TRUE;
time_TimerWaitTime := time_CurrentTime;
Device_Status := 'Waiting to start (Timer Mode)';
Device_Status_INT := 11;
END_IF;
timer_WaitTimeLeft := (cfg_TimerWaitTime * 60) - (time_CurrentTime - time_TimerWaitTime);
IF timer_WaitTimeLeft <= 0 THEN
cmd_TimerRun := TRUE;
sts_TimerWaitTimeSet := FALSE;
END_IF;
time_WaitTimeLeftMin := timer_WaitTimeLeft / 60;
time_WaitTimeLeftSec := timer_WaitTimeLeft - (time_WaitTimeLeftMin * 60);
END_IF;
END_IF;
IF NOT cfg_TimerModeEnabled OR Stop_Command THEN
cmd_TimerRun := FALSE;
sts_TimerRunTimeSet := FALSE;
sts_TimerWaitTimeSet := FALSE;
END_IF;
IF TripStatus OR OverloadTrip THEN
IF MOD(time_CurrentTime, cfg_ResetCycle) = 0 THEN
TripResetCmd := TRUE;
END_IF;
END_IF;
END_PROGRAM

View File

@@ -1,352 +1,352 @@
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __DINT_NULL
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000001
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000002
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000003
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000004
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000005
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000006
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000007
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000008
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000009
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000A
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000B
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000C
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000D
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000E
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000F
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000010
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000011
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000012
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000013
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000014
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000015
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000016
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000017
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000018
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000019
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001A
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001B
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001C
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001D
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001E
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001F
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __DINT_NULL
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000001
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000002
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000003
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000004
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000005
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000006
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000007
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000002 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000002 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000008
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000009
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000A
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000B
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000C
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000D
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000E
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000000F
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000003 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000003 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000010
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000011
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000012
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000013
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000014
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000015
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000016
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000017
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000004 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000004 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000018
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __DINT_NULL
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT00000019
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000001
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001A
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000002
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001B
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000003
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001C
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000004
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001D
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000005
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001E
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000006
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1
__TMPV1 := __DINT_TO_USINT [ __DINT_NULL ]
__TMPI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPI1
_PUSH_PAR __CDINT0000001F
__TMPB1 := _CALL __ANARBIT
__TMPUSI1 := __DINT_TO_USINT [ __CDINT00000005 ]
_PUSH_PAR __TMPB1
_PUSH_PAR __TMPUSI1
_PUSH_PAR __CDINT00000007
__TMPN1 := _CALL __ANAWBIT
__DINT_TO_USINT [ __CDINT00000005 ] := __TMPUSI1

View File

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="DINT_TO_USINT" ElementGuid="fba58c7f-e0a2-4702-9181-c99a8ab6fd39" Comment="" SingleTextLine="" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<FunctionBlock IdentifierNb="0" Keyword="" InitInstance="false" SymbMonExtraBytes="128" />
<LocalVars>
<Variable Name="INP_DINT" DataType="DINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="OUT_SINT_1" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="OUT_SINT_2" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="OUT_SINT_3" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="OUT_SINT_4" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
</LocalVars>
<PouBody><![CDATA[FUNCTION_BLOCK DINT_TO_USINT
OUT_SINT_1.0 := INP_DINT.0;
OUT_SINT_1.1 := INP_DINT.1;
OUT_SINT_1.2 := INP_DINT.2;
OUT_SINT_1.3 := INP_DINT.3;
OUT_SINT_1.4 := INP_DINT.4;
OUT_SINT_1.5 := INP_DINT.5;
OUT_SINT_1.6 := INP_DINT.6;
OUT_SINT_1.7 := INP_DINT.7;
OUT_SINT_2.0 := INP_DINT.8;
OUT_SINT_2.1 := INP_DINT.9;
OUT_SINT_2.2 := INP_DINT.10;
OUT_SINT_2.3 := INP_DINT.11;
OUT_SINT_2.4 := INP_DINT.12;
OUT_SINT_2.5 := INP_DINT.13;
OUT_SINT_2.6 := INP_DINT.14;
OUT_SINT_2.7 := INP_DINT.15;
OUT_SINT_3.0 := INP_DINT.16;
OUT_SINT_3.1 := INP_DINT.17;
OUT_SINT_3.2 := INP_DINT.18;
OUT_SINT_3.3 := INP_DINT.19;
OUT_SINT_3.4 := INP_DINT.20;
OUT_SINT_3.5 := INP_DINT.21;
OUT_SINT_3.6 := INP_DINT.22;
OUT_SINT_3.7 := INP_DINT.23;
OUT_SINT_4.0 := INP_DINT.24;
OUT_SINT_4.1 := INP_DINT.25;
OUT_SINT_4.2 := INP_DINT.26;
OUT_SINT_4.3 := INP_DINT.27;
OUT_SINT_4.4 := INP_DINT.28;
OUT_SINT_4.5 := INP_DINT.29;
OUT_SINT_4.6 := INP_DINT.30;
OUT_SINT_4.7 := INP_DINT.31;
END_FUNCTION_BLOCK]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

View File

@@ -1,20 +1,22 @@
READDOWNHOLEDATA
CONTROL
E300DATA
RA_CIP_ELECTRICAL_ENERGY_OBJ
RA_E300_OUTPUT_CONTROL
READE300IO
READE300CONFIG
READE300TRIPRESET
READE300PARAM
USINT_TO_UDINT
USINT_TO_DINT
USINT_TO_UINT
USINT_TO_SINT
UDINT_TO_USINT
DINT_TO_USINT
UINT_TO_USINT
SINT_TO_USINT
WRITEE300CONFIG
WRITEE300TRIPRESET
LINEARSCALE
READDOWNHOLEDATA
E300DATA
CONTROL
FLOWTOTALIZER
RA_CIP_ELECTRICAL_ENERGY_OBJ
RA_E300_OUTPUT_CONTROL
READE300IO
READE300CONFIG
READE300TRIPRESET
READE300PARAM
USINT_TO_UDINT
USINT_TO_DINT
USINT_TO_UINT
USINT_TO_SINT
UDINT_TO_USINT
DINT_TO_USINT
UINT_TO_USINT
SINT_TO_USINT
WRITEE300CONFIG
WRITEE300TRIPRESET
LINEARSCALE
EPOCH_TIME

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -285,6 +285,27 @@ IF (E300_TripStatusCurrent.MSGObjRead.Q AND
END_IF;
END_IF;
TON_TripOK(NOT TripStatus, TS_Clear);
IF Contactor_Status and TripStatus THEN
alarm_E300 := TRUE;
ELSIF TON_TripOK.Q THEN
alarm_E300 := FALSE;
END_IF;
(*alarm_E300 := TripStatus;*)
IF alarm_E300 THEN
IF NOT (TripStatusCurrent_INT = 0) THEN
alarm_E300_Message := TripStatusCurrent;
ELSIF NOT (TripStatusVoltage_INT = 0) THEN
alarm_E300_Message := TripStatusVoltage;
ELSIF NOT (TripStatusControl_INT = 0) THEN
alarm_E300_Message := TripStatusControl;
ELSIF NOT (TripStatusPower_INT = 0) THEN
alarm_E300_Message := TripStatusPower;
END_IF;
END_IF;
(* Warning Status *)
E300_WarnStatusCurrent(TRUE, E300_IP_ADDRESS, E300_SCAN_RATE, TRUE, 10);
S2I_WarningStatusCurrent(E300_WarnStatusCurrent.Output[1], E300_WarnStatusCurrent.Output[2]);
@@ -882,7 +903,7 @@ IF cfg_READ THEN
cfg_V_PhaseRotationInhibitTime := E300_Config_Buffer[170];
(* PhaseRotationTripType P364 *)
(* cfg_V_PhaseRotationTripType := E300_Config_Buffer[]; *)
cfg_V_PhaseRotationTripType := E300_Config_Buffer[14];
(* VoltageImbalanceInhibitTime P365 *)
cfg_V_VoltageImbalanceInhibitTime := E300_Config_Buffer[183];
@@ -1417,7 +1438,7 @@ IF cfg_WRITE THEN
E300_Config_Buffer[170] := cfg_V_PhaseRotationInhibitTime;
(* PhaseRotationTripType P364 *)
(* E300_Config_Buffer[] := cfg_V_PhaseRotationTripType; *)
E300_Config_Buffer[14] := cfg_V_PhaseRotationTripType;
(* VoltageImbalanceInhibitTime P365 *)
E300_Config_Buffer[183] := cfg_V_VoltageImbalanceInhibitTime;

View File

@@ -0,0 +1 @@
EPOCH_TIME(163):F,MOD();

View File

@@ -0,0 +1,170 @@
__TMPV1 := __EPOCH_TIME [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __EPOCH_TIME [ __CDINT00000018 ]
__TMPB__RTC_READ__ENABLE := __TMPB1
__FBL_RET := _PUSHCALLFB RTC_READ __TMPV2
__TMPI1 := __CDINT00000002 + __CDINT00000002
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
_PUSH_PAR __TMPUIN1
__TMPI3 := _CALL ANY_TO_UINT
__TMPB2 := __TMPI3 <> __CDINT00000001
_IF __TMPB2 _GOTO __LAB2
__EPOCH_TIME [ __CDINT0000002C ] := __UINT_NULL
_GOTO __LAB1
__LAB2 :
__TMPB2 := __TMPI3 <> __CDINT00000002
_IF __TMPB2 _GOTO __LAB3
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT0000001F
_GOTO __LAB1
__LAB3 :
__TMPB2 := __TMPI3 <> __CDINT00000003
_IF __TMPB2 _GOTO __LAB4
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT0000003B
_GOTO __LAB1
__LAB4 :
__TMPB2 := __TMPI3 <> __CDINT00000004
_IF __TMPB2 _GOTO __LAB5
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT0000005A
_GOTO __LAB1
__LAB5 :
__TMPB2 := __TMPI3 <> __CDINT00000005
_IF __TMPB2 _GOTO __LAB6
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT00000079
_GOTO __LAB1
__LAB6 :
__TMPB2 := __TMPI3 <> __CDINT00000006
_IF __TMPB2 _GOTO __LAB7
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT00000097
_GOTO __LAB1
__LAB7 :
__TMPB2 := __TMPI3 <> __CDINT00000007
_IF __TMPB2 _GOTO __LAB8
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT000000B5
_GOTO __LAB1
__LAB8 :
__TMPB2 := __TMPI3 <> __CDINT00000008
_IF __TMPB2 _GOTO __LAB9
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT000000D4
_GOTO __LAB1
__LAB9 :
__TMPB2 := __TMPI3 <> __CDINT00000009
_IF __TMPB2 _GOTO __LABa
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT000000F3
_GOTO __LAB1
__LABa :
__TMPB2 := __TMPI3 <> __CDINT0000000A
_IF __TMPB2 _GOTO __LABb
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT00000111
_GOTO __LAB1
__LABb :
__TMPB2 := __TMPI3 <> __CDINT0000000B
_IF __TMPB2 _GOTO __LABc
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT00000130
_GOTO __LAB1
__LABc :
__TMPB2 := __TMPI3 <> __CDINT0000000C
_IF __TMPB2 _GOTO __LABd
__EPOCH_TIME [ __CDINT0000002C ] := __CUINT0000014E
_GOTO __LAB1
__LABd :
__LAB1 :
__TMPI1 := __CDINT00000002 + __DINT_NULL
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
_PUSH_PAR __TMPUIN1
__TMPI3 := _CALL ANY_TO_UINT
_PUSH_PAR __TMPI3
_PUSH_PAR __CDINT00000004
__TMPI4 := _CALL MOD
__TMPB2 := __TMPI4 = __DINT_NULL
_IF _NOT __TMPB2 _GOTO __LABe
__TMPI5 := __CDINT00000002 + __CDINT00000002
__TMPI6 := __CDINT00000018 + __TMPI5
__TMPUIN2 := __EPOCH_TIME [ __TMPI6 ]
__TMPB3 := __TMPUIN2 > __CUINT00000002
_IF _NOT __TMPB3 _GOTO __LABf
__TMPUIN3 := __EPOCH_TIME [ __CDINT0000002C ]
__TMPUIN3 := __TMPUIN3 + __CUINT00000001
__EPOCH_TIME [ __CDINT0000002C ] := __TMPUIN3
_GOTO __LAB10
__LABf :
__LAB10 :
_GOTO __LAB11
__LABe :
__LAB11 :
__TMPI1 := __CDINT00000002 + __DINT_NULL
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
_PUSH_PAR __CDINT000007B2
__TMPUIN2 := _CALL ANY_TO_DINT
__TMPUIN1 := __TMPUIN1 - __TMPUIN2
_PUSH_PAR __TMPUIN1
__TMPULI1 := _CALL ANY_TO_UINT
_PUSH_PAR __CDINT01E1853E
__TMPULI2 := _CALL ANY_TO_DINT
__TMPULI1 := __TMPULI1 * __TMPULI2
__EPOCH_TIME [ __CDINT00000030 ] := __TMPULI1
__TMPUIN1 := __EPOCH_TIME [ __CDINT0000002C ]
__TMPI1 := __CDINT00000002 + __CDINT00000004
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN2 := __EPOCH_TIME [ __TMPI2 ]
__TMPUIN1 := __TMPUIN1 + __TMPUIN2
_PUSH_PAR __CDINT00015180
__TMPUIN3 := _CALL ANY_TO_DINT
__TMPUIN1 := __TMPUIN1 * __TMPUIN3
_PUSH_PAR __TMPUIN1
__TMPULI1 := _CALL ANY_TO_UINT
__EPOCH_TIME [ __CDINT00000038 ] := __TMPULI1
__TMPI1 := __CDINT00000002 + __CDINT00000006
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__TMPUIN1 := __TMPUIN1 * __CUINT00000E10
_PUSH_PAR __TMPUIN1
__TMPULI1 := _CALL ANY_TO_UINT
__EPOCH_TIME [ __CDINT00000048 ] := __TMPULI1
__TMPI1 := __CDINT00000002 + __CDINT00000008
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__TMPUIN1 := __TMPUIN1 * __CUINT0000003C
_PUSH_PAR __TMPUIN1
__TMPULI1 := _CALL ANY_TO_UINT
__EPOCH_TIME [ __CDINT00000040 ] := __TMPULI1
__TMPULI1 := __EPOCH_TIME [ __CDINT00000030 ]
__TMPULI2 := __EPOCH_TIME [ __CDINT00000038 ]
__TMPULI1 := __TMPULI1 + __TMPULI2
__TMPULI3 := __EPOCH_TIME [ __CDINT00000048 ]
__TMPULI1 := __TMPULI1 + __TMPULI3
__TMPULI4 := __EPOCH_TIME [ __CDINT00000040 ]
__TMPULI1 := __TMPULI1 + __TMPULI4
__TMPI1 := __CDINT00000002 + __CDINT0000000A
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
_PUSH_PAR __TMPUIN1
__TMPULI5 := _CALL ANY_TO_UINT
__TMPULI1 := __TMPULI1 + __TMPULI5
__EPOCH_TIME [ __CDINT00000004 ] := __TMPULI1
__TMPI1 := __CDINT00000002 + __DINT_NULL
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__EPOCH_TIME [ __CDINT0000000C ] := __TMPUIN1
__TMPI1 := __CDINT00000002 + __CDINT00000002
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__EPOCH_TIME [ __CDINT0000000E ] := __TMPUIN1
__TMPI1 := __CDINT00000002 + __CDINT00000004
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__EPOCH_TIME [ __CDINT00000010 ] := __TMPUIN1
__TMPI1 := __CDINT00000002 + __CDINT00000006
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__EPOCH_TIME [ __CDINT00000012 ] := __TMPUIN1
__TMPI1 := __CDINT00000002 + __CDINT00000008
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__EPOCH_TIME [ __CDINT00000014 ] := __TMPUIN1
__TMPI1 := __CDINT00000002 + __CDINT0000000A
__TMPI2 := __CDINT00000018 + __TMPI1
__TMPUIN1 := __EPOCH_TIME [ __TMPI2 ]
__EPOCH_TIME [ __CDINT00000016 ] := __TMPUIN1

Binary file not shown.

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>

View File

@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="Epoch_Time" ElementGuid="1f8f8d8a-87f5-4e34-b071-ff772e5f5dfd" Comment="" SingleTextLine="" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<FunctionBlock IdentifierNb="0" Keyword="" InitInstance="false" SymbMonExtraBytes="128" />
<LocalVars>
<Variable Name="RTC_READ_ENABLED" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="Epoch" DataType="ULINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="year" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="month" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="day" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="hour" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="minute" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="second" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="RTC_READ_1" DataType="RTC_READ" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="prev_months_days" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="year_seconds" DataType="ULINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="day_seconds" DataType="ULINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="min_seconds" DataType="ULINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="hour_seconds" DataType="ULINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
</LocalVars>
<PouBody><![CDATA[FUNCTION_BLOCK Epoch_Time
RTC_READ_1(RTC_READ_ENABLED);
CASE RTC_READ_1.RTCData.Month OF
1: prev_months_days := 0;
2: prev_months_days := 31;
3: prev_months_days := 59;
4: prev_months_days := 90;
5: prev_months_days := 121;
6: prev_months_days := 151;
7: prev_months_days := 181;
8: prev_months_days := 212;
9: prev_months_days := 243;
10: prev_months_days := 273;
11: prev_months_days := 304;
12: prev_months_days := 334;
END_CASE;
IF MOD(ANY_TO_DINT(RTC_READ_1.RTCData.Year), 4) = 0 THEN
IF RTC_READ_1.RTCData.Month > 2 THEN
prev_months_days := prev_months_days + 1;
END_IF;
END_IF;
year_seconds := ANY_TO_ULINT(RTC_READ_1.RTCData.Year - ANY_TO_UINT(1970)) * ANY_TO_ULINT(31556926);
day_seconds := ANY_TO_ULINT((prev_months_days + RTC_READ_1.RTCData.Day) * ANY_TO_UINT(86400));
hour_seconds := ANY_TO_ULINT(RTC_READ_1.RTCData.Hours * 3600);
min_seconds := ANY_TO_ULINT(RTC_READ_1.RTCData.Minutes * 60);
Epoch := year_seconds + day_seconds + hour_Seconds + min_seconds + ANY_TO_ULINT(RTC_READ_1.RTCData.Seconds);
END_FUNCTION_BLOCK]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

View File

@@ -0,0 +1,37 @@
FUNCTION_BLOCK Epoch_Time
RTC_READ_1(RTC_READ_ENABLED);
CASE RTC_READ_1.RTCData.Month OF
1: prev_months_days := 0;
2: prev_months_days := 31;
3: prev_months_days := 59;
4: prev_months_days := 90;
5: prev_months_days := 121;
6: prev_months_days := 151;
7: prev_months_days := 181;
8: prev_months_days := 212;
9: prev_months_days := 243;
10: prev_months_days := 273;
11: prev_months_days := 304;
12: prev_months_days := 334;
END_CASE;
IF MOD(ANY_TO_DINT(RTC_READ_1.RTCData.Year), 4) = 0 THEN
IF RTC_READ_1.RTCData.Month > 2 THEN
prev_months_days := prev_months_days + 1;
END_IF;
END_IF;
year_seconds := ANY_TO_ULINT(RTC_READ_1.RTCData.Year - ANY_TO_UINT(1970)) * ANY_TO_ULINT(31556926);
day_seconds := ANY_TO_ULINT((prev_months_days + RTC_READ_1.RTCData.Day) * ANY_TO_UINT(86400));
hour_seconds := ANY_TO_ULINT(RTC_READ_1.RTCData.Hours * 3600);
min_seconds := ANY_TO_ULINT(RTC_READ_1.RTCData.Minutes * 60);
Epoch := year_seconds + day_seconds + hour_Seconds + min_seconds + ANY_TO_ULINT(RTC_READ_1.RTCData.Seconds);
year := RTC_READ_1.RTCData.Year;
month := RTC_READ_1.RTCData.Month;
day := RTC_READ_1.RTCData.Day;
hour := RTC_READ_1.RTCData.Hours;
minute := RTC_READ_1.RTCData.Minutes;
second := RTC_READ_1.RTCData.Seconds;
END_FUNCTION_BLOCK

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="FlowTotalizer" ElementGuid="88be61f4-7c0b-465f-9894-13192a9bfa6f" Comment="" SingleTextLine="" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<Program />
<LocalVars>
<Variable Name="TON_Totalizer" DataType="TON" InitialValue="" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
<Variable Name="COP_1" DataType="COP" InitialValue=",,,,2(),,2(0),2(0)" Comment="" Address="" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="0" GroupName="" />
</LocalVars>
<PouBody><![CDATA[PROGRAM FlowTotalizer
TON_Totalizer(NOT(TON_Totalizer.Q), T#10s);
IF TON_Totalizer.Q THEN
Flow_Today := Flow_Today + (Flowrate * (10.0 / 60.0));
END_IF;
IF ((CurrentTimeRTC.hour = 0) AND (CurrentTimeRTC.minute = 0) AND (CurrentTimeRTC.second = 0)) THEN
Flow_Yesterday := Flow_Today;
Flow_Today := 0.0;
END_IF;
END_PROGRAM]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

View File

@@ -1,27 +1,27 @@
__TMPV1 := __LINEARSCALE [ __CDINT00000006 ]
__TMPR1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __LINEARSCALE [ __CDINT00000004 ]
__TMPR2 := __TMPV2 [ __DINT_NULL ]
__TMPR1 := __TMPR1 - __TMPR2
__TMPV3 := __LINEARSCALE [ __CDINT00000002 ]
__TMPR3 := __TMPV3 [ __DINT_NULL ]
__TMPV4 := __LINEARSCALE [ __DINT_NULL ]
__TMPR4 := __TMPV4 [ __DINT_NULL ]
__TMPR3 := __TMPR3 - __TMPR4
__TMPR1 := __TMPR1 / __TMPR3
__LINEARSCALE [ __CDINT00000010 ] := __TMPR1
__TMPV1 := __LINEARSCALE [ __CDINT00000006 ]
__TMPR1 := __TMPV1 [ __DINT_NULL ]
__TMPR5 := __LINEARSCALE [ __CDINT00000010 ]
__TMPV2 := __LINEARSCALE [ __CDINT00000002 ]
__TMPR2 := __TMPV2 [ __DINT_NULL ]
__TMPR5 := __TMPR5 * __TMPR2
__TMPR1 := __TMPR1 - __TMPR5
__LINEARSCALE [ __CDINT00000014 ] := __TMPR1
__TMPR5 := __LINEARSCALE [ __CDINT00000010 ]
__TMPV1 := __LINEARSCALE [ __CDINT00000008 ]
__TMPR1 := __TMPV1 [ __DINT_NULL ]
__TMPR5 := __TMPR5 * __TMPR1
__TMPR6 := __LINEARSCALE [ __CDINT00000014 ]
__TMPR5 := __TMPR5 + __TMPR6
__LINEARSCALE [ __CDINT0000000C ] := __TMPR5
__TMPV1 := __LINEARSCALE [ __CDINT00000006 ]
__TMPR1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __LINEARSCALE [ __CDINT00000004 ]
__TMPR2 := __TMPV2 [ __DINT_NULL ]
__TMPR1 := __TMPR1 - __TMPR2
__TMPV3 := __LINEARSCALE [ __CDINT00000002 ]
__TMPR3 := __TMPV3 [ __DINT_NULL ]
__TMPV4 := __LINEARSCALE [ __DINT_NULL ]
__TMPR4 := __TMPV4 [ __DINT_NULL ]
__TMPR3 := __TMPR3 - __TMPR4
__TMPR1 := __TMPR1 / __TMPR3
__LINEARSCALE [ __CDINT00000010 ] := __TMPR1
__TMPV1 := __LINEARSCALE [ __CDINT00000006 ]
__TMPR1 := __TMPV1 [ __DINT_NULL ]
__TMPR5 := __LINEARSCALE [ __CDINT00000010 ]
__TMPV2 := __LINEARSCALE [ __CDINT00000002 ]
__TMPR2 := __TMPV2 [ __DINT_NULL ]
__TMPR5 := __TMPR5 * __TMPR2
__TMPR1 := __TMPR1 - __TMPR5
__LINEARSCALE [ __CDINT00000014 ] := __TMPR1
__TMPR5 := __LINEARSCALE [ __CDINT00000010 ]
__TMPV1 := __LINEARSCALE [ __CDINT00000008 ]
__TMPR1 := __TMPV1 [ __DINT_NULL ]
__TMPR5 := __TMPR5 * __TMPR1
__TMPR6 := __LINEARSCALE [ __CDINT00000014 ]
__TMPR5 := __TMPR5 + __TMPR6
__LINEARSCALE [ __CDINT0000000C ] := __TMPR5

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="LinearScale" ElementGuid="c3cea0dc-774b-4c44-8ed3-7396fc32fb4e" Comment="" SingleTextLine="" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<FunctionBlock IdentifierNb="0" Keyword="" InitInstance="false" SymbMonExtraBytes="128" />
<LocalVars>
<Variable Name="Raw_Min" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="Raw_Max" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="EU_Min" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="EU_Max" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="Raw_Inp" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="EU_Out" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="m" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="b" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
</LocalVars>
<PouBody><![CDATA[FUNCTION_BLOCK LinearScale
m := (EU_Max - EU_Min) / (Raw_Max - Raw_Min);
b := EU_Max - m * Raw_Max;
EU_Out := m * Raw_Inp + b;
END_FUNCTION_BLOCK]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

View File

@@ -1,17 +1,18 @@
USINT_TO_DINT:
USINT_TO_UINT:
USINT_TO_SINT:
READE300CONFIG:
READE300TRIPRESET:
WRITEE300TRIPRESET:
READE300IO:
WRITEE300CONFIG:
RA_E300_OUTPUT_CONTROL:
UINT_TO_USINT:
READE300PARAM:
USINT_TO_UDINT:
UDINT_TO_USINT:
RA_CIP_ELECTRICAL_ENERGY_OBJ:
LINEARSCALE:
SINT_TO_USINT:
DINT_TO_USINT:
USINT_TO_UINT:
USINT_TO_DINT:
USINT_TO_SINT:
EPOCH_TIME:
READE300TRIPRESET:
READE300CONFIG:
WRITEE300TRIPRESET:
READE300IO:
WRITEE300CONFIG:
UINT_TO_USINT:
RA_E300_OUTPUT_CONTROL:
USINT_TO_UDINT:
READE300PARAM:
UDINT_TO_USINT:
LINEARSCALE:
RA_CIP_ELECTRICAL_ENERGY_OBJ:
DINT_TO_USINT:
SINT_TO_USINT:

View File

@@ -1,9 +0,0 @@
0::0046-0003::-------------------- Pre-build resource: MICRO820 Configuration: MICRO820 --------------
0::0044-0003::Pre-compiling for 2080LC2020QWBI
0::0000-0003::CONTROL
0:C:\USERS\SHOP\DOCUMENTS\PROJECTS\E300-IPP\CONTROLLER\CONTROLLER\MICRO820\MICRO820\CONTROL:0002-0003::MICRO820: 0 error(s), 0 warning(s)
0::0006-0003::-------------------- Build resource: MICRO820 Configuration: MICRO820 --------------
0::0001-0003::Compiling for 2080LC2020QWBI
0::0000-0003::CONTROL
0:C:\USERS\SHOP\DOCUMENTS\PROJECTS\E300-IPP\CONTROLLER\CONTROLLER\MICRO820\MICRO820\CONTROL:0003-0003::Linking for 2080LC2020QWBI
0:C:\USERS\SHOP\DOCUMENTS\PROJECTS\E300-IPP\CONTROLLER\CONTROLLER\MICRO820\MICRO820\CONTROL:0002-0003::MICRO820: 0 error(s), 0 warning(s)

View File

@@ -1,9 +1,9 @@
[VARIABLE]
VarWithLREALType = 1
VarWithLINTType = 1
VarWithNewDataType = 1
VarROInitValChanged = 0
[FUNCTION]
UseExtGstartGrst = 0
[TARGET]
IsEnhancedTarget = 1
[VARIABLE]
VarWithLREALType = 1
VarWithLINTType = 1
VarWithNewDataType = 1
VarROInitValChanged = 0
[FUNCTION]
UseExtGstartGrst = 0
[TARGET]
IsEnhancedTarget = 1

View File

@@ -1,10 +1,10 @@
[MEMORY]
Offset0=0x4400
Offset1=0x5400
Offset2=0x5400
Offset3=0x5400
Memory Usage Estimate(Code)=0x98EC
Memory Usage Estimate(Data)=0x9854
Memory Usage Estimate(Retain)=0x4C
Memory Usage Estimate(Temporary variables)=0x2449
Offset4=0x414
[MEMORY]
Offset0=0x4568
Offset1=0x5568
Offset2=0x5568
Offset3=0x5568
Memory Usage Estimate(Code)=0xA220
Memory Usage Estimate(Data)=0x9E48
Memory Usage Estimate(Retain)=0x50
Memory Usage Estimate(Temporary variables)=0x28D4
Offset4=0x414

View File

@@ -1,10 +1,10 @@
[MEMORY]
Offset0=0x4400
Offset1=0x5400
Offset2=0x5400
Offset3=0x5400
Memory Usage Estimate(Code)=0x98EC
Memory Usage Estimate(Data)=0x9854
Memory Usage Estimate(Retain)=0x4C
Memory Usage Estimate(Temporary variables)=0x2449
Offset4=0x414
[MEMORY]
Offset0=0x4568
Offset1=0x5568
Offset2=0x5568
Offset3=0x5568
Memory Usage Estimate(Code)=0xA220
Memory Usage Estimate(Data)=0x9E48
Memory Usage Estimate(Retain)=0x50
Memory Usage Estimate(Temporary variables)=0x28D4
Offset4=0x414

View File

@@ -1,28 +1,28 @@
[MODIF]
POU=Y
TYPE=Y
LEVEL1=Y
IO=Y
RETAIN=Y
INSTDEF=Y
VARDEF=Y
INIT_INST=Y
ADD_DEL=Y
VARSIZE=Y
IO_DEF=Y
LAST_VA=Y
[RESULT]
ON_LINE=Y
TBL_CONF=Y
CRC_ORG=0x380B58B8
CRC_OLD=0x380B58B8
CRC_NEW=0x728420BB
DAT_ORG=1461703117
DAT_OLD=1461703117
DAT_NEW=1461703797
VER_ORG=43
VER_OLD=43
VER_NEW=44
CRC_ALL_OLD=0x7A3DFC09
CRC_ALL_NEW=0x30F5B027
[MODIF]
POU=Y
TYPE=Y
LEVEL1=Y
IO=Y
RETAIN=Y
INSTDEF=Y
VARDEF=Y
INIT_INST=Y
ADD_DEL=Y
VARSIZE=Y
IO_DEF=Y
LAST_VA=Y
[RESULT]
ON_LINE=Y
TBL_CONF=Y
CRC_ORG=0x90C81220
CRC_OLD=0x90C81220
CRC_NEW=0x90C81220
DAT_ORG=1520005028
DAT_OLD=1520005028
DAT_NEW=1520005405
VER_ORG=99
VER_OLD=99
VER_NEW=100
CRC_ALL_OLD=0x0B73E5B0
CRC_ALL_NEW=0xFF3B095E

View File

@@ -1,9 +1,9 @@
[MEMORY]
Memory Usage Estimate(Temporary variables)=0x2450
Memory Usage Estimate(Temporary variables)=0x28DC
Biggest online change user variable memory block size=0x800
Currently added user variables=0x0
Total data size=0x6850
User variables size=0x4400
Maximum size for temporary variables=0x4450
Memory Usage Estimate(Data)=0x9850
Free memory for user variables=0x1000
Total data size=0x6E59
User variables size=0x457D
Maximum size for temporary variables=0x48DC
Memory Usage Estimate(Data)=0x9E44
Free memory for user variables=0xFEB

View File

@@ -1,9 +1,9 @@
[MEMORY]
Memory Usage Estimate(Temporary variables)=0x2450
Memory Usage Estimate(Temporary variables)=0x28DC
Biggest online change user variable memory block size=0x800
Currently added user variables=0x0
Total data size=0x6850
User variables size=0x4400
Maximum size for temporary variables=0x4450
Memory Usage Estimate(Data)=0x9850
Free memory for user variables=0x1000
Total data size=0x6E59
User variables size=0x457D
Maximum size for temporary variables=0x48DC
Memory Usage Estimate(Data)=0x9E44
Free memory for user variables=0xFEB

View File

@@ -1 +1,5 @@
<INPUT>,LINEARSCALE_PRESSURE@CONTROL,LINEARSCALE,RAW_MIN,__TMPR8@CONTROL,REAL,RAW_MAX,__TMPR9@CONTROL,REAL,EU_MIN,PRESSURE_EU_MIN,REAL,EU_MAX,PRESSURE_EU_MAX,REAL,RAW_INP,__TMPR__LINEARSCALE__RAW_INP,REAL
<INPUT>,CURRENTTIMERTC,EPOCH_TIME,RTC_READ_ENABLED,TRUE,BOOL
<INPUT>,LINEARSCALE_PRESSURE@CONTROL,LINEARSCALE,RAW_MIN,__TMPR1@CONTROL,REAL,RAW_MAX,__TMPR2@CONTROL,REAL,EU_MIN,PRESSURE_EU_MIN,REAL,EU_MAX,PRESSURE_EU_MAX,REAL,RAW_INP,__TMPR__LINEARSCALE__RAW_INP,REAL
<INPUT>,LINEARSCALE_FLOW@CONTROL,LINEARSCALE,RAW_MIN,__TMPR1@CONTROL,REAL,RAW_MAX,__TMPR2@CONTROL,REAL,EU_MIN,FLOW_EU_MIN,REAL,EU_MAX,FLOW_EU_MAX,REAL,RAW_INP,__TMPR__LINEARSCALE__RAW_INP,REAL
<INPUT>,UNSTICK_STARTCOMMAND@CONTROL,TON,IN,START_COMMAND,BOOL,PT,STARTCOMMANDTIME@CONTROL,TIME
<INPUT>,RTRIG_AUTOMODE@CONTROL,R_TRIG,CLK,AUTO_MODE,BOOL

View File

@@ -1,111 +1,112 @@
<INPUT>,E300_READENERGY@E300DATA,RA_CIP_ELECTRICAL_ENERGY_OBJ,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT
<INPUT>,E300_OUTPUT@E300DATA,RA_E300_OUTPUT_CONTROL,FBEN,E300_OUTPUT_ENABLE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,OUTPUTNUMBER,E300_OUTPUT_NUMBER,USINT,OUTPUTSETTING,CMD_RUN,BOOL
<INPUT>,E300_READ_DIGITALINPUT0@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__UDINT_NULL,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT1@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000001,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT2@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000002,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT3@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000003,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT4@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000004,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT5@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000005,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_TRIPSTATUSCURRENT@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000004,UDINT
<INPUT>,S2I_TRIPSTATUSCURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_TRIPSTATUSVOLTAGE@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000005,UDINT
<INPUT>,S2I_TRIPSTATUSVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_TRIPSTATUSPOWER@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000006,UDINT
<INPUT>,S2I_TRIPSTATUSPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_TRIPSTATUSCONTROL@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000007,UDINT
<INPUT>,S2I_TRIPSTATUSCONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSCURRENT@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000A,UDINT
<INPUT>,S2I_WARNINGSTATUSCURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSVOLTAGE@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000B,UDINT
<INPUT>,S2I_WARNINGSTATUSVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSPOWER@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000C,UDINT
<INPUT>,S2I_WARNINGSTATUSPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSCONTROL@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000D,UDINT
<INPUT>,S2I_WARNINGSTATUSCONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WRITE_TRIPRESET@E300DATA,WRITEE300TRIPRESET,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,INPUT,<NOT USED>,__E300DATA__TRIPRESETON
<INPUT>,READE300CONFIGDATA@E300DATA,READE300CONFIG,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL
<INPUT>,SINT_TO_DINT_FLASETTING@E300DATA,USINT_TO_UDINT,SINT_SRC_1,__TMPUSI__USINT_TO_UDINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UDINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_UDINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_UDINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_INT_TRIPENABLECURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_TRIPENABLEVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_TRIPENABLEPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_TRIPENABLECONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLECURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLEVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLEPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLECONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_GROUNDFAULTTRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_GROUNDFAULTWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_STALLTRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_JAMTRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_JAMWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_CTPRIMARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_CTSECONDARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_PTPRIMARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_PTSECONDARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_UNDERVOLTAGETRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_UNDERVOLTAGEWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_OVERVOLTAGETRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_OVERVOLTAGEWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_DINT_UNDERREALPOWERTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREALPOWERWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERREALPOWERTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERREALPOWERWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTIVECONSTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTIVECONSWLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVECONSTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVECONSWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTIVEGENTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTGENWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVEGENTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVEGENWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERAPPARENTPOWERTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERAPPARENTWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERAPPARENTTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERAPPARENTWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,U2S_UNDERPFLAGTRIPLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,U2S_UNDERPFLAGWARNINGLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,U2S_OVERPFLAGTRIPLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,U2S_OVERPFLAGWARNINGLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,D2S_FLASETTING@E300DATA,UDINT_TO_USINT,INP_DINT,__TMPUDI__UDINT_TO_USINT__INP_DINT,UDINT
<INPUT>,I2S_TRIPENABLECURRENT@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_TRIPENABLEVOLTAGE@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_TRIPENABLEPOWER@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_TRIPENABLECONTROL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLECURRENT@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLEVOLTAGE@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLEPOWER@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLECONTROL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_GROUNDFAULTTRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_GROUNDFAULTWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_STALLTRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_JAMTRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_JAMWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_CTPRIMARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_CTSECONDARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_PTPRIMARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_PTSECONDARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_UNDERVOLTAGETRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_UNDERVOLTAGEWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_OVERVOLTAGETRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_OVERVOLTAGEWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,D2S_UNDERREALPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREALPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREALPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREALPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVECONSUMEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVECONSWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVECONSUMEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVECONSWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVEGENERATEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVEGENWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVEGENERATEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVEGENWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERAPPARENTPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERAPPARENTPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERAPPARENTPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERAPPARENTPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,S2U_UNDERPFLAGTRIPLEVEL@E300DATA,SINT_TO_USINT,INP_INT,CFG_P_UNDERPOWERFACTORLAGTRIPLEVEL,SINT
<INPUT>,S2U_UNDERPFLAGWARNINGLEVEL@E300DATA,SINT_TO_USINT,INP_INT,CFG_P_UNDERPOWERFACTORLAGWARNINGLEVEL,SINT
<INPUT>,S2U_OVERPFLAGTRIPLEVEL@E300DATA,SINT_TO_USINT,INP_INT,CFG_P_OVERPOWERFACTORLAGTRIPLEVEL,SINT
<INPUT>,S2U_OVERPFLAGWARNINGLEVEL@E300DATA,SINT_TO_USINT,INP_INT,__TMPS__SINT_TO_USINT__INP_INT,SINT
<INPUT>,WRITEE300CONFIGDATA@E300DATA,WRITEE300CONFIG,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,INPUT,<NOT USED>,__E300_CONFIG_BUFFER
<INPUT>,E300_READENERGY@E300DATA,RA_CIP_ELECTRICAL_ENERGY_OBJ,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT
<INPUT>,E300_OUTPUT@E300DATA,RA_E300_OUTPUT_CONTROL,FBEN,E300_OUTPUT_ENABLE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,OUTPUTNUMBER,E300_OUTPUT_NUMBER,USINT,OUTPUTSETTING,CMD_RUN,BOOL
<INPUT>,E300_READ_DIGITALINPUT0@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__UDINT_NULL,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT1@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000001,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT2@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000002,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT3@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000003,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT4@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000004,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_READ_DIGITALINPUT5@E300DATA,READE300IO,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,CHANNELNUMBER,__CUDINT00000005,UDINT,ENABLE,ENABLE_IO_READ,BOOL
<INPUT>,E300_TRIPSTATUSCURRENT@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000004,UDINT
<INPUT>,S2I_TRIPSTATUSCURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_TRIPSTATUSVOLTAGE@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000005,UDINT
<INPUT>,S2I_TRIPSTATUSVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_TRIPSTATUSPOWER@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000006,UDINT
<INPUT>,S2I_TRIPSTATUSPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_TRIPSTATUSCONTROL@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT00000007,UDINT
<INPUT>,S2I_TRIPSTATUSCONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,TON_TRIPOK@E300DATA,TON,IN,__TMPB__TON__IN,BOOL,PT,TS_CLEAR@E300DATA,TIME
<INPUT>,E300_WARNSTATUSCURRENT@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000A,UDINT
<INPUT>,S2I_WARNINGSTATUSCURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSVOLTAGE@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000B,UDINT
<INPUT>,S2I_WARNINGSTATUSVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSPOWER@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000C,UDINT
<INPUT>,S2I_WARNINGSTATUSPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WARNSTATUSCONTROL@E300DATA,READE300PARAM,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,PARAMNUMBER,__CUDINT0000000D,UDINT
<INPUT>,S2I_WARNINGSTATUSCONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,E300_WRITE_TRIPRESET@E300DATA,WRITEE300TRIPRESET,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,INPUT,<NOT USED>,__E300DATA__TRIPRESETON
<INPUT>,READE300CONFIGDATA@E300DATA,READE300CONFIG,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL
<INPUT>,SINT_TO_DINT_FLASETTING@E300DATA,USINT_TO_UDINT,SINT_SRC_1,__TMPUSI__USINT_TO_UDINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UDINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_UDINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_UDINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_INT_TRIPENABLECURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_TRIPENABLEVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_TRIPENABLEPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_TRIPENABLECONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLECURRENT@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLEVOLTAGE@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLEPOWER@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_WARNINGENABLECONTROL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_GROUNDFAULTTRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_GROUNDFAULTWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_STALLTRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_JAMTRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_JAMWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_CTPRIMARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_CTSECONDARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_PTPRIMARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_PTSECONDARY@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_UNDERVOLTAGETRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_UNDERVOLTAGEWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_OVERVOLTAGETRIPLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_INT_OVERVOLTAGEWARNINGLEVEL@E300DATA,USINT_TO_UINT,SINT_SRC_1,__TMPUSI__USINT_TO_UINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_UINT__SINT_SRC_2,USINT
<INPUT>,SINT_TO_DINT_UNDERREALPOWERTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREALPOWERWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERREALPOWERTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERREALPOWERWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTIVECONSTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTIVECONSWLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVECONSTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVECONSWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTIVEGENTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERREACTGENWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVEGENTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OREACTIVEGENWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERAPPARENTPOWERTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_UNDERAPPARENTWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERAPPARENTTRIPLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,SINT_TO_DINT_OVERAPPARENTWARNINGLEVEL@E300DATA,USINT_TO_DINT,SINT_SRC_1,__TMPUSI__USINT_TO_DINT__SINT_SRC_1,USINT,SINT_SRC_2,__TMPUSI__USINT_TO_DINT__SINT_SRC_2,USINT,SINT_SRC_3,__TMPUSI__USINT_TO_DINT__SINT_SRC_3,USINT,SINT_SRC_4,__TMPUSI__USINT_TO_DINT__SINT_SRC_4,USINT
<INPUT>,U2S_UNDERPFLAGTRIPLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,U2S_UNDERPFLAGWARNINGLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,U2S_OVERPFLAGTRIPLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,U2S_OVERPFLAGWARNINGLEVEL@E300DATA,USINT_TO_SINT,SINT_SRC_1,__TMPUSI__USINT_TO_SINT__SINT_SRC_1,USINT
<INPUT>,D2S_FLASETTING@E300DATA,UDINT_TO_USINT,INP_DINT,__TMPUDI__UDINT_TO_USINT__INP_DINT,UDINT
<INPUT>,I2S_TRIPENABLECURRENT@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_TRIPENABLEVOLTAGE@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_TRIPENABLEPOWER@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_TRIPENABLECONTROL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLECURRENT@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLEVOLTAGE@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLEPOWER@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_WARNINGENABLECONTROL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_GROUNDFAULTTRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_GROUNDFAULTWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_STALLTRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_JAMTRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_JAMWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_CTPRIMARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_CTSECONDARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_PTPRIMARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_PTSECONDARY@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_UNDERVOLTAGETRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_UNDERVOLTAGEWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_OVERVOLTAGETRIPLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,I2S_OVERVOLTAGEWARNINGLEVEL@E300DATA,UINT_TO_USINT,INP_INT,__TMPUIN__UINT_TO_USINT__INP_INT,UINT
<INPUT>,D2S_UNDERREALPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREALPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREALPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREALPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVECONSUMEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVECONSWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVECONSUMEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVECONSWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVEGENERATEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERREACTIVEGENWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVEGENERATEDPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERREACTIVEGENWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERAPPARENTPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_UNDERAPPARENTPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERAPPARENTPOWERTRIPLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,D2S_OVERAPPARENTPOWERWARNINGLEVEL@E300DATA,DINT_TO_USINT,INP_DINT,__TMPI__DINT_TO_USINT__INP_DINT,DINT
<INPUT>,S2U_UNDERPFLAGTRIPLEVEL@E300DATA,SINT_TO_USINT,INP_INT,CFG_P_UNDERPOWERFACTORLAGTRIPLEVEL,SINT
<INPUT>,S2U_UNDERPFLAGWARNINGLEVEL@E300DATA,SINT_TO_USINT,INP_INT,CFG_P_UNDERPOWERFACTORLAGWARNINGLEVEL,SINT
<INPUT>,S2U_OVERPFLAGTRIPLEVEL@E300DATA,SINT_TO_USINT,INP_INT,CFG_P_OVERPOWERFACTORLAGTRIPLEVEL,SINT
<INPUT>,S2U_OVERPFLAGWARNINGLEVEL@E300DATA,SINT_TO_USINT,INP_INT,__TMPS__SINT_TO_USINT__INP_INT,SINT
<INPUT>,WRITEE300CONFIGDATA@E300DATA,WRITEE300CONFIG,FBEN,TRUE,BOOL,IPADDRESS,E300_IP_ADDRESS,STRING,UPDATERATE_MS,E300_SCAN_RATE,UINT,ENABLE,TRUE,BOOL,INPUT,<NOT USED>,__E300_CONFIG_BUFFER

View File

@@ -0,0 +1 @@
<SUBINPUT>,EPOCH_TIME,RTC_READ_1,RTC_READ,ENABLE,__TMPB__RTC_READ__ENABLE,BOOL

View File

@@ -1,12 +1,12 @@
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGPRODNAME_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,PRODNAME_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__UINT_NULL,UINT,DEST,<NOT USED>,STRING,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT00000001,UINT,SWAP,FALSE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,INT_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__UINT_NULL,UINT,DEST,<NOT USED>,INT,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT00000028,UINT,SWAP,TRUE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,REAL_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__CUINT00000050,UINT,DEST,<NOT USED>,REAL,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT0000001F,UINT,SWAP,TRUE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,PHASE_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__CUINT000000CC,UINT,DEST,<NOT USED>,INT,DESTOFFSET,__CUINT00000028,UINT,LENGTH,__CUINT00000001,UINT,SWAP,TRUE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGPRODNAME_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGPRODNAME,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGPRODNAME_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,PRODNAME_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__UINT_NULL,UINT,DEST,<NOT USED>,STRING,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT00000001,UINT,SWAP,FALSE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,INT_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__UINT_NULL,UINT,DEST,<NOT USED>,INT,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT00000028,UINT,SWAP,TRUE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,REAL_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__CUINT00000050,UINT,DEST,<NOT USED>,REAL,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT0000001F,UINT,SWAP,TRUE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,PHASE_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__CUINT000000CC,UINT,DEST,<NOT USED>,INT,DESTOFFSET,__CUINT00000028,UINT,LENGTH,__CUINT00000001,UINT,SWAP,TRUE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGPRODNAME_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGPRODNAME,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,RA_CIP_ELECTRICAL_ENERGY_OBJ,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT

View File

@@ -1,11 +1,11 @@
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGPRODNAME_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGWRITEOUTPUT_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,OUTPUTSETTING_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,OUTPUTSETTING_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,PRODNAME_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__UINT_NULL,UINT,DEST,<NOT USED>,STRING,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT00000001,UINT,SWAP,FALSE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGPRODNAME_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGWRITEOUTPUT_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGPRODNAME,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGWRITEOUTPUT,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQDATA,<NOT USED>,USINT,REQLENGTH,__CUINT00000001,UINT,__ADI_REQDATA,<NOT USED>,UINT
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGPRODNAME_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGWRITEOUTPUT_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,OUTPUTSETTING_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,OUTPUTSETTING_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,PRODNAME_COP,COP,ENABLE,TRUE,BOOL,SRC,<NOT USED>,USINT,SRCOFFSET,__UINT_NULL,UINT,DEST,<NOT USED>,STRING,DESTOFFSET,__UINT_NULL,UINT,LENGTH,__CUINT00000001,UINT,SWAP,FALSE,BOOL,__ADI_SRC,<NOT USED>,UINT,__ADI_DEST,<NOT USED>,UINT,__DTI_SRC,<NOT USED>,SINT,__DTI_DEST,<NOT USED>,SINT
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGPRODNAME_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGWRITEOUTPUT_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGPRODNAME,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,RA_E300_OUTPUT_CONTROL,MSGWRITEOUTPUT,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQDATA,<NOT USED>,USINT,REQLENGTH,__CUINT00000001,UINT,__ADI_REQDATA,<NOT USED>,UINT

View File

@@ -1,3 +1,3 @@
<INPUT>,MODBUSCYCLETIMER@READDOWNHOLEDATA,TON,IN,__TMPB__TON__IN,BOOL,PT,MODBUSCYCLETIME,TIME
<INPUT>,MODBUSDATA_0@READDOWNHOLEDATA,MSG_MODBUS,IN,__TMPB__MSG_MODBUS__IN,BOOL,CANCEL,CANCEL@READDOWNHOLEDATA,BOOL,LOCALCFG,<NOT USED>,MODBUSLOCPARA,TARGETCFG,<NOT USED>,MODBUSTARPARA,LOCALADDR,<NOT USED>,MODBUSLOCADDR,__ADI_LOCALADDR,<NOT USED>,UINT
<INPUT>,MODBUSDATA_1000@READDOWNHOLEDATA,MSG_MODBUS,IN,__TMPB__MSG_MODBUS__IN,BOOL,CANCEL,CANCEL@READDOWNHOLEDATA,BOOL,LOCALCFG,<NOT USED>,MODBUSLOCPARA,TARGETCFG,<NOT USED>,MODBUSTARPARA,LOCALADDR,<NOT USED>,MODBUSLOCADDR,__ADI_LOCALADDR,<NOT USED>,UINT
<INPUT>,MODBUSCYCLETIMER@READDOWNHOLEDATA,TON,IN,__TMPB__TON__IN,BOOL,PT,MODBUSCYCLETIME,TIME
<INPUT>,MODBUSDATA_0@READDOWNHOLEDATA,MSG_MODBUS,IN,__TMPB__MSG_MODBUS__IN,BOOL,CANCEL,CANCEL@READDOWNHOLEDATA,BOOL,LOCALCFG,<NOT USED>,MODBUSLOCPARA,TARGETCFG,<NOT USED>,MODBUSTARPARA,LOCALADDR,<NOT USED>,MODBUSLOCADDR,__ADI_LOCALADDR,<NOT USED>,UINT
<INPUT>,MODBUSDATA_1000@READDOWNHOLEDATA,MSG_MODBUS,IN,__TMPB__MSG_MODBUS__IN,BOOL,CANCEL,CANCEL@READDOWNHOLEDATA,BOOL,LOCALCFG,<NOT USED>,MODBUSLOCPARA,TARGETCFG,<NOT USED>,MODBUSTARPARA,LOCALADDR,<NOT USED>,MODBUSLOCADDR,__ADI_LOCALADDR,<NOT USED>,UINT

View File

@@ -1,5 +1,5 @@
<SUBINPUT>,READE300CONFIG,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,READE300CONFIG,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300CONFIG,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT

View File

@@ -1,5 +1,5 @@
<SUBINPUT>,READE300IO,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__CUINT00000001,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,READE300IO,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300IO,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__CUINT00000001,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT

View File

@@ -1,5 +1,5 @@
<SUBINPUT>,READE300PARAM,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,READE300PARAM,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300PARAM,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT

View File

@@ -1,5 +1,5 @@
<SUBINPUT>,READE300TRIPRESET,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT
<SUBINPUT>,READE300TRIPRESET,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,READE300TRIPRESET,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQLENGTH,__UINT_NULL,UINT,RESDATA,<NOT USED>,USINT,__ADI_RESDATA,<NOT USED>,UINT

View File

@@ -1,5 +1,5 @@
<SUBINPUT>,WRITEE300CONFIG,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQDATA,<NOT USED>,USINT,REQLENGTH,__CUINT00000198,UINT,__ADI_REQDATA,<NOT USED>,UINT
<SUBINPUT>,WRITEE300CONFIG,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300CONFIG,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQDATA,<NOT USED>,USINT,REQLENGTH,__CUINT00000198,UINT,__ADI_REQDATA,<NOT USED>,UINT

View File

@@ -1,5 +1,5 @@
<SUBINPUT>,WRITEE300TRIPRESET,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQDATA,<NOT USED>,USINT,REQLENGTH,__CUINT00000001,UINT,__ADI_REQDATA,<NOT USED>,UINT
<SUBINPUT>,WRITEE300TRIPRESET,FBEN_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,FBEN_FTRIG,F_TRIG,CLK,__TMPB__F_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,MSGOBJREAD_Q_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,MSGOBJREAD_ERR_RTRIG,R_TRIG,CLK,__TMPB__R_TRIG__CLK,BOOL
<SUBINPUT>,WRITEE300TRIPRESET,MSGOBJREAD,MSG_CIPGENERIC,IN,__TMPB__MSG_CIPGENERIC__IN,BOOL,CTRLCFG,<NOT USED>,CIPCONTROLCFG,APPCFG,<NOT USED>,CIPAPPCFG,TARGETCFG,<NOT USED>,CIPTARGETCFG,REQDATA,<NOT USED>,USINT,REQLENGTH,__CUINT00000001,UINT,__ADI_REQDATA,<NOT USED>,UINT

View File

@@ -1,75 +1,75 @@
[__DEFIO_CPXDVC]
Nb = 2
NotMDF = 0, 1, AB_, OPTIMUS_, IO_Base
MDF = -1
RIdx = 0
NotMDF = 101, 1, AB_, OPTIMUS_, IOUP_Analog
MDF = -1
RIdx = 0
[__DEFIO_SPLDVC]
Nb = 6
NotMDF = 0, 0, 1, AB_, OPTIMUS_, digitOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 1, 1, AB_, OPTIMUS_, digitIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 2, 1, AB_, OPTIMUS_, analogIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 3, 1, AB_, OPTIMUS_, analogOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 101, 0, 1, AB_, OPTIMUS_, analogOut_UP
MDF = -1
RIdx = 0, 1
NotMDF = 101, 1, 1, AB_, OPTIMUS_, analogIn_UP
MDF = -1
RIdx = 0, 1
[__DEFIO_CHAN]
RIdx = 0, 0, 0
Nb = 7
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DO_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DO_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DO_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DO_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DO_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DO_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DO_06
RIdx = 0, 0, 1
Nb = 12
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DI_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DI_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DI_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DI_06
MDF = 1\1, 1, 0, 7, -1, _IO_EM_DI_07
MDF = 1\1, 1, 0, 8, -1, _IO_EM_DI_08
MDF = 1\1, 1, 0, 9, -1, _IO_EM_DI_09
MDF = 1\1, 1, 0, 10, -1, _IO_EM_DI_10
MDF = 1\1, 1, 0, 11, -1, _IO_EM_DI_11
RIdx = 0, 0, 2
Nb = 4
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_AI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_AI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_AI_03
RIdx = 0, 0, 3
Nb = 1
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AO_00
RIdx = 0, 1, 4
Nb = 0
RIdx = 0, 1, 5
Nb = 2
MDF = 1\1, 0, 0, 0, -1, _IO_P1_AI_00
MDF = 1\1, 0, 0, 1, -1, _IO_P1_AI_01
[__READONLY_VALUES]
Nb = 0
[__DEFIO_CPXDVC]
Nb = 2
NotMDF = 0, 1, AB_, OPTIMUS_, IO_Base
MDF = -1
RIdx = 0
NotMDF = 101, 1, AB_, OPTIMUS_, IOUP_Analog
MDF = -1
RIdx = 0
[__DEFIO_SPLDVC]
Nb = 6
NotMDF = 0, 0, 1, AB_, OPTIMUS_, digitOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 1, 1, AB_, OPTIMUS_, digitIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 2, 1, AB_, OPTIMUS_, analogIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 3, 1, AB_, OPTIMUS_, analogOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 101, 0, 1, AB_, OPTIMUS_, analogOut_UP
MDF = -1
RIdx = 0, 1
NotMDF = 101, 1, 1, AB_, OPTIMUS_, analogIn_UP
MDF = -1
RIdx = 0, 1
[__DEFIO_CHAN]
RIdx = 0, 0, 0
Nb = 7
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DO_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DO_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DO_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DO_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DO_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DO_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DO_06
RIdx = 0, 0, 1
Nb = 12
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DI_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DI_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DI_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DI_06
MDF = 1\1, 1, 0, 7, -1, _IO_EM_DI_07
MDF = 1\1, 1, 0, 8, -1, _IO_EM_DI_08
MDF = 1\1, 1, 0, 9, -1, _IO_EM_DI_09
MDF = 1\1, 1, 0, 10, -1, _IO_EM_DI_10
MDF = 1\1, 1, 0, 11, -1, _IO_EM_DI_11
RIdx = 0, 0, 2
Nb = 4
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_AI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_AI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_AI_03
RIdx = 0, 0, 3
Nb = 1
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AO_00
RIdx = 0, 1, 4
Nb = 0
RIdx = 0, 1, 5
Nb = 2
MDF = 1\1, 0, 0, 0, -1, _IO_P1_AI_00
MDF = 1\1, 0, 0, 1, -1, _IO_P1_AI_01
[__READONLY_VALUES]
Nb = 0

View File

@@ -1,75 +1,75 @@
[__DEFIO_CPXDVC]
Nb = 2
NotMDF = 0, 1, AB_, OPTIMUS_, IO_Base
MDF = -1
RIdx = 0
NotMDF = 101, 1, AB_, OPTIMUS_, IOUP_Analog
MDF = -1
RIdx = 0
[__DEFIO_SPLDVC]
Nb = 6
NotMDF = 0, 0, 1, AB_, OPTIMUS_, digitOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 1, 1, AB_, OPTIMUS_, digitIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 2, 1, AB_, OPTIMUS_, analogIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 3, 1, AB_, OPTIMUS_, analogOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 101, 0, 1, AB_, OPTIMUS_, analogOut_UP
MDF = -1
RIdx = 0, 1
NotMDF = 101, 1, 1, AB_, OPTIMUS_, analogIn_UP
MDF = -1
RIdx = 0, 1
[__DEFIO_CHAN]
RIdx = 0, 0, 0
Nb = 7
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DO_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DO_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DO_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DO_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DO_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DO_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DO_06
RIdx = 0, 0, 1
Nb = 12
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DI_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DI_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DI_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DI_06
MDF = 1\1, 1, 0, 7, -1, _IO_EM_DI_07
MDF = 1\1, 1, 0, 8, -1, _IO_EM_DI_08
MDF = 1\1, 1, 0, 9, -1, _IO_EM_DI_09
MDF = 1\1, 1, 0, 10, -1, _IO_EM_DI_10
MDF = 1\1, 1, 0, 11, -1, _IO_EM_DI_11
RIdx = 0, 0, 2
Nb = 4
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_AI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_AI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_AI_03
RIdx = 0, 0, 3
Nb = 1
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AO_00
RIdx = 0, 1, 4
Nb = 0
RIdx = 0, 1, 5
Nb = 2
MDF = 1\1, 0, 0, 0, -1, _IO_P1_AI_00
MDF = 1\1, 0, 0, 1, -1, _IO_P1_AI_01
[__READONLY_VALUES]
Nb = 0
[__DEFIO_CPXDVC]
Nb = 2
NotMDF = 0, 1, AB_, OPTIMUS_, IO_Base
MDF = -1
RIdx = 0
NotMDF = 101, 1, AB_, OPTIMUS_, IOUP_Analog
MDF = -1
RIdx = 0
[__DEFIO_SPLDVC]
Nb = 6
NotMDF = 0, 0, 1, AB_, OPTIMUS_, digitOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 1, 1, AB_, OPTIMUS_, digitIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 2, 1, AB_, OPTIMUS_, analogIn_Base
MDF = -1
RIdx = 0, 0
NotMDF = 0, 3, 1, AB_, OPTIMUS_, analogOut_Base
MDF = -1
RIdx = 0, 0
NotMDF = 101, 0, 1, AB_, OPTIMUS_, analogOut_UP
MDF = -1
RIdx = 0, 1
NotMDF = 101, 1, 1, AB_, OPTIMUS_, analogIn_UP
MDF = -1
RIdx = 0, 1
[__DEFIO_CHAN]
RIdx = 0, 0, 0
Nb = 7
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DO_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DO_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DO_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DO_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DO_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DO_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DO_06
RIdx = 0, 0, 1
Nb = 12
MDF = 1\1, 1, 0, 0, -1, _IO_EM_DI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_DI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_DI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_DI_03
MDF = 1\1, 1, 0, 4, -1, _IO_EM_DI_04
MDF = 1\1, 1, 0, 5, -1, _IO_EM_DI_05
MDF = 1\1, 1, 0, 6, -1, _IO_EM_DI_06
MDF = 1\1, 1, 0, 7, -1, _IO_EM_DI_07
MDF = 1\1, 1, 0, 8, -1, _IO_EM_DI_08
MDF = 1\1, 1, 0, 9, -1, _IO_EM_DI_09
MDF = 1\1, 1, 0, 10, -1, _IO_EM_DI_10
MDF = 1\1, 1, 0, 11, -1, _IO_EM_DI_11
RIdx = 0, 0, 2
Nb = 4
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AI_00
MDF = 1\1, 1, 0, 1, -1, _IO_EM_AI_01
MDF = 1\1, 1, 0, 2, -1, _IO_EM_AI_02
MDF = 1\1, 1, 0, 3, -1, _IO_EM_AI_03
RIdx = 0, 0, 3
Nb = 1
MDF = 1\1, 1, 0, 0, -1, _IO_EM_AO_00
RIdx = 0, 1, 4
Nb = 0
RIdx = 0, 1, 5
Nb = 2
MDF = 1\1, 0, 0, 0, -1, _IO_P1_AI_00
MDF = 1\1, 0, 0, 1, -1, _IO_P1_AI_01
[__READONLY_VALUES]
Nb = 0

View File

@@ -0,0 +1,515 @@
<?xml version="1.0" encoding="utf-8"?>
<Resource FileVersion="200.00.003" Name="Micro820" ResourceNb="1" ElementGuid="73aee734-b491-4716-bb8a-e114474b2e0b" Address="@1" Comment="" SingleTextLine="" GenDebugInfo="false" Password="" ReadOnly="false" UsePrjPassword="false" Code="TicCode">
<Properties Test="true" TrigCycle="false" CyTiming="0" DeErrors="true" NbStErrors="16" ExecMode="true" EmbedTable="true" TypeEmbedTable="1" EmbedSource="true" TypeEmbedSource="0" SimulationCode="false" SfcGain="8" SfcOffset="18" EmbeddedSfc="false" ReadableImage="false" RealImage="false" LocExp="true" unlab="false" AriOpe="true" BooOpe="true" BooExp="true" GloExp="true" VarCpy="true" Uncod="true" MapFile="false" DumpPou="false" DumpConfig="false" DumpNetwork="false" CompileIncrementally="true" LinkIncrementally="true" CheckArray="true" ArrStr="true" OnlineMemory="112000" OnlineMemoryVariable="4096" MemRetain="RETAIN" FunctionInternalStateEnable="true" FbdBehaviorMode="1" OnlineMaxExtraPous="20" OnlineMemorySfc="20" CyUsTiming="0" IsDisableAccessFBLocalVar="true" EnableCVT="false" ReduceBooleanExpressionEvaluation="false" IsIndirectBitAccessValidation="true" />
<Pous>
<FunctionBlock Name="RA_CIP_ELECTRICAL_ENERGY_OBJ" ElementGuid="9e116e82-db64-4872-bda1-ef7ada62d71b" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="RA_E300_OUTPUT_CONTROL" ElementGuid="c345a0fc-70a0-459b-b07b-8ffd7729b5e8" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="ReadE300IO" ElementGuid="492b32e2-63c3-46f8-afeb-6d9e6b76da86" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="ReadE300Config" ElementGuid="7fef2c64-8552-4a7b-bfcb-a81bf0653d28" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="ReadE300TripReset" ElementGuid="5352e95a-d9a5-447b-aa7a-7071ec0481c2" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="ReadE300Param" ElementGuid="0665f1e9-fb03-48de-86da-7c7f08fe0360" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="USINT_TO_UDINT" ElementGuid="5c9551f1-c000-4c03-b505-8294f43771c9" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="USINT_TO_DINT" ElementGuid="e4c03d62-78c9-4c67-b91a-65b1b7a2a87f" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="USINT_TO_UINT" ElementGuid="b5d70542-1b0d-4d1b-a308-ed6dc1bc31c3" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="USINT_TO_SINT" ElementGuid="bd263122-9333-474e-9301-63d7d2a0a248" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="UDINT_TO_USINT" ElementGuid="634a5889-7131-459b-82bb-32669f70ba62" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="DINT_TO_USINT" ElementGuid="fba58c7f-e0a2-4702-9181-c99a8ab6fd39" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="UINT_TO_USINT" ElementGuid="db53599f-6f5d-4621-a1aa-5fa9a64c8ed3" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="SINT_TO_USINT" ElementGuid="68211587-a34a-4aa0-bf4f-bd92fabbb652" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="WriteE300Config" ElementGuid="825fba0c-a967-4905-b00b-13d3fe1ff759" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="WriteE300TripReset" ElementGuid="bc558758-c39a-435b-8a5c-c577f569ebd1" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="LinearScale" ElementGuid="c3cea0dc-774b-4c44-8ed3-7396fc32fb4e" Language="ST" CustomFbd="0" Is1499="false" />
<FunctionBlock Name="Epoch_Time" ElementGuid="1f8f8d8a-87f5-4e34-b071-ff772e5f5dfd" Language="ST" CustomFbd="0" Is1499="false" />
<Program Name="ReadDownholeData" ElementGuid="a537c79f-58bd-4503-a8bd-4473e96020b3" Language="LD" CustomFbd="0" Is1499="false" />
<Program Name="E300Data" ElementGuid="22fb9760-076e-482b-bcbe-c8fd6362439b" Language="ST" CustomFbd="0" Is1499="false" />
<Program Name="Control" ElementGuid="2e293809-2592-4360-9ef5-9e938bc7b980" Language="ST" CustomFbd="0" Is1499="false" />
<Program Name="FlowTotalizer" ElementGuid="88be61f4-7c0b-465f-9894-13192a9bfa6f" Language="ST" CustomFbd="0" Is1499="false" />
</Pous>
<NetworkParameterValues>
<NetworkParameterValue NetworkName="HSD" Name="ValidityTime" Value="0" />
<NetworkParameterValue NetworkName="ETCP" Name="TimeOut" Value="10000" />
</NetworkParameterValues>
<GlobalVars>
<Variable Name="__SYSVA_TCYWDG" DataType="UDINT" InitialValue="2000" Comment="Software Watchdog" Address="" Modifier="NonRetain" Kind="VarGlobal" Alias="" AccessRights="ReadWrite" Attributes="32501" />
<Variable Name="__SYSVA_USER_DATA_LOST" DataType="BOOL" InitialValue="FALSE" Comment="User data lost" Address="" Modifier="NonRetain" Kind="VarGlobal" Alias="" AccessRights="ReadWrite" Attributes="32501" />
<Variable Name="DH_IntakeTemperature" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_IntakePressure" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_WindingTemperature" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_DischargeTemperature" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_DischargePressure" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_VibrationX" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_VibrationY" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_DownholeStatus" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="ModbusCycleTime" DataType="TIME" InitialValue="T#20s" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="ModbusCycleTimeElapsed" DataType="TIME" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_IP_ADDRESS" DataType="STRING" InitialValue="'192.168.1.9'" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_SCAN_RATE" DataType="UINT" InitialValue="1000" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_OUTPUT_NUMBER" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cmd_Run" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_OUTPUT_SET_CORRECTLY" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300" DataType="CIPEEOBJ_ATTRIBS" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_SELECTED_OUTPUT" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DigitalInput_Status_0" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DigitalInput_Status_1" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DigitalInput_Status_2" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DigitalInput_Status_3" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Start_Command" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Stop_Command" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Start_Permissive" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Run_Permissive" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Enable_IO_Read" DataType="BOOL" InitialValue="TRUE" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DigitalInput_Status_5" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DigitalInput_Status_4" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Temp_Shutdown" DataType="REAL" InitialValue="75.0" Comment="Temperature at which to stop the pump" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Temp_Startup" DataType="REAL" InitialValue="75.0" Comment="Temperature at which to startup the pump" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Temp_Shutdown_Enabled" DataType="BOOL" InitialValue="TRUE" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Temp_Startup_Enabled" DataType="BOOL" InitialValue="TRUE" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Shutdown" DataType="REAL" InitialValue="" Comment="Pressure at which to shutdown the pump" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Startup" DataType="REAL" InitialValue="" Comment="Pressure at which to startup the pump" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Shutdown_Enabled" DataType="BOOL" InitialValue="TRUE" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Startup_Enabled" DataType="BOOL" InitialValue="TRUE" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Downtime_Timer" DataType="TON" InitialValue=",,,T#0s" Comment="Time to remain shutdown after permissive goes false" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Downtime_Time_Parameter" DataType="DINT" InitialValue="600" Comment="Number of seconds to remain shutdown" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Device_Status" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Shutdown_Time" DataType="DINT" InitialValue="" Comment="Time when the unit stopped" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Restart_Command" DataType="BOOL" InitialValue="" Comment="It has been enough time that the device is ready to start up" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Time_Until_Startup" DataType="DINT" InitialValue="" Comment="Time Until the unit can restart" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Restart_Allowed" DataType="BOOL" InitialValue="" Comment="Set by the program. Resetting automatically is allowed" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_kWh" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_kWh_Regen" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Modbus_Read0" DataType="MODBUSLOCADDR" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Modbus_Read1000" DataType="MODBUSLOCADDR" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_NumChannels" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_ToolVoltage" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_MaxIntakeTemperature_Startup" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_MaxIntakePressure_Startup" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_ToolType" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_PSIRating" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_MaxIntakeTemperature_Forever" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_MaxIntakePressure_Forever" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_DownholeStatus_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Hand_Mode" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Auto_Mode" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Start_Button" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Contactor_Status" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_C_FLASetting" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TCU_TripClass" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TCU_OLResetLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TCU_OLWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_TripEnableCurrent" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_TripEnableVoltage" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_TripEnablePower" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_C_TripEnableControl" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_WarningEnableCurrent" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_WarningEnableVoltage" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_WarningEnablePower" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_C_WarningEnableControl" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_PL_PhaseLossInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_PL_PhaseLossTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_GF_GroundFaultInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_GF_GroundFaultTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_GF_GroundFaultTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_GF_GroundFaultWarningDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_GF_GroundFaultWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_StallEnabledTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_StallTripLevel" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_JamInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_JamTripDelay" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_JamTripLevel" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_JamWarningLevel" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UnderloadInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UnderloadTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UnderloadTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UnderloadWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_CurrentImbalanceInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_CurrentImbalanceTripDelay" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_CurrentImbalanceTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_CurrentImbalanceWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_CTPrimary" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_CTSecondary" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UndercurrentInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1_UndercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1_UndercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1_UndercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2_UndercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2_UndercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2_UndercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3_UndercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3_UndercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3_UndercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_OvercurrentInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1_OvercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1_OvercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1_OvercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2_OvercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2_OvercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2_OvercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3_OvercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3_OvercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3_OvercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_LineLossInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L1LossTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L2LossTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_L3LossTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_VoltageMode" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_PTPrimary" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_PTSecondary" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UndervoltageInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UndervoltageTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UndervoltageTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UndervoltageWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OvervoltageInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OvervoltageTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OvervoltageTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OvervoltageWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_PhaseRotationInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_PhaseRotationTripType" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_VoltageImbalanceInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_VoltageImbalanceTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_VoltageImbalanceTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_VoltageImbalanceWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UnderfrequencyInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UnderfrequencyTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UnderfrequencyTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_UnderfrequencyWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OverfrequencyInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OverfrequencyTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OverfrequencyTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_V_OverfrequencyWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderRealPowerInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderRealPowerTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderRealPowerTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderRealPowerWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverRealPowerInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverRealPowerTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverRealPowerTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverRealPowerWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveConsumedInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveConsumedTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveConsumedTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveConsumedWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveConsumedInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveConsumedTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveConsumedTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveConsumedWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveGeneratedInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveGeneratedTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveGeneratedTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderReactiveGeneratedWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveGeneratedInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveGeneratedTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveGeneratedTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverReactiveGeneratedWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderApparentPowerInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderApparentPowerTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderApparentPowerTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderApparentPowerWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverApparentPowerInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverApparentPowerTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverApparentPowerTripLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverApparentPowerWarningLevel" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLagInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLagTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLagTripLevel" DataType="SINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLagWarningLevel" DataType="SINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLagInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLagTripDelay" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLagTripLevel" DataType="SINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLagWarningLevel" DataType="SINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLeadInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLeadTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLeadTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_UnderPowerFactorLeadWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLeadInhibitTime" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLeadTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLeadTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_P_OverPowerFactorLeadWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_Config_Buffer" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="">
<Dimension Lower="1" Upper="409" />
</Variable>
<Variable Name="cfg_READ" DataType="BOOL" InitialValue="" Comment="Read the configuration data from the E300" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_WRITE" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripResetWriteStatus" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripResetCmd" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusCurrent" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusVoltage" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusPower" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusControl" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusCurrent" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusVoltage" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusPower" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusControl" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="OverloadTrip" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatus" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatus" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusCurrent_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusVoltage_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusPower_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripStatusControl_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusCurrent_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusVoltage_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusPower_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningStatusControl_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Downtime_Time_Parameter_OL" DataType="DINT" InitialValue="600" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Time_Until_Startup_String" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Test_Mode" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UndercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UndercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_UndercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_OvercurrentTripLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_OvercurrentWarningLevel" DataType="USINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_LineLossTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_I_OvercurrentTripDelay" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="VoltageOK" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_Overload" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_GroundFault" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_Stall" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_Jam" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_Underload" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_CurrentImbalance" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_PhaseLoss" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_Undercurrent" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_Overcurrent" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_Overload" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_GroundFault" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_Stall" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_Jam" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_Underload" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_CurrentImbalance" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_PhaseLoss" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_Undercurrent" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_Overcurrent" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnabled_I_LineLoss" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnable_V_Undervoltage" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnable_V_Overvoltage" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnable_V_VoltageUnbalance" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnable_V_PhaseRotation" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnable_V_Underfrequency" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnable_V_Overfrequency" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnable_V_Undervoltage" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnable_V_Overvoltage" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnable_V_VoltageUnbalance" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnable_V_PhaseRotation" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnable_V_Underfrequency" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="WarningEnable_V_Overfrequency" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="TripEnabled_I_LineLoss" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Switch_Enabled" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Downhole_Tool_Enabled" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Clear_Trip_Cycle" DataType="TIME" InitialValue="T#15s" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_LineFrequency" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1Current" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2Current" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3Current" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_AverageCurrent" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_PercentCurrentUnbalance" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1NVoltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2NVoltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3NVoltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_AverageLNVoltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1L2Voltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2L3Voltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3L1Voltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_AverageLLVoltage" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_PercentVoltageUnbalance" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1RealPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2RealPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3RealPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_TotalRealPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1ReactivePower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2ReactivePower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3ReactivePower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_TotalReactivePower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1ApparentPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2ApparentPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3ApparentPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_TotalApparentPower" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L1TruePowerFactor" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L2TruePowerFactor" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_L3TruePowerFactor" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_ThreePhaseTruePowerFactor" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Transducer_Enabled" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_In" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Hi" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Lo" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Hi_SP" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Lo_SP" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Start_Time" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Alarm_Startup_Delay" DataType="DINT" InitialValue="30" Comment="in seconds" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_OK" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_OOT_Scans" DataType="UDINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_OOT_Seconds" DataType="UDINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_Alarm_Delay" DataType="UDINT" InitialValue="15" Comment="in Sec" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Run_Time" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_EU_Min" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Pressure_EU_Max" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Start_Time_Set" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="DH_Fluid_Level" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="SP_Pressure" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="SP_Temperature" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="SP_Voltage" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="SP_Trip" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="SP_Mode" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="RP_TubingPressure" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="RP_Pressure" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="RP_Temperature" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="RP_Trip" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="RP_Mode" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_Output_Enable" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_SpecificGravity" DataType="REAL" InitialValue="1.0" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_CurrentTime" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="E300_Output_Toggled" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="sts_TimerCycleActive" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TimerModeEnabled" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TimerRunTime" DataType="DINT" InitialValue="45" Comment="in Minutes" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="timer_RunTimeLeft" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TimerWaitTime" DataType="DINT" InitialValue="15" Comment="in Minutes" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="timer_WaitTimeLeft" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cmd_TimerRun" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="sts_TimerRunTimeSet" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_TimerRunTime" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="sts_TimerWaitTimeSet" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_TimerWaitTime" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="sts_TripCountIncreased" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="val_OverloadTripCount" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="val_TripCount" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_OverloadTripCountLimit" DataType="DINT" InitialValue="0" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_TripCountLimit" DataType="DINT" InitialValue="5" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_ClearTripCountAfter" DataType="DINT" InitialValue="60" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_ResetCycle" DataType="DINT" InitialValue="10" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_WaitTimeLeftMin" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_WaitTimeLeftSec" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_RunTimeLeftMin" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="time_RunTimeLeftSec" DataType="DINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="cfg_DHSensorDistToIntake" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="Retain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="alarm_E300" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="alarm_DHPressure" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="alarm_DHTemperature" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="alarm_TubingPressure" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="alarm_E300_Message" DataType="STRING" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="80" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="sts_TripLimitReached" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="sts_TripLimitOLReached" DataType="BOOL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Flow_EU_Min" DataType="REAL" InitialValue="0.0" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Flow_EU_Max" DataType="REAL" InitialValue="400.0" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Flowrate" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Flow_Today" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Flow_Yesterday" DataType="REAL" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="CurrentTimeRTC" DataType="Epoch_Time" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
<Variable Name="Device_Status_INT" DataType="UINT" InitialValue="" Comment="" Address="1" Modifier="NonRetain" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" RetainFlags="" CommentFields="" Attributes="4" GroupName="" />
</GlobalVars>
<Devices>
<Device PackageName="AB_" DriverName="OPTIMUS_" Name="IO_Base" Index="0" NbChannels="0" IsVirtual="false" Order="1" Alias="" Comment="">
<IOSymbols AllIOSymbols="true" />
<DeviceList>
<Device Index="0" NbChannels="7" Order="0" SimpleOfComplexOrder="0">
<IOSymbols AllIOSymbols="true">
<IOSymbol GainA="1" GainB="1" Offset="1" Order="0" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="0" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_00">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="1" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="1" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_01">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="2" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="2" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_02">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="3" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="3" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_03">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="4" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="4" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_04">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="5" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="5" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_05">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="6" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="6" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DO_06">
<ChannelParameterInstances />
</IOSymbol>
</IOSymbols>
</Device>
<Device Index="0" NbChannels="12" Order="0" SimpleOfComplexOrder="1">
<IOSymbols AllIOSymbols="true">
<IOSymbol GainA="1" GainB="1" Offset="1" Order="0" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="0" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_00">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="1" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="1" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_01">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="2" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="2" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_02">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="3" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="3" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_03">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="4" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="4" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_04">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="5" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="5" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_05">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="6" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="6" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_06">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="7" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="7" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_07">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="8" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="8" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_08">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="9" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="9" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_09">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="10" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="10" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_10">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="11" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="11" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_DI_11">
<ChannelParameterInstances />
</IOSymbol>
</IOSymbols>
</Device>
<Device Index="0" NbChannels="4" Order="0" SimpleOfComplexOrder="2">
<IOSymbols AllIOSymbols="true">
<IOSymbol GainA="1" GainB="1" Offset="1" Order="0" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="0" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_AI_00">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="1" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="1" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_AI_01">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="2" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="2" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_AI_02">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="1" Order="3" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="3" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_AI_03">
<ChannelParameterInstances />
</IOSymbol>
</IOSymbols>
</Device>
<Device Index="0" NbChannels="1" Order="0" SimpleOfComplexOrder="3">
<IOSymbols AllIOSymbols="true">
<IOSymbol GainA="1" GainB="1" Offset="1" Order="0" GainAf="1" GainBf="1" OffsetF="1" PhysicalOrder="0" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_EM_AO_00">
<ChannelParameterInstances />
</IOSymbol>
</IOSymbols>
</Device>
</DeviceList>
</Device>
<Device PackageName="AB_" DriverName="OPTIMUS_" Name="IOUP_Analog" Index="101" NbChannels="0" IsVirtual="false" Order="2" Alias="" Comment="">
<IOSymbols AllIOSymbols="true" />
<DeviceList>
<Device Index="101" NbChannels="0" Order="0" SimpleOfComplexOrder="0">
<IOSymbols AllIOSymbols="true" />
</Device>
<Device Index="101" NbChannels="2" Order="0" SimpleOfComplexOrder="1">
<IOSymbols AllIOSymbols="true">
<IOSymbol GainA="1" GainB="1" Offset="0" Order="0" GainAf="1" GainBf="1" OffsetF="0" PhysicalOrder="0" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_P1_AI_00">
<ChannelParameterInstances />
</IOSymbol>
<IOSymbol GainA="1" GainB="1" Offset="0" Order="1" GainAf="1" GainBf="1" OffsetF="0" PhysicalOrder="1" Alias="" Comment="" Address="1" IsComplexMember="false" ConvFunctio="" SymbolName="_IO_P1_AI_01">
<ChannelParameterInstances />
</IOSymbol>
</IOSymbols>
</Device>
</DeviceList>
</Device>
</Devices>
<ExportedGroups />
<ImportedGroups />
<Groups />
</Resource>

View File

@@ -1,3 +1,3 @@
[MEMORY]
Code Space Free Memory=0x1B580
Code Space Requirement=0x9604
[MEMORY]
Code Space Free Memory=0x165FC
Code Space Requirement=0x5998

View File

@@ -0,0 +1,265 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="RA_CIP_ELECTRICAL_ENERGY_OBJ" ElementGuid="9e116e82-db64-4872-bda1-ef7ada62d71b" Comment="" SingleTextLine="Read the CIP Electrical Energy Object Attributes from a compatible device using Explicit Messaging" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<FunctionBlock IdentifierNb="0" Keyword="" InitInstance="false" SymbMonExtraBytes="128" />
<LocalVars>
<Variable Name="FBEN" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="IPAddress" DataType="STRING" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="80" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="UpdateRate_ms" DataType="UINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="FBENO" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="CIPErrorStatus" DataType="CIPSTATUS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="ProductName" DataType="STRING" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="80" Direction="Output" CommentFields="" Attributes="0">
<Dimension Lower="1" Upper="1" />
</Variable>
<Variable Name="EEObjAttributes" DataType="CIPEEOBJ_ATTRIBS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="EnergyINTArray" DataType="INT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0">
<Dimension Lower="0" Upper="40" />
</Variable>
<Variable Name="MeteringREALArray" DataType="REAL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0">
<Dimension Lower="0" Upper="30" />
</Variable>
<Variable Name="MSGObjRead" DataType="MSG_CIPGENERIC" InitialValue=",,,,,,,2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGObjRead_EN" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ObjReadCtrlCfg" DataType="CIPCONTROLCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ObjReadAppCfg" DataType="CIPAPPCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ObjReadTargetCfg" DataType="CIPTARGETCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ObjReadResData" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0">
<Dimension Lower="0" Upper="219" />
</Variable>
<Variable Name="FBEN_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGObjRead_Q_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGObjRead_Err_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="NoErrorStatus" DataType="CIPSTATUS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="INT_COP" DataType="COP" InitialValue=",,,,2(),,2(0),2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="REAL_COP" DataType="COP" InitialValue=",,,,2(),,2(0),2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="Phase_COP" DataType="COP" InitialValue=",,,,2(),,2(0),2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ZeroedAttributes" DataType="CIPEEOBJ_ATTRIBS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="i" DataType="DINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="FBEN_FTRIG" DataType="F_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameAppCfg" DataType="CIPAPPCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameTargetCfg" DataType="CIPTARGETCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName" DataType="MSG_CIPGENERIC" InitialValue=",,,,,,,2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName_EN" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName_Q_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName_Err_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameCtrlCfg" DataType="CIPCONTROLCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameResData" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0">
<Dimension Lower="0" Upper="31" />
</Variable>
<Variable Name="ProdName_COP" DataType="COP" InitialValue=",,,,2(),,2(0),2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
</LocalVars>
<PouBody><![CDATA[FUNCTION_BLOCK RA_CIP_ELECTRICAL_ENERGY_OBJ
(*=====================================================================================================================================
[UDFB Name] :RA_CIP_ELECTRICAL_ENERGY_OBJECT (v7)
[Category] :Communication
[Description] :Read the CIP Electrical Energy Object Attributes from a compatible device using Explicit Messaging
[Author] :Rockwell Automation
[Created using CCW version] :7.0
[FeedBack] :RASampleCode@ra.rockwell.com
[Revison History] :2014-December - Original Release for Version 7
[Notes] :Tested at release with E300 and PowerMonitor 5000
=====================================================================================================================================*)
FBENO := FBEN;
(*-------- Initialize --------*)
FBEN_RTRIG(FBEN);
IF (__SYSVA_FIRST_SCAN OR FBEN_RTRIG.Q) THEN
MSGProdName_EN := TRUE;
MSGObjRead_EN := FALSE;
ProdNameCtrlCfg.TriggerType := 5000;
IF UpdateRate_ms < 1000 THEN
ObjReadCtrlCfg.TriggerType := 1000; (*Triggers message every 1000 ms while MSGObjRead_EN is true*)
ELSE
ObjReadCtrlCfg.TriggerType := ANY_TO_UDINT(UpdateRate_ms);
END_IF;
ProdNameTargetCfg.Path := '4,'+ IPAddress;
ProdNameTargetCfg.CipConnMode := 0; (*0-unconnected, 1-Class 3*)
ProdNameTargetCfg.UcmmTimeout := 250; (*Unconnected message time out, Set to 0 means 3000ms, range 250-10000*)
ProdNameTargetCfg.ConnMsgTimeout:= 800; (*Class3 time out, Set to 0 means 3000ms, range 800-10000*)
ProdNameTargetCfg.ConnClose := FALSE;(*Don't close the connection upon message completion*)
ProdNameAppCfg.Service := 14; (*Service code 0Eh for Get Single Attribute*)
ProdNameAppCfg.Class := 1; (*Class code 01h for Identity Object*)
ProdNameAppCfg.Instance := 1; (*Instance 1*)
ProdNameAppCfg.Attribute := 7; (*Attribute 7 for Product Name*)
ObjReadTargetCfg.Path := '4,'+ IPAddress;
ObjReadTargetCfg.CipConnMode := 0; (*0-unconnected, 1-Class 3*)
ObjReadTargetCfg.UcmmTimeout := 250; (*Unconnected message time out, Set to 0 means 3000ms, range 250-10000*)
ObjReadTargetCfg.ConnMsgTimeout := 800; (*Class3 time out, Set to 0 means 3000ms, range 800-10000*)
ObjReadTargetCfg.ConnClose := FALSE;(*Don't close the connection upon message completion*)
ObjReadAppCfg.Service := 1; (*Service code 01h for Get Attributes All*)
ObjReadAppCfg.Class := 79; (*Class code 4Fh for Electrical Energy Object*)
ObjReadAppCfg.Instance := 1; (*Instance 1*)
ObjReadAppCfg.Attribute := 0; (*Attribute 0*)
CIPErrorStatus := NoErrorStatus;
ProductName[1] := '';
EEObjAttributes := ZeroedAttributes;
FOR i := 0 TO 40 DO
EnergyINTArray[i]:= 0;
END_FOR;
FOR i := 0 TO 30 DO
MeteringREALArray[i]:= 0.0;
END_FOR;
END_IF;
FBEN_FTRIG(FBEN);
IF FBEN_FTRIG.Q THEN
CIPErrorStatus := NoErrorStatus;
ProductName[1] := '';
EEObjAttributes := ZeroedAttributes;
FOR i := 0 TO 40 DO
EnergyINTArray[i]:= 0;
END_FOR;
FOR i := 0 TO 30 DO
MeteringREALArray[i]:= 0.0;
END_FOR;
END_IF;
(*-------- Main Routine --------*)
IF FBEN THEN
MSGProdName_Q_RTRIG(MSGProdName.Q);
MSGObjRead_Q_RTRIG(MSGObjRead.Q);
IF MSGProdName_Q_RTRIG.Q THEN
CIPErrorStatus := MSGProdName.Status;
ProdName_COP(TRUE,ProdNameResData,0,ProductName,0,1,FALSE);
MSGProdName_EN := FALSE;
MSGObjRead_EN := TRUE;
END_IF;
IF MSGObjRead_Q_RTRIG.Q THEN
CIPErrorStatus := MSGObjRead.Status;
INT_COP(TRUE,ObjReadResData,0,EnergyINTArray,0,40,TRUE);
REAL_COP(TRUE,ObjReadResData,80,MeteringREALArray,0,31,TRUE);
Phase_COP(TRUE,ObjReadResData,204,EnergyINTArray,40,1,TRUE);
EEObjAttributes.RealEnergyConsumedOdometer := ANY_TO_LREAL(EnergyINTArray[4])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[3])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[2])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[1]) +
ANY_TO_LREAL(EnergyINTArray[0])*1.0E-3;
EEObjAttributes.RealEnergyGeneratedOdometer := ANY_TO_LREAL(EnergyINTArray[9])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[8])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[7])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[6]) +
ANY_TO_LREAL(EnergyINTArray[5])*1.0E-3;
EEObjAttributes.RealEnergyNetOdometer := ANY_TO_LREAL(EnergyINTArray[14])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[13])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[12])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[11]) +
ANY_TO_LREAL(EnergyINTArray[10])*1.0E-3;
EEObjAttributes.ReactiveEnergyConsumedOdometer := ANY_TO_LREAL(EnergyINTArray[19])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[18])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[17])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[16]) +
ANY_TO_LREAL(EnergyINTArray[15])*1.0E-3;
EEObjAttributes.ReactiveEnergyGeneratedOdometer := ANY_TO_LREAL(EnergyINTArray[24])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[23])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[22])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[21]) +
ANY_TO_LREAL(EnergyINTArray[20])*1.0E-3;
EEObjAttributes.ReactiveEnergyNetOdometer := ANY_TO_LREAL(EnergyINTArray[29])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[28])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[27])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[26]) +
ANY_TO_LREAL(EnergyINTArray[25])*1.0E-3;
EEObjAttributes.ApparentEnergyOdometer := ANY_TO_LREAL(EnergyINTArray[34])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[33])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[32])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[31]) +
ANY_TO_LREAL(EnergyINTArray[30])*1.0E-3;
EEObjAttributes.KiloampereHoursOdometer := ANY_TO_LREAL(EnergyINTArray[39])*1.0E+9 +
ANY_TO_LREAL(EnergyINTArray[38])*1.0E+6 +
ANY_TO_LREAL(EnergyINTArray[37])*1.0E+3 +
ANY_TO_LREAL(EnergyINTArray[36]) +
ANY_TO_LREAL(EnergyINTArray[35])*1.0E-3;
EEObjAttributes.LineFrequency := MeteringREALArray[0];
EEObjAttributes.L1Current := MeteringREALArray[1];
EEObjAttributes.L2Current := MeteringREALArray[2];
EEObjAttributes.L3Current := MeteringREALArray[3];
EEObjAttributes.AverageCurrent := MeteringREALArray[4];
EEObjAttributes.PercentCurrentUnbalance := MeteringREALArray[5];
EEObjAttributes.L1NVoltage := MeteringREALArray[6];
EEObjAttributes.L2NVoltage := MeteringREALArray[7];
EEObjAttributes.L3NVoltage := MeteringREALArray[8];
EEObjAttributes.AverageLNVoltage := MeteringREALArray[9];
EEObjAttributes.L1L2Voltage := MeteringREALArray[10];
EEObjAttributes.L2L3Voltage := MeteringREALArray[11];
EEObjAttributes.L3L1Voltage := MeteringREALArray[12];
EEObjAttributes.AverageLLVoltage := MeteringREALArray[13];
EEObjAttributes.PercentVoltageUnbalance := MeteringREALArray[14];
EEObjAttributes.L1RealPower := MeteringREALArray[15];
EEObjAttributes.L2RealPower := MeteringREALArray[16];
EEObjAttributes.L3RealPower := MeteringREALArray[17];
EEObjAttributes.TotalRealPower := MeteringREALArray[18];
EEObjAttributes.L1ReactivePower := MeteringREALArray[19];
EEObjAttributes.L2ReactivePower := MeteringREALArray[20];
EEObjAttributes.L3ReactivePower := MeteringREALArray[21];
EEObjAttributes.TotalReactivePower := MeteringREALArray[22];
EEObjAttributes.L1ApparentPower := MeteringREALArray[23];
EEObjAttributes.L2ApparentPower := MeteringREALArray[24];
EEObjAttributes.L3ApparentPower := MeteringREALArray[25];
EEObjAttributes.TotalApparentPower := MeteringREALArray[26];
EEObjAttributes.L1TruePowerFactor := MeteringREALArray[27];
EEObjAttributes.L2TruePowerFactor := MeteringREALArray[28];
EEObjAttributes.L3TruePowerFactor := MeteringREALArray[29];
EEObjAttributes.ThreePhaseTruePowerFactor := MeteringREALArray[30];
CASE EnergyINTArray[40] OF
1: EEObjAttributes.PhaseRotation := 'ABC';
2: EEObjAttributes.PhaseRotation := 'ACB';
ELSE
EEObjAttributes.PhaseRotation := 'None';
END_CASE;
END_IF;
MSGProdName_Err_RTRIG(MSGProdName.Status.Error);
MSGObjRead_Err_RTRIG(MSGObjRead.Status.Error);
IF MSGProdName_Err_RTRIG.Q THEN
CIPErrorStatus := MSGProdName.Status;
ProductName[1] := '';
END_IF;
IF MSGObjRead_Err_RTRIG.Q THEN
MSGProdName_EN := TRUE;
MSGObjRead_EN := FALSE;
CIPErrorStatus := MSGObjRead.Status;
ProductName[1] := '';
EEObjAttributes := ZeroedAttributes;
FOR i := 0 TO 40 DO
EnergyINTArray[i]:= 0;
END_FOR;
FOR i := 0 TO 30 DO
MeteringREALArray[i]:= 0.0;
END_FOR;
END_IF;
ELSE
MSGProdName_EN := FALSE;
MSGObjRead_EN := FALSE;
END_IF;
MSGProdName(MSGProdName_EN, ProdNameCtrlCfg, ProdNameAppCfg, ProdNameTargetCfg,, 0, ProdNameResData);
MSGObjRead(MSGObjRead_EN, ObjReadCtrlCfg, ObjReadAppCfg, ObjReadTargetCfg,, 0, ObjReadResData);
END_FUNCTION_BLOCK]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

View File

@@ -1,332 +1,332 @@
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := TRUE
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__RA_E300_OUTPUT_CONTROL [ __CDINT00000008 ] := __TMPB1
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000174 ]
__TMPB__R_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT00000174 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPB3 := __SYSVA_FIRST_SCAN _OR __TMPB2
_IF _NOT __TMPB3 _GOTO __LAB1
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := TRUE
__TMPI1 := __CDINT00000308 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT00001388
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000002 ]
__TMPM2 := __TMPV1 [ __DINT_NULL ]
__TMPM3 := __TMPM1 + __TMPM2
__TMPI1 := __CDINT00000268 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __TMPM3
__TMPI1 := __CDINT00000268 + __CDINT00000053
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __USINT_NULL
__TMPI1 := __CDINT00000268 + __CDINT00000054
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT000000FA
__TMPI1 := __CDINT00000268 + __CDINT00000058
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT00000320
__TMPI1 := __CDINT00000268 + __CDINT0000005C
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := FALSE
__TMPI1 := __CDINT00000254 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUSINT0000000E
__TMPI1 := __CDINT00000254 + __CDINT00000002
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000001
__TMPI1 := __CDINT00000254 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT00000001
__TMPI1 := __CDINT00000254 + __CDINT00000008
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000007
__TMPI1 := __CDINT000000F4 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT000003E8
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000002 ]
__TMPM2 := __TMPV1 [ __DINT_NULL ]
__TMPM3 := __TMPM1 + __TMPM2
__TMPI1 := __CDINT00000114 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __TMPM3
__TMPI1 := __CDINT00000114 + __CDINT00000053
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUSINT00000001
__TMPI1 := __CDINT00000114 + __CDINT00000054
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __UDINT_NULL
__TMPI1 := __CDINT00000114 + __CDINT00000058
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __UDINT_NULL
__TMPI1 := __CDINT00000114 + __CDINT0000005C
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := FALSE
__TMPI1 := __CDINT00000100 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUSINT00000010
__TMPI1 := __CDINT00000100 + __CDINT00000002
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000009
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000004 ]
__TMPUSI1 := __TMPV1 [ __DINT_NULL ]
__TMPUSI1 := __TMPUSI1 + __CUSINT00000001
_PUSH_PAR __TMPUSI1
__TMPUDI1 := _CALL ANY_TO_USINT
__TMPI1 := __CDINT00000100 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __TMPUDI1
__TMPI1 := __CDINT00000100 + __CDINT00000008
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000003
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000180 ]
__TMPV4 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV4 [ __TMPV3 ] := __TMPV3
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __STRING_NULL
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := FALSE
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000004 ]
__TMPUSI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPUSI1
__TMPI1 := _CALL ANY_TO_USINT
__TMPB2 := __TMPI1 <> __DINT_NULL
_IF __TMPB2 _GOTO __LAB3
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM4
_GOTO __LAB2
__LAB3 :
__TMPB2 := __TMPI1 <> __CDINT00000001
_IF __TMPB2 _GOTO __LAB4
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM5
_GOTO __LAB2
__LAB4 :
__TMPB2 := __TMPI1 <> __CDINT00000002
_IF __TMPB2 _GOTO __LAB5
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM6
_GOTO __LAB2
__LAB5 :
__TMPB2 := __TMPI1 <> __CDINT00000003
_IF __TMPB2 _GOTO __LAB6
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM7
_GOTO __LAB2
__LAB6 :
__TMPB2 := __TMPI1 <> __CDINT00000004
_IF __TMPB2 _GOTO __LAB7
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM8
_GOTO __LAB2
__LAB7 :
__TMPB2 := __TMPI1 <> __CDINT00000005
_IF __TMPB2 _GOTO __LAB8
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM9
_GOTO __LAB2
__LAB8 :
__TMPB2 := __TMPI1 <> __CDINT00000006
_IF __TMPB2 _GOTO __LAB9
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM10
_GOTO __LAB2
__LAB9 :
__TMPB2 := __TMPI1 <> __CDINT00000007
_IF __TMPB2 _GOTO __LABa
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM11
_GOTO __LAB2
__LABa :
__TMPB2 := __TMPI1 <> __CDINT00000008
_IF __TMPB2 _GOTO __LABb
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM12
_GOTO __LAB2
__LABb :
__TMPB2 := __TMPI1 <> __CDINT00000009
_IF __TMPB2 _GOTO __LABc
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM13
_GOTO __LAB2
__LABc :
__TMPB2 := __TMPI1 <> __CDINT0000000A
_IF __TMPB2 _GOTO __LABd
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM14
_GOTO __LAB2
__LABd :
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM15
__LAB2 :
_GOTO __LABe
__LAB1 :
__LABe :
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV5 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000250 ]
__TMPB__F_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB F_TRIG __TMPV5
__TMPI1 := __CDINT00000250 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LABf
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000180 ]
__TMPV4 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV4 [ __TMPV3 ] := __TMPV3
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := FALSE
_GOTO __LAB10
__LABf :
__LAB10 :
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV6 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000004 ]
__TMPUSI1 := __TMPV6 [ __DINT_NULL ]
__TMPB2 := __TMPUSI1 <= __CUSINT0000000A
__TMPB1 := __TMPB1 _AND __TMPB2
_IF _NOT __TMPB1 _GOTO __LAB11
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000001
__TMPV7 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000006 ]
__TMPB4 := __TMPV7 [ __DINT_NULL ]
_PUSH_PAR __TMPB4
__TMPUSI2 := _CALL ANY_TO_BOOL
__TMPI2 := __CDINT0000034C + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __TMPUSI2
__TMPI1 := __CDINT000002C8 + __CDINT00000012
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002FE ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT000000BC + __CDINT00000012
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000178 ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000006 ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000034E ]
__TMPB__R_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000006 ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV5 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000352 ]
__TMPB__F_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB F_TRIG __TMPV5
__TMPI1 := __CDINT000002FE + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB12
__TMPI2 := __CDINT000002C8 + __CDINT00000014
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV3 [ __TMPV1 ] := __TMPV1
__TMPV8 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000334 ]
__TMPV9 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000336 ]
__TMPV10 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000314 ]
__TMPV9 := __TMPV10
__TMPV11 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000033A ]
__TMPV12 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000014 ]
__TMPV11 := __TMPV12
__TMPV8 [ __CDINT0000000E ] := __ADI__RA_E300_OUTPUT_CONTROL_0_0
__TMPV8 [ __CDINT00000010 ] := __ADI__RA_E300_OUTPUT_CONTROL_0_1
__TMPV8 [ __CDINT00000012 ] := __CSINT00000008
__TMPV8 [ __CDINT00000014 ] := __CSINT00000006
__FBL_RET := _PUSHCALLFB COP __TMPV8
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__TMPM3 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
_PUSH_PAR __TMPM3
_PUSH_PAR __CDINT00000004
__TMPM16 := _CALL LEFT
__TMPB2 := __TMPM16 = __TMPM17
_IF _NOT __TMPB2 _GOTO __LAB13
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := FALSE
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := TRUE
_GOTO __LAB14
__LAB13 :
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM18
__LAB14 :
_GOTO __LAB15
__LAB12 :
__LAB15 :
__TMPI1 := __CDINT00000178 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB16
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := TRUE
_GOTO __LAB17
__LAB16 :
__LAB17 :
__TMPI1 := __CDINT0000034E + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPI2 := __CDINT00000352 + __CDINT00000002
__TMPB3 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPB2 := __TMPB2 _OR __TMPB3
__TMPI3 := __CDINT00000001 - __CDINT00000001
__TMPI3 := __TMPI3 * __CDINT00000053
__TMPI4 := __CDINT00000014 + __TMPI3
__TMPM3 := __RA_E300_OUTPUT_CONTROL [ __TMPI4 ]
_PUSH_PAR __TMPM3
_PUSH_PAR __CDINT00000004
__TMPM16 := _CALL LEFT
__TMPB5 := __TMPM16 = __TMPM17
__TMPB2 := __TMPB2 _AND __TMPB5
_IF _NOT __TMPB2 _GOTO __LAB18
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := FALSE
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := TRUE
_GOTO __LAB19
__LAB18 :
__LAB19 :
__TMPI1 := __CDINT00000014 + __DINT_NULL
__TMPI2 := __CDINT000002C8 + __TMPI1
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000302 ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT00000014 + __DINT_NULL
__TMPI2 := __CDINT000000BC + __TMPI1
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000017C ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT00000302 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB1a
__TMPI2 := __CDINT000002C8 + __CDINT00000014
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV3 [ __TMPV1 ] := __TMPV1
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __STRING_NULL
_GOTO __LAB1b
__LAB1a :
__LAB1b :
__TMPI1 := __CDINT0000017C + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB1c
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := FALSE
__TMPI1 := __CDINT000000BC + __CDINT00000014
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV3 [ __TMPV1 ] := __TMPV1
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __STRING_NULL
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := TRUE
_GOTO __LAB1d
__LAB1c :
__LAB1d :
_GOTO __LAB1e
__LAB11 :
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := FALSE
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := FALSE
__LAB1e :
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ]
__TMPV13 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002C8 ]
__TMPB__MSG_CIPGENERIC__IN := __TMPB2
__TMPV14 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002CA ]
__TMPV15 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000308 ]
__TMPV14 := __TMPV15
__TMPV16 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002CC ]
__TMPV17 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000254 ]
__TMPV16 := __TMPV17
__TMPV18 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002CE ]
__TMPV19 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000268 ]
__TMPV18 := __TMPV19
__TMPV9 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002D4 ]
__TMPV10 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000314 ]
__TMPV9 := __TMPV10
__TMPV13 [ __CDINT00000010 ] := __ADI__RA_E300_OUTPUT_CONTROL_0_2
__FBL_RET := _PUSHCALLFB MSG_CIPGENERIC __TMPV13
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ]
__TMPV13 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000BC ]
__TMPB__MSG_CIPGENERIC__IN := __TMPB2
__TMPV14 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000BE ]
__TMPV15 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000F4 ]
__TMPV14 := __TMPV15
__TMPV16 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000C0 ]
__TMPV17 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000100 ]
__TMPV16 := __TMPV17
__TMPV18 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000C2 ]
__TMPV19 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000114 ]
__TMPV18 := __TMPV19
__TMPV20 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000C4 ]
__TMPV21 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000034C ]
__TMPV20 := __TMPV21
__TMPV13 [ __CDINT0000000E ] := __ADI__RA_E300_OUTPUT_CONTROL_0_3
__FBL_RET := _PUSHCALLFB MSG_CIPGENERIC __TMPV13
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := TRUE
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__RA_E300_OUTPUT_CONTROL [ __CDINT00000008 ] := __TMPB1
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000174 ]
__TMPB__R_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT00000174 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPB3 := __SYSVA_FIRST_SCAN _OR __TMPB2
_IF _NOT __TMPB3 _GOTO __LAB1
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := TRUE
__TMPI1 := __CDINT00000308 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT00001388
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000002 ]
__TMPM2 := __TMPV1 [ __DINT_NULL ]
__TMPM3 := __TMPM1 + __TMPM2
__TMPI1 := __CDINT00000268 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __TMPM3
__TMPI1 := __CDINT00000268 + __CDINT00000053
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __USINT_NULL
__TMPI1 := __CDINT00000268 + __CDINT00000054
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT000000FA
__TMPI1 := __CDINT00000268 + __CDINT00000058
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT00000320
__TMPI1 := __CDINT00000268 + __CDINT0000005C
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := FALSE
__TMPI1 := __CDINT00000254 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUSINT0000000E
__TMPI1 := __CDINT00000254 + __CDINT00000002
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000001
__TMPI1 := __CDINT00000254 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT00000001
__TMPI1 := __CDINT00000254 + __CDINT00000008
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000007
__TMPI1 := __CDINT000000F4 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUDINT000003E8
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000002 ]
__TMPM2 := __TMPV1 [ __DINT_NULL ]
__TMPM3 := __TMPM1 + __TMPM2
__TMPI1 := __CDINT00000114 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __TMPM3
__TMPI1 := __CDINT00000114 + __CDINT00000053
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUSINT00000001
__TMPI1 := __CDINT00000114 + __CDINT00000054
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __UDINT_NULL
__TMPI1 := __CDINT00000114 + __CDINT00000058
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __UDINT_NULL
__TMPI1 := __CDINT00000114 + __CDINT0000005C
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := FALSE
__TMPI1 := __CDINT00000100 + __DINT_NULL
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUSINT00000010
__TMPI1 := __CDINT00000100 + __CDINT00000002
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000009
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000004 ]
__TMPUSI1 := __TMPV1 [ __DINT_NULL ]
__TMPUSI1 := __TMPUSI1 + __CUSINT00000001
_PUSH_PAR __TMPUSI1
__TMPUDI1 := _CALL ANY_TO_USINT
__TMPI1 := __CDINT00000100 + __CDINT00000004
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __TMPUDI1
__TMPI1 := __CDINT00000100 + __CDINT00000008
__RA_E300_OUTPUT_CONTROL [ __TMPI1 ] := __CUINT00000003
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000180 ]
__TMPV4 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV4 [ __TMPV3 ] := __TMPV3
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __STRING_NULL
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := FALSE
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000004 ]
__TMPUSI1 := __TMPV1 [ __DINT_NULL ]
_PUSH_PAR __TMPUSI1
__TMPI1 := _CALL ANY_TO_USINT
__TMPB2 := __TMPI1 <> __DINT_NULL
_IF __TMPB2 _GOTO __LAB3
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM4
_GOTO __LAB2
__LAB3 :
__TMPB2 := __TMPI1 <> __CDINT00000001
_IF __TMPB2 _GOTO __LAB4
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM5
_GOTO __LAB2
__LAB4 :
__TMPB2 := __TMPI1 <> __CDINT00000002
_IF __TMPB2 _GOTO __LAB5
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM6
_GOTO __LAB2
__LAB5 :
__TMPB2 := __TMPI1 <> __CDINT00000003
_IF __TMPB2 _GOTO __LAB6
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM7
_GOTO __LAB2
__LAB6 :
__TMPB2 := __TMPI1 <> __CDINT00000004
_IF __TMPB2 _GOTO __LAB7
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM8
_GOTO __LAB2
__LAB7 :
__TMPB2 := __TMPI1 <> __CDINT00000005
_IF __TMPB2 _GOTO __LAB8
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM9
_GOTO __LAB2
__LAB8 :
__TMPB2 := __TMPI1 <> __CDINT00000006
_IF __TMPB2 _GOTO __LAB9
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM10
_GOTO __LAB2
__LAB9 :
__TMPB2 := __TMPI1 <> __CDINT00000007
_IF __TMPB2 _GOTO __LABa
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM11
_GOTO __LAB2
__LABa :
__TMPB2 := __TMPI1 <> __CDINT00000008
_IF __TMPB2 _GOTO __LABb
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM12
_GOTO __LAB2
__LABb :
__TMPB2 := __TMPI1 <> __CDINT00000009
_IF __TMPB2 _GOTO __LABc
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM13
_GOTO __LAB2
__LABc :
__TMPB2 := __TMPI1 <> __CDINT0000000A
_IF __TMPB2 _GOTO __LABd
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM14
_GOTO __LAB2
__LABd :
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM15
__LAB2 :
_GOTO __LABe
__LAB1 :
__LABe :
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV5 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000250 ]
__TMPB__F_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB F_TRIG __TMPV5
__TMPI1 := __CDINT00000250 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LABf
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000180 ]
__TMPV4 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV4 [ __TMPV3 ] := __TMPV3
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := FALSE
_GOTO __LAB10
__LABf :
__LAB10 :
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __DINT_NULL ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV6 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000004 ]
__TMPUSI1 := __TMPV6 [ __DINT_NULL ]
__TMPB2 := __TMPUSI1 <= __CUSINT0000000A
__TMPB1 := __TMPB1 _AND __TMPB2
_IF _NOT __TMPB1 _GOTO __LAB11
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000001
__TMPV7 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000006 ]
__TMPB4 := __TMPV7 [ __DINT_NULL ]
_PUSH_PAR __TMPB4
__TMPUSI2 := _CALL ANY_TO_BOOL
__TMPI2 := __CDINT0000034C + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __TMPUSI2
__TMPI1 := __CDINT000002C8 + __CDINT00000012
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002FE ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT000000BC + __CDINT00000012
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000178 ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000006 ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000034E ]
__TMPB__R_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000006 ]
__TMPB1 := __TMPV1 [ __DINT_NULL ]
__TMPV5 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000352 ]
__TMPB__F_TRIG__CLK := __TMPB1
__FBL_RET := _PUSHCALLFB F_TRIG __TMPV5
__TMPI1 := __CDINT000002FE + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB12
__TMPI2 := __CDINT000002C8 + __CDINT00000014
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV3 [ __TMPV1 ] := __TMPV1
__TMPV8 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000334 ]
__TMPV9 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000336 ]
__TMPV10 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000314 ]
__TMPV9 := __TMPV10
__TMPV11 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000033A ]
__TMPV12 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000014 ]
__TMPV11 := __TMPV12
__TMPV8 [ __CDINT0000000E ] := __ADI__RA_E300_OUTPUT_CONTROL_0_0
__TMPV8 [ __CDINT00000010 ] := __ADI__RA_E300_OUTPUT_CONTROL_0_1
__TMPV8 [ __CDINT00000012 ] := __CSINT00000008
__TMPV8 [ __CDINT00000014 ] := __CSINT00000006
__FBL_RET := _PUSHCALLFB COP __TMPV8
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__TMPM3 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
_PUSH_PAR __TMPM3
_PUSH_PAR __CDINT00000004
__TMPM16 := _CALL LEFT
__TMPB2 := __TMPM16 = __TMPM17
_IF _NOT __TMPB2 _GOTO __LAB13
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := FALSE
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := TRUE
_GOTO __LAB14
__LAB13 :
__RA_E300_OUTPUT_CONTROL [ __CDINT00000067 ] := __TMPM18
__LAB14 :
_GOTO __LAB15
__LAB12 :
__LAB15 :
__TMPI1 := __CDINT00000178 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB16
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := TRUE
_GOTO __LAB17
__LAB16 :
__LAB17 :
__TMPI1 := __CDINT0000034E + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPI2 := __CDINT00000352 + __CDINT00000002
__TMPB3 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPB2 := __TMPB2 _OR __TMPB3
__TMPI3 := __CDINT00000001 - __CDINT00000001
__TMPI3 := __TMPI3 * __CDINT00000053
__TMPI4 := __CDINT00000014 + __TMPI3
__TMPM3 := __RA_E300_OUTPUT_CONTROL [ __TMPI4 ]
_PUSH_PAR __TMPM3
_PUSH_PAR __CDINT00000004
__TMPM16 := _CALL LEFT
__TMPB5 := __TMPM16 = __TMPM17
__TMPB2 := __TMPB2 _AND __TMPB5
_IF _NOT __TMPB2 _GOTO __LAB18
__RA_E300_OUTPUT_CONTROL [ __CDINT000000BA ] := FALSE
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := TRUE
_GOTO __LAB19
__LAB18 :
__LAB19 :
__TMPI1 := __CDINT00000014 + __DINT_NULL
__TMPI2 := __CDINT000002C8 + __TMPI1
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000302 ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT00000014 + __DINT_NULL
__TMPI2 := __CDINT000000BC + __TMPI1
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV2 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000017C ]
__TMPB__R_TRIG__CLK := __TMPB2
__FBL_RET := _PUSHCALLFB R_TRIG __TMPV2
__TMPI1 := __CDINT00000302 + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB1a
__TMPI2 := __CDINT000002C8 + __CDINT00000014
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __TMPI2 ]
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV3 [ __TMPV1 ] := __TMPV1
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __STRING_NULL
_GOTO __LAB1b
__LAB1a :
__LAB1b :
__TMPI1 := __CDINT0000017C + __CDINT00000002
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
_IF _NOT __TMPB2 _GOTO __LAB1c
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := FALSE
__TMPI1 := __CDINT000000BC + __CDINT00000014
__TMPV1 := __RA_E300_OUTPUT_CONTROL [ __TMPI1 ]
__TMPV3 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000000A ]
__TMPV3 [ __TMPV1 ] := __TMPV1
__TMPI1 := __CDINT00000001 - __CDINT00000001
__TMPI1 := __TMPI1 * __CDINT00000053
__TMPI2 := __CDINT00000014 + __TMPI1
__RA_E300_OUTPUT_CONTROL [ __TMPI2 ] := __STRING_NULL
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := TRUE
_GOTO __LAB1d
__LAB1c :
__LAB1d :
_GOTO __LAB1e
__LAB11 :
__RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ] := FALSE
__RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ] := FALSE
__LAB1e :
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002FC ]
__TMPV13 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002C8 ]
__TMPB__MSG_CIPGENERIC__IN := __TMPB2
__TMPV14 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002CA ]
__TMPV15 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000308 ]
__TMPV14 := __TMPV15
__TMPV16 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002CC ]
__TMPV17 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000254 ]
__TMPV16 := __TMPV17
__TMPV18 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002CE ]
__TMPV19 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000268 ]
__TMPV18 := __TMPV19
__TMPV9 := __RA_E300_OUTPUT_CONTROL [ __CDINT000002D4 ]
__TMPV10 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000314 ]
__TMPV9 := __TMPV10
__TMPV13 [ __CDINT00000010 ] := __ADI__RA_E300_OUTPUT_CONTROL_0_2
__FBL_RET := _PUSHCALLFB MSG_CIPGENERIC __TMPV13
__TMPB2 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000F0 ]
__TMPV13 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000BC ]
__TMPB__MSG_CIPGENERIC__IN := __TMPB2
__TMPV14 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000BE ]
__TMPV15 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000F4 ]
__TMPV14 := __TMPV15
__TMPV16 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000C0 ]
__TMPV17 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000100 ]
__TMPV16 := __TMPV17
__TMPV18 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000C2 ]
__TMPV19 := __RA_E300_OUTPUT_CONTROL [ __CDINT00000114 ]
__TMPV18 := __TMPV19
__TMPV20 := __RA_E300_OUTPUT_CONTROL [ __CDINT000000C4 ]
__TMPV21 := __RA_E300_OUTPUT_CONTROL [ __CDINT0000034C ]
__TMPV20 := __TMPV21
__TMPV13 [ __CDINT0000000E ] := __ADI__RA_E300_OUTPUT_CONTROL_0_3
__FBL_RET := _PUSHCALLFB MSG_CIPGENERIC __TMPV13

View File

@@ -0,0 +1,172 @@
<?xml version="1.0" encoding="utf-8"?>
<Pou FileVersion="200.00.003" Name="RA_E300_OUTPUT_CONTROL" ElementGuid="c345a0fc-70a0-459b-b07b-8ffd7729b5e8" Comment="" SingleTextLine="Control E300 Control Module and Digital Expansion Module output points using Explicit Messaging" Language="ST" CustomFbd="0" Localization="Prj" GroupName="(User defined)" GenDebugInfo="false" UseResPassword="true" GenerateSymbMon="true" Is1499="false">
<FunctionBlock IdentifierNb="0" Keyword="" InitInstance="false" SymbMonExtraBytes="128" />
<LocalVars>
<Variable Name="FBEN" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="IPAddress" DataType="STRING" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="80" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="OutputNumber" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="OutputSetting" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarInput" Alias="" AccessRights="Read" StringSize="0" Direction="Input" CommentFields="" Attributes="0" />
<Variable Name="FBENO" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="CIPErrorStatus" DataType="CIPSTATUS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="ProductName" DataType="STRING" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="80" Direction="Output" CommentFields="" Attributes="0">
<Dimension Lower="1" Upper="1" />
</Variable>
<Variable Name="OutputName" DataType="STRING" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="80" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="SettingApplied" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="VarOutput" Alias="" AccessRights="Write" StringSize="0" Direction="Output" CommentFields="" Attributes="0" />
<Variable Name="MSGWriteOutput" DataType="MSG_CIPGENERIC" InitialValue=",,,,,,,2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGWriteOutput_EN" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="WriteOutputCtrlCfg" DataType="CIPCONTROLCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="WriteOutputAppCfg" DataType="CIPAPPCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="WriteOutputTargetCfg" DataType="CIPTARGETCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="FBEN_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGWriteOutput_Q_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGWriteOutput_Err_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="NoErrorStatus" DataType="CIPSTATUS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ZeroedAttributes" DataType="CIPEEOBJ_ATTRIBS" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="FBEN_FTRIG" DataType="F_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameAppCfg" DataType="CIPAPPCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameTargetCfg" DataType="CIPTARGETCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName" DataType="MSG_CIPGENERIC" InitialValue=",,,,,,,2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName_EN" DataType="BOOL" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName_Q_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="MSGProdName_Err_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameCtrlCfg" DataType="CIPCONTROLCFG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="ProdNameResData" DataType="USINT" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0">
<Dimension Lower="0" Upper="31" />
</Variable>
<Variable Name="ProdName_COP" DataType="COP" InitialValue=",,,,2(),,2(0),2(0)" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="WriteOutputReqData" DataType="USINT" InitialValue="1" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0">
<Dimension Lower="1" Upper="1" />
</Variable>
<Variable Name="OutputSetting_RTRIG" DataType="R_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
<Variable Name="OutputSetting_FTRIG" DataType="F_TRIG" InitialValue="" Comment="" Address="" Modifier="Constant" Kind="Var" Alias="" AccessRights="ReadWrite" StringSize="0" Direction="Local" CommentFields="" Attributes="0" />
</LocalVars>
<PouBody><![CDATA[FUNCTION_BLOCK RA_E300_OUTPUT_CONTROL
(*=====================================================================================================================================
[UDFB Name] :RA_E300_OUTPUT_CONTROL
[Category] :Communication
[Description] :Control E300 Control Module and Digital Expansion Module output points using Explicit Messaging
[Author] :Rockwell Automation
[Created using CCW version] :8.0
[FeedBack] :RASampleCode@ra.rockwell.com
[Revison History] :2015-October - Original Release for Version 8
[Notes] :
=====================================================================================================================================*)
MSGWriteOutput_EN := TRUE;
FBENO := FBEN;
(*-------- Initialize --------*)
FBEN_RTRIG(FBEN);
IF (__SYSVA_FIRST_SCAN OR FBEN_RTRIG.Q) THEN
MSGProdName_EN := TRUE;
ProdNameCtrlCfg.TriggerType := 5000;
ProdNameTargetCfg.Path := '4,'+ IPAddress;
ProdNameTargetCfg.CipConnMode := 0; (*0-unconnected, 1-Class 3*)
ProdNameTargetCfg.UcmmTimeout := 250; (*Unconnected message time out, Set to 0 means 3000ms, range 250-10000*)
ProdNameTargetCfg.ConnMsgTimeout := 800; (*Class3 time out, Set to 0 means 3000ms, range 800-10000*)
ProdNameTargetCfg.ConnClose := FALSE;(*Don't close the connection upon message completion*)
ProdNameAppCfg.Service := 14; (*Service code 0Eh for Get Single Attribute*)
ProdNameAppCfg.Class := 1; (*Class code 01h for Identity Object*)
ProdNameAppCfg.Instance := 1; (*Instance 1*)
ProdNameAppCfg.Attribute := 7; (*Attribute 7 for Product Name*)
WriteOutputCtrlCfg.TriggerType := 1000;
WriteOutputTargetCfg.Path := '4,'+ IPAddress;
WriteOutputTargetCfg.CipConnMode := 1; (*0-unconnected, 1-Class 3*)
WriteOutputTargetCfg.UcmmTimeout := 0; (*Unconnected message time out, Set to 0 means 3000ms, range 250-10000*)
WriteOutputTargetCfg.ConnMsgTimeout := 0; (*Class3 time out, Set to 0 means 3000ms, range 800-10000*)
WriteOutputTargetCfg.ConnClose := FALSE;(*Don't close the connection upon message completion*)
WriteOutputAppCfg.Service := 16; (*Service code 10h for Set Attributes Single*)
WriteOutputAppCfg.Class := 9; (*Class code 09h for Discrete Output Point Object*)
WriteOutputAppCfg.Instance := ANY_TO_UDINT(OutputNumber+1);
WriteOutputAppCfg.Attribute := 3; (*Set Value 0=OFF, 1=ON*)
CIPErrorStatus := NoErrorStatus;
ProductName[1] := '';
SettingApplied := FALSE;
CASE OutputNumber OF
0: OutputName:= 'OutputPt00';
1: OutputName:= 'OutputPt01';
2: OutputName:= 'OutputPt02';
3: OutputName:= 'OutDigMod1Pt00';
4: OutputName:= 'OutDigMod1Pt01';
5: OutputName:= 'OutDigMod2Pt00';
6: OutputName:= 'OutDigMod2Pt01';
7: OutputName:= 'OutDigMod3Pt00';
8: OutputName:= 'OutDigMod3Pt01';
9: OutputName:= 'OutDigMod4Pt00';
10: OutputName:= 'OutDigMod4Pt01';
ELSE
OutputName:= 'Invalid OutputNumber';
END_CASE;
END_IF;
FBEN_FTRIG(FBEN);
IF FBEN_FTRIG.Q THEN
CIPErrorStatus := NoErrorStatus;
SettingApplied := FALSE;
END_IF;
(*-------- Main Routine --------*)
IF FBEN AND OutputNumber<=10 THEN
WriteOutputReqData[1] := ANY_TO_USINT(OutputSetting); (*0=OFF, 1=ON*)
MSGProdName_Q_RTRIG(MSGProdName.Q);
MSGWriteOutput_Q_RTRIG(MSGWriteOutput.Q);
OutputSetting_RTRIG(OutputSetting);
OutputSetting_FTRIG(OutputSetting);
IF MSGProdName_Q_RTRIG.Q THEN
CIPErrorStatus := MSGProdName.Status;
ProdName_COP(TRUE,ProdNameResData,0,ProductName,0,1,FALSE);
IF (LEFT(ProductName[1],4)='E300') THEN
MSGProdName_EN := FALSE;
MSGWriteOutput_EN := TRUE;
ELSE
OutputName := 'Not An E300';
END_IF;
END_IF;
IF MSGWriteOutput_Q_RTRIG.Q THEN
SettingApplied := TRUE;
(*MSGWriteOutput_EN := FALSE;*)
END_IF;
IF (OutputSetting_RTRIG.Q OR OutputSetting_FTRIG.Q) AND (LEFT(ProductName[1],4)='E300') THEN
SettingApplied := FALSE;
MSGWriteOutput_EN := TRUE;
END_IF;
MSGProdName_Err_RTRIG(MSGProdName.Status.Error);
MSGWriteOutput_Err_RTRIG(MSGWriteOutput.Status.Error);
IF MSGProdName_Err_RTRIG.Q THEN
CIPErrorStatus := MSGProdName.Status;
ProductName[1] := '';
END_IF;
IF MSGWriteOutput_Err_RTRIG.Q THEN
MSGWriteOutput_EN := FALSE;
CIPErrorStatus := MSGWriteOutput.Status;
ProductName[1] := '';
MSGProdName_EN := TRUE;
END_IF;
ELSE
MSGProdName_EN := FALSE;
MSGWriteOutput_EN := FALSE;
END_IF;
MSGProdName(MSGProdName_EN, ProdNameCtrlCfg, ProdNameAppCfg, ProdNameTargetCfg,, 0, ProdNameResData);
MSGWriteOutput(MSGWriteOutput_EN, WriteOutputCtrlCfg, WriteOutputAppCfg, WriteOutputTargetCfg, WriteOutputReqData, 1,);
END_FUNCTION_BLOCK]]></PouBody>
<PouUIProperties>
<Root Version="6">
<LanguageContainerStyle CommentTextColor="Green" CommentFont="Courier New, 10pt" PonctuationTextColor="Black" PonctuationFont="Courier New, 10pt" IdentifierTextColor="Black" IdentifierFont="Courier New, 10pt" OperatorTextColor="Black" OperatorFont="Courier New, 10pt" ReservedWordTextColor="Fuchsia" ReservedWordFont="Courier New, 10pt" PouTextColor="BlueViolet" PouFont="Courier New, 10pt" NumberTextColor="Firebrick" NumberFont="Courier New, 10pt" StringTextColor="Gray" StringFont="Courier New, 10pt" EditorTextAreaBackgroundColor="White" EditorFont="Courier New, 10pt" Index="0" />
</Root>
</PouUIProperties>
</Pou>

Some files were not shown because too many files have changed in this diff Show More