单片机课程设计

发布 2022-10-05 00:46:28 阅读 4662

全自动洗衣机控制系统的设计。

一、设计内容:

1、 洗衣机的工作流程:启动→→打开进水电磁阀注水→→当水位达到一定高度时,关闭进水电磁阀,准备洗涤→→电机正传10秒→→电机暂停5秒→→电机反转10秒,电机停止→→打开排水阀排水→→当水位下降到一定高度时,准备脱水→→电机高速正传10秒,电机停止→→关闭排水阀,提示洗衣完毕(声音);

2、 有电源指示灯,洗涤状态显示:进水、洗涤、排水、脱水;

3、 显示系统运行的时间,格式是:mm-ss;

4、 可以设置洗涤时间、水位高度;

5、 设置停止键,在洗涤过程中随时可以按键终止,并使显示器清零;

6、 可以根据实验装置实际,充分利用所学知识,加入其他功能,提倡创新(可加分);

7、 也可以自己拟定题目,以实验装置为平台,完成课程设计,提倡创新(可加分)。

二、设计要求。

1、 能较全面地应用课程中所学的基本理论和基本方法,完成从设计单元电路到设计简单系统的过渡;

2、 能独立设计规定的系统;

3、 能独立的完成实施过程,包括调试和排除故障。

三、设计任务。

1、 根据单片机资源分配和使用,制定相应的设计方案;

2、 说明设计原理、画出设计电路图;

3、 软件设计整体流程图;

4、 画出各模块的设计图;

5、 调试分析,系统调试中碰到的问题和解决方案;

6、 提交课程设计报告书,要求同组每人一份:

设计任务与要求;

设计原理、设计方案、设计电路图;

软件设计整体流程图、各模块的设计图;

设计、调试和实验中遇到的问题及解决方法;

本次课程设计的收获、体会及改进意见和建议。

四、设计过程。

总体流程图。

洗衣机的主要控制功能是靠时间的定时操作来完成的,利用传感器来测量水位等。因此,对于步进电机的开/关和正/反转时间控制以及对于进排水阀门的开关时间控制,都可以利用定时操作程序来控制完成。

本系统硬件上主要由以下几部分组成:定时控制电路、洗衣机功能控制电路和数据采集电路。其中主要包括以下电路。

定时控制电路:可以采用单片机内部定时器来实现。该电路定时向系统发出中断请求信号。

功能控制电路:洗衣机的进水、洗涤、排水、脱水伴随定时器的控制电路。

数据采集电路:主要是由电位器和a/d转换器组成,目的是模拟水位信息,以控制进水排水过程的结束。

本次课程设计是利用实验室实验板上所提供的设施实现洗衣机控制系统,我们运用了实验板上的小灯的亮灭来模拟洗衣机的正反转洗衣过程,用单片机内部的定时器来控制电机正反转的时间。甩干脱水过程也是利用的步进电机高速旋转,编程技巧大体相同,但是速度有稍微一点的不同,。进水和排水过程模拟则利用实验板上的显示灯实现

定时器模块。

利用8031单片机的可编程定时/计数器t0、中断系统来实现时钟计数。

1) 把定时器设为工作方式1,定时时间为100ms,则计数溢出10次即得时钟计时最小单位秒。

注释:8031内部定时器有三种工作方式:模式0、模式1、模式2。

已知时钟频率为6mhz,模式0最长可定时16.384s,模式1最长可定时131.072s,模式2最长可定时512μs。

而我们实验需要1s为单位的计时,模式0定时过大,模式2定时过小,实际利用起来模式1最方便。

2)采用中断方式进行溢出次数累计,计满10次为秒计时(1秒);

3)从秒到分和从分到时的计时是通过累加和数值比较实现。

电子钟的时钟时间在六位数码管上进行显示,因此,在内部ram中设置显示缓冲区共8个单元。

电子钟设置2个开关通过程序控制来完成电子钟的暂停和清零,分别为接入p3.4口的暂停和接入p3.5口的清零开关。(具体的定时程序参照的是实验板上的定时程序)

功能模块。1、步进电机。

我们采用的是四相步进电机,其工作方式有两种:四相四步为ab-bc-cd-da;四相八步为ab-b-bc-c-cd-d-ab。

我们采用的是四相四步型的方式。

驱动通过p1.0-p1.3输入不同的电位获得,顺序如下:

注释:由于我们组的试验箱上不存在步进电机,所以我们复用四个小灯来模拟步进电机的状态。

2、洗衣结束提示。

由于在我们组实验装置上没有蜂鸣器,所以我们通过单片机的3.1口来控制一个小灯的闪烁来模拟蜂鸣器的效果。

3、洗衣状态显示。

通过两个指示灯的亮灭来显示此时洗衣机的状态,如下图:

数据采集模块。

具体两个的方案如下:

1、用4个led灯的组合来表示水位的高低。4个led依次点亮,则说明进水水位的逐次升高 。此方案在一定程度上可以模拟洗衣机的进水状态,但人机交互较差,模拟洗衣机只能按照既定程序执行,不能客观的反应现实中洗衣机的进水工作状态,

2、用电位器来模拟水位信号,通过a/d转化芯片0809将水位模拟信号转化为数字量输入单片机处理。通过调节阻尼器,可以模拟水位的上升、下降。采集点较多,采集的信号较为连续,能够客观的反映洗衣机进水状态。

根据一开始的思路,我们会采用电位器来模拟水位,通过电位器两端的电压传给ad来模拟水位的变化。后来因为实际的操作问题,我们最后采用了利用小灯来显示水位的高低。虽然人机交互比较差,但是更加形象。

软件设计(流程图及源程序)

wash:cjne r6,#00h,right

cjne r5,#00h,del

cjne r7,#00h,left

mov 74h,#0fh

mov 75h,#0ffh

setb p3.2

clr p3.3

retright:dec r6

mov a,70h

rr amov 70h,a

mov p1,a

retdel:dec r5

retleft:dec r7

mov a,70h

rl amov 70h,a

mov p1,a

rettab:db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h

;db 88h,83h,0c6h,0a1h,86h,8eh

disp:setb 0d4h

mov r1,#7eh

mov r2,#20h

mov r3,#00h

dis1:mov dptr,#0ff21h

mov a,r2

movx @dptr,a

mov dptr,#tab

mov a,@r1

movc a,@a+dptr

mov dptr,#0ff22h

movx @dptr,a

dis2:djnz r3,dis2

dec r1

clr cmov a,r2

rrc amov r2,a

jnz dis1

mov a,#0ffh

mov dptr,#0ff22h

movx @dptr,a

clr 0d4h

retmov a,#00h

mov p1,a

lcall delay

setb p1.0

lcall delay

setb p1.1

lcall delay

setb p1.2

lcall delay

setb p1.3

lcall delay

lcall delay

pai: mov a,73h

mov p1,a

subb a,#1h

rr amov 73h,a

cjne a,#00h,s

setb p3.2

setb p3.3

mov 71h,#0fh

s:nopret

dep: mov a,72h

cjne a,#00h,dep1

mov a,#00h

mov p1,a

clr p3.2

clr p3.3

clr tr0

ljmp shan

dep1:dec 72h

mov a,70h

单片机课程设计

可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...

单片机课程设计

目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...

单片机课程设计

1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...