RaposaNgSoftware: Difference between revisions

From ISRWiki
Jump to navigation Jump to search
Line 44: Line 44:
If it pings, you are connected!
If it pings, you are connected!


== Use RAPOSANG ROS messages ==
== Connect to RAPOSANG ROS ==


Everytime you wish to connect to ROS master in RAPOSA (e.g acquire data) open a new terminal and run both commands:
Everytime you wish to connect to ROS master in RAPOSA (e.g acquire data) open a new terminal and run both commands:

Revision as of 17:02, 30 October 2013

File:Icon raposa.png
RAPOSA-NG

About

This page presents instructions and software for our customized version of RAPOSA-NG.

For more information, please use the redmine page: http://rm.isr.ist.utl.pt/projects/raposa/wiki/Main_Page

Access

To gain access to RAPOSA-NG session, svn network, etc:

Username: raposang
Password: raposa2011 

It is advisable to install ssh-server:

sudo apt-get install openssh-server

Connect to RAPOSANG

Connect to the main AP using an ethernet cable with a static IP.

To configure a static IP for raposa AP, click on the Network icon in upper right desktop, then "Edit Connection -> Wired -> Add -> IPv4 Settings"

Pick Manual in Method and add a new IP with the following config:

Address: 192.168.0.15

Netmask: 255.255.255.0

Gateway: 192.168.0.250

Connect using this new connection.

Afterwards, edit your /etc/hosts and add the following line (might need sudo):

192.168.0.1 raposang

To check if you are connected to RAPOSA, run:

ping raposang

If it pings, you are connected!

Connect to RAPOSANG ROS

Everytime you wish to connect to ROS master in RAPOSA (e.g acquire data) open a new terminal and run both commands:

export ROS_HOSTNAME=sa

and

ROS_MASTER_URI=http://raposang:11311

Software

All software needed for RAPOSA-NG control is preinstalled in RAPOSA-NG and stored in svn.

To download latest trunk version, please use the following command:

svn co svn://svn.isr.ist.utl.pt/raposa/raposang/trunk/raposang_ros /home/raposa/ros

Usage

RAPOSA-NG uses two different battery sources for the electronics and motors, respectively. Please assure that both batteries have a buzzer attached while connected to RAPOSA-NG, and make sure that both batteries and Buzzers are detached from one another after usage.

Use the red button to power on/off the motors, and the green button to power on/off the electronics using batteries. The gray button is used to power on/off the CPU, and it can only be powered if either the green button is on with batteries attached, or an external feed is being used.

Stacks and Packages for ROS

RAPOSA-NG has dozens of stacks with multiple packages. The fundamental ones are:

  • raposang_common:
    • raposang_msgs: Common messages used by raposang packages.
    • raposang_launch: Common launches used by raposang packages.
  • raposang_control:
    • raposang_drivers: Driver needed for RAPOSA-NG basic control and odometry readings.
    • raposang_joy: Bridge for controlling RAPOSA-NG using the output from a joypad.

Nodes

  • motors -- interfaces the motor controllers: sends motor velocity commands and receives encoder readings
  • sensors -- interfaces the sonars (currently disabled) and the battery sensors
  • joydrive -- node to control the robot using a gamepad
  • keydrive -- node to control the robot using the keyboard

Subscribed topics

  • /scout/motion (ScoutMotionMsg) -- reference velocities for each wheel (velocity_left and velocity_right) in raw units and an enable flag

Published topics

  • /scout/battery (ScoutBatteryMsg) -- voltages (in V) of batteries (battery1) and external power supply (battery2)
  • /scout/sonars (ScoutSonarsMsg) -- (DISABLED BY DEFAULT) array of sonar readings
  • /scout/motors (ScoutMotorsMsg) -- encoder counter for each wheel (count_left and count_right) in raw units

Examples

An example of a launch file to launch all scout nodes (locally)

<launch>
	<node name="motors"   pkg="scout_driver"  type="motors"/>
	<node name="sensors"  pkg="scout_driver"  type="sensors"/>
	<node name="joy"      pkg="joy"           type="joy_node"/>
	<node name="joydrive" pkg="scout_driver"  type="joydrive"/>
</launch>

NOTE: you need to modify these file in order to launch the nodes remotely.