#Testing Robulab
In this tutorial we will make basic tests to assert that both the robulab robot and the laptop are configured correctly.
We will consider as well configured if we can start a PhaROS node that handle robulab robot, so we can publish motion messages through rostopic pub
command and make it to move.
-
Robulab charged and switched on.
-
Laptop with Ubuntu 14.04
-
ROS Indigo installed on laptop (How to install ROS Indigo in Ubuntu 14.04)
-
Your
.bashrc
file you should look like this:source /opt/ros/indigo/setup.bash source ~/PhaROS-ws/devel/setup.bash ROS_HOSTNAME=localhost ROS_MASTER_URI=http://localhost:11311
-
PhaROS installed (Read: How to Install PhaROS).
-
Create a package for testing. In a terminal run:
$ pharos create testrobulab
-
Be sure that the Pharo image has not any proxies set, or if it has, they are coherent with your network configuration.
-
Robot should be unplugged and free to move.
-
Connect your laptop to UBNT wireless network.
-
Start ROS by running
roscore
in a terminal.$ roscore
If everything goes fine it should print something like this:
... started roslaunch server http://achao:56856/ ros_comm version 1.11.3 SUMMARY ======== PARAMETERS * /rosdistro: <...> * /rosversion: <...> NODES auto-starting new master process[master]: started with pid [4073] ROS_MASTER_URI=http://achao:11311/ setting /run_id to 6e36ef46-005d-11e4-ac41-b8ee65bb26b0 process[rosout-1]: started with pid [4086] started core service [/rosout]
Where
achao
is the hostname of the laptop I am using. -
Open the Pharo image of your PhaROS package. In a terminal execute:
$ rosrun testrobulab edit
-
PENDING Download and install appropriate packages
- Let's install PureROS from CAR/Robulab repository. Open a workspace and execute this:
Gofer new smalltalkhubUser: 'CAR' project: 'Robulab'; package: 'ConfigurationOfPureROS'; load. (Smalltalk at: #ConfigurationOfPureROS) load
-
Open a workspace and execute:
PureROSKompai new scriptKompai1
change it to
scriptKompai2
if you are using Robulab2. This will create a PhaROS node that you can check by executing:$ rosnode list /PharoHandle-1404143614 /rosout
-
Let's check the available topics to publish, in a terminal execute:
$ rostopic list /command_velocity /initialpose /kompai/scan /kompai2/pose /kompai2/trajectory/differential /orientation /rosout /rosout_agg
-
Let's publish some motion message in
/command_velocity
, to do we should userostopic pub <topic id> <topic type> <message>
command. Tip: press [TAB] key to autocomplete: topic id, topic type and get message template.$ rostopic pub /command_velocity geometry_msgs/Twist "linear: x: 0.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 0.1"
And the robot will start to rotate. If so you are done :)
Version 0.1