数电课设 简易洗衣机控制电路

合集下载

数电课程设计 洗衣机定时控制器

数电课程设计 洗衣机定时控制器

数字电子技术课程设计报告题目:洗衣机定时控制器班级:洗衣机定时控制器一、设计任务及要求:1.设计脉冲信号源(秒脉冲)2.至少能显示 1:00—12:593.具备校时功能4.附加特殊功能设计(报时功能)二、方案设计与论证:所谓数字钟,是指利用电子电路构成的计时器。

相对机械钟而言,数字钟能达到准确计时,并显示小时、分、秒,同时能对该钟进行调整。

在此基础上,还能够实现整点报时的功能。

其中有振荡器,分频器,校时电路,报时电路,计数器,译码器和显示器七部分组成。

振荡器和分频器组成标准秒信号发生器,不同进制的计数器产生计数,译码器和显示器进行显示,通过校时电路实现对时,分的校准方案一:使用 COMS 数字芯片,使用专用时钟芯片,使用十进制计数器,以及使用万用板焊接电路,分模块搭建电路,使用专用电源供电。

优点:计时准确,反应灵敏,思路简单,性能稳定,成功率高,便于调试。

缺点:驱动能力弱,走线复杂,对数电知识的利用并不充分。

方案二:使用 TTL 数字芯片,使用 74LS93 多进制计数器,用 555 定时器自建时钟模块,使用 USB 供电,使用 PCB 制板。

优点:电路驱动能力强,不必考虑输入脚悬空的问题,充分利用了模电、数电的知识,外观漂亮,供电方便。

缺点:整体布局比较麻烦,排查错误比较麻烦,时钟性能一般。

在比较两个方案的优缺点后,选择了第二个方案,进行由上而下层次化的设计,先定义和规定各个模块的结构,再对模块内部进行详细设计。

通过仿真,原理图设计,PCB 制作,分步骤调试,来解决方案二的不足。

使做出来的效果又好,又能充分利用学过的数电知识。

可以体现数电课设的真正内涵。

我们设计的电子钟,严格按照设计要求,具有整点报时,调时,调分等功能;特别是,我们的调时调分开关,都加上了消抖电路,使用了模拟电路消抖,省去了一些数字芯片,这些都是我们组,区别于其他组的地方。

设计原理及框图定时控制器实际上是一个对标准频率进行计数的计数电路,由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路,同时标准的 1kHZ 时间信号必须做到准确稳定。

数电课设 简易洗衣机控制电路.

数电课设 简易洗衣机控制电路.

课程设计任务书学生姓名: 专业班级: 信息sy1101 指导教师: 工作单位: 信息工程学院 题 目: 简易洗衣机控制电路的设计与实现 初始条件:zzzzzzz本设计既可以使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等,也可以使用单片机系统构建多功能数字钟。

用数码管显示定时时间。

要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。

2、技术要求:1)设计一个电子定时器,控制洗衣机按如下洗涤模式进行工作:2)当定时时间达到终点时,一方面使电机停机,同时用指示灯提醒用户。

3)用两位数码管显示洗涤的预置时间(以分钟为单位),按倒计时方式对洗涤过程作计时显示,直到时间到而停机。

4)用三只LED 灯表示“正转”、“反转”和“暂停”3个状态。

5)确定设计方案,按功能模块的划分选择元、器件和集成电路,设计分电路,阐述基本原理。

画出电路原理图。

3、查阅至少5篇参考文献。

按《武汉理工大学课程设计工作规范》要求撰写设计报告书。

全文用A4纸打印,图纸应符合绘图规范。

时间安排:1、 2013 年 5 月 16 日,布置作课设具体实施计划与课程设计报告格式的要求说明。

2、 2013 年 6 月 25 日至 2013 年 6 月 28 日,方案选择和电路设计。

3、 2013 年 6 月 29 日至 2013 年 7 月 3 日,电路调试和设计说明书撰写。

4、 2013 年 7 月 5 日,上交课程设计成果及报告,同时进行答辩。

指导教师签名: 年 月 日停机目录摘要 (1)Abstract (2)1.概述 (3)1.1设计任务和要求 (3)1.2设计的总体思路 (3)2.总体方案及原理框图 (4)2.1方案提出 (4)2.2方案分析 (5)3.单元电路设计与参数的计算 (6)3.1 秒脉冲发生器 (6)3.2 分秒计时器 (7)3.3 数码显示器 (9)3.4电机控制电路 (10)3.5 报警电路 (13)4、总体电路 (17)5. 心得体会 (19)附录一参考文献 (20)附录二元件清单 (21)附录三实物图 (22)摘要现代生活人民生活水平越来越高,家家户户几乎都有一台洗衣机,随着时代的发展,洗衣机也在不停革新、发展。

《数字电子技术》课程设计-简易洗衣机控制器设计

《数字电子技术》课程设计-简易洗衣机控制器设计

《数字电子技术》课程设计-简易洗衣机控制器设计武汉理工大学《数字电子技术课程设计》附件1:0120809320614 学号:题目简易洗衣机控制器设计学院信息工程学院专业通信工程班级通信0806姓名指导教师2010年月日武汉理工大学《数字电子技术课程设计》课程设计任务书学生姓名: 专业班级: 通信0806指导教师: 工作单位: 信息工程学院题目: 简易洗衣机控制器设计初始条件:要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)时间安排:第1周(7、8节):理论讲解,鉴主报告厅第2,17周:理论设计及实验室安装调试;地点:鉴主15通信工程实验室(1),鉴主13通信工程专业实验室; 第18周:撰写设计报告及答辩;地点:鉴主17楼9号研究室。

指导教师签名: 2010年 3月 5日系主任(或责任教师)签名: 年月日武汉理工大学《数字电子技术课程设计》简易洗衣机控制器设计摘要本设计是基于数字电路定时器的洗衣机简易控制电路。

通过预置洗衣机的洗涤时间来自动的正反转和暂停,并且用不同的指示灯来表示洗衣机的正逆暂停三状态。

当到达定时时间后,会自动报警,发出蜂鸣声。

同时,用两位数码管来显示预置时间和洗涤剩余时间。

具有良好的用户界面。

电路主要分为显示电路、秒脉冲发生电路、计时电路、报警状态电路和洗衣机正反转控制电路。

显示电路使用的是两个单位的共阴极八段数码管,使用两片74ls48作为数码管译码芯片。

秒脉冲发生电路采用了使用成熟广泛的555定时器芯片,通过电脑USB插口供电,产生秒信号,作为各芯片的时钟信号。

计时电路使用的是四片十进制可逆计数器74ls192芯片,分别设计为十进制和六进制电路,用于完成时间的定时、计时功能。

报警电路和状态显示电路使用的是简单的非门和与非门74ls04、74ls00组成的逻辑组合电路,分别控制蜂鸣器和发光二极管,来实现报警和状态显示。

电机控制电路采用了3-8译码器74ls138和与非门电路的组合,实现电机正反暂停状态。

数字电路课程设计---洗衣机控制电路设计

数字电路课程设计---洗衣机控制电路设计

数字电路课程设计---洗衣机控制电路设计辽宁工业大学数字电子技术基础课程设计(论文)题目: 洗衣机控制电路设计院(系):电子与信息工程学院专业班级: 电子102班学号: 100404056学生姓名: 李宏指导教师: 吕娓教师职称: 副教授起止时间: 2012.12.17~2012.12.28数字电子技术基础课程设计(论文)课程设计(论文)任务及评语院(系):电子与信息工程学院教研室:电子信息工程学号 100404056 学生姓名李宏专业班级电子102班课程设计(论洗衣机控制电路设计文)题目设计要求:普通洗衣机的主要控制电路是一个定制器,它按照一定的洗涤程序控制电机做正向和反向转动。

定时器可以采用机械式,也可以采用电子式,这里要求用中小规模集成芯片设计制作一个电子定时器,来控制洗衣机的电机作如下运转。

课定时转动正转(20s) 暂停(10s) 反转(20s) 暂停(10s) 停止程设计定时未到 )论如果定时时间到,则停机并发出音响信号。

文1. 设电机用继电器控制。

洗涤定时时间在0~20min内由用户任意设定。

) 任2. 用两为数码管显示洗涤的预置时间,倒计时方式对洗涤过程作计时务显示,显示至时间到而停机。

3. 当定时时间到达终点时,一方面使电机停转,同时发出音响信号提醒用户注意。

洗涤过程在送入预置时间后即开始运转。

指导教师评语及平时成绩(20%): 论文成绩(60%): 成绩答辩成绩(20%): 总成绩 :指导教师签字: 学生签字:年月日II数字电子技术基础课程设计(论文)摘要本设计是基于数字电路定时器的洗衣机简易控制电路。

通过预置洗衣机的洗涤时间来自动的正反转和暂停,并且用不同的指示灯来表示洗衣机的正逆暂停三状态。

当到达一定时间后,会自动报警,发出蜂鸣声。

同时,用两位数码管来显示预置时间和洗涤剩余时间,具有良好的用户界面。

电路主要分为显示电路,秒脉冲发生电路,计时电路,报警状态电路和洗衣机正反转控制电路。

简易洗衣机控制电路的设计

简易洗衣机控制电路的设计

目录1简易洗衣机控制电路的设计要求 (2)1.1设计目的 (2)1.2设计要求 (2)2简易洗衣机控制电路总体方案的设计与实现 (2)2.1设计方案原理框图 (2)2.2电路设计 (3)2.2.1电路设计思路 (3)2.2.2电路总体电路图 (4)2.2.3仿真过程图 (4)2.3各模块电路功能分析 (6)2.3.1开发环境PROTEUS简介 (6)2.3.2秒脉冲发生器 (6)2.3.3分秒计数器 (8)2.3.4洗涤时间设置电路 (10)2.3.5工作状态显示电路 (11)2.3.6控制开关 (13)2.3.7报警电路 (14)3简易洗衣机控制电路安装与调试 (14)4简易洗衣机控制电路工作分析 (15)4.1陈述简易洗衣机控制电路工作过程 (15)4.2 简易洗衣机控制电路设计结果分析 (15)5心得体会 (16)6参考文献 (17)7本科生课程设计成绩评定表 (18)1简易洗衣机控制电路的设计要求1.1设计目的1)掌握数字电路中选择器、计数器、译码显示等单元电路的综合应用。

2)熟悉洗衣机控制器的工作原理及相应的组合逻辑电路和时序电路。

3)掌握数字电路各部分电路与总体电路的设计、调试、模拟仿真、故障排除及安装的方法1.2设计要求洗衣机电机的工作顺序:启动——>正转20s——>暂停10s——>反转20s——>暂停10s——>停止①设计一个定时器控制洗衣机电机的运转,②用4个LED模拟洗衣机的动作状态:LED1〜LED4右移循环点亮表示正转,LED1〜LED4左移循环点亮表示反转,LED1〜LED4同时闪烁点亮表示暂停,全灭为停止。

③用数码管显示洗涤时间,按倒计时方式对洗涤过程作计时显示,直到时间到停机,并发出音响信号报警。

④洗涤时间在0-60分钟内可由用户任意设定,并设置启动键,在预置定时时间后,按启动键开始机器运转。

⑤设置停止键,在洗涤过程中随时按该键可终止动作,并使显示器清0。

2简易洗衣机控制电路总体方案的设计与实现2.1设计方案原理框图首先,控制开关SW1接地,洗衣机不转动,这时用户自定义洗涤时间,然后将控制开关SW1接高电平,接通电源。

洗衣机的简易控制电路设计

洗衣机的简易控制电路设计

2008—2009学年第二学期《数字电子技术课程设计》设计报告专业班级电气07-1姓名学号开课系室电工电子学教学中心设计日期 2009年7月4日~7日洗衣机的简易控制电路设计一、设计任务及要求:洗衣机是家庭常用电器,一般可以有多种工作模式可供选择。

在此要求设计具有两种工作模式的简易洗衣机控制电路,具有复位、模式设置、洗衣时间预置、启动、暂停功能,并能显示洗衣机的工作状态(如洗涤时间倒计时,电动机的正反转、暂停)。

(一)具体要求:1、设置为复位开关S0,开关状态S0=1时,对系统状态进行复位,计数器清零。

S0=0时,进入模式选择。

2、设置模式选择开关S1。

开关状态S1=0时,执行洗衣模式一,控制洗衣机的电机按照图1的规律循环运转;S1=1执行洗衣模式二,控制洗衣机的电机按照图2规律循环运转。

图1 洗衣模式一图2 洗衣模式二3、洗衣时间预置键K1和K2。

当S1=0,S2=0时,预置模式一的洗衣时间;当S1=1,S2=0时,预置模式二的洗衣时间。

在时间预置功能下,按一下K1按键洗衣时间增加1分钟(一个洗衣循环),按一下K2按键洗衣时间减少1分钟(一个洗衣循环),预置时间范围为0-9分钟。

4、设置启动开关S2。

洗衣模式设定后,开关状态S2=1时,按照设定的洗衣模式启动电机运转。

在洗衣过程中分别用3个LED灯来显示电动机的正转、翻转,间歇等状态。

5、设置暂停开关S3。

当开关状态S3=1时,洗衣暂停,计数器状态、显示均保持,并点亮LED灯显示暂停状态。

S3=0时正常运转。

(二)输入输出资源说明:1、输入信号:四个控制开关S0、S1、S2、S3(开关拨下时S =0,开关拨上时S =1),两个按键K1和K2(按下时K=1,松开时K=0)。

2、外部输入脉冲信号时钟源CP (10Hz ),经适当分频后供计数器使用。

3、输出3组显示译码信号(每组7个输出端),分别接到外部的三个七段数码管M1、M2,M3上(共阴极接法)。

简易洗衣机控制电路设计--protel课程设计

简易洗衣机控制电路设计--protel课程设计

课程设计2010 年7 月9 日课程设计任务书题目:初始条件:电子技术基础知识、电子技术实验室、Protel99se软件及以上版本如protel DXP要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.电路的原理图的设计2.印刷版图的制作3.设计电路的仿真,并给出仿真结果及分析3.设计报告的撰写时间安排:序号阶段内容所需时间1 选题,原理方案设计2天2 电路原理图、印刷版图的设计、电路的仿真3天3 撰写报告1天4 答辩1天合计7天指导教师签名: 2010年 7 月 9 日系主任(或责任教师)签名:年月日摘要 (4)Abstract (5)1 protel 99SE 软件介绍和设计分析 (6)1.1 protel 99SE软件的介绍 (6)1.2 protel99SE软件的系统组成 (6)1.2.1 电路工程设计部分 (6)1.2.2 电路仿真与PLD部分 (6)2 电路原理设计分析 (7)2.1 秒信号产生电路 (7)2.2 计时电路 (8)2.3 显示电路 (9)2.4 状态显示电路 (9)2.5 洗衣机电机控制电路 (11)3 运用protel 99SE绘制原理图 (12)3.1启动原理图设计服务器 (12)3.2设置原理图设计环境 (12)3.3装入所需的元件库 (13)3.4放置元件 (14)3.5原理图布线 (15)3.6编辑和调整 (15)3.8生成网络表 (16)4 运用protel 99SE绘制PCB图 (17)4.1 启动印刷电路板设计服务器 (17)4.2 规划电路板 (18)4.3 设置参数 (19)4.4 装入元件封装库 (19)4.5 装入网络表 (20)4.6 元器件布局 (20)4.7 自动布线 (20)4.8 手工调整 (20)4.9 打印输出印刷电路板图执 (20)5 运用protel 99SE仿真 (21)5.1 仿真的设计流程图 (21)5.2 电路仿真 (21)5.2.1 生成原理图文件 (21)5.2.2仿真器的设置 (21)5.2.3仿真器输出的仿真结果 (22)5.2.4通过波形了解电路的时序。

数字逻辑电路课程设计-全自动洗衣机控制器的设计课案

数字逻辑电路课程设计-全自动洗衣机控制器的设计课案

数字逻辑电路课程设计设计题目全自动洗衣机控制器的设计姓名学号专业班级完成日期目录一、实验目的 (3)二、设计题目与思路 (3)三、总体方案的设计与选择 (4)四、使用元件 (5)五、分析与心得 (5)六、附件一:实验代码 (5)一、实验目的1.进一步掌握数字电路课程所学的理论知识。

2.了解数字电路设计的基本思想和方法,学会科学分析和解决问题。

3.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。

4. 培养认真严谨的工作作风和实事求是的工作态度。

二、设计题目与思路本次数字电路课程设计我选择的题目是“全自动洗衣机控制器”。

这个系统的主要功能是:1.设计一个全自动洗衣机控制器电路,实现对洗衣机的全自动控制。

根据全自动洗衣机的控制原理设计一个控制电路,使之能够控制全自动洗衣机完成整个工作过程。

洗衣机工作过程如下:当按下复位按钮时,洗衣机上电,控制电路复位到初始状态(默认水位为“中”);使用者可根据衣服的多少,按下水位控制按钮,改变水位设置,以控制上水时加水的多少;当按下启动/暂停按钮时,洗衣机开始洗衣的第一个操作:进水阀门打开,开始上水,并根据水位设置(高、中、低、少)历时不同的时间timeadd(8s、7s、6s、5s);然后进水阀门关闭,电机开始运转,开始洗衣过程,并历时9s;然后电机停止运转,排水阀门打开,开始排水,并根据水位设置(高、中、低、少)历时不同的时间timedrain(7s、6s、5s、4s);然后排水阀门关闭,进水阀门打开,开始第二次上水,并历时timeadd……当甩干结束后,整个洗衣过程完成,扬声器发出持续15秒的急促的“嘀嘀”音,提示用户洗衣结束。

洗衣机工作过程简记如下:空闲(idle)→第一次加水(water1)7s→洗衣(wash)9s→第一次排水(drain1)6s→第二次加水(water2)7s→漂洗(rinse)9s→第二次排水(drain2)6s→甩干(dry)5s→蜂鸣15s2、控制器只要送出对应的控制信号就可以了。

洗衣机自动控制电路 数字逻辑课程设计

洗衣机自动控制电路 数字逻辑课程设计

《数字逻辑》课程设计报告题目:洗衣机自动控制电路目录1 设计任务书2 总体方案设计2.1 功能和逻辑需求分析2.2 总体方案设计3 单元模块设计3.1分倒数单元电路设计3.2 秒倒数单元电路设计3.4 计数器单元电路设计3.2 状态译码器单元电路设计3.5总体电路设计(画出总体电路图)4 电路调试与测试4.1分倒数单元模块4.2秒倒数单元模块4.3计数器单元模块4.4状态译码器单元模块4.5全部器件5 总结1 设计任务书洗衣机自动控制电路为洗衣机设计一控制电路,当洗衣机控制开关打开后,电动机先正转20S,然后暂停10S,随后反转20S,再然后暂停10S;如果定时时间没到,则开始循环,若定时时间到,则停机断电。

定时时间设定范围为0~60分,显示分秒的倒计时。

用LED指示灯表示电机的正转、反转和暂停状态。

2 总体方案设计(1)、计时器:由两片芯片来分别完成分、秒的倒计时功能,分芯片提供预置功能,两片芯片的模均为60.(2)、计数器:通过计数来完成输出洗衣机四种状态(正转 > 暂停 > 反转 > 暂停 > 正转)的切换(3)、状态译码器:将输入的四种状态转换为三种状态(正转、暂停、反转)(4)、所有芯片都使用每秒一脉冲的统一脉冲,实现同步。

2.1 功能和逻辑需求分析1)、计时器:①由于平常用的基础器件无法简单做到倒数功能,所以决定用GAL器件,通过编写ABEL-HEL并在GAL器件上实现。

②计数器的分和秒分别需要8位输出(4位作为十位,另外4位作为个位,每4位二进制数在数码管上显示为一个十进制的数。

)③所以计数器的分和秒必须分为两个GAL器件,但同时秒需要有一个退位输出信号,分需要一个抑制秒继续倒数的输出信号,所以每个芯片需要9个输出端。

④总结:计数器需要两个GAL22v10分别实现分和秒的倒数。

2)、按周期显示正、反灯和暂停灯:①该功能仍然需要GAL器件来实现,首先需要内部能自己计数,电动机先正转20S,然后暂停10S,随后反转20S,再然后暂停10S,按20+10+20+10=60秒为一周期,所以需要6个输出来计数(作为内部计数,可以不必显示)。

课程设计--普通洗衣机的控制电路

课程设计--普通洗衣机的控制电路

课程设计--普通洗衣机的控制电路一﹑设计任务普通洗衣机的控制电路二、设计要求普通洗衣机的主要控制电器是一个定时器;按照一定的洗涤程序控制电机作正向反向转动,系统启动后按定时→正转(15秒)→暂停(5秒)→反转(15秒)→暂停(5秒) →正转(15秒) ……直到定时时间到,则停机并发生音响号。

三、设计内容1.设计思想首先,该电路要实现定时正转、反转、暂停、报警五个功能,可以将后面的四个功能理解为四个状态。

可以用发光二极管的亮灭来表示。

而定时功能可以用555定时器先构成一个时钟脉冲,再用集成芯片来构成一个时间计数器,通过在脉冲的作用计数来控制其状态,直到计数满足要求的时候报警。

2.设计说明方案一:用集成芯片74LS192构成一个时间加法器,用555定时器构成一个1HZ 的多谐振荡器,用来做时钟脉冲,用四个二极管来表示最后的四个状态,将秒位做成六十进制的计数器,然后将其划分为四个状态的时间段。

分别来表示其四个状态。

方案二:用集成芯片74LS192构成一个时间加法器,用555定时器构成一个1HZ 的多谐振荡器,用来做时钟脉冲,用四个二极管来表示最后的四个状态,将秒位做成四十进制的计数器,然后将其划分为四个状态的时间段。

分别来表示其四个状态。

两种方案比较:第一种方案优点是不需要时间转换,所以设置的时间是符合60进制的。

但是不能符合设计所要求的时间间隔,而且加法计数对报警这一功能不好控制,因为设置的时间不一样,所以逻辑关系不一样,所以不好找齐逻辑关系。

而第二种方案对于报警这一功能,特别容易实现,只需分钟位,秒位输出全为0,就可以了。

而且40进制的对设计所要求的时间段比较好划分。

唯一不足是不满足对定时的准确计数,这一方案是将40进制作为进位的,比日常的少二十秒。

启正报反暂暂计时时间定综上所述,选择第二种方案,更利于实现。

3.系统方案或者电路结构图⑴.1HZ的时钟脉冲。

输入输出阈值输入V1 触发输入V2复位R 输出Vo 放电管T××0 0 导通0 0 1 1 截止1 1 1 0 导通0 1 1 不变不变中t1≈0.7(R1+R2)C=0.651s为高电平时的时间,t2≈0.7R2×C=0.35s为低电平时的时间⑵.时间减法计数器:要求要实现置数功能,减数功能。

数电洗衣机时控电路课程设计报告

数电洗衣机时控电路课程设计报告

电子技术课程设计报告设计题目:洗衣机时控电路院(部):专业班级:学生姓名:学号:指导教师:目录洗衣机控制电路 (1)一、绪论 (1)1.1设计任务 (1)1.2 要求 (1)二、洗衣机控制电路分析 (2)2.1电路工作总体框图 (2)2.2六十进制秒计数器和一百进制分计数器 (3)2.3预置时间 (7)2.4循环电路 (8)三、总电路 (11)3.1正转仿真 (11)3.2反转仿真 (12)3.3停止仿真 (13)四、结束语与心得体会 (14)参考文献 (15)洗衣机控制电路摘要:本设计是基于数字电路定时器的洗衣机简易控制电路,着眼于目前普遍应用在洗衣机控制系统上的正反转动,设计了一个普通洗衣机的主要控制电路,定时器,它按照一定的洗涤程序控制电机做正向和反向转动,并且运用数码管来显示预置时间和洗涤剩余时间。

运用仿真电路实现其运转功能。

关键词:洗衣机数字电路proteus 仿真电路设计一、绪论1.1设计任务开始前我们通过控制三向开关来对其运行时间进行预置即洗涤时间设置,开始运转后,洗涤时间显示进行减计数功能,当秒计数器的个位减为零时就向十位借数,十位减一(分计时器同理),而在同时通过并行输出寄存器稳定输出秒十位数据,再经过门电路来控制洗衣机运行状态的显示灯,当设置的洗涤时间到后,显示器显示清零。

运转状态:定时转动→正转→暂停→反转→暂停→停止↑↓——定时未到———1.2 要求首先设计让倒计时显示器按规律运行的电路,再通过倒计时电路的信号来控制交通灯按4 种状态循环变换。

电源电路采用9V 变压器、整流桥和稳压管,使220V 的交流电转换为5V 的直流电。

4Hz 方波脉冲由555 定时器产生,再由74LS193 实现4 分频,最终输出1Hz 的脉冲信号;用两块74LS193 实现倒计时,一块显示十位,一块显示个位,用2 个D 触发器74HC74实现30s,20s,5s 时间的转换;利用倒计时电路控制4 个状态。

湖南工程学院 数电课程设计——简易洗衣机控制系统讲解

湖南工程学院 数电课程设计——简易洗衣机控制系统讲解

课 程 设计课程名称 数字电子技术课题名称 简易洗衣机控制器专 业 自动化班 级 1001学 号 25姓 名 肖锦朋 指导教师 郭照南2012年12月 21 日湖南工程学院课程设计任务书课程名称:数字电子技术题目: 简易洗衣机控制器——A课题专业班级: 自动化1001学号:25学生姓名:肖锦朋指导老师:郭照南审批:任务书下达日期2012年12月10日星期一设计完成日期2010年12月21日星期五目录第1章设计总体思路和框图 (1)1.1设计总体思路及基本原理 (1)1.2框图 (1)第2章单元电路设计(各单元电路图) (2)2.1倒计时显示及置数模块 (2)2.2置数模块 (3)2.3步数显示模块 (3)2.4LED显示动作模块 (4)2.5手动控制循环停止模块 (5)第3章总电路设计(总电路图) (6)第4章安装、调试步骤 (7)第5章故障分析与电路改进 (8)5.1常见的故障现象 (8)5.2产生故障的主要原因及解决方法 (8)(一)倒计时显示管显示不正确 (8)(二)步骤显示错误 (8)(三)不能正确置数 (9)(四)手动模式时不能自动停下来 (9)第6章总结与设计调试体会 (9)附录 (10)元器件清单: (10)参考文献: (11)第1章设计总体思路和框图1.1设计总体思路及基本原理要实现简易洗衣机控制,首先要实现对每一步的控制。

当第1步的时候用置数控制模块控制倒计时计数器置数为5秒,步骤计数器置数为1,同时用步骤计数器控制工序显示模块使第一个LED亮;当倒计时模块全部减为0的时候,借位输出一个低电平,置数模块将其置数为12秒,并且给步骤计数器一个脉冲使其加1,显示为2,同时用步骤计数器控制工序显示模块使第二个LED点亮。

在这时有一个12秒的循环,怎样实现使步骤显示器显示循环12秒为2呢?再用一个160的计数器,当前面那个计数器为3的时候,把后面那个计数器置数为2,这样就使显示2的步骤代表了两次12秒的循环了。

简易洗衣机控制电路

简易洗衣机控制电路

课程设计任务书学生姓名: 瞿子敬 专业班级: 通信1104 指导教师: 刘可文 工作单位: 信息工程学院 题 目: 简易洗衣机控制电路的设计与实现 初始条件:双向计数器74LS192,七段共阴数码管,译码器74LS48,555定时器,发光二极管,电阻若干,门电路若干,开关若干。

本设计既可以使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等,也可以使用单片机系统构建多功能数字钟。

用数码管显示定时时间。

要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。

2、技术要求:1)设计一个电子定时器,控制洗衣机按如下洗涤模式进行工作:2)当定时时间达到终点时,一方面使电机停机,同时发出音响信号(可换成指示灯)提醒用户。

3)用两位数码管显示洗涤的预置时间(以分钟为单位),按倒计时方式对洗涤过程作计时显示,直到时间到而停机。

4)用三只LED 灯表示“正转”、“反转”和“暂停”3个状态。

5)确定设计方案,按功能模块的划分选择元、器件和集成电路,设计分电路,阐述基本原理。

画出电路原理图。

3、查阅至少5篇参考文献。

按《武汉理工大学课程设计工作规范》要求撰写设计报告书。

全文用A4纸打印,图纸应符合绘图规范。

时间安排:1、 2013 年 5 月 16 日,布置作课设具体实施计划与课程设计报告格式的要求说明。

2、 2013 年 6 月 20 日至 2013 年 6 月 25 日,方案选择和电路设计。

3、 2013 年 6 月 29 日至 2013 年 7 月 4 日,电路调试和设计说明书撰写。

4、 2013 年 7 月 5 日,上交课程设计成果及报告,同时进行答辩。

指导教师签名: 2013 年 7 月 5 日停机目录摘要 (I)Abstact (II)1 概述 (1)2 简易洗衣机控制器设计方案及原理框图 (2)2.1 设计方案 (2)2.2方案比较与选择 (3)3 单元电路设计及相关参数 (4)3.1 计时电路 (4)3.2 预置数电路与复位键 (4)3.3 时钟脉冲电路 (5)3.4 运行状态显示电路 (7)4 电路的仿真 (8)4.1 时钟脉冲电路 (8)4.2 定时器 (8)4.3 电机工作指示灯 (9)5 总电路 (12)5.1总图说明 (12)6 设计感悟 (13)7 参考文献 (15)附录一 (16)附录二 (17)附录三 (20)摘要本设计应用于洗衣机的自动控制,使用数字电子技术相关知识,设计出相应电路,并采用multisim仿真软件运行简易洗衣机控制器的工作过程。

FGPD洗衣机控制电路_数电实验

FGPD洗衣机控制电路_数电实验

2010—2011学年第二学期《数字电子技术课程设计》报告课题:简易洗衣机控制电路专业班级:姓名:学号:设计日期:目录一、设计任务及要求-------------------------------------------------------------------------------2(一)具体要求--------------------------------------------------------------------------------2 (二)输入输出资源说明--------------------------------------------------------------------2二、设计原理与方案--------------------------------------------------------------------------------4(一)顶层设计方案---------------------------------------------------------------------------4 (二)分频器设计方案------------------------------------------------------------------------5 (三)计时器(倒计时)设计方案---------------------------------------------------------5 (四)显示器设计方案------------------------------------------------------------------------5 (五)暂停设计方案---------------------------------------------------------------------------5三、电路设计、仿真与实现-----------------------------------------------------------------------6(一)顶层的设计实现------------------------------------------------------------------------6(二)分频器的设计实现---------------------------------------------------------------------8 (三)计数器(倒计时)的设计实现-----------------------------------------------------10 (四)显示器设计实现-----------------------------------------------------------------------15 (五)暂停设计实现--------------------------------------------------------------------------17 (六)Fit Design 结果------------------------------------------------------------------------18四、分析与讨论-------------------------------------------------------------------------------------18一、设计任务及要求:洗衣机是家庭常用电器,一般可以有多种工作模式可供选择。

数字电路课程设计洗衣机

数字电路课程设计洗衣机

总体方案分析及选择:洗衣机电路包含有总的控制模块,洗涤控制模块,洗涤记时模块,电动机控制模块以及LCD 液晶板的动态显示模块.经过分析后,我们把前四个模块进行组合,把他们合成一个模块即:总控制模块.他们之间的逻辑联结关系,是对数电课程的一个很好总结,也是自己对新知识(LCD 液晶板的动态显示)学习理解运用能力的一个很好的提升机会。

基本功能要求:1要求设计制作一个普通功能洗衣机控制电路,使之能控制洗衣机的进水阀,排水阀,洗涤程序电机,甩干驱动装置等按预定程序工作.总体过程包括:进水浸泡洗涤排水甩干五个过程.进水从电路启动开始.其中浸泡可供选择,洗涤时间可以预置,洗涤结束时发出铃声进行提示并自动切断电源.发生故障如:缺水或进水超时排水超时甩干碰桶等时也可自动切断电源!2用中小规模集成电路芯片或CPLD/FPGA设计符合上述任务要求的电路,并制作出能实际运行的装置.3安装并调试电路,测试各部分电路功能或模型.4演示并交验硬件装置.下载实现图:局部功能模块总控模块:该模块实现了对洗衣机整个运行过程的控制,打开电源后由模块内部进行控制,按洗涤过程工致洗衣机的运转.同时在输入端还给了报警输入,当发生故障时洗衣机自动短电.复位端可以让洗衣机进入初始状态.在输入端还有10个总线输入可以人为进行置数,从而控制各个过程的时间长短.当给甩干时间一个时间,其他都置为0可以让洗衣机只进行甩干操作.VHDL文件:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity xiyiji isport(clk0, clk1, rst, alarm: in std_logic;-----clk0:控制开关脉冲.clk1:记时开关脉冲.Rst:复位端.alarm:报警输入端.------- water_inh, water_inl, im_th, im_tl, wash_th: in std_logic_vector(3 downto0);wash_tl, water_outh, water_outl, dry_th, dry_tl: in std_logic_vector(3 downto 0); -----进水,浸泡,洗涤,出水,甩干置数端高位和低位输入端-----------water_in, water_out, immersion, dry, z1, z2, voice, poweroff: out std_logic; -----进水,出水,浸泡,甩干,洗涤,响铃,断电输出端-------display_th, display_tl: out std_logic_vector(3 downto 0)-------------------输出时间显示高位低位输出端-------------);end entity xiyiji;architecture behave of xiyiji issignal js, js_ten : std_logic;signal im, im_ten : std_logic;signal wa, wa_ten : std_logic;signal wa1, wa2, pwf: std_logic;signal cs, cs_ten : std_logic;signal dr, dr_ten : std_logic;signal xl, xl_ten : std_logic;signal js_dh, js_dl: std_logic_vector(3 downto 0);signal im_dh, im_dl: std_logic_vector(3 downto 0);signal wa_dh, wa_dl: std_logic_vector(3 downto 0);signal cs_dh, cs_dl: std_logic_vector(3 downto 0);signal dr_dh, dr_dl: std_logic_vector(3 downto 0);signal xl_dh, xl_dl: std_logic_vector(3 downto 0);signal dis_th,dis_tl: std_logic_vector(3 downto 0);begin-----------------------控制:控制器件实现洗衣机的功能:进水->浸泡->洗涤->出水->甩干->响铃->断电---------------control:process(clk0, rst,alarm)variable n: integer;beginif alarm = '1' thenpwf <= '1';elseif rst = '1' thenn := 0;im_ten <= '0';js_ten <= '0';wa_ten <= '0';cs_ten <= '0';dr_ten <= '0';xl_ten <= '0';pwf <= '0';elsif clk0 = '1' and clk0 'event thenif n = 0 thenif water_inh = "0000"and water_inl = "0000"thenn := 1;elsejs_ten <= '1';if js = '1' thenn := 1;end if;end if;elsif js = '0' and n = 1 thenif im_th = "0000"and im_tl = "0000"thenn := 2;elseim_ten <= '1';if im = '1' thenn := 2;end if;end if;elsif im = '0' and n = 2 thenif wash_th = "0000"and wash_tl = "0000"thenn := 3;elsewa_ten <= '1';if wa = '1' thenn := 3;end if;end if;elsif wa = '0' and n = 3 thenif water_outh = "0000"and water_outl = "0000"thenn := 4;elsecs_ten <= '1';if cs = '1' thenn := 4;end if;end if;elsif cs = '0' and n = 4 thenif dry_th = "0000"and dry_tl = "0000"thenn := 5;elsedr_ten <= '1';if dr = '1' thenn := 5;end if;end if;elsif dr = '0' and n = 5 thenxl_ten <= '1';if xl = '1' thenn := 6;end if;elsif xl = '0' and n = 6 thenpwf <= '1';end if;end if;end if;end process;-----------------------------记时----------------------------- ------------------进水记时--------------------------js_jishiqi:process(clk1, js_ten)beginif js_ten = '0' thenjs_dh <= water_inh;js_dl <= water_inl;js <= '0';elsif clk1 = '1' and clk1 'event thenif js_dh = "0000"and js_dl = "0000"thenjs <= '0';elsejs <= '1';if js_dl = "0000"thenjs_dl <= "1001";js_dh <= js_dh - 1;elsejs_dl <= js_dl - 1;end if;end if;end if;end process;-------------浸泡记时-----------------------im_jishiqi:process(clk1, im_ten)beginif im_ten = '0' thenim_dh <= im_th;im_dl <= im_tl;im <= '0';elsif clk1 = '1' and clk1 'event thenif im_dh = "0000"and im_dl = "0000"then im <= '0';elseim <= '1';if im_dl = "0000"thenim_dl <= "1001";im_dh <= im_dh - 1;elseim_dl <= im_dl - 1;end if;end if;end if;end process;-----------------洗涤记时---------------------- wa_jishiqi:process(clk1, wa_ten)variable m: integer;beginif wa_ten = '0' thenwa_dh <= wash_th;wa_dl <= wash_tl;wa <= '0';wa1 <= '0';wa2 <= '0';m := 0;elsif clk1 = '1' and clk1 'event thenif wa_dh = "0000"and wa_dl = "0000"then wa <= '0';elsewa <= '1';if m = 0 thenwa1 <= '1';wa2 <= '1';elsif m = 10 thenwa1 <= '0';wa2 <= '1';elsif m = 13 thenwa1 <= '1';wa2 <= '0';elsif m = 23 thenwa1 <= '0';wa2 <= '0';elsif m = 26 thenm := 0;end if;m := m + 1;if wa_dl = "0000"thenwa_dl <= "1001";wa_dh <= wa_dh - 1;elsewa_dl <= wa_dl - 1;end if;end if;end if;end process;--------------出水记时--------------------------- cs_jishiqi:process(clk1, cs_ten)beginif cs_ten = '0' thencs_dh <= water_outh;cs_dl <= water_outl;cs <= '0';elsif clk1 = '1' and clk1 'event thenif cs_dh = "0000"and cs_dl = "0000"then cs <= '0';elsecs <= '1';if cs_dl = "0000"thencs_dl <= "1001";cs_dh <= cs_dh - 1;elsecs_dl <= cs_dl - 1;end if;end if;end if;end process;--------------甩干记时-----------------------dr_jishiqi:process(clk1, dr_ten)beginif dr_ten = '0' thendr_dh <= dry_th;dr_dl <= dry_tl;dr <= '0';elsif clk1 = '1' and clk1 'event thenif dr_dh = "0000"and dr_dl = "0000"then dr <= '0';elsedr <= '1';if dr_dl = "0000"thendr_dl <= "1001";dr_dh <= dr_dh - 1;elsedr_dl <= dr_dl - 1;end if;end if;end if;end process;------------------响铃记时---------------------- xl_jishiqi:process(clk1, xl_ten)beginif xl_ten = '0' thenxl_dh <= "0010";xl_dl <= "0000";xl <= '0';elsif clk1 = '1' and clk1 'event thenif xl_dh = "0000"and xl_dl = "0000"then xl <= '0';elsexl <= '1';if xl_dl = "0000"thenxl_dl <= "1001";xl_dh <= xl_dh - 1;elsexl_dl <= xl_dl - 1;end if;end if;end if;end process;----------------------------显示时间--------------------------xianshishijian: process(clk1, js_ten, im_ten, wa_ten)beginif js_ten = '1' and im_ten = '0' and wa_ten = '0' and cs_ten = '0' and dr_ten = '0' and xl_ten = '0' thenif clk1 = '1' and clk1 'event thendis_th <= js_dh;dis_tl <= js_dl;end if;elsif im_ten= '1' and wa_ten= '0' and cs_ten= '0' and dr_ten= '0' and xl_ten = '0' thenif clk1 = '1' and clk1 'event thendis_th <= im_dh;dis_tl <= im_dl;end if;elsif wa_ten = '1' and cs_ten = '0' and dr_ten = '0' and xl_ten = '0' then if clk1 = '1' and clk1 'event thendis_th <= wa_dh;dis_tl <= wa_dl;end if;elsif cs_ten = '1' and dr_ten = '0' and xl_ten = '0' thenif clk1 = '1' and clk1 'event thendis_th <= cs_dh;dis_tl <= cs_dl;end if;elsif dr_ten = '1' and xl_ten = '0' thenif clk1 = '1' and clk1 'event thendis_th <= dr_dh;dis_tl <= dr_dl;end if;elsif xl_ten = '1' thenif clk1 = '1' and clk1 'event thendis_th <= xl_dh;dis_tl <= xl_dl;end if;end if;end process;----------------------------输出-----------------------------output:process(dis_th, dis_tl, im, js, cs, dr, wa1, wa2, xl, pwf)begindisplay_th <= dis_th;display_tl <= dis_tl;immersion <= im;water_in <= js;water_out <= cs;dry <= dr;z1 <= wa1;z2 <= wa2;voice <= xl;poweroff <= pwf;end process;end behave;测试文件:-------------------------------------------------------------- VHDL Testbench for xiyiji-- 2009 9 25 11 16 3-- Created by "EditVHDL"-- "Copyright (c) 2002 Altium Limited"------------------------------------------------------------Library IEEE;Use IEEE.std_logic_1164.all;Use IEEE.std_logic_textio.all;Use STD.textio.all;------------------------------------------------------------------------------------------------------------------------entity Testxiyiji isend Testxiyiji;------------------------------------------------------------------------------------------------------------------------architecture stimulus of Testxiyiji isfile RESULTS: TEXT open WRITE_MODE is"results.txt";procedure WRITE_RESULTS(alarm: std_logic;clk0: std_logic;clk1: std_logic;display_th: std_logic_vector(3 downto 0);display_tl: std_logic_vector(3 downto 0);dry: std_logic;dry_th: std_logic_vector(3 downto 0);dry_tl: std_logic_vector(3 downto 0);im_th: std_logic_vector(3 downto 0);im_tl: std_logic_vector(3 downto 0);immersion: std_logic;poweroff: std_logic;rst: std_logic;voice: std_logic;wash_th: std_logic_vector(3 downto 0);wash_tl: std_logic_vector(3 downto 0);water_in: std_logic;water_inh: std_logic_vector(3 downto 0);water_inl: std_logic_vector(3 downto 0);water_out: std_logic;water_outh: std_logic_vector(3 downto 0);water_outl: std_logic_vector(3 downto 0);z1: std_logic;z2: std_logic) isvariable l_out : line;beginwrite(l_out, now, right, 15);write(l_out, alarm, right, 2);write(l_out, clk0, right, 2);write(l_out, clk1, right, 2);write(l_out, display_th, right, 5);write(l_out, display_tl, right, 5);write(l_out, dry, right, 2);write(l_out, dry_th, right, 5);write(l_out, dry_tl, right, 5);write(l_out, im_th, right, 5);write(l_out, im_tl, right, 5);write(l_out, immersion, right, 2);write(l_out, poweroff, right, 2);write(l_out, rst, right, 2);write(l_out, voice, right, 2);write(l_out, wash_th, right, 5);write(l_out, wash_tl, right, 5);write(l_out, water_in, right, 2);write(l_out, water_inh, right, 5);write(l_out, water_inl, right, 5);write(l_out, water_out, right, 2);write(l_out, water_outh, right, 5);write(l_out, water_outl, right, 5);write(l_out, z1, right, 2);write(l_out, z2, right, 2);writeline(RESULTS, l_out);end procedure;component xiyijiport (alarm: in std_logic;clk0: in std_logic;clk1: in std_logic;display_th: out std_logic_vector(3 downto 0);display_tl: out std_logic_vector(3 downto 0);dry: out std_logic;dry_th: in std_logic_vector(3 downto 0);dry_tl: in std_logic_vector(3 downto 0);im_th: in std_logic_vector(3 downto 0);im_tl: in std_logic_vector(3 downto 0);immersion: out std_logic;poweroff: out std_logic;rst: in std_logic;voice: out std_logic;wash_th: in std_logic_vector(3 downto 0);wash_tl: in std_logic_vector(3 downto 0);water_in: out std_logic;water_inh: in std_logic_vector(3 downto 0);water_inl: in std_logic_vector(3 downto 0);water_out: out std_logic;water_outh: in std_logic_vector(3 downto 0);water_outl: in std_logic_vector(3 downto 0);z1: out std_logic;z2: out std_logic);end component;signal alarm: std_logic;signal clk0: std_logic;signal clk1: std_logic;signal display_th: std_logic_vector(3 downto 0);signal display_tl: std_logic_vector(3 downto 0);signal dry: std_logic;signal dry_th: std_logic_vector(3 downto 0);signal dry_tl: std_logic_vector(3 downto 0);signal im_th: std_logic_vector(3 downto 0);signal im_tl: std_logic_vector(3 downto 0);signal immersion: std_logic;signal poweroff: std_logic;signal rst: std_logic;signal voice: std_logic;signal wash_th: std_logic_vector(3 downto 0);signal wash_tl: std_logic_vector(3 downto 0);signal water_in: std_logic;signal water_inh: std_logic_vector(3 downto 0);signal water_inl: std_logic_vector(3 downto 0);signal water_out: std_logic;signal water_outh: std_logic_vector(3 downto 0);signal water_outl: std_logic_vector(3 downto 0);signal z1: std_logic;signal z2: std_logic;beginDUT:xiyiji port map (alarm => alarm,clk0 => clk0,clk1 => clk1,display_th => display_th,display_tl => display_tl,dry => dry,dry_th => dry_th,dry_tl => dry_tl,im_th => im_th,im_tl => im_tl,immersion => immersion,poweroff => poweroff,rst => rst,voice => voice,wash_th => wash_th,wash_tl => wash_tl,water_in => water_in,water_inh => water_inh,water_inl => water_inl,water_out => water_out,water_outh => water_outh,water_outl => water_outl,z1 => z1,);STIMULUS0:processbeginalarm <= '0';dry_th <= "1000";dry_tl<= "0000";im_th <= "0000";im_tl <= "0000";wash_th <= "0000";wash_tl <= "0000";water_inh <= "0000";water_inl <= "0000";water_outh <= "0000";water_outl <= "0000";rst <= '1';wait for 10ns;rst <= '0';wait for 1000ns;alarm <= '1';wait;end process;processbeginclk0 <= '1';clk1 <= '1';wait for 1ns;clk0 <= '0';clk1 <= '0';wait for 1ns;end process;WRITE_RESULTS(alarm,clk0,clk1,display_th,display_tl,dry,dry_th,dry_tl,im_th,im_tl,immersion,poweroff,rst,voice,wash_th,wash_tl,water_in,water_inh,water_inl,water_outh,water_outl,z1,z2);end architecture; 波形图:显示模块:此模块实现将由控制器件产生的时间显示的BCD码与地址选择信号同步的转化成可供LCD显示的ASCII码并同时显示字母WELCOME的功能!VHDL文件:LIBRARY IEEE;USE IEEE.std_Logic_1164.ALL;ENTITY OUTPUT ISPORT(R, CP, BUSY :IN Std_Logic;-----使能输入端,脉冲输入端,输入信号忙输入端--------LINE_OUT,STROBE,RST:OUT STD_LOGIC;------行选择输出端,输入数据使能输出端,复位输出端--- TIME_IN :IN STD_LOGIC_VECTOR(7 DOWNTO 0);--------输入时间-----------ADDR_OUT :OUT Std_Logic_Vector( 3DOWNTO 0);--------地址输出端----------DATA_OUT : OUT Std_Logic_Vector(7 DOWNTO 0));-----数据输出端---------END OUTPUT;ARCHITECTURE XS OF OUTPUT ISTYPE State_type IS(S0,S1,S2,S3,S4);SIGNAL S :State_Type;SIGNAL LCDPT:INTEGER RANGE 0 TO 9;BEGINPROCESS(CP,R)BEGINIF R='1' THENS<=S0;LCDPT<=0;RST<='1';ELSIF CP='1' AND CP 'EVENT THENCASE S ISWHEN S0=> S<=S1;LCDPT<=0;RST<='1';WHEN S1=> RST<='0';STROBE<='0';IF BUSY='0' THENLCDPT<=LCDPT+1;IF LCDPT=8 THENS<=S3;ELSES<=S2;END IF;END IF;WHEN S2=> S<=S1;STROBE<='1';WHEN S3=> STROBE<='0';IF BUSY='0' THENIF LCDPT=9 THENLCDPT<=8;LCDPT<=LCDPT+1;END IF;S<=S4;END IF;WHEN S4=> STROBE<='1';S<=S3;WHEN OTHERS=> NULL;END CASE;END IF;END PROCESS;PROCESS (LCDPT)BEGINCASE LCDPT ISWHEN 0 => NULL;WHEN 1 => DATA_OUT<="01010111" ; ADDR_OUT<="0011"; LINE_OUT<='0';WHEN 2 => DATA_OUT<="01000101" ; ADDR_OUT<="0100"; LINE_OUT<='0';WHEN 3 => DATA_OUT<="01001100" ; ADDR_OUT<="0101"; LINE_OUT<='0';WHEN 4 => DATA_OUT<="01000011" ; ADDR_OUT<="0110"; LINE_OUT<='0';WHEN 5 => DATA_OUT<="01001111" ; ADDR_OUT<="0111"; LINE_OUT<='0';WHEN 6 => DATA_OUT<="01001101" ; ADDR_OUT<="1000"; LINE_OUT<='0';WHEN 7 => DATA_OUT<="01000101" ; ADDR_OUT<="1001"; LINE_OUT<='0';WHEN 8 => DATA_OUT<="0011"&TIME_IN(7 DOWNTO4);ADDR_OUT<="0101";LINE_OUT<='1';WHEN 9 => DATA_OUT<="0011"&TIME_IN(3 DOWNTO0);ADDR_OUT<="0110";LINE_OUT<='1';END CASE;END PROCESS;END ARCHITECTURE;-------1,2,3,4,5,6,7输入字母WELCOME,8,9输入时间变化----------TEST文件:-- VHDL Testbench for output-- 2009 9 23 16 13 33-- Created by "EditVHDL"-- "Copyright (c) 2002 Altium Limited"------------------------------------------------------------Library IEEE;Use IEEE.std_logic_1164.all;Use IEEE.std_logic_textio.all;Use STD.textio.all;------------------------------------------------------------------------------------------------------------------------entity Testoutput isend Testoutput;------------------------------------------------------------------------------------------------------------------------architecture stimulus of Testoutput isfile RESULTS: TEXT open WRITE_MODE is"results.txt";procedure WRITE_RESULTS(ADDR_OUT: std_logic_vector(3 downto 0);CP: std_logic;DATA_OUT: std_logic_vector(7 downto 0);LINE_OUT: std_logic;Reset: std_logic;RST: std_logic;STROBE: std_logic) isvariable l_out : line;beginwrite(l_out, now, right, 15);write(l_out, ADDR_OUT, right, 5);write(l_out, BUSY, right, 2);write(l_out, CP, right, 2);write(l_out, DATA_OUT, right, 9);write(l_out, LINE_OUT, right, 2);write(l_out, Reset, right, 2);write(l_out, RST, right, 2);write(l_out, STROBE, right, 2);writeline(RESULTS, l_out);end procedure;component outputport (ADDR_OUT: out std_logic_vector(3 downto 0);BUSY: in std_logic;CP: in std_logic;DATA_OUT: out std_logic_vector(7 downto 0);LINE_OUT: out std_logic;Reset: in std_logic;RST: out std_logic;STROBE: out std_logic);end component;signal ADDR_OUT: std_logic_vector(3 downto 0);signal BUSY: std_logic;signal CP: std_logic;signal DATA_OUT: std_logic_vector(7 downto 0);signal LINE_OUT: std_logic;signal Reset: std_logic;signal RST: std_logic;signal STROBE: std_logic;beginDUT:output port map (ADDR_OUT => ADDR_OUT,BUSY => BUSY,CP => CP,DATA_OUT => DATA_OUT,LINE_OUT => LINE_OUT,Reset => Reset,RST => RST,STROBE => STROBE);STIMULUS0:processbeginRESET<='1';BUSY <= '0';WAIT FOR 2NS;RESET<='0';WAIT FOR 100NS ;RESET <= '1';WAIT FOR 100NS;wait;end process;PROCESSBEGINCP<='0';WAIT FOR 1NS ;CP<='1';WAIT FOR 1NS;END PROCESS;WRITE_RESULTS(ADDR_OUT,BUSY,CP,DATA_OUT,LINE_OUT,Reset,RST,STROBE);end architecture; 波形图:模块运用了器件库里的LCD显示器件:1、模块运用AD6现有资源,由晶振产生的10MHZ的基准时钟和分频器CDIV可将基准时钟分频,即后续模块所需要的不同频率脉冲及LCD(CLK0)控制器时钟.心得体会本次课程设计是一个很好的锻炼机会。

简易洗衣机控制电路

简易洗衣机控制电路

课程设计任务书
学生姓名: 专业班级: 指导教师: 工作单位: 信息工程学院 题 目: 简易洗衣机控制电路的设计与实现 初始条件:
本设计既可以使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等,也可以使用单片机系统构建多功能数字钟。

用数码管显示定时时间。

要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)
1、课程设计工作量:1周。

2、技术要求:
1)设计一个电子定时器,控制洗衣机按如下洗涤模式进行工作:
2)当定时时间达到终点时,一方面使电机停机,同时发出音响信号(可换成指示灯)提醒用户。

3)用两位数码管显示洗涤的预置时间(以分钟为单位),按倒计时方式对洗涤过程作计时显示,直到时间到而停机。

4)用三只LED 灯表示“正转”、“反转”和“暂停”3个状态。

5)确定设计方案,按功能模块的划分选择元、器件和集成电路,设计分电路,阐述基本原理。

画出电路原理图。

3、查阅至少5篇参考文献。

按《****大学课程设计工作规范》要求撰写设计报告书。

全文用A4纸打印,图纸应符合绘图规范。

时间安排:
1、 年 月 日,布置作课设具体实施计划与课程设计报告格式的要求说明。

2、 年 月 日至 年 月 日,方案选择和电路设计。

3、 年 月 日至 年 月 日,电路调试和设计说明书撰写。

4、 年 月 日,上交课程设计成果及报告,同时进行答辩。

指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日 定时启动→正转20秒→暂停10秒→反转20秒→暂停10秒
定时未到
定时到
停机。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计任务书学生姓名: 专业班级: 信息sy1101 指导教师: 工作单位: 信息工程学院 题 目: 简易洗衣机控制电路的设计与实现 初始条件:zzzzzzz本设计既可以使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等,也可以使用单片机系统构建多功能数字钟。

用数码管显示定时时间。

要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。

2、技术要求:1)设计一个电子定时器,控制洗衣机按如下洗涤模式进行工作:2)当定时时间达到终点时,一方面使电机停机,同时用指示灯提醒用户。

3)用两位数码管显示洗涤的预置时间(以分钟为单位),按倒计时方式对洗涤过程作计时显示,直到时间到而停机。

4)用三只LED 灯表示“正转”、“反转”和“暂停”3个状态。

5)确定设计方案,按功能模块的划分选择元、器件和集成电路,设计分电路,阐述基本原理。

画出电路原理图。

3、查阅至少5篇参考文献。

按《武汉理工大学课程设计工作规范》要求撰写设计报告书。

全文用A4纸打印,图纸应符合绘图规范。

时间安排:1、 2013 年 5 月 16 日,布置作课设具体实施计划与课程设计报告格式的要求说明。

2、 2013 年 6 月 25 日至 2013 年 6 月 28 日,方案选择和电路设计。

3、 2013 年 6 月 29 日至 2013 年 7 月 3 日,电路调试和设计说明书撰写。

4、 2013 年 7 月 5 日,上交课程设计成果及报告,同时进行答辩。

指导教师签名: 年 月 日停机目录摘要 (1)Abstract (2)1.概述 (3)1.1设计任务和要求 (3)1.2设计的总体思路 (3)2.总体方案及原理框图 (4)2.1方案提出 (4)2.2方案分析 (5)3.单元电路设计与参数的计算 (6)3.1 秒脉冲发生器 (6)3.2 分秒计时器 (7)3.3 数码显示器 (9)3.4电机控制电路 (10)3.5 报警电路 (13)4、总体电路 (17)5. 心得体会 (19)附录一参考文献 (20)附录二元件清单 (21)附录三实物图 (22)摘要现代生活人民生活水平越来越高,家家户户几乎都有一台洗衣机,随着时代的发展,洗衣机也在不停革新、发展。

本设计是有关简易洗衣机控制器的设计,利用数字电子技术与电路分析的知识,通过Multisim仿真软件简单地设计并仿真出洗衣机控制器的工作过程,然后根据仿真电路用元器件搭出实物电路。

设计电路中主要包含有脉冲发生器,分秒计时器,3-8译码器,时间译码器和数码管,在脉冲信号作用下,不同时刻输出不同的电平信号,分秒计时器从设定的时间开始倒计时,以此控制洗衣机的工作过程,利用3-8译码器的作用完成洗衣机正转、暂停、反转工作状态的转换,当定时时间达到终点时,一方面使电机停机,同时用指示灯提醒用户。

关键词: 74LS192 555定时器门电路 MultisimAbstractModern people's living standards of life is higher and higher,almost every familiy have a washing machine.With the development of the times, the washing machine is also in constant innovation and development。

This design is about simple washing machine controller design, using the knowledge of digital electronic technology and circuit analysis to make the washing machine controller design and simulation work processes simply through the Multisim simulation software .This design contains a pulse generator circuit, minute and second timer, time decoder and 3-8 decoder,Under the effect of the pulse signal, there is different level signal output at different time, minutes timer start the countdown from a seted time to control the working process of the washing machine. The function of 3-8 decoder is used to change the working state of washing machines. When time reaches the end, on the one hand, make the motor stop, on the other hand, remind the user with lights.Key Words: 74LS192 555timer gate circuit Multisim1.概述1.1设计任务和要求1)设计一个电子定时器,控制洗衣机按如下洗涤模式进行工作:2)当定时时间达到终点时,一方面使电机停机,同时用指示灯提醒用户。

3)用两位数码管显示洗涤的预置时间(以分钟为单位),按倒计时方式对洗涤过程作计时显示,直到时间到而停机。

4)用三只LED灯表示“正转”、“反转”和“暂停”3个状态。

5)确定设计方案,按功能模块的划分选择元、器件和集成电路,设计分电路,阐述基本原理。

画出电路原理图。

1.2设计的总体思路从课程设计要求来看,要求实现电机的正传、反转、暂停,要用三个LED灯的状态来表示,当显示时间前20秒正传、暂停10秒、反转20秒、再暂停10秒,如此一来,周期恰好是60秒,理所当然的分钟计数器、秒计数器是一定要有的,由四位数码管来显示倒计时时间的分和秒。

接下来还要由555定时器搭成多谐振荡器来产生时钟脉冲。

还有个问题,当洗涤时间到了,还要一个报警电路来提示用户洗衣完成,可以用门电路取出倒计时结束时的时间信号来控制电机的停止。

2.总体方案及原理框图2.1方案提出方案一 框图如图2.1所示图2.1 设计方案一方案二 框图如图2.2所示清零 置数图2.2 设计方案二秒脉冲发生器60进制计数器 洗涤时间显示洗涤时间计数器 控制门功放 继电开关 执行电机时间译码2.2方案分析本定时器实际上包含两级定时的概念,一是总洗涤过程的定时,而是在总洗涤过程中又包含电机的正转、反转和暂停三种定时,并且这三种定时是反复循环直至所设定的总定时时间到位置。

当总定时时间在0~20min以内设定一个输入之后T为高电平1,然后用倒计时的方法每分钟减1直至T变为0.在此期间,若Z1=Z2=1,实现正转;若Z1=Z2=0,实现暂停;若Z1=1,Z2=0,实现反转。

工作波形如下图所示。

图2.3 工作波形实现定时的方法很多,比如采用单稳电路实现定时,又如将定时初值预置到计数器中,使计数器运行在减计数状态,当减到全零时,则定时时间到。

而方案一的电路原理图就是采用这种方法来实现的。

由秒脉冲发生器产生的时钟信号经60分频后,得到分脉冲信号。

洗涤定时的时间的初值先通过拨盘或数码开关设置到洗涤时间计数器中,每当分脉冲到来计数器减1,直至减到定时时间到为止。

运行中间,剩余时间经译码后在数码管上进行显示。

上述两种方案中,方案一为单线程控制,思路较清晰,并且实行起来比较简单,故本设计采用方案一。

3.单元电路设计与参数的计算3.1 秒脉冲发生器由555定时器构成的多谐振荡器的电路图如图2.1所示,由于555定时器内部的比较器灵敏度高,输出驱动电流大,功能灵活,而且采用差分电路形式,它的振荡频率受电源电压和温度的影响很小。

所以由555定时器构成的多谐振荡器的振荡频率稳定,不易受干扰。

因此采用此方案。

图3.1 NE555引脚图表3.1 NE555功能表仿真电路如下图:图3.2 秒脉冲发生器电路图仿真出来的输出信号见下图:图3.3仿真输出波形计算值:()s 1C *R 2R *2ln T 21=+=占空比=(R1+R2)/(R1+2R2)=53.47%3.2 分秒计时器一百进制分计数器和六十秒计数器的原理是相同的,不同的是它们的输入脉冲和进制不同而已。

在此,用四片74LS192来实现分计数和秒计数功能,要求需要减计数,所以把它的UP端接到高电平上去,DOWN端接到秒脉冲上。

十分秒位上的输入端B、C端接到高电平上,即从输入端置入0110(十进制的6),秒十位的LD端和借位端BO联在一起,再把秒位的BO端和十秒位的DOWN联在一起。

当秒脉冲从秒位的DOWN端输入的时候秒计数的74LS192开始从9减到0;这时,它的借位端BO 会发出一个低电平到秒十位的输入端DOWN,秒十位的计数从6变到5,一直到变为0;当高低位全为零的时候,秒十位的BO发出一个低电平信号,DOWN为零时,置数端LD等于零,秒十位完成并行置数,下一个DOWN脉冲来到时,计数器进入下一个循环减计数工作中。

图3.4 74LS192引脚图表3.2 74LS192功能表查阅相关资料后,在分计数部分的十位输入端、秒个位的脉冲输入端和四片74192的清零端都设置了开关,利用开关进行置数,如下图所示。

图3.5 74LS192秒分连接电路其中J1,J2,J3为置数开关,若不置数则为洗衣机原定工作时间10分钟,操作开关可使洗衣机工作时间变长;J4为清零开关,用来使定时清零;J5是暂停开关,可以手动对洗衣机进行暂停控制。

置数开关通过控制分十位的初始值进行定时置数;清零开关通过控制74LS192的清零端来控制清零;暂停开关是通过一个单刀双置开关在时钟脉冲与VCC 之间进行切换实现暂停功能。

3.3 数码显示器数码显示部分主要是将洗衣剩余时间显示出来,通过七段共阳极数码管与4线-7段译码器74LS47联合使用,显示数码。

仿真中,数码显示使用的是数码管与74LS47集成的原件,实际焊接中使用的是分立原件。

图3.6 74LS47引脚图图3.3 74LS47功能表数码显示仿真结果如下图所示:图3.7 数码显示3.4电机控制电路在时间译码,状态转化的单元电路中,用三个指示灯,分别是绿灯代表“正转”、黄灯代表“暂停”、蓝灯代表“反转”。

相关文档
最新文档