TA的每日心情 | 开心 2020-7-28 15:35 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
由51单片机组成的数字控制系统控制中,PID控制器是通过PID控制算法' j0 t/ |* S' Z' r
实现的。51单片机通过AD对信号进行采集,变成数字信号,再在单片机中通过
7 w& F$ v4 U h# T: b- z算法实现PID运算,再通过DA把控制量反馈回控制源。从而实现对系统的伺服8 d% ]( J* q# G$ o1 F& r
控制。
5 i+ P, h8 x' }5 F: u. _(2-4 )表示的控制算法直接按(2-1 )所给出的PID控制规律定义进行计算
I# x4 D0 i: g; ?; |; Z的,所以它给出了全部控制量的大小,因此被称为 全量式或位置式PID控制算法。. S# z: F/ j+ ?; U3 X, B; x
缺点:$ I# r, O+ Q6 C
1)
/ c F$ N u3 F$ U- e* R. B* S由于全量输出,所以每次输出均与过去状态有关,计算时要
" h0 d2 P8 o2 ]' m5 F0 D对e(k)(k=0,1,,n)进行累加, 工作量大。.
8 i" \/ J! a, ~/ Z; \2)+ J+ M5 l: R1 _% q1 ^, t
因为计算机输出的u(n) 对应的是执行机构的实际位置,如果" _2 \8 K1 ^4 [3 l2 |* O
计算机出现故障,输出 u(n) 将大幅度变化,会 引起执行机构的大幅度变
) h" u4 J, L! f J化,有可能因此造成严重的生产事故,这在实际生产中是不允许的。.
, j. t7 T1 c3 n; q9 h位置式PID控制算法C51程序
6 F: v) L3 i3 y3 O* m6 n" c( V4 Y具体的PID参数必须由具体对象通过实验确定。由于 单片机的处理速度和
0 K- c( `: ^, U {! B, rram资源的限制,一般不采用浮点数运算,而将所有参数全部用整数,运算
$ t2 B0 g% v' R R到最后再除以一个2的N次方数据(相当于移位),作类似定点数运算,可大大9 s8 } w6 v9 Y& Z# _$ t
提高运算速度,根据控制精度的不同要求, 当精度要求很高时, 注意保留移位引# P; |" t" H1 n7 {$ O4 p
起的“余数”,做好余数补偿。 这个程序只是一-般常用 pid 算法的基本架构, 没3 x* S2 i8 v/ K Z9 ~; |& E) L4 E
有包含输入输出处理部分。. l: Y1 d B- f- {5 }; T2 [
h& [$ Y F& N- c3 x2 K2 g
3 k* w' }8 ^$ r2 p4 c, `2 {
0 Y; l5 B& v& D" I) b2 z& I |
|