Add project files.
@ -0,0 +1,575 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<FileVersion>1.0.0.0</FileVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{28c0a30c-39aa-43ef-ab3c-daf6ebe119ea}</ProjectGuid>
|
||||
<SubObjectsSortedByName>True</SubObjectsSortedByName>
|
||||
<DownloadApplicationInfo>true</DownloadApplicationInfo>
|
||||
<WriteProductVersion>true</WriteProductVersion>
|
||||
<GenerateTpy>false</GenerateTpy>
|
||||
<Name>_605MILL</Name>
|
||||
<ProgramVersion>3.1.4024.0</ProgramVersion>
|
||||
<Application>{631d3ee5-7f73-48a5-ae6f-60a0dbd01971}</Application>
|
||||
<TypeSystem>{af031d20-fbed-49fb-ae34-f57e42bda58e}</TypeSystem>
|
||||
<Implicit_Task_Info>{a8a8824b-781b-4739-8eb8-326f4fe45813}</Implicit_Task_Info>
|
||||
<Implicit_KindOfTask>{76b36016-8bd0-45cb-85e5-35309cf24ca9}</Implicit_KindOfTask>
|
||||
<Implicit_Jitter_Distribution>{4853a406-29d3-43ee-a322-e7cb50185769}</Implicit_Jitter_Distribution>
|
||||
<LibraryReferences>{bb1547db-a2ad-4a61-ad8b-48fc04ec33e8}</LibraryReferences>
|
||||
<CompilerDefines>VISU_USEWSTRING,VISU_USEPROPERTYINFO</CompilerDefines>
|
||||
<Released>false</Released>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="DUTs\Apartm.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\AparZone.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\Building.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\HMI_ApartmDisplay.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\PIDParam.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\System.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\WindData.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\Zone.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DUTs\ZoneProp.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="GlobalTextList.TcGTLO">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="GVLs\GVL.TcGVL">
|
||||
<SubType>Code</SubType>
|
||||
<LinkAlways>true</LinkAlways>
|
||||
</Compile>
|
||||
<Compile Include="GVLs\IO.TcGVL">
|
||||
<SubType>Code</SubType>
|
||||
<LinkAlways>true</LinkAlways>
|
||||
</Compile>
|
||||
<Compile Include="GVLs\Set.TcGVL">
|
||||
<SubType>Code</SubType>
|
||||
<LinkAlways>true</LinkAlways>
|
||||
</Compile>
|
||||
<Compile Include="PlcTask.TcTTO">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\Alarms.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\AutoCalibration.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\Cell_Startup.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\fbHeatLevel.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\fbMAU.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\fbPID.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\fbPulseDelay.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\fbSamples.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\fbZone.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB\LowPassFilter.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\CLK_PRG.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\CTRL_IN.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\CTRL_OUT.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\CTRL_PID.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\CTRL_PWM.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\DEAD_BAND.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\DEAD_ZONE.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\FT_DERIV.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\FT_PIDWL.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\FT_PIWL.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\PWM_DC.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\SCALE_R.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\TP_X.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\T_PLC_MS.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\FB_OSCAT\T_PLC_US.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\Functions\LimitValueINT.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\Functions\LimitValueLREAL.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\MAIN.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\SavePersistent.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="POUs\Send_email.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Visualization Manager.TcVMO">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\AlarmsDEP.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\Alarms\ActiveAlarms.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\Alarms\Alarms.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\Alarms\AlarmsHistory.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\HeatLevelsEdit1to6.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\HeatLevelsEdit7to10.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\HeatLevelsView1to6.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\HeatLevelsEdit.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\HeatLevelsView.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\HeatLevelsView7to10.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\ZoneDutyCycleEdit.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\DutyCyclesFrames\ZoneDutyCycleView.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\HeatersManualOffsetSetup.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\HeatLevelPIDOffsets.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ImagePool.TcIPO">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\MainScr.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\MappingTest\MappingByFloors.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\MappingTest\MappingFloor1_4.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\MappingTest\MappingFloor5_8.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\MappingTest\MappingScreenHolder.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\MAU\MAUscreenII.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\DateTimeFrame.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\DutyCycleOffset.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\FloorsTemperatures.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\FloorTemperature.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\HeadFrame.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\MappingFloor.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\MappingFrameUnitII.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\SetTempFloor.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\TemperatureFrameUnit.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\TemperatureFrameUnitII.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\TempSetFrameUnit.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\TempSetFrameUnitII.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\ZoneIndicator.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\ZoneMapping.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\ZoneTemperatures.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ScreenTemplates\ZoneTempSet.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\Setup.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\SimpleHeaterSetOffset.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\SystemGlobalSetup.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\SystemParametersSetup.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTempsSet\UnitsSetPointsScreenHolder.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTempsSet\UnitsSetTempOnFloors.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTempsSet\UnitsTempSetFloors1_5.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTempsSet\UnitsTempSetFloors6_8.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTemps\Floors1_5.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTemps\Floors5_8.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTemps\UnitsTemperaturesScreenHolder.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\UnitsTemps\UnitsTemperaturesUSERsScreen.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\VISUs\ScreenTemplates\MappingFrameUnit.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISUs\VISUs\ZonesLayout.TcVIS">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Visualization Manager.TcVMO</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="VISU_TASK.TcTTO">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="DUTs" />
|
||||
<Folder Include="GVLs" />
|
||||
<Folder Include="POUs\FB" />
|
||||
<Folder Include="POUs\FB_OSCAT" />
|
||||
<Folder Include="POUs\Functions" />
|
||||
<Folder Include="POUs" />
|
||||
<Folder Include="VISUs" />
|
||||
<Folder Include="VISUs\VISUs" />
|
||||
<Folder Include="VISUs\VISUs\Alarms" />
|
||||
<Folder Include="VISUs\VISUs\MappingTest" />
|
||||
<Folder Include="VISUs\VISUs\MAU" />
|
||||
<Folder Include="VISUs\VISUs\DutyCyclesFrames" />
|
||||
<Folder Include="VISUs\VISUs\ScreenTemplates" />
|
||||
<Folder Include="VISUs\VISUs\UnitsTemps" />
|
||||
<Folder Include="VISUs\VISUs\UnitsTempsSet" />
|
||||
<Folder Include="VISUs\VISUs\VISUs" />
|
||||
<Folder Include="VISUs\VISUs\VISUs\ScreenTemplates" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PlaceholderReference Include="CmpBitmapPool">
|
||||
<DefaultResolution>CmpBitmapPool, * (System)</DefaultResolution>
|
||||
<Namespace>CmpBitmapPool</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Custom Alarm Library for TF1800">
|
||||
<DefaultResolution>Custom Alarm Library for TF1800, * (K3D Inc)</DefaultResolution>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuElemEventTable">
|
||||
<DefaultResolution>VisuElemEventTable, 1.0.3.0 (System)</DefaultResolution>
|
||||
<Namespace>VisuElemEventTable</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuElemMeter">
|
||||
<DefaultResolution>VisuElemMeter, 3.5.13.0 (System)</DefaultResolution>
|
||||
<Namespace>VisuElemMeter</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuElems">
|
||||
<DefaultResolution>VisuElems, 3.5.13.40 (System)</DefaultResolution>
|
||||
<Namespace>VisuElems</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuElemsSpecialControls">
|
||||
<DefaultResolution>VisuElemsSpecialControls, 3.5.13.0 (System)</DefaultResolution>
|
||||
<Namespace>VisuElemsSpecialControls</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuElemsWinControls">
|
||||
<DefaultResolution>VisuElemsWinControls, 3.5.13.20 (System)</DefaultResolution>
|
||||
<Namespace>VisuElemsWinControls</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuElemTextEditor">
|
||||
<DefaultResolution>VisuElemTextEditor, 3.5.13.0 (System)</DefaultResolution>
|
||||
<Namespace>VisuElemTextEditor</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="system_visuinputs">
|
||||
<DefaultResolution>visuinputs, 3.5.13.0 (system)</DefaultResolution>
|
||||
<Namespace>visuinputs</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="System_VisuNativeControl">
|
||||
<DefaultResolution>VisuNativeControl, 3.5.13.0 (System)</DefaultResolution>
|
||||
<Namespace>VisuNativeControl</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
<ResolverGuid>2717eb6a-dd07-4c66-8d8d-cacebd7b18ae</ResolverGuid>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_EtherCAT">
|
||||
<DefaultResolution>Tc2_EtherCAT, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_EtherCAT</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_ModbusRTU">
|
||||
<DefaultResolution>Tc2_ModbusRTU, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_ModbusRTU</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_Smtp">
|
||||
<DefaultResolution>Tc2_Smtp, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_Smtp</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_Standard">
|
||||
<DefaultResolution>Tc2_Standard, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_Standard</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_SUPS">
|
||||
<DefaultResolution>Tc2_SUPS, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_SUPS</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_System">
|
||||
<DefaultResolution>Tc2_System, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_System</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc2_Utilities">
|
||||
<DefaultResolution>Tc2_Utilities, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc2_Utilities</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc3_EventLogger">
|
||||
<DefaultResolution>Tc3_EventLogger, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc3_EventLogger</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="Tc3_Module">
|
||||
<DefaultResolution>Tc3_Module, * (Beckhoff Automation GmbH)</DefaultResolution>
|
||||
<Namespace>Tc3_Module</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="VisuDialogs">
|
||||
<DefaultResolution>VisuDialogs, * (System)</DefaultResolution>
|
||||
<Namespace>VisuDialogs</Namespace>
|
||||
</PlaceholderReference>
|
||||
<PlaceholderReference Include="VisuUserManagement">
|
||||
<DefaultResolution>VisuUserMgmt, * (System)</DefaultResolution>
|
||||
<Namespace>VisuUserManagement</Namespace>
|
||||
<SystemLibrary>true</SystemLibrary>
|
||||
</PlaceholderReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="605MILL.tmc">
|
||||
<SubType>Content</SubType>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<LibraryReference Include="VisuSymbols,3.5.10.0,System">
|
||||
<Namespace>VisuSymbols</Namespace>
|
||||
</LibraryReference>
|
||||
</ItemGroup>
|
||||
<ProjectExtensions>
|
||||
<PlcProjectOptions>
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="OptionKey">
|
||||
<v n="Name">"<ProjectRoot>"</v>
|
||||
<d n="SubKeys" t="Hashtable" ckt="String" cvt="OptionKey">
|
||||
<v>{192FAD59-8248-4824-A8DE-9177C94C195A}</v>
|
||||
<o>
|
||||
<v n="Name">"{192FAD59-8248-4824-A8DE-9177C94C195A}"</v>
|
||||
<d n="SubKeys" t="Hashtable" />
|
||||
<d n="Values" t="Hashtable" />
|
||||
</o>
|
||||
<v>{246001F4-279D-43AC-B241-948EB31120E1}</v>
|
||||
<o>
|
||||
<v n="Name">"{246001F4-279D-43AC-B241-948EB31120E1}"</v>
|
||||
<d n="SubKeys" t="Hashtable" />
|
||||
<d n="Values" t="Hashtable" ckt="String">
|
||||
<v>UnicodeStrings</v>
|
||||
<v>true</v>
|
||||
<v>GlobalTextListFilePath</v>
|
||||
<v>""</v>
|
||||
<v>ExtendedSettings</v>
|
||||
<v>true</v>
|
||||
<v>GlobalVisuImageFilePath</v>
|
||||
<v>"%APPLICATIONPATH%\"</v>
|
||||
<v>GeneralPropertySupport</v>
|
||||
<v>true</v>
|
||||
</d>
|
||||
</o>
|
||||
<v>{29BD8D0C-3586-4548-BB48-497B9A01693F}</v>
|
||||
<o>
|
||||
<v n="Name">"{29BD8D0C-3586-4548-BB48-497B9A01693F}"</v>
|
||||
<d n="SubKeys" t="Hashtable" ckt="String" cvt="OptionKey">
|
||||
<v>Rules</v>
|
||||
<o>
|
||||
<v n="Name">"Rules"</v>
|
||||
<d n="SubKeys" t="Hashtable" />
|
||||
<d n="Values" t="Hashtable" />
|
||||
</o>
|
||||
</d>
|
||||
<d n="Values" t="Hashtable" />
|
||||
</o>
|
||||
<v>{8F99A816-E488-41E4-9FA3-846536012284}</v>
|
||||
<o>
|
||||
<v n="Name">"{8F99A816-E488-41E4-9FA3-846536012284}"</v>
|
||||
<d n="SubKeys" t="Hashtable" />
|
||||
<d n="Values" t="Hashtable" />
|
||||
</o>
|
||||
<v>{40450F57-0AA3-4216-96F3-5444ECB29763}</v>
|
||||
<o>
|
||||
<v n="Name">"{40450F57-0AA3-4216-96F3-5444ECB29763}"</v>
|
||||
<d n="SubKeys" t="Hashtable" />
|
||||
<d n="Values" t="Hashtable" ckt="String">
|
||||
<v>ActiveVisuExtensions_0</v>
|
||||
<v>"IR0whWr8bwdyBwAA2CM5uwAAAAC4AQAAabXwRAAAAAABAAAAAAAAAAEaUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwACTHsANgBkADQAMgBlADkAMQA4AC0AZQA2AGEANQAtADQAYgAyAGMALQA5ADEANwBiAC0AZQAwADcAMwAxAGIANwA2ADYAYgAxAGYAfQADDkMAbwBtAHAAYQBuAHkABDBCAGUAYwBrAGgAbwBmAGYAIABBAHUAdABvAG0AYQB0AGkAbwBuACAARwBtAGIASAAFDlYAZQByAHMAaQBvAG4ABg4xAC4AMAAuADMALgAwAAcMQQBjAHQAaQB2AGUACAhiAG8AbwBsAAkITgBhAG0AZQAKJFYAaQBzAHUARQBsAGUAbQBFAHYAZQBuAHQAVABhAGIAbABlAAsWUAByAG8AZgBpAGwAZQBEAGEAdABhAAxMewAxADYAZQA1ADUAYgA2ADAALQA3ADAANAAzAC0ANABhADYAMwAtAGIANgA1AGIALQA2ADEANAA3ADEAMwA4ADcAOABkADQAMgB9AA0STABpAGIAcgBhAHIAaQBlAHMADkx7ADMAYgBmAGQANQA0ADUAOQAtAGIAMAA3AGYALQA0AGQANgBlAC0AYQBlADEAYQAtAGEAOAAzADMANQA2AGEANQA1ADEANAAyAH0AD0x7ADkAYwA5ADUAOAA5ADYAOAAtADIAYwA4ADUALQA0ADEAYgBiAC0AOAA4ADcAMQAtADgAOQA1AGYAZgAxAGYAZQBkAGUAMQBhAH0AEAZpAG4AdAARClUAcwBhAGcAZQASClQAaQB0AGwAZQATDFMAeQBzAHQAZQBtABQSVgBpAHMAdQBFAGwAZQBtAHMAFRhWAGkAcwB1AEUAbABlAG0AQgBhAHMAZQAWFFYAaQBzAHUASQBuAHAAdQB0AHMAFyZEAGUAdgBQAGwAYQBjAGUAaABvAGwAZABlAHIAcwBVAHMAZQBkABgiUABsAHUAZwBpAG4AQwBvAG4AcwB0AHIAYQBpAG4AdABzABlMewA0ADMAZAA1ADIAYgBjAGUALQA5ADQAMgBjAC0ANAA0AGQANwAtADkAZQA5ADQALQAxAGIAZgBkAGYAMwAxADAAZQA2ADMAYwB9ABocQQB0AEwAZQBhAHMAdABWAGUAcgBzAGkAbwBuABsUUABsAHUAZwBpAG4ARwB1AGkAZAAcFlMAeQBzAHQAZQBtAC4ARwB1AGkAZAAdSGEAZgBjAGQANQA0ADQANgAtADQAOQAxADQALQA0AGYAZQA3AC0AYgBiADcAOAAtADkAYgBmAGYAZQBiADcAMABmAGQAMQA3AB4UVQBwAGQAYQB0AGUASQBuAGYAbwAfTHsAYgAwADMAMwA2ADYAYQA4AC0AYgA1AGMAMAAtADQAYgA5AGEALQBhADAAMABlAC0AZQBiADgANgAwADEAMQAxADAANABjADMAfQAgDlUAcABkAGEAdABlAHMAIUx7ADEAOAA2ADgAZgBmAGMAOQAtAGUANABmAGMALQA0ADUAMwAyAC0AYQBjADAANgAtADEAZQAzADkAYgBiADUANQA3AGIANgA5AH0AIkx7AGEANQBiAGQANAA4AGMAMwAtADAAZAAxADcALQA0ADEAYgA1AC0AYgAxADYANAAtADUAZgBjADYAYQBkADIAYgA5ADYAYgA3AH0AIxZPAGIAagBlAGMAdABzAFQAeQBwAGUAJFRVAHAAZABhAHQAZQBMAGEAbgBnAHUAYQBnAGUATQBvAGQAZQBsAEYAbwByAEMAbwBuAHYAZQByAHQAaQBiAGwAZQBMAGkAYgByAGEAcgBpAGUAcwAlEEwAaQBiAFQAaQB0AGwAZQAmFEwAaQBiAEMAbwBtAHAAYQBuAHkAJx5VAHAAZABhAHQAZQBQAHIAbwB2AGkAZABlAHIAcwAoOFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ASABhAHMAaAB0AGEAYgBsAGUAKRJ2AGkAcwB1AGUAbABlAG0AcwAqDHMAeQBzAHQAZQBtACtINgBjAGIAMQBjAGQAZQAxAC0AZAA1AGQAYwAtADQAYQAzAGIALQA5ADAANQA0AC0AMgAxAGYAYQA3ADUANgBhADMAZgBhADQALChJAG4AdABlAHIAZgBhAGMAZQBWAGUAcgBzAGkAbwBuAEkAbgBmAG8ALUx7AGMANgAxADEAZQA0ADAAMAAtADcAZgBiADkALQA0AGMAMwA1AC0AYgA5AGEAYwAtADQAZQAzADEANABiADUAOQA5ADYANAAzAH0ALhhNAGEAagBvAHIAVgBlAHIAcwBpAG8AbgAvGE0AaQBuAG8AcgBWAGUAcgBzAGkAbwBuADAMTABlAGcAYQBjAHkAMTBMAGEAbgBnAHUAYQBnAGUATQBvAGQAZQBsAFYAZQByAHMAaQBvAG4ASQBuAGYAbwAyMEwAbwBhAGQATABpAGIAcgBhAHIAaQBlAHMASQBuAHQAbwBQAHIAbwBqAGUAYwB0ADMaQwBvAG0AcABhAHQAaQBiAGkAbABpAHQAeQDQAAIaBtADAS0E0AUBLQbQBwitAdAJAS0K0AsMGgfQDQ4aAUUNDwTQAA8aBEUFEAQBAAAAAAAAAAMAAAAAAAAA0BEQrQIAAADQEgEtCtADAS0T0AAPGgRFBRAEAwAAAAUAAAANAAAAFAAAANAREK0BAAAA0BIBLRTQAwEtE9AADxoERQUQBAMAAAAFAAAADQAAABQAAADQERCtBAAAANASAS0V0AMBLRPQAA8aBEUFEAQDAAAABQAAAA0AAAAAAAAA0BEQrQQAAADQEgEtFtADAS0T0BcIrQFFGBkB0AAZGgJFGhAEAwAAAAUAAAANAAAAAAAAANAbHC0d0B4fGgJFICEC0AAiGgVFBRAEAwAAAAMAAAAAAAAACgAAANAjEK0AAAAA0AkBLSTQJQEtFNAmAS0T0AAiGgVFBRAEAwAAAAMAAAAAAAAACgAAANAjEK0BAAAA0AkBLSTQJQEtFNAmAS0TmicoAUUAAQLQAAEtKdAAAS0q0AAcLSvQLC0aA9AuEK0BAAAA0C8QrRcAAADQMAitANAxLRoD0C4QrQIAAADQLxCtAwAAANAwCK0A0DIIrQDQMwitAA=="</v>
|
||||
<v>ActiveVisuExtensionsLength</v>
|
||||
<v>1</v>
|
||||
<v>ActiveVisuProfile</v>
|
||||
<v>"IR0whWr8bwfwBwAAiD2qpQAAAABVAgAA37x72QAAAAABAAAAAAAAAAEaUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwACTHsAZgA5ADUAYgBiADQAMgA2AC0ANQA1ADIANAAtADQAYgA0ADUALQA5ADQAMAAwAC0AZgBiADAAZgAyAGUANwA3AGUANQAxAGIAfQADCE4AYQBtAGUABDBUAHcAaQBuAEMAQQBUACAAMwAuADEAIABCAHUAaQBsAGQAIAA0ADAAMgA0AC4ANwAFFlAAcgBvAGYAaQBsAGUARABhAHQAYQAGTHsAMQA2AGUANQA1AGIANgAwAC0ANwAwADQAMwAtADQAYQA2ADMALQBiADYANQBiAC0ANgAxADQANwAxADMAOAA3ADgAZAA0ADIAfQAHEkwAaQBiAHIAYQByAGkAZQBzAAhMewAzAGIAZgBkADUANAA1ADkALQBiADAANwBmAC0ANABkADYAZQAtAGEAZQAxAGEALQBhADgAMwAzADUANgBhADUANQAxADQAMgB9AAlMewA5AGMAOQA1ADgAOQA2ADgALQAyAGMAOAA1AC0ANAAxAGIAYgAtADgAOAA3ADEALQA4ADkANQBmAGYAMQBmAGUAZABlADEAYQB9AAoOVgBlAHIAcwBpAG8AbgALBmkAbgB0AAwKVQBzAGEAZwBlAA0KVABpAHQAbABlAA4aVgBpAHMAdQBFAGwAZQBtAE0AZQB0AGUAcgAPDkMAbwBtAHAAYQBuAHkAEAxTAHkAcwB0AGUAbQARElYAaQBzAHUARQBsAGUAbQBzABIwVgBpAHMAdQBFAGwAZQBtAHMAUwBwAGUAYwBpAGEAbABDAG8AbgB0AHIAbwBsAHMAEyhWAGkAcwB1AEUAbABlAG0AcwBXAGkAbgBDAG8AbgB0AHIAbwBsAHMAFCRWAGkAcwB1AEUAbABlAG0AVABlAHgAdABFAGQAaQB0AG8AcgAVIlYAaQBzAHUATgBhAHQAaQB2AGUAQwBvAG4AdAByAG8AbAAWFHYAaQBzAHUAaQBuAHAAdQB0AHMAFwxzAHkAcwB0AGUAbQAYGFYAaQBzAHUARQBsAGUAbQBCAGEAcwBlABkmRABlAHYAUABsAGEAYwBlAGgAbwBsAGQAZQByAHMAVQBzAGUAZAAaCGIAbwBvAGwAGyJQAGwAdQBnAGkAbgBDAG8AbgBzAHQAcgBhAGkAbgB0AHMAHEx7ADQAMwBkADUAMgBiAGMAZQAtADkANAAyAGMALQA0ADQAZAA3AC0AOQBlADkANAAtADEAYgBmAGQAZgAzADEAMABlADYAMwBjAH0AHRxBAHQATABlAGEAcwB0AFYAZQByAHMAaQBvAG4AHhRQAGwAdQBnAGkAbgBHAHUAaQBkAB8WUwB5AHMAdABlAG0ALgBHAHUAaQBkACBIYQBmAGMAZAA1ADQANAA2AC0ANAA5ADEANAAtADQAZgBlADcALQBiAGIANwA4AC0AOQBiAGYAZgBlAGIANwAwAGYAZAAxADcAIRRVAHAAZABhAHQAZQBJAG4AZgBvACJMewBiADAAMwAzADYANgBhADgALQBiADUAYwAwAC0ANABiADkAYQAtAGEAMAAwAGUALQBlAGIAOAA2ADAAMQAxADEAMAA0AGMAMwB9ACMOVQBwAGQAYQB0AGUAcwAkTHsAMQA4ADYAOABmAGYAYwA5AC0AZQA0AGYAYwAtADQANQAzADIALQBhAGMAMAA2AC0AMQBlADMAOQBiAGIANQA1ADcAYgA2ADkAfQAlTHsAYQA1AGIAZAA0ADgAYwAzAC0AMABkADEANwAtADQAMQBiADUALQBiADEANgA0AC0ANQBmAGMANgBhAGQAMgBiADkANgBiADcAfQAmFk8AYgBqAGUAYwB0AHMAVAB5AHAAZQAnVFUAcABkAGEAdABlAEwAYQBuAGcAdQBhAGcAZQBNAG8AZABlAGwARgBvAHIAQwBvAG4AdgBlAHIAdABpAGIAbABlAEwAaQBiAHIAYQByAGkAZQBzACgQTABpAGIAVABpAHQAbABlACkUTABpAGIAQwBvAG0AcABhAG4AeQAqHlUAcABkAGEAdABlAFAAcgBvAHYAaQBkAGUAcgBzACs4UwB5AHMAdABlAG0ALgBDAG8AbABsAGUAYwB0AGkAbwBuAHMALgBIAGEAcwBoAHQAYQBiAGwAZQAsEnYAaQBzAHUAZQBsAGUAbQBzAC1INgBjAGIAMQBjAGQAZQAxAC0AZAA1AGQAYwAtADQAYQAzAGIALQA5ADAANQA0AC0AMgAxAGYAYQA3ADUANgBhADMAZgBhADQALihJAG4AdABlAHIAZgBhAGMAZQBWAGUAcgBzAGkAbwBuAEkAbgBmAG8AL0x7AGMANgAxADEAZQA0ADAAMAAtADcAZgBiADkALQA0AGMAMwA1AC0AYgA5AGEAYwAtADQAZQAzADEANABiADUAOQA5ADYANAAzAH0AMBhNAGEAagBvAHIAVgBlAHIAcwBpAG8AbgAxGE0AaQBuAG8AcgBWAGUAcgBzAGkAbwBuADIMTABlAGcAYQBjAHkAMzBMAGEAbgBnAHUAYQBnAGUATQBvAGQAZQBsAFYAZQByAHMAaQBvAG4ASQBuAGYAbwA0MEwAbwBhAGQATABpAGIAcgBhAHIAaQBlAHMASQBuAHQAbwBQAHIAbwBqAGUAYwB0ADUaQwBvAG0AcABhAHQAaQBiAGkAbABpAHQAeQDQAAIaA9ADAS0E0AUGGgfQBwgaAUUHCQjQAAkaBEUKCwQDAAAABQAAAA0AAAAAAAAA0AwLrQIAAADQDQEtDtAPAS0Q0AAJGgRFCgsEAwAAAAUAAAANAAAAKAAAANAMC60BAAAA0A0BLRHQDwEtENAACRoERQoLBAMAAAAFAAAADQAAAAAAAADQDAutAgAAANANAS0S0A8BLRDQAAkaBEUKCwQDAAAABQAAAA0AAAAUAAAA0AwLrQIAAADQDQEtE9APAS0Q0AAJGgRFCgsEAwAAAAUAAAANAAAAAAAAANAMC60CAAAA0A0BLRTQDwEtENAACRoERQoLBAMAAAAFAAAADQAAAAAAAADQDAutAgAAANANAS0V0A8BLRDQAAkaBEUKCwQDAAAABQAAAA0AAAAAAAAA0AwLrQIAAADQDQEtFtAPAS0X0AAJGgRFCgsEAwAAAAUAAAANAAAAKAAAANAMC60EAAAA0A0BLRjQDwEtENAZGq0BRRscAdAAHBoCRR0LBAMAAAAFAAAADQAAAAAAAADQHh8tINAhIhoCRSMkAtAAJRoFRQoLBAMAAAADAAAAAAAAAAoAAADQJgutAAAAANADAS0n0CgBLRHQKQEtENAAJRoFRQoLBAMAAAADAAAAAAAAAAoAAADQJgutAQAAANADAS0n0CgBLRHQKQEtEJoqKwFFAAEC0AABLSzQAAEtF9AAHy0t0C4vGgPQMAutAQAAANAxC60XAAAA0DIarQDQMy8aA9AwC60CAAAA0DELrQMAAADQMhqtANA0Gq0A0DUarQA="</v>
|
||||
</d>
|
||||
</o>
|
||||
</d>
|
||||
<d n="Values" t="Hashtable" />
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="Hashtable">System.Collections.Hashtable</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="OptionKey">{54dd0eac-a6d8-46f2-8c27-2f43c7e49861}</Type>
|
||||
<Type n="String">System.String</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</PlcProjectOptions>
|
||||
</ProjectExtensions>
|
||||
</Project>
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="AparZone" Id="{b204c244-f977-48e1-a4ff-88d4ab5864fa}">
|
||||
<Declaration><![CDATA[TYPE AparZone :
|
||||
STRUCT
|
||||
iAp : INT; // Apartment number where the room is
|
||||
iZone : INT; // Zone number where the appartment is
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="Apartm" Id="{bc6c7360-bdaa-4287-a6b6-8864ad748e20}">
|
||||
<Declaration><![CDATA[TYPE Apartm :
|
||||
STRUCT
|
||||
// iNo : UINT; // Room number. In case of few rooms in the Apartment.
|
||||
iAp : INT; // Apartment number where the room is
|
||||
iFloor : INT; // Floor number where the room is
|
||||
iFloorIndex : INT; // Apartment index on the floor (inside array)
|
||||
iZone : INT; // Zone number where the appartment is
|
||||
iT_SP : INT; // Temperature Set Point x0.1°
|
||||
iT_PV AT %I* :INT; // Temperature Process Value (Current Temperature) x0.1°
|
||||
bSSR AT %Q* : BOOL; // SSR Control Output
|
||||
fDC : REAL; // % Calculated Duty Cycle
|
||||
fDCOffset : REAL; // % Duty Cycle Calculated offset +- value to zone duty cycle
|
||||
// iCO2 : INT; // Current CO2 level
|
||||
// bType : BOOL; // 0 Main: 1 Service (corridors)
|
||||
bNM : BOOL; // 0 Night mode OFF; 1 Night Mode ON
|
||||
bPWMSSR_ON : BOOL; // ON/OFF SSR command from the PID controller
|
||||
bHMISSR_ON : BOOL; // ON/OFF SSR command from the HMI screen
|
||||
fbSSR_Delay : fbPulseDelay; // SSR ON Delay function block to prevent all SSRs start at the same time
|
||||
|
||||
HMI_Visible : BOOL; //show/hide visualisation at HMI;0 visible,1 invisible according to HMI specs
|
||||
HMI_Value : REAL; //converted iT_PV to REAl - for visualisation at HMI
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="Building" Id="{b57b78fd-7720-4f45-8777-10b069448b20}">
|
||||
<Declaration><![CDATA[TYPE Building :
|
||||
STRUCT
|
||||
// Variables market with // are moved to the GVL retain data
|
||||
|
||||
// iSetT : INT; // Set temperature x0.1°
|
||||
iOutT : INT; // Outside Temperature x0.1°
|
||||
// iTmax : INT; // Max set temperature x0.1°
|
||||
// iTmin : INT; // Min set temperature x0.1°
|
||||
iTAver : INT; // Average building temperature x0.1°
|
||||
iWindSpeed : INT; // Wind Speed
|
||||
iWindDir : INT; // Wind Direction, North is 0
|
||||
// iChillFactor : INT; // Chill Factor
|
||||
// bNM : BOOL; // 0 Night mode OFF; 1 Night Mode ON
|
||||
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="HMI_ApartmDisplay" Id="{9aba87be-1ba9-4ece-bbab-29581d2ddfb0}">
|
||||
<Declaration><![CDATA[TYPE HMI_ApartmDisplay :
|
||||
STRUCT
|
||||
iAp : INT; // Apartment Number
|
||||
bSSR : BOOL; // SSR Output, Output control
|
||||
bHMISSR_ON : BOOL; // for mapping test purpose
|
||||
fValue : REAL; // Actual temperature °C
|
||||
bVisible : BOOL;
|
||||
fT_SP : REAL; // Temperature Set Point °C
|
||||
iZoneNo : INT; // Zone Number
|
||||
iInZoneNo : INT; // Inside Zone number
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="PIDParam" Id="{a4e56d41-8809-4704-890c-739d6c980f22}">
|
||||
<Declaration><![CDATA[TYPE PIDParam :
|
||||
STRUCT
|
||||
// LREAL
|
||||
(*
|
||||
// Inputs
|
||||
fSetpointValue : LREAL; (* setpoint value *)
|
||||
fActualValue : LREAL; (* actual value *)
|
||||
bReset : BOOL; (* TRUE at this input resets the internal state variables and the controller output. *)
|
||||
bManual : BOOL; (* Manual mode ON/OFF *)
|
||||
fM_In : REAL; (* Output in Manual Mode *)
|
||||
fOfs : REAL; (* Offset for the output *)
|
||||
fCtrlCycleTime : LREAL; (* controller cycle time in seconds [s] *)
|
||||
fKp : LREAL; (* proportional gain Kp (P) *)
|
||||
fTn : LREAL; (* integral gain Tn (I) [s] *)
|
||||
fTv : LREAL; (* derivative gain Tv (D-T1) [s] *)
|
||||
fTd : LREAL; (* derivative damping time Td (D-T1) [s] *)
|
||||
fLL : REAL; (* lower output limit *)
|
||||
fLH : REAL; (* upper output limit *)
|
||||
// Outputs
|
||||
fCtrlOutput : LREAL; (* Output of the PID-element. *)
|
||||
nErrorStatus : UINT; (* 0 - nERR_NOERROR No error; 1 - nERR_INVALIDPARAM Invalid parameter; 2 - nERR_INVALIDCYCLETIME Invalid cycle time. *)
|
||||
DIFF : REAL; (* deviation *)
|
||||
LIM : BOOL; (* TRUE if the output has reached a limit *)
|
||||
*)
|
||||
|
||||
// REAL
|
||||
// Inputs
|
||||
fSetpointValue : REAL; (* setpoint value *)
|
||||
fActualValue : REAL; (* actual value *)
|
||||
bReset : BOOL; (* TRUE at this input resets the internal state variables and the controller output. *)
|
||||
bManual : BOOL; (* Manual mode ON/OFF *)
|
||||
fM_In : REAL; (* Output in Manual Mode *)
|
||||
fOfs : REAL; (* Offset for the output *)
|
||||
fCtrlCycleTime : REAL; (* controller cycle time in seconds [s] *)
|
||||
fKp : REAL; (* proportional gain Kp (P) *)
|
||||
fTn : REAL; (* integral gain Tn (I) [s] *)
|
||||
fTv : REAL; (* derivative gain Tv (D-T1) [s] *)
|
||||
fTd : REAL; (* derivative damping time Td (D-T1) [s] *)
|
||||
fLL : REAL; (* lower output limit *)
|
||||
fLH : REAL; (* upper output limit *)
|
||||
// Outputs
|
||||
fCtrlOutput : REAL; (* Output of the PID-element. *)
|
||||
nErrorStatus : UINT; (* 0 - nERR_NOERROR No error; 1 - nERR_INVALIDPARAM Invalid parameter; 2 - nERR_INVALIDCYCLETIME Invalid cycle time. *)
|
||||
DIFF : REAL; (* deviation *)
|
||||
LIM : BOOL; (* TRUE if the output has reached a limit *)
|
||||
|
||||
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="System" Id="{65045e7e-dca4-4d4c-88ed-2e35fd97e755}">
|
||||
<Declaration><![CDATA[TYPE System :
|
||||
STRUCT
|
||||
|
||||
bAlways_OFF:BOOL;
|
||||
bAlways_ON:BOOL;
|
||||
bFirst_Scan_Bit:BOOL;
|
||||
bTenthSecondFlasher:BOOL;
|
||||
bQuarterSecondFlasher:BOOL;
|
||||
bHalfSecondFlasher:BOOL;
|
||||
bOneSecondFlasher:BOOL;
|
||||
bTwentyMilliFlasher:BOOL;
|
||||
bTwentMilli_OS:BOOL;
|
||||
bStart_Up_Done:BOOL;
|
||||
bMin_Tmr_Done: BOOL;
|
||||
|
||||
ActiveFaultText: STRING(80);
|
||||
ActiveLLMsgText: STRING(80);
|
||||
|
||||
AMS_ID : T_AMSNetID;
|
||||
END_STRUCT
|
||||
END_TYPE]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="WindData" Id="{fe510c14-f1cb-4af1-8e15-054afa87b808}">
|
||||
<Declaration><![CDATA[
|
||||
TYPE WindData : // Vaisala Weather Transmitter
|
||||
STRUCT
|
||||
iAirPressureAver : INT; // Reg:18 Addr:0x0011, 3000..12000, 300..1200 hPa, Err:32767
|
||||
iWindDirectionInst : INT; // Reg:19-Instant, 22-Average; 0..3599, 0..359.9° x0.1°
|
||||
iWindDirectionAver : INT; // Reg:19-Instant, 22-Average; 0..3599, 0..359.9° x0.1°
|
||||
iWindDirectionMin : INT; // Reg:19-Instant, 22-Average; 0..3599, 0..359.9° x0.1°
|
||||
iWindDirectionMax : INT; // Reg:19-Instant, 22-Average; 0..3599, 0..359.9° x0.1°
|
||||
iWindDirectionGust : INT; // Reg:19-Instant, 22-Average; 0..3599, 0..359.9° x0.1°
|
||||
iWindSpeedInst : INT; // Reg:43 Addr:0x002A; 0..750 x0.1 m/s ; 0..75 m/s
|
||||
iWindSpeedAver : INT; // Reg:46 Addr:0x002D; 0..750 x0.1 m/s ; 0..75 m/s
|
||||
iWindSpeedMin : INT; // Reg:44 Addr:0x002B; 0..750 x0.1 m/s ; 0..75 m/s
|
||||
iWindSpeedMax : INT; // Reg:45 Addr:0x002C; 0..750 x0.1 m/s ; 0..75 m/s
|
||||
iWindSpeedGust : INT; // Reg:48 Addr:0x002F, m/s, 0..750, 0..75 m/s, Err:32767
|
||||
iWindChillT : INT; // Reg:40-Instant; -600..700 x0.1 °C ; -60..70°C
|
||||
iHeaterTemperature : INT; // Reg:42 Addr:0x0029 , -500..1500, -50..150°C, Err:32767
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="Zone" Id="{c064f863-9f93-4a1e-820a-ead6a279da6e}">
|
||||
<Declaration><![CDATA[TYPE Zone :
|
||||
STRUCT
|
||||
iID : INT; // ID unique number, can be an index in the Array
|
||||
iZone : INT; // Zone number.
|
||||
iTAver : INT; // Calculated Zone Average Temperature x0.1°C
|
||||
fDutyCycle : REAL; // Calculated Duty Cycle '
|
||||
iDutyCycleManualOffset : INT:=0; //Additional dutycycle for zone 0-20%
|
||||
iChillFactor : INT; // Calculated Chill Factor
|
||||
iAngle : INT; // Zone angle related to North 0..360°
|
||||
iAngleOffset : INT; // +- value to calculate wind effectiveness
|
||||
arAp : ARRAY[1..Set.iNoApZoneMax] OF Apartm; // Array of Apartments in the Zone
|
||||
PID : PIDParam;
|
||||
bHMISSR_Manual : BOOL; // HMI PB, Zone Command to switch all SSR control to Manual Mode (Maping test)
|
||||
fHMI_TValue : REAL; // Converted to HMI (REAL) average temperature
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<DUT Name="ZoneProp" Id="{9814464d-8114-4a0d-84ef-51c7852195f9}">
|
||||
<Declaration><![CDATA[TYPE ZoneProp :
|
||||
STRUCT
|
||||
iApsNo : INT; // Number of Apartments in Zone
|
||||
iLowHigh : INT; // Number of Apartments to substruct when calculate Average Temperature
|
||||
fDCCorrection : REAL; // To correct Duty Cycle from the lower (1st) to the last floor. Higher floor requires less Duty Cycle
|
||||
bHeatEnabled : BOOL; // Enable/Disable Zone Heating
|
||||
fDutyCycle : REAL; // Calculated Duty Cycle, 0..1
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
@ -0,0 +1,49 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<GVL Name="GVL" Id="{7bc1699c-fcaa-4ea9-a3c6-841892db5f1d}">
|
||||
<Declaration><![CDATA[{attribute 'qualified_only'}
|
||||
VAR_GLOBAL PERSISTENT
|
||||
// nVarPers1 : DINT; (* 1. Persistent variable *)
|
||||
// bVarPers2 : BOOL; (* 2. Persistent variable *)
|
||||
END_VAR
|
||||
|
||||
VAR_GLOBAL RETAIN
|
||||
tSysRunTime : TIME; // System run time since PLC reset
|
||||
iChillFactor : INT; // Chill Factor
|
||||
END_VAR
|
||||
|
||||
VAR_GLOBAL
|
||||
System : System;
|
||||
fbU900 : FB_S_UPS_CX9020_U900; // FB to activate Persistant variables saving after power interruption.
|
||||
arZoneData : ARRAY[1..Set.iNoZones] OF Zone; // Array of Zones in the Building
|
||||
iTempOutside : INT; // Outside Temperature
|
||||
iTempOutsideChill : INT; // Outside Temperature with Chill Factor
|
||||
iTempAverage : INT; // Building Average Temperature
|
||||
PIDControl : ARRAY[1..Set.iNoZones] OF FB_BasicPID;
|
||||
tx : TIME; // System time
|
||||
tCurrentTime : TIMESTRUCT;
|
||||
W : WindData; // Data from the Vaisala Weather Transmitter
|
||||
arAptT_PV_Filter : ARRAY[1..Set.iNoZones,1..Set.iNoApZoneMax] OF LowPassFilter; // Array of Function blocks to filter input temperature fluctuations
|
||||
arAlarms : ARRAY[0..3] OF DINT; // Array of alarm bits
|
||||
END_VAR
|
||||
|
||||
// HMI Variables
|
||||
VAR_GLOBAL
|
||||
|
||||
bHMI_HeatTableInit : BOOL; // Initialize Heat Level tables for the each Zone.
|
||||
bHMI_AptTSP_PB : BOOL;
|
||||
bHMISSR_Manual : BOOL; // HMI PB, Global Command to switch all SSR control to Manual Mode (Maping test)
|
||||
bHMI_DisableOut1T_TC : BOOL; // Disable outside thermocouple 1
|
||||
bHMI_DisableOut2T_TC : BOOL; // Disable outside thermocouple 2
|
||||
bHMI_MAU1_Reset : BOOL; // MAU1 reset PID
|
||||
bHMI_MAU2_Reset : BOOL; // MAU1 reset PID
|
||||
bHMI_MAU1_HeatON : BOOL; // MAU1 Heat mode Active
|
||||
bHMI_MAU2_HeatON : BOOL; // MAU2 Heat mode Active
|
||||
// fbSSR_Delay : ARRAY[1..]fbPulseDelay;
|
||||
arHMIApt : ARRAY[1..Set.iNoOfFloors,1..Set.iNoApFloorMax] OF HMI_ApartmDisplay; // Apartments Sorted by floor to display on HMI
|
||||
currentUserName:WSTRING;
|
||||
END_VAR
|
||||
|
||||
]]></Declaration>
|
||||
</GVL>
|
||||
</TcPlcObject>
|
@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<GVL Name="IO" Id="{dd41e9fd-64b6-403e-8841-b8d61f3e823e}">
|
||||
<Declaration><![CDATA[// IO Declaration / Mapping
|
||||
//
|
||||
// Inputs
|
||||
VAR_GLOBAL
|
||||
inCR1021_BACCON AT %I* : BOOL;
|
||||
inCR1017_EmerCON AT %I* : BOOL;
|
||||
inCR1024_SftyBACREL AT %I* : BOOL;
|
||||
|
||||
inPLCIOLoopIX AT %I* : BOOL; // Jumper QX58.7 to IX116.7
|
||||
|
||||
END_VAR
|
||||
|
||||
// Outputs
|
||||
VAR_GLOBAL
|
||||
|
||||
CR2512_HeatersEnable AT %Q* : BOOL;
|
||||
CR2516_PLCRunning AT %Q* : BOOL;
|
||||
CR2520_WindSensorReset AT %Q* : BOOL;
|
||||
CR2524_RouterReset AT %Q* : BOOL;
|
||||
CR2528_RemotePanelReset AT %Q* : BOOL;
|
||||
CR2532_HMIReset AT %Q* : BOOL;
|
||||
CR2544_MAU_S_CTRL AT %Q* : BOOL;
|
||||
CR2548_MAUBoilerEnable AT %Q* : BOOL;
|
||||
CR2552_MAU_N_3WAY_VALVE AT %Q* : BOOL; // MAU NORTH 3-way Valve
|
||||
CR2556_RaspberryPiReset AT %Q* : BOOL;
|
||||
|
||||
outPLCIOLoopQX AT %Q* : BOOL; // Jumper QX58.7 to IX116.7
|
||||
|
||||
MAU1_TemperatureSET AT %Q* : INT; // 0..10V
|
||||
MAU1_ActuatorCTRL AT %Q* : INT; // 0..10V
|
||||
MAU2_TemperatureSET AT %Q* : INT; // 0..10V
|
||||
END_VAR
|
||||
|
||||
// Analog, Thermocouples, Outside of the Building on the NorthSside
|
||||
VAR_GLOBAL
|
||||
|
||||
TS3003_OutT1 AT %I* : INT;
|
||||
TS3007_OutT2 AT %I* : INT;
|
||||
TS3011_MPanelT AT %I* : INT;
|
||||
MAU1_GLY_IN AT %I* : INT;
|
||||
MAU1_GLY_OUT AT %I* : INT;
|
||||
MAU1_BoilerT AT %I* : INT;
|
||||
MAU1_AirT AT %I* : INT;
|
||||
MAU2_AirT AT %I* : INT;
|
||||
END_VAR]]></Declaration>
|
||||
</GVL>
|
||||
</TcPlcObject>
|
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 532 B |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 1.5 MiB |
@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="Alarms" Id="{2d85d74f-ff76-4a26-b1c7-c80367604076}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[PROGRAM Alarms
|
||||
VAR
|
||||
fbAdsReadEvents : FB_AdsReadEvents;
|
||||
bReadEvents : BOOL;
|
||||
|
||||
events:Events_Logger;
|
||||
fbGetCurTaskIdx: GETCURTASKINDEX;
|
||||
testAlarmZone:BOOL:=FALSE;
|
||||
testAlarmApt:BOOL:=FALSE;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*fbAdsReadEvents ( sNetId := ,
|
||||
bReadEvents := bReadEvents,
|
||||
nLanguageId := 0, // 0 - project dafault language; DE 1031, EN 1033
|
||||
eDateAndTimeFormat := E_DateAndTimeFormat.en_US,
|
||||
tRefreshTime := T#1S,
|
||||
tTimeout := T#5s);
|
||||
GVL.arAlarms[0].00 := IO.inCR1024_SftyBACREL AND NOT IO.inCR1017_EmerCON; // Contactor CR1017 is not ON. Check CR1024 coil power and CR2516 coil power and NO contact 9-1
|
||||
|
||||
IF GVL.iTempOutside > 1000 OR (IO.TS3003_OutT1>1000 AND IO.TS3007_OutT2>1000) THEN
|
||||
GVL.arAlarms[0].01 := TRUE; // If for any reason outside temperature is out of the reasonable range, set it -20°C
|
||||
ELSE
|
||||
GVL.arAlarms[0].01 := FALSE;
|
||||
END_IF*)
|
||||
fbGetCurTaskIdx();
|
||||
IF _TaskInfo[fbGetCurTaskIdx.index].FirstCycle THEN
|
||||
events.SetAlarm(Trigger:=ADR(testAlarmZone),Object:='Zone 1 alarm',Description:='Test Alarm zone');
|
||||
events.SetAlarm(Trigger:=ADR(testAlarmApt),Object:='Appartment 101 alarm',Description:='Test Alarm apt');
|
||||
END_IF;
|
||||
events.Run(IsFirstCycle:=_TaskInfo[fbGetCurTaskIdx.index].FirstCycle );
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="Alarms">
|
||||
<LineId Id="24" Count="4" />
|
||||
<LineId Id="21" Count="0" />
|
||||
<LineId Id="5" Count="0" />
|
||||
<LineId Id="15" Count="0" />
|
||||
<LineId Id="10" Count="0" />
|
||||
<LineId Id="12" Count="2" />
|
||||
<LineId Id="6" Count="0" />
|
||||
<LineId Id="43" Count="4" />
|
||||
<LineId Id="42" Count="0" />
|
||||
<LineId Id="36" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="AutoCalibration" Id="{91b03096-f66e-4642-bc92-f621c474de6d}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[PROGRAM AutoCalibration
|
||||
VAR
|
||||
iTError : INT; // The diffrence between PV and SP
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[iTError := GVL.iTempAverage - Set.iSetT; // The diffrence between PV and SP
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="AutoCalibration">
|
||||
<LineId Id="5" Count="0" />
|
||||
<LineId Id="8" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="LowPassFilter" Id="{b0ef46a4-dde4-4f26-a06a-0d4bfe4c83bc}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK LowPassFilter
|
||||
VAR_INPUT
|
||||
Enable : BOOL;
|
||||
In : REAL; // Analog Input, LREAL
|
||||
k : REAL; // Filter Constant. 0-1. 0: No filter, 1: Max filter, Typical 0.9
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Valid : BOOL;
|
||||
Out : REAL; // Filtered Value
|
||||
END_VAR
|
||||
VAR
|
||||
LastOut : REAL; //Temporally value
|
||||
FirstPass : BOOL; // First Pass of the Function
|
||||
R_TRIG_1 : R_TRIG;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[R_TRIG_1(CLK:=Enable);
|
||||
FirstPass :=R_TRIG_1.Q;
|
||||
|
||||
IF FirstPass Then
|
||||
LastOut:=REAL#0.0;
|
||||
END_IF;
|
||||
|
||||
If Enable Then
|
||||
Out := In*(REAL#1.0-k)+k*LastOut;
|
||||
LastOut := Out;
|
||||
Valid := TRUE;
|
||||
Else
|
||||
Valid := FALSE;
|
||||
End_IF;]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="LowPassFilter">
|
||||
<LineId Id="10" Count="12" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="fbHeatLevel" Id="{5d088aac-8a67-4376-a05b-3fb7868bdd95}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK fbHeatLevel
|
||||
VAR_INPUT
|
||||
inTemp : INT;
|
||||
inHeatLevelArray : ARRAY[0..30] OF INT ;// ARRAY [0..30] OF INT;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
outLevel : INT;
|
||||
outIndex : INT;
|
||||
END_VAR
|
||||
VAR
|
||||
aux : INT;
|
||||
Index : INT;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// Operates with Temperature range -400 to 200, which is x0.1 OR -40.0°C to 20.0°C
|
||||
|
||||
aux := LimitValueINT(LowerLimit:= -400, Input:= inTemp, UpperLimit:= 200);
|
||||
Index := (-1 * aux + 200)/20 ;
|
||||
outLevel := inHeatLevelArray[Index];
|
||||
outIndex := Index;
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="fbHeatLevel">
|
||||
<LineId Id="20" Count="4" />
|
||||
<LineId Id="17" Count="0" />
|
||||
<LineId Id="38" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="fbMAU" Id="{fedc3f65-b02c-4a18-a977-8b815cdd9288}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK fbMAU
|
||||
VAR_INPUT
|
||||
PV : INT;
|
||||
SP : INT;
|
||||
Manual : BOOL; // Manual Mode Active
|
||||
Man_Y : REAL; // Output value in Manual mode 0..100%
|
||||
Reset : BOOL; // Reset Command
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
PID_Y_Value : REAL;
|
||||
PID_Y : INT; // 0..100%; 0..32767
|
||||
END_VAR
|
||||
VAR
|
||||
PID_Par: PIDParam;
|
||||
PID_CTRL: CTRL_PID;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[//
|
||||
|
||||
// Run PID control to calculate Duty Cycle
|
||||
//
|
||||
// Settings
|
||||
//
|
||||
|
||||
PID_Par.bManual := Manual;
|
||||
PID_Par.fM_In := Man_Y;
|
||||
PID_Par.bReset := Reset;
|
||||
PID_Par.fSetpointValue := INT_TO_REAL(SP)/10; // setpoint value
|
||||
PID_Par.fActualValue := INT_TO_REAL(PV)/10; // process/actual value
|
||||
//GVL.arZoneData[iZoneNo].PID.bReset := FALSE; // TRUE at this input resets the internal state variables and the controller output.
|
||||
PID_Par.fCtrlCycleTime := 6.0; // LREAL controller cycle time in seconds [s]
|
||||
PID_Par.fKp := Set.MAU_fKp; // 15.0 LREAL proportional gain Kp (P)
|
||||
PID_Par.fTn := Set.MAU_fTn; // 100.0 LREAL integral gain Tn (I) [s]
|
||||
PID_Par.fTv := Set.MAU_fTv; // 200.0 LREAL derivative gain Tv (D-T1) [s]
|
||||
PID_Par.fTd := Set.MAU_fTd; // 1200.0 LREAL derivative damping time Td (D-T1) [s]
|
||||
|
||||
// Set Output Low and High Limits
|
||||
PID_Par.fLL := 0.0;
|
||||
PID_Par.fLH := 100.0;
|
||||
|
||||
// PID Control
|
||||
//
|
||||
PID_CTRL(
|
||||
ACT:= PID_Par.fActualValue,
|
||||
SET:= PID_Par.fSetpointValue,
|
||||
SUP:= Set.MAU_PID_Noise_SUP, // 0.2°C In PID controller, if ABS(SP-PV)<SUP then output value is 0
|
||||
OFS:= PID_Par.fOfs,
|
||||
M_I:= PID_Par.fM_In,
|
||||
MAN:= PID_Par.bManual,
|
||||
RST:= PID_Par.bReset,
|
||||
KP:= PID_Par.fKp,
|
||||
TN:= PID_Par.fTn,
|
||||
TV:= PID_Par.fTv,
|
||||
LL:= PID_Par.fLL,
|
||||
LH:= PID_Par.fLH,
|
||||
Y=> PID_Par.fCtrlOutput,
|
||||
DIFF=> PID_Par.DIFF,
|
||||
LIM=> );
|
||||
|
||||
PID_Y_Value := PID_Par.fCtrlOutput;
|
||||
|
||||
PID_Y := REAL_TO_INT(SCALE_R(
|
||||
X:= PID_Par.fCtrlOutput,
|
||||
I_LO:= 0.0,
|
||||
I_HI:= 100.0,
|
||||
O_LO:= 0,
|
||||
O_HI:= 32767.0)) ;
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="fbMAU">
|
||||
<LineId Id="13" Count="0" />
|
||||
<LineId Id="34" Count="4" />
|
||||
<LineId Id="66" Count="0" />
|
||||
<LineId Id="65" Count="0" />
|
||||
<LineId Id="70" Count="1" />
|
||||
<LineId Id="39" Count="6" />
|
||||
<LineId Id="33" Count="0" />
|
||||
<LineId Id="58" Count="0" />
|
||||
<LineId Id="60" Count="2" />
|
||||
<LineId Id="14" Count="0" />
|
||||
<LineId Id="9" Count="0" />
|
||||
<LineId Id="15" Count="0" />
|
||||
<LineId Id="18" Count="14" />
|
||||
<LineId Id="16" Count="0" />
|
||||
<LineId Id="68" Count="0" />
|
||||
<LineId Id="79" Count="1" />
|
||||
<LineId Id="73" Count="4" />
|
||||
<LineId Id="69" Count="0" />
|
||||
<LineId Id="72" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,146 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="fbPID" Id="{ba0371f9-f611-44ea-97d3-8d6e71d4762a}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK fbPID
|
||||
VAR_INPUT
|
||||
Setpoint: REAL; (* Desired setpoint *)
|
||||
ProcessValue: REAL; (* Current process value *)
|
||||
Enable: BOOL; (* Enable/disable PID control *)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
ControlOutput: REAL; (* Output of PID controller *)
|
||||
END_VAR
|
||||
VAR
|
||||
// -- PID parameters
|
||||
Kp: REAL := 0.0; (* Proportional gain *)
|
||||
Ki: REAL := 0.0; (* Integral gain *)
|
||||
Kd: REAL := 0.0; (* Derivative gain *)
|
||||
|
||||
// -- Internal variables
|
||||
LastError: REAL := 0.0; (* Error at previous sample *)
|
||||
Integral: REAL := 0.0; (* Integral of error over time *)
|
||||
SampleTime: TIME := T#1S; (* Sampling time *)
|
||||
|
||||
// -- Auto-tuning parameters
|
||||
AutoTuneStep: REAL := 0.1; (* Step size for auto-tuning *)
|
||||
SettlingTime: TIME := T#5S;(* Desired settling time for auto-tuning *)
|
||||
LastStepTime: TIME := T#0S;(* Time of last auto-tune step *)
|
||||
AutoTuning: BOOL := FALSE; (* Auto-tuning flag *)
|
||||
InitStep: BOOL := TRUE; (* Flag for initial step in auto-tuning *)
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(* Function to perform auto-tuning *)
|
||||
FUNCTION AutoTunePID : BOOL
|
||||
VAR
|
||||
CurrentTime: TIME;
|
||||
Error: REAL;
|
||||
DeltaTime: TIME;
|
||||
BEGIN
|
||||
CurrentTime := TcSysTime(); (* Get current system time *)
|
||||
Error := ABS(ProcessValue - Setpoint);
|
||||
|
||||
IF Error < 0.05 * Setpoint THEN (* Acceptable error threshold *)
|
||||
IF NOT InitStep THEN
|
||||
DeltaTime := CurrentTime - LastStepTime; (* Calculate time difference *)
|
||||
SampleTime := TIME_TO_REAL(DeltaTime) / 2; (* Calculate sample time *)
|
||||
Kp := 0.6 / (ProcessValue * AutoTuneStep); (* Calculate proportional gain *)
|
||||
Ki := 2 * Kp / (0.3 * TIME_TO_REAL(SettlingTime)); (* Calculate integral gain *)
|
||||
Kd := Kp * 0.125 * TIME_TO_REAL(SettlingTime); (* Calculate derivative gain *)
|
||||
AutoTuning := FALSE;
|
||||
AutoTunePID := TRUE;
|
||||
EXIT;
|
||||
END_IF;
|
||||
ELSE
|
||||
InitStep := FALSE;
|
||||
LastStepTime := CurrentTime;
|
||||
IF ProcessValue > Setpoint THEN
|
||||
ProcessValue := ProcessValue - AutoTuneStep * Setpoint; (* Decrease process value *)
|
||||
ELSE
|
||||
ProcessValue := ProcessValue + AutoTuneStep * Setpoint; (* Increase process value *)
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
AutoTunePID := FALSE;
|
||||
END_FUNCTION;
|
||||
|
||||
(* Function to perform PID control *)
|
||||
FUNCTION PIDControl : VOID
|
||||
VAR
|
||||
Error: REAL;
|
||||
Proportional: REAL;
|
||||
IntegralTerm: REAL;
|
||||
DerivativeTerm: REAL;
|
||||
BEGIN
|
||||
IF Enable THEN
|
||||
Error := Setpoint - ProcessValue;
|
||||
|
||||
IF AutoTuning THEN
|
||||
IF AutoTunePID() THEN
|
||||
RETURN;
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
Integral := Integral + (Error * SampleTime); (* Integral term calculation *)
|
||||
Integral := MAX(MIN(Integral, 1000), -1000); (* Anti-windup limit *)
|
||||
|
||||
Proportional := Kp * Error; (* Proportional term *)
|
||||
IntegralTerm := Ki * Integral; (* Integral term *)
|
||||
DerivativeTerm := Kd * (Error - LastError) / SampleTime; (* Derivative term *)
|
||||
|
||||
ControlOutput := Proportional + IntegralTerm + DerivativeTerm;
|
||||
|
||||
LastError := Error; (* Update last error *)
|
||||
ELSE
|
||||
ControlOutput := 0.0; (* Disable control if not enabled *)
|
||||
Integral := 0.0; (* Reset integral term *)
|
||||
LastError := 0.0; (* Reset last error *)
|
||||
END_IF;
|
||||
END_FUNCTION;]]></ST>
|
||||
</Implementation>
|
||||
<Method Name="AutoTunePID" Id="{a72ed6ef-5938-4dfc-b7ba-21356dc9bded}">
|
||||
<Declaration><![CDATA[METHOD AutoTunePID : BOOL
|
||||
VAR_INPUT
|
||||
CurrentTime: TIME;
|
||||
Error: REAL;
|
||||
DeltaTime: TIME;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[ CurrentTime := TcSysTime(); (* Get current system time *)
|
||||
Error := ABS(ProcessValue - Setpoint);
|
||||
|
||||
IF Error < 0.05 * Setpoint THEN (* Acceptable error threshold *)
|
||||
IF NOT InitStep THEN
|
||||
DeltaTime := CurrentTime - LastStepTime; (* Calculate time difference *)
|
||||
SampleTime := TIME_TO_REAL(DeltaTime) / 2; (* Calculate sample time *)
|
||||
Kp := 0.6 / (ProcessValue * AutoTuneStep); (* Calculate proportional gain *)
|
||||
Ki := 2 * Kp / (0.3 * TIME_TO_REAL(SettlingTime)); (* Calculate integral gain *)
|
||||
Kd := Kp * 0.125 * TIME_TO_REAL(SettlingTime); (* Calculate derivative gain *)
|
||||
AutoTuning := FALSE;
|
||||
AutoTunePID := TRUE;
|
||||
EXIT;
|
||||
END_IF;
|
||||
ELSE
|
||||
InitStep := FALSE;
|
||||
LastStepTime := CurrentTime;
|
||||
IF ProcessValue > Setpoint THEN
|
||||
ProcessValue := ProcessValue - AutoTuneStep * Setpoint; (* Decrease process value *)
|
||||
ELSE
|
||||
ProcessValue := ProcessValue + AutoTuneStep * Setpoint; (* Increase process value *)
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
AutoTunePID := FALSE;]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<LineIds Name="fbPID">
|
||||
<LineId Id="30" Count="65" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
<LineIds Name="fbPID.AutoTunePID">
|
||||
<LineId Id="9" Count="23" />
|
||||
<LineId Id="5" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="fbPulseDelay" Id="{a2eafd9b-e5e8-4663-850a-b038ce6f47d9}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK fbPulseDelay
|
||||
VAR_INPUT
|
||||
PulseIN : BOOL; // Pulse to delay
|
||||
DelayTime : TIME; // Delay Time in ms
|
||||
Tx : TIME; // System Time
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
PulseOut : BOOL; // Delayed Pulse
|
||||
END_VAR
|
||||
VAR
|
||||
bPulseRise : BOOL; // PulseIN rising edge
|
||||
DelaySP : TIME; // Stored DelayTime value to avoide changes during execution
|
||||
tStart : TIME;
|
||||
tStop : TIME;
|
||||
tPulseDuration : TIME; // Measured PulseIN duration
|
||||
// tPulseDurationLast : TIME; // Measured PulseIN duration
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// Reset pulse rising edge bit
|
||||
|
||||
IF PulseIN AND NOT bPulseRise THEN
|
||||
tStart := GVL.tx; // On pulse rising edge record the System time
|
||||
DelaySP := DelayTime; // Write DelayTime value to avoide changes during execution
|
||||
tPulseDuration := TIME#0MS; // Reset Pulse duration counter
|
||||
bPulseRise := TRUE;
|
||||
END_IF
|
||||
|
||||
IF PulseIN AND bPulseRise THEN
|
||||
tPulseDuration := GVL.tx - tStart; // Calculate the time (pulse duration)
|
||||
END_IF
|
||||
|
||||
IF NOT PulseIN AND bPulseRise THEN // The first scan with PulseIN OFF
|
||||
;
|
||||
END_IF
|
||||
|
||||
IF NOT PulseIn THEN // When PulseIN is OFF, reset pulse rising edge to be ready for the next pulse
|
||||
bPulseRise := FALSE;
|
||||
END_IF
|
||||
|
||||
// Create the delayed pulse
|
||||
// Start pulse with delay and stop with delay
|
||||
//
|
||||
IF GVL.tx >= (tStart + DelaySP) AND GVL.tx <= (tStart + DelaySP + tPulseDuration) THEN
|
||||
PulseOut := TRUE;
|
||||
ELSE
|
||||
PulseOut := FALSE;
|
||||
END_IF
|
||||
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="fbPulseDelay">
|
||||
<LineId Id="29" Count="0" />
|
||||
<LineId Id="20" Count="1" />
|
||||
<LineId Id="24" Count="0" />
|
||||
<LineId Id="74" Count="0" />
|
||||
<LineId Id="39" Count="0" />
|
||||
<LineId Id="22" Count="1" />
|
||||
<LineId Id="25" Count="2" />
|
||||
<LineId Id="19" Count="0" />
|
||||
<LineId Id="34" Count="0" />
|
||||
<LineId Id="36" Count="1" />
|
||||
<LineId Id="35" Count="0" />
|
||||
<LineId Id="31" Count="2" />
|
||||
<LineId Id="30" Count="0" />
|
||||
<LineId Id="54" Count="0" />
|
||||
<LineId Id="41" Count="0" />
|
||||
<LineId Id="55" Count="1" />
|
||||
<LineId Id="40" Count="0" />
|
||||
<LineId Id="42" Count="0" />
|
||||
<LineId Id="51" Count="1" />
|
||||
<LineId Id="43" Count="0" />
|
||||
<LineId Id="48" Count="0" />
|
||||
<LineId Id="50" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="fbSamples" Id="{7084c0f8-26c4-42fc-8481-4b12fee9b2fb}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK fbSamples
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// To measure process time
|
||||
|
||||
(* PLC libraries to include: Tc2_EtherCAT
|
||||
https://infosys.beckhoff.com/english.php?content=../content/1033/tc3_plc_intro/2530307467.html&id=
|
||||
|
||||
VAR
|
||||
MeasureStart : T_DCTIME64;
|
||||
MeasureResult : T_DCTIME64;
|
||||
END_VAR
|
||||
|
||||
PROGRAM:
|
||||
MeasureStart:=F_GetActualDcTime64(); (*Insert your program code to measure the processing time*)
|
||||
MeasureResult:=F_GetActualDcTime64()-MeasureStart;
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="fbSamples">
|
||||
<LineId Id="22" Count="1" />
|
||||
<LineId Id="9" Count="0" />
|
||||
<LineId Id="24" Count="1" />
|
||||
<LineId Id="15" Count="6" />
|
||||
<LineId Id="11" Count="0" />
|
||||
<LineId Id="10" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,444 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="fbZone" Id="{9d5420d4-253c-4a37-b217-4ab780f6de05}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK fbZone
|
||||
|
||||
VAR_INPUT
|
||||
iZoneNo : INT;
|
||||
END_VAR
|
||||
|
||||
VAR_OUTPUT
|
||||
iTAverage : INT; // Average Zone Temperature
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
i,k : INT;
|
||||
bFSpid : BOOL; // First scan PID block
|
||||
arT : ARRAY[1..Set.iNoApZoneMax] OF DINT; // Array of Temperatures in Zone
|
||||
temp,tmp, t : DINT;
|
||||
Size : INT;
|
||||
LH : INT;
|
||||
// PIDControl : FB_BasicPID;
|
||||
fDutyCycle : LREAL;
|
||||
|
||||
fbApartOffset : fbHeatLevel;
|
||||
fApartOffsetCalculated : LREAL;
|
||||
iApOffsetBasis : INT; // Appartment correction offeset from the Set.arHeatRoomAdj array
|
||||
MeasureStart : T_DCTIME64;
|
||||
fbCTRL_PID: CTRL_PID;
|
||||
PID_Y : REAL;
|
||||
bPWM_Q : BOOL; // PWM output
|
||||
tPIDCycle: TON;
|
||||
fbCTRL_OUT: CTRL_OUT;
|
||||
fbZoneHeatLevel: fbHeatLevel;
|
||||
// fZonePID_LIM_H : REAL;
|
||||
iHeatLevel : INT; // INT Current heat level according outside temperature
|
||||
fHeatLevel : REAL; // REAL Current heat level according outside temperature
|
||||
fbCTRL_PWM: CTRL_PWM;
|
||||
fAptT_PV_Filtered : REAL;
|
||||
LowPassFilter: LowPassFilter;
|
||||
|
||||
iTDiff : INT; // Temperature SP PV differencial
|
||||
iHeatLevelIndex: INT; // Current Heat Level Index
|
||||
iHeatLevelIndexMem: INT; // Heat level Index Old/Memory
|
||||
bHeatLevelIndexChanged : BOOL; // Heat Level Index changed pulse
|
||||
bInc_CMD: BOOL;
|
||||
bDec_CMD: BOOL;
|
||||
tIncTMR : TON;
|
||||
tDecTMR : TON;
|
||||
tHeatLevelActive : TON;
|
||||
bHeatLevelStable : BOOL;
|
||||
bHeatLevelInc_RQST: BOOL;
|
||||
bHeatLevelDec_RQST: BOOL;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ START OF PREPARATIONS ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
|
||||
|
||||
Size := Set.arApInZone[iZoneNo].iApsNo;
|
||||
LH := Set.arApInZone[iZoneNo].iLowHigh;
|
||||
|
||||
// Create an Array if T°C per ZONE to calculate Average T°C x0.1°C
|
||||
//
|
||||
FOR i:=1 TO Size DO // Get number of apartments in Zone from the initial array Set.arApInZone
|
||||
arT[i] := INT_TO_DINT(GVL.arZoneData[iZoneNo].arAp[i].iT_PV); // Create an Array of T°C per ZONE to calculate Average T°C x0.1°C
|
||||
END_FOR
|
||||
|
||||
// Sort Array from Low to High
|
||||
//
|
||||
FOR i:=1 TO Size-1 DO
|
||||
FOR k:=i+1 TO Size DO
|
||||
IF arT[i] > arT[k] THEN
|
||||
temp:=arT[i];
|
||||
arT[i]:=arT[k];
|
||||
arT[k]:=temp;
|
||||
END_IF
|
||||
END_FOR
|
||||
END_FOR
|
||||
|
||||
// Remove the Highest and Lowest numbers and calculate the Average Temperature
|
||||
//
|
||||
tmp := 0;
|
||||
k := 0;
|
||||
FOR i:=(1+LH) TO (Size-LH) DO
|
||||
tmp:= (arT[i]) + tmp;
|
||||
k := k+1;
|
||||
END_FOR
|
||||
|
||||
// Calculate the end result, Average Temperature
|
||||
//
|
||||
GVL.arZoneData[iZoneNo].iTAver := DINT_TO_INT(tmp/k);
|
||||
GVL.arZoneData[iZoneNo].fHMI_TValue := INT_TO_REAL(GVL.arZoneData[iZoneNo].iTAver)/10;
|
||||
|
||||
// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ END OF PREPARATIONS ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ ±
|
||||
|
||||
// Find the Limit from the Zone Heat Level Table
|
||||
fbZoneHeatLevel(inTemp:= GVL.iTempOutsideChill,
|
||||
inHeatLevelArray:= Set.arHeatLevel[iZoneNo],
|
||||
outLevel=> iHeatLevel,
|
||||
outIndex=> iHeatLevelIndex); // Current position of the Heat Level in the Array Set.arHeatLevel
|
||||
fHeatLevel := INT_TO_REAL(iHeatLevel); // Convert INT to REAL
|
||||
|
||||
bHeatLevelIndexChanged := FALSE;
|
||||
IF iHeatLevelIndex <> iHeatLevelIndexMem THEN
|
||||
bHeatLevelIndexChanged := TRUE; // Set Flag for one scan to use in tHeatLevelActive Timer
|
||||
iHeatLevelIndexMem := iHeatLevelIndex;
|
||||
END_IF
|
||||
|
||||
// Run PID control to calculate Duty Cycle
|
||||
// PID works as a helper to adjust the main heat table
|
||||
// Settings
|
||||
//
|
||||
GVL.arZoneData[iZoneNo].PID.fSetpointValue := INT_TO_REAL(Set.iSetT); // setpoint value
|
||||
GVL.arZoneData[iZoneNo].PID.fActualValue := INT_TO_REAL(GVL.arZoneData[iZoneNo].iTAver); // actual value
|
||||
//GVL.arZoneData[iZoneNo].PID.bReset := FALSE; // TRUE at this input resets the internal state variables and the controller output.
|
||||
GVL.arZoneData[iZoneNo].PID.fCtrlCycleTime := 6.0; // LREAL controller cycle time in seconds [s]
|
||||
GVL.arZoneData[iZoneNo].PID.fKp := Set.fKp; // 1.5 REAL proportional gain Kp (P)
|
||||
GVL.arZoneData[iZoneNo].PID.fTn := Set.fTn; // TN = KP/KI = 1.5/10 = 0.15 [s]
|
||||
GVL.arZoneData[iZoneNo].PID.fTv := Set.fTv; // TV = KD/KP = 200/1.5 = 133.3 [s]
|
||||
GVL.arZoneData[iZoneNo].PID.fTd := Set.fTd; // 1200.0 LREAL derivative damping time Td (D-T1) [s]
|
||||
GVL.arZoneData[iZoneNo].PID.fM_In := fHeatLevel; // input value for manual operation
|
||||
|
||||
IF Set.HeatEnabled AND Set.arApInZone[iZoneNo].bHeatEnabled THEN
|
||||
IF bFSpid THEN
|
||||
GVL.arZoneData[iZoneNo].PID.bReset := FALSE;
|
||||
ELSE
|
||||
GVL.arZoneData[iZoneNo].PID.bReset := TRUE; // Reset PID on the First Section Scan
|
||||
END_IF
|
||||
|
||||
bFSpid := TRUE; // Activate first PID scan bit
|
||||
|
||||
// If Heat enabled, Execute PID
|
||||
// OSCAT CTRL_PID function block
|
||||
|
||||
// Set Output Low and High Limits
|
||||
GVL.arZoneData[iZoneNo].PID.fLL := 0.0;
|
||||
GVL.arZoneData[iZoneNo].PID.fLH := 100.0;
|
||||
|
||||
// Execute PID block
|
||||
// Need to run it once in 6sec
|
||||
tPIDCycle(IN:= NOT tPIDCycle.Q, PT:= T#6S, Q=> , ET=> ); // Generate a pulse every 6sec
|
||||
|
||||
(*
|
||||
CTRL_PID is a PID controller with dynamic anti-wind up and manual control input. The PID controller operates according to the formula:
|
||||
Y = KP * (DIFF + 1/Tn * INTEG(DIFF) + TV *DERIV(DIFF)) + OFFSET where DIFF = SET_POINT - ACTUAL
|
||||
In manual mode (manual = TRUE) is: Y = MANUAL_IN+ OFFSET
|
||||
ACT is the measured value for the controlled system and SET is the setpoint for the controller. The input values of LH and LL limit the output value Y.
|
||||
With RST, the internal integrator will always set to 0. The output LIM signals that the controller has reached the limit of LL or LH.
|
||||
The PID controller operates free-running and uses the trapezoidal rule to calculate with highest accuracy and optimal speed.
|
||||
The default values of the input parameters are predefned as follows:
|
||||
KP = 1, TN = 1, TV = 1, LIMIT_L = -1000 and LIMIT_H = +1000. With the input SUP a noise reduction is set, the value on input SUP determines
|
||||
at which control diference, the controller turns on. With SUP is avoided that the output of the controller wobbles.
|
||||
The value at the input SUP should be in dimension that it suppresses the noise of the controlled system and the sensors. If the input to SUP is
|
||||
set to 0.1, the controller is only at deviations greater than 0.1 active.
|
||||
The ouput DIFF passes the measured and through a noise flter (DEAD_BAND) filtered control deviation.
|
||||
DIFF is normally not required in a controlled system but can be used to infuence the control parameters.
|
||||
The input OFS is added as the last value to output, and is used to compensate mainly of noise, whose efect can be estimated on the loop.
|
||||
The controller works with a dynamic air- Up that prevents that the integrator, when reaching a output limit and further deviation, continues to run
|
||||
unlimited and afects the properties usually negative. In the introduction chapter of the control technology, more details can be found on anti-windup.
|
||||
The control parameters are given in the form of KP, TN and TV, and if there are parameters KP, KI and KD they can be converted using the following
|
||||
formula: TN = KP/KI und TV = KD/KP
|
||||
*)
|
||||
|
||||
IF tPIDCycle.Q THEN
|
||||
fbCTRL_PID(
|
||||
ACT:= GVL.arZoneData[iZoneNo].PID.fActualValue, // value measured by the way PV - Process Value
|
||||
SET:= GVL.arZoneData[iZoneNo].PID.fSetpointValue, // set value, SP - Set Point
|
||||
SUP:= Set.PID_Noise_SUP, // noise reduction 0.2°C In PID controller, if ABS(SP-PV)<SUP then output value is 0
|
||||
OFS:= GVL.arZoneData[iZoneNo].PID.fOfs, // ofset for the output
|
||||
M_I:= GVL.arZoneData[iZoneNo].PID.fM_In, // input value for manual operation
|
||||
MAN:= GVL.arZoneData[iZoneNo].PID.bManual, // switch to manual mode, MANUAL = TRUE
|
||||
RST:= GVL.arZoneData[iZoneNo].PID.bReset, // asynchronous reset input
|
||||
KP:= GVL.arZoneData[iZoneNo].PID.fKp, // controller gain
|
||||
TN:= GVL.arZoneData[iZoneNo].PID.fTn, // reset of the controller
|
||||
TV:= GVL.arZoneData[iZoneNo].PID.fTv, // derivative of the controller
|
||||
LL:= GVL.arZoneData[iZoneNo].PID.fLL, // lower output limit
|
||||
LH:= GVL.arZoneData[iZoneNo].PID.fLH, // upper output limit
|
||||
Y=> PID_Y , // REAL, output of the controller
|
||||
DIFF=> GVL.arZoneData[iZoneNo].PID.DIFF, // (* deviation *)
|
||||
LIM=> ); // GVL.arZoneData[iZoneNo].PID.LIM Out of limit if active
|
||||
|
||||
// PID is a Helper. We increase HeatLevel value on 20% (/100/5=500) of what PID ask
|
||||
//
|
||||
GVL.arZoneData[iZoneNo].fDutyCycle := fHeatLevel * (1 + PID_Y/500.0) ;
|
||||
|
||||
(* // Limit the value according to Zone Heat Table
|
||||
fbCTRL_OUT(
|
||||
CI:= GVL.arZoneData[iZoneNo].fDutyCycle,
|
||||
OFFSET:= 0.0,
|
||||
MAN_IN:= 0.0,
|
||||
LIM_L:= 0.0,
|
||||
LIM_H:= 100.0,
|
||||
MANUAL:= FALSE,
|
||||
Y=> GVL.arZoneData[iZoneNo].PID.fCtrlOutput,
|
||||
LIM=> GVL.arZoneData[iZoneNo].PID.LIM);
|
||||
*)
|
||||
END_IF
|
||||
|
||||
ELSE
|
||||
bFSpid := FALSE; // Reset first PID scan bit
|
||||
END_IF
|
||||
|
||||
// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ AUTO TUNING START ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
|
||||
|
||||
// Auto tuning to collect data over the season and correct Heat Level Table/Array
|
||||
//
|
||||
IF Set.bHMI_AutoCalib_Enable AND Set.HeatEnabled THEN
|
||||
iTDiff := Set.iSetT - GVL.arZoneData[iZoneNo].iTAver; // Calculate SP PV difference
|
||||
|
||||
IF GVL.iTempOutside > 200 OR GVL.iTempOutside < -400 THEN
|
||||
iHeatLevelIndex := -1;
|
||||
END_IF
|
||||
|
||||
tHeatLevelActive(IN:= NOT bHeatLevelIndexChanged AND NOT bInc_CMD AND NOT bDec_CMD, PT:= T#7200S, Q=> bHeatLevelStable , ET=>); // Check if Heat Level didn't change
|
||||
|
||||
bInc_CMD := bHeatLevelStable AND iTDiff > 5; // bHeatLevelInc_RQST;
|
||||
bDec_CMD := bHeatLevelStable AND iTDiff < 5; // bHeatLevelDec_RQST;
|
||||
|
||||
IF bInc_CMD AND iHeatLevelIndex >= 0 AND (Set.arHeatLevel[iZoneNo][iHeatLevelIndex] - Set.arHeatLevelDefault[iHeatLevelIndex]) <5 AND Set.arHeatLevel[iZoneNo][iHeatLevelIndex] <100 THEN
|
||||
Set.arHeatLevel[iZoneNo][iHeatLevelIndex] := Set.arHeatLevel[iZoneNo][iHeatLevelIndex] + 1;
|
||||
END_IF
|
||||
IF bDec_CMD AND iHeatLevelIndex >= 0 AND (Set.arHeatLevelDefault[iHeatLevelIndex] - Set.arHeatLevel[iZoneNo][iHeatLevelIndex]) <5 AND Set.arHeatLevel[iZoneNo][iHeatLevelIndex] >0 THEN
|
||||
Set.arHeatLevel[iZoneNo][iHeatLevelIndex] := Set.arHeatLevel[iZoneNo][iHeatLevelIndex] - 1;
|
||||
END_IF
|
||||
|
||||
// Set an Error flag if Increase/Decrease limit exeeded , more that 5%/units
|
||||
IF (Set.arHeatLevel[iZoneNo][iHeatLevelIndex] - Set.arHeatLevelDefault[iHeatLevelIndex]) >= 5 THEN
|
||||
;
|
||||
END_IF
|
||||
IF (Set.arHeatLevelDefault[iHeatLevelIndex] - Set.arHeatLevel[iZoneNo][iHeatLevelIndex]) >= 5 THEN
|
||||
;
|
||||
END_IF
|
||||
|
||||
END_IF
|
||||
|
||||
// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ AUTO TUNING END ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
|
||||
|
||||
|
||||
// Send PID value to the Apartment output
|
||||
// Convert Duty Cycle to PWM modulation with time cycle Set.tPWMCycle
|
||||
//
|
||||
IF Set.HeatEnabled AND Set.arApInZone[iZoneNo].bHeatEnabled AND GVL.iTempOutsideChill <= (Set.iSetMaxOper+10) THEN
|
||||
FOR i:= 1 TO Set.arApInZone[iZoneNo].iApsNo DO
|
||||
// i := 1; // Temporaly to test math
|
||||
// Find an Apartment DutyCycle offset if required (Default temperature is overwritten
|
||||
IF GVL.arZoneData[iZoneNo].arAp[i].iT_SP <> Set.iSetT THEN
|
||||
fbApartOffset(
|
||||
inTemp:= GVL.iTempOutside,
|
||||
inHeatLevelArray:= SET.arHeatRoomAdj,
|
||||
outLevel=> iApOffsetBasis);
|
||||
|
||||
GVL.arZoneData[iZoneNo].arAp[i].fDCOffset := GVL.arZoneData[iZoneNo].PID.fCtrlOutput * INT_TO_REAL(iApOffsetBasis)/100 * INT_TO_REAL(GVL.arZoneData[iZoneNo].arAp[i].iT_SP - Set.iSetT)/10.0;
|
||||
ELSE
|
||||
GVL.arZoneData[iZoneNo].arAp[i].fDCOffset := 0.0;
|
||||
END_IF
|
||||
|
||||
// Convert Duty Cycle to PWM modulation with time cycle Set.tPWMCycle
|
||||
Set.arApInZone[iZoneNo].fDutyCycle := (GVL.arZoneData[iZoneNo].PID.fCtrlOutput + GVL.arZoneData[iZoneNo].arAp[i].fDCOffset)/100; // = 0.0 .. 1.0
|
||||
fbCTRL_PWM(
|
||||
CI:= Set.arApInZone[iZoneNo].fDutyCycle, // CI = 0.0 .. 1.0
|
||||
MAN_IN:= fHeatLevel/100.0,
|
||||
MANUAL:= FALSE,
|
||||
F:= 1 / Set.tPWMCycle, // Duty Cycle Period
|
||||
Q=> bPWM_Q);
|
||||
|
||||
// Before to write SSR output, Check if Overheat is enabled/active
|
||||
//
|
||||
IF Set.bHMI_Overheat_Enabled THEN
|
||||
IF GVL.arZoneData[iZoneNo].arAp[i].iT_PV > (GVL.arZoneData[iZoneNo].arAp[i].iT_SP + Set.iOverTempSet) THEN // If Temp SP + 0.5°C => cut-off SSR
|
||||
GVL.arZoneData[iZoneNo].arAp[i].bPWMSSR_ON := FALSE;
|
||||
ELSE
|
||||
GVL.arZoneData[iZoneNo].arAp[i].bPWMSSR_ON := bPWM_Q;
|
||||
END_IF
|
||||
ELSE
|
||||
GVL.arZoneData[iZoneNo].arAp[i].bPWMSSR_ON := bPWM_Q;
|
||||
END_IF
|
||||
|
||||
END_FOR
|
||||
ELSE
|
||||
FOR i:= 1 TO Set.arApInZone[iZoneNo].iApsNo DO
|
||||
GVL.arZoneData[iZoneNo].arAp[i].bPWMSSR_ON := FALSE; // Ih Heat is not enabled, turn OFF SSRs
|
||||
END_FOR
|
||||
END_IF
|
||||
|
||||
// Convert and Transfer Apartment Temperature to HMI, INT to REAL
|
||||
//
|
||||
i := iZoneNo;
|
||||
|
||||
FOR k := 1 TO Set.arApInZone[i].iApsNo DO
|
||||
// GVL.arZoneData[i].arAp[k].HMI_Value := INT_TO_REAL(GVL.arZoneData[i].arAp[k].iT_PV)/10; // Convert INT to REAL to show T°C on HMI
|
||||
// Section below is to apply a low-pass filter to the values to prevent fast temperature change on the HMI screen
|
||||
GVL.arAptT_PV_Filter[i,k](
|
||||
Enable:= TRUE,
|
||||
In:= INT_TO_REAL(GVL.arZoneData[i].arAp[k].iT_PV)/10,
|
||||
k:= Set.fLowPassFilter_k,
|
||||
Valid=> ,
|
||||
Out=> fAptT_PV_Filtered);
|
||||
GVL.arZoneData[i].arAp[k].HMI_Value := fAptT_PV_Filtered;
|
||||
|
||||
END_FOR
|
||||
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="fbZone">
|
||||
<LineId Id="676" Count="1" />
|
||||
<LineId Id="44" Count="0" />
|
||||
<LineId Id="80" Count="0" />
|
||||
<LineId Id="32" Count="0" />
|
||||
<LineId Id="22" Count="0" />
|
||||
<LineId Id="95" Count="0" />
|
||||
<LineId Id="9" Count="0" />
|
||||
<LineId Id="587" Count="0" />
|
||||
<LineId Id="26" Count="0" />
|
||||
<LineId Id="29" Count="0" />
|
||||
<LineId Id="28" Count="0" />
|
||||
<LineId Id="94" Count="0" />
|
||||
<LineId Id="33" Count="7" />
|
||||
<LineId Id="30" Count="0" />
|
||||
<LineId Id="63" Count="0" />
|
||||
<LineId Id="46" Count="0" />
|
||||
<LineId Id="96" Count="0" />
|
||||
<LineId Id="82" Count="0" />
|
||||
<LineId Id="85" Count="0" />
|
||||
<LineId Id="45" Count="0" />
|
||||
<LineId Id="83" Count="0" />
|
||||
<LineId Id="88" Count="0" />
|
||||
<LineId Id="84" Count="0" />
|
||||
<LineId Id="97" Count="0" />
|
||||
<LineId Id="89" Count="0" />
|
||||
<LineId Id="98" Count="0" />
|
||||
<LineId Id="87" Count="0" />
|
||||
<LineId Id="519" Count="0" />
|
||||
<LineId Id="674" Count="0" />
|
||||
<LineId Id="116" Count="0" />
|
||||
<LineId Id="792" Count="3" />
|
||||
<LineId Id="675" Count="0" />
|
||||
<LineId Id="931" Count="0" />
|
||||
<LineId Id="796" Count="0" />
|
||||
<LineId Id="932" Count="4" />
|
||||
<LineId Id="800" Count="0" />
|
||||
<LineId Id="937" Count="0" />
|
||||
<LineId Id="86" Count="0" />
|
||||
<LineId Id="117" Count="0" />
|
||||
<LineId Id="166" Count="0" />
|
||||
<LineId Id="168" Count="8" />
|
||||
<LineId Id="798" Count="0" />
|
||||
<LineId Id="178" Count="0" />
|
||||
<LineId Id="135" Count="0" />
|
||||
<LineId Id="137" Count="0" />
|
||||
<LineId Id="458" Count="3" />
|
||||
<LineId Id="457" Count="0" />
|
||||
<LineId Id="456" Count="0" />
|
||||
<LineId Id="787" Count="0" />
|
||||
<LineId Id="136" Count="0" />
|
||||
<LineId Id="261" Count="0" />
|
||||
<LineId Id="286" Count="0" />
|
||||
<LineId Id="285" Count="0" />
|
||||
<LineId Id="282" Count="0" />
|
||||
<LineId Id="284" Count="0" />
|
||||
<LineId Id="287" Count="0" />
|
||||
<LineId Id="281" Count="0" />
|
||||
<LineId Id="315" Count="1" />
|
||||
<LineId Id="801" Count="0" />
|
||||
<LineId Id="320" Count="0" />
|
||||
<LineId Id="680" Count="0" />
|
||||
<LineId Id="682" Count="0" />
|
||||
<LineId Id="684" Count="1" />
|
||||
<LineId Id="703" Count="2" />
|
||||
<LineId Id="702" Count="0" />
|
||||
<LineId Id="706" Count="1" />
|
||||
<LineId Id="692" Count="0" />
|
||||
<LineId Id="708" Count="2" />
|
||||
<LineId Id="697" Count="1" />
|
||||
<LineId Id="700" Count="1" />
|
||||
<LineId Id="678" Count="0" />
|
||||
<LineId Id="802" Count="0" />
|
||||
<LineId Id="317" Count="0" />
|
||||
<LineId Id="319" Count="0" />
|
||||
<LineId Id="267" Count="13" />
|
||||
<LineId Id="264" Count="0" />
|
||||
<LineId Id="803" Count="0" />
|
||||
<LineId Id="749" Count="0" />
|
||||
<LineId Id="804" Count="0" />
|
||||
<LineId Id="750" Count="0" />
|
||||
<LineId Id="366" Count="0" />
|
||||
<LineId Id="359" Count="0" />
|
||||
<LineId Id="351" Count="7" />
|
||||
<LineId Id="349" Count="0" />
|
||||
<LineId Id="808" Count="0" />
|
||||
<LineId Id="321" Count="0" />
|
||||
<LineId Id="805" Count="0" />
|
||||
<LineId Id="322" Count="0" />
|
||||
<LineId Id="455" Count="0" />
|
||||
<LineId Id="129" Count="0" />
|
||||
<LineId Id="197" Count="0" />
|
||||
<LineId Id="847" Count="2" />
|
||||
<LineId Id="201" Count="0" />
|
||||
<LineId Id="851" Count="29" />
|
||||
<LineId Id="850" Count="0" />
|
||||
<LineId Id="179" Count="0" />
|
||||
<LineId Id="141" Count="0" />
|
||||
<LineId Id="180" Count="0" />
|
||||
<LineId Id="226" Count="1" />
|
||||
<LineId Id="181" Count="0" />
|
||||
<LineId Id="214" Count="0" />
|
||||
<LineId Id="213" Count="0" />
|
||||
<LineId Id="215" Count="1" />
|
||||
<LineId Id="191" Count="2" />
|
||||
<LineId Id="220" Count="1" />
|
||||
<LineId Id="223" Count="1" />
|
||||
<LineId Id="189" Count="0" />
|
||||
<LineId Id="218" Count="0" />
|
||||
<LineId Id="196" Count="0" />
|
||||
<LineId Id="553" Count="0" />
|
||||
<LineId Id="369" Count="4" />
|
||||
<LineId Id="229" Count="0" />
|
||||
<LineId Id="481" Count="0" />
|
||||
<LineId Id="475" Count="3" />
|
||||
<LineId Id="482" Count="0" />
|
||||
<LineId Id="484" Count="1" />
|
||||
<LineId Id="483" Count="0" />
|
||||
<LineId Id="479" Count="1" />
|
||||
<LineId Id="473" Count="1" />
|
||||
<LineId Id="183" Count="0" />
|
||||
<LineId Id="254" Count="3" />
|
||||
<LineId Id="211" Count="0" />
|
||||
<LineId Id="464" Count="0" />
|
||||
<LineId Id="253" Count="0" />
|
||||
<LineId Id="406" Count="0" />
|
||||
<LineId Id="420" Count="0" />
|
||||
<LineId Id="807" Count="0" />
|
||||
<LineId Id="410" Count="0" />
|
||||
<LineId Id="412" Count="0" />
|
||||
<LineId Id="638" Count="0" />
|
||||
<LineId Id="809" Count="0" />
|
||||
<LineId Id="595" Count="3" />
|
||||
<LineId Id="591" Count="0" />
|
||||
<LineId Id="590" Count="0" />
|
||||
<LineId Id="637" Count="0" />
|
||||
<LineId Id="413" Count="0" />
|
||||
<LineId Id="407" Count="0" />
|
||||
<LineId Id="184" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,62 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="CLK_PRG" Id="{5c80c50e-5dd2-42bd-9374-17f4b5709650}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK CLK_PRG
|
||||
VAR_INPUT
|
||||
PT : TIME := t#10ms;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
init : BOOL;
|
||||
last : TIME;
|
||||
tx: TIME;
|
||||
END_VAR]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.3 25. oct. 2008
|
||||
programmer hugo
|
||||
tested by tobias
|
||||
|
||||
clk_prg uses the internal sps time to generate a clock with programmable period time.
|
||||
the first cycle after start is a clk pulse and then depending on the programmed period time a delay.
|
||||
every pulse is only valid for one cycle.
|
||||
the accuracy of clk_prg is depending on the accuracy of the system clock.
|
||||
|
||||
*)
|
||||
(* @END_DECLARATION := '0' *)
|
||||
(* read system time *)
|
||||
tx := DWORD_TO_TIME(T_PLC_MS());
|
||||
|
||||
(* initialize on startup *)
|
||||
IF NOT init THEN
|
||||
init := TRUE;
|
||||
last := tx - pt;
|
||||
END_IF;
|
||||
|
||||
(* generate output pulse when next_pulse is reached *)
|
||||
Q := tx - last >= pt;
|
||||
IF Q THEN last := tx; END_IF;
|
||||
|
||||
|
||||
(* revision hiostory
|
||||
|
||||
hm 25 feb 2007 rev 1.1
|
||||
rewritten code for higher performance
|
||||
pt can now be changed during runtime
|
||||
|
||||
hm 17. sep 2007 rev 1.2
|
||||
replaced time() with t_plc_ms() for compatibility reasons
|
||||
|
||||
hm 25. oct. 2008 rev 1.3
|
||||
optimized code
|
||||
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="CLK_PRG">
|
||||
<LineId Id="20" Count="37" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,34 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="CTRL_IN" Id="{10a476d6-ef6b-428a-90c2-053a8f0c8c42}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION CTRL_IN : REAL
|
||||
VAR_INPUT
|
||||
SET_POINT, ACTUAL, NOISE : REAL;
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.0 2. jun 2008
|
||||
programmer hugo
|
||||
tested by tobias
|
||||
*)
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
(* calculate the process error DIFF *)
|
||||
CTRL_IN := DEAD_ZONE(SET_POINT - ACTUAL, NOISE);
|
||||
|
||||
(* revision history
|
||||
hm 2. jun. 2008 rev 1.0
|
||||
original version
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="CTRL_IN">
|
||||
<LineId Id="9" Count="3" />
|
||||
<LineId Id="15" Count="4" />
|
||||
<LineId Id="21" Count="3" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="CTRL_OUT" Id="{2773ee0d-f6d9-45d7-af22-dca036cffc32}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK CTRL_OUT
|
||||
VAR_INPUT
|
||||
CI : REAL; (* input from controller *)
|
||||
OFFSET : REAL; (* output ofset *)
|
||||
MAN_IN : REAL; (*Manual input *)
|
||||
LIM_L : REAL; (* lower output limit *)
|
||||
LIM_H : REAL; (* upper output limit *)
|
||||
MANUAL : BOOL; (* switch for manual operation *)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Y : REAL; (* Control signal *)
|
||||
LIM : BOOL; (* TRUE if control signal reaches a limit *)
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.1 5. nov 2008
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
*)
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
|
||||
(*
|
||||
CTRL_OUT adds to the CI input the value of OFFSET and returns the result
|
||||
to Y if MANUAL = FALSE. If MANUAL is TRUE at output Y the input value of
|
||||
MAN_IN + OFFSET is issued. Y is always limited to the boundaries defned
|
||||
by LIM_L and LIM_H. If Y reaches one of the limits, then the output LIM is
|
||||
TRUE. CTRL_OUT can be used to build own rule modules.
|
||||
*)
|
||||
Y := SEL(MANUAL, CI, MAN_IN) + OFFSET;
|
||||
|
||||
(* Limit the output *)
|
||||
IF Y > LIM_L AND Y < LIM_H THEN
|
||||
LIM := FALSE;
|
||||
ELSE
|
||||
Y := LIMIT(LIM_L, Y, LIM_H);
|
||||
LIM := TRUE;
|
||||
END_IF;
|
||||
|
||||
(* revision history
|
||||
hm 2. jun. 2008 rev 1.0
|
||||
original version
|
||||
|
||||
hm 5. nov. 2008 rev 1.1
|
||||
optimized code
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="CTRL_OUT">
|
||||
<LineId Id="14" Count="3" />
|
||||
<LineId Id="20" Count="2" />
|
||||
<LineId Id="53" Count="0" />
|
||||
<LineId Id="52" Count="0" />
|
||||
<LineId Id="56" Count="1" />
|
||||
<LineId Id="55" Count="0" />
|
||||
<LineId Id="59" Count="0" />
|
||||
<LineId Id="58" Count="0" />
|
||||
<LineId Id="54" Count="0" />
|
||||
<LineId Id="23" Count="9" />
|
||||
<LineId Id="35" Count="5" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="CTRL_PID" Id="{72b5746a-41f6-4016-b19d-146ea4e1e3e0}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK CTRL_PID
|
||||
VAR_INPUT
|
||||
ACT : REAL; (* PV value measured by the way *)
|
||||
SET : REAL; (* SP default Set Point *)
|
||||
SUP : REAL; (* noise reduction *)
|
||||
OFS : REAL; (* ofset for the output *)
|
||||
M_I : REAL; (* MANUAL_IN (PID_OUT) input value for manual operation *)
|
||||
MAN : BOOL; (* switch to manual mode, MANUAL = TRUE *)
|
||||
RST : BOOL; (* asynchronous reset input *)
|
||||
KP : REAL := 1.0; (* controller gain *)
|
||||
TN : REAL := 1.0; (* reset of the controller *)
|
||||
TV : REAL := 1.0; (* derivative of the controller *)
|
||||
LL : REAL := -1000.0; (* lower output limit *)
|
||||
LH : REAL := 1000.0; (* upper output limit *)
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Y : REAL; (* output OF the controller. In manual mode (manual = TRUE) is: Y = MANUAL_IN + OFFSET *)
|
||||
DIFF : REAL; (* deviation *)
|
||||
LIM : BOOL; (* TRUE if the output has reached a limit *)
|
||||
END_VAR
|
||||
VAR
|
||||
pid : FT_PIDWL;
|
||||
co : CTRL_OUT;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 2.0 30. jun. 2008
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
FT_PI is a PI controller with manual functionality.
|
||||
The PID controller works according to the fomula Y = e *(KP+ KI * INTEG(e) ) + offset, while e = set_point - actual.
|
||||
a rst will reset all internal data, while a switch to manual will cause the controller to follow the function Y = manual_in + offset.
|
||||
limit_h and Limit_l set the possible output range of Y.
|
||||
the output flags lim will signal that the output limits are active.
|
||||
*)
|
||||
|
||||
DIFF := CTRL_IN(SET, ACT, SUP);
|
||||
pid(in := DIFF, kp := KP, tn := TN, tv := TV, lim_l := LL, lim_h := LH, rst := RST);
|
||||
co(ci := pid.Y, OFFSET := OFS, man_in := M_I, lim_l := LL, lim_h := LH, MANUAL := MAN);
|
||||
Y := co.Y;
|
||||
LIM := co.LIM;
|
||||
|
||||
(* revision history
|
||||
|
||||
hm 1.12.2006 rev 1.1
|
||||
changed algorithm to trapezregel for higher accuracy.
|
||||
|
||||
hm 3.1.2007 rev 1.2
|
||||
added integ_band to select when the integrator is active.
|
||||
|
||||
hm 3.3.2007 rev 1.3
|
||||
added default values to inputs KP, TN, TV, LIMIT_L und LIMIT_H.
|
||||
|
||||
hm 31.oct 2007 rev 1.4
|
||||
total rewrite of the module to avoid failures when one of the limits is 0
|
||||
|
||||
hm 3.11.2007 rev 1.5
|
||||
added noise input to filter noise
|
||||
added output diff
|
||||
set limit output false when output is within limits
|
||||
overfolw was not set correctly
|
||||
|
||||
hm 5. jan 2008 rev 1.6
|
||||
improved code for better performance
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="CTRL_PID">
|
||||
<LineId Id="25" Count="9" />
|
||||
<LineId Id="36" Count="1" />
|
||||
<LineId Id="39" Count="4" />
|
||||
<LineId Id="46" Count="22" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="CTRL_PWM" Id="{644dae17-72d0-419b-9b8b-edba9206d973}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK CTRL_PWM
|
||||
VAR_INPUT
|
||||
CI, MAN_IN : REAL;
|
||||
MANUAL : BOOL;
|
||||
F : REAL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
PW : PWM_DC;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.1 21. oct. 2008
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
*)
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
PW(F := F, DC := SEL(MANUAL,CI,MAN_IN));
|
||||
Q := PW.Q;
|
||||
|
||||
|
||||
(* revision history
|
||||
hm 3. jun. 2008 rev 1.0
|
||||
original version
|
||||
|
||||
hm 21. oct. 2008 rev 1.1
|
||||
optimized code
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="CTRL_PWM">
|
||||
<LineId Id="17" Count="3" />
|
||||
<LineId Id="23" Count="12" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="DEAD_BAND" Id="{f1b68de8-cffb-40ea-8a26-928203a05789}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION DEAD_BAND : REAL
|
||||
VAR_INPUT
|
||||
X : REAL;
|
||||
L : REAL;
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.2 18. jan. 2011
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
DEAD_BAND ist eine lineare Übertragungsfunktion mit Totzone. Die Funktion verschiebt den positiven Teil der Kurve um +L und den negativen Teil der Kurve um -L.
|
||||
DEAD_BAND = X - L wenn X > L)
|
||||
DEAD_BAND = X + L wenn X < -L
|
||||
DEAD_BAND = 0 wenn Abs(X) <= L
|
||||
|
||||
*)
|
||||
(* @END_DECLARATION := '0' *)
|
||||
IF X > L THEN
|
||||
DEAD_BAND := X - L;
|
||||
ELSIF X < -L THEN
|
||||
DEAD_BAND := X + L;
|
||||
ELSE
|
||||
DEAD_BAND := 0.0;
|
||||
END_IF;
|
||||
|
||||
|
||||
(* revision history
|
||||
hm 2. nov. 2007 rev 1.0
|
||||
original version
|
||||
|
||||
hm 14. jun. 2008 rev 1.1
|
||||
improved performance
|
||||
|
||||
hm 18. jan. 2011 rev 1.2
|
||||
assign 0 before return
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="DEAD_BAND">
|
||||
<LineId Id="47" Count="29" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="DEAD_ZONE" Id="{ac384c32-d9db-416f-989e-95f86da03382}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION DEAD_ZONE : REAL
|
||||
VAR_INPUT
|
||||
X : REAL;
|
||||
L : REAL;
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.2 11. mar. 2009
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
dead_zone2 is a linear transfer function which follows a linear function except for x is close to 0.
|
||||
Y = X if abs(x) > L otherwise its 0.
|
||||
|
||||
*)
|
||||
(* @END_DECLARATION := '0' *)
|
||||
IF ABS(x) > L THEN
|
||||
dead_zone := X;
|
||||
ELSE
|
||||
DEAD_ZONE := 0.0;
|
||||
END_IF;
|
||||
|
||||
(* revision history
|
||||
hm 12. feb. 2007 rev 1.0
|
||||
original version
|
||||
|
||||
hm 14. jun. 2008 rev 1.1
|
||||
improved performance
|
||||
|
||||
hm 11. mar. 2009 rev 1.2
|
||||
real constants updated to new systax using dot
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="DEAD_ZONE">
|
||||
<LineId Id="10" Count="24" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="FT_DERIV" Id="{e19d98ea-f45c-4e00-9724-5bee1d9633f0}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK FT_DERIV
|
||||
VAR_INPUT
|
||||
in : REAL;
|
||||
K : REAL := 1.0;
|
||||
run : BOOL := TRUE;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
out : REAL;
|
||||
END_VAR
|
||||
VAR
|
||||
old: REAL;
|
||||
tx: DWORD;
|
||||
last: DWORD;
|
||||
init: BOOL;
|
||||
tc: REAL;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.5 11. mar. 2009
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
FT_deriv calculates the derivate over the signal "in" with Faktor "K".
|
||||
a run input enables or stops the calculation, if left unconnected its true and therfore the calculation is executed.
|
||||
if K is not specified the default is 1.
|
||||
|
||||
*)
|
||||
|
||||
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
(* read system time *)
|
||||
tx := T_PLC_US();
|
||||
tc := DWORD_TO_REAL(tx - last);
|
||||
last := tx;
|
||||
|
||||
(* init on first startup *)
|
||||
IF NOT init THEN
|
||||
init := TRUE;
|
||||
old := in;
|
||||
ELSIF run AND tc > 0.0 THEN
|
||||
out := (in - old) / tc * 1000000.0 * K;
|
||||
old := in;
|
||||
ELSE
|
||||
out := 0.0;
|
||||
END_IF;
|
||||
|
||||
(*
|
||||
hm 3.1.2007 rev 1.1
|
||||
added init code for startup
|
||||
set the default for K to 1
|
||||
|
||||
hm 15. sep 2007 rev 1.2
|
||||
replaced Time() with T_PLC_US for compatibility and performance reasons
|
||||
increased accuracy and work in microseconds internally
|
||||
|
||||
hm 29 oct 2007 rev 1.3
|
||||
prohibit calculation when tx - last = 0 to avoid division by 0 and increase accuracy on fast systems
|
||||
|
||||
hm 6. nov. 2008 rev 1.4
|
||||
improved performance
|
||||
|
||||
hm 11. mar. 2009 rev 1.5
|
||||
inproved code
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="FT_DERIV">
|
||||
<LineId Id="19" Count="28" />
|
||||
<LineId Id="50" Count="17" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="FT_PIDWL" Id="{2d524001-6ab8-495f-9e95-700c27215e19}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK FT_PIDWL
|
||||
VAR_INPUT
|
||||
IN : REAL;
|
||||
KP : REAL := 1.0;
|
||||
TN : REAL := 1.0;
|
||||
TV : REAL := 1.0;
|
||||
LIM_L : REAL := -1.0E38;
|
||||
LIM_H : REAL := 1.0E38;
|
||||
RST : BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Y : REAL;
|
||||
LIM : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
piwl : FT_PIWL;
|
||||
diff : FT_DERIV;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.3 13. nov. 2009
|
||||
programmer hugo
|
||||
tested by tobias
|
||||
|
||||
FT_PIDWL is a PID controller with dynamic wind_up reset.
|
||||
The PID controller works according to the fomula Y = KP *(IN + KI * INTEG(e) + DERIV(e) ).
|
||||
a rst will reset the integrator to 0
|
||||
lim_h and Lim_l set the possible output range of the internal integrator.
|
||||
the output flags lim will signal that the output limits are active.
|
||||
|
||||
default values for KP = 1, KI = 1, ILIM_L = -1E37, iLIM_H = +1E38.
|
||||
*)
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
(* if rst then *)
|
||||
IF rst THEN
|
||||
piwl(rst := TRUE);
|
||||
piwl.RST := FALSE;
|
||||
ELSE
|
||||
(* run PIWL controller first *)
|
||||
(* we need to check if TN = 0 and do alternative calls *)
|
||||
IF TN = 0.0 THEN
|
||||
piwl(in := IN * KP, KP := 1.0, KI := 0.0, LIM_L := LIM_L, LIM_H := LIM_H);
|
||||
ELSE
|
||||
piwl(in := IN * KP, KP := 1.0, KI := 1.0 / TN, LIM_L := LIM_L, LIM_H := LIM_H);
|
||||
END_IF;
|
||||
|
||||
(* run differentiator and add_to_output *)
|
||||
diff(IN := IN, K := KP * TV);
|
||||
Y := piwl.Y + diff.out;
|
||||
|
||||
(* limit the output *)
|
||||
IF Y < LIM_L THEN
|
||||
LIM := TRUE;
|
||||
Y := LIM_L;
|
||||
ELSIF Y > LIM_H THEN
|
||||
LIM := TRUE;
|
||||
Y := LIM_H;
|
||||
ELSE
|
||||
LIM := FALSE;
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
|
||||
|
||||
(* revision history
|
||||
hm 13. jun. 2008 rev 1.0
|
||||
original version
|
||||
|
||||
hm 25. jan 2008 rev 1.1
|
||||
multiply differential part with KP
|
||||
|
||||
hm 11. mar. 2009 rev 1.2
|
||||
real constants updated to new systax using dot
|
||||
|
||||
hm 13. nov. 2009 rev 1.3
|
||||
fixed code for negative KP
|
||||
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="FT_PIDWL">
|
||||
<LineId Id="21" Count="58" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,110 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="FT_PIWL" Id="{8cecf0cc-cac1-4356-93da-bbf6e749af95}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK FT_PIWL
|
||||
VAR_INPUT
|
||||
IN : REAL;
|
||||
KP : REAL := 1.0;
|
||||
KI : REAL := 1.0;
|
||||
LIM_L : REAL := -1.0E38;
|
||||
LIM_H : REAL := 1.0E38;
|
||||
RST : BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Y : REAL;
|
||||
LIM : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
init: BOOL;
|
||||
tx: DWORD;
|
||||
tc : REAL;
|
||||
t_last: DWORD;
|
||||
in_last : REAL;
|
||||
i: REAL;
|
||||
p: REAL;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.3 11. mar. 2009
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
FT_PIWL is a PI controller.
|
||||
The PID controller works according to the fomula Y = IN *(KP+ KI * INTEG(e) ).
|
||||
a rst will reset the integrator to 0
|
||||
lim_h and Lim_l set the possible output range of the controller.
|
||||
the output flag lim will signal that the output limits are active.
|
||||
the integrator ist equipped with anti wind-up circuitry which limits trhe total output ranke to lim_l and lim_h
|
||||
|
||||
default values for KP = 1, KI = 1, ILIM_L = -1E37, iLIM_H = +1E38.
|
||||
*)
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
(* initialize at power_up *)
|
||||
IF NOT init OR RST THEN
|
||||
init := TRUE;
|
||||
in_last := in;
|
||||
t_last := T_PLC_US();
|
||||
i := 0.0;
|
||||
tc := 0.0;
|
||||
ELSE
|
||||
(* read last cycle time in Microseconds *)
|
||||
tx := T_PLC_US();
|
||||
tc := DWORD_TO_REAL(tx - t_last);
|
||||
t_last := tx;
|
||||
|
||||
(* calculate proportional part *)
|
||||
p := KP * IN;
|
||||
|
||||
(* run integrator *)
|
||||
i := (IN + in_last) * 5.0E-7 * KI * tc + i;
|
||||
in_last := IN;
|
||||
|
||||
(* calculate output Y *)
|
||||
Y := p + i;
|
||||
|
||||
(* check output for limits *)
|
||||
IF Y >= LIM_H THEN
|
||||
Y := LIM_H;
|
||||
IF ki <> 0.0 THEN
|
||||
i := LIM_H - p;
|
||||
ELSE
|
||||
i := 0.0;
|
||||
END_IF;
|
||||
LIM := TRUE;
|
||||
ELSIF Y <= LIM_L THEN
|
||||
Y := LIM_L;
|
||||
IF ki <> 0.0 THEN
|
||||
i := LIM_L - p;
|
||||
ELSE
|
||||
i := 0.0;
|
||||
END_IF;
|
||||
LIM := TRUE;
|
||||
ELSE
|
||||
LIM := FALSE;
|
||||
END_IF;
|
||||
END_IF;
|
||||
|
||||
|
||||
(* revision history
|
||||
hm 13. jun. 2008 rev 1.0
|
||||
original version
|
||||
|
||||
hm 27. oct. 2008 rev 1.1
|
||||
integrator will not be adjusted when ki = 0
|
||||
|
||||
hm 25. jan 2009 rev 1.2
|
||||
module will also work with negative K
|
||||
|
||||
hm 11. mar. 2009 rev 1.3
|
||||
real constants updated to new systax using dot
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="FT_PIWL">
|
||||
<LineId Id="26" Count="60" />
|
||||
<LineId Id="89" Count="12" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,56 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="PWM_DC" Id="{0f59300b-d8c1-494c-88fa-aaf8a563364f}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK PWM_DC
|
||||
VAR_INPUT
|
||||
F : REAL;
|
||||
DC : REAL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
clk: CLK_PRG;
|
||||
pulse: TP_X;
|
||||
tmp: REAL;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.4 11. mar. 2009
|
||||
programmer oscat
|
||||
tested BY oscat
|
||||
|
||||
this signal generator generates a square wave signal which is specified by the frequency and the duty cycle
|
||||
*)
|
||||
(* @END_DECLARATION := '0' *)
|
||||
IF F > 0.0 THEN
|
||||
tmp := 1000.0 / F;
|
||||
CLK(PT := REAL_TO_TIME(tmp));
|
||||
Pulse(in := clk.Q, pt := REAL_TO_TIME(tmp * DC));
|
||||
Q := pulse.Q;
|
||||
END_IF;
|
||||
|
||||
(* revision history
|
||||
|
||||
hm 25. feb 2007 rev 1.1
|
||||
recoded in st for better performance and better portability
|
||||
|
||||
hm 27. nov 2007 rev 1.2
|
||||
avoid divide by 0 when F = 0
|
||||
|
||||
hm 19. oct. 2008 rev 1.3
|
||||
changed type TP_R to TP_X because of name change
|
||||
improved performance
|
||||
|
||||
hm 11. mar. 2009 rev 1.4
|
||||
changed real constants to use dot syntax
|
||||
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="PWM_DC">
|
||||
<LineId Id="21" Count="29" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="SCALE_R" Id="{25a95851-a5ac-4c3a-83d0-6d0841537cfe}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION SCALE_R : REAL
|
||||
VAR_INPUT
|
||||
X : REAL;
|
||||
I_LO : REAL;
|
||||
I_HI : REAL;
|
||||
O_LO : REAL;
|
||||
O_HI : REAL;
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.2 11. jan. 2011
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
Scale_R is used to translate and scale a REAL input x to a real output.
|
||||
the input is limited to I_LO <= X <= I_HI.
|
||||
|
||||
Type Function: REAL
|
||||
Input X: REAL (input)
|
||||
I_LO: REAL (min input value)
|
||||
I_HI: REAL (max input value)
|
||||
O_LO: REAL (min output value)
|
||||
O_HI: REAL (max output value)
|
||||
Output REAL (output value)
|
||||
|
||||
SCALE_R scales an input value REAL and calculates an output value in
|
||||
REAL. The input value X is limited here to I_LO and I_HI.
|
||||
SCALE_D(IN,4,20,0,100) scales an input with 4 .. 20mA to the output 0..100.
|
||||
SCALE_R can also be negative output values and work with a negative slope, the values I_LO and I_HI but must always be specifed that ILO < I_HI.
|
||||
|
||||
*)
|
||||
IF I_LO = I_HI THEN
|
||||
SCALE_R := O_LO;
|
||||
ELSE
|
||||
SCALE_R := (O_HI - O_LO) / (I_HI - I_LO) * (LIMIT(I_LO, X, I_HI) - I_LO) + O_LO;
|
||||
END_IF;
|
||||
|
||||
|
||||
(* revision history
|
||||
hm 18. may. 2008 rev 1.0
|
||||
original version
|
||||
|
||||
hm 13. nov. 2008 rev 1.1
|
||||
corrected formula for negative gradient
|
||||
|
||||
hm 11. jan 2011 rev 1.2
|
||||
avoid division by 0
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="SCALE_R">
|
||||
<LineId Id="13" Count="6" />
|
||||
<LineId Id="38" Count="0" />
|
||||
<LineId Id="40" Count="9" />
|
||||
<LineId Id="52" Count="0" />
|
||||
<LineId Id="51" Count="0" />
|
||||
<LineId Id="20" Count="0" />
|
||||
<LineId Id="7" Count="0" />
|
||||
<LineId Id="22" Count="14" />
|
||||
<LineId Id="21" Count="0" />
|
||||
<LineId Id="37" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="TP_X" Id="{94610de2-d47a-4301-b858-64fba677c68d}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK TP_X
|
||||
VAR_INPUT
|
||||
IN : BOOL;
|
||||
PT : TIME;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
Q : BOOL;
|
||||
ET : TIME;
|
||||
END_VAR
|
||||
VAR
|
||||
edge : BOOL;
|
||||
start : TIME;
|
||||
tx: TIME;
|
||||
END_VAR
|
||||
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.3 17. dec. 2008
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
retriggerable edge triggered pulse similar to TP but with a retrigger function
|
||||
if the pt input is 0 then output is always low.
|
||||
*)
|
||||
|
||||
(* @END_DECLARATION := '0' *)
|
||||
(* read system_time *)
|
||||
tx := DWORD_TO_TIME(T_PLC_MS());
|
||||
|
||||
(* rising edge trigger *)
|
||||
IF IN AND NOT edge THEN
|
||||
start := tx;
|
||||
Q := PT > t#0ms;
|
||||
ELSIF Q THEN
|
||||
ET := tx - start;
|
||||
IF ET >= PT THEN
|
||||
Q := FALSE;
|
||||
ET := t#0ms;
|
||||
END_IF;
|
||||
END_IF;
|
||||
edge := IN;
|
||||
|
||||
(* revision history
|
||||
hm 4. aug 2006 rev 1.0
|
||||
original version
|
||||
|
||||
hm 17. sep 2007 rev 1.1
|
||||
replaced time() with T_PLC_MS() for compatibility reasons
|
||||
|
||||
hm 19. oct. 2008 rev 1.2
|
||||
renamed to TP_R to TP_X for compatibility reasons
|
||||
|
||||
hm 17. dec. 2008 rev 1.3
|
||||
code optimized
|
||||
|
||||
*)
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="TP_X">
|
||||
<LineId Id="23" Count="39" />
|
||||
<LineId Id="9" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,56 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="T_PLC_MS" Id="{9e1a567e-3c62-4487-838b-99966ce9ad2a}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION T_PLC_MS : DWORD
|
||||
VAR CONSTANT
|
||||
debug : BOOL := 0;
|
||||
N : INT := 0;
|
||||
offset : DWORD := 0;
|
||||
END_VAR
|
||||
VAR
|
||||
tx : TIME;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.2 16. nov 2008
|
||||
programmer hugo
|
||||
tested by oscat
|
||||
|
||||
T_PLC_MS reads the internal PLC timer and return the time, it has the advantage to be able to set a debug mode
|
||||
and speed up the counter to test the plc timer overrun which occurs every 50 days respectively 25 days at siemens S7
|
||||
this routine also allows to correct the behavior of s7 where the internal plc counter will not count all 32 bits.
|
||||
|
||||
*)
|
||||
(* @END_DECLARATION := '0' *)
|
||||
tx := TIME();
|
||||
T_PLC_MS := TIME_TO_DWORD(Tx);
|
||||
(* hier muss die korrektur für step7 stattfinden
|
||||
plctime muss den vollen wertebereich von time ausnutzen:
|
||||
wenn bei step7 time -24tage bis plus 24 tage ist dann muss der timer auch beim überlauf auf -24tage springen
|
||||
und auf keinen fall auf 0 !!!!
|
||||
für siemens muss ein weiterer fb im main eingebunden werden der sicherstellt das alle 32 bits durchgezählt werden.
|
||||
es kann nur ein fb sein den er muss sich das oberste (32te) bit merken.
|
||||
oder etwa spring s7 bei überlauf auf -24 tage????? dann wäre keine korrektur nötig.
|
||||
*)
|
||||
IF debug THEN
|
||||
T_PLC_MS := (SHL(T_PLC_MS,N) OR SHL(DWORD#1,N)-1) + OFFSET;
|
||||
END_IF;
|
||||
|
||||
(* revision history
|
||||
hm 14.9.2007 rev 1.0
|
||||
original version
|
||||
|
||||
hm 12. nov 2007 rev 1.1
|
||||
added temporaray variable tx because some compilers could not handle time() as an argument
|
||||
|
||||
hm 16. nov. 2008 rev 1.2
|
||||
initialized constants with 0 for compatibility reasons
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="T_PLC_MS">
|
||||
<LineId Id="15" Count="33" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,56 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="T_PLC_US" Id="{e6814df1-39a7-4cb1-8665-73a427969dd1}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION T_PLC_US : DWORD
|
||||
VAR CONSTANT
|
||||
debug : BOOL := 0;
|
||||
N : INT := 0;
|
||||
offset : DWORD := 0;
|
||||
END_VAR
|
||||
VAR
|
||||
tx : TIME;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
version 1.2 16 nov 2008
|
||||
programmer hugo
|
||||
tested by tobias
|
||||
|
||||
T_PLC_US reads the internal PLC timer and return the time, it has the advantage to be able to set a debug mode
|
||||
and speed up the counter to test the plc timer overrun which occurs every 50 days respectively 25 days at siemens S7
|
||||
this routine also allows to correct the behavior of s7 where the internal plc counter will not count all 32 bits.
|
||||
|
||||
*)
|
||||
(* @END_DECLARATION := '0' *)
|
||||
tx := TIME();
|
||||
T_PLC_US := TIME_TO_DWORD(Tx)*1000;
|
||||
(* hier muss die korrektur für step7 stattfinden
|
||||
plctime muss den vollen wertebereich von time ausnutzen:
|
||||
wenn bei step7 time -24tage bis plus 24 tage ist dann muss der timer auch beim überlauf auf -24tage springen
|
||||
und auf keinen fall auf 0 !!!!
|
||||
für siemens muss ein weiterer fb im main eingebunden werden der sicherstellt das alle 32 bits durchgezählt werden.
|
||||
es kann nur ein fb sein den er muss sich das oberste (32te) bit merken.
|
||||
oder etwa spring s7 bei überlauf auf -24 tage????? dann wäre keine korrektur nötig.
|
||||
*)
|
||||
IF debug THEN
|
||||
T_PLC_US := (SHL(T_PLC_US,N) OR SHL(DWORD#1,N)-1) + OFFSET;
|
||||
END_IF;
|
||||
|
||||
(* revision history
|
||||
hm 14.9.2007 rev 1.0
|
||||
original version
|
||||
|
||||
hm 12. nov 2007 rev 1.1
|
||||
added temporaray variable tx because some compilers could not handle time() as an argument
|
||||
|
||||
hm 16. nov. 2008 rev 1.2
|
||||
initialized constants with 0 for compatibility reasons
|
||||
*)]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="T_PLC_US">
|
||||
<LineId Id="15" Count="33" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="LimitValueINT" Id="{561f7915-f04f-4878-b6c4-f0067cb195bf}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION LimitValueINT : INT
|
||||
VAR_INPUT
|
||||
LowerLimit: INT; (* 1st input variable - Lower limit *)
|
||||
Input: INT; (* 2nd input variable *)
|
||||
UpperLimit: INT; (* 3rd input variable - Upper limit *)
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
The 1st LowerLimit input variable forms the lower and the 3rd UpperLimit input variable the upper limit value.
|
||||
If the 2nd Input variable is within this limit, it will be transferred to the output variable.
|
||||
If it is above this limit, the upper limit value will be transferred;
|
||||
if it is below this limit the lower limit value will be transferred.
|
||||
*)
|
||||
IF Input > UpperLimit THEN
|
||||
LimitValueINT := UpperLimit; (* If input is above upper limit, set output to upper limit *)
|
||||
ELSIF Input < LowerLimit THEN
|
||||
LimitValueINT := LowerLimit; (* If input is below lower limit, set output to lower limit *)
|
||||
ELSE
|
||||
LimitValueINT := Input; (* If input is within limits, pass it through *)
|
||||
END_IF;]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="LimitValueINT">
|
||||
<LineId Id="18" Count="0" />
|
||||
<LineId Id="22" Count="3" />
|
||||
<LineId Id="20" Count="0" />
|
||||
<LineId Id="12" Count="5" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="LimitValueLREAL" Id="{c413c3eb-b86b-4870-9ccc-b4a38f9398ae}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION LimitValueLREAL : LREAL
|
||||
VAR_INPUT
|
||||
LowerLimit: LREAL; (* 1st input variable - Lower limit *)
|
||||
Input: LREAL; (* 2nd input variable *)
|
||||
UpperLimit: LREAL; (* 3rd input variable - Upper limit *)
|
||||
END_VAR
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[(*
|
||||
The 1st LowerLimit input variable forms the lower and the 3rd UpperLimit input variable the upper limit value.
|
||||
If the 2nd Input variable is within this limit, it will be transferred to the output variable.
|
||||
If it is above this limit, the upper limit value will be transferred;
|
||||
if it is below this limit the lower limit value will be transferred.
|
||||
*)
|
||||
IF Input > UpperLimit THEN
|
||||
LimitValueLREAL := UpperLimit; (* If input is above upper limit, set output to upper limit *)
|
||||
ELSIF Input < LowerLimit THEN
|
||||
LimitValueLREAL := LowerLimit; (* If input is below lower limit, set output to lower limit *)
|
||||
ELSE
|
||||
LimitValueLREAL := Input; (* If input is within limits, pass it through *)
|
||||
END_IF;]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="LimitValueLREAL">
|
||||
<LineId Id="18" Count="0" />
|
||||
<LineId Id="22" Count="3" />
|
||||
<LineId Id="20" Count="0" />
|
||||
<LineId Id="12" Count="5" />
|
||||
<LineId Id="7" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="SavePersistent" Id="{1762c678-16da-430f-b876-16d7ed13592a}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[PROGRAM SavePersistent
|
||||
VAR
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// Call FB to initialise Data Saving
|
||||
//
|
||||
GVL.fbU900(
|
||||
sNetID:= ,
|
||||
iPLCPort:= 851,
|
||||
tTimeout:= DEFAULT_ADS_TIMEOUT,
|
||||
eUpsMode:= eSUPS_WrPersistData_NoShutdown,
|
||||
ePersistentMode:= SPDM_2PASS,
|
||||
tRecoverTime:= T#10S,
|
||||
bPowerFailDetect=> ,
|
||||
eState=> );
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="SavePersistent">
|
||||
<LineId Id="5" Count="1" />
|
||||
<LineId Id="9" Count="7" />
|
||||
<LineId Id="7" Count="0" />
|
||||
<LineId Id="17" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<POU Name="Send_email" Id="{600f1b92-e96b-4e8b-b192-95f8c2b46f4c}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[PROGRAM Send_email
|
||||
VAR
|
||||
// fbSendEmail : FB_SmtpV3_Full;
|
||||
fbSmtpFull : FB_SmtpV3_Full;
|
||||
sMessage_HTML : STRING(500) := '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>HTML-Test</title><body><h3>Dear SMTP-User,</h3>this e-mail was sent in HTML from <u>your PLC!</u><br/><br/>Best regards,<br/>your K3D-Team</body></html>';
|
||||
nPriority : UDINT;
|
||||
R_Edge : R_TRIG;
|
||||
bStart : BOOL;
|
||||
bBusy : BOOL;
|
||||
bError : BOOL;
|
||||
udErrId : UDINT;
|
||||
nMailCounter : UDINT := 0;
|
||||
sFiles : ARRAY [0..32] OF STRING(80) := ['c:\Temperatures.txt','c:\Log.txt']; (* TODO: Adjust file paths*)
|
||||
nState : INT;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// Send email in case of critical errors
|
||||
//
|
||||
fbSmtpFull(
|
||||
sNetId:= '',
|
||||
sSmtpServer:= 'mail.company.com',
|
||||
sUsername:= 'TestUser',
|
||||
sPassword:= 'TestPwd',
|
||||
sFrom:= 'TestUser@company.com',
|
||||
sTo:= 'service@company.com',
|
||||
sSubject:= 'Email from your 605 Mill Windsor',
|
||||
nContentType:= 2, (* 2 = HTML *)
|
||||
nPriority:= 1, (* 1 = HIGH *)
|
||||
sAttachments:= sFiles,
|
||||
pMessage:= ADR(sMessage_HTML),
|
||||
cbMessage:= SIZEOF(sMessage_HTML),
|
||||
bExecute:= bStart,
|
||||
bError=> bError,
|
||||
bBusy=>bBusy,
|
||||
nErrId=> udErrId);
|
||||
|
||||
IF NOT bBusy AND NOT bError AND bStart THEN
|
||||
nState := 0;
|
||||
bStart := FALSE;
|
||||
END_IF
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<LineIds Name="Send_email">
|
||||
<LineId Id="5" Count="0" />
|
||||
<LineId Id="7" Count="0" />
|
||||
<LineId Id="23" Count="20" />
|
||||
<LineId Id="9" Count="0" />
|
||||
<LineId Id="8" Count="0" />
|
||||
</LineIds>
|
||||
</POU>
|
||||
</TcPlcObject>
|
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<Task Name="PlcTask" Id="{77cf1818-08b4-42d2-a80e-eb50afd47792}">
|
||||
<!--CycleTime in micro seconds.-->
|
||||
<CycleTime>20000</CycleTime>
|
||||
<Priority>20</Priority>
|
||||
<PouCall>
|
||||
<Name>MAIN</Name>
|
||||
</PouCall>
|
||||
<TaskFBGuid>{88e28178-fc92-4708-a582-a4b8b5cf9187}</TaskFBGuid>
|
||||
<Fb_init>{ff8fc729-dea7-4c9e-911a-c2389893eba6}</Fb_init>
|
||||
<Fb_exit>{60ea14be-9684-4107-8805-b0ad43772e31}</Fb_exit>
|
||||
<CycleUpdate>{bba1c6cb-e18a-4c16-8cc3-74e769b1b486}</CycleUpdate>
|
||||
<PostCycleUpdate>{707a1869-60f4-412b-ba54-3369511cd643}</PostCycleUpdate>
|
||||
</Task>
|
||||
</TcPlcObject>
|
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<Task Name="VISU_TASK" Id="{a7659fc3-4a0b-41e4-b72e-e3c0443d4da1}">
|
||||
<!--CycleTime in micro seconds.-->
|
||||
<CycleTime>200000</CycleTime>
|
||||
<Priority>30</Priority>
|
||||
<PouCall>
|
||||
<Name>VisuElems.Visu_Prg</Name>
|
||||
</PouCall>
|
||||
<TaskFBGuid>{4eef783a-624c-4889-b855-0fbeec0fa3b6}</TaskFBGuid>
|
||||
<Fb_init>{d032b7b6-cdcb-4ae2-95c0-6c9961615f09}</Fb_init>
|
||||
<Fb_exit>{3e8fb502-f6d8-4ded-bd60-ff69b1068e04}</Fb_exit>
|
||||
<CycleUpdate>{1698c011-a2c1-4090-bc47-247001bd7df2}</CycleUpdate>
|
||||
<PostCycleUpdate>{36c85efc-5c91-46ee-9041-4f90606f23e1}</PostCycleUpdate>
|
||||
</Task>
|
||||
</TcPlcObject>
|
@ -0,0 +1,87 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<ImagePool Name="ImagePool" Id="{187e2ed7-c795-457b-8e65-78944fedd83a}">
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="ImagePoolObject">
|
||||
<v n="UniqueIdGenerator">"88"</v>
|
||||
<l n="BitmapPool" t="ArrayList" cet="ImagePoolItem">
|
||||
<o>
|
||||
<v n="BitmapID">"MAIN_SCR_BACKGROUND"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\satCROP.png"</v>
|
||||
<v n="ItemID">9</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"LAYOUT"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_1_6350383465.png"</v>
|
||||
<v n="ItemID">10</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"K3D_LOGO"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\LOGO K3D.png"</v>
|
||||
<v n="ItemID">11</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"LAYOUTII"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\layout2.png"</v>
|
||||
<v n="ItemID">26</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"BLOW1"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_7_5805304704.png"</v>
|
||||
<v n="ItemID">41</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"HEX1"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_1_6350383465.png"</v>
|
||||
<v n="ItemID">44</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"DUCT"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_1_4498014313.png"</v>
|
||||
<v n="ItemID">51</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"CASE1"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_1_6350383465.png"</v>
|
||||
<v n="ItemID">54</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"CASE2"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_2_9738006528.png"</v>
|
||||
<v n="ItemID">57</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"FLAME1"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\Flame 2.png"</v>
|
||||
<v n="ItemID">60</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">"HEXCHANGER"</v>
|
||||
<v n="FileID">"5ce3da45-db07-42e7-a21c-a00fff4ed8f6|Image\imageedit_1_3716086639.png"</v>
|
||||
<v n="ItemID">63</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="BitmapID">""</v>
|
||||
<v n="FileID">""</v>
|
||||
<v n="ItemID">75</v>
|
||||
</o>
|
||||
</l>
|
||||
<v n="GuidInit">{1c8590d4-f3c8-4b26-9e8d-28269f8ec785}</v>
|
||||
<v n="GuidReInit">{2573bf41-ca87-479a-b772-8b413f53393e}</v>
|
||||
<v n="GuidExitX">{3886dba0-315d-4fe7-9fdd-62b60e0f4f96}</v>
|
||||
<v n="ValidIds">true</v>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="ArrayList">System.Collections.ArrayList</Type>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="Guid">System.Guid</Type>
|
||||
<Type n="ImagePoolItem">{215b2719-0347-4e4d-ba85-8bcd66946f66}</Type>
|
||||
<Type n="ImagePoolObject">{bb0b9044-714e-4614-ad3e-33cbdf34d16b}</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="String">System.String</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</ImagePool>
|
||||
</TcPlcObject>
|
@ -0,0 +1,928 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<Visu Name="DutyCycleOffset" Id="{270f60fc-bce6-464c-91d5-d9d52b1652bc}">
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualObject">
|
||||
<n n="LastVisuLanguageModelEntry" />
|
||||
<v n="UniqueIdGenerator">"8"</v>
|
||||
<o n="VisualElemList" t="VisualElemList">
|
||||
<l n="VisualElementList" t="VisualElemCollection" cet="GenericVisualElem">
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4278190080</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">36</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">82</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">38</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">0</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">24</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"%i %"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"GVL.arZoneData[zoneID].iDutyCycleManualOffset"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1022"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_7"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{47f05f1f-1dde-498a-8da4-2bfeec39b83a}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{270f60fc-bce6-464c-91d5-d9d52b1652bc}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">6</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1647042231L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<v n="Value">4294967295U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value">78</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">80</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">60</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1651471674L</v>
|
||||
<v n="Value">true</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2341735680L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Control-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">438423234L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">0</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">48</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Element-Button-FontColor"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">550940142L</v>
|
||||
<v n="Value">41</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1473355128L</v>
|
||||
<v n="Value">108</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<v n="Value">4294967295U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2478807622L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"+"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"936"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Button"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemButton"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_8"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" ckt="String" cvt="STSnippetInputAction[]">
|
||||
<v>OnMouseClick</v>
|
||||
<a cet="STSnippetInputAction">
|
||||
<o>
|
||||
<v n="STSnippet">"IF GVL.arZoneData[zoneID].iDutyCycleManualOffset < 21 THEN
|
||||
GVL.arZoneData[zoneID].iDutyCycleManualOffset:=GVL.arZoneData[zoneID].iDutyCycleManualOffset+1;
|
||||
END_IF;"</v>
|
||||
</o>
|
||||
</a>
|
||||
</d>
|
||||
<v n="VisualElementIdentification">{5197c375-4196-451f-a88f-e9b6e2225f62}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{270f60fc-bce6-464c-91d5-d9d52b1652bc}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">7</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1647042231L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<v n="Value">4294967295U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value">145</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">80</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">60</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1651471674L</v>
|
||||
<v n="Value">true</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2341735680L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Control-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">438423234L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">0</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">48</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Element-Button-FontColor"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">550940142L</v>
|
||||
<v n="Value">41</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1473355128L</v>
|
||||
<v n="Value">175</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<v n="Value">4294967295U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2478807622L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"-"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"2310"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Button"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemButton"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_9"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" ckt="String" cvt="STSnippetInputAction[]">
|
||||
<v>OnMouseClick</v>
|
||||
<a cet="STSnippetInputAction">
|
||||
<o>
|
||||
<v n="STSnippet">"IF GVL.arZoneData[zoneID].iDutyCycleManualOffset > 0 THEN
|
||||
GVL.arZoneData[zoneID].iDutyCycleManualOffset:=GVL.arZoneData[zoneID].iDutyCycleManualOffset-1;
|
||||
END_IF;"</v>
|
||||
</o>
|
||||
</a>
|
||||
</d>
|
||||
<v n="VisualElementIdentification">{2b3d562c-c4fe-4ff3-a858-42e0d5a7ec70}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{270f60fc-bce6-464c-91d5-d9d52b1652bc}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">8</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-1</v>
|
||||
<v n="CanonicalName">"Element-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">80</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">1</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">18</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"Zone %"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1782330054L</v>
|
||||
<v n="Value">"BS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"zoneID"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1684"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_10"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{1e032bb2-cc8a-4515-86be-3903f01d43bb}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{270f60fc-bce6-464c-91d5-d9d52b1652bc}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">9</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
</l>
|
||||
<v n="BackgroundBitmapId">""</v>
|
||||
<v n="BackgroundColor">16777215</v>
|
||||
<o n="Background" t="BackgroundSettings">
|
||||
<n n="BgGradient" />
|
||||
<n n="BgNamedColor" />
|
||||
<v n="BgBmpId">""</v>
|
||||
<v n="BgUseBmp">false</v>
|
||||
<v n="BgColor">false</v>
|
||||
<v n="BgUseColor">16777215</v>
|
||||
<v n="BgUseGradient">false</v>
|
||||
</o>
|
||||
</o>
|
||||
<o n="GeneratedLMMDescriptions" t="GeneratedLanguageModelEntriesData">
|
||||
<o n="GeneratedVisuFbDescription" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>ContainsPoint</v>
|
||||
<v>62797064-1d76-45c7-bfdd-7a6a304bbfc3</v>
|
||||
<v>Destruct</v>
|
||||
<v>0db206fc-6eee-45b3-88f2-1ba36693917a</v>
|
||||
<v>ElementInfo</v>
|
||||
<v>70b8635a-3fe9-4a43-be3c-ffe2fddf012c</v>
|
||||
<v>FB_Exit</v>
|
||||
<v>b30f797b-99d7-4499-a9b9-9eecbabef306</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>0df6c6b0-86f1-4aac-ae5f-fd11af07223f</v>
|
||||
<v>GetClientData</v>
|
||||
<v>0dd48497-93f6-4bb7-8c83-c184fd29a8d7</v>
|
||||
<v>GetElementArray</v>
|
||||
<v>747fb6d0-d5e6-40f8-91c3-a3e41b4ca924</v>
|
||||
<v>GetElementIdArray</v>
|
||||
<v>ed4fb498-2440-4db6-9748-aee27dcac224</v>
|
||||
<v>GetInitializeVersion</v>
|
||||
<v>9ed2e77c-6406-408b-99c2-223ee43ce795</v>
|
||||
<v>GetLocalUsergroup</v>
|
||||
<v>15b8e9d5-508f-4eb6-aec0-d5f262de63bc</v>
|
||||
<v>GetName</v>
|
||||
<v>8b70bcdf-4979-4e5e-8ab4-27b57b6a0330</v>
|
||||
<v>GetNamespace</v>
|
||||
<v>a7d81463-9f8a-46fa-9f3e-f6d360e54c87</v>
|
||||
<v>GetSize</v>
|
||||
<v>7b86c8d0-548f-4b4d-9955-0cb598f49314</v>
|
||||
<v>GetSurroundingRect</v>
|
||||
<v>b18deb2a-c95b-4e6c-a921-edd821d4b817</v>
|
||||
<v>GetText</v>
|
||||
<v>497e817e-dab9-4d91-8ae6-66a1d4c42bf0</v>
|
||||
<v>GetTextProperties</v>
|
||||
<v>37817db6-334f-4883-9abe-c1a756d9d7d0</v>
|
||||
<v>GetTooltip</v>
|
||||
<v>d4a9ab81-b842-47c9-a403-eba918ad0817</v>
|
||||
<v>GetTranslator</v>
|
||||
<v>f57ac51f-1576-4506-b42b-47b19bfb5c6f</v>
|
||||
<v>GetUpdateRects</v>
|
||||
<v>66b4f1a8-5060-43ac-a3dd-0ae081aa479d</v>
|
||||
<v>HandleInput</v>
|
||||
<v>f49b8350-871f-46f0-a3f0-2bc4666fe1b7</v>
|
||||
<v>HasInputAccess</v>
|
||||
<v>732b86e2-676b-4ac5-90f1-4b4ce00b5af9</v>
|
||||
<v>HasInputAccessIntern</v>
|
||||
<v>5e8e0445-7e06-4e72-a926-a5b8306c0d90</v>
|
||||
<v>HasVisibilityAccess</v>
|
||||
<v>6e6052aa-bfc7-40db-b977-0bbfc064a99e</v>
|
||||
<v>HasVisibilityAccessIntern</v>
|
||||
<v>bc6631e9-78ff-4a04-9793-369fba65b1be</v>
|
||||
<v>Initialize</v>
|
||||
<v>aefc32da-39cc-4b66-b769-20038f472a27</v>
|
||||
<v>IsAntialiasingInactive</v>
|
||||
<v>776730e2-023b-4c16-a16c-726d171d4d36</v>
|
||||
<v>Paint</v>
|
||||
<v>7f50d5ad-0d6c-4e21-b47b-c9995348f13a</v>
|
||||
<v>SetClientData</v>
|
||||
<v>2d68d488-718b-4133-876a-e984eedf81e6</v>
|
||||
<v>SetStaticState</v>
|
||||
<v>54ffa3e7-a729-4afa-86c8-b1eeb4667ef7</v>
|
||||
<v>SetVisuFlagsInternal</v>
|
||||
<v>5b011d88-18b2-4a7e-b2fb-3f6b90020262</v>
|
||||
<v>Update</v>
|
||||
<v>444e3172-54a1-4faa-93cb-3c0ae2403f05</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{270f60fc-bce6-464c-91d5-d9d52b1652bc}</v>
|
||||
</o>
|
||||
<v n="GeneratedGlobalVisuVarsGuid">{8256ee7b-afa6-4352-9d04-66a9ccd90300}</v>
|
||||
<v n="GeneratedGlobalTheVisuVarlistGuid">{cda99e15-3cdb-45c2-a2ff-7538fcf31e37}</v>
|
||||
<v n="GeneratedGlobalVisuConstants">{46d620a5-d9cc-43d1-85f1-5e4edfe34eb2}</v>
|
||||
<d n="GeneratedAllElementsEntries" t="Hashtable" />
|
||||
<o n="VisuRegDesc" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>FB_Exit</v>
|
||||
<v>40b8bc29-19be-4179-beac-8b362460861b</v>
|
||||
<v>FB_Init</v>
|
||||
<v>0e92fb79-e8fc-4e28-ae32-ebf94da17599</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>149ee87a-2b27-4b15-aa0c-97e683f595eb</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{f29d014a-8625-43bb-8dc8-3bbb5666429f}</v>
|
||||
</o>
|
||||
<v n="VisuRegisterGvl">{631901e3-405d-4525-82c3-3a3624c221d3}</v>
|
||||
<n n="SettingsPou" />
|
||||
<n n="MemManPou" />
|
||||
<o n="InputsPou" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>abstrGetDefaultCursor</v>
|
||||
<v>224bc83d-4964-4de8-a4f5-0ab03589eb63</v>
|
||||
<v>ExecuteDialogClosed</v>
|
||||
<v>737ca5dd-5dd8-48dc-8944-4db9fed3fad1</v>
|
||||
<v>ExecuteKeyDown</v>
|
||||
<v>2bf4adf6-fcf1-4815-80de-e0fecfe6dd7f</v>
|
||||
<v>ExecuteKeyUp</v>
|
||||
<v>9ddaf45a-62cd-4c8b-85f6-f292e0acf3d0</v>
|
||||
<v>ExecuteLooseCapture</v>
|
||||
<v>6ac3bf40-4aaf-44de-9db6-d97b4229d685</v>
|
||||
<v>ExecuteMouseClick</v>
|
||||
<v>90c348cd-5bcb-4c3b-a18b-369a347c5018</v>
|
||||
<v>ExecuteMouseDblClick</v>
|
||||
<v>08a2e120-5a89-4fef-b9af-69be24a80b60</v>
|
||||
<v>ExecuteMouseDown</v>
|
||||
<v>f96b2cfd-8a15-40bf-8599-3f7968cfcab8</v>
|
||||
<v>ExecuteMouseEnter</v>
|
||||
<v>3001eddb-86e4-497f-996f-0ac2625f4a1f</v>
|
||||
<v>ExecuteMouseLeave</v>
|
||||
<v>3baad20f-1e7f-482f-b7ec-29fc80411cbf</v>
|
||||
<v>ExecuteMouseMove</v>
|
||||
<v>01a5a469-15c2-4bfd-9c1b-d6725127929e</v>
|
||||
<v>ExecuteMouseUp</v>
|
||||
<v>52255f5a-53e2-4dc0-b6d8-f152f2a98660</v>
|
||||
<v>GetElementInfo</v>
|
||||
<v>d236f9e2-bd4a-434a-a688-6ee446b24dbc</v>
|
||||
<v>Initialize</v>
|
||||
<v>15614d9c-3c1d-4d55-a1a2-12e3655bb7db</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{29c22693-f862-4bec-837e-35f731ecff1c}</v>
|
||||
</o>
|
||||
<v n="DialogDut">{5afd12d5-7012-4353-b4c9-7f2a22c86de8}</v>
|
||||
</o>
|
||||
<v n="LastUsedIdForIdentifier">11</v>
|
||||
<o n="TextDocument" t="TextDocument">
|
||||
<a n="TextLines" cet="TextLine">
|
||||
<o>
|
||||
<v n="Id">7L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"VAR_IN_OUT"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">8L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">" zoneID:INT;"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"END_VAR"</v>
|
||||
</o>
|
||||
</a>
|
||||
</o>
|
||||
<v n="GvlCreated">false</v>
|
||||
<n n="LMEntry" />
|
||||
<v n="ProfileCompatibilityId">4140216668L</v>
|
||||
<v n="LMVerMinor">0</v>
|
||||
<v n="LMVerMajor">1</v>
|
||||
<o n="Hotkeys" t="HotkeyConfiguration">
|
||||
<v n="IdMin">481037385728L</v>
|
||||
<v n="IdMax">549755813887L</v>
|
||||
<v n="Id">481037385728L</v>
|
||||
<v n="IdMask">549754765312L</v>
|
||||
<v n="IdStep">1048576L</v>
|
||||
<l2 n="Inputs" />
|
||||
</o>
|
||||
<o n="VisuSizeManager" t="VisualObjectSizeManager">
|
||||
<d2 n="Size" ckt="Int32" cvt="VisualObjectSize">
|
||||
<v>0</v>
|
||||
<o>
|
||||
<v n="Width">84</v>
|
||||
<v n="Height">205</v>
|
||||
</o>
|
||||
<v>1</v>
|
||||
<o>
|
||||
<v n="Width">84</v>
|
||||
<v n="Height">205</v>
|
||||
</o>
|
||||
</d2>
|
||||
<v n="Version">1</v>
|
||||
</o>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="ArrayList">System.Collections.ArrayList</Type>
|
||||
<Type n="BackgroundSettings">{1038f12c-dd4b-4f96-87a3-a350fe8f3552}</Type>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="CaseInsensitiveHashtable">{7df88604-7ac5-4e36-91c4-55e4fdad3e68}</Type>
|
||||
<Type n="ComplexInput">{1de566f6-72a7-494c-9353-9a418172c96e}</Type>
|
||||
<Type n="Double">System.Double</Type>
|
||||
<Type n="FontDescription">{896a5e54-96c3-433b-96d2-4f1442fef591}</Type>
|
||||
<Type n="GeneratedLanguageModelEntriesData">{703465dc-4679-4ff2-bcc3-c57d0a204da3}</Type>
|
||||
<Type n="GenericFbDescription">{40d6dd8d-dfd0-493a-8e29-c9a35e1e6539}</Type>
|
||||
<Type n="GenericVisualElem">{f86c2928-8614-4cca-824b-e819ac4d58c4}</Type>
|
||||
<Type n="Guid">System.Guid</Type>
|
||||
<Type n="Hashtable">System.Collections.Hashtable</Type>
|
||||
<Type n="HotkeyConfiguration">{6b108d46-58af-4e41-a3f4-174d8f160cc4}</Type>
|
||||
<Type n="Int16">System.Int16</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="Int64">System.Int64</Type>
|
||||
<Type n="NamedStyleColor">{fa491db2-51ff-4bc1-9cd0-ce8c94ff6216}</Type>
|
||||
<Type n="String">System.String</Type>
|
||||
<Type n="STSnippetInputAction">{6302d3fe-6ea5-4c42-819a-a9734a133b3d}</Type>
|
||||
<Type n="STSnippetInputAction[]">_3S.CoDeSys.VisualElem.STSnippetInputAction[], VisualElem.plugin, Version=3.5.13.32, Culture=neutral, PublicKeyToken=null</Type>
|
||||
<Type n="TextDocument">{f3878285-8e4f-490b-bb1b-9acbb7eb04db}</Type>
|
||||
<Type n="TextLine">{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}</Type>
|
||||
<Type n="UInt16">System.UInt16</Type>
|
||||
<Type n="UInt32">System.UInt32</Type>
|
||||
<Type n="VisualElemCollection">{ef9d0b20-c96e-48db-b361-2ded4063150e}</Type>
|
||||
<Type n="VisualElemList">{f285c9a3-7019-446b-b98c-ccec3a0af8fa}</Type>
|
||||
<Type n="VisualElemMember">{c694e3a2-5c0b-4177-ab35-cb06bd5a6a02}</Type>
|
||||
<Type n="VisualElemMemberCollection">{a4b83bea-3742-489c-9fe8-d96d68dba7ab}</Type>
|
||||
<Type n="VisualElemMemberList">{17e26cd1-bb9b-47fe-a3d5-18fcd63b9c96}</Type>
|
||||
<Type n="VisualObject">{f18bec89-9fef-401d-9953-2f11739a6808}</Type>
|
||||
<Type n="VisualObjectSize">{6ad3e88f-aee2-4766-a7ea-a8790037ef51}</Type>
|
||||
<Type n="VisualObjectSizeManager">{5f612b0e-b404-455f-8177-27864e9f5332}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
<ObjectProperties>
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualProperty">
|
||||
<v n="VisuUsageType">0</v>
|
||||
<v n="SizeX">84</v>
|
||||
<v n="SizeY">205</v>
|
||||
<v n="IsStartVisu">false</v>
|
||||
<v n="VisuSizeMode" t="VisualVisuSizeMode">Specified</v>
|
||||
<v n="Internal">false</v>
|
||||
<v n="DialogIsOpaque">false</v>
|
||||
<v n="DialogIsOpaqueIsSet">false</v>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="VisualProperty">{477d844b-9b2a-407e-90a4-d36fd6dde2fc}</Type>
|
||||
<Type n="VisualVisuSizeMode">{34718b76-91f6-43de-8c65-b77e0b1ee621}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</ObjectProperties>
|
||||
</Visu>
|
||||
</TcPlcObject>
|
@ -0,0 +1,607 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<Visu Name="TempSetFrameUnit" Id="{29a336e4-4b5e-4803-b1d0-fd9a7dc28d9f}">
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualObject">
|
||||
<n n="LastVisuLanguageModelEntry" />
|
||||
<v n="UniqueIdGenerator">"6"</v>
|
||||
<o n="VisualElemList" t="VisualElemList">
|
||||
<l n="VisualElementList" t="VisualElemCollection" cet="GenericVisualElem">
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4278190080</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">94</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">91</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">0</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">18</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"%2.1f °C"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_SOLID"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"INT_TO_REAL(_app.iT_SP)/10.0"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.HMI_Visible"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1179"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_2"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" ckt="String" cvt="InputBoxInputAction[]">
|
||||
<v>OnMouseClick</v>
|
||||
<a cet="InputBoxInputAction">
|
||||
<o>
|
||||
<v n="InputBoxVariable">"_app.iT_SP"</v>
|
||||
<v n="InputType">"VisuDialogs.Numpad"</v>
|
||||
<v n="InputBoxMin">""</v>
|
||||
<v n="InputBoxMax">""</v>
|
||||
<v n="InputBoxDialogTitle">""</v>
|
||||
<v n="Password">false</v>
|
||||
<v n="UseTextOutputVariable">false</v>
|
||||
<v n="TextOutputVariableInitialized">true</v>
|
||||
<v n="OtherVarConversion">""</v>
|
||||
<v n="Format">""</v>
|
||||
<v n="DialogPosition" t="DialogPositionSetting">UseGlobalSetting</v>
|
||||
<v n="DialogXPos">""</v>
|
||||
<v n="DialogYPos">""</v>
|
||||
</o>
|
||||
</a>
|
||||
</d>
|
||||
<v n="VisualElementIdentification">{28175e10-ea4d-4fda-af81-dd7459128f4a}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{29a336e4-4b5e-4803-b1d0-fd9a7dc28d9f}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">1</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">89</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">2</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">16</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"Apt. %d"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1782330054L</v>
|
||||
<v n="Value">"BS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"_app.iAp"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.HMI_VISIBLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1312"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_4"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{db7ece01-2886-450f-9e49-48be19c6affe}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{29a336e4-4b5e-4803-b1d0-fd9a7dc28d9f}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">3</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
</l>
|
||||
<v n="BackgroundBitmapId">""</v>
|
||||
<v n="BackgroundColor">16777215</v>
|
||||
<o n="Background" t="BackgroundSettings">
|
||||
<n n="BgGradient" />
|
||||
<n n="BgNamedColor" />
|
||||
<v n="BgBmpId">""</v>
|
||||
<v n="BgUseBmp">false</v>
|
||||
<v n="BgColor">false</v>
|
||||
<v n="BgUseColor">16777215</v>
|
||||
<v n="BgUseGradient">false</v>
|
||||
</o>
|
||||
</o>
|
||||
<o n="GeneratedLMMDescriptions" t="GeneratedLanguageModelEntriesData">
|
||||
<o n="GeneratedVisuFbDescription" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>ContainsPoint</v>
|
||||
<v>f19e8e19-aea1-4f57-9425-4a3cfdbcb1bc</v>
|
||||
<v>Destruct</v>
|
||||
<v>d515e074-50eb-4e02-a902-6bfb348db360</v>
|
||||
<v>ElementInfo</v>
|
||||
<v>0f6a1135-f84e-4056-b132-9f6054fc6f60</v>
|
||||
<v>FB_Exit</v>
|
||||
<v>47832874-a35c-4ae9-83d8-e8132668052c</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>d16a689d-c482-463f-9f9a-7a5f4f98c441</v>
|
||||
<v>GetClientData</v>
|
||||
<v>7894c069-bc2b-4b1d-b150-f4333ee73483</v>
|
||||
<v>GetElementArray</v>
|
||||
<v>cc1c9f03-e431-4dad-9846-6a75ec01b380</v>
|
||||
<v>GetElementIdArray</v>
|
||||
<v>62df7591-b441-4d16-be65-76e9046a359b</v>
|
||||
<v>GetInitializeVersion</v>
|
||||
<v>9fb1904c-bf4b-4407-8442-6606b91d29a8</v>
|
||||
<v>GetLocalUsergroup</v>
|
||||
<v>b268f1e5-8a04-41c3-bee6-803edae27cf6</v>
|
||||
<v>GetName</v>
|
||||
<v>a0b78fa0-0c66-4880-8586-7f3ee4047229</v>
|
||||
<v>GetNamespace</v>
|
||||
<v>bfa06094-beb2-40d1-9e2c-63625268b580</v>
|
||||
<v>GetSize</v>
|
||||
<v>d052699d-730b-4ead-91cf-bac141b0e6a8</v>
|
||||
<v>GetSurroundingRect</v>
|
||||
<v>a555c1e8-37d3-4a0e-a0b5-70317d3e9f2e</v>
|
||||
<v>GetText</v>
|
||||
<v>f3f49492-2070-439b-beb9-c3971189db2f</v>
|
||||
<v>GetTextProperties</v>
|
||||
<v>c2e8c115-42b1-46fb-bef5-303c4a4fba28</v>
|
||||
<v>GetTooltip</v>
|
||||
<v>59544e77-0402-435c-b618-4ecb3111766e</v>
|
||||
<v>GetTranslator</v>
|
||||
<v>f344ec53-50e7-49d1-944b-3a52bb700f1b</v>
|
||||
<v>GetUpdateRects</v>
|
||||
<v>8ee69637-d90b-4645-8601-c240de42cc5a</v>
|
||||
<v>HandleInput</v>
|
||||
<v>4009767a-9402-4c32-9fef-b856ca3187d4</v>
|
||||
<v>HasInputAccess</v>
|
||||
<v>bfcd45d6-fe54-4916-b116-edbe79f03e2f</v>
|
||||
<v>HasInputAccessIntern</v>
|
||||
<v>4ac4c6ce-58f6-5fa6-b716-a9d48a130d05</v>
|
||||
<v>HasVisibilityAccess</v>
|
||||
<v>0b79f892-c279-4bd4-899e-b3e8301370d6</v>
|
||||
<v>HasVisibilityAccessIntern</v>
|
||||
<v>14f4d579-3420-5f52-8892-a69f2eb7cb5a</v>
|
||||
<v>Initialize</v>
|
||||
<v>8b2cdb6e-7999-40ae-9cc7-1c972359e4ef</v>
|
||||
<v>IsAntialiasingInactive</v>
|
||||
<v>bbebec26-5868-4486-a92d-41e6aa643f99</v>
|
||||
<v>Paint</v>
|
||||
<v>5cce25a7-d0bb-41d6-b47a-fc935551a918</v>
|
||||
<v>SetClientData</v>
|
||||
<v>89fb3076-b7d4-4f2b-b809-610431a6a75c</v>
|
||||
<v>SetStaticState</v>
|
||||
<v>98c3dd4d-e964-42be-a772-641e7c10581d</v>
|
||||
<v>SetVisuFlagsInternal</v>
|
||||
<v>1642a601-4746-4ee3-b696-c53c6525e342</v>
|
||||
<v>Update</v>
|
||||
<v>1236a7a8-7643-4120-87b7-23c99699feaa</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{29a336e4-4b5e-4803-b1d0-fd9a7dc28d9f}</v>
|
||||
</o>
|
||||
<v n="GeneratedGlobalVisuVarsGuid">{30c38352-895e-41df-9fbb-c1263d4a505a}</v>
|
||||
<v n="GeneratedGlobalTheVisuVarlistGuid">{3285f08e-753f-4b28-9d5b-5068930e616c}</v>
|
||||
<v n="GeneratedGlobalVisuConstants">{8c41780c-0141-4474-b640-2c8c9f49137c}</v>
|
||||
<d n="GeneratedAllElementsEntries" t="Hashtable" />
|
||||
<o n="VisuRegDesc" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>FB_Exit</v>
|
||||
<v>ce879719-ab8d-4d8c-ac68-7d8360cf645d</v>
|
||||
<v>FB_Init</v>
|
||||
<v>67b2a72a-23d1-49f8-a951-98422dcffd9f</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>78f0c5f3-08b0-4edc-adaa-b3a5c3573015</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{a1fd6c95-dcfd-4472-9b51-643c80bc3a32}</v>
|
||||
</o>
|
||||
<v n="VisuRegisterGvl">{f0cd658a-7f75-4907-a4f3-dc440a4797a5}</v>
|
||||
<n n="SettingsPou" />
|
||||
<n n="MemManPou" />
|
||||
<o n="InputsPou" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>abstrGetDefaultCursor</v>
|
||||
<v>d2156229-d09a-417c-86c2-7580f74215b2</v>
|
||||
<v>ExecuteDialogClosed</v>
|
||||
<v>f10dfba6-5937-4606-92ea-6b3049b0d63b</v>
|
||||
<v>ExecuteKeyDown</v>
|
||||
<v>4dd14ce0-9f4a-4771-b634-301bc19b2378</v>
|
||||
<v>ExecuteKeyUp</v>
|
||||
<v>fd54fd63-a58d-4aae-8e2c-90583465835c</v>
|
||||
<v>ExecuteLooseCapture</v>
|
||||
<v>ce8748e1-a5a6-43c1-adb3-985983f078ff</v>
|
||||
<v>ExecuteMouseClick</v>
|
||||
<v>20b50b9f-1d6e-4f32-8768-69205cd0a8b5</v>
|
||||
<v>ExecuteMouseDblClick</v>
|
||||
<v>fb68cf52-e727-4525-ad40-38c8367d48f3</v>
|
||||
<v>ExecuteMouseDown</v>
|
||||
<v>dd44ff7f-4fb3-493e-81b4-733be11ae720</v>
|
||||
<v>ExecuteMouseEnter</v>
|
||||
<v>70cbd5d1-15d6-4dfe-bf03-dfe3e734e592</v>
|
||||
<v>ExecuteMouseLeave</v>
|
||||
<v>e8f92c1a-68fa-4993-bf59-742bdc15280b</v>
|
||||
<v>ExecuteMouseMove</v>
|
||||
<v>bd4bcc29-b6e0-486a-9fe0-54229dc9c46e</v>
|
||||
<v>ExecuteMouseUp</v>
|
||||
<v>264d423f-2d29-4093-b28f-dcb8631f58e7</v>
|
||||
<v>GetElementInfo</v>
|
||||
<v>9f36d33f-a25c-4c0a-ac0a-8e5858e29b0a</v>
|
||||
<v>Initialize</v>
|
||||
<v>2cb87cbf-ef8f-496f-b89b-bd3e8bb816e8</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{0fe1bff5-e518-4a24-b067-af94bb9a2e69}</v>
|
||||
</o>
|
||||
<v n="DialogDut">{9ff6fb40-ac3f-416d-a78c-7966a109de4d}</v>
|
||||
</o>
|
||||
<v n="LastUsedIdForIdentifier">5</v>
|
||||
<o n="TextDocument" t="TextDocument">
|
||||
<a n="TextLines" cet="TextLine">
|
||||
<o>
|
||||
<v n="Id">2L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"VAR_IN_OUT"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">" _app: Apartm;"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"END_VAR"</v>
|
||||
</o>
|
||||
</a>
|
||||
</o>
|
||||
<v n="GvlCreated">false</v>
|
||||
<n n="LMEntry" />
|
||||
<v n="ProfileCompatibilityId">4140216668L</v>
|
||||
<v n="LMVerMinor">0</v>
|
||||
<v n="LMVerMajor">1</v>
|
||||
<o n="Hotkeys" t="HotkeyConfiguration">
|
||||
<v n="IdMin">481037385728L</v>
|
||||
<v n="IdMax">549755813887L</v>
|
||||
<v n="Id">481037385728L</v>
|
||||
<v n="IdMask">549754765312L</v>
|
||||
<v n="IdStep">1048576L</v>
|
||||
<l2 n="Inputs" />
|
||||
</o>
|
||||
<o n="VisuSizeManager" t="VisualObjectSizeManager">
|
||||
<d2 n="Size" ckt="Int32" cvt="VisualObjectSize">
|
||||
<v>0</v>
|
||||
<o>
|
||||
<v n="Width">186</v>
|
||||
<v n="Height">32</v>
|
||||
</o>
|
||||
<v>1</v>
|
||||
<o>
|
||||
<v n="Width">186</v>
|
||||
<v n="Height">32</v>
|
||||
</o>
|
||||
</d2>
|
||||
<v n="Version">1</v>
|
||||
</o>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="ArrayList">System.Collections.ArrayList</Type>
|
||||
<Type n="BackgroundSettings">{1038f12c-dd4b-4f96-87a3-a350fe8f3552}</Type>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="CaseInsensitiveHashtable">{7df88604-7ac5-4e36-91c4-55e4fdad3e68}</Type>
|
||||
<Type n="ComplexInput">{1de566f6-72a7-494c-9353-9a418172c96e}</Type>
|
||||
<Type n="DialogPositionSetting">{16f3f59a-37ad-4991-a1af-cc2926974e08}</Type>
|
||||
<Type n="Double">System.Double</Type>
|
||||
<Type n="FontDescription">{896a5e54-96c3-433b-96d2-4f1442fef591}</Type>
|
||||
<Type n="GeneratedLanguageModelEntriesData">{703465dc-4679-4ff2-bcc3-c57d0a204da3}</Type>
|
||||
<Type n="GenericFbDescription">{40d6dd8d-dfd0-493a-8e29-c9a35e1e6539}</Type>
|
||||
<Type n="GenericVisualElem">{f86c2928-8614-4cca-824b-e819ac4d58c4}</Type>
|
||||
<Type n="Guid">System.Guid</Type>
|
||||
<Type n="Hashtable">System.Collections.Hashtable</Type>
|
||||
<Type n="HotkeyConfiguration">{6b108d46-58af-4e41-a3f4-174d8f160cc4}</Type>
|
||||
<Type n="InputBoxInputAction">{e8e7e747-f76f-4dee-ab1c-b9637e41ac26}</Type>
|
||||
<Type n="InputBoxInputAction[]">_3S.CoDeSys.VisualElem.InputBoxInputAction[], VisualElem.plugin, Version=3.5.13.32, Culture=neutral, PublicKeyToken=null</Type>
|
||||
<Type n="Int16">System.Int16</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="Int64">System.Int64</Type>
|
||||
<Type n="NamedStyleColor">{fa491db2-51ff-4bc1-9cd0-ce8c94ff6216}</Type>
|
||||
<Type n="String">System.String</Type>
|
||||
<Type n="TextDocument">{f3878285-8e4f-490b-bb1b-9acbb7eb04db}</Type>
|
||||
<Type n="TextLine">{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}</Type>
|
||||
<Type n="UInt16">System.UInt16</Type>
|
||||
<Type n="UInt32">System.UInt32</Type>
|
||||
<Type n="VisualElemCollection">{ef9d0b20-c96e-48db-b361-2ded4063150e}</Type>
|
||||
<Type n="VisualElemList">{f285c9a3-7019-446b-b98c-ccec3a0af8fa}</Type>
|
||||
<Type n="VisualElemMember">{c694e3a2-5c0b-4177-ab35-cb06bd5a6a02}</Type>
|
||||
<Type n="VisualElemMemberCollection">{a4b83bea-3742-489c-9fe8-d96d68dba7ab}</Type>
|
||||
<Type n="VisualElemMemberList">{17e26cd1-bb9b-47fe-a3d5-18fcd63b9c96}</Type>
|
||||
<Type n="VisualObject">{f18bec89-9fef-401d-9953-2f11739a6808}</Type>
|
||||
<Type n="VisualObjectSize">{6ad3e88f-aee2-4766-a7ea-a8790037ef51}</Type>
|
||||
<Type n="VisualObjectSizeManager">{5f612b0e-b404-455f-8177-27864e9f5332}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
<ObjectProperties>
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualProperty">
|
||||
<v n="VisuUsageType">0</v>
|
||||
<v n="SizeX">186</v>
|
||||
<v n="SizeY">32</v>
|
||||
<v n="IsStartVisu">false</v>
|
||||
<v n="VisuSizeMode" t="VisualVisuSizeMode">Specified</v>
|
||||
<v n="Internal">false</v>
|
||||
<v n="DialogIsOpaque">false</v>
|
||||
<v n="DialogIsOpaqueIsSet">false</v>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="VisualProperty">{477d844b-9b2a-407e-90a4-d36fd6dde2fc}</Type>
|
||||
<Type n="VisualVisuSizeMode">{34718b76-91f6-43de-8c65-b77e0b1ee621}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</ObjectProperties>
|
||||
</Visu>
|
||||
</TcPlcObject>
|
@ -0,0 +1,607 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<Visu Name="TempSetFrameUnitII" Id="{e44e8efe-4f82-431f-ae7d-6083516fbedd}">
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualObject">
|
||||
<n n="LastVisuLanguageModelEntry" />
|
||||
<v n="UniqueIdGenerator">"8"</v>
|
||||
<o n="VisualElemList" t="VisualElemList">
|
||||
<l n="VisualElementList" t="VisualElemCollection" cet="GenericVisualElem">
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4278190080</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">72</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">74</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">0</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">18</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"%2.1f °C"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_SOLID"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"_app.fT_SP"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.bVisible"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1179"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_2"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" ckt="String" cvt="InputBoxInputAction[]">
|
||||
<v>OnMouseClick</v>
|
||||
<a cet="InputBoxInputAction">
|
||||
<o>
|
||||
<v n="InputBoxVariable">"_app.iT_SP"</v>
|
||||
<v n="InputType">"VisuDialogs.Numpad"</v>
|
||||
<v n="InputBoxMin">"15.0"</v>
|
||||
<v n="InputBoxMax">"28.0"</v>
|
||||
<v n="InputBoxDialogTitle">""</v>
|
||||
<v n="Password">false</v>
|
||||
<v n="UseTextOutputVariable">true</v>
|
||||
<v n="TextOutputVariableInitialized">true</v>
|
||||
<v n="OtherVarConversion">""</v>
|
||||
<v n="Format">""</v>
|
||||
<v n="DialogPosition" t="DialogPositionSetting">UseGlobalSetting</v>
|
||||
<v n="DialogXPos">""</v>
|
||||
<v n="DialogYPos">""</v>
|
||||
</o>
|
||||
</a>
|
||||
</d>
|
||||
<v n="VisualElementIdentification">{28175e10-ea4d-4fda-af81-dd7459128f4a}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{e44e8efe-4f82-431f-ae7d-6083516fbedd}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">1</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">60</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">2</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">16</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"Apt. %d"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1782330054L</v>
|
||||
<v n="Value">"BS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"_app.iAp"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.bVisible"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1312"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_4"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{db7ece01-2886-450f-9e49-48be19c6affe}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{e44e8efe-4f82-431f-ae7d-6083516fbedd}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">3</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
</l>
|
||||
<v n="BackgroundBitmapId">""</v>
|
||||
<v n="BackgroundColor">16777215</v>
|
||||
<o n="Background" t="BackgroundSettings">
|
||||
<n n="BgGradient" />
|
||||
<n n="BgNamedColor" />
|
||||
<v n="BgBmpId">""</v>
|
||||
<v n="BgUseBmp">false</v>
|
||||
<v n="BgColor">false</v>
|
||||
<v n="BgUseColor">16777215</v>
|
||||
<v n="BgUseGradient">false</v>
|
||||
</o>
|
||||
</o>
|
||||
<o n="GeneratedLMMDescriptions" t="GeneratedLanguageModelEntriesData">
|
||||
<o n="GeneratedVisuFbDescription" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>ContainsPoint</v>
|
||||
<v>71f6929d-e13b-49c5-adf8-cdaf3d1adc7a</v>
|
||||
<v>Destruct</v>
|
||||
<v>cce73285-95cd-4e10-a494-25b114637f8c</v>
|
||||
<v>ElementInfo</v>
|
||||
<v>96e67caf-021b-45a4-9933-4e86038b6be3</v>
|
||||
<v>FB_Exit</v>
|
||||
<v>a2c7fda3-8f57-4e37-9215-7cbe93bdf063</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>1c0f7a21-a1e8-4ba1-b48c-965384d111da</v>
|
||||
<v>GetClientData</v>
|
||||
<v>e57fad25-8ff8-46db-9a24-58fb8da660a4</v>
|
||||
<v>GetElementArray</v>
|
||||
<v>c2dea097-3c96-405d-ad0c-4e3c692633db</v>
|
||||
<v>GetElementIdArray</v>
|
||||
<v>2146ffa4-fa74-4d44-ab56-4b28a62c33c6</v>
|
||||
<v>GetInitializeVersion</v>
|
||||
<v>87425a7f-f4de-43d8-8fd4-679c5d306dec</v>
|
||||
<v>GetLocalUsergroup</v>
|
||||
<v>ecf1a879-041d-4ecc-b1f1-f3a1c2f0ea6e</v>
|
||||
<v>GetName</v>
|
||||
<v>4949f30d-d9fe-4175-ab26-8d6227796a4e</v>
|
||||
<v>GetNamespace</v>
|
||||
<v>f3b17ab4-d2b5-4483-9f0c-71b7e3d483fa</v>
|
||||
<v>GetSize</v>
|
||||
<v>251ec171-6d35-4b15-abd1-0c15092a540f</v>
|
||||
<v>GetSurroundingRect</v>
|
||||
<v>854b4d0b-a171-434c-9860-46977ef158de</v>
|
||||
<v>GetText</v>
|
||||
<v>bc799183-eb4b-4fe3-b8d8-ecfc70af7821</v>
|
||||
<v>GetTextProperties</v>
|
||||
<v>9d50c1ba-6e81-44ef-b550-4612b6207d1b</v>
|
||||
<v>GetTooltip</v>
|
||||
<v>7b1dd92a-cf90-493d-922f-3a0056399e22</v>
|
||||
<v>GetTranslator</v>
|
||||
<v>235ece56-4899-45fb-a627-77ad7cd10be3</v>
|
||||
<v>GetUpdateRects</v>
|
||||
<v>85380c6b-e1e8-4f9c-a2f1-1d3a6cc32544</v>
|
||||
<v>HandleInput</v>
|
||||
<v>6ea43f13-209b-4f67-bda6-577d2aecd770</v>
|
||||
<v>HasInputAccess</v>
|
||||
<v>b02a518c-2d03-4d54-86eb-0e049e6beec1</v>
|
||||
<v>HasInputAccessIntern</v>
|
||||
<v>a7a9b4aa-b504-57dc-a94c-ef0c2d934bbf</v>
|
||||
<v>HasVisibilityAccess</v>
|
||||
<v>1ed81056-d97c-4986-ade4-1fe1a621fcf5</v>
|
||||
<v>HasVisibilityAccessIntern</v>
|
||||
<v>3c4621a8-646a-5e28-9294-5054c3dfbac8</v>
|
||||
<v>Initialize</v>
|
||||
<v>0848b914-50f4-4945-86c0-1cec38645e2f</v>
|
||||
<v>IsAntialiasingInactive</v>
|
||||
<v>55bbd774-391f-404a-b58d-f54eb167c5ed</v>
|
||||
<v>Paint</v>
|
||||
<v>4a663f2a-258f-4c38-b06d-dac036442685</v>
|
||||
<v>SetClientData</v>
|
||||
<v>f4194552-a3ef-4357-982e-b99baec1835b</v>
|
||||
<v>SetStaticState</v>
|
||||
<v>05a5ea0c-a7a3-40c6-9d17-c5f05cc55b37</v>
|
||||
<v>SetVisuFlagsInternal</v>
|
||||
<v>f3cabb1c-fc75-4a1c-a1bb-5f2b14ba3027</v>
|
||||
<v>Update</v>
|
||||
<v>be739e1e-ec70-4b0a-81a7-3f3c7e709419</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{e44e8efe-4f82-431f-ae7d-6083516fbedd}</v>
|
||||
</o>
|
||||
<v n="GeneratedGlobalVisuVarsGuid">{febc40b2-415d-437c-b380-7e4519604991}</v>
|
||||
<v n="GeneratedGlobalTheVisuVarlistGuid">{098bac23-b08b-405c-ba8f-3ef0072be967}</v>
|
||||
<v n="GeneratedGlobalVisuConstants">{28b4306b-8264-4907-9d1f-3c3c76ccae53}</v>
|
||||
<d n="GeneratedAllElementsEntries" t="Hashtable" />
|
||||
<o n="VisuRegDesc" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>FB_Exit</v>
|
||||
<v>2ce78f9b-28e5-407d-9533-0212dff0beb5</v>
|
||||
<v>FB_Init</v>
|
||||
<v>eaa1ed8a-4d03-4bcf-8bb1-2a81aa408709</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>c496f387-bacb-4742-9f3d-26ef4c413c94</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{a6862d40-a6a3-4fb3-86a0-9b2f8af0919a}</v>
|
||||
</o>
|
||||
<v n="VisuRegisterGvl">{7d1e2784-221f-41f3-9bd0-30740d7c2f39}</v>
|
||||
<n n="SettingsPou" />
|
||||
<n n="MemManPou" />
|
||||
<o n="InputsPou" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>abstrGetDefaultCursor</v>
|
||||
<v>55d4414b-3973-416b-a29a-dd59b5dc7e90</v>
|
||||
<v>ExecuteDialogClosed</v>
|
||||
<v>aaa65480-4848-43e3-a0fa-1326d8270b59</v>
|
||||
<v>ExecuteKeyDown</v>
|
||||
<v>471e9b36-2bcf-4ddb-a393-62b049c57de5</v>
|
||||
<v>ExecuteKeyUp</v>
|
||||
<v>c54fbbae-9e1e-442d-a5b7-6580dcfbac02</v>
|
||||
<v>ExecuteLooseCapture</v>
|
||||
<v>2d798a1b-efcb-4d08-b210-07c1b5c6551b</v>
|
||||
<v>ExecuteMouseClick</v>
|
||||
<v>8abd6616-5139-4034-869b-c4155b48ac01</v>
|
||||
<v>ExecuteMouseDblClick</v>
|
||||
<v>9448966c-2a63-4dc1-90ae-63544b46f4ec</v>
|
||||
<v>ExecuteMouseDown</v>
|
||||
<v>c16d52c9-aefd-44ec-9de6-da08b1ee7a8e</v>
|
||||
<v>ExecuteMouseEnter</v>
|
||||
<v>c1b618de-84b9-440b-9d69-f809ae34fb12</v>
|
||||
<v>ExecuteMouseLeave</v>
|
||||
<v>255c16b7-a432-44aa-8bec-9a1f972a8904</v>
|
||||
<v>ExecuteMouseMove</v>
|
||||
<v>54316402-bde6-4dfc-a2b7-c10d3fef48af</v>
|
||||
<v>ExecuteMouseUp</v>
|
||||
<v>208beaa4-86e6-495e-a85b-4a6f4e6fe008</v>
|
||||
<v>GetElementInfo</v>
|
||||
<v>69cd6a01-dcac-4a24-b2e3-9d893fedb459</v>
|
||||
<v>Initialize</v>
|
||||
<v>4643e905-c95b-4c71-9ea2-e4b286319a67</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{072ac5f5-f972-4c8f-b19a-fe0562fb4f68}</v>
|
||||
</o>
|
||||
<v n="DialogDut">{c815c77b-cb73-47c0-ba66-7fb64032abf6}</v>
|
||||
</o>
|
||||
<v n="LastUsedIdForIdentifier">5</v>
|
||||
<o n="TextDocument" t="TextDocument">
|
||||
<a n="TextLines" cet="TextLine">
|
||||
<o>
|
||||
<v n="Id">7L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"VAR_IN_OUT"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">8L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">" _app: HMI_ApartmDisplay;"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"END_VAR"</v>
|
||||
</o>
|
||||
</a>
|
||||
</o>
|
||||
<v n="GvlCreated">false</v>
|
||||
<n n="LMEntry" />
|
||||
<v n="ProfileCompatibilityId">4140216668L</v>
|
||||
<v n="LMVerMinor">0</v>
|
||||
<v n="LMVerMajor">1</v>
|
||||
<o n="Hotkeys" t="HotkeyConfiguration">
|
||||
<v n="IdMin">481037385728L</v>
|
||||
<v n="IdMax">549755813887L</v>
|
||||
<v n="Id">481037385728L</v>
|
||||
<v n="IdMask">549754765312L</v>
|
||||
<v n="IdStep">1048576L</v>
|
||||
<l2 n="Inputs" />
|
||||
</o>
|
||||
<o n="VisuSizeManager" t="VisualObjectSizeManager">
|
||||
<d2 n="Size" ckt="Int32" cvt="VisualObjectSize">
|
||||
<v>0</v>
|
||||
<o>
|
||||
<v n="Width">185</v>
|
||||
<v n="Height">31</v>
|
||||
</o>
|
||||
<v>1</v>
|
||||
<o>
|
||||
<v n="Width">185</v>
|
||||
<v n="Height">31</v>
|
||||
</o>
|
||||
</d2>
|
||||
<v n="Version">1</v>
|
||||
</o>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="ArrayList">System.Collections.ArrayList</Type>
|
||||
<Type n="BackgroundSettings">{1038f12c-dd4b-4f96-87a3-a350fe8f3552}</Type>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="CaseInsensitiveHashtable">{7df88604-7ac5-4e36-91c4-55e4fdad3e68}</Type>
|
||||
<Type n="ComplexInput">{1de566f6-72a7-494c-9353-9a418172c96e}</Type>
|
||||
<Type n="DialogPositionSetting">{16f3f59a-37ad-4991-a1af-cc2926974e08}</Type>
|
||||
<Type n="Double">System.Double</Type>
|
||||
<Type n="FontDescription">{896a5e54-96c3-433b-96d2-4f1442fef591}</Type>
|
||||
<Type n="GeneratedLanguageModelEntriesData">{703465dc-4679-4ff2-bcc3-c57d0a204da3}</Type>
|
||||
<Type n="GenericFbDescription">{40d6dd8d-dfd0-493a-8e29-c9a35e1e6539}</Type>
|
||||
<Type n="GenericVisualElem">{f86c2928-8614-4cca-824b-e819ac4d58c4}</Type>
|
||||
<Type n="Guid">System.Guid</Type>
|
||||
<Type n="Hashtable">System.Collections.Hashtable</Type>
|
||||
<Type n="HotkeyConfiguration">{6b108d46-58af-4e41-a3f4-174d8f160cc4}</Type>
|
||||
<Type n="InputBoxInputAction">{e8e7e747-f76f-4dee-ab1c-b9637e41ac26}</Type>
|
||||
<Type n="InputBoxInputAction[]">_3S.CoDeSys.VisualElem.InputBoxInputAction[], VisualElem.plugin, Version=3.5.13.32, Culture=neutral, PublicKeyToken=null</Type>
|
||||
<Type n="Int16">System.Int16</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="Int64">System.Int64</Type>
|
||||
<Type n="NamedStyleColor">{fa491db2-51ff-4bc1-9cd0-ce8c94ff6216}</Type>
|
||||
<Type n="String">System.String</Type>
|
||||
<Type n="TextDocument">{f3878285-8e4f-490b-bb1b-9acbb7eb04db}</Type>
|
||||
<Type n="TextLine">{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}</Type>
|
||||
<Type n="UInt16">System.UInt16</Type>
|
||||
<Type n="UInt32">System.UInt32</Type>
|
||||
<Type n="VisualElemCollection">{ef9d0b20-c96e-48db-b361-2ded4063150e}</Type>
|
||||
<Type n="VisualElemList">{f285c9a3-7019-446b-b98c-ccec3a0af8fa}</Type>
|
||||
<Type n="VisualElemMember">{c694e3a2-5c0b-4177-ab35-cb06bd5a6a02}</Type>
|
||||
<Type n="VisualElemMemberCollection">{a4b83bea-3742-489c-9fe8-d96d68dba7ab}</Type>
|
||||
<Type n="VisualElemMemberList">{17e26cd1-bb9b-47fe-a3d5-18fcd63b9c96}</Type>
|
||||
<Type n="VisualObject">{f18bec89-9fef-401d-9953-2f11739a6808}</Type>
|
||||
<Type n="VisualObjectSize">{6ad3e88f-aee2-4766-a7ea-a8790037ef51}</Type>
|
||||
<Type n="VisualObjectSizeManager">{5f612b0e-b404-455f-8177-27864e9f5332}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
<ObjectProperties>
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualProperty">
|
||||
<v n="VisuUsageType">0</v>
|
||||
<v n="SizeX">185</v>
|
||||
<v n="SizeY">31</v>
|
||||
<v n="IsStartVisu">false</v>
|
||||
<v n="VisuSizeMode" t="VisualVisuSizeMode">Specified</v>
|
||||
<v n="Internal">false</v>
|
||||
<v n="DialogIsOpaque">false</v>
|
||||
<v n="DialogIsOpaqueIsSet">false</v>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="VisualProperty">{477d844b-9b2a-407e-90a4-d36fd6dde2fc}</Type>
|
||||
<Type n="VisualVisuSizeMode">{34718b76-91f6-43de-8c65-b77e0b1ee621}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</ObjectProperties>
|
||||
</Visu>
|
||||
</TcPlcObject>
|
@ -0,0 +1,686 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4024.12">
|
||||
<Visu Name="TemperatureFrameUnit" Id="{4002f308-75d3-4013-b6d3-1d6b4771e763}">
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualObject">
|
||||
<n n="LastVisuLanguageModelEntry" />
|
||||
<v n="UniqueIdGenerator">"3"</v>
|
||||
<o n="VisualElemList" t="VisualElemList">
|
||||
<l n="VisualElementList" t="VisualElemCollection" cet="GenericVisualElem">
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">94</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">91</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">0</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">18</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"%2.1f °C"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"INT_TO_REAL(_app.iT_PV)/10.0"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.HMI_VISIBLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1179"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_2"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{57afbc17-9d0b-484f-a08b-919ff9711f22}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{4002f308-75d3-4013-b6d3-1d6b4771e763}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">1</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<v n="Value">4294967295U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value">191</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4062784938L</v>
|
||||
<v n="Value">"Element-Lamp-Lamp1-Green"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<v n="Value">4294967295U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">296037572L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">743958181L</v>
|
||||
<v n="Value">"_app.bSSR"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.HMI_VISIBLE"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Lamp1"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemLamp"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_4"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{381dcd66-b26b-46bd-883c-a954ea521c01}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{4002f308-75d3-4013-b6d3-1d6b4771e763}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">3</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
<o>
|
||||
<a n="ConfiguredComplexInputs" et="ComplexInput" />
|
||||
<l n="Elements" t="ArrayList" />
|
||||
<n n="VisualElementDescription" />
|
||||
<o n="VisualElemMemberList" t="VisualElemMemberList">
|
||||
<l n="VisualElemMemberList" t="VisualElemMemberCollection" cet="VisualElemMember">
|
||||
<o>
|
||||
<v n="Id">571893170L</v>
|
||||
<v n="Value">""</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">494569607L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-2830136</v>
|
||||
<v n="CanonicalName">"Element-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2812299069L</v>
|
||||
<l n="Value" t="ArrayList" cet="UInt32">
|
||||
<v>4290822336</v>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">135947015L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-65536</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Frame-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">493260384L</v>
|
||||
<l n="Value" t="ArrayList" cet="NamedStyleColor">
|
||||
<o>
|
||||
<v n="Color">-12337</v>
|
||||
<v n="CanonicalName">"Element-Alarm-Fill-Color"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2340015797L</v>
|
||||
<v n="Value">"HCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2565699834L</v>
|
||||
<v n="Value">"VCENTER"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4134387352L</v>
|
||||
<v n="Value">"NONE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1603690730L</v>
|
||||
<v n="Value">"Arial"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">4253639993L</v>
|
||||
<v n="Value" t="Int16">12</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2729990903L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1213979116L</v>
|
||||
<v n="Value">0U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3488306084L</v>
|
||||
<v n="Value">4278190080U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1999528970L</v>
|
||||
<v n="Value">"<toggle/tap variable>"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3719097617L</v>
|
||||
<v n="Value">0</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1649127785L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">357335551L</v>
|
||||
<v n="Value" t="Int16">1</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2422045748L</v>
|
||||
<v n="Value" t="Int16">89</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2134141914L</v>
|
||||
<v n="Value" t="Int16">30</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3729828405L</v>
|
||||
<l n="Value" t="ArrayList" cet="FontDescription">
|
||||
<o>
|
||||
<v n="FontStyle">2</v>
|
||||
<v n="AdditionalFontStyle" t="UInt16">0</v>
|
||||
<v n="ExplicitColor">-16777216</v>
|
||||
<v n="FontName">"Tahoma"</v>
|
||||
<v n="FontSize">16</v>
|
||||
<v n="ScriptIdentification">0</v>
|
||||
<v n="DoubleFontSize" t="Double">0</v>
|
||||
<o n="NamedColor" t="NamedStyleColor">
|
||||
<v n="Color">-16777216</v>
|
||||
<v n="CanonicalName">"Font-Default-Color"</v>
|
||||
</o>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1337389588L</v>
|
||||
<v n="Value">"FROM_STYLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2678395525L</v>
|
||||
<v n="Value">1U</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">390574330L</v>
|
||||
<v n="Value">"Apt. %d"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2827249010L</v>
|
||||
<v n="Value">"PS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2597686782L</v>
|
||||
<v n="Value">false</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1782330054L</v>
|
||||
<v n="Value">"BS_HOLLOW"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2477733581L</v>
|
||||
<v n="Value">"_app.iAp"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">2880254039L</v>
|
||||
<v n="Value">"NOT _app.HMI_VISIBLE"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">823443203L</v>
|
||||
<v n="Value">"1312"</v>
|
||||
</o>
|
||||
</l>
|
||||
</o>
|
||||
<v n="VisualElementName">"Textfield"</v>
|
||||
<v n="VisualElementTypeName">"VisuFbElemTextfield"</v>
|
||||
<v n="VisualElementIsRectangle">true</v>
|
||||
<v n="VisualElementIdentifier">"GenElemInst_6"</v>
|
||||
<n n="VisualElementOfflinePaintCommands" />
|
||||
<n n="VisualElementFrameInformation" />
|
||||
<d n="VisualElementInputActions" t="Hashtable" />
|
||||
<v n="VisualElementIdentification">{d9d0e0de-0157-48bf-905d-dcfe8be68236}</v>
|
||||
<v n="VisualElementOwningObjectGuid">{4002f308-75d3-4013-b6d3-1d6b4771e763}</v>
|
||||
<a n="LMGuids" et="Guid" />
|
||||
<d n="SubElements" t="Hashtable" />
|
||||
<v n="VisualElementId">5</v>
|
||||
<l n="UserManagementAccessRights" t="ArrayList" />
|
||||
</o>
|
||||
</l>
|
||||
<v n="BackgroundBitmapId">""</v>
|
||||
<v n="BackgroundColor">16777215</v>
|
||||
<o n="Background" t="BackgroundSettings">
|
||||
<n n="BgGradient" />
|
||||
<n n="BgNamedColor" />
|
||||
<v n="BgBmpId">""</v>
|
||||
<v n="BgUseBmp">false</v>
|
||||
<v n="BgColor">false</v>
|
||||
<v n="BgUseColor">16777215</v>
|
||||
<v n="BgUseGradient">false</v>
|
||||
</o>
|
||||
</o>
|
||||
<o n="GeneratedLMMDescriptions" t="GeneratedLanguageModelEntriesData">
|
||||
<o n="GeneratedVisuFbDescription" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>ContainsPoint</v>
|
||||
<v>c6443fa7-def7-4fde-b3a8-eca20a87932e</v>
|
||||
<v>Destruct</v>
|
||||
<v>93c2ffbb-c42e-410d-bf7d-5e6c9cb0f333</v>
|
||||
<v>ElementInfo</v>
|
||||
<v>ac2d9f48-178e-4249-8df7-ea206f83e060</v>
|
||||
<v>FB_Exit</v>
|
||||
<v>5dd5d030-f1ec-458c-a83c-8573ea6e9074</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>461a4621-a3d3-4c0e-8d11-40ccf53147bc</v>
|
||||
<v>GetClientData</v>
|
||||
<v>9f97e294-4fce-4f48-a10d-a884c76372e4</v>
|
||||
<v>GetElementArray</v>
|
||||
<v>6c783ef3-68cd-48c0-99b2-5900baede59c</v>
|
||||
<v>GetElementIdArray</v>
|
||||
<v>8671e0ad-f934-4b55-9d1a-b5b87f887652</v>
|
||||
<v>GetInitializeVersion</v>
|
||||
<v>0840095c-c700-45e5-a37d-9d2821660a7f</v>
|
||||
<v>GetLocalUsergroup</v>
|
||||
<v>724849e2-1f80-4ad8-8d60-b6bc7443d0cc</v>
|
||||
<v>GetName</v>
|
||||
<v>61f51479-7dd7-4bb2-8b6b-b2315d8a81af</v>
|
||||
<v>GetNamespace</v>
|
||||
<v>201d6277-6fb9-415d-833b-a5ff8286ca9a</v>
|
||||
<v>GetSize</v>
|
||||
<v>d3515c8c-ca53-4d77-bee5-c6b691582dcd</v>
|
||||
<v>GetSurroundingRect</v>
|
||||
<v>251ceea2-4ff9-4145-b71c-e42dcff8b148</v>
|
||||
<v>GetText</v>
|
||||
<v>d8e5bead-00ce-43d6-8e7a-54dba6bf9310</v>
|
||||
<v>GetTextProperties</v>
|
||||
<v>a50627a5-3ccb-4d03-8700-b65224df84ea</v>
|
||||
<v>GetTooltip</v>
|
||||
<v>7429165c-c6cf-4915-8a7f-ff11c9093974</v>
|
||||
<v>GetTranslator</v>
|
||||
<v>ef8d01a8-733e-437a-93c0-2c36673b9f8b</v>
|
||||
<v>GetUpdateRects</v>
|
||||
<v>99ef2b59-410e-426c-b5f6-b25b723a53d6</v>
|
||||
<v>HandleInput</v>
|
||||
<v>7292e979-5ba3-43a0-8b9d-ee7d65b2369c</v>
|
||||
<v>HasInputAccess</v>
|
||||
<v>02416ea1-25fd-4287-a1e2-7324e2788223</v>
|
||||
<v>HasInputAccessIntern</v>
|
||||
<v>83c8f364-5a63-5045-aa5b-bd1939505859</v>
|
||||
<v>HasVisibilityAccess</v>
|
||||
<v>4153bd0d-7d16-4bc5-9874-2f9cc4178c46</v>
|
||||
<v>HasVisibilityAccessIntern</v>
|
||||
<v>ef94cd40-a034-5d2b-99f7-0a47ac42dbb4</v>
|
||||
<v>Initialize</v>
|
||||
<v>a1c368a3-7701-4ddf-aaff-1b067985410d</v>
|
||||
<v>IsAntialiasingInactive</v>
|
||||
<v>d0338f0b-2a0b-482a-bd6e-6c25456e35f1</v>
|
||||
<v>Paint</v>
|
||||
<v>50d41e02-2ba9-4851-b32c-29c3ca9b7cc8</v>
|
||||
<v>SetClientData</v>
|
||||
<v>38a3612f-0c8d-409c-951a-38e729bedd96</v>
|
||||
<v>SetStaticState</v>
|
||||
<v>d2e39e6a-5ea0-4487-8a4d-5d54d8f3a251</v>
|
||||
<v>SetVisuFlagsInternal</v>
|
||||
<v>3f07848c-65c4-4c19-a8b5-1f88d423d4ab</v>
|
||||
<v>Update</v>
|
||||
<v>4c350d23-8601-4296-a47d-c2013c506f34</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{4002f308-75d3-4013-b6d3-1d6b4771e763}</v>
|
||||
</o>
|
||||
<v n="GeneratedGlobalVisuVarsGuid">{5ae71108-b063-418d-8713-a2057051037c}</v>
|
||||
<v n="GeneratedGlobalTheVisuVarlistGuid">{15d9d1c0-a672-4d38-b21d-0ca5f5eb8fea}</v>
|
||||
<v n="GeneratedGlobalVisuConstants">{2912970e-8f9b-461f-9592-6acf287432b0}</v>
|
||||
<d n="GeneratedAllElementsEntries" t="Hashtable" />
|
||||
<o n="VisuRegDesc" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>FB_Exit</v>
|
||||
<v>dbd1c6dc-9977-4f0b-93c5-1ddd06630732</v>
|
||||
<v>FB_Init</v>
|
||||
<v>83a1f8ca-4db5-4f88-a496-454b9c020578</v>
|
||||
<v>FB_Reinit</v>
|
||||
<v>0e98da46-d865-4f19-8bbf-b28e4802ec28</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{070d51c3-3330-48d4-87c1-a410a00cab25}</v>
|
||||
</o>
|
||||
<v n="VisuRegisterGvl">{f202068b-e7f9-46e9-a3c4-32f086ac71f6}</v>
|
||||
<n n="SettingsPou" />
|
||||
<n n="MemManPou" />
|
||||
<o n="InputsPou" t="GenericFbDescription">
|
||||
<d n="FbMethods" t="CaseInsensitiveHashtable" ckt="String" cvt="Guid">
|
||||
<v>abstrGetDefaultCursor</v>
|
||||
<v>f8d38332-0100-4ad9-9e87-504f7dc35925</v>
|
||||
<v>ExecuteDialogClosed</v>
|
||||
<v>392250de-4c56-4dcd-b433-fff623c4153b</v>
|
||||
<v>ExecuteKeyDown</v>
|
||||
<v>b6621f76-10e9-43bc-913d-bcd00c431671</v>
|
||||
<v>ExecuteKeyUp</v>
|
||||
<v>721926e8-eece-4703-87ce-975cfff65262</v>
|
||||
<v>ExecuteLooseCapture</v>
|
||||
<v>1054d0ac-5a40-4441-a3f1-56edf1e0878e</v>
|
||||
<v>ExecuteMouseClick</v>
|
||||
<v>b8ae3bbf-1f9c-41cc-a02f-9898213a321e</v>
|
||||
<v>ExecuteMouseDblClick</v>
|
||||
<v>c83254be-6b59-40d9-a723-18227c9f5eb5</v>
|
||||
<v>ExecuteMouseDown</v>
|
||||
<v>b604b0c9-b8ba-416c-abcd-4105ec1d3f56</v>
|
||||
<v>ExecuteMouseEnter</v>
|
||||
<v>ad33c307-b506-442d-9e28-96e6853d5db1</v>
|
||||
<v>ExecuteMouseLeave</v>
|
||||
<v>ba2f5224-875f-4b14-8004-614d336f9465</v>
|
||||
<v>ExecuteMouseMove</v>
|
||||
<v>72dd9e27-dbe5-4b2e-a266-e737c1ea406d</v>
|
||||
<v>ExecuteMouseUp</v>
|
||||
<v>0a47c368-6375-483c-a6fc-9db6c6718b28</v>
|
||||
<v>GetElementInfo</v>
|
||||
<v>80ae22b5-52f1-43ac-a4eb-a8bc4e43f789</v>
|
||||
<v>Initialize</v>
|
||||
<v>f3be1bfa-3ad4-447c-9626-79ad3360ab26</v>
|
||||
</d>
|
||||
<v n="FbName">"NotImportant"</v>
|
||||
<v n="FbGuid">{2f394799-529f-4b58-83bf-13b972ddac37}</v>
|
||||
</o>
|
||||
<v n="DialogDut">{9feb6bde-32e1-4a42-ae9d-18c95b0ea2d8}</v>
|
||||
</o>
|
||||
<v n="LastUsedIdForIdentifier">7</v>
|
||||
<o n="TextDocument" t="TextDocument">
|
||||
<a n="TextLines" cet="TextLine">
|
||||
<o>
|
||||
<v n="Id">2L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"VAR_IN_OUT"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">3L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">" _app: Apartm;"</v>
|
||||
</o>
|
||||
<o>
|
||||
<v n="Id">1L</v>
|
||||
<n n="Tag" />
|
||||
<v n="Text">"END_VAR"</v>
|
||||
</o>
|
||||
</a>
|
||||
</o>
|
||||
<v n="GvlCreated">false</v>
|
||||
<n n="LMEntry" />
|
||||
<v n="ProfileCompatibilityId">4140216668L</v>
|
||||
<v n="LMVerMinor">0</v>
|
||||
<v n="LMVerMajor">1</v>
|
||||
<o n="Hotkeys" t="HotkeyConfiguration">
|
||||
<v n="IdMin">481037385728L</v>
|
||||
<v n="IdMax">549755813887L</v>
|
||||
<v n="Id">481037385728L</v>
|
||||
<v n="IdMask">549754765312L</v>
|
||||
<v n="IdStep">1048576L</v>
|
||||
<l2 n="Inputs" />
|
||||
</o>
|
||||
<o n="VisuSizeManager" t="VisualObjectSizeManager">
|
||||
<d2 n="Size" ckt="Int32" cvt="VisualObjectSize">
|
||||
<v>0</v>
|
||||
<o>
|
||||
<v n="Width">222</v>
|
||||
<v n="Height">32</v>
|
||||
</o>
|
||||
<v>1</v>
|
||||
<o>
|
||||
<v n="Width">222</v>
|
||||
<v n="Height">32</v>
|
||||
</o>
|
||||
</d2>
|
||||
<v n="Version">1</v>
|
||||
</o>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="ArrayList">System.Collections.ArrayList</Type>
|
||||
<Type n="BackgroundSettings">{1038f12c-dd4b-4f96-87a3-a350fe8f3552}</Type>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="CaseInsensitiveHashtable">{7df88604-7ac5-4e36-91c4-55e4fdad3e68}</Type>
|
||||
<Type n="ComplexInput">{1de566f6-72a7-494c-9353-9a418172c96e}</Type>
|
||||
<Type n="Double">System.Double</Type>
|
||||
<Type n="FontDescription">{896a5e54-96c3-433b-96d2-4f1442fef591}</Type>
|
||||
<Type n="GeneratedLanguageModelEntriesData">{703465dc-4679-4ff2-bcc3-c57d0a204da3}</Type>
|
||||
<Type n="GenericFbDescription">{40d6dd8d-dfd0-493a-8e29-c9a35e1e6539}</Type>
|
||||
<Type n="GenericVisualElem">{f86c2928-8614-4cca-824b-e819ac4d58c4}</Type>
|
||||
<Type n="Guid">System.Guid</Type>
|
||||
<Type n="Hashtable">System.Collections.Hashtable</Type>
|
||||
<Type n="HotkeyConfiguration">{6b108d46-58af-4e41-a3f4-174d8f160cc4}</Type>
|
||||
<Type n="Int16">System.Int16</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="Int64">System.Int64</Type>
|
||||
<Type n="NamedStyleColor">{fa491db2-51ff-4bc1-9cd0-ce8c94ff6216}</Type>
|
||||
<Type n="String">System.String</Type>
|
||||
<Type n="TextDocument">{f3878285-8e4f-490b-bb1b-9acbb7eb04db}</Type>
|
||||
<Type n="TextLine">{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}</Type>
|
||||
<Type n="UInt16">System.UInt16</Type>
|
||||
<Type n="UInt32">System.UInt32</Type>
|
||||
<Type n="VisualElemCollection">{ef9d0b20-c96e-48db-b361-2ded4063150e}</Type>
|
||||
<Type n="VisualElemList">{f285c9a3-7019-446b-b98c-ccec3a0af8fa}</Type>
|
||||
<Type n="VisualElemMember">{c694e3a2-5c0b-4177-ab35-cb06bd5a6a02}</Type>
|
||||
<Type n="VisualElemMemberCollection">{a4b83bea-3742-489c-9fe8-d96d68dba7ab}</Type>
|
||||
<Type n="VisualElemMemberList">{17e26cd1-bb9b-47fe-a3d5-18fcd63b9c96}</Type>
|
||||
<Type n="VisualObject">{f18bec89-9fef-401d-9953-2f11739a6808}</Type>
|
||||
<Type n="VisualObjectSize">{6ad3e88f-aee2-4766-a7ea-a8790037ef51}</Type>
|
||||
<Type n="VisualObjectSizeManager">{5f612b0e-b404-455f-8177-27864e9f5332}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
<ObjectProperties>
|
||||
<XmlArchive>
|
||||
<Data>
|
||||
<o xml:space="preserve" t="VisualProperty">
|
||||
<v n="VisuUsageType">0</v>
|
||||
<v n="SizeX">222</v>
|
||||
<v n="SizeY">32</v>
|
||||
<v n="IsStartVisu">false</v>
|
||||
<v n="VisuSizeMode" t="VisualVisuSizeMode">Specified</v>
|
||||
<v n="Internal">false</v>
|
||||
<v n="DialogIsOpaque">false</v>
|
||||
<v n="DialogIsOpaqueIsSet">false</v>
|
||||
</o>
|
||||
</Data>
|
||||
<TypeList>
|
||||
<Type n="Boolean">System.Boolean</Type>
|
||||
<Type n="Int32">System.Int32</Type>
|
||||
<Type n="VisualProperty">{477d844b-9b2a-407e-90a4-d36fd6dde2fc}</Type>
|
||||
<Type n="VisualVisuSizeMode">{34718b76-91f6-43de-8c65-b77e0b1ee621}</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</ObjectProperties>
|
||||
</Visu>
|
||||
</TcPlcObject>
|