...
POST No. 2408107
The operation mode of XM430-W350-R
2022-01-26 02:05:44 CageHu

Hello,


We meet some problems using the dynamixel  XM430-W350-R via matlab with protocol 2.0. 

The objective is to control the motor to apply a constant torque on a structure, the feedback to provide by a torque sensor. 

The operation mode is declared as the extended position control with a defined velocity profile to achieve stable motion. 

Though the code worked correctly during hours, we met a randomly occurring problem for the next compile. 


The acquisition of motion is perturbated using the same code, and a 500-degree angle will be shown as an angle around 140 degrees. 

At this state:

- If I factory reset the motor, nothing changed, and the operation mode changed to position control.

- If I command a rotation to a negative angle (via Matlab or DYNAMIXEL WIZZARD), then factory reset, the angle can be corrected.

- if I command in matlab environment, it will show '[RxPacketError] The data value is out of range! '. Thus the factory reset works.

- with dynamixel Wizzard, no error can be seen relying on the negative angle, but factory reset can correct the angle reading.


In my code that is based on the example code from E-manual:

1. reboot the motor 

2. define the operation mode "write1ByteTxRx(port_num, PROTOCOL_VERSION, DXL_ID, ADDR_OPERATING_MODE, typecast(EXT_POSITION_CONTROL_MODE, 'uint8'));" 

3. define the velocity profile  "write4ByteTxRx(port_num, PROTOCOL_VERSION, DXL_ID, ADDR_PRO_PROFILE_VELOCITY, typecast(int32(v_rot), 'uint32'));"

4. enable torque 

5. Launch the motion control using feedback 

6. disable the torque 

7. unload the lib file 


The control table is verified without any error. We can not indicate where come from such error.

 

2022-01-26 02:05:44
CageHu
2022-02-04 18:15:17 Will Son

Hi,


When the operating mode of DYNAMIXEL is configured as "Position", the present position of DYNAMIXEL only represents within 1 revolution (0 ~ 360 degree).

When torque is turned off, present position can exceed this range (including negative range), but as soon as the torque is on, this value will be recalculated within the positive 1 revolution range.


Thank you.

2022-02-04 18:15:17
willson