Changes for page 08 Motion Control

Last modified by Iris on 2026/04/03 10:39

From version 8.1
edited by Iris
on 2025/12/24 16:39
Change comment: There is no comment for this version
To version 12.1
edited by Iris
on 2026/04/03 10:39
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -15,8 +15,6 @@
15 15  
16 16  Device used (only a single device can be used, and device splicing and offset are not supported)
17 17  
18 -
19 -
20 20  |=(% rowspan="2" %)**Instruction**|=(% rowspan="2" %)**Parameter**|=(% colspan="24" %)**Devices**|=**Index modification**|=**Pulse expansion**
21 21  |**X**|**Y**|**M**|**S**|**SM**|**T(bit)**|**C(bit)**|**LC(bit)**|**HSC(bit)**|**D.b**|**KnX**|**KnY**|**KnM**|**KnS**|**T**|**C**|**D**|**R**|**SD**|**LC**|**HSC**|**K**|**H**|**E**|**[D]**|**XXP**
22 22  |(% rowspan="8" %)MC_POWER|Enable|●|●|●|●|●| | | | | | | | | | | | | | | | | | | | |
... ... @@ -36,20 +36,19 @@
36 36  
37 37  Variable Type Used
38 38  
37 +|**Instruction**|**Pin type**|**Variable type**|**Variable type**|**Can be empty or not**|**Range**|**Description**
38 +|(% rowspan="8" %)MC_POWER|(% rowspan="4" %)Input|Enable|BOOL|No|TRUE/FALSE|Enable
39 +|EnablePositive|BOOL|No|TRUE/FALSE|Allow movement in the positive direction
40 +|EnableNegative|BOOL|No|TRUE/FALSE|Allow movement in negative direction
41 +|Axis|WORD|No|[0,65535]|Axis number
42 +|(% rowspan="4" %)Output|Status|BOOL|Yes|TRUE/FALSE|Enable status
43 +|Valid|BOOL|Yes|TRUE/FALSE|Data valid or not
44 +|Error|BOOL|Yes|TRUE/FALSE|Whether there is an error or not
45 +|ErrorID|DWORD|Yes|-|Error code (See [8.11 Error code comparison table])
39 39  
40 -|=**Instruction**|=**Parameter**|=**Variable type**|=**Can be empty or not**|=**Range**|=**Description**
41 -|(% colspan="1" rowspan="8" %)MC_POWER|Enable|BOOL|No|TRUE/FALSE|Enable
42 -|EnablePositive|BOOL|No|TRUE/FALSE|Allow motion in the positive direction
43 -|EnableNegative|BOOL|No|TRUE/FALSE|Allow motion in negative direction
44 -|Axis|WORD|No|0 to 65535|Axis number
45 -|Status|BOOL|No|TRUE/FALSE|Enable status
46 -|Valid|BOOL|No|TRUE/FALSE|Data valid or not
47 -|Error|BOOL|No|TRUE/FALSE|Whether there is an error or not
48 -|ErrorID|DWORD|No|-|[Error code]
49 -
50 50  Function
51 51  
52 -* This function block must be enabled if an axis is to participate in motion.
49 +* This funcion block must be enabled if an axis is to participate in motion.
53 53  * The function is as follows:
54 54  
55 55  1. When the Enable input is TRUE, the power to the drive is enabled, not to the function block itself;
... ... @@ -1500,7 +1500,7 @@
1500 1500  Variable type used
1501 1501  
1502 1502  |=**Instruction**|=**Pin**|=**Parameter**|=**Variable type**|=**Can it be empty**|=**Range**|=**Description**
1503 -|(% colspan="1" rowspan="10" %)(((
1500 +|(% colspan="1" rowspan="11" %)(((
1504 1504  
1505 1505  
1506 1506  
... ... @@ -1543,7 +1543,7 @@
1543 1543  
1544 1544  Others: Reserved
1545 1545  )))
1546 -|(% colspan="1" rowspan="5" %)(((
1543 +|(% colspan="1" rowspan="6" %)(((
1547 1547  
1548 1548  
1549 1549  
... ... @@ -1551,6 +1551,7 @@
1551 1551  )))|Done|BOOL|Yes|TRUE/FALSE|Busy flag
1552 1552  |BusY|BOOL|Yes|TRUE/FALSE|Aborted flag
1553 1553  |InstructionAborted|BOOL|Yes|TRUE/FALSE|Abortion flag
1551 +|ReadyUpdate|BOOL|Yes|TRUE/FALSE|Cam table update comp flag
1554 1554  |Error|BOOL|Yes| |Whether there is an error or not
1555 1555  |ErrorID|DWORD|Yes| |Error Code (Please check [8.10 Error Code Cross-reference Table] )
1556 1556  
... ... @@ -1625,9 +1625,9 @@
1625 1625  MC_SAVECAMTABLE
1626 1626  )))|(% colspan="1" rowspan="2" %)Input|Execute|BOOL|No|TRUE/FALSE|Enable
1627 1627  |CamTableID|INT|No|-|Cam tableID
1628 -|(% colspan="1" rowspan="5" %)Output|Done|BOOL|Yes|TRUE/FALSE|Busy flag
1629 -|BusY|BOOL|Yes|TRUE/FALSE|Aborted flag
1630 -|InstructionAborted|BOOL|Yes|TRUE/FALSE|Abortion flag
1626 +|(% colspan="1" rowspan="5" %)Output|Done|BOOL|Yes|TRUE/FALSE|Completion flag
1627 +|BusY|BOOL|Yes|TRUE/FALSE|Busy flag
1628 +|InstructionAborted|BOOL|Yes|TRUE/FALSE|Abort flag
1631 1631  |Error|BOOL|Yes|-|Whether there is an error or not
1632 1632  |ErrorID|DWORD|Yes|-|Error Code (Please check [8.10 Error Code Cross-reference Table]
1633 1633  
... ... @@ -2212,6 +2212,10 @@
2212 2212  
2213 2213  
2214 2214  
2213 +
2214 +
2215 +
2216 +
2215 2215  == **Management functions of axis group motion control** ==
2216 2216  
2217 2217  ----
... ... @@ -3825,11 +3825,11 @@
3825 3825  
3826 3826  **Function**
3827 3827  
3828 -* The MC _ MoveVelocity function block is used to continue the movement of the previous function block and move according to the speed specified by the function block. The input values of acceleration, deceleration and jerk are used to monitor whether the corresponding values of the controlled axis are within the input values.
3830 +* The MC_ MOVEVELOCITY_CSV function block is used to continue the movement of the previous function block and move according to the speed specified by the function block. The input values of acceleration, deceleration and jerk are used to monitor whether the corresponding values of the controlled axis are within the input values.
3829 3829  * Since there is no input signal of position or distance, the function block will move until other function block sends a new command to stop movement of this function block;
3830 3830  * When the speed of the controlled axis reaches the input parameter ‘Velocity’ setpoint, the output parameter ‘InVelocity’ is set. Once the input ‘Execute’ signal detects a falling edge or other function block to abort this function block, the output parameter InVelocity is reset;
3831 -* The MC _ MoveVelocity function block shall be in a stopped motion state or a single-axis operation state when the controlled axis is operated. After this function block is triggered, the controlled axis transitions to the ‘Continuous Motion’ state. If the controlled axis is not in the above state, the function block is not executed, Error output is set;
3832 -* The MC _ MoveVelocity function block can be triggered repeatedly multiple times.
3833 +* The MC_ MOVEVELOCITY_CSV function block shall be in a stopped motion state or a single-axis operation state when the controlled axis is operated. After this function block is triggered, the controlled axis transitions to the ‘Continuous Motion’ state. If the controlled axis is not in the above state, the function block is not executed, Error output is set;
3834 +* The MC_ MOVEVELOCITY_CSV function block can be triggered repeatedly multiple times.
3833 3833  
3834 3834  **Error code**
3835 3835  
... ... @@ -3885,7 +3885,11 @@
3885 3885  
3886 3886  VELOCITY
3887 3887  )))|Execute|BOOL|No|TRUE/FALSE|Enable
3888 -|Velocity|LREAL|No|[0,999999999.999999]|Setting velocity
3890 +|Velocity|LREAL|No|(((
3891 +[-999999999.999999,99999
3892 +
3893 +9999.999999]
3894 +)))|Setting velocity
3889 3889  |Axis|(((
3890 3890  WORD
3891 3891  
... ... @@ -4890,16 +4890,41 @@
4890 4890  ----
4891 4891  
4892 4892  (% style="text-align:center" %)
4893 -[[image:1709016272018-406.png||height="669" width="631"]]
4899 +[[image:123.png||height="659" width="621"]]
4894 4894  
4901 +**✎Note**: Continuous line arrows indicate transitions via command. Dashed line arrows indicate automatic transitions, which occur when a command on an axis ends or a related system transition occurs (e.g., a related error).
4902 +
4903 +① The transition condition for any state to fault stop or deceleration stop is: a fault occurs on the axis.
4904 +
4905 +② The transition condition for any state to off is: MC_Power.Enable = FALSE and there is no fault on the axis.
4906 +
4907 +③ MC_Reset = FALSE and MC_Power.Status = FALSE.
4908 +
4909 +④ MC_Reset = TRUE, MC_Power.Status = TRUE, and MC_Power.Enable = TRUE.
4910 +
4911 +⑤ MC_Power.Enable = TRUE and MC_Power.Status = TRUE.
4912 +
4913 +⑥ MC_Stop.Done = TRUE and MC_Stop.Execute = FALSE.
4914 +
4895 4895  === **Axis group motion control status diagram** ===
4896 4896  
4897 4897  ----
4898 4898  
4899 4899  (% style="text-align:center" %)
4900 -[[image:1709016323709-202.png]]
4920 +[[image:234.png||height="405" width="669"]]
4901 4901  
4922 +**✎Note**: For all states in the diagram could be transitioned to GroupDisabled state by MC_GroupDisable or MC_UngroupAllAxes.
4902 4902  
4924 +① Applies to all non-administrative (i.e., motion control) function blocks.
4925 +
4926 +② In the GroupErrorStop or GroupStopping state, all function blocks can be invoked, although they are not executed (except that MC_GroupReset is executed in the GroupErrorStop state and any other errors are generated). In exceptional cases, GroupErrorStop or GroupStopping will transition to GroupStandby or GroupErrorStop accordingly.
4927 +
4928 +③ MC_GroupStop.Done = TRUE and MC_GroupStop.Execute = FALSE.
4929 +
4930 +④ The state transition is available if the last axis is removed from the axis group.
4931 +
4932 +⑤ The transition is available when the axis group is non-empty.
4933 +
4903 4903  === **Arc mode description** ===
4904 4904  
4905 4905  ----
123.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Iris
Size
... ... @@ -1,0 +1,1 @@
1 +292.1 KB
Content
1770693592357-540.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Iris
Size
... ... @@ -1,0 +1,1 @@
1 +133.1 KB
Content
234.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Iris
Size
... ... @@ -1,0 +1,1 @@
1 +223.0 KB
Content