RIT VEXU Core API
Loading...
Searching...
No Matches
take_back_half.h
1#pragma once
2#include "../core/include/utils/controls/feedback_base.h"
3
6class TakeBackHalf : public Feedback {
7
8public:
9 TakeBackHalf(double TBH_gain, double first_cross_split, double on_target_threshold);
18 void init(double start_pt, double set_pt);
25 double update(double val) override;
26
30 double get() override;
31
38 void set_limits(double lower, double upper) override;
39
43 bool is_on_target() override;
44
45 double TBH_gain;
46 double first_cross_split;
47
48private:
49 double on_target_threshhold;
50
51 double target = 0.0;
52
53 bool first_cross = true;
54 double tbh = 0.0;
55 double prev_error = 0.0;
56
57 double output = 0.0;
58 double lower = 0.0, upper = 0.0;
59};
Definition feedback_base.h:10
A velocity controller.
Definition take_back_half.h:6
double get() override
Definition take_back_half.cpp:56
double TBH_gain
tuned parameter
Definition take_back_half.h:45
double update(double val) override
Definition take_back_half.cpp:25
void set_limits(double lower, double upper) override
Definition take_back_half.cpp:58
void init(double start_pt, double set_pt)
Definition take_back_half.cpp:14
bool is_on_target() override
Definition take_back_half.cpp:65