Society of Robots - Robot Forum

Software => Software => Topic started by: Kylepowers on May 15, 2011, 02:16:56 PM

Title: ROS
Post by: Kylepowers on May 15, 2011, 02:16:56 PM
Has anyone used ROS robot operating system? Also dose anyone know if it would work with the axon? They say there is a software system built for avr processors. Which the atmega in the axon is if I remember right.
Title: Re: ROS
Post by: rbtying on May 15, 2011, 04:49:42 PM
I'm currently using ROS, although not with the AVR node they've got written.  It's not too hard to define your own serial protocol.  You need to write communication handling code on both sides - the computer and the Axon - and it'll be customized for your application.  Using other people's source when doing that makes it a lot harder to get things done quickly - more detail on your goal would make giving advice simpler =).
Title: Re: ROS
Post by: Kylepowers on May 15, 2011, 05:59:40 PM
What I want to do is have the ROS software on a laptop  that will be part of my robot. The ROS will take in the images from two usb cameras that will be used for the robots vision. I want the Axon to control the motors and servos to make the robot move aswell as take in input from the sensors to send to the ROS. The ROS will give commands to the axon on what and how to do things. Im just not sure how to get the programming started on it.

Thanks for any help you can provide.
Title: Re: ROS
Post by: rbtying on May 15, 2011, 09:33:10 PM
How much experience do you have with Python and C++?  Those are the core languages of ROS, and you'll need to be decent with them to get anything done. Take a look at POSIX serial code - this usually involves using termios.h - you can pretty easily steal the class from the iRobot Create stack to use in your own code (cereal::CerealPort).  A simple protocol would utilize some predefined opcodes for driving, with a few bytes of data passed back and forth (ie speeds and sensor readings). 

Realize that ROS is significantly more complex than, say, roborealm - your first goal should be going through all the available tutorials.
Title: Re: ROS
Post by: Kylepowers on May 16, 2011, 09:04:21 AM
Out of the two which provides the most function and capabilities for a robot?
Title: Re: ROS
Post by: rbtying on May 16, 2011, 09:15:49 AM
RoboRealm is easy but limited to what other people have already written. It also costs more.  ROS is much more extensible (it is, at its heart, a research API for robotics), but is more difficult.

Your ability to create usable code determines which one will provide more function.  Only the functions you implement yourself, after all, can be used in your robot.
Title: Re: ROS
Post by: Kylepowers on May 16, 2011, 09:19:55 AM
Im thinking that ros will be my choice because I can build on it as much as I want. Roborealm looks nice but at the end of the day I need it to be expandable.
Title: Re: ROS
Post by: Kylepowers on May 17, 2011, 05:08:16 PM
Can you use a usb expansion hub with ros so ill have more usb slots for extra cameras a as of right now I have 3 usb slots. But I might want more than one microcontroller.
Title: Re: ROS
Post by: rbtying on May 17, 2011, 05:42:27 PM
Yes, you can.
Title: Re: ROS
Post by: Kylepowers on May 27, 2011, 12:05:18 AM
Can you use Gate Designer with it as well? or what would be the best way to create gaits for walking robots with it?
Title: Re: ROS
Post by: rbtying on May 27, 2011, 08:06:24 AM
You would have to write the interface code. As far as I can tell, though, most ROS walker-bots use customized inverse kinematics to calculate their gaits, instead of keyframing/snapshotting, as the processing power is available.
Title: Re: ROS
Post by: Kylepowers on May 28, 2011, 06:47:47 PM
Can I also make ROS work like android dose with it memory managment system? Where the system will monitor its memory usage and cancel processes that it no longer needs but then restart them from where they left off. If it needs those processes again.
Title: Re: ROS
Post by: Kylepowers on June 14, 2011, 07:35:41 AM
Dose the ROS software need a lot of ram i was thinking of using a Pico-ITX board would that work fine with this software?
Title: Re: ROS
Post by: rbtying on June 14, 2011, 08:18:28 AM
It matters what you want to do.  The basic framework itself doesn't take much, but vision processing/SLAM will require a decent amount of RAM.  It's entirely possible to run it on a Pico-ITX board, but it may not be easy.

ROS is built on Linux: it's just an API to make programming simpler, and provides a bunch of very useful simulation/visualization packages.
Title: Re: ROS
Post by: Kylepowers on June 14, 2011, 03:34:59 PM
How much ram would you need? Is 2 GB good enough or would you need more?
Title: Re: ROS
Post by: rbtying on June 14, 2011, 05:24:35 PM
What are you planning on doing? The PR2 has something on the order of 16 GB RAM, but the Turtlebot suffices with 2 GB, so the requirements are clearly rather flexible.
Title: Re: ROS
Post by: Kylepowers on June 14, 2011, 05:56:19 PM
Really its going to be very simple. A body with treads for drive a camera for vision and two arms for grabbing things in the world its in.