|
int16_t pid_Controller(int16_t setPoint, int16_t processValue, struct PID_DATA *pid_st) -----------这里边提到的PID算法是位置式还是增量式的?
{
。。。。。。。。。。。。。。。
ret = (p_term + i_term + d_term) / SCALING_FACTOR;
if(ret > MAX_INT){
ret = MAX_INT;
}
else if(ret < -MAX_INT){
ret = -MAX_INT;
}
return((int16_t)ret);
}
main.c 中
inputValue = pid_Controller(referenceValue, measurementValue, &pidData);
void Set_Input(int16_t inputValue)
{
; 设置占空比,或者DA的输出值时,怎么设置一个负值呢? 因此这就是所谓的增量式PID,非位置式,使用的时候是在原占空比或者DA值得基础上加上inputValue(pid输出值得),我理解的对吗?
} |
|