GithubHelp home page GithubHelp logo

chvmp / champ Goto Github PK

View Code? Open in Web Editor NEW
1.4K 59.0 328.0 23.14 MB

MIT Cheetah I Implementation

License: BSD 3-Clause "New" or "Revised" License

CMake 7.62% C++ 68.38% Python 20.56% C 3.12% Shell 0.32%
ros robotics quadruped-robot-gaits legged-robots legged-robotics gazebo quadruped gazebo-simulator gazebo-ros quadruped-simulation

champ's People

Contributors

eborghi10 avatar grassjelly avatar h33p avatar kanishkanarch avatar peci1 avatar sonnypoint avatar sskorol avatar tarasborov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

champ's Issues

error in slam.launch

I'm having an error while running "roslaunch champ_config slam.launch rviz:=true"
Screenshot from 2021-04-29 10-54-24

Screenshot from 2021-04-29 11-12-55

Also I'm not able to launch Gazebo. It's not moving beyond preparing your world
Screenshot from 2021-04-29 11-10-11

catkin_make error

Hi, this the error I encountered during catkin_make.

c++: fatal error: no input files
compilation terminated.
/bin/sh: 1: -std=c++11: not found
champ/champ_gazebo/CMakeFiles/contact_sensor.dir/build.make:62: recipe for target 'champ/champ_gazebo/CMakeFiles/contact_sensor.dir/src/contact_sensor.cpp.o' failed
make[2]: *** [champ/champ_gazebo/CMakeFiles/contact_sensor.dir/src/contact_sensor.cpp.o] Error 127
CMakeFiles/Makefile2:1780: recipe for target 'champ/champ_gazebo/CMakeFiles/contact_sensor.dir/all' failed
make[1]: *** [champ/champ_gazebo/CMakeFiles/contact_sensor.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

Spot in Ignition Gazebo

I got Spot basically walking in Ignition Gazebo for SubT challenge (I had to reimplement gazebo_ros_control for Ignition Gazebo on the way, but now I'm looking for a better solution as Ignition Gazebo cooperation with ROS is not as easy as with Gazebo Classic).

I've got a few questions regarding CHAMP performance.

I had to change the PID parameters since SubT runs with a time-step of 4 ms instead of 1 ms. I just divided P, I and D by 4 and it worked. I then tuned the P constant to ~200 (original is 600, so after the division, it was 150). I also moved com_x_translation 5 more cm to the back, otherwise the robot walked much better backwards than forward.

However, it seems to me the motion is still a bit sloppy. Could you please comment on the performance? Is that what I should expect, or should I tune some more parameters to get it even better? Especially going backwards seems to suffer from a lot of slippage. Also, trying to go faster than approx. 0.7 m/s quickly leads to flipovers (mostly by losing side-to-side balance; is that related to #43?). But the spot model in CHVMP specifies max speed 1.5. Did you actually get it reliably working with this speed?

spot2.mp4.mp4

I tried playing with mu1, mu2 and kp of the lower leg collisions, but it did not seem to have much effect.

I've also noticed you set <maxVel> in the URDF <gazebo> tag to 0. Why is that? Shouldn't the contact correcting velocity be left there? Or does 0 mean that any velocity is allowed?

And which parameter affects the height of the jump you can see in the end of the video? (that's what happens if I press down arrow on D-pad and release it).

Minimal hardware requirement for running the simulation

Hi, when I run the gazebo simulation, the robot keeps slipping a lot and there exists a large odom error from the state_estimator node. Probably it's the same issue as issue #14, because the real time factor is less than 0.4. Could you tell your computer configuration details? Thank you!

OneLeg

Hello! Can I make one leg hopper with ur champ-setup assistant, or it will be work only with quadraped robots?

implement multi-minicheetah

Hi, I implemented multiple minicheetah the same way as I did for champ. I added some namespaces and tf_prefix. However, the implementation works for champ but not for cheetah. Could you check it? Thx

Problem in ROS-Noetic

Hello,
I'm running champ in Noetic, while running I'm encountering few errors and also robot model is not completely visible. (I'm running ROS Noetic on WSL2 Windows.)
This is the error file
error.txt

Screenshot_2021-04-12_21-34-12

Adjusting robot height

Hi, if I need to adjust the robots' height in teleop.py, what parameters do I need to change? It seems changing nominal_height doesn't affect the actual robot height.

RTF very slow running on Jetson Nano

Hello im running champ on a Jetson Nano the problem comes when running the gazebo simulation, because the maximum RTF achieved is 0.15 or 0.16. I tried updating real_time_update to 0 but the RTF stills the same, also i tried changing the step but then the joints go crazy. When running a turtlebot3 simulation on gazebo the RTF is about ~1. Im using the jetson through vnc viewer so i was wondering if that was the problem, so i tried the jetson through hdmi but it still happening the same, the fps are about 65 so i dont think that the problem comes from the hardware, any ideas? As you can see i also tried deleting all the props on the scene but nothing happens.

image

What's it using for localization?

@grassjelly @tarasborov @peci1 @eborghi10 @SonnyPoint Doesn't amcl node works on particle filter i-e monte carlo localization?
If yes, does your package, champ, also work on that basis? The thing is that I don't see the particle filtration happening in the map. Like I don't see a visual of it where it shows particles spread throughout the map and then narrowing it down to the robot.

(Sorry if this is not place to ask the question on github. I am a noob and I don't know it yet. Please let me know where can I ask questions like these in the future, if it's not the right place)

Autonomous navigation and obstacle avoidance

I spawned the CHAMP in willowgarage.world and wanted to perform SLAM. I used the following commands:

$ roslaunch champ_config gazebo.launch gazebo_world:=/usr/share/gazebo-9/worlds/willowgarage.world
$ roslaunch champ_config slam.launch rviz:=true

I started giving goal locations to the champ(initially very close goals) to start developing the map in RViz. It started to move towards the first goal and then when I tried to give another location, the robot got stuck in the door.

Below is the screen capture:
Here you can see CHAMP stuck in the door when I provided another goal.
Champ Issue

Here you can see I am using the existing map and simulation and it changes it's path upon placing new object which somehow shows obstacle avoidance but then it planned such a path that had another obstacle and the CHAMP hit the can and then reached upon the wrong location.

champ_issue2

I have also tried SPOT and other robots for this but they are also not performing well.

Following are my questions:

  1. Is there some way I can avoid these obstacles and perform smooth mapping?
  2. I even tried to use the outdoor.world simulation and the default map which has been already created and same issues are there that the robot is usually not avoiding the obstacles and also RViz does not show the robot in correct position and the robot loses the track of it's location. Also the map objects changes and it becomes a complete mess inside the map when the robot moves towards a different location
  3. The robot usually does not completes it's goal target or moves in different direction or behaves weirdly when any goal location has been assigned.

Please help me!

Thank you

catkin_make error

Hi, this the error I encountered during catkin_make.

CMake Error in champ/champ_gazebo/CMakeLists.txt:
The compiler feature "cxx_attribute_deprecated" is not known to CXX
compiler

"GNU"

version 4.8.5.

The ubuntu version is 18.04.5 LTS. ROS is melodic.

bad performance in SLAM

I used original parameters of gmapping in SLAM, the mini-cheetah got a bad performance, as following.

2021-03-19.16-28-22.mp4

And ,this is my world.
2021-03-19 16-39-49屏幕截图

Error in REST request - while launching roslaunch champ_config gazebo.launch

Receiving Error in REST request while launching roslaunch champ_config gazebo.launch

[ INFO] [1589275156.794772867]: Successfully parsed urdf file
[robot_state_publisher-1] process has finished cleanly
log file: /home/priya/.ros/log/66d6d59a-9431-11ea-9c1c-e8b1fc7a2da3/robot_state_publisher-1*.log
[ekf_localization-5] process has finished cleanly
log file: /home/priya/.ros/log/66d6d59a-9431-11ea-9c1c-e8b1fc7a2da3/ekf_localization-5*.log
[INFO] [1589275157.560896, 0.000000]: Controller Spawner: Waiting for service controller_manager/load_controller
[ INFO] [1589275157.951038671]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1589275157.957254444]: waitForService: Service [/gazebo_gui/set_physics_properties] has not been advertised, waiting...
[ INFO] [1589275157.966200767]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1589275157.969581285]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1589275159.240883554]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1589275159.288565936]: Physics dynamic reconfigure ready.
[Err] [REST.cc:205] Error in REST request

libcurl: (51) SSL: no alternative certificate subject name matches target host name 'api.ignitionfuel.org'
[ INFO] [1589275162.584550389, 0.001000000]: Laser Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1589275162.584704117, 0.001000000]: Starting Laser Plugin (ns = /)
[ INFO] [1589275162.652931203, 0.001000000]: Laser Plugin (ns = /) <tf_prefix_>, set to ""
[ INFO] [1589275162.784928881, 0.001000000]: Loading gazebo_ros_control plugin
[ INFO] [1589275162.785164228, 0.001000000]: Starting gazebo_ros_control plugin in namespace: /
[ INFO] [1589275162.786818267, 0.001000000]: gazebo_ros_control plugin is waiting for model URDF in parameter [robot_description] on the ROS param server.

[rospack] Error: package 'champ_arm_description' not found

When run the demo of the chicken_head
here shows some errors:

[ERROR] [1596271561.413624789]: Could not load resource [package://champ_arm_description/meshes/base.stl]: Unable to open file "package://champ_arm_description/meshes/base.stl".
[ WARN] [1596271561.414504831]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.416309663]: Could not load model 'package://champ_arm_description/meshes/base.stl' for link 'base': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.416409552]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.416494989]: Could not load model 'package://champ_arm_description/meshes/base.stl' for link 'base': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.416582220]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.416653891]: Could not load model 'package://champ_arm_description/meshes/base.stl' for link 'base': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.416743030]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.416816528]: Could not load model 'package://champ_arm_description/meshes/base.stl' for link 'base': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/base.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[rospack] Error: package 'champ_arm_description' not found
[librospack]: error while executing command
[ERROR] [1596271561.440342792]: Could not load resource [package://champ_arm_description/meshes/lower_arm.stl]: Unable to open file "package://champ_arm_description/meshes/lower_arm.stl".
[ WARN] [1596271561.440626220]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.440760767]: Could not load model 'package://champ_arm_description/meshes/lower_arm.stl' for link 'lower_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.440883986]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.440974053]: Could not load model 'package://champ_arm_description/meshes/lower_arm.stl' for link 'lower_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.441084635]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.441180609]: Could not load model 'package://champ_arm_description/meshes/lower_arm.stl' for link 'lower_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.441287857]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.441363586]: Could not load model 'package://champ_arm_description/meshes/lower_arm.stl' for link 'lower_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/lower_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[rospack] Error: package 'champ_arm_description' not found
[librospack]: error while executing command
[ERROR] [1596271561.455210869]: Could not load resource [package://champ_arm_description/meshes/upper_arm.stl]: Unable to open file "package://champ_arm_description/meshes/upper_arm.stl".
[ WARN] [1596271561.455403346]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.455519112]: Could not load model 'package://champ_arm_description/meshes/upper_arm.stl' for link 'upper_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.455634574]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.455724985]: Could not load model 'package://champ_arm_description/meshes/upper_arm.stl' for link 'upper_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.455828326]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.455913815]: Could not load model 'package://champ_arm_description/meshes/upper_arm.stl' for link 'upper_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ WARN] [1596271561.456007402]: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1596271561.456095937]: Could not load model 'package://champ_arm_description/meshes/upper_arm.stl' for link 'upper_arm': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://champ_arm_description/meshes/upper_arm.stl in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/ogre-1.9-B6QkmW/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreResourceGroupManager.cpp (line 756)

Error When running base drive in RVIZ

Hi,
When I am running the command
roslaunch champ_config bringup.launch rviz:=true
I am getting this error, and the RVIZ GUI is opening up, but I am unable to perform any task like moving forward or turning etc using keyboard controls of (u,i,o,j......).
image

mini_cheetah cannot work in gazebo

Hi, I've tried your demo for mini_cheetah, with command roslaunch mini_cheetah_config bringup.launch and then roslaunch mini_cheetah_config gazebo.launch. But the robot cannot stand up in gazebo, and come up with the information below:

[FATAL] [1595421094.629746262]: Failed to unload nodelet '/velocity_smoother' from manager 'nodelet_manager'
[WARN] [1595421124.845966, 1.244000]: Controller Spawner couldn't find the expected controller_manager ROS interface.

The mini_cheetah in gazebo is like:
image

Could you please help me with what's wrong with my command or how could I fix this bug.

Feedback in the controller?

Hi, I've tried CHAMP and noticed an unexpected thing. There seems to be no feedback going to the champ_controller node (looking at rqt_graph of the running roslaunch champ_bringup gazebo.launch). Is that right? And is there a way to plug feedback in the controller, so that it can e.g. keep correct body pose even when on an inclined plane? I know that complex terrain traversal needs something very different, but at least simple terrain could probably be handled by some kind of orientation feedback (and leg pose feedback).

Anyways, thanks a lot for the package. I'm now trying to make it work with Spot in Ignition Gazebo for the DARPA SubT competition. If I succeed, I'll let you know.

Bot keeps collapsing

After I run the command-
roslaunch champ_config gazebo.launch

Gazebo opens and the simulated bot collapses to the ground, I don't want to switch off gravity, what should I do?

Can we plot rqt graph?

can we plot graph using rqt for model, like we can get the value of joint state or value from odom, cmd_vel etc.?

Hardware Documentation: Please add, need help?

Regarding

  1. Running your own robot:

TODO:

Hardware Documentation
Microcontroller based configuration

I really want to build my own robot and I am very excited about the Hardware documentation. If you wish I can help writing the git pages.

Unitree A1 robot fails to move in Gazebo and falls over

I am trying to use the Gazebo simulation of A1 robot in Gazebo(the one in Champ package) but the robot fall over(I have added the desired properties for Gazebo in URDF).

The gait planning of the robot is working fine here the robot can be seen being teleoperated in RVIZ. But when the same robot is taken to Gazebo it is not able to teleoperate and falls after some time. To me there can be few reasons setting proper physics parameters, setting PID values for ros_control or may be something else which at the moment I don't know.

Anyone who can guide/point out some problems with the simulation.

How do I implement this simulation on actual hardware?

I'm working on a project and I was able to simulate my model in RVIZ (still might need some tweek to it). Now, how do I implement this simulation on actual hardware? My model is simple and I won't be using many sensors for now, so I'm planning to use Arduino Mega to run servos. I'm new to this ROS and Robotics environment.

Thank You champ team for making this repository to make simulating quadruped easy. 👍 👏

joystick orders doesn't work ?!

hello !
when launching : roslaunch champ_config bringup.launch joy:=true rviz:=true
can't move robot with joystick !!
joystick recognized over jstest_gtk
any help, please

Chiken head rviz simulation problem : didn't work

There is no base_mount information in champ_arm.urdf
and in mesh file there is no base_mount STL file

so when i launch the demo.launch to simulate the chicken_head in rviz
No transform from [base] to [/odom] error occured and didn't move

champ bringup.launch imu/data rostopic not showing any messages

Hello.

When I launch champ bringup,

dlee640@dlee640-T580:~$ roslaunch champ_config bringup.launch rviz:=true
... logging to /home/dlee640/.ros/log/2feaeaac-7dcf-11eb-a764-b46bfc2dbb2b/roslaunch-dlee640-T580-23563.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.

started roslaunch server http://dlee640-T580:36939/

SUMMARY
========

PARAMETERS
 * /base_to_footprint_ekf/base_link_frame: base_link
 * /base_to_footprint_ekf/frequency: 50
 * /base_to_footprint_ekf/imu0: imu/data
 * /base_to_footprint_ekf/imu0_config: [False, False, Fa...
 * /base_to_footprint_ekf/odom_frame: base_footprint
 * /base_to_footprint_ekf/pose0: base_to_footprint...
 * /base_to_footprint_ekf/pose0_config: [True, True, True...
 * /base_to_footprint_ekf/transform_time_offset: 0.045
 * /base_to_footprint_ekf/transform_timeout: 0.01
 * /base_to_footprint_ekf/two_d_mode: False
 * /base_to_footprint_ekf/world_frame: base_footprint
 * /champ_controller/gazebo: False
 * /champ_controller/joint_controller_topic: joint_group_posit...
 * /champ_controller/publish_foot_contacts: True
 * /champ_controller/publish_joint_control: True
 * /champ_controller/publish_joint_states: True
 * /footprint_to_odom_ekf/base_link_frame: base_footprint
 * /footprint_to_odom_ekf/frequency: 50
 * /footprint_to_odom_ekf/imu0: imu/data
 * /footprint_to_odom_ekf/imu0_config: [False, False, Fa...
 * /footprint_to_odom_ekf/odom0: odom/raw
 * /footprint_to_odom_ekf/odom0_config: [False, False, Fa...
 * /footprint_to_odom_ekf/odom_frame: odom
 * /footprint_to_odom_ekf/transform_timeout: 0.01
 * /footprint_to_odom_ekf/two_d_mode: True
 * /footprint_to_odom_ekf/world_frame: odom
 * /gait/com_x_translation: 0.0
 * /gait/knee_orientation: >>
 * /gait/max_angular_velocity_z: 1.0
 * /gait/max_linear_velocity_x: 0.5
 * /gait/max_linear_velocity_y: 0.25
 * /gait/nominal_height: 0.2
 * /gait/odom_scaler: 0.9
 * /gait/pantograph_leg: False
 * /gait/stance_depth: 0.0
 * /gait/stance_duration: 0.25
 * /gait/swing_height: 0.04
 * /joints_map/left_front: ['lf_hip_joint', ...
 * /joints_map/left_hind: ['lh_hip_joint', ...
 * /joints_map/right_front: ['rf_hip_joint', ...
 * /joints_map/right_hind: ['rh_hip_joint', ...
 * /links_map/base: base_link
 * /links_map/left_front: ['lf_hip_link', '...
 * /links_map/left_hind: ['lh_hip_link', '...
 * /links_map/right_front: ['rf_hip_link', '...
 * /links_map/right_hind: ['rh_hip_link', '...
 * /robot_description: <?xml version="1....
 * /robot_state_publisher/ignore_timestamp: True
 * /robot_state_publisher/publish_frequency: 200
 * /robot_state_publisher/use_tf_static: False
 * /rosdistro: melodic
 * /rosversion: 1.14.10
 * /state_estimator/close_loop_odom: False
 * /tf_prefix: /
 * /velocity_smoother/accel_lim_v: 1.0
 * /velocity_smoother/accel_lim_w: 2.0
 * /velocity_smoother/decel_factor: 1.0
 * /velocity_smoother/frequency: 10.0
 * /velocity_smoother/robot_feedback: 2
 * /velocity_smoother/speed_lim_v_x: 0.5
 * /velocity_smoother/speed_lim_v_y: 0.35
 * /velocity_smoother/speed_lim_w: 0.4

NODES
  /
    base_to_footprint_ekf (robot_localization/ekf_localization_node)
    champ_controller (champ_base/quadruped_controller_node)
    footprint_to_odom_ekf (robot_localization/ekf_localization_node)
    nodelet_manager (nodelet/nodelet)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    rviz (rviz/rviz)
    state_estimator (champ_base/state_estimation_node)
    velocity_smoother (nodelet/nodelet)

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

setting /run_id to 2feaeaac-7dcf-11eb-a764-b46bfc2dbb2b
process[rosout-1]: started with pid [23676]
started core service [/rosout]
process[robot_state_publisher-2]: started with pid [23683]
process[nodelet_manager-3]: started with pid [23684]
process[velocity_smoother-4]: started with pid [23685]
process[champ_controller-5]: started with pid [23691]
process[state_estimator-6]: started with pid [23698]
process[base_to_footprint_ekf-7]: started with pid [23699]
process[footprint_to_odom_ekf-8]: started with pid [23705]
process[rviz-9]: started with pid [23718]
[ INFO] [1614961439.086236643]: Successfully parsed urdf file
[ INFO] [1614961439.095383893]: Successfully parsed urdf file
**[ WARN] [1614961439.170921801]: Warning: Some linear velocity entries in parameter imu0_config are listed true, but an sensor_msgs/Imu contains no information about linear velocities
[ WARN] [1614961439.175079859]: Warning: imu/data is listed as an input topic, but all its update variables are false**
[ INFO] [1614961439.196014083]: rviz version 1.13.15
[ INFO] [1614961439.196089498]: compiled against Qt version 5.9.5
[ INFO] [1614961439.196106039]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1614961439.202383253]: Forcing OpenGl version 0.
[ INFO] [1614961439.747785297]: Stereo is NOT SUPPORTED
[ INFO] [1614961439.747863805]: OpenGl version: 3.0 (GLSL 1.3).

I get those warnings above about how imu/data's updated variables are false, which I think explains why I am not getting any data for my /imu/data topic.

So, I took a loot at yaml files within /src/champ/champ_base/config/ekf folder where some configurations are defined.

First, what does the topic /base_to_footprint_pose mean? Does it mean robot base's location? I am kind of confused on the terminology and would appreciate your explanation!

Also, I feel like there is a small bug in the config setting for imu0_config.

The imu0_config in base_to_footprint.yaml specifies:

frequency: 50

transform_timeout: 0.01
transform_time_offset: 0.045

two_d_mode: false
# diagnostics_agg: true

#x     , y     , z,
#roll  , pitch , yaw,
#vx    , vy    , vz,
#vroll , vpitch, vyaw,
#ax    , ay    , az
...

imu0: imu/data
imu0_config: [false, false, false,
              false, false, false,
              true, true, true,
              false, false, false,
              false, false, false]

The imu0_config in footprint_to_odom.yaml specifies:

frequency: 50

transform_timeout: 0.01
# transform_time_offset: 0.05

two_d_mode: true
# diagnostics_agg: true

#x     , y     , z,
#roll  , pitch , yaw,
#vx    , vy    , vz,
#vroll , vpitch, vyaw,
#ax    , ay    , az

...

imu0: imu/data
imu0_config: [false, false, false,
              false, false, true,
              false, false, false,
              false, false,  true,
              false, false, false]

I'd really appreciate you taking a look at this small bug and providing me with some explanation about how these boolean variables are set and why they mean.! Thanks again for providing us with great resource.

Installing Dependencies Error

Hi, (Noob Here)
I am very new to ROS and Robotics in general. I was trying to clone and install all dependencies on my ubuntu 18.04.5(on virtual box), using following commands

sudo apt install -y python-rosdep
cd <your_ws>/src
git clone --recursive https://github.com/chvmp/champ
git clone https://github.com/chvmp/champ_teleop
cd ..
rosdep install --from-paths src --ignore-src -r -y

I created a folder and cloned, and inside my folder, trying to run

rosdep install --from-paths src --ignore-src -r -y

But it's giving me an error:

ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies (ROS distro is not set. Make sure `ROS_DISTRO` environment
variable is set, or use `--rosdistro` option to specify the distro, e.g. `--rosdistro indigo`):

image
I even tried,

rosdep install --from-paths src --ignore-src --rosdistro melodic -r -y

But it isn't working. Can you please help me out.

And sorry, if it is a very basic and stupid question.

Regards

catkin_make error

Hi,

I ran command "catkin_make" and found these series of errors related to protobuf

Screenshot from 2020-11-19 11-37-30

Can you please guide to through solving this problem? I am new to ROS and ubuntu. Many thanks in advance

The robot is not moving forward

Hi there
I tried launching the files below:
Screenshot from 2021-03-23 19-28-03

But I ran into the following problems:

  1. Gazebo environment is running in a very slow speed. (My system is Core i5, with 8 gb ram and 2 gb AMD Radeon Graphics Card. I am using Ubuntu 20.04.2 LTS and ROS Noetic. It's installed in SSD). I wonder if my system specs are not sufficient for normal speed.
  2. The robot is doing somewhat rotation almost around it's axis. Would you please tell me why it happens and what's the solution?
    Thanks in advance for all this help
    I have attached a video below to show the warnings that I get and to show what the robot does:
walking_demo.1.mp4

Build Issue related to libbullet version

Hello. I am getting a catkin_make error that is very weird.

I have Ubuntu18.04 with Gazebo9. I am hetting No package 'bullet' found errror, that seems unsolvable even by executing sudo apt-get install libbullet-dev. Currently, my system says that I have libbullet 2.87 installed so I am very lost on why this is happening.

Screenshot from 2021-02-26 14-44-49
Has anyone had this issue or know how to solve it? I feel like this is a path issue related to gazebo..

Working on open Quadrupeder (teensy 4.0) How-to?!

Hi.
Champ simulations 👍

Now real-time.
Working on Jetson, connected to Adham/Maurice/Mano board (open quadrupeder/spotmicroAI) , containing a teensy 4.0.

Teensy is rosserial ready (Maurice Rahme firmware /moribot)

Do I just need to run the next lines, to be able to use your package on my Dog?

<!-- Sensor Interface Node -->
<node pkg="rosserial_python" type="serial_node.py" name="serial_node">
    <param name="port" value="/dev/ttyS0"/> <!-- HW Serial -->
    <param name="baud" value="500000"/>  <!-- must match Teensy -->
  </node>

Thanks a lot.

Vincent.

controlling of mini cheetah

Hi, it seems that the controlling of mini-cheetah needs some improvement. When I use teleop and type "i" to make it go straight, it's struggling and not going in expectation. But if type "<" to make it go backwards, it performs better. Wondering whether it's the problem of pid parameter or other bugs. Thx!

Robot keeps spinning around / colliding with walls under SLAM mode

Hi. I've tested champ default quadruped on willowgarage.world model. When I send 2D Nav Goal via rviz, the robot does slowly approach the destination, but keeps spinning around (seems like the robot gets confused on how to fix yaw) until it gets to that position instead of getting there in a clean fashion. Also, the robot has trouble avoiding walls, as the door passage in the willowgarage is quite narrow and the robot seems to not make it past the door.

I am attaching gifs demonstrating these issues. I noticed from previous post that PR is submitted on #48 for sim time issue and that this behavior may be related to that. However, I am lost on how to fix sim time issue. Can someone help with step by step instruction on how to address this issue?

Thanks a lot!

slam
slam_2
slam3

<gazebo reference > tag Question

Hi I'm studying Quadruped robot simulation through your project
I am very grateful for your project.

I don't know if I can ask you this.
I would like to ask you why you set the (kp, kd, mu1 and mu2.) elements of gazebo reference to only *_lower_leg_link.

Don't start gazebo.launch mini_cheetah_config

Hello
Can you please help?
Why doesn't gazebo.launch (mini_cheetah_config) get started, but just lies down on the ground? It feels like it won't launch TF

Ubuntu 18.04 ros-melodic gazebo 9.13.1
Снимок экрана от 2020-07-22 13-04-01

Noetic dependency tracking

creating this issue to track the status of some dependencies for this package that haven't been ported over to Noetic yet.

  • slam_gmapping
    • dependent on openslam_gmapping
    • both compile on noetic ubuntu 20.04
    • no release available for noetic
  • hector_mapping
    • noetic-devel branch available
    • compiles fine on the noetic-devel branch
    • no release available for noetic
  • hector_gazebo
    • compiles
    • no release available for noetic

Contact Sensor failing in gazebo.launch

Hey all,

Whenever I try to run:

roslaunch champ_config gazebo.launch, I keep getting this error message:

[contact_sensor-13] process has died [pid 7140, exit code -6, cmd /home/user/champ_ws/devel/lib/champ_gazebo/contact_sensor __name:=contact_sensor __log:=/home/user/.ros/log/bb818682-7c41-11eb-b59d-4485003e4a6d/contact_sensor-13.log].
log file: /home/user/.ros/log/bb818682-7c41-11eb-b59d-4485003e4a6d/contact_sensor-13
.log
*

I deleted the built contact sensor out of the directory:

/home/user/champ_ws/devel/lib/champ_gazebo

And then ran catkin_make in the catkin workspace. Although the build was successful, including replacing the contact sensor, I got some warning messages that I think are related:

/usr/bin/ld: warning: libboost_thread.so.1.65.1, needed by /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/libgazebo_transport.so, may conflict with libboost_thread.so.1.71.0

/usr/bin/ld: warning: libboost_filesystem.so.1.65.1, needed by /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/libgazebo_common.so, may conflict with libboost_filesystem.so.1.71.0

[100%] Built target contact_sensor

I'm rather new to this, but I feel like there is an issue with conflicting boost libraries and I can't seem to figure out what to do. Can anyone advise me?

Running this on ROS-noetic

I am trying to run this on latest ros version but it doesnt seem to work. When i follow the installation steps, catkin_make runs successfully but with error for yocs_velocity smoother.
Screenshot from 2020-06-07 22-25-19
I also tried cloning yocs_velocity_smoother from upstream, but still it persists

Error with champ robot model

Ran the following commands:
roslaunch champ_config gazebo.launch
roslaunch champ_config navigate.launch rviz:=true

But there was some issue with the robot model as seen in the image below. Additionally, the cost maps in front of the robot shows phantom lines. Not sure why this is the case?
Champ navigate issue

Gait Pattern

Which Gait Pattern does CHAMP incorporate for walking?

Not able to launch champ in gazebo

am facing an issue when i launch champ config in gazebo with
using Ros Melodic gazebo updated to 9+
$roslaunch champ_config gazebo.launch
Screenshot from 2021-03-07 22-20-03

configure multi-robot system

Hi:),
currently I'm configuring a 4-robot system based on your code. I added 3 more namespaces named "robot_name2", "robot_name3", "robot_name4", however, I'm now facing this problem:

[ERROR] [1600397229.850322115, 0.001000000]: SpawnModel: Failure - model name champ already exists.
[ERROR] [1600397229.859497225, 0.001000000]: SpawnModel: Failure - model name champ already exists.
[ERROR] [1600397229.867593171, 0.001000000]: SpawnModel: Failure - model name champ already exists.

it seems I need to change "champ.urdf.xacro", but how to change that? THX!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.