Giter Site home page Giter Site logo

Comments (3)

christophfroehlich avatar christophfroehlich commented on June 21, 2024

I moved this issue to gazebo_ros2_control, because this is more a question of simulation than ros2_controllers. (I assumed you mean gazebo classic instead of gazebo? If not, I'll move it to gz_ros2_control).

If you use a velocity command interface with gazebo_ros2_control, then the velocity of the physics engine is "overwritten" and no effort is calculated, hence the state interface given back reads zero. But velocity interface is de-facto standard for wheeled robots, this should not be the problem here.

Have you tried to move the robot around by manually applying a force from the GUI? If this works (and you haven't accidentally fixed the robot in the world frame), then try to use a effort_controllers/JointGroupEffortController for one arm, apply the effort and see what happens.

from gazebo_ros2_control.

alextdbc avatar alextdbc commented on June 21, 2024

Hi thank you for your answer. Youre right im using Gazebo classic.

My robot is not fixed to the world frame and i can move it around. I already tried to use the JointTrajectoryController to set the goal position and that worked completely fine. Now i've tried it with the EffortController and that worked also. Just when im using the VelocityController the Wheels and Arm arent spinning as soon as they get contact with the Ground.

from gazebo_ros2_control.

christophfroehlich avatar christophfroehlich commented on June 21, 2024

This is a drawback of the implementation with writing position or velocity values to the physics engine, see #240 for a similar issue.
To overcome this, I'd suggest to write an own gazebo plugin, exposing velocity interfaces to your controller but writing effort to the joints in the simulation loop. In between you can use a high-gain PID controller or similar.

from gazebo_ros2_control.

Related Issues (20)

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.