5 ADVANCED SYNCHRONOUS CONTROL INITIAL POSITION
5.5 Cam Position Calculation Function
159
5
5.5 Cam Position Calculation Function
The cam position is calculated by the program with this function. This function can be used to calculate the cam position for
the synchronous control initial position before starting synchronous control.
Example
The following shows the procedure for synchronous position alignment, in a synchronous system where cam axes 2 and 3 are
synchronized with the cam axis position value per cycle of axis 1.
1. Calculate the cam axis position value per cycle using this function based on the command position value and the cam
reference position of axis 1.
2. Calculate the cam axis command position value of axis 2 with this function based on the cam axis position value per
cycle that was calculated in 1).
3. Calculate the cam axis command position value of axis 3 with this function based on the cam axis position value per
cycle that was calculated in 1).
4. Execute positioning on axis 2 to the cam axis command position value which was calculated in 2), and also on axis 3 to
the cam axis command position value which was calculated in 3).
5. Start synchronous control on axis 1, 2 and 3 with the command position value restoration mode. Use the cam axis
position value per cycle that was calculated in 1) for the cam axis position value per cycle (Initial setting).
Cam position calculation control data
*1 With the exception of positioning control, main cycle processing is executed during the next available time. It changes by status of axis
start.
*2 Output axis position units (Page 123 Units for the output axis)
*3 Cam axis cycle units (Page 123 Units for the output axis)
Setting item Setting details Setting value Default
value
Buffer
memory
address
[Cd.612]
Cam position
calculation request
• Set the cam position calculation request.
• After completion of cam position calculation, "0" is
automatically stored by the Motion module.
Fetch cycle: Main cycle
*1
■Set in decimal.
1: Cam axis command position value
calculation request
2: Cam axis position value per cycle calculation
request
0 53780
[Cd.613]
Cam position
calculation: Cam No.
• Set the cam No. for the cam position calculation.
Fetch cycle: At request (Cam position calculation request)
■Set in decimal.
0 to 256
0 53781
[Cd.614]
Cam position
calculation: Stroke
amount
• Set the cam stroke amount for the cam position
calculation.
Fetch cycle: At request (Cam position calculation request)
■Set in decimal.
-2147483648 to 2147483647
[Output axis position units
*2
]
0 53782
53783
[Cd.615]
Cam position
calculation: Cam axis
length per cycle
• Set the cam axis length per cycle for the cam position
calculation.
Fetch cycle: At request (Cam position calculation request)
■Set in decimal.
1 to 2147483647
[Cam axis cycle units
*3
]
0 53784
53785
[Cd.616]
Cam position
calculation: Cam
reference position
• Set the cam reference position for the cam position
calculation.
Fetch cycle: At request (Cam position calculation request)
■Set in decimal.
-2147483648 to 2147483647
[Output axis position units
*2
]
0 53786
53787
[Cd.617]
Cam position
calculation: Cam axis
position value per
cycle
• Set the cam axis position value per cycle for the cam
position calculation.
Fetch cycle: At request (Cam position calculation request)
■Set in decimal.
0 to (Cam axis length per cycle)
[Cam axis cycle units
*3
]
0 53788
53789
[Cd.618]
Cam position
calculation: Cam axis
command position
value
• Set the cam axis command position value for the cam
position calculation. (Set when calculating the cam axis
position value per cycle.)
Fetch cycle: At request (Cam position calculation request)
■Set in decimal.
-2147483648 to 2147483647
[Output axis position units
*2
]
0 53790
53791