GithubHelp home page GithubHelp logo

personalrobotics / pr_ros_controllers Goto Github PK

View Code? Open in Web Editor NEW
3.0 35.0 0.0 219 KB

ros_control controller plugins developed by the Personal Robotics Lab at CMU

C++ 97.89% CMake 1.29% C 0.82%

pr_ros_controllers's Introduction

pr_ros_controllers

PRL controllers that are compatible with the ros2-control framework and are ready to use with many robots, MoveIt2 and Navigation2.

Many of these controllers pull heavily from the upstream ros2_controllers.

pr_ros_controllers's People

Contributors

clintliddick avatar egordon avatar herlant avatar mkoval avatar amalnanavati avatar gilwoolee avatar jslee02 avatar

Stargazers

 avatar G.A. vd. Hoorn avatar  avatar

Watchers

 avatar Matthew Klingensmith avatar  avatar  avatar Shervin Javdani avatar Daqing Yi avatar Stefanos Nikolaidis avatar Jennifer King avatar Jan (Janko) Ondras avatar Matthew avatar Zita Marinho avatar Tapomayukh Bhattacharjee avatar Christoforos Mavrogiannis avatar Shen Li avatar Siddhartha Srinivasa avatar Johan Michalove avatar  avatar Personal Robot avatar  avatar Zoey avatar William Agnew avatar Rishabh Madan avatar Matt Schmittle avatar Rosario Scalise avatar Nathan Dennler avatar Ruolin Ye avatar Morgan avatar Youngsun Kim avatar Colin Summers avatar  avatar  avatar  avatar Aditya Vamsikrishna Mandalika avatar Hejia Zhang avatar  avatar

pr_ros_controllers's Issues

Build error - rewd_controllers

When I try to build a project about ada, i got this message. According to here, I tried
sudo apt-get install ros-indigo-ros-control ros-indigo-ros-controllers
But it still not build.

Error message:
Errors << rewd_controllers:cmake /home/shen/research/ada_block_sorting/logs/rewd_controllers/build.cmake.000.log CMake Error at /home/shen/research/ada_block_sorting/src/pr_ros_controllers/rewd_controllers/CMakeLists.txt:13 (message): controller_interface package must be at least version 0.10.0, not packaged in Indigo. Please upgrade to Jade or build the ros_control packages from source.

`cd /home/shen/research/ada_block_sorting/build/rewd_controllers; catkin build --get-env rewd_controllers | catkin env -si /usr/bin/cmake /home/shen/research/ada_block_sorting/src/pr_ros_controllers/rewd_controllers --no-warn-unused-cli -DCATKIN_DEVEL_PREFIX=/home/shen/research/ada_block_sorting/devel/.private/rewd_controllers -DCMAKE_INSTALL_PREFIX=/home/shen/research/ada_block_sorting/install -DCMAKE_BUILD_TYPE=RelWithDebInfo; cd -
...............................................................................

Failed << rewd_controllers:cmake [ Exited with code 1 ]
Failed <<< rewd_controllers [ 2.5 seconds ] `

Poling Thread or New Thread for Each Action Goal

Should we create a new thread for each action goal (current implementation), or have a single thread that pulls goals off a queue or poles until there's a goal available? In REWD controllers.

Support file:// URIs to load URDF

Make helper function that creates a default ResourceRetriever and use it in grav comp and position controllers (later in DARTController/REWDController base class).

position_command_interface should register joint names

Right now, you register a device (group) name instead of the expected individual joint names. This means that a position_command controller and a position controller can both be controlling the same joint at the same time, unless special logic is inserted. This can cause unintended consequences.

Use FollowJointTrajectoryAction instead of custom SetPositionAction

From @mkoval:
I am wondering if we can ditch the custom actionlib command and simply use FollowJointTrajectoryAction. There are two key advantages. First, we don't have to define yet-another custom message type. Second, we can slowly start supporting more of these features in the future.

This is serious overkill for our application, so we would require that the goal:

  • all joints are specified
  • a single waypoint
  • does not contain velocities or accelerations
  • time_from_start, goal_tolerance, joint_tolerance, and goal_time_tolerance are all zero

There are a few key advantages:

  • reduces the number of message types (like you said)
  • the user's code no longer has to depend on pr_ros_controllers
  • we can re-use the same client code that we do for FollowJointTrajectory

If we need more custom fields, we will close this issue, but if not, we should standardize.

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.