A couple weeks ago we installed ROS 0.5 on an ASUS eeePC. For the most part the installation ran very smoothly.
The only hiccup in the installation that we had was a problem with apt-get, which was resolved by running the following command:
sudo apt-get update
After this, ROS installed for us without any errors.
Since we first installed ROS 0.5 a couple weeks ago on the laptops, there has already been several updates to ROS. ROS 0.6 was released last Friday. The installation process for ROS 0.6 is now (pretty much) fully automated and has been simplified down to three steps:
Step 1: pre-install
The pre-install just makes sure you have everything you need to run the “ROS grand-unified-installer", and varies slightly depending on the operating system.
Step 2: install
ROS now uses a rosconfig tool to automatically install a ROS configuration on your machine. The steps are os-nuetral:
P.S. It will take about two hours or so to install, but at least its a hands-free installation!
Step 3: enjoy
Basically, the installation is done now, but to make things more convenient, you can set the ROS environment variables automatically whenever you open a new shell:
~/rosconfig setup ~/ros > ~/.bashrc.ros
echo "source ~/.bashrc.ros" >> ~/.bashrc
When we first tried running a network of ROS nodes on more than one computer, it appeared that the eeePC would only receive messages, and was not sending out any messages.
After hours of frustration and searching through message boards, we finally learned what
the problem was. ROS requires that all machines involved in the network be able to ping each other by host name.
The easiest way to do this on Ubuntu is by using Zeroconf, which is analogous to Apple’s Bonjour technology. Zeroconf should already be installed and configured if you are using Ubuntu 9.04.
If you are unsure whether or not Zeroconf is installed and working, you can test it by pinging your machine from another computer like this:
Make sure you include .local suffix after the hostname. If it works, then Zeroconf is already setup and running.
After you confirm that Zeroconf is setup properly, the only thing you need to do is tell ROS that you want to use
hostname.local instead of
hostname to identify your machine. You can do this by setting up the following environment variable in your .bashrc file:
Once you do this on all the machines that could not be pinged by name, ROS should work fine.
Hi! My name is Gheric Speiginer and I am working with Keenan Black in Chad Jenkin’s Lab at Brown University. I am a rising Junior at Hampton University and my major is Computer Science. Recently Keenan and I have been working with the ROS platform, currently being developed by Willow Garage.
Willow Garage, if you’ve never heard the name before, is a new company that is attempting to standardize the field of robotics. They basically want to be the “Google” of robotics. One of their biggest projects is a new open source robotic operating system, called ROS, which stands for… Robotic Operating System (creative huh?!). Anyway, there is lots of hype around ROS right now. It has more funding than many other robotic frameworks like Player/Stage and has a quickly growing community. When it comes to open source, its generally a good idea to go where the hype is, for obvious reasons such as more people available to help you troubleshoot a problem, and more people to help progress the development of the project.
So back to Keenan and I at Brown University. Our current task here involves developing a ROS compatible driver for the iRobot Create. So far we have had some pretty good progress with only a couple of stumbling blocks. ROS was pretty trivial to install on the ASUS eeePC laptops that are used with the iRobot Creates here at Brown (or Smurvs, as they’re also called). The tutorials were just as simple to set up and run. The only minor problems we ran into were configuring ROS to work over a network, but more on that in the next blog.
|<< <||> >>|