ethz-asl / mav_trajectory_generation

Polynomial trajectory generation and optimization, especially for rotary-wing MAVs.
Apache License 2.0
528 stars 222 forks source link

API to provide full-orientation constraints #89

Closed chhtz closed 5 years ago

chhtz commented 5 years ago

Unless I missed something, at the moment waypoints can only feature a position or a a position and a yaw angle, while internally they are stored as full orientation using quaternions. It would be nice if it was possible to provide that as well using addConstraint

rikba commented 5 years ago

Thanks for using the library. This library only supports planning in the flat space representation, i.e., [x, y, z, yaw] and it's derivatives. The full state is then derived using the flat state property of the MAV model.

See also https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=5980409 and https://github.com/ethz-asl/mav_comm/blob/master/mav_msgs/include/mav_msgs/conversions.h#L237-L308

Hope that answers your question.

chhtz commented 5 years ago

Thanks for the response! Seems I was not clearly understanding at what point the conversion between XYZ-yaw and full-state was happening. I guess adding that feature into this library is a bit complicated for a feature-request (if you agree, feel free to close this).

I will think about how I can solve the underlying problem (I might even need more selective constraints in the future).