You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the FCU is working with the NED frame and ROS is working with the ENU frame.
Mavros takes care of the transforms between the two frames.
So if you want to send a setpoint to the FCU, it must be defined in ENU frame (X forward and Z up), Mavros will do the transform in NED coordinates.
Conversely when you want to read the current pose of the quadrotor, you can use mavros/local_position/pose, mavros will do the transformation so that you will read the pose in ENU as well
i don't think it is a good idea to revise the frame constants in 'PositionTarget.msg'. Because these frame constants are also used in some mavros plugin cpp files such as 'setpoint_raw.cpp', which means you should revise all the mavros plugins that involves the 'PositionTarget.msg' in the meantime. so it is not necessary.
For beginners, this is confusing. However the README.md file in mavros has explained this very carefully.
I do not think that it's good change because it's copy of MAV_FRAME (old one...).
And also mavros is beyond 1.0.0, so i would rather keep API stable. It's ok to add new items, add comments, that won't make it incompatible with existing user's code.
http://docs.ros.org/en/api/mavros_msgs/html/msg/PositionTarget.html
#1084 (comment)
Just like the @FaboNo said
While in the documentation in http://docs.ros.org/en/api/mavros_msgs/html/msg/PositionTarget.html, FRAME_LOCAL_NED and FRAME_BODY_NED are still used. It can misguide many beginners of mavros like me.
So I suggest to rename these FRAM CONSTANT like this:
mavros/mavros_msgs/msg/PositionTarget.msg
Lines 8 to 12 in c9adcfb
The text was updated successfully, but these errors were encountered: