0
$\begingroup$

Rosanswers logo

Hello

I would like to do some real time control of the platform that does not contain wheel encoders. So is possible to do some real time control of the motors of that platform (like the position and velocity), but without encoders. I heard that it is a possible to use hard real time control with ROS. I need like ROS real time rosrt and Orocos RTT. Is that true??

Any help would be welcome.


Originally posted by Astronaut on ROS Answers with karma: 330 on 2013-05-06

Post score: 0

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

If you have hard realtime requirements (e.g. can´t miss a deadline, otherwise system failure) you can either use a hard realtime Linux approach using a RT-PREEMPT Kernel (or alternatives like Xenomai and RTAI) with rosrt or Orocos RTT. The other option is offloading the hard real-time critical part to a microcontroller and talking to that using rosserial or another approach. As microcontrollers get more powerful and are increasingly easier to integrate with ROS, I´d recommend the second option. Dealing with hard realtime Linux systems can be very frustrating as they are not very widely used and debugging problems can become very hard.


Originally posted by Stefan Kohlbrecher with karma: 24361 on 2014-01-10

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$
0
$\begingroup$

Rosanswers logo

From ROS-I FAQs:

Q: Is ROS-Industrial suitable for real-time control?

A: Like ROS, ROS-I nominally runs on Ubuntu Linux, which is not a real-time OS. ROS-I is fast enough to run closed-loop with perception systems for industrial applications, but (at least for now) ROS-I must be used as a high-level controller in conjunction with a low-level real-time controller (usually the one from the OEM), which closes servo feedback loops and provides safety behavior (e.g. an E-stop).

This is also valid for ROS. Hard real time control is not possible using only ROS. You will have to implement (or buy) your own low-level real time controller and connect it to your high level ros nodes, e. g. via ROS serial.


Originally posted by Wolf with karma: 7555 on 2014-01-09

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.