Hi
I am interfacing visual odometry with the px4 running the LPE (Local Position Estimator). I managed to fuse external position estimates:
The graph shows the visual odometry and LPE output from mavros
My Odometry however outputs position and velocity, not just position. So, Does it make sense to feed both to LPE through mavros? That is, I am splitting the odometry message into pose and twist and publish them on
mavros/vision_pose/pose_cov
mavros/vision_speed/speed_twist
The LPE output I see on mavros/local_position/pose
is still looking good. However, next I wanted to check if the twist is actually fused. So I removed the mavros/vision_pose/pose_cov
publisher and only published the twist message. I was no longer observing any pose estimate from LPE:
Same graph as before, but LPE output is no longer present
I checked all of the following topics
/mavros/local_position/odom
/mavros/local_position/pose
/mavros/local_position/velocity
and nothing is being published on either of them.
Some more information:
I did set the mavros parameter vision_speed/listen_twist
to true
. On the px4, I set LPE_FUSION
to 12
, meaning “Fuse vision position and vision yaw”.