VHDL语言的洗衣机控制器设计---.doc
《VHDL语言的洗衣机控制器设计---.doc》由会员分享,可在线阅读,更多相关《VHDL语言的洗衣机控制器设计---.doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流VHDL语言的洗衣机控制器设计-.精品文档.目 录一、目的2二、内容及要求21、设计的主要内容22、设计的主要要求3三、原理31 基于状态机的控制电路设计32 洗衣机控制器的工作原理3(1)洗衣机的工作状态3(2)全自动洗衣过程4(3)单独执行某个洗衣程序4(4)设计思路5四、步骤及仿真图7五、 程序设计10(1)时钟分频模块10(2)数码管显示11(3)定时器电路 12。(4)预置时间和编码电路13(5)时序电路13(6)译码器14六、心得体会14七、参考文献15一、目的 1 学习掌握全自动洗衣机的控制原理。2 掌握基于有限状态机的控制电路
2、设计方法.二、内容及要求1、设计的主要内容:设计一个全自动洗衣机控制器电路,实现对洗衣机的全自动控制。 根据全自动洗衣机的控制原理设计一个控制电路, 使之能够控制全自动洗衣机完成整个 工作过程。洗衣机工作过程分为两种情况: (1)全部自动完成 当按下复位按钮时,洗衣机上电,控制电路复位到初始状态(默认水位为“中”;使用 ) 者可根据衣服的多少,按下水位控制按钮,改变水位设置,以控制上水时加水的多少;当按 下启动/暂停按钮时,洗衣机开始洗衣的第一个操作:进水阀门打开,开始上水,并根据水 位设置(高、中、低、少)历时不同的时间timeadd(8s、7s、6s、5s) ;然后进水阀门关闭, 电机开始
3、运转,开始洗衣过程,并历时 9s;然后电机停止运转,排水阀门打开,开始排水, 并根据水位设置(高、中、低、少)历时不同的时间timedrain(7s、6s、5s、4s) ;然后排水 阀门关闭,进水阀门打开,开始第二次上水,并历时timeadd当甩干结束后,整个洗衣 过程完成,扬声器发出持续 15 秒的急促的“嘀嘀”音,提示用户洗衣结束。正常运行状态 下全自动洗衣机工作过程:空闲(idle)第一次加水(water1)7s洗衣(wash)9s第一次排水(drain1)6s第二 次加水(water2)7s漂洗(rinse)9s第二次排水(drain2)6s甩干(dry)5s蜂鸣 15s 。 洗衣机整
4、个工作过程可分为 9 个状态,运用有限状态机的设计思想来实现。 (2)人工干预 在每个工作状态下,如果想要洗衣机暂停工作,可按下启动/暂停按钮,则洗衣机立刻 暂停当时的操作。比如,在第一次加水过程中,若按下启动/暂停按钮,则进水阀门立刻关 闭,暂停上水,计时暂停;当再次按下启动/暂停按钮,则进水阀门又打开,并继续计时, 直到加水满 timeadd 后,进入洗衣过程。 洗衣机功能设置: 打开洗衣机盖/合上洗衣机盖:当洗衣机在甩干过程中,若打开洗衣机盖,则洗衣机 应立即暂停工作,停止电机运转和排水;只有合上洗衣机盖,洗衣机才能继续工作。因此洗 衣机控制器有一个 open_door 输入信号,并根据
5、此信号控制洗衣机的动作。 水位控制:有一个水位控制按钮,逐次按动它,水位可以在高、中、低、少这 4 档 间切换,以控制上水时加水的多少。 洗衣模式选择:有一个洗衣模式选择按钮,在洗衣机上电后开始启动之前,按动此 按钮,可以选择洗衣机单独执行不同的洗衣程序:浸泡、洗涤、漂洗、脱水(甩干) ;若不 按此按钮,则默认全程自动执行浸泡、洗涤、漂洗、甩干这 4 个程序。2、设计的主要要求:(1)根据设计题目要求编写相应程序代码。(2)画出洗衣机控制器包括不同洗衣模式的完整的状态转移图。(3)对编写的VHDL程序代码进行编译和仿真。(4)总结设计内容。三、原理1 基于状态机的控制电路设计有限状态机(FSM
6、,Finite State Machine)是一种重要的时序逻辑电路单元,尤其适 合于设计数字系统的控制模块。 状态机可以认为是组合逻辑和寄存器逻辑的特殊组合, 它一 般包括两个部分:组合逻辑部分和寄存器部分。组合逻辑部分又包括次态逻辑和输出逻辑, 分别用于状态译码和产生输出信号; 寄存器部分用于存储状态。 状态机的次态是现态及输入 信号的函数,输出信号根据状态机的现态或输入信号而定。 根据输出信号产生方法的不同,状态机可分为两类:摩尔(Moore)型状态机和米里 (Mealy)型状态机。对于 Moore 型状态机,其输出只为状态机当前状态的函数,而与输入 无关。而对于 Mealy 型状态机,
7、其输出不仅与状态机当前状态有关,而且与输入有关。 实用的状态机一般都设计为同步时序电路,它在时钟信号的触发下,完成各状态之间 的转移,并产生相应的输出。 采用 Verilog HDL 语言实现基于状态机的控制电路设计, 就是在时钟信号的触发下, 完 成两项任务: (1)用 case 或 if-else 语句描述出状态的转移, (2)描述状态机的输出信号(通 常是控制信号) 。 2 洗衣机控制器的工作原理 (1)洗衣机的工作状态 洗衣机有 9 个工作状态分别为:空闲(idle) 、第一次加水(water1) 、洗衣(wash) 、第 一次排水(drain1) 、第二次加水(water2) 、漂洗
8、(rinse) 、第二次排水(drain2) 、甩干(dry) 、 蜂鸣(beep) 。 (2)全自动洗衣过程 最简单的操作是在洗衣机上电后(默认水位为“中”,通过水位控制按钮设置好合适的 ) 水位,然后按下start_pause启动/暂停按钮,使洗衣机全自动完成整个洗衣过程,此时洗衣机控制器状态转移图如图 1所示。 图1 洗衣机控制器状态转移图start_p ause rst idle m=0 , w=0 d=0 15s beep m=0,d=0 speaker water1 w=1 m=0 , 7s wash m=1 w=0 , 浸泡 9s 甩干 5s dry m=1,d=1 w=0 6s
9、 drain2 d=1 w=0, m=0 9s rinse m=1 w=0,d=0 7s drain1 d=1 w=0, m=0 6s water2 w=1 m=0,d=0 洗涤 漂洗图 1 全自动洗衣机控制器的状态转移图 。 一旦按下 rst 按钮, 则电路复位到初始状态, 控制信号 m=0, w=0, d=0。 当按下 start_pause 启动/暂停按钮时,则进入 water1 状态,w = 1,使进水阀门打开,开始上水,并历时 7s。然 后转移到下一状态wash,w = 0,使进水阀门关闭;同时 m = 1,使电机开始运转,开始 洗衣过程,并历时 9s。再转移到下一状态drain1,
10、直到当甩干结束后,整个洗衣过 程完成,扬声器发出持续 15 秒的急促的“嘀嘀”音,提示用户洗衣结束,控制器又返回到 初始状态。 (3)单独执行某个洗衣程序 但有时候,人们可能需要单独执行某个洗衣程序,如洗涤或脱水,这时可以在洗衣前通 过按动洗衣模式选择按钮来选择不同的洗衣程序。 在这种情况下, 洗衣机控制器的状态转移 图就会比图 1更复杂一些,下面加以详细说明。 首先在 idle 状态下,当按下启动/暂停按钮时,控制器要根据不同的洗衣模式跳转到不 同的状态:若默认是全自动洗衣程序或选择浸泡程序,则跳转到 water1;若选择洗涤程序, 则跳转到 wash;若选择漂洗程序,则跳转到 water2
11、;若选择甩干,则跳转到 dry。而当洗衣机执行完相应的洗衣程序后,则所有控制信号、计时器应清零,同时控制器应 返回初始状态。因此,在 water1 状态下,当加好水时控制器不是直接跳转到 wash,而是要 先判断洗衣模式是否为浸泡程序,若是,则跳转到 idle;若不是,才直接跳转到 wash。同 理,在 drain1 状态下,当排完水时控制器不是直接跳转到 water2,而是要先判断洗衣模式是 否为洗涤程序,若是,则跳转到 idle;若不是,才直接跳转到 water2。在 drain2 状态下,当 排完水时控制器不是直接跳转到 dry,而是要先判断洗衣模式是否为漂洗程序,若是,则跳 转到 id
12、le;若不是,才直接跳转到 dry。(4)设计思路洗衣机控制器系统结构图如图 2所示,将整个设计划分为两个子模块:时钟分频子模 块和洗衣机状态控制器子模块。 图2 洗衣机控制器系统结构图 (1)时钟分频子模块 clkdiv.v 将系统时钟 50MHz 分频为 1KHz, 再将 1KHz 分频为 1Hz, 以产生洗衣结束时的提示蜂 鸣音 speaker=clk_1Hz&clk_1KHz&alarm(每间隔 1s 产生一个音频为 1KHz 的提示音) 。 1Hz 的时钟信号还作为洗衣机状态控制器子模块的输入时钟信号,驱动洗衣定时器计 数。(2)洗衣机状态控制器子模块 wash_ctrl.v 设计时
13、,首先应画出状态转移图并仔细分析,明确在每个状态下控制器要输出哪些控 制信号,计数器该怎样计数;当希望洗衣机暂停时,所有控制信号应都变为 0,计数器暂停 计数。当计数器正常计数到预定值时,应跳转到下一状态。然后用 case 语句、if-else 语句对 状态转移和输出进行描述。 信号定义: input clk_1KHz, clk_1Hz, rst, start_pause, mode, level, open_door; /* start_pause:启动/暂停按钮信号,高有效; mode:洗衣模式选择信号,高有效。不按时,默认全程 执行浸泡、洗涤、漂洗、甩干这 4 个程序;每按一下,单独选
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 语言 洗衣机 控制器 设计
限制150内