ROS beginner questions
Hello,
I'm pretty new to robot programming, so I don't have much experience in this topic yet. My task at univerity is to compare using ROS to our Pioneer P3AT's default library called ARIA. My goal is to answer this question: if our project is to make this Pioneer P3AT follow a predefined path and make corrections by the incoming positions - provided by an iGPS system - if the robot doesn't follow the planned path (for example it skids), then do we benefit from using ROS, and ROSARIA (P2OS), or should we just stick with the AIRA libraries. Does programming in ROSARIA result in more general code that can be reused if we change the P3AT to a different robot? If I understand well, the ROSARIA is a wrapper around the ARIA packet; and P2OS is a "driver" for robots like the Pioneer P3AT.
What are the pros/cons?
Thank you in advance!
Continue:
Does ROS have a general open source controlling system like the Player/Stage, or is it only using ARIA? If I want to use some algorithm found on ROS.org in some package, will it use ARIA? How do I know which packages are 'compatible'. I started reading 'Programming Mobile Robots with ARIA and Player' by Amanda Whitbrook, it has cleared some points for me, but the book doesn't speak about ROS at all. So my question really is how does programming compare with or without ROS. With only ARIA, I use the ARIA C++ library, and that's all. If I use ROS, will I still use ARIA with some neat tools provided by this meta-operating system? Or will the programming procedure change?
Hi, you should tag your question, so the right people see it. Further it seems hard to answer your question for a comparison without knowledge about ARIA. Maybe you should rather ask about the properties of ROS regarding code reuse.
I've been reading a lot since, and so is my opinion right that ROSARIA is not really a wrapper 'general language' for generally developing robotics software, but only a node for the ROS system, with subscribed and published topics that can be used effectively in a ROS node system.
So basically I'll still use ARIA (aria.h header, etc.) if I use ROSARIA and ROS, and these latter are systems responsible for making the development easier and more effective based on developers experiences so far (peer to peer connections, multi-lingual system, IDL, and so on).