Merge branch 'release/1.3.4'
This commit is contained in:
@@ -136,62 +136,9 @@
|
|||||||
</System>
|
</System>
|
||||||
<Plc>
|
<Plc>
|
||||||
<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">
|
<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="{63E07965-E818-C034-FD63-DBA12806D3FA}" TmcPath="BasicComponents\BasicComponents.tmc">
|
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{CC57F9F8-FD4D-8A3D-E8DE-220E6C379AE4}" TmcPath="BasicComponents\BasicComponents.tmc">
|
||||||
<Name>BasicComponents Instance</Name>
|
<Name>BasicComponents Instance</Name>
|
||||||
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
|
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
|
||||||
<Vars VarGrpType="2" AreaNo="1">
|
|
||||||
<Name>PlcTask Outputs</Name>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xOpenValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xCloseValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xOpenValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xCloseValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xOpenValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xCloseValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xOpenValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xCloseValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xOpenValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
<Var>
|
|
||||||
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xCloseValve</Name>
|
|
||||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
|
||||||
<Type>BOOL</Type>
|
|
||||||
</Var>
|
|
||||||
</Vars>
|
|
||||||
<Vars VarGrpType="1">
|
<Vars VarGrpType="1">
|
||||||
<Name>PlcTask Inputs</Name>
|
<Name>PlcTask Inputs</Name>
|
||||||
<Var>
|
<Var>
|
||||||
@@ -487,6 +434,59 @@
|
|||||||
<Type>BOOL</Type>
|
<Type>BOOL</Type>
|
||||||
</Var>
|
</Var>
|
||||||
</Vars>
|
</Vars>
|
||||||
|
<Vars VarGrpType="2" AreaNo="1">
|
||||||
|
<Name>PlcTask Outputs</Name>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xOpenValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimeoutTestOpen._fbValveTimeout.xCloseValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xOpenValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimeoutTestClose._fbValveTimeout.xCloseValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xOpenValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimoutTriggerOpen._fbValveTimeout.xCloseValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xOpenValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValve_TimoutTriggerClose._fbValveTimeout.xCloseValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xOpenValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
<Var>
|
||||||
|
<Name>PRG_MAIN._fbValveTestHMI._fbValveOC.xCloseValve</Name>
|
||||||
|
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||||
|
<Type>BOOL</Type>
|
||||||
|
</Var>
|
||||||
|
</Vars>
|
||||||
<Contexts>
|
<Contexts>
|
||||||
<Context>
|
<Context>
|
||||||
<Id>0</Id>
|
<Id>0</Id>
|
||||||
|
|||||||
Binary file not shown.
@@ -21,7 +21,7 @@
|
|||||||
<GlobalVersionStructureIncluded>false</GlobalVersionStructureIncluded>
|
<GlobalVersionStructureIncluded>false</GlobalVersionStructureIncluded>
|
||||||
<Company>Heisig GmbH</Company>
|
<Company>Heisig GmbH</Company>
|
||||||
<Title>BaseComponents</Title>
|
<Title>BaseComponents</Title>
|
||||||
<ProjectVersion>1.3.3</ProjectVersion>
|
<ProjectVersion>1.3.4</ProjectVersion>
|
||||||
<DefaultNamespace>BC</DefaultNamespace>
|
<DefaultNamespace>BC</DefaultNamespace>
|
||||||
<Author>M.Heisig</Author>
|
<Author>M.Heisig</Author>
|
||||||
<Description>Basic components fb's (Valves, AI, AO, Motors, etc.)</Description>
|
<Description>Basic components fb's (Valves, AI, AO, Motors, etc.)</Description>
|
||||||
|
|||||||
@@ -212,9 +212,6 @@ IF _fbHalt.Error THEN
|
|||||||
_xError := TRUE;
|
_xError := TRUE;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
// Can the axis perform a new move command
|
|
||||||
_xCanExecNewCmd := (NOT _xBusy) AND _fbPower.Status AND (NOT _xError);
|
|
||||||
|
|
||||||
// ====================
|
// ====================
|
||||||
// Handle state machine
|
// Handle state machine
|
||||||
// ====================
|
// ====================
|
||||||
@@ -224,6 +221,7 @@ CASE _eState OF
|
|||||||
IF xEnable THEN
|
IF xEnable THEN
|
||||||
_xEnable := TRUE;
|
_xEnable := TRUE;
|
||||||
_xBusy := TRUE;
|
_xBusy := TRUE;
|
||||||
|
_xDone := FALSE;
|
||||||
_eState := E_AXIS_PTP_STATE.WAIT_FOR_ENABLE;
|
_eState := E_AXIS_PTP_STATE.WAIT_FOR_ENABLE;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
@@ -248,18 +246,15 @@ CASE _eState OF
|
|||||||
|
|
||||||
|
|
||||||
E_AXIS_PTP_STATE.ENABLED:
|
E_AXIS_PTP_STATE.ENABLED:
|
||||||
_xDone := FALSE;
|
|
||||||
|
|
||||||
IF _xExecuteMoveAbs THEN
|
IF _xExecuteMoveAbs THEN
|
||||||
_xExecuteMoveAbs := FALSE;
|
_xExecuteMoveAbs := FALSE;
|
||||||
_xBusy := TRUE;
|
|
||||||
_xStartMoveAbsolute := TRUE;
|
_xStartMoveAbsolute := TRUE;
|
||||||
_eState := E_AXIS_PTP_STATE.MOVING_ABSOLUTE;
|
_eState := E_AXIS_PTP_STATE.MOVING_ABSOLUTE;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
IF _xExecuteMoveRel THEN
|
IF _xExecuteMoveRel THEN
|
||||||
_xExecuteMoveRel := FALSE;
|
_xExecuteMoveRel := FALSE;
|
||||||
_xBusy := TRUE;
|
|
||||||
_xStartMoveRelative := TRUE;
|
_xStartMoveRelative := TRUE;
|
||||||
_eState := E_AXIS_PTP_STATE.MOVING_RELATIVE;
|
_eState := E_AXIS_PTP_STATE.MOVING_RELATIVE;
|
||||||
END_IF
|
END_IF
|
||||||
@@ -267,27 +262,25 @@ CASE _eState OF
|
|||||||
IF _xExecuteHoming THEN
|
IF _xExecuteHoming THEN
|
||||||
_xExecuteHoming := FALSE;
|
_xExecuteHoming := FALSE;
|
||||||
_xStartHomeing := TRUE;
|
_xStartHomeing := TRUE;
|
||||||
_xBusy := TRUE;
|
|
||||||
_eState := E_AXIS_PTP_STATE.HOMING;
|
_eState := E_AXIS_PTP_STATE.HOMING;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
IF _xExecuteMoveVelocity THEN
|
IF _xExecuteMoveVelocity THEN
|
||||||
_xExecuteMoveVelocity := FALSE;
|
_xExecuteMoveVelocity := FALSE;
|
||||||
_xStartMoveVelocity := TRUE;
|
_xStartMoveVelocity := TRUE;
|
||||||
_xBusy := TRUE;
|
|
||||||
_eState := E_AXIS_PTP_STATE.MOVING_VELOCITY;
|
_eState := E_AXIS_PTP_STATE.MOVING_VELOCITY;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
IF _xExecuteMoveModulo THEN
|
IF _xExecuteMoveModulo THEN
|
||||||
_xExecuteMoveModulo := FALSE;
|
_xExecuteMoveModulo := FALSE;
|
||||||
_xStartMoveModulo := TRUE;
|
_xStartMoveModulo := TRUE;
|
||||||
_xBusy := TRUE;
|
|
||||||
_eState := E_AXIS_PTP_STATE.MOVING_MODULO;
|
_eState := E_AXIS_PTP_STATE.MOVING_MODULO;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
IF (NOT xEnable) AND (NOT _xError) THEN
|
IF (NOT xEnable) AND (NOT _xError) THEN
|
||||||
_xEnable := FALSE;
|
_xEnable := FALSE;
|
||||||
_xBusy := TRUE;
|
_xBusy := TRUE;
|
||||||
|
_xDone := FALSE;
|
||||||
_eState := E_AXIS_PTP_STATE.WAIT_FOR_DISABLE;
|
_eState := E_AXIS_PTP_STATE.WAIT_FOR_DISABLE;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
@@ -452,6 +445,8 @@ CASE _eState OF
|
|||||||
_xError := TRUE;
|
_xError := TRUE;
|
||||||
END_CASE
|
END_CASE
|
||||||
|
|
||||||
|
// Can the axis perform a new move command
|
||||||
|
_xCanExecNewCmd := (NOT _xBusy) AND _fbPower.Status AND (NOT _xError);
|
||||||
|
|
||||||
// Copy internal buffers to outputs
|
// Copy internal buffers to outputs
|
||||||
xEnabled := _fbPower.Status;
|
xEnabled := _fbPower.Status;
|
||||||
@@ -469,6 +464,10 @@ END_VAR]]></Declaration>
|
|||||||
<Implementation>
|
<Implementation>
|
||||||
<ST><![CDATA[IF _xBusy THEN
|
<ST><![CDATA[IF _xBusy THEN
|
||||||
_xExecuteHalt := TRUE;
|
_xExecuteHalt := TRUE;
|
||||||
|
_xDone := FALSE;
|
||||||
|
xDone := FALSE;
|
||||||
|
_xBusy := TRUE;
|
||||||
|
xBusy := TRUE;
|
||||||
END_IF]]></ST>
|
END_IF]]></ST>
|
||||||
</Implementation>
|
</Implementation>
|
||||||
</Method>
|
</Method>
|
||||||
@@ -480,10 +479,17 @@ VAR_INPUT
|
|||||||
END_VAR]]></Declaration>
|
END_VAR]]></Declaration>
|
||||||
<Implementation>
|
<Implementation>
|
||||||
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
||||||
_xBusy := TRUE;
|
_xCanExecNewCmd := FALSE;
|
||||||
|
|
||||||
_lrHomingPos := lrHomingPosition;
|
_lrHomingPos := lrHomingPosition;
|
||||||
_eHomingMode := eHomingMode;
|
_eHomingMode := eHomingMode;
|
||||||
_xExecuteHoming := TRUE;
|
_xExecuteHoming := TRUE;
|
||||||
|
|
||||||
|
_xDone := FALSE;
|
||||||
|
xDone := FALSE;
|
||||||
|
_xBusy := TRUE;
|
||||||
|
xBusy := TRUE;
|
||||||
|
|
||||||
M_Homing := TRUE;
|
M_Homing := TRUE;
|
||||||
ELSE
|
ELSE
|
||||||
M_Homing := FALSE;
|
M_Homing := FALSE;
|
||||||
@@ -497,9 +503,16 @@ VAR_INPUT
|
|||||||
END_VAR]]></Declaration>
|
END_VAR]]></Declaration>
|
||||||
<Implementation>
|
<Implementation>
|
||||||
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
||||||
_xBusy := TRUE;
|
_xCanExecNewCmd := FALSE;
|
||||||
|
|
||||||
_lrTargetPosition := lrTargetPos;
|
_lrTargetPosition := lrTargetPos;
|
||||||
_xExecuteMoveAbs := TRUE;
|
_xExecuteMoveAbs := TRUE;
|
||||||
|
|
||||||
|
_xDone := FALSE;
|
||||||
|
xDone := FALSE;
|
||||||
|
_xBusy := TRUE;
|
||||||
|
xBusy := TRUE;
|
||||||
|
|
||||||
M_MoveAbs := TRUE;
|
M_MoveAbs := TRUE;
|
||||||
ELSE
|
ELSE
|
||||||
M_MoveAbs := FALSE;
|
M_MoveAbs := FALSE;
|
||||||
@@ -515,10 +528,17 @@ VAR_INPUT
|
|||||||
END_VAR]]></Declaration>
|
END_VAR]]></Declaration>
|
||||||
<Implementation>
|
<Implementation>
|
||||||
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
||||||
_xBusy := TRUE;
|
_xCanExecNewCmd := FALSE;
|
||||||
|
|
||||||
_lrTargetPosition := lrTargetPos;
|
_lrTargetPosition := lrTargetPos;
|
||||||
_eMoveDirection := eMoveDirection;
|
_eMoveDirection := eMoveDirection;
|
||||||
_xExecuteMoveModulo := TRUE;
|
_xExecuteMoveModulo := TRUE;
|
||||||
|
|
||||||
|
_xDone := FALSE;
|
||||||
|
xDone := FALSE;
|
||||||
|
_xBusy := TRUE;
|
||||||
|
xBusy := TRUE;
|
||||||
|
|
||||||
M_MoveModulo := TRUE;
|
M_MoveModulo := TRUE;
|
||||||
ELSE
|
ELSE
|
||||||
M_MoveModulo := FALSE;
|
M_MoveModulo := FALSE;
|
||||||
@@ -532,9 +552,17 @@ VAR_INPUT
|
|||||||
END_VAR]]></Declaration>
|
END_VAR]]></Declaration>
|
||||||
<Implementation>
|
<Implementation>
|
||||||
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
||||||
|
_xCanExecNewCmd := FALSE;
|
||||||
|
|
||||||
_xBusy := TRUE;
|
_xBusy := TRUE;
|
||||||
_lrRelativeDistance := lrRelDist;
|
_lrRelativeDistance := lrRelDist;
|
||||||
_xExecuteMoveRel:= TRUE;
|
_xExecuteMoveRel:= TRUE;
|
||||||
|
|
||||||
|
_xDone := FALSE;
|
||||||
|
xDone := FALSE;
|
||||||
|
_xBusy := TRUE;
|
||||||
|
xBusy := TRUE;
|
||||||
|
|
||||||
M_MoveRel := TRUE;
|
M_MoveRel := TRUE;
|
||||||
ELSE
|
ELSE
|
||||||
M_MoveRel := FALSE;
|
M_MoveRel := FALSE;
|
||||||
@@ -549,9 +577,17 @@ END_VAR
|
|||||||
]]></Declaration>
|
]]></Declaration>
|
||||||
<Implementation>
|
<Implementation>
|
||||||
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
<ST><![CDATA[IF _xCanExecNewCmd THEN
|
||||||
|
_xCanExecNewCmd := FALSE;
|
||||||
|
|
||||||
_xBusy := TRUE;
|
_xBusy := TRUE;
|
||||||
_xExecuteMoveVelocity := TRUE;
|
_xExecuteMoveVelocity := TRUE;
|
||||||
_eMoveDirection := eDirection;
|
_eMoveDirection := eDirection;
|
||||||
|
|
||||||
|
_xDone := FALSE;
|
||||||
|
xDone := FALSE;
|
||||||
|
_xBusy := TRUE;
|
||||||
|
xBusy := TRUE;
|
||||||
|
|
||||||
M_MoveVelocity := TRUE;
|
M_MoveVelocity := TRUE;
|
||||||
ELSE
|
ELSE
|
||||||
M_MoveVelocity := FALSE;
|
M_MoveVelocity := FALSE;
|
||||||
|
|||||||
Reference in New Issue
Block a user