3
$\begingroup$

I'm wondering if ROS is the right system for me. I'm currently involved in a project which consists of building a device that has the purpose to take spectroscopic measurements using a laser and a spectrometer, controlling servos and reading outputs of many different sensors.

The project involves

  • Bring the laser to the right spot using a proximity sensor and a servo
  • Firing the laser and doing a measurement with the spectrometer
  • Continuously monitor various temperature, vibration, flow etc sensors
  • The devices are either ethernet connected or send out voltage/current signals. All devices can be communicated to using Python and libraries.

The software will run on a single Linux PC.

From what I gather then ROS should be great for this. F.x. by creating python scripts for each device, which connect to a "mother" script through the publisher/subscriber method.

But before I dive into coding this, it would be great to get someone's opinion on in ROS is the right system for this?

Cross-Post at answers.ros.org

$\endgroup$
  • $\begingroup$ @FooBar - While I agree that this does need to be added to the post somewhere, your edit about the cross post could probably be best served as a comment, instead of directly editing the question or answer as it could conflict with the authors intent. $\endgroup$ – Greenonline Apr 29 at 17:25
  • $\begingroup$ I´m a bit confused, is it against the rules to ask the same question on two different platforms? $\endgroup$ – Frimann Bjornsson Apr 29 at 18:29
  • $\begingroup$ Is cross-posting wrong (to an external site)? $\endgroup$ – Greenonline Apr 29 at 19:45
  • $\begingroup$ Makes sense, I´ll take note of this for future reference. $\endgroup$ – Frimann Bjornsson Apr 30 at 23:41
0
$\begingroup$

ROS sounds like a good way to go. You will most likely only use the core tools (topic, actions, launch files, bag files, RVIZ) but they will definitely simplify your development as you can divide your application in smaller parts with clearly defined interfaces.

$\endgroup$
0
$\begingroup$

Check already ROS supported sensors; you might find code for some of your sensors already existing. Check this link http://wiki.ros.org/Sensors

$\endgroup$
0
$\begingroup$

If all you want from ROS is the publish/subscribe architecture, then I would caution that using ROS probably has non-negligible overhead, especially if you are unfamiliar with it. In particular, the build environment is definitely geared towards C++, and if you are already planning on using Python, I would suggest looking for alternatives -- paho-MQTT might be more inline with your needs.

$\endgroup$
0
$\begingroup$

ROS is very complex tool. From your description it sound that ROS is a good choice but keep in mind that a ROS project involves a lot of things that can make your project work properly, but it is difficult to learn. Fortunately there is a big community and many good tutorials.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.