|Note: Before starting this tutorial please install the asctec_drivers stack.|
|Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.|
Running the AscTec driverDescription: This tutorial goes over how to run the driver for the AscTec quadrotors, which enables communication with the vehicle over ROS.
Keywords: asctec_drivers, asctec, quadrotor
Tutorial Level: BEGINNER
What does the driver do?
The AscTec driver allows communication to the AscTec quadrotor using ROS messages. The driver publishes state and sensor data to a number of ROS topics. Additionally, the driver listens to control commands (roll, pitch, yaw, and thrust) published on certain topics, and relays those to the vehicle. For more information about the topics and messages supported, see asctec_proc.
The driver is intended to abstract the AscTec hardware as much as possible, allowing for hardware-independent tools to be built on top of it.
Starting the driver
The asctec_proc package provides an example launch file that you can use to quickly get started. To run it, simply type:
1 roslaunch asctec_proc asctec_driver.launch
The launch file sets the correct communication parameters for the serial port, and enables polling of the IMU_CACDATA and LL_STATUS message structures. You can select what input/output messages you want to publish by setting the corresponding parameters, as described in asctec_autopilot and asctec_proc.
Nodelet version (recommended)
The asctec_proc package also provides a nodelet launch file, which offeres improved performance. To run it, type:
1 roslaunch asctec_proc asctec_driver_nodelets.launch
the parameters in this example launch file are the same as the ones in the node launch file.
Testing the results
To test that the driver is running correctly, try listening to a message topic that is being published. For example, run:
1 rostopic echo /mav/imu
You should see live messages being like this one being continuously published"
--- header: seq: 23022 stamp: secs: 1299286011 nsecs: 58530483 frame_id: imu orientation: x: 0.0115124367292 y: 0.000402673674817 z: -0.0251096785923 w: -0.999618330012 orientation_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] angular_velocity: x: 0.0148137513503 y: 0.00861890987654 z: -0.0134670466821 angular_velocity_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] linear_acceleration: x: -0.008829 y: 0.247212 z: -10.003257 linear_acceleration_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]