摘要 本文介绍了一种基于AT89S51的液位控制系统。该系统能对液位进行巡回检测、显示和报警,同时采用增量式PID控制算法对液位进行智能控制。
i0e8ug]$C7b44606关键词 液位 微处理器 智能控制
JY^ V+vw6B} r44606
KKw"~dg^4Xg446060 前言电子园51单片机学习网i3WcJ#|+w4C9f x:Ob l
!~;{T&V!m@44606 液位是许多工业生产中的重要参数之一,在化工、冶金、医药、航空等领域里,对液位的测量和控制效果直接影响到产品的质量。由于单片微型计算机具有体积小,耗电少,控制精度高,运行可靠等的特点,所以广泛应用于生产实际中。本文讨论了一种以AT89C51为核心研制的液位控制系统,该系统不仅能对液位进行巡回检测、显示和报警,同时也能对液位进行智能控制。电子园51单片机学习网T"c1a7M-N-B ~r[
电子园51单片机学习网A#L4P&UO/nV~电子园51单片机学习网%ql5QP(o8AL:o:w/f!L
1{(WwO4zsq446061 系统硬件设计电子园51单片机学习网A-i(hp:`9N9f$d| f
9`!R `Z O T y1`+l,A44606 系统硬件组成框图如图1所示。主要由AT89S51、输入电路组成和输出电路组成。
\$s \jG:{44606vW0|7KMCz44606
电子园51单片机学习网8c7gan!v)V
图1 系统硬件组成框图
*_5i5]3hs44606 电子园51单片机学习网&\ R@.O;c8S2Z电子园51单片机学习网b X Oy*j4Q1J*y#k
gV0U'\^*wSc^;~446061.1 微机系统电子园51单片机学习网m7y dl%t;G$v |
y"_X I,r.]44606系统的核心部分是一片AT89S51微处理器。这是一种与MCS –51系列芯片兼容,带有4KB闪速可擦除只读存储器的低功耗、高性能CMOS结构的8位微处理器。它除正常工作外还可工作于低功耗的闲置和掉电模式,进一步减少了芯片的功耗。其内部除了配有4K的FLASH,还具有128字节的RAM、2个16位定时器/计数器,5个两级中断源结构,32位并行输入/输出口和一个全双工的串行口,看门狗定时电路等。由于AT89C51集FLASH、RAM、I/O、串行口于一体,所以只须配置少量的外围电路,就能构成液位智能控制系统,整个系统的结构十分紧凑。这种紧凑的结构,有助于降低功耗、提高系统的可靠性。电子园51单片机学习网 Z3_!v}Y*D
电子园51单片机学习网 o*t(u?Px+G],u1.2 键盘、显示和报警部分
u3HPSY6z&E#o9T446064C3luY'v5L6rh*P44606P1.0 ~ P1.5作为键盘的接口,连接一个2×4的键盘。分别实现液位上、下限显示、液位上、下限的设定等功能。显示器由4位LED组成,用于实时显示各个液位的高度,以及显示液位的上、下限值。
L N%`,M"UI$l8~-frDX_446066}|(]&V I'_B44606报警功能是当液位的高度超出设定值范围时,进行声、光报警。电子园51单片机学习网)G6u(v/q,c5?
电子园51单片机学习网!q UhXX/|;P0wL1.3 数据采集和输出控制部分
4s-i&L+O#Q)V%Q6k HCj(P44606 电子园51单片机学习网&fb4^Ov6S4{}1_0?数据采集部分由液位变送器、放大电路和A/D转换器组成。液位变送器的输出为4 ~ 20mA的电流信号,经过转换放大电路转换成A/D0809所能接收0 ~ 5V电压信号。在AT89C51单片机的控制下,实时采集液位数据,并对数据进行处理。
+D g!b+B8cAs\T44606`mb8F0}%xdu44606 输出控制部分根据PID算法所的结果,通过步进电机对流量阀进行控制,实现液位控制的目的。电子园51单片机学习网H/~'q*\Z ~
电子园51单片机学习网 Ix` sV:J)]x:?\;A%t/ZIs?,n8r}9r W44606
5CHK)PbFa1c446062 软件设计
0Q h#yaw| U e%cW&I44606 电子园51单片机学习网K2R yNnz系统软件主要由主程序、采样程序和PID算法程序和一些子程序组成。电子园51单片机学习网 s{S H'G
电子园51单片机学习网#]@8ncYq(x2.1 主程序电子园51单片机学习网bNoZ@0K4o
+e#X5kp f44606 主程序的流程图如图2所示。电子园51单片机学习网d c fv?5{
D+LY)b?.B di6Lo |X44606
电子园51单片机学习网+t,Q7Y/? A#y7~(J}
图2 主程序流程图
x1NNm;n44606$kqnXW6}1uC44606 主程序的主要功能是完成AT89C51的初始化,设置液位的上限和下限,显示实时液位值,键扫描等工作。
(f6M-o H t)~f44606 电子园51单片机学习网&ynI,E]R5aU2.2 采样和数据处理模块
'`V5W0k? r a5F;X0~6p44606 电子园51单片机学习网 y/J(@ _0@K#pa3n本系统利用定时循环轮流对8个液位进行实时采样,对实时数据进行数据处理,并采用PID控制方案。
e7]%F(|+k.g&r44606由于本系统的执行机构是步进电机,所以我们采用了增量式PID控制。根据递增原理可得
+l@ EOA$b]y {44606-_B[%xZMF]5C44606 电子园51单片机学习网 uU ~ nU&R?4x
;J#Sdo M#H d6]44606根据以上推导,得到增量式PID控制算法的程序流程图如图3所示。
z ky E-BBr5Z44606 电子园51单片机学习网 w2^A2\&w){j4LF2y;yw C44606
R#cSs*aGp44606
电子园51单片机学习网1j_3l6Ed;t
图3 增量式PID控制算法的流程图
'AEBi4r ~Y e3GIf"{44606+~XPL r t[446062.3其他功能电子园51单片机学习网$z N,U${i]3i#S
电子园51单片机学习网 `mJ2z{~5X用户可以通过键盘设定液位的上限值和下限值,以及在任意时候显示液位的上下限值。当液位的高度超出或低于设定值时,进行声光报警,以提醒操作人员进行及时的处理。电子园51单片机学习网 d*q?^5@u6m#]O9g B2\`
cx V oLy44606 电子园51单片机学习网_8^+b0rA],Q
电子园51单片机学习网MO+C2M0Z&R;V$_:G3 抗干扰对策电子园51单片机学习网iG,roGAZ_
:O3z#x H,NRv446063.1硬件抗干扰设计
U^Lk B$ET}44606 电子园51单片机学习网 i y:iY4`系统电源是一个重要部件,又是与外部电网直接联系的部分,为了防止从电源系统引入干扰信号,在电源输入端设置低通滤波器,滤去高次谐波成份。另外还采用了AT89S51中的看门狗定时器,以进一步提高系统硬件抗干扰的能力。
Cc)IY|;k1q:_44606 电子园51单片机学习网|4wU-FIf r3.2软件抗干扰设计电子园51单片机学习网c!m0I Jbakp
电子园51单片机学习网9H3Q u*IxF|YL在程序设计时,将各程序模块分区存放,彼此之间空出一些存储单元,在这些单元中填充FF(RST指令)。同时对程序中重要的跳转和调用子程序指令前均加入三个NOP指令,以保证程序流向的正确性,因为PC只要错一个数码,那么整段程序就会面目全非,从而造成检测系统的混乱。电子园51单片机学习网q.w.{"J(D]Zb X
,}S*g\;Mck,g44606利用滑动平均滤波法求取平均值。将最近6次采样得到的液位值,去除最大值和最小值,剩下的4个数据求算术平均值。电子园51单片机学习网)[+M j ?7x
电子园51单片机学习网(v @.o t@|1wnR5Ft#k^9Y44606 电子园51单片机学习网tPy3w A)KH)C"Q
4 结束
eg#z9J1O9C44606oZM2E*V44606该液位智能控制系统采用了单片机作为主控制器,结构简单,可靠性高,抗干扰性强,由于应用了PID控制方案,系统的响应速度快,超调量小,系统稳定性好,具有一定的实用价值。电子园51单片机学习网z Q5|RXc
电子园51单片机学习网{0? A:N!pjT1H k,ql7g*d;k ] Q!XD44606 电子园51单片机学习网hB*I OCr1m4Q
电子园51单片机学习网}"yG'S9j4o c
电子园51单片机学习网4z0M._6H)@y z\参考文献电子园51单片机学习网${O/H@9TT
1 AT89S51手册,http://www.atmel.com
+tTX2q jE(D7Q}s%N44606 电子园51单片机学习网sp FT__8^(CU3K2 刘金昆,先进PID控制及其MATLAB仿真,北京,电子工业出版社,2003电子园51单片机学习网3VfZiX
V5]Z m l,s-T446063 周航慈,单片机应用程序设计技术,北京,北京航空航天大学出版社,1991
3q'?0v]q5T44606
文章评论(0条评论)
登录后参与讨论