全自动洗衣机控制系统
一.题义分析及解决方案
1.题义需求分析
题目要求设计一个全自动洗衣机控制系统。可以用若干个按键来实现对洗衣机的控制,让其有两种洗衣模式分的水流别是普通水流和柔和水流以及两种洗衣程序即标准程序和经济程序。程序中要实现电机正转反转的功能,而且在各个状态中都应该通过LED晶体二极管显示洗衣机运行状态,最后在洗衣工作完成后,由蜂鸣器发出声响,表示衣物已洗干净。
由此可见,本课程设计大致上需要一个8255A芯片来控制整个程序的连接以及输入输出,若干个LED二极管来显示洗衣机运行状态,一个步进电机,逻辑开关,一个继电器来控制阀门的闭合,最后还需要一个蜂鸣器来提示洗衣过程的结束。
2.解决问题的方法跟思路 1)硬件部分:
a. 选择可编程并行接口芯片8255A,实现自动洗衣机各个控制以及状态的显示输出。本设计使8255A工作于方式0,即基本输入输出方式;将PA口作为输出口,显示洗衣机工作时的各个状态,即连接LED指示灯;PB口作为输入口,即连接开关按键;PC作为输入口,连接继电器,蜂鸣器,步进电机部件。
b. 直接选用LED二极管显示洗衣机工作状态因为其会使实验过程一目了然,而且减少了8255端口的使用,编程上也方便了。
c. 由于洗衣机中的电机要有一个正转反转的过程,在本设计中采用了步进电机。 2)软件部分:
对8255进行初始化。将8255的工作方式设定为方式0,即PA、PB、PC三个口能够进行输入输出操作。PB口作为输入口,与逻辑开关相连,接收开关表示的数值和要控制的相关状态。PA口连接LED小灯输出运行状态。在开始时候应将水位设为1即高水位。PC口连接蜂鸣器,继电器,电机等元件也为输入口。
二.硬件设计
1.选择芯片8255
(1) 芯片8255A在本次设计中的作用
8255A主要是用作数据的输入和输出接口,将逻辑开关的所输入的值接收进来,并且可以将数值进行输出,电源为+5V。具体的讲就是控制洗衣机运行时候的各个流程,以及其间的状态显示和后来的报警。 (2)8255A的功能分析
8255A采用40脚双列直插式封装单一+5V电源,全部输入/输出均与TTL电平兼容,为可编程通用并行接口芯片。它有24条可编程的I/O引脚,与Intel系列微处理器完全兼容,直接的位清0或置1功能,简化了接口控制。8255A在本设计中起并行传输接口作用,负责将从逻辑开关得到的数据送到LED显示器上显示出来。本实验中将8255设置为方式0。PC口作为输入口,与继电器,电机,蜂鸣器等部件相连。而PA口作为输出连接LED小灯显示洗衣机运行的各个状态,PB口作为输入端口连接逻辑开关。
8255A是一种通用的可编程并行I/O接口芯片,又称“可编程外设接口芯片”。它是为8086/8088而设计的可以通过程序来改变其功能。本设计中8255A设置为方式0,在方式0下,CPU可以采用无条件读/写方式与8255A交换数据。PA口的八位作为LED小灯的连接位. 方式0的工作特点:
这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作为输入或输出。其功能为:
①两个8位通道:通道A、B。两个四位通道:通道C高4位和低四位; ②任何一个通道可以作输入/输出; ③输出是锁存的; ④输入是不锁存的;
⑤在方式0时各个通道的输入/输出可有16种不同的组合。 (3)主要技术参数
8255A主要技术参数
参数名称 输入低电平电压 输入高电平电压 输入低电平电压 (数据总线) 输入低电平电压 (外部端口) 输入高电平电压 (数据总线) 输入高电平电压 (外部端口) 达林顿驱动电流 电源电流 输入负载电流 输出浮动电流 IDAR ICC IIL IOFL REXT=750 VEXT=1.5V I=Vcc—0V Vout=Vcc--0 120MA +10MA +10MA -10MA -10MA -0.4MA 1.0MA VOH IOH=-200MA 2.4V VOH IOH=-400MA 2.4V VOL IOL=1.7MA 0.45V 符号 VIL VIH VOL 测试条件 IOL=2.5MA 最大规范值 最小规范值 0.8V Vcc 0.45V -0.5V 2.0V 8255A主要参数分析:8255A的达林顿驱动电流最大为4.0 mA, 当电流超过
达林顿驱动电流是芯片就有可能会被损坏,而LED的驱动电流要比它高的多发光,在保证8255A芯片安全的同时又能让LED管显示就会需要外加器件。 2.选择逻辑开关
(1)逻辑开关在本设计中的作用
设计时用到六个个逻辑开关。按键分配如下: K1:暂停开关(0,暂停;1启动)
K2:洗衣程序选择开关(0,经济洗衣;1标准洗衣) K3:预设水位的开关(0,低水位;1高水位)
(2)逻辑开关的功能分析
如图所示,开关未合时,与5V 电压相连,输入1,当合上之后,开关就将A口接
地,也就输入为0,4位开关可以置0~15的数。 (3)逻辑开关的技术参数
逻辑开关及其编码
编 码 000 001 010 011 100 101 110 111 数 字 0 1 2 3 4 5 6 7 八路二进制开关
开关高电平:+5V、低电平:0V 3.选择LED发光二极管
(1)发光二极管在本设计中的作用
即显示作用,标示洗衣机运行时候的各个状态,分别为洗涤、脱水、漂洗、甩干。 (2)发光二极管的功能分析
LED作指示电路时,应该串接限流电阻,该电阻的阻值大小应根据不同的使用电压和LED所需工作电流来选择。 (3)发光二极管参数
发光二极管的压降一般为1.5~2.0 V,其工作电流一般取10~20 mA为宜。 4.选择继电器
(1)继电器在本设计中的作用 主要是用来模拟进水阀、排水阀。 (2)继电器的功能分析
继电器的继电特性继电器的输入信号x从零连续增加达到衔铁开始吸合时的动作值xx,继电器的输出信号立刻从y=0跳跃到y=ym,即常开触点从断到通。一旦触点闭合,输入量x继续增大,输出信号y将不再起变化。当输入量x从某一大
于xx值下降到xf,继电器开始释放,常开触点断开 继电器结构如图所示:
(3)继电器参数 5A/120VAC
10A/80A/240VAC~ 5A/24VDC- COIL:5VDC
AC交流电,DC直流电,A安,COIL线圈
这个继电器的触电容量是工作在交流120V是5A交流240V是10A/80A,直流24V是5A,电磁继电器工作电压(线圈工作电压)是5V直流电. 5.选择蜂鸣器
(1)蜂鸣器在本设计中作用
在全部洗衣工作完成后,由蜂鸣器发出声响,表示衣物已洗干净。 (2)蜂鸣器功能分析
在本设计中用8255的PC4接蜂鸣器。在洗衣过程结束后,程序会给蜂鸣器一个脉冲,促使蜂鸣器发出声响。 (3)蜂鸣器参数
额定电压 1.5
工作电压范围 1.0~1.7V 最大电流 80MA 电阻 6.0~10欧 DBA 70~100 频率: 3000 6.步进电机
1)步进电机在本设计中的作用
步进电机的正传与反转带动齿轮转动,实现车轮的转动及实现了小车的左转与右转。
2)步进电机的功能分析
步进电机驱动原理是通过对每相线圈中的电流的顺序切换来使电机作步进式旋
转。切换是通过8255输出脉冲信号来实现的。所以改变各相脉冲的先后顺序,可以改变电机的旋转方向。步进电机与8255A的链接如下图6:
图 6
用8255A的PA0~3分别控制步进电机的A、B、C、D四相,“1”则该相绕组通电,“0”则不通电。步进电机的驱动原理是使各相绕组依次通电来使其作步进式旋转,通过通电顺序和切换频率来调节其转速和转向。步进电机可以四相四拍或四相八拍方式工作,即通电顺序为:A→B→C→D→A;A→AB→B→BC→C→CD→D→DA→A。按相反的顺序即可改变电机的旋转方向。本实验系统采用的是:A→AB→B→BC→C→CD→D→DA→A。相序表:08h\\0ch\\04h\\06h\\02h\\03h\\01h\\09h(正转);01h\\03h\\02h\\06h\\04h\\0ch\\08h\\09h(反转)。用8279控制键盘输入和LED显示。UNL2003驱动电机运转。 3).步进电机的技术参数
本设计采用的是四相步进电机,用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图7是该四相反应式步进电机工作原理示意图。