Open david-paltech opened 1 month ago
We are experiencing the same issue, this is our bus.yml
package: "canopen_master_driver"
revision_number: 0
sync_period: 100000
defaults:
dcf: "CANedsGoldV005_0_without_buffer_overflow.dcf"
driver: "ros2_canopen::Cia402Driver"
package: "canopen_402_driver"
revision_number: 0
period: 100000
polling: true
switching_state: 5
scale_pos_to_dev: 31831
scale_pos_from_dev: 0.00003141
scale_vel_to_dev: 31831
scale_vel_from_dev: 0.00003141
nodes:
front_left_steer_joint:
node_id: 2
serial_number: 22320XXX
front_right_steer_joint:
node_id: 3
serial_number: 22320XXX
and the error is:
[device_container_node-1] [INFO] [1722512047.682393729] [canopen_402_driver]: Init: Read State
[device_container_node-1] [INFO] [1722512047.682552726] [canopen_402_driver]: Init: Enable
[device_container_node-1] [INFO] [1722512047.692108828] [canopen_402_driver]: Fault reset
[device_container_node-1] [INFO] [1722512052.682891861] [canopen_402_driver]: Transition timed out.
[device_container_node-1] Could not enable motor
Did you figure out, what was wrong @david-paltech ?
Hi, Just for checking could you guys try to set Homing Method to 35 using sdos in bus.yml. we have not extensively tested other Homing methods due to lack of available hardware. Maybe that's the issue.
The error displayed by the device could also hint at a switching state issue. E.g. operating mode is switched in the wrong state.
Setting homing to 35 did not make any change....
We added the heartbeats and we get 05 so that we are in operational state, and then we do
ros2 service call /front_left_steer_joint/init std_srvs/srv/Trigger
requester: making request: std_srvs.srv.Trigger_Request()
response:
std_srvs.srv.Trigger_Response(success=False, message='')
This is the candump message:
can1 703 [1] 05
can1 702 [1] 05
can1 703 [1] 05
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 602 [8] 40 02 65 00 00 00 00 00
can1 582 [8] 43 02 65 00 ED 03 00 00
can1 702 [1] 05
can1 703 [1] 05
can1 702 [1] 05
can1 703 [1] 05
Why is this service returning success=False
Describe the bug I am trying to control the motor iSV2-CAN but I'm experiencing issues when calling the service /init. The configuration I'm using is almost the same as in the Trinamic Stepper Motor control example (launch and yml file display below). When I launched the file everything seems ok until I call the service /init. When I do, the library tries to read the dictionary 6502h (according to the CAN messages) many times for some reason, and while this happens, three things occur simultaneously.
Any idea what might be happening? I've checked and the motor supports the OD 6502h, and it is defined in the EDS file:
Logs Launch file
YAML file
Launch terminal
CAN messages
Setup: