RIT VEXU Core API
Toggle main menu visibility
Loading...
Searching...
No Matches
pidff.h
1
#pragma once
2
#include "core/utils/controls/feedback_base.h"
3
#include "core/utils/controls/feedforward.h"
4
#include "core/utils/controls/pid.h"
5
6
class
PIDFF :
public
Feedback
{
7
public
:
8
PIDFF(PID::pid_config_t &pid_cfg, FeedForward::ff_config_t &ff_cfg);
9
18
void
init(
double
start_pt,
double
set_pt)
override
;
19
24
void
set_target(
double
set_pt);
25
26
double
get_target()
const
;
27
double
get_sensor_val()
const
;
35
double
update(
double
val)
override
;
36
45
double
update(
double
val,
double
vel_setpt,
double
a_setpt = 0);
46
50
double
get
()
override
;
51
59
void
set_limits(
double
lower,
double
upper)
override
;
60
64
bool
is_on_target
()
override
;
65
66
void
reset();
67
68
PID pid;
69
70
private
:
71
FeedForward::ff_config_t &ff_cfg;
72
73
FeedForward ff;
74
75
double
out;
76
double
lower_lim, upper_lim;
77
};
Feedback
Definition
feedback_base.h:10
Feedback::get
virtual double get()=0
Feedback::is_on_target
virtual bool is_on_target()=0
include
core
utils
controls
pidff.h
Generated by
1.17.0