Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minor bugs #2

Open
Hotsburp opened this issue Sep 10, 2024 · 3 comments
Open

Minor bugs #2

Hotsburp opened this issue Sep 10, 2024 · 3 comments

Comments

@Hotsburp
Copy link

Hotsburp commented Sep 10, 2024

Hi @danisotelo, excellent work and thanks for this repo!

Just a few minor bugs with the path of the realsense meshes when running the quick start scripts and building qm_planner and qm_vision.

For realsense issue (10 Sep 2024):
The error "resource not found: realsense2_description" is shown due to wrong path used.

Currently, it is "mesh filename="file://$(find realsense2_description)/meshes/d435.dae"" but changing it to "mesh filename="file://$(find qm_description)/meshes/camera/d435.dae"" under the script "{path_to_your_ws}/src/qm_door/qm_description/urdf/quadruped_manipulator/camera2.xacro" should solve the issue for anyone facing this problem.

For qm_planner and qm_vision building (10 Sep 2024):
The "constexpr double THRESHOLD = 0.1;" line in "{path_to_your_ws}/src/qm_door/qm_controllers/include/qm_controllers/StartingPosition.h" is commented out which may cause building error for qm_planner and qm_vision

For gripperMover loading in rviz (8 Oct 2024):
There seems to be an issue with the loading of the gripperMover component in rviz when running qm_gazebo/launch/cs/empty_world.launch. The error indicates that there is no transformation between gripperMover and world frames. Even in
the rqt_tf_tree, gripperMover is not reflect.

Screenshot from 2024-10-08 13-55-53
Screenshot from 2024-10-08 13-41-35

However, the qm_description/quadruped_manipulator/robot.urdf and robot.xacro have indicated that there is a link between gripperMover and gripperStator, thus linking between the gripperMover and world frame.

Instructions for running qm_planner and qm_vision scripts (5 Nov 2024):
Is there a set of instructions to run the qm_vision and qm_controller scripts for door opening (ie door pushing and pulling)? I tried to launch push_door_world.launch, followed by open_door_sim.launch and handle_sim.launch.

Also, when I tried starting controllers/qm_controller after loading in the controller manager, the controllers and gazebo crash with the following error below. I am not sure if i did something wrong here, any help will be appreciated!

From the roslaunch qm_gazebo push_door_world.launch terminal:

cppad-20190200.5 error from a known source:
Invalid independent array size
Error detected by false result for
    x.size() == _n
at line 303 in the file 
    /home/docker_dev/qm_door/src/ocs2/ocs2_thirdparty/include/cppad/cg/model/functor_generic_model.hpp
cppad-20190200.5 error from a known source:
Invalid independent array size
Error detected by false result forcppad-20190200.5 error from a known source:
Invalid independent array size
Error detected by false result for
    x.size() == _n

    x.size() == _n
at line 303 in the file at line 303 in the file 
    /home/docker_dev/qm_door/src/ocs2/ocs2_thirdparty/include/cppad/cg/model/functor_generic_model.hpp

    /home/docker_dev/qm_door/src/ocs2/ocs2_thirdparty/include/cppad/cg/model/functor_generic_model.hpp
free(): corrupted unsorted chunks
Segmentation fault (core dumped)

From the rosrun rqt_controller_manager rqt_controller_manager terminal:

Traceback (most recent call last):
  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 744, in receive_once
    self.stat_bytes += recv_buff(sock, b, p.buff_size)
  File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_base.py", line 111, in recv_buff
    raise TransportTerminated("unable to receive data from sender, check sender's logs for details")
rospy.exceptions.TransportTerminated: unable to receive data from sender, check sender's logs for details

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/ros/noetic/lib/python3/dist-packages/rqt_controller_manager/controller_manager.py", line 282, in _on_ctrl_menu
    self._start_controller(ctrl.name)
  File "/opt/ros/noetic/lib/python3/dist-packages/rqt_controller_manager/controller_manager.py", line 341, in _start_controller
    self._switch_srv.call(req)
  File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 533, in call
    raise ServiceException("transport error completing service call: %s"%(str(e)))
rospy.service.ServiceException: transport error completing service call: unable to receive data from sender, check sender's logs for details

P.S: The list will be appended if more bugs/clarifications are found.

@Hotsburp Hotsburp changed the title Resource not found: realsense2_description - when running quick start scripts Minor bugs Sep 10, 2024
@danisotelo
Copy link
Owner

Hi @Hotsburp! I just corrected these bugs you mentioned, thank you very much for reporting them 👍

@Hotsburp Hotsburp reopened this Oct 8, 2024
@danisotelo
Copy link
Owner

Hi @Hotsburp! The problem you reported is related to the fact I did not have time to implement the Gripper Controller together with the NMPC controller, and since no controller is used for the gripper the TF is not published and thus, the gripper is not represented in RViz.

If this problem disturbs you, what I did was to simply set the joint as fixed in the URDF file. If you want to use the Gripper you will find this issue does not occur in case you select to use the separate controllers setup (for which you have a NMPC controller for the quadruped and individual PD controllers for each of the arm joints, including the gripper).

If you want to have the whole-body NMPC controller including the gripper you should modify the NMPC controller files. When I tried to do it I got errors because of trying to access Gazebo information while the NMPC controller was already doing that. You will be able to solve it as explained in qiayuanl/legged_control#71, I plan to do it in future work.

@Hotsburp
Copy link
Author

Hotsburp commented Oct 8, 2024

Hi @danisotelo!

I see, thanks for the insights and alternative! Definitely looking forward to your future developments.

@Hotsburp Hotsburp closed this as completed Oct 8, 2024
@Hotsburp Hotsburp reopened this Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants