Skip to content

Conversation

@Jaeyoung-Lim
Copy link
Member

@Jaeyoung-Lim Jaeyoung-Lim commented Sep 18, 2022

Describe problem solved by this pull request

The fw_att_control module were controlling both attitude and body rate setpoints. While this has been working great, this makes it hard to integrate other control methods on either side of the cascasded loop.

Therefore, this PR proposes adding a separate fw_rate_control module that pulls out the rate control functionality from the fw_att_control module.

Describe your solution

This PR adds a fixed wing rate control module, where we can potentially swap out the controller to other controllers(out of tree modules)

Adding the rate controller as a separate module has the following advantages

  • We can run the rate controller at a faster rate, that is appropriate for attitude control
  • makes the control framework more modular, for example we can now switch the rate controller to different rate control methods (e.g. indi @kimnerd FYI)
  • Cleaner interface between rate control and attitude control so that the interface for each cascaded control is clearly defined
  • This moves us closer to a unified rate controller for VTOLs

This is still a WIP, and I have noticed a few things that needs to be resolved before we can actually merge this approach

Test data / coverage

Tested in SITL

Additional context

@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch 2 times, most recently from 242309b to a239974 Compare September 18, 2022 14:18
@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch 7 times, most recently from 3e9cdeb to 823f655 Compare September 18, 2022 15:32
@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch 2 times, most recently from 3e81672 to e8b3149 Compare September 19, 2022 11:32
@Jaeyoung-Lim
Copy link
Member Author

Backported #20286

@Jaeyoung-Lim
Copy link
Member Author

Rebased

@Jaeyoung-Lim
Copy link
Member Author

Rebased on top of #20502

@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch 2 times, most recently from f87cfa7 to 320f77a Compare October 30, 2022 08:28
@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch from 320f77a to a79c140 Compare November 23, 2022 14:20
@sfuhrer
Copy link
Contributor

sfuhrer commented Dec 22, 2022

I flight tested it today on a small tiltrotor VTOL: https://review.px4.io/plot_app?log=ac92bb1e-befe-4afe-9240-198dfdfacd2b. Didn't notice anything extraordinary so far, looks all good!

@Jaeyoung-Lim
Copy link
Member Author

@dagar @tstastny Any outstanding issues before we can get this in?

@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch from c0d47dd to 323d9c6 Compare December 29, 2022 19:05
@Jaeyoung-Lim
Copy link
Member Author

Rebased

Jaeyoung-Lim and others added 21 commits January 4, 2023 16:32
This commit separates the rate control functionality out of fw_att_control
@Jaeyoung-Lim Jaeyoung-Lim force-pushed the pr-fw-rate-control-module branch from 4b12ebf to 86f63fe Compare January 4, 2023 15:32
@dagar dagar merged commit 21e88f6 into main Jan 4, 2023
@dagar dagar deleted the pr-fw-rate-control-module branch January 4, 2023 16:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants