Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Smith Predictor #782

Draft
wants to merge 4 commits into
base: emuflight-1.0.0-master
Choose a base branch
from

Conversation

nerdCopter
Copy link
Member

@nerdCopter nerdCopter commented Mar 29, 2022

Smith predictors feed inverse delay into a system in order to reduce delay of a system. Here it is used to help remove delay from filtering with a simple time delay model. Seems to work fairly well. The settings are the strength, delay, and filtering. Filtering adds a pt1 filter over the prediction to help reduce noise. Strength decides how much of the prediction we use, AKA a strength of 50 uses half the prediction. Delay decides how many ms/10 of delay the predictor will try to compensate for, AKA a value of 40 tries to account for 4.0 ms of delay.

For logging set the debug mode to smith_predictor. Debug 0 is the input, debug 1 is the output, debug 2 is the gyro sample it is using for the prediction, and debug 3 is the amount that the predictor changes the input.

src/main/sensors/gyro.c Outdated Show resolved Hide resolved
@nerdCopter nerdCopter marked this pull request as draft May 2, 2022 13:16
@nerdCopter nerdCopter force-pushed the emuflight-1.0.0-master branch 2 times, most recently from 07ddd2b to 7015291 Compare May 22, 2022 20:05
@nerdCopter nerdCopter force-pushed the 20220329_cherry_pick_Smith_Predictor branch from 32e6390 to d33f104 Compare May 26, 2022 13:30
@nerdCopter nerdCopter force-pushed the 20220329_cherry_pick_Smith_Predictor branch from d33f104 to f67b904 Compare May 26, 2022 15:50
@nerdCopter nerdCopter force-pushed the 20220329_cherry_pick_Smith_Predictor branch from f67b904 to bd2dcf3 Compare June 2, 2022 15:04
@nerdCopter nerdCopter force-pushed the emuflight-1.0.0-master branch 2 times, most recently from 0c4ee8b to 3aab740 Compare June 11, 2022 20:52
@nerdCopter nerdCopter force-pushed the 20220329_cherry_pick_Smith_Predictor branch from bd2dcf3 to a6f248a Compare July 6, 2022 16:23
@nerdCopter nerdCopter force-pushed the 20220329_cherry_pick_Smith_Predictor branch from a6f248a to a114582 Compare July 15, 2022 14:47
@nerdCopter nerdCopter force-pushed the emuflight-1.0.0-master branch 2 times, most recently from fe70257 to fe7710c Compare November 22, 2022 19:11
@nerdCopter nerdCopter force-pushed the 20220329_cherry_pick_Smith_Predictor branch from a114582 to e699c49 Compare November 22, 2022 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants