《基于单片机的汇编语言的全自动洗衣机系统课程设计.》由会员分享,可在线阅读,更多相关《基于单片机的汇编语言的全自动洗衣机系统课程设计.(40页珍藏版)》请在金锄头文库上搜索。
1、单片机课程设计 全自动洗衣机系统的设计学 院:电控学院 班 级:32040901专 业:电气工程及其自动化学 号:3204090115姓 名:蒋 秋 华指导教师:段 晨 东2011年12月目录摘要3任务设计要求3前言4设计分析与方案论证4软件程序的设计6调试11总结20参考文献20附录20摘要单片机又称微控制器,或称嵌入式控制器。而现在的智能家电无一例外是采用微控制器来实现的,所以家用电器是单片机应用最多的领域之一。它是家用电器实现智能化的心脏和大脑。 本设计采用LED和数码显示管显示洗衣机所处在的模式和水位,所处的的洗衣状态,水温,以及完成洗衣的剩余时间。实现不同模式下水位的选择一共三种模式
2、(标准,轻柔,快洗),四种水位,当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机全自动控制洗衣操作,整个过程的进行按时间控制,时间自定。液位检测和控制:使水位限定在某一个给定的液位范围内,当水位越限时进入超水位中断报警提示并打开下水电磁阀放水,不启动洗衣过程,待满足要求后,投入运行。当投入洗衣量大于洗衣机额定容量时,控制系统应报警,不启动洗衣过程。待满足要求后,投入运行关键字 智能家电 洗衣机 汇编语言89C51设计任务要求1.功能介绍 全自动洗衣机是常见的家用电器。它能够按照预设模式自动地完成衣物的洗涤、漂洗和脱水,也可以单独地进行洗涤、漂洗和
3、脱水操作,这些过程一般按时间进行控制。通常在给定的模式下,根据衣物多少允许用户设置不同的水位,当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机,即可开始洗衣操作,为了提高洗衣效率,电机一般先正转若干秒,然后再反转若干秒。另外,每个洗衣机都有容量限制,当洗衣量大于它的额定容量容量时,控制系统报警并且不启动。2.设计参数(1)电机 100W 220V AC(2)洗衣容量 5 kg(3)电力供应:220V AC3.设计要求(1)实现3种模式选择:标准、轻柔和快洗,被选中的模式用LED显示器表明。(2)实现不同模式下的洗衣过程,根据衣物多少允许用户设置4
4、种的水位,被选中的水位用LED显示器表明。当洗衣机启动后,上水电磁阀打开注水,当水到达设定的限位时,上水电磁阀断电,注水过程停止,启动电机全自动控制洗衣操作,整个过程的进行按时间控制,时间自定(3)液位检测和控制:使水位限定在某一个给定的液位范围内,当水位越限时打开下水电磁阀放水,不启动洗衣过程,待满足要求后,投入运行。(4)当投入洗衣量大于洗衣机额定容量时,控制系统应报警,不启动洗衣过程。待满足要求后,投入运行。(5)显示工作模式、状态和剩余时间,每个动作完成时,通过声光报警提示。(6)测量并显示水的温度。4.扩充功能(1)PWM调节电机转速(2)同一模式下,不同水位的选择。前言单片机又称微
5、控制器,或称嵌入式控制器。而现在的智能家电无一例外是采用微控制器来实现的,所以家用电器是单片机应用最多的领域之一。它是家用电器实现智能化的心脏和大脑。 由于家用电器体积小,故要求其控制器体积更小以便能嵌入其结构之中。而家用电器品种多,功能差异也大,所以又要求其控制器有灵活的控制功能。单片机以微小的体积和编程的灵活性而产生多种控制功能,完全可以满足家用电器的需求。波轮式全自动洗衣机是家用电器领域的重要一员,在全自动洗衣机市场中占有很大的比例,其中绝大多数品是用单片机来实现的。AT89C51单片机是ATMEL公司8位单片机系列产品之一,是一种20引脚双列直插式芯片。它内含4KB可反复烧录的FLAS
6、H存储器,RAM字节也有128个,15个I/O口,5个中断,2个定时,已经可以满足程序的需要,指令也和51系列兼容,基于上述特点,选择它来设计一台智能洗衣机,完全可以达到以下的功能:1、洗衣程序功能:手动模式:用户可以选择单独的单洗,漂洗,长脱水;自动模式:用户可以根据需求通过键盘选择以下模式:即标准洗衣程序、轻柔洗衣、快洗每种模式下又可以选择四种水位;再上电后如果不进行任何操作一段时间后洗衣机便进入默认模式进行洗衣。 2显示功能:显示选择的模式,水位,正在进行的洗衣操作(状态),水温,完成洗衣过程的剩余时间。3、特殊功能:超水位报警并自动放水,达到要求后结束报警开始洗衣;超容量报警,待用户排
7、除后结束报警开始洗衣。设计分析与方案论证本设计用98C51单片机实现洗衣机的控制,通过对拨码开关和键盘的操作实现手动自动模式的选择,以及水位得选择,也可以进行任何操作进入默认模式。当选择好模式后进入该模式设置该模式下的参数,然后再次扫描键盘,去选择水位,选定水位后,进入该水位模式设置水位参数。在P1.4为低电平是进入手动模式,手动模式下若P1.5为低电平则进入单洗过程,单洗完成声光报警提示用户此过程完成;若P1.5为高电平检查P1.6若为低电平进去漂洗程序进行漂洗,漂洗完成声光报警提示用户漂洗结束。柔P1.6为高电平则检查P1.7若为低电平就进入长脱水程序,进行长脱水,长脱水结束声光报警提示用
8、户操作完成;若P1.7为高电平则从P1.5重新检查直到检查到低电平为止。在P1.4为高电平时不是手动模式,则去扫描键盘,第一次扫描键盘为选择标准,轻柔,快洗模式,待选择好模式设定好参数后,再次扫描键盘选择水位,选择好水位后设置参数,然后进入洗衣过程。如果15秒内没有扫描到模式的按键,则进入默认模式。单洗衣程序包括单洗、漂洗、长脱水三个过程。自动模式下的三个模式都包括单洗、漂洗、长脱水三个过程,只是在不同模式和水位下的参数不同罢了;洗衣过程:进入洗衣程序开定时器开始倒计时,根据选择的水位进水,进水完成后,在没有超出要求水位的情况下,进入单洗过程,电动机开始正反转过程根据所选模式中设置的正反转次数
9、以及不同模式下正反转的时间自动洗衣;待单洗完成就进入排水过程,排水时间由水位模式设置,排水结束后进入漂洗过程。漂洗过程:先进行段脱水,脱水结束再进水,进水完成再进行短洗,短洗时间为四分钟,短洗完成在排水,然后重复上述过程一次即完成漂洗过程,漂洗完成进入长脱水过程,长脱水时间为四分钟,电机高速旋转,长脱水结束,整个洗衣过称也结束,此时声光报警提示用户洗衣完成。标准模式下的单洗过程,电机正反转36次,每次正转十八秒,停两秒,再反转十八秒,停两秒;轻柔模式下单洗过程,电机正反转36次,每次正传是三秒停两秒,再反转是三秒,停两秒;快洗模式下但系过程,电机正反转24次,每次正转十八秒,停两秒,再反转十八
10、秒,停两秒;三种模式下的漂洗过程相同见下面漂洗过程分析;每个模式下的长脱水都是相同的,都是电机正传四分钟。进排水由时间控制,每个水位下设置好了进排水的时间,进水时P3.4置一,表示开进水阀,进水完成时P3.4置0表示关进水阀;排水是P3.5置1表示开排水阀,排水完成是P3.5置0表示管排水阀。在显示时开始考虑的是通过按键实现交替显示,但是这样就必须时刻扫描键盘,这使程序进入了扫描键盘的死循环,无法进行其他的工能,在多次考虑后发现在进排水,电机动作时没有其他的要求,可以利用这段时间去驱动数码管显示模式,水位,状态,温度,以及剩余时间等,剩余时间单独显示,其他的一起显示,这样就只需要显示两次,每次
11、十秒,交替显示,单洗是短洗时电机正传是显示十秒的模式,水位,状态,温度,然后数码管熄灭十秒或五秒,电机反转时显示十秒的剩余时间,再熄灭十秒或五秒,这样循环进行;在脱水或进排水时两种显示一十秒每次交替显示,这样在整个过程中多有显示,很好地解决了显示与洗衣同时进行的问题了。电机的正反转实现方式:当P3.6为1,P3.7为0时电机正转,当P3.6和P3.7都为0时电机停转,当P3.6为0,P3.7为1时电机反转。电机正反转用LED灯模拟,红灯亮表示正传,绿灯亮表示反转,两灯都熄灭表示电机停转。自动模式下,数码管右边第一为表示模式,b表示标准模式,q表示轻柔模式,3表示快洗模式,第二位表示水位分别用1
12、、2、3、4表示四种水位;中间两位表示正在进行的动作即状态,7H表示进水,dH表示短脱水,dd表示短洗,CH表示长脱水PH表示排水;左边两位显示的是水的温度。在显示模式2下用四个数码管显示剩余时间。在手动模式下的单洗,漂洗,长脱水需要单独设置参数,具体设置见附录的程序中;单洗时,模式水位显示位显示的是d7表示手动下的单洗;漂洗是显示P7表示漂洗,长脱水时显示CH表示长脱水;手动下单洗为28分钟,漂洗为18分钟,长脱水为4分钟。默认模式下调用的是标准模式下水位2的洗衣程序,显示也完全相同;另外每一个动作完成时都有一秒钟的蜂鸣提示。软件程序的设计:汇编语言程序设计并不很难,但要编出质量高,可读性好
13、且执行速度快的优秀程序并不容易,欲达此目的,除应娴熟掌握所依托的指令系统外,还应掌握程序设计的基本方法和技巧,熟悉汇编语言源程序的分类方法和特点。洗衣机的一次洗衣过程控制过程比较简单,主要为顺序控制,如先进水、洗涤(电机正转反转)、再排水脱水,难点在于过程选择,如不同的衣物所用的洗涤、漂洗、电机正转反转时间不同,如果为每个过程单独编一套指令,则指令系统变得很庞大,效率低,为此,把脱水、洗涤、排水、短洗、漂洗、进水单独编为一个子程序,由主程序根据过程选择,不断调用,由些减少源程序的长度,不同的洗衣过程,三大动作的时间不同,这可以通过建立数据表格,通过查表的方式获得每个洗衣过程所需时间。此外,还需
14、编出显示子程序,延时子程序供主程序不断调用,而且在每一个模式和水位下设置了不同参数,这样通过对子程序的调用,就实现了同一模式下不同水位的选择这一扩展功能,仅仅在自动模式下就有3*4=12种小模式了。水位1每一次进排水时间都为130秒,水位2为120秒,水位3为110秒水位4为100秒自动模式下各个小模式的总时间如下:标准模式水位一:55分钟标准模式水位二:54分钟标准模式水位三:53分钟标注模式水位三:52分钟轻柔模式水位一:49分钟轻柔模式水位二:48分钟轻柔模式水位三:47分钟轻柔模式水位三:46分钟快洗模式水位一:43分钟快洗模式水位二:42分钟快洗模式水位三:41分钟快洗模式水位四:40分钟各个流程的框图如下:开始 初始化等待5S供选择模式