TA的每日心情 | 开心 2020-7-28 15:35 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
由51单片机组成的数字控制系统控制中,PID控制器是通过PID控制算法/ N. `% _# i n3 x
实现的。51单片机通过AD对信号进行采集,变成数字信号,再在单片机中通过2 E( ]7 j4 l' F3 h$ ~) l8 f3 F5 ^5 `( Z
算法实现PID运算,再通过DA把控制量反馈回控制源。从而实现对系统的伺服
- M8 a# ~* e- k( R5 {) w2 [控制。
! a+ [$ L* X# }7 k) e/ u( v) ?% x(2-4 )表示的控制算法直接按(2-1 )所给出的PID控制规律定义进行计算3 {$ w) j# ?0 p6 {3 b
的,所以它给出了全部控制量的大小,因此被称为 全量式或位置式PID控制算法。
+ N. z% J5 S4 l' E. `缺点:
5 l: P/ G- M8 x* x! g- Z1)
. c L2 t3 ]9 t/ B- p q8 q由于全量输出,所以每次输出均与过去状态有关,计算时要
1 u0 G9 g; X) d% I+ f5 \3 U对e(k)(k=0,1,,n)进行累加, 工作量大。.
4 m' F1 K9 s. Q4 s2)
+ F& I5 a. Z6 h- x7 S. J因为计算机输出的u(n) 对应的是执行机构的实际位置,如果
) r6 `- t" G$ O# U+ G t计算机出现故障,输出 u(n) 将大幅度变化,会 引起执行机构的大幅度变
; f2 c' r6 m; O& t$ l化,有可能因此造成严重的生产事故,这在实际生产中是不允许的。.( Q/ @1 _+ c; y g0 i5 C1 F4 r( B) j
位置式PID控制算法C51程序
% W, I4 z# H! t) ?具体的PID参数必须由具体对象通过实验确定。由于 单片机的处理速度和( A- _5 p6 o5 z( \ S1 @* r' O- s- Y! {
ram资源的限制,一般不采用浮点数运算,而将所有参数全部用整数,运算
) Z+ r1 V" }# a' X; g- i4 L到最后再除以一个2的N次方数据(相当于移位),作类似定点数运算,可大大
; [" h9 K# {3 h7 L, @7 h O1 t5 [5 K提高运算速度,根据控制精度的不同要求, 当精度要求很高时, 注意保留移位引& ]9 o: T* G3 X6 [ `/ S: M* h9 a3 t
起的“余数”,做好余数补偿。 这个程序只是一-般常用 pid 算法的基本架构, 没0 W4 e$ O3 |. i7 \" V7 ~8 @$ D+ F2 }
有包含输入输出处理部分。
& G' a \8 B( ^: t, e7 e: s
4 C1 y& _) N) o& Q. n
& |$ ~# K: @! u' c, z
5 ?8 u0 m; `+ S# p; x. k* W |
|