ros-controls / ros_control

Generic and simple controls framework for ROS
http://wiki.ros.org/ros_control
BSD 3-Clause "New" or "Revised" License
478 stars 306 forks source link

python hardware interface binding #464

Open a-z-e-r-i-l-a opened 4 years ago

a-z-e-r-i-l-a commented 4 years ago

I want to make a python interface binding to a robot hardware interface that we have, and the choices seems to be using either Cython, boost/python, swig, and etc.

Do you have a recommendation which one of these might be better and have a lower latency? my goal is to invoke controller update, from python while sending robot state also from python along with getting control commands from the c++ hardware interface.

Thanks.

bmagyar commented 4 years ago

That sounds fairly interesting! My go-to would be Pybind11, of course depending on the Ubuntu/ROS version this may not be available.

a-z-e-r-i-l-a commented 4 years ago

I use ROS Melodic and Ubuntu 18.04. How about Cython or Boost/python? I thought maybe these might have a better latency. Do you think it might be time consuming for a fairly beginner in C++ to make prepare this binding?