giving velocity commands

Hi Everyone!

I am rather new to ROSflight, (i've been going through all possible other flight controllers...). I would like to know whether it is possible to feed a velocity command to ROSflight, for example go in direction v=(x,y,z) in local coordinates at a certain speed, instead of giving position commands.
If it is easy to do, please let me know how, if it could be implemented, then please give me some pointers and I'll try to make it work.

Thanks again!


  • Hi @arta, welcome! Velocity control is not implemented in the ROSflight firmware. ROSflight is intended as a lean research platform, and since velocity estimates require measurements from another sensor beside IMU that might vary between applications, we have decided to leave that to the user to implement.

    If you do want to implement velocity control, you'll need a velocity estimator (and a sensor like GPS, visual odometry, optical flow, etc.), and a controller that takes in velocity commands and outputs either angle or angular rate commands to the flight controller. More info on how to interface with the flight controller is found in the documentation.

    There is some related work ongoing with the ROScopter project; it's still under development and I believe not really ready for use in the wild yet, but it might give you some ideas on how to proceed.

    Hopefully that's helpful, please feel free to follow up with further questions.

  • Thank you for the prompt answer. My solution will have a velocity sensor, but no GPS, so I will see what can be done at that end.

Sign In or Register to comment.