Units
scaling can be handled either by the Technosoft`s drive/motor or by the Master. The
scaling at the drive`s level is done using Factor Group which sets up a
relationship between device internal units and physical units. The actual
factors used for scaling are the position factor (object 6093h), the velocity
encoder factor (object 6094h), the acceleration factor (object 6097h) and the
time encoder factor (object 2071h).
Factor
Group can be enabled from EasyMotion Studio, from the “Factor Group
Setting” dialog in Drive Setup.
The “Factor group settings”
dialogue describes the scaling factors for position, speed, acceleration and
jerk units. The user has the option to either select one of the standard units
defined in the CANopen standard DSP-402 or define its own unit.
Classification of drive`s
Internal Units:
1.
The IU for time is one slow loop sampling (by-default it is set to 1ms)
2.
The IU for position are encoder counts,
3.
The IU for velocity are encoder counts/slow loop sampling,
4.
The IU for acceleration are encoder counts/slow loop sampling^2,
5.
The IU for jerk are encoder counts/slow loop sampling^3
The slow loop sampling can be modified by changing the Slow loop sampling frequency devider parameter which can be found in the Advanced menu from the Drive Setup window.
Remark: The iPOS drives works with Fixed 32-bit numbers (not floating point), some calculation round off errors might occur when using objects 6093h, 6094h, 6097h and 2071h. If the master supports handling the scaling calculations on its side, it is recommended to use them instead of using the “Factor” scaling objects.
Example of units scaling at the Master`s level
This
example provides step by step, how to start a position Profile from a CANopen or
EtherCAT master while having a Rotary to Linear transmission.
For this example,
the transmission ratio will be 1mm = 2048IU and the
preferred units: Position in mm, Speed in mm/s,
Acceleration in mm/s².
Steps
to configure the drive and set the motion objects:
1.
Start EasyMotion Studio and open the project
2.
Open Factor Group dialogue from Drive Setup and set all scaling
factors to IU
3.
Download the configuration to the application with Application
| Setup | Download to Drive/Motor menu command
4.
Turn off/on the power supply of the drive/motor to activate the
configuration downloaded at step 3. The scaling factor objects should have the
value 1 (6093.1 = 1, 6093.2 = 1, 6094.1 = 1, 6094.2 = 1,
6097.1 = 1, 6097.2 = 1, 2071.1 = 1 and 2071.2 = 1).
5.
Send the necessary commands to move the drive`s state into
Operation Enabled:
6040h
(ControlWord): 0x0006 -->
0x0007--> 0x000F
6.
Send the command to select Position Profile from Modes of
Operation: 6060h = 0x01;
7.
Send the commands to set target position object (607Ah) in
IU. The Master can scale the target position using the relation 1mm = 2048IU.
For example, a movement of 5mm will be executed when the PLC sets 607Ah =
2048IU x 5mm = 10240IU
8.
Send the command to set the profile velocity object (6081h)
in IU. The scaling factor for the velocity is 1mm/s = 134217IU. Assuming
the motor should move with 30mm/s then the Master must set 6081h = 134217IU x
30mm/s = 4026510IU
Remark:
1mm/s = 134217IU results from the following conversions: 1mm/s = 2048
counts/1000ms = 2.048 counts/ms. Now because both the parameters for speed and
accelerations are fixed (16.16), the resulting value needs to be shifted to the
right by 16 bits, meaning 2.048x65536 = 134217IU;
9.
Send the command to set the profile acceleration (6083h) in
IU. The scaling factor for the acceleration is 1mm/s^2 = 133IU. For
an acceleration of 500mm/s^2 the PLC must set the 6083h = 133 x 500 = 66500IU
10.
Send the CANopen command to start the motion 6040h
= 0x5F (relative position profile)
At
this point the motor will execute the motion profile set above.