macc-n / ros_unitree

BSD 3-Clause "New" or "Revised" License
56 stars 20 forks source link

RobotModel Error during Check Description #4

Closed MeiYutingg closed 6 months ago

MeiYutingg commented 6 months ago

Hello ! After running roslaunch go1_description go1_rviz.launch I ran into this; it seems that the legs are not properly transformed: 1714725723186 Here's the output of terminal:

roslaunch go1_description go1_rviz.launch
WARNING: Package name "aliengoZ1_description" does not follow the naming conventions. It should start with a lower case letter and only contain lower case letters, digits, underscores, and dashes.
... logging to /home/qy/.ros/log/94a1d190-0927-11ef-bc4d-59786d2fab6a/roslaunch-qy-OMEN-by-HP-Gaming-Laptop-16-wf0xxx-13497.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

WARNING: Package name "aliengoZ1_description" does not follow the naming conventions. It should start with a lower case letter and only contain lower case letters, digits, underscores, and dashes.
xacro: in-order processing became default in ROS Melodic. You can drop the option.
started roslaunch server http://qy-OMEN-by-HP-Gaming-Laptop-16-wf0xxx:38597/

SUMMARY
========

PARAMETERS
 * /joint_state_publisher/use_gui: True
 * /robot_description: <?xml version="1....
 * /robot_state_publisher/publish_frequency: 1000.0
 * /rosdistro: noetic
 * /rosversion: 1.16.0

NODES
  /
    joint_state_publisher (joint_state_publisher/joint_state_publisher)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    rviz (rviz/rviz)

auto-starting new master
process[master]: started with pid [13567]
ROS_MASTER_URI=http://localhost:11311/

setting /run_id to 94a1d190-0927-11ef-bc4d-59786d2fab6a
WARNING: Package name "aliengoZ1_description" does not follow the naming conventions. It should start with a lower case letter and only contain lower case letters, digits, underscores, and dashes.
process[rosout-1]: started with pid [13607]
started core service [/rosout]
process[joint_state_publisher-2]: started with pid [13610]
process[robot_state_publisher-3]: started with pid [13611]
process[rviz-4]: started with pid [13612]
[ INFO] [1714725108.109512976]: rviz version 1.14.20
[ INFO] [1714725108.109564258]: compiled against Qt version 5.15.3
[ INFO] [1714725108.109568947]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1714725108.119526296]: Forcing OpenGl version 0.
[ INFO] [1714725108.224752073]: Stereo is NOT SUPPORTED
[ INFO] [1714725108.224836824]: OpenGL device: Mesa Intel(R) Graphics (RPL-S)
[ INFO] [1714725108.224850808]: OpenGl version: 4.6 (GLSL 4.6) limited to GLSL 1.4 on Mesa system.

I've tried apt-get install unicode and I've installed ros-neotic-joint-state-publisher-gui, but none of them worked. Could you please look into this problem? Thank you!

RetroVortex commented 6 months ago

Same thing is happening to me. Have you managed to find a solution?

RetroVortex commented 6 months ago

Same thing is happening to me. Have you managed to find a solution?

Okay, I somehow made it work. I've tried lots of things so I don't know which ones exactly are needed to make it run without problems. I would recommend installing a lot of dependencies of ROS Noetic, more than the ones listed on the readme, and try again. Also, if you have Anaconda/Miniconda installed, deactivate it and don't use any conda environment at all. Also I think you should make sure that the package is built and being executed using Python3 instead of 2.7.

These steps are basically everything I did, and it worked for me. Also I would delete and recreate the full ROS workspace after every major change, just in case.

MeiYutingg commented 6 months ago

Thank you @RetroVortex ! I've finally solved this following your suggestions. Specifically, I rebuilt Noetic from source. Since my system is Ubuntu22, I downloaded these extra packages with:

rosinstall_generator genmsg effort_controllers diagnostics position_controllers controller_interface gazebo_ros_pkgs joint_state_publisher_gui gazebo_ros_control joint_state_controller effort_controllers joint_trajectory_controller move_base slam_gmapping hector_slam map_server global_planner dwa_local_planner --rosdistro noetic --deps --tar > noetic-packages.rosinstall
vcs import --input noetic-packages.rosinstall ./src

I also replaced the urdf and rosconsole packages to be compatible for Ubuntu22:

cd workspace here

# Download and use fix branch
git clone https://github.com/dreuter/rosconsole.git
cd rosconsole
git checkout noetic-jammy
cd ..
mv rosconsole src

git clone https://github.com/dreuter/urdf.git
cd urdf
git checkout set-cxx-version
cd ..
mv urdf src

Then I made sure I was using system-provided python3 by buiding Neotic with ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3

After rebuilding Neotic ros_unitree worked fine. I think this problem may be primarily caused by incomplete packages of Neotic on Ubuntu22. Thanks again!