基于单片机的红外微电脑自动泵液器设计
在我们的日常生活中,经常会遇到这样的窘境,想要往给液器里添加洗手液或洗洁剂,却弄了一手的液体;在医院里,护士为了给病人补给营养液,却难以避免营养液被多多少少污染。此时,你真的需要一款红外微电脑自动泵业器,它不同于以往所见到的所有的给液器。不仅即插好用,而且安装无需打孔破坏墙面,补液无需灌装,杜绝了液体的二次污染,使用无接触,更卫生、方便,是取代传统香皂及其他瓶装、泵装洗护产品的时尚而经济的选择。此外,它是由单片机控制,克服了普通工业控制中常见的多回路、耦合、干扰等多种情况,可设定出液量,具有抗干扰能力强、无误操作、低压报警、省电节能等特点。不仅适用于家庭,也适用于公共单位,如:医院、银行、政府机构、学校等。
1系统总体设计
该系统能自动探测有无物体靠近出液口,探测距离为15~20cm,LED显示器粗略显示容器内洗涤剂的剩余量,分为3种情况:
(1)最低的一段LED亮说明洗涤剂剩余量较少,需要尽快补充;
(2)最低段和中间段同时亮说明洗涤剂充足;
(3)三段同时亮说明容器内洗涤剂的已经超过安全警戒线,不能再继续加入,段间分隔误差:±5mm。
另外系统备有操作按键一个,用于选择流量,开机时默认值为小流量,按1次按键后选择中流量,按2次选择大流量,按3次后进入清洗模式,再按一次退出清洗模式并选择小流量。
自动给液系统的组成框图如图1所示。
LED显示器用于显示容器内液体的粗略剩余量,该显示器为三段条形LED显示器,竖直安装于出液器外壳上。
红外线发射、接收器这两个装置相互配合构成一个主动式红外线探测雷达,用于探测有无物体接近出液口,探测距离为15~20cm,红外线发射载波频率为38.4kHz,由微控制器(MCU)内部的定时器对主时钟分频得到;接收头的中心频率为39.7kHz;通过调节发射电流来调节探测距离。
液位传感器该传感器为电阻式传感器,通过一个带有旋转轴的浮球带动电位器旋转,从而把液面高度的变化转换为电阻的变化,然后在该电阻中通过一定的电流,就间接的把液面变化转换为电压的变化,微控制器(MCU)通过模数转换(ADC)读取该电阻值就可以获得液面的高度值,ADC转换精度8位。
串行接口该接口为备用接口,用于今后系统的扩展,此外MCU还通过该接口把液面高度值送往其他系统,传输速率为1200b/s,可以用PC机或其他具有UART单元的系统接收该数据。
2系统硬件结构
MCU引脚定义如表1所示:
3系统软件结构
3.1主程序流程图
主程序流程框图如图2所示,他主要完成初始化工作,进行目标检测,控制出液,并且显示液位情况,整个程序中大量地调用了其他子程序,为了方便不再一一列出其他子程序框图,主程序采用查询方式,初始化完成后一直处在等待响应状态。
定时器中断子程序,本子程序在整个系统中承担了红外检测的设置工作,单片机的设计中,定时器是个重要环节,本设计中采用定时器0中断的工作方式,中断程序流程图如图3所示。
出液控制子程序是本设计中的重要部分,他根据目标检测的结果控制步进电机的工作,程序流程图大致如图4所示。
3.2MCU内部RAM分配
AT89C2051内部共有128B的RAM,做如下分配:
00H~07H:工作寄存器组(R0~R7),作为通用寄存器使用。
10H~14H:液面高度采样数据缓冲区(ADCBuff)。
16H:软件定时器(SoftTimel)。
17H:液面高度值(OldADCOut)。
1FH:键值(KeyValue)。
20H:工作标志组0(WF0)。
5FH:流量控制值(FluxValue)。
60H~7H:32B的系统堆栈(STACK)。
3.3标志位的分配
F_Xms:WF0.0,定时器0中断服务标志,在定时器0中断服务程序结束时置位,在软件定时器操作程序中查询该标志后复位。该标志位主要用于通知系统程序一次定时器中断已经处理完毕。
SendEN:WF0.1,主动红外探测器发射开关,该标志置位时允许红外探测器向外发射38.4kHz红外探测信号,复位时则不允许发射。该标志在红外探测器启动时置位,在探测器关闭时复位。
DetEN:WF0.2,红外探测开关,该标志置位时系统启动红外探测器探测目标,复位时系统不启动探测器。该标志在系统退出守候模式时置位,在探测到目标后复位。
MTCEN:WF0.3,电机运转,标志置位时表明电机处于运转状态,系统检查运转时间是否结束,如果MTCEN和DetEN都复位,系统将进入守候式:既不探测目标,也不启动电机,3s后自动退出守候模式。该标志在红外探测器探测到目标并启动电机后置位,电机运转时间结束后复位。
WashMode:WF0.4,清洗标志,标志置位时表明系统处于清洗模式下,系统的其他功能将被关闭,复位时关闭清洗功能。该标志在用户启动清洗功能时置位,关闭清洗功
- 基于dsPIC30F2010的土壤水分测量仪的设计研究(08-27)
- 基于C8051的大灯仪自动定位系统(09-21)
- 单片式DSP智能电机控制解决方案(10-23)
- 基于DSP技术的双电源自动转换控制器的设计(03-11)
- 基于AT89C2051单片机的排矿阀门控制系统设计(03-14)
- 基于Fusion的无线扩散炉温度自动监控系统 (06-04)