QuadSoftware: Difference between revisions

From ISRWiki
Jump to navigation Jump to search
(Created page with "thumb|Quadrotor Platform == About == This page presents instructions and software for our customized versions of Nomadic Scouts. This customization...")
 
No edit summary
Line 3: Line 3:
== About ==
== About ==


This page presents instructions and software for our customized versions of Nomadic Scouts. This customization was performed by [http://www.idmind.pt IdMind] and includes new electronics. These platforms include a nowadays obsolete Pentium  III motherboard, and so it is only appropriate to run the ROS drivers for the hardware (motors and sensors). So the suggested architecture is to use an external laptop for the main software, connecting via a ethernet cable the platform motherboard. The driver nodes can be remotely launched using roslaunch.
This page presents instructions and software for ISR Quadrotors. This vehicle includes a Pandaboard Computer that is not recommended to do heavy computing, and so it is only appropriate to run the ROS drivers for the hardware (motors and sensors). So the suggested architecture is to use an external laptop for the main software, connecting via Wi-Fi to the quadrotor. The driver nodes can be remotely launched using roslaunch.


== Software ==
== Software ==

Revision as of 14:26, 1 October 2013

Quadrotor Platform

About

This page presents instructions and software for ISR Quadrotors. This vehicle includes a Pandaboard Computer that is not recommended to do heavy computing, and so it is only appropriate to run the ROS drivers for the hardware (motors and sensors). So the suggested architecture is to use an external laptop for the main software, connecting via Wi-Fi to the quadrotor. The driver nodes can be remotely launched using roslaunch.

Software

The source code can be found here: ros_scout-1.0.tgz. All platforms already include a scout directory at home with this software, whose packages are accessible via ROS_PACKAGE_PATH.

Usage

Packages

  • scout_drivers -- contains the main drivers
  • scout_msgs -- defines the message types employed by the drivers
  • joy -- a copy of the joy package compatible with the Scout software

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.