Made library ready for first release
This commit is contained in:
@@ -116,12 +116,13 @@
|
||||
</Hides>
|
||||
</DataType>
|
||||
</DataTypes>
|
||||
<Project ProjectGUID="{775BE4FD-89CE-48D5-8E68-5C84AF95981A}" TargetNetId="5.167.199.178.1.1" Target64Bit="true" ShowHideConfigurations="#x6">
|
||||
<Project ProjectGUID="{775BE4FD-89CE-48D5-8E68-5C84AF95981A}" Target64Bit="true" ShowHideConfigurations="#x6">
|
||||
<System>
|
||||
<Settings MaxCpus="2"/>
|
||||
<Licenses>
|
||||
<Target>
|
||||
<LicenseDevice DongleHardwareId="2" DongleDevice="#x71010001" DongleLevel="40" DongleSystemId="{5097FB65-8A2A-EFB0-8273-38CF2A98119D}" DongleSerialNumber="000btjb7" DongleCacheLicense="false"/>
|
||||
<ManualSelect>{9FD32FC8-0CF9-4C5B-95FB-F35423496A77}</ManualSelect>
|
||||
<LicenseDevice DongleHardwareId="2" DongleDevice="#x71010002" DongleLevel="92" DongleSystemId="{F4D452BD-01EA-8CE8-F538-CCB335BD88CC}" DongleSerialNumber="000btjb7" DongleCacheLicense="false"/>
|
||||
</Target>
|
||||
</Licenses>
|
||||
<Tasks>
|
||||
@@ -129,11 +130,14 @@
|
||||
<Name>PlcTask</Name>
|
||||
</Task>
|
||||
</Tasks>
|
||||
<TypeSystem>
|
||||
<AdditionalTmcFile Name="BaseComponents" File="BaseComponents.tmc"/>
|
||||
</TypeSystem>
|
||||
</System>
|
||||
<Plc>
|
||||
<Project GUID="{4E62D9E7-436C-457D-8DC4-82D2FEF91C96}" Name="PLC" PrjFilePath="PLC\PLC.plcproj" TmcFilePath="PLC\PLC.tmc" ReloadTmc="true" AmsPort="851" FileArchiveSettings="#x000e" CopyTmcToTarget="true" CopyTpyToTarget="false" SymbolicMapping="true">
|
||||
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{2F71D701-8FCE-746A-6BDE-2ADEF4ACE650}" TmcPath="PLC\PLC.tmc">
|
||||
<Name>PLC Instance</Name>
|
||||
<Project GUID="{4E62D9E7-436C-457D-8DC4-82D2FEF91C96}" Name="BasicComponents" PrjFilePath="BasicComponents\BasicComponents.plcproj" TmcFilePath="BasicComponents\BasicComponents.tmc" ReloadTmc="true" AmsPort="851" FileArchiveSettings="#x000e" CopyTmcToTarget="true" CopyTpyToTarget="false" SymbolicMapping="true">
|
||||
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{BC065F54-D783-3F62-2B3C-EC8392B01342}" TmcPath="PLC\PLC.tmc">
|
||||
<Name>BasicComponents Instance</Name>
|
||||
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
|
||||
<Vars VarGrpType="2" AreaNo="1">
|
||||
<Name>PlcTask Outputs</Name>
|
||||
@@ -190,46 +194,6 @@
|
||||
</Vars>
|
||||
<Vars VarGrpType="1">
|
||||
<Name>PlcTask Inputs</Name>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbAnalogInputTest._fbAIErrorLowOn.iAnalogValue</Name>
|
||||
<Comment><![CDATA[ Analog input value]]></Comment>
|
||||
@@ -482,6 +446,46 @@
|
||||
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
</Vars>
|
||||
<Contexts>
|
||||
<Context>
|
||||
@@ -500,8 +504,5 @@
|
||||
</Instance>
|
||||
</Project>
|
||||
</Plc>
|
||||
<Io>
|
||||
<Device File="Gerät 1 (EtherCAT).xti" Id="1"/>
|
||||
</Io>
|
||||
</Project>
|
||||
</TcSmProject>
|
||||
|
||||
BIN
BasicComponents.library
Normal file
BIN
BasicComponents.library
Normal file
Binary file not shown.
@@ -8,7 +8,7 @@
|
||||
<DownloadApplicationInfo>true</DownloadApplicationInfo>
|
||||
<WriteProductVersion>false</WriteProductVersion>
|
||||
<GenerateTpy>false</GenerateTpy>
|
||||
<Name>PLC</Name>
|
||||
<Name>BasicComponents</Name>
|
||||
<ProgramVersion>3.1.4026.19</ProgramVersion>
|
||||
<Application>{7cc9c530-510c-48e6-a294-2e6b5e6fa820}</Application>
|
||||
<TypeSystem>{951d7a0c-817c-4013-8204-ecd29ee0162e}</TypeSystem>
|
||||
@@ -19,6 +19,31 @@
|
||||
<Released>false</Released>
|
||||
<POUsForPropertyAccessIncluded>false</POUsForPropertyAccessIncluded>
|
||||
<GlobalVersionStructureIncluded>false</GlobalVersionStructureIncluded>
|
||||
<Company>Heisig GmbH</Company>
|
||||
<Title>BaseComponents</Title>
|
||||
<ProjectVersion>1.0</ProjectVersion>
|
||||
<DefaultNamespace>BC</DefaultNamespace>
|
||||
<Author>M.Heisig</Author>
|
||||
<Description>Basic components fb's (Valves, AI, AO, Motors, etc.)</Description>
|
||||
<LibraryCategories>
|
||||
<LibraryCategory xmlns="">
|
||||
<Id>{3d49e892-ba18-4f02-888a-850f97d52db7}</Id>
|
||||
<Version>1.0.0.0</Version>
|
||||
<DefaultName>Heisig GmbH</DefaultName>
|
||||
</LibraryCategory>
|
||||
<LibraryCategory xmlns="">
|
||||
<Id>{eb1097e9-64c5-43a2-8e69-a580a5ac7866}</Id>
|
||||
<Version>1.0.0.0</Version>
|
||||
<ParentCategory>
|
||||
<Id>{3d49e892-ba18-4f02-888a-850f97d52db7}</Id>
|
||||
</ParentCategory>
|
||||
<DefaultName>Standard Libraries</DefaultName>
|
||||
</LibraryCategory>
|
||||
</LibraryCategories>
|
||||
<SelectedLibraryCategories>
|
||||
<Id xmlns="">{3d49e892-ba18-4f02-888a-850f97d52db7}</Id>
|
||||
<Id xmlns="">{eb1097e9-64c5-43a2-8e69-a580a5ac7866}</Id>
|
||||
</SelectedLibraryCategories>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="PlcTask.TcTTO">
|
||||
@@ -53,6 +78,7 @@
|
||||
</Compile>
|
||||
<Compile Include="POUs\Components\Motor\FB_MotorBecker.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
<ExcludeFromBuild>true</ExcludeFromBuild>
|
||||
</Compile>
|
||||
<Compile Include="POUs\Components\Motor\Types\ST_MOTOR_BECKER_CONFIG.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
@@ -187,7 +213,9 @@
|
||||
<Folder Include="POUs\Components\Analog\Types" />
|
||||
<Folder Include="POUs\Components\EventListener" />
|
||||
<Folder Include="POUs\Components\EventListener\Types" />
|
||||
<Folder Include="POUs\Components\Motor" />
|
||||
<Folder Include="POUs\Components\Motor">
|
||||
<ExcludeFromBuild>true</ExcludeFromBuild>
|
||||
</Folder>
|
||||
<Folder Include="POUs\Components\Motor\Types" />
|
||||
<Folder Include="POUs\Components\Utilities" />
|
||||
<Folder Include="POUs\Components\Valves" />
|
||||
@@ -252,6 +280,11 @@
|
||||
<SubType>Content</SubType>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ExternalTypes.tmc">
|
||||
<SubType>Content</SubType>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ProjectExtensions>
|
||||
<PlcProjectOptions>
|
||||
<XmlArchive>
|
||||
@@ -2640,7 +2673,7 @@
|
||||
<Type n="String">System.String</Type>
|
||||
<Type n="UInt32">System.UInt32</Type>
|
||||
</TypeList>
|
||||
</XmlArchive>
|
||||
</XmlArchive>
|
||||
</PlcProjectOptions>
|
||||
</ProjectExtensions>
|
||||
</Project>
|
||||
@@ -56,7 +56,7 @@ IF _xFirstCycle THEN
|
||||
// Get current task cycle time
|
||||
_fbGetCurTaskIdx();
|
||||
// Convert 100ns to 1ms
|
||||
_rCycleTime := UDINT_TO_REAL(TwinCAT_SystemInfoVarList._TASKInfo[_fbGetCurTaskIdx.index].CycleTime) * 10E-5;
|
||||
_rCycleTime := UDINT_TO_REAL(TwinCAT_SystemInfoVarList._TaskInfo[_fbGetCurTaskIdx.index].CycleTime) * 10E-5;
|
||||
END_IF
|
||||
|
||||
// Clamp setpoint to min max values
|
||||
@@ -144,11 +144,11 @@ _xOpenValve := ((_xManualOpen AND _xManualModeActive AND (NOT _xAutomaticModeAct
|
||||
// Check for interlocks
|
||||
// If not, use valve state from settings
|
||||
IF (NOT _xProcessINTLKOk) OR (NOT _xSafetyINTLKOk) THEN
|
||||
_xOpenValve := stValveConfig.xOpenWhenInterlocksActive;
|
||||
_xOpenValve := stValveConfig.xNormallyOpen;
|
||||
|
||||
// Also reset manual open command if safetyinterlocks are set
|
||||
IF (NOT _xSafetyINTLKOk) AND (_xManualOpen <> stValveConfig.xOpenWhenInterlocksActive) THEN
|
||||
_xManualOpen := stValveConfig.xOpenWhenInterlocksActive;
|
||||
IF (NOT _xSafetyINTLKOk) AND (_xManualOpen <> stValveConfig.xNormallyOpen) THEN
|
||||
_xManualOpen := stValveConfig.xNormallyOpen;
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
@@ -80,7 +80,7 @@ VAR
|
||||
|
||||
// Name of valve
|
||||
// Will be set in constructor and can be changed with the name property
|
||||
_sName : STRING;
|
||||
_sName : STRING(80);
|
||||
|
||||
// Analog input
|
||||
{attribute 'hide'}
|
||||
@@ -23,7 +23,7 @@ STRUCT
|
||||
|
||||
// Set to TRUE if valve should be open instead
|
||||
// of closed with activated interlocks
|
||||
xOpenWhenInterlocksActive : BOOL := FALSE;
|
||||
xNormallyOpen : BOOL := FALSE;
|
||||
|
||||
// Valve is used
|
||||
{attribute 'OPC.UA.DA' := '1'}
|
||||
@@ -351,7 +351,7 @@ IF _fbValve.IsOpen THEN
|
||||
AssertTrue(Condition := _fbValve.xCloseValve, Message := 'Close output not active with active Interlock');
|
||||
|
||||
// Test the same with open valve when interlock active
|
||||
_stValveConfig.xOpenWhenInterlocksActive := TRUE;
|
||||
_stValveConfig.xNormallyOpen := TRUE;
|
||||
_fbValve(stValveConfig := _stValveConfig, wProcessINTLK := _wInterlocks, wProcessINTLKUsed := _wInterlocksUsed, stHMIInterface := _stHMIValve);
|
||||
|
||||
// Valve should now be open
|
||||
@@ -409,7 +409,7 @@ IF _fbValve.IsOpen THEN
|
||||
AssertTrue(Condition := _fbValve.xCloseValve, Message := 'Close output not active with active Interlock');
|
||||
|
||||
// Test the same with open valve when interlock active
|
||||
_stValveConfig.xOpenWhenInterlocksActive := TRUE;
|
||||
_stValveConfig.xNormallyOpen := TRUE;
|
||||
_fbValve(stValveConfig := _stValveConfig, wProcessINTLK := _wInterlocks, wProcessINTLKUsed := _wInterlocksUsed, stHMIInterface := _stHMIValve);
|
||||
|
||||
// Valve should now be open
|
||||
16
LibraryCategories.libcat.xml
Normal file
16
LibraryCategories.libcat.xml
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<LibraryCategories xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="LibraryCategories.xsd">
|
||||
<LibraryCategory>
|
||||
<Id>3d49e892-ba18-4f02-888a-850f97d52db7</Id>
|
||||
<Version>1.0.0.0</Version>
|
||||
<DefaultName>Heisig GmbH</DefaultName>
|
||||
</LibraryCategory>
|
||||
<LibraryCategory>
|
||||
<Id>eb1097e9-64c5-43a2-8e69-a580a5ac7866</Id>
|
||||
<Version>1.0.0.0</Version>
|
||||
<ParentCategory>
|
||||
<Id>3d49e892-ba18-4f02-888a-850f97d52db7</Id>
|
||||
</ParentCategory>
|
||||
<DefaultName>Standard Libraries</DefaultName>
|
||||
</LibraryCategory>
|
||||
</LibraryCategories>
|
||||
Reference in New Issue
Block a user