rosflight_pkgs: rosflight | rosflight_firmware | rosflight_msgs | rosflight_sim | rosflight_utils

Package Summary

Package for interfacing to the ROSflight autopilot firmware over MAVLink

rosflight_pkgs: rosflight | rosflight_firmware | rosflight_msgs | rosflight_sim | rosflight_utils

Package Summary

Package for interfacing to the ROSflight autopilot firmware over MAVLink

Overview

This package provides a ROS interface to an autopilot running the ROSflight firmware. For more documentation, see http://rosflight.org.

Sample Usage

The following command will run the node that interfaces the autopilot with ROS running on the onboard computer (this must be run on a computer that is physically connected to the autopilot via USB or serial):

$ rosrun rosflight rosflight_io _port:=/dev/ttyUSB0

Nodes

rosflight_io

Interfaces between ROS on the onboard computer and the ROSflight firmware on the autopilot. Streams sensor data to the onboard computer and control and configuration commands to the autopilot. Sensor stream topics are only advertised if they are being transmitted by the autopilot.

Subscribed Topics

command (rosflight_msgs/Command)
  • Control setpoint to send to the autopilot. The interpretation of the setpoint values depends on the value of the mode field. Which setpoint values to listen to can be controlled by setting the bits of the ignore field.

Published Topics

imu/data (sensor_msgs/Imu)
  • Inertial measurement unit (IMU) data (3-axis accelerometer, 3-axis gyro) in the NED frame
imu/temperature (sensor_msgs/Temperature)
  • Temperature from the IMU's internal sensor
magnetometer (sensor_msgs/MagneticField)
  • 3-axis magnetometer data in the NED frame
baro (sensor_msgs/Barometer)
  • Barometer measurement, including pressure, temperature, and computed altitude
sonar (sensor_msgs/Range)
  • Distance measurement from an ultrasonic rangefinder, if attached
attitude (rosflight_msgs/Attitude)
  • Attitude estimate from the autopilot, including orientation and angular velocity in the NED frame
attitude/euler (geometry_msgs/Vector3Stamped)
  • Attitude estimate from the autopilot as Euler angles, in the NED frame
rc_raw (rosflight_msgs/RCRaw)
  • Raw RC inputs to the autopilot
output_raw (rosflight_msgs/OutputRaw)
  • Raw motor/servo outputs from the autopilot
status (rosflight_msgs/Status)
  • Status of the autopilot, including armed state, failsafe state, and error states
unsaved_params (std_msgs/Bool)
  • Whether there are parameters that have been set on the autopilot but not saved to non-volatile memory
version (std_msgs/String)
  • String describing the firmware version running on the autopilot
named_value/int/<name> (std_msgs/Int32)
  • Raw named integer value sent from autopilot (used for debugging purposes)
named_value/float/<name> (std_msgs/Float32)
  • Raw named floating point value sent from autopilot (used for debugging purposes)

Services

param_get (rosflight_msgs/ParamGet)
  • Gets the value of an autopilot parameter by name
param_set (rosflight_msgs/ParamSet)
  • Sets the value of an autopilot parameter by name
param_write (std_srvs/Trigger)
  • Writes all autopilot parameters to non-volatile memory
param_save_to_file (rosflight_msgs/ParamFile)
  • Saves all current autopilot parameters to specified file on onboard computer
param_load_from_file (rosflight_msgs/ParamFile)
  • Sets values of autopilot parameters to those saved in the specified file on the onboard computer
calibrate_imu (std_srvs/Trigger)
  • Starts an IMU calibration
calibrate_rc_trim (std_srvs/Trigger)
  • Sets the equilibrium feed-forward commands to those specified by the current RC trim setpoints
calibrate_baro (std_srvs/Trigger)
  • Calibrates the barometer
calibrate_airspeed (std_srvs/Trigger)
  • Calibrates the airspeed sensor
reboot (std_srvs/Trigger)
  • Reboots the autopilot
reboot_to_bootloader (std_srvs/Trigger)
  • Reboots the autopilot to the bootloader for flashing firmware

Parameters

~port (string, default: /dev/ttyUSB0)
  • Serial port to which the autopilot is connected
~baud_rate (int, default: 921600)
  • Baud rate for the autopilot serial connection
~frame_id (string, default: world)
  • The frame in which sensor data will be returned
~udp (bool, default: false)
  • If true, use UDP instead of UART serial. Used for Gazebo software-in-the-loop simulator.
~bind_host (string, default: localhost)
  • UDP bind host name
~bind_port (int, default: 14520)
  • UDP bind port
~remote_host (string, default: value of bind_host parameter)
  • UDP remote host name
~remote_port (int, default: 14525)
  • UDP remote port

Wiki: rosflight (last edited 2018-03-13 17:13:07 by DanielKoch)