Some Homing sequences implmentation

Limit switch and direct homing are implemneted, the same with homing to a home snesor
Missing referencing to encoder index or external signal.
This commit is contained in:
Federico Rojas
2019-03-27 11:57:24 +01:00
parent 6dbf29a0c4
commit c1930b89fd
4 changed files with 30 additions and 63 deletions

View File

@@ -1330,7 +1330,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-002000000004}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..3] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-002000000004}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..3] OF BIT</Name>
<BitSize>4</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1339,7 +1339,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-002000000006}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..5] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-002000000006}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..5] OF BIT</Name>
<BitSize>6</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1357,7 +1357,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-002000000002}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..1] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-002000000002}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..1] OF BIT</Name>
<BitSize>2</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1366,7 +1366,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-002000000001}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..0] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-002000000001}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..0] OF BIT</Name>
<BitSize>1</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1375,7 +1375,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-002000000003}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..2] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-002000000003}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..2] OF BIT</Name>
<BitSize>3</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1384,7 +1384,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-002000000009}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..8] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-002000000009}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..8] OF BIT</Name>
<BitSize>9</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1393,7 +1393,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-00200000000C}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..11] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-00200000000C}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..11] OF BIT</Name>
<BitSize>12</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1402,7 +1402,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-00200000000E}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..13] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-00200000000E}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..13] OF BIT</Name>
<BitSize>14</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1411,7 +1411,7 @@ External Setpoint Generation:
</ArrayInfo>
</DataType>
<DataType>
<Name GUID="{18071995-0000-0000-0000-00200000000D}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..12] OF BIT</Name>
<Name GUID="{18071995-0000-0000-0000-00200000000D}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..12] OF BIT</Name>
<BitSize>13</BitSize>
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
<ArrayInfo>
@@ -1464,7 +1464,7 @@ External Setpoint Generation:
<Axis CreateSymbols="true" AxisType="1" Id="1">
<Name>Axis 1</Name>
<AxisPara>
<Dynamic AccelerationMaximum="1500" DecelerationMaximum="1500" Acceleration="984.001" Deceleration="984.001" Jerk="5043"/>
<Dynamic AccelerationMaximum="1500" DecelerationMaximum="1500" Acceleration="567.693" Deceleration="567.693" Jerk="5371.25"/>
<Velo RefSearch="10" RefSync="10" SlowManual="20" FastManual="100" Maximum="120"/>
<PositionAreaControl Range="0.05"/>
<TargetPosControl Range="0.1" Time="0.5"/>
@@ -1472,9 +1472,9 @@ External Setpoint Generation:
</AxisPara>
<Encoder Name="Enc" EncType="4">
<EncPara ScaleFactorNumerator="60" ScaleFactorDenominator="2000" Inverse="true" MaxCount="#x0000ffff">
<SoftEndMinControl Range="5"/>
<SoftEndMaxControl Range="175"/>
<Inc RefMode="4" RefSoftSyncMask="#x0000ffff"/>
<SoftEndMinControl Enable="true" Range="5"/>
<SoftEndMaxControl Enable="true" Range="175"/>
<Inc RefSoftSyncMask="#x0000ffff"/>
</EncPara>
<Vars VarGrpType="1">
<Name>Inputs</Name>
@@ -1488,6 +1488,9 @@ External Setpoint Generation:
<SubVar TypeFormatIndex="2">
<Name>nDataIn2</Name>
</SubVar>
<SubVar TypeFormatIndex="2">
<Name>nState1</Name>
</SubVar>
<SubVar>
<Name>nState4</Name>
<Comment>
@@ -2052,10 +2055,10 @@ bHomeSensor8 AT %I*: BOOL;
<ExcludePdo>#x1a00</ExcludePdo>
<ExcludePdo>#x1a01</ExcludePdo>
<ExcludePdo>#x1a02</ExcludePdo>
<Entry Name="Status__Latch C valid" Index="#x6010" Sub="#x01">
<Entry Name="Status__Latch C valid" Index="#x6010" Sub="#x01" Flags="#x00008020">
<Type>BIT</Type>
</Entry>
<Entry Name="Status__Latch extern valid" Index="#x6010" Sub="#x02">
<Entry Name="Status__Latch extern valid" Index="#x6010" Sub="#x02" Flags="#x00008020">
<Type>BIT</Type>
</Entry>
<Entry Name="Status__Set counter done" Index="#x6010" Sub="#x03">
@@ -2082,13 +2085,13 @@ bHomeSensor8 AT %I*: BOOL;
<Entry Name="Status__Status of input B" Index="#x6010" Sub="#x0a">
<Type>BIT</Type>
</Entry>
<Entry Name="Status__Status of input C" Index="#x6010" Sub="#x0b">
<Entry Name="Status__Status of input C" Index="#x6010" Sub="#x0b" Flags="#x00008020">
<Type>BIT</Type>
</Entry>
<Entry Name="Status__Status of input gate" Index="#x6010" Sub="#x0c">
<Type>BIT</Type>
</Entry>
<Entry Name="Status__Status of extern latch" Index="#x6010" Sub="#x0d">
<Entry Name="Status__Status of extern latch" Index="#x6010" Sub="#x0d" Flags="#x00008020">
<Type>BIT</Type>
</Entry>
<Entry Name="Status__Sync error" Index="#x6010" Sub="#x0e">
@@ -2232,10 +2235,10 @@ bHomeSensor8 AT %I*: BOOL;
<ExcludePdo>#x1603</ExcludePdo>
<ExcludePdo>#x1600</ExcludePdo>
<ExcludePdo>#x1601</ExcludePdo>
<Entry Name="Control__Enable latch C" Index="#x7010" Sub="#x01">
<Entry Name="Control__Enable latch C" Index="#x7010" Sub="#x01" Flags="#x00008020">
<Type>BIT</Type>
</Entry>
<Entry Name="Control__Enable latch extern on positive edge" Index="#x7010" Sub="#x02">
<Entry Name="Control__Enable latch extern on positive edge" Index="#x7010" Sub="#x02" Flags="#x00008020">
<Type>BIT</Type>
</Entry>
<Entry Name="Control__Set counter" Index="#x7010" Sub="#x03">

View File

@@ -71,7 +71,6 @@ VAR
(******Error Handling********)
fbErrorList: FB_ErrorList;
fbHome: MC_Home;
//fbEL3214: EL3214;
//fbEL1808: EL1808;
//fbEL2819: EL2819;
@@ -92,7 +91,7 @@ ERROR();]]></ST>
<Implementation>
<ST><![CDATA[
FOR i:=1 TO gvl.axisNum DO
aFBAxes[i](stAxisStruct:=gvl.axes[i]);
aFBAxes[i](En:= TRUE, stAxisStruct:=gvl.axes[i]);
END_FOR
gvl.axes[1].bLimitFwd:=bLimitFwd1;
@@ -142,45 +141,6 @@ fbEL1808(
//]]></ST>
</Implementation>
</Action>
<Action Name="test" Id="{15076cb2-147c-449c-9647-4174a90b8448}">
<Implementation>
<NWL>
<XmlArchive>
<Data>
<o xml:space="preserve" t="NWLImplementationObject">
<v n="NetworkListComment">""</v>
<v n="DefaultViewMode">"Fbd"</v>
<l2 n="NetworkList" cet="Network">
<o>
<v n="ILActive">false</v>
<v n="FBDValid">false</v>
<v n="ILValid">false</v>
<l2 n="ILLines" />
<v n="Comment">""</v>
<v n="Title">""</v>
<v n="Label">""</v>
<v n="OutCommented">false</v>
<l2 n="NetworkItems" />
<l2 n="Connectors" />
<v n="Id">1L</v>
</o>
</l2>
<v n="BranchCounter">1</v>
<v n="ValidIds">true</v>
</o>
</Data>
<TypeList>
<Type n="Boolean">System.Boolean</Type>
<Type n="Int32">System.Int32</Type>
<Type n="Int64">System.Int64</Type>
<Type n="Network">{d9a99d73-b633-47db-b876-a752acb25871}</Type>
<Type n="NWLImplementationObject">{25e509de-33d4-4447-93f8-c9e4ea381c8b}</Type>
<Type n="String">System.String</Type>
</TypeList>
</XmlArchive>
</NWL>
</Implementation>
</Action>
<LineIds Name="MAIN">
<LineId Id="2" Count="0" />
<LineId Id="81" Count="1" />
@@ -188,7 +148,8 @@ fbEL1808(
<LineIds Name="MAIN.AXES">
<LineId Id="3" Count="0" />
<LineId Id="1" Count="0" />
<LineId Id="4" Count="1" />
<LineId Id="4" Count="0" />
<LineId Id="10" Count="0" />
<LineId Id="7" Count="0" />
<LineId Id="9" Count="0" />
<LineId Id="8" Count="0" />

View File

@@ -22,7 +22,7 @@
<Compile Include="POUs\MAIN.TcPOU">
<SubType>Code</SubType>
</Compile>
<Compile Include="tc_mca_std_lib\DUTs\AxisStruct.TcDUT">
<Compile Include="tc_mca_std_lib\DUTs\ST_AxisStruct.TcDUT">
<SubType>Code</SubType>
</Compile>
<Compile Include="tc_mca_std_lib\DUTs\CommStates.TcDUT">
@@ -154,6 +154,9 @@
<Compile Include="tc_mca_std_lib\POUs\Motion\FB_DriveVirtual_V2.TcPOU">
<SubType>Code</SubType>
</Compile>
<Compile Include="tc_mca_std_lib\POUs\Motion\FB_HomingSeq.TcPOU">
<SubType>Code</SubType>
</Compile>
<Compile Include="tc_mca_std_lib\POUs\Motion\FB_NcAxis.TcPOU">
<SubType>Code</SubType>
</Compile>