4. 系统的软件设计
图8为水位控制主程序流程图。
启动该系统后,单片机先进行初始化设置。接着,传感器测量液位高度并把液位信息送入单片机,单片机经过分析发出相应的控制信号。若液位低于下限值即(P1)=00H,则启动水泵加水且红灯亮;若液位达到上限设定值即(P1)=03H,则水泵将停止工作且黄灯亮;若水位在两者之间即(P1)=01H,则水泵继续工作且绿灯亮;若系统出现故障即(P1)为其它值,则三灯均亮且蜂鸣器发出响声。
图8 水位控制程序流程图
5. 系统仿真测试
根据所设计系统的软件流程图,编写相应的程序在Proteus软件环境下实际仿真。低水位仿真图如图9所示。此时由于导线B与导线C均未与+5V接通,所以输入单片机AT89C52的电平均为低电平,从而导致红色放光二极管亮而另外两只不亮,并且水泵开始往水箱里加水。
图9 低水位仿真图
正常水位状态包括两种情况:1.水泵正在加水,液位在上限与下限水位之间且逐渐上升;2.液位正处于由上限下降至下限的过程。第一种情况下导线B与+5V接通而导线C未与+5V接通,所以单片机由B线得到高电平而由C线得到低电平,绿色指示灯亮,红灯与黄灯均不亮,且水泵正在向水箱加水,仿真图如图10所示;第二种情况下导线B与导线C的状态与第一种相同,但三个指示灯均不亮,水泵处于停止供水状态,仿真图如图11所示。
图10 正常状态1仿真图
图11 正常状态2仿真图
水箱高水位状态如图12所示。此时导线B与导线C均与+5V导通,两者将高电平送入单片机中,再由单片机发出控制信号,使得黄色指示灯亮而其他两灯不亮,且停止水泵加水。
图12 高水位仿真图
故障状态是指,导线B与导线C的电平状态分别为0和1时的系统状态。此时,单片机发出控制信号使得三个指示灯均亮且蜂鸣器产生报警声,以提醒有关人员注意。故障状态仿真图如图13。
图13 系统故障仿真图
6. 结论
本系统主要介绍了液位检测与控制,介绍了AT89C52单片机在液位控制中的应用。本设计还采用了传感器来采集液位信号,利用LED来显示高度信号,并具有报警提醒功能。此设计的硬件系统的结构简化,系统精度高。本系统所采用的传感器性能稳定,测量准确,大大简化现场安装。液位控制在设定值上正常运行不需人工干预,减轻了操作人员的劳动强度。
采用单片机设计出的液位控制器,能够针对水位的不同状态和不同外界条件进行控制。控制装置具有成本低、抗干扰能力强、控制性能好,且系统硬、软件文护简单方便,具有良好的应用前景。 AT89C52单片机的液位控制系统的设计+原理图+源码(4):http://www.751com.cn/zidonghua/lunwen_1594.html