Regelungstechnik.c


1
//
2
// Created by alexn on 23.06.2023.
3
//
4
5
#include "Regelungstechnik.h"
6
void config_Integrator(Integrator *data,float K){
7
    data->K = K;
8
}
9
10
void add_val_Integrator(Integrator *data,float newval,float dt){
11
    data->val += newval * data->K * dt;
12
}
13
14
void config_P(P *data,float K){
15
    data->K=K;
16
}
17
18
void recall_P(P *data,float val){
19
    data->val= val * data->K;
20
}
21
22
void config_PI(PI *data,float KP,float KI){
23
    config_P(&data->P,KP);
24
    config_Integrator(&data->I,KI);
25
}
26
27
void add_val_PI(PI *data,float newval, float dt){
28
    add_val_Integrator(&data->I,newval,dt);
29
    recall_P(&data->P,newval);
30
    data->val=data->P.val+data->I.val;
31
}