In rqt_calibrationmovements window, Clicking the Plan button gives an error in the commandline (see below), but it actually got a plan which is only visible in the rviz model (with a planning trajectory animation), but still the rqt_calibrationmovements windows shows No plan yet and the Execute button is in invalid state.
I actually finished the calibration by moving robot manually, but it is a bit inconvenient without the auto movements.
It seems to be caused by the different lengths of the two joins limit variables. The error message:
[INFO] [1713880385.108403]: Selected pose 2 for next movement
[INFO] [1713880385.934811]: Planning to target pose 2
[ERROR] [1713880386.015122]: Error processing request: operands could not be broadcast together with shapes (8,) (7,)
['Traceback (most recent call last):\n', ' File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 633, in _handle_request\n response = convert_return_to_response(self.handler(request), self.response_class)\n', ' File "/home/user/catkin_ws/src/easy_handeye/easy_handeye/src/easy_handeye/handeye_server_robot.py", line 63, in plan_to_selected_target_pose\n ret = self.local_mover.plan_to_current_target_pose()\n', ' File "/home/user/catkin_ws/src/easy_handeye/easy_handeye/src/easy_handeye/handeye_robot.py", line 79, in plan_to_current_target_pose\n return self._plan_to_pose(self.target_poses[i])\n', ' File "/home/user/catkin_ws/src/easy_handeye/easy_handeye/src/easy_handeye/handeye_robot.py", line 101, in _plan_to_pose\n if CalibrationMovements._is_crazy_plan(plan, self.fallback_joint_limits):\n', ' File "/home/user/catkin_ws/src/easy_handeye/easy_handeye/src/easy_handeye/handeye_robot.py", line 193, in _is_crazy_plan\n if (abs_rot_per_joint > max_rotation_per_joint).any():\n', 'ValueError: operands could not be broadcast together with shapes (8,) (7,) \n']
Traceback (most recent call last):
File "/home/user/catkin_ws/src/easy_handeye/rqt_easy_handeye/src/rqt_easy_handeye/rqt_calibrationmovements.py", line 145, in handle_plan
res = self.handeye_client.plan_to_selected_target_pose()
File "/home/user/catkin_ws/src/easy_handeye/easy_handeye/src/easy_handeye/handeye_client.py", line 112, in plan_to_selected_target_pose
return self.plan_to_selected_target_pose_proxy()
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 442, in __call__
return self.call(*args, **kwds)
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 523, in call
responses = transport.receive_once()
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_base.py", line 742, in receive_once
p.read_messages(b, msg_queue, sock)
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 360, in read_messages
self._read_ok_byte(b, sock)
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 343, in _read_ok_byte
raise ServiceException("service [%s] responded with an error: %s"%(self.resolved_name, str))
rospy.service.ServiceException: service [/ur10_k4a_handeyecalibration_eye_on_base/plan_to_selected_target_pose] responded with an error: b'error processing request: operands could not be broadcast together with shapes (8,) (7,) '
Environment
os: ubuntu20.04
ros: noetic
date: 24.4.23
device: Azure kinetic + UR10
In
rqt_calibrationmovements
window, Clicking thePlan
button gives an error in the commandline (see below), but it actually got a plan which is only visible in the rviz model (with a planning trajectory animation), but still therqt_calibrationmovements
windows showsNo plan yet
and theExecute
button is in invalid state.I actually finished the calibration by moving robot manually, but it is a bit inconvenient without the auto movements.
It seems to be caused by the different lengths of the two joins limit variables. The error message: