0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于AT89LS8252单片机和ULN2803芯片实现洗碗机控制系统的设计

电子设计 来源:电子设计工程 作者:赵建东,康乐 2020-04-21 07:30 次阅读

1、引言

随着数字信息家用电器应用的普及,洗碗机已经广泛进入人民大众的家庭之中,从而使得人们能够从繁杂的家务劳动中逐步解放出来。作为一种家庭自动化设备,洗碗机一般需要实现诸如自动控制进水、自动加洗涤剂、冷洗、自动加温洗、清洗、排水、杀菌消毒,以及定时和故障报警等功能。从被控制量角度出发,一个洗碗机通常需要满足图1所示的一些具体要求,其中涉及的开关量信号有两种,一种是传感器的高、低电平信号检测,如机门开关、水位高低、温度调节保护器和行程开关等;另一种开关信号经由固态继电器控制强弱电压信号的断开和加载,如进水电磁阀门的开合、恒温加热器的开合、瞬间加热器的开合、清洁剂控制盒和消毒剂控制盒的工作等。图1中所涉及的模拟量信号主要用于实现以下几方面的功能:

(1)用温度传感器实现水温/消毒水温度检测;

(2)通过人机接口的显示输出、键盘输入和声音输出等实现水温显示、洗涤过程显示以及故障类型显示等;

(3)根据用户需要通过设置键选择洗涤模式,并通过功能键启动相关功能;

(4)机器使用情况统计、清洁剂和消毒剂剂量的使用情况计数等;

(5)故障报警以及、洗涤完成报告等。

基于AT89LS8252单片机和ULN2803芯片实现洗碗机控制系统的设计

2、洗碗机控制系统的硬件设计

针对上述功能及可靠性、成本和方便使用维护等因素,设计了图2所示的洗碗机控制系统。

单片机最小系统采用与MCS-51兼容的AT-MEL公司低功耗高性能CMOS芯片AT89LS8252设计,其中片内8k字节在线可编程闪存用以存放系统程序,可通过SPI接口下载程序;而2k字节的EEPROM则用以存放关键参数,如开机维护密码、产品的序列号、开机次数、洗涤设置参数等;256字节的RAM用来存放临时变量。

鉴于本洗碗机有较多的开关量信号,故此,设计中使用并行芯片8255来扩展I/O接口,以配合P1和P3口部分管脚的使用,其输出和输入的比例为21/14,其中蜂鸣器由P1.3控制。从可靠性角度出发,输入和输出部分都采用光电隔离措施。考虑到部分驱动信号所要求的驱动电流较大,因此,本设计选用功率驱动器件ULN2803来驱动。

温度采集有两种方案:一是使用热敏电阻配合芯片MAX150进行AD转换,然后通过存放在程序存储器里的表格来求得当前温度;二是使用三端温度传感器DS18B20进行采集,直接得到温度数据。相比之下,后一种方案较为经济简捷。

键盘和LED显示选用HD7279A?3?来进行控制,其电路图如图3所示。HD7279A无需外围元件即可直接驱动8位共阴式LED数码管;引脚DIG0~3对应0~3位数字输出驱动;引脚SA~SG和DP则对应于段a~g及小数点的驱动输出;各位可独立控制译码/不译码及消隐和闪烁等属性。

该芯片共有三种类型的指令:第一种是6条不带数据的8位纯指令,如复位、测试、左/右(循环)移位等;第二种是7条16位带数据指令,包括下载数据按方式0/1译码、下载不译码、闪烁、消隐、段点亮、关闭等;第三种是读取键盘数据指令。它们均采用串行方式与AT89LS8252进行通讯,串行数据从DATA引脚送入芯片并由CLK端同步。当片选信号CS变为低电平后,DATA引脚上的数据将在CLK引脚的上升沿时被写入HD7279A的缓冲寄存器

此外,HD7279A片内含有去抖动电路,可控制64键键盘矩阵。图3中,元件JKEY为4×4键盘接口,当有键按下时,KEY引脚输出低电平,发光二极管LED1发亮,该状态一直保持到按键松开。此时如果接收到“读键盘”指令15H,在指令前半段,DATA引脚将处于高阻状态以接受来自微处理器的指令。而在指令后半段,DATA引脚则从输入状态转为输出状态,用以输出所按下的键代码值。

3、洗碗机控制系统的软件设计

本系统功能模块按洗碗过程可分为六个阶段:进水过程、加温过程、注入清洁剂过程、控制电机旋转清洗过程、注入消毒水消毒过程和排水过程。同时为确保洗碗机正常工作,对容易出故障的过程,系统还设置了故障报警或停机功能。系统软件可按照洗碗机的工作流程进行编写。主要的软件模块有开机自检、状态初始化、显示当前默认状态,进入键盘扫描状态并等待操作键按下,以及根据操作键转入相应流程等,其主程序流程见图4所示。

用户使用前,应首先检查洗碗机状态是否正常,若状态正常,按下弱电源开关,根据洗涤要求设置洗涤模式(或使用默认方式),将碗放入清洗室,然后关上机门,按下开始键。之后,控制器检测水位高低和水温,以决定是否进水与恒温加热,至此准备工作完成,启动电机进行清洗。接下来再把清洁剂注入清洗室,同时检测水位高低,若水位较低,则立即进水,以保证清洗效果。清洗完成后,等碗上的水空一段时间后,洗碗机再注入高温消毒水进行消毒。洗涤完成后,蜂鸣器鸣叫,表明洗涤完成,同时控制器回到用户初始设置模式。洗涤中每一过程和按键均对应有一发光二极管的亮灭,用以显示过程和按键的正常与否。洗涤完成后,用户打开机门,取出碗盘,然后断电即可结束整个洗碗过程。

在该系统软件子程序中,需要对键盘/显示管理模块进行说明,包括初始化子程序、发送子程序、接收子程序、中断子程序、显示子程序等。其中用户通过键盘设置模块可以设定洗涤模式、每一过程的时间长短以及洗涤剂量大小,也可随时按相应的功能键暂停或中止洗涤过程。技术维护人员可以通过键盘/显示管理模块输入正确密码来查询机器的使用状况,如机器序列号、机器的使用次数等,也可对关键参数根据实际情况进行设置。

故障报警功能模块可在工作电压故障、进水阀故障、加热器故障、电机故障、清洁剂注入故障以及高温消毒水注入故障发生时用蜂鸣器报警,同时断掉强电控制信号,以确保系统安全。

4、结论

控制系统目前已经调试成功,试验性能良好,可实现本自动洗碗机所要求的功能,而且简捷实用。但还有需要完善提高的地方,如排水需要人工干预、人机接口可考虑选用效果更好的字符或图形LCD、系统集成度有待提高等。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    5997

    文章

    43947

    浏览量

    620542
  • 控制系统
    +关注

    关注

    41

    文章

    5948

    浏览量

    108579
  • lcd
    lcd
    +关注

    关注

    34

    文章

    4272

    浏览量

    163902
收藏 人收藏

    评论

    相关推荐

    ULN2803驱动步进电机的问题

    本帖最后由 eehome 于 2013-1-5 10:07 编辑 想用ULN2803驱动步进电机.2803common口接15v直流电压,单片机输出和2803输入直接相连。
    发表于 08-19 13:07

    关于ULN2803使用疑惑,希望帮助!!

    最近做一个数码管的驱动电路,用4线16线译码器74HC154接2个ULN2803驱动16位的共阳数码管位选,百度上看到ULN2803ULN2003一样具有反向功能,也有驱动能力,但也有的说
    发表于 11-16 22:36

    关于uln2803

    为什么我的光立方会出现以下情况:我用的51片,给P1.0口输出高电平,然后接到ULN2803的某个输入端,理论上2803的输出端应该是低电平,但是单片机的IO口却被拉低,P1.0口电
    发表于 04-20 21:21

    ULN2803求助

    各位大神请帮忙看一下,为什么我用ULN2803不管输入端是高电平还是低电平输出总是低电平?如果输出端都悬空的模拟起来就正常。如果要ULN2803控制点阵阴极该怎么解决?多谢了各位大神。。。
    发表于 04-12 22:37

    uln2803驱动

    ULN2803驱动5v直流电机,uln2803发烫是怎么回事?
    发表于 05-11 09:31

    请问ULN2803会影响IO输出电压吗?

    单片机开机IO口默认为高电平,但是我用电压表测量,IO口的电压只有0.2V,IO口与ULN2803连接,难道ULN2803还影响IO输出电压?
    发表于 04-04 06:35

    ULN2803驱动步进电机

    uln2803则是解决驱动问题,单片机达不到驱动电流,使用也很方便,1—8引脚是输入,9接地,10接VCC,11到18输出,输入高电平,输出低电平,输出高,则无法驱动电机,这里的电机正极接电源,负极
    发表于 08-31 09:26

    怎样去设计一个基于单片机洗碗机控制

    设计简介:本设计是基于单片机洗碗机控制器,主要实现以下功能:LCD1602显示温度、温度最大值以及状态按键设置温度最大值洗碗过程:进水--
    发表于 11-19 08:00

    电子类手册uln2803

    电子专业常用芯片芯片手册——电子类手册uln2803
    发表于 07-14 16:20 0次下载

    ULN2803

    uln2803
    发表于 03-15 14:00 35次下载

    uln2803中文资料汇总(uln2803引脚图及功能_内部结构及应用电路)

    本文开始介绍了ULN2803特点和内部原理,其次介绍了ULN2803电气特性和引脚图及功能,最后介绍了ULN2803封装以及ULN2803的应用电路。
    发表于 04-10 10:59 13.8w次阅读
    <b class='flag-5'>uln2803</b>中文资料汇总(<b class='flag-5'>uln2803</b>引脚图及功能_内部结构及应用电路)

    几款uln2803的应用电路及驱动电路

    本文介绍了五款uln2803的应用电路。uln2803目前已经广泛应用于计算机,工业用和消费类产品中的灯、继电器、打印锤或其它类似负载中。
    发表于 04-10 11:30 6.7w次阅读
    几款<b class='flag-5'>uln2803</b>的应用电路及驱动电路

    一文看懂uln2803uln2003区别

    本文首先介绍了ULN2003特点、引脚功能与ULN2003的作用,其次介绍了ULN2803特点与工作原理,最后分析了uln2803uln2
    发表于 04-10 14:16 10.4w次阅读
    一文看懂<b class='flag-5'>uln2803</b>和<b class='flag-5'>uln</b>2003区别

    uln2803引脚图及功能介绍

    本文开始介绍了uln2803的概念和uln2803引脚图及功能,其次介绍了ULN2803内部原理图及封装说明,最后介绍了几款uln2803的测试图。
    发表于 04-10 14:31 10.2w次阅读
    <b class='flag-5'>uln2803</b>引脚图及功能介绍

    使用单片机实现ULN2803驱动点阵屏仿电梯数字滚动显示的C语言实例

    本文档的主要内容详细介绍的是使用单片机实现ULN2803驱动点阵屏仿电梯数字滚动显示的C语言实例免费下载。
    发表于 03-31 16:45 37次下载