PhaROS tool has the mission of installing and creating packages into a ROS installation.

For doing this we have several commands, from installing and creating to administrating repositories, so you can manage your own packages and creating templates without major problems.

Install PhaROS tool

We are working for having this package in Ubuntu and ROS repositories, but meanwhile you can download it from here: pharos-deb

Once downloaded just execute

sudo dpkg -i pharos.deb

pharos –help

 

Install PhaROS based Package

pharos install PACKAGE [OPTIONS]

Example

pharos install esug –location=/home/user/ros/workspace –version=2.0

Help

pharos install –help

 Create PhaROS based Package

pharos create PACKAGE [OPTIONS]

Example

pharos create –location=/home/user/ros/workspace –version=2.0 –author=YourName –author-email=YourEmail

Tip: Be sure the email is a correct one. If is not a correctly spelled one you will notice during last step.
Help
pharos create –help

Register Repository of packages

pharos register-repository –url=anUrl –package=aPackage [ OPTIONS ]

Example

pharos register-repository –url=http://smalltalkhub.com/mc/user/YourProject/main –package=YourProjectDirectory –directory=YourProjectDirectory

Tip: If your repository requires user/password for reading add –user=User –password=Password to the example.
Disclaimer: User/Password will be stored in a text file without any security.
Help

pharos register-repository –help

Listing registered repositories

pharos list-repositories

Creating a directory for your own project repository

pharos create-repository PACKAGENAME [ OPTIONS ]

Example

pharos create-repository example –user=UserName > directory.st
pharos create-repository example –user=UserName  –output= directory.st

Help

pharos create-repository –help

 

 

After initials tests we have made at the lab, we presented our RoboShop project on the 16th of October, as well as during 3 days from 21st to 23rd october in two different events outside our university. The stand was small. Yet we managed to successfully run our demo of a helper robot that targets shopping malls (see video below). We will be presenting even more demos to the public on thursday 28th november as part of the European Robotics Week. We will report them here. Stay tuned.  

In a recent experiment we demoed a scenario of how a robot can be used to help shoppers (see Video below). The robot computes the optimal path for picking items of an arbitrary shopping list. It carries the bag and guides the shopper to items locations.  As we explain in the slideshow (below the video), there are other possible applications of mobile robots in a shopping. We also give a quick overview of hardware and software. We reused some existing ROS packages that we combined with our own software built using the PhaROS client based on Pharo a Smalltalk inspired OO dynamic language.

Video: A Robot Made to Help Shoppers

Slideshow about the RoboShop project

Firstly, assuming you have already installed ROS Groovy and MORSE 1.x.x.

Then you need two additional packages p2os and exploration:

git clone https://github.com/allenh1/p2os.git
svn co https://svn.code.sf.net/p/bosch-ros-pkg/code/trunk/stacks/exploration

Finally, download the attachment (yz_morse_sim), decompress it and enter into the folder morse_sim.

Now, let’s start the simulation!

1. Launch roscore in a terminal window:

roscore

2. Launch MORSE simulator in a new terminal window:

morse run single_robot.py

3. Launch ROS nodes in a new terminal window (This step will also launch gmapping and rivz):

roslaunch single_robot.launch

4. Save the map if you want, in a new terminal window:

rosrun map_server map_saver

Done!

Firstly, assuming you have already installed ROS Groovy and Stage 3.x.x.

Then you need two additional packages p2os and exploration:

git clone https://github.com/allenh1/p2os.git
svn co https://svn.code.sf.net/p/bosch-ros-pkg/code/trunk/stacks/exploration

Finally, download the attachment (yz_stage_sim), decompress it and enter into the folder stage_sim.

Now, let’s start the simulation!

1. Launch roscore in a terminal window:

roscore

2. So, you have three options to implement the exploration: teleoperation, exploration and exploration with SLAM, in a new terminal window:

roslaunch teleop.launch (or explore.launch, or explore_slam.launch)

3. You can track the exploration progress by using rviz, in a new terminal window:

rosrun rviz rviz -d stage.rviz

4. If you want build a map by teleoperation, in a new terminal window:

rosrun gmapping slam_gmapping scan:=base_scan

5. Save the map, in a new terminal window:

rosrun map_server map_saver

Done!

Zhi YAN (Web Page) is a new postdoc in our team since september, 15th 2013. He will work 12 months on our CAIRE project. Today, Zhi presented us some of its work during its PhD.

Presentation title: Tasks and motion planning for multi-robot systems

Summary: This presentation focuses on the issue of multi-robot coordination from the standpoint of planning, which contains task planning and motion planning.
Two new approaches are proposed for the task planning. The first one is a decentralized approach based on trading rules. This approach is designed to simulate the relationship between buyers and sellers in a business system, to achieve dynamic task allocation by using a mechanism of unsolicited bid. The second approach is an heuristic one which is based on an empirical model. It is designed to assign the transportation task to individual robots by estimating the production rate of goods in a centralized system.
Two new approaches are proposed for the motion planning. Both are sampling-based approaches, designed to plan separate kinematic paths for multiple robots to minimize the issue of waiting situation including congestion, collision and deadlock, in an effective way in order to improve the system planning efficiency. All these proposed approaches have been tested and evaluated through simulation experiments.

Slides (in French)

Videos

At the ESUG 2013 conference, we presented the current status of the RoboShop project. Santiago did a great job and now we are able to run tests of our scenario of a helper robot  in a shopping mall. Based on a map built using laser SLAM, the robot computes the shortest path to fetch items listed by a customer in a shopping list. The slides below include a video of the first tests. They also give a bird’s eye view of the architecture, where we use Pharo for orchestration. We also reuse existing software from the ROS community through our client PhaROS.


Last may, Dr. Luc Fabresse presented at the ICRA 2013 workshop on Software Development and Integration in Robotics (SDIRIII) our first results in the CAIRE project. It’s about a first version of BoTest, a first version of a UnitTest framework based on the work done in eXtreme Programming, that we adapted to the context of robotics. We give a glimpse of experiments we are doing with our robots. The slides of the presentation are available below.

 

In the RoboShop project, we aim at developing a platform for robotic applications in a shopping mall. We took the decision to use ROS, the robotic middleware backed by the Open Source Robotic Foundation. We also wanted to continue using our favorite language Pharo. This is how we end up developing PhaROS, a client for Pharo-based ROS nodes.

Today, we are glad to announce that the first version of PhaROS is now officially available, that is there is :

There is still much to do in PhaROS, and more broadly in the RoboShop project. But, so far we already have a PhaROS node that wraps the robot that we are using. We connected it to the gmapping SLAM algorithm and we have used it to buid a map of our lab. More to come soon.