Feeding Pose Data to PX4

This section outlines the steps in sending the pose data to the PX4.

With the pose data being streamed on an individual topic within ROS on the raspberry Pi, the flight controller must be set so it can accept the the external pose data. PX4 has two state estimators, EKF2 (default estimator) an extended Kalman filter, and LPE which is a local position estimator.

At this moment the Clover is configured to stream pose data on the mavros vision topic (/mavros/vision_pose/pose) being the same one used for the ArUco marker system. The mocap topic (/mavros/mocap/pose) is not active in the mavros.launch from Clover. This is fine as both estimators can use the vision pipeline where EKF2 strictly uses the vision one and LPE can use both mocap or vision pipelines. More details can be found here.

Some MAVROS plugins are disabled by default in the clover package in order to save resources. For more information, see the plugin_blacklist parameter in /home/pi/catkin_ws/src/clover/clover/launch/mavros.launch.

It is recommended in the PX4 website to use the EKF2 estimator with the PX4 instead of the LPE as it is better tested and supported therefore that is the estimator that will be used.

A generalized parameter setup for both firmware versions can be found on the Clover website, where LPE parameters are set for the older firmware and the EKF2 parameters are set for the new PX4 firmware.

Last updated