TA的每日心情 | 开心 2020-7-28 15:35 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
由51单片机组成的数字控制系统控制中,PID控制器是通过PID控制算法; _ h: L6 Z- X+ T; w
实现的。51单片机通过AD对信号进行采集,变成数字信号,再在单片机中通过
8 v& j) V# D) y+ L% f, W) ^1 ]- ]算法实现PID运算,再通过DA把控制量反馈回控制源。从而实现对系统的伺服
. `6 Y# `% F* h) [控制。
0 [, B, s2 ^6 W; u" c3 w6 i% V2 c(2-4 )表示的控制算法直接按(2-1 )所给出的PID控制规律定义进行计算" @; v% F% n& U$ d& i/ D- L2 @
的,所以它给出了全部控制量的大小,因此被称为 全量式或位置式PID控制算法。% r7 F( J, H& d8 ?, k
缺点:- c6 B$ S1 S4 n/ P- _* v
1)
+ }8 Y3 N3 z, I5 G* z9 N3 D由于全量输出,所以每次输出均与过去状态有关,计算时要0 Y u4 |/ \) G1 ?) r
对e(k)(k=0,1,,n)进行累加, 工作量大。.% [- j0 v6 q9 o( @; ]
2)
. U" G8 g/ E0 [/ U0 F因为计算机输出的u(n) 对应的是执行机构的实际位置,如果$ J8 @) C, H j Z! @. m7 y- V
计算机出现故障,输出 u(n) 将大幅度变化,会 引起执行机构的大幅度变, ~8 L* C' v. c5 @" b
化,有可能因此造成严重的生产事故,这在实际生产中是不允许的。.% W. J: w! k2 p; t; i) H! C {0 g
位置式PID控制算法C51程序
( C, t0 Y. q* Q5 S具体的PID参数必须由具体对象通过实验确定。由于 单片机的处理速度和
/ L* \' C0 F* c1 Tram资源的限制,一般不采用浮点数运算,而将所有参数全部用整数,运算
0 e: j& U9 m4 t1 L; b0 C* }到最后再除以一个2的N次方数据(相当于移位),作类似定点数运算,可大大0 K% z& G8 r; X0 F2 Z& @$ }4 \' H
提高运算速度,根据控制精度的不同要求, 当精度要求很高时, 注意保留移位引
( Y3 `8 Y& }4 C$ J9 h% ]起的“余数”,做好余数补偿。 这个程序只是一-般常用 pid 算法的基本架构, 没
) V- H" k4 P7 S) `3 d7 O有包含输入输出处理部分。) }0 I" z* k! ]2 X4 f
% |1 H }9 u7 r8 c+ r9 o8 |5 G
$ b; `7 u! S1 Q$ S& s; x7 G H1 M7 t
|
|