I want my quadrotor to meet position, velocity and attitude constraints at the same time while flying.
I found the “target_local” topic of “setpoint_raw.cpp” in MAVROS Package can publish position, velocity, acceleration, yaw command to PX4 at the same time. And PX4 User Gudie (Controller Diagrams | PX4 User Guide) show that, the output of the Position Controller is the input of Velocity Controller, and the output of the Velocity Controller is the input of “Acceleration and Yaw to Attitude” part. I have the following questions:
Will the position, velocity, acceleration and yaw commands conflict?
If there is no conflict, how do velocity and acceleration command participate in Controller while position generate another velocity and acceleration by Controller? I found some unofficial explanations on Internet: published velocity and acceleration will be feed forward terms, is that right? Is there any official reference about this?
If published velocity and acceleration will be feed forward terms, how could acceleration be a feedforward term? It seems that the “Acceleration and Yaw to Attitude” part is just a convert rather than a PID controller.
Appreciate for you answer!