



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-. z.Simulink逻辑电路仿真交通灯设计2014春季 Matlab系统仿真分析作业 目录 TOC o 1-3 h z u HYPERLINK l _Toc388879076设计说明 PAGEREF _Toc388879076 h 1HYPERLINK l _Toc388879077设计思路 PAGEREF _Toc388879077 h 1HYPERLINK l _Toc388879078具体设计步骤 PAGEREF _Toc388879078 h 2HYPERLINK l _Toc388879079计数器的设计 PAGEREF _Toc388879079 h 2HYPERLINK l
2、 _Toc388879080计数器的仿真 PAGEREF _Toc388879080 h 10HYPERLINK l _Toc388879081交通灯电路设计。 PAGEREF _Toc388879081 h 15HYPERLINK l _Toc388879082交通灯仿真 PAGEREF _Toc388879082 h 17设计说明本文设计了一个简易的交通灯时序逻辑电路,该电路通过对输入时钟信号的分频,控制红黄绿三种交通灯的按顺序亮灭并循环,其中绿灯持续25s,黄灯持续5s,红灯持续35s。主要用到的器件为jk触发器,与门,与非门,或门,或非门。为了实现交通灯控制电路,首先设计并封装了4位计
3、数器,在此根底上进一步搭建逻辑电路,实现交通灯的控制,并分别对这些模块进展了仿真。设计思路主要的设计思路是利用jk触发器串联的方式对输入的时钟进展分频,然后在相应的时刻产生控制脉冲信号,通过这个信号对信号灯的状态进展翻转。Jk触发器是一种边沿敏感器件,有对上升沿和下降沿敏感的两类,他们的符号如下:其真值表如下:在这个设计中,将jk触发器的j和k端都置1,从而Q端在每个时钟沿到来时进展翻转,然后将上一级的Q作为下一级的clk,这样到达对clk进展分频的目的。波形如下:具体设计步骤计数器的设计翻开matlab,这里使用的版本为R2014A.启动画面如下:启动之后点击这里启动simulink翻开之后
4、界面如下:点击FileNewModel翻开界面如下:下面的步骤为寻找仿真模型或原件,并摆放在上面的untiled文档中。首先将窗口切换到Simulink Library Browser窗口,展开Simulink E*trasFlip Flops,左侧就会出现常用的触发器模型,其中就有jk触发器,用鼠标左键选中J-K Flip-Flop并拖到untiled文档中一个jk触发器可以对时钟2分频,2个串联可以4分频,这里6个才能满足需求,但是为了便于扩展应用,这里将4个jk触发器作为一组串联起来。untiled文档中已经有一个,鼠标右键拖动这个jk触发器即可复制。调整四个jk触发器的位置,如图:该窗
5、口左上角标题右侧的*表示该文档有改动并且未保存。该窗口中按下鼠标滚轮键鼠标会变成手状,这时可以拖动整个视图,滚动鼠标滚轮可以放大缩小视图,左键选中模型按del键可以删除模型。模型中端口上的箭头表示信号流动方向,连线的时候必须按照箭头的方向进展,不能使信号流动方向和箭头方向相反,否则仿真时可能会报错。连线时为了在一条线上引出分支,可以用鼠标右键点击分支处即可引出。两个线相交的地方有黑点表示电气相连,没有黑点表示相交但不相连。在前面的分析中提到这里要将jk出发器的jk端置1,这需要常量和数据类型转换模块,因为在matlab中大局部模型的输出是数值型的,比方为float或者double型的,这样如果
6、输出了1,它可能是double或者int类型的,而逻辑电路中的1是一种逻辑电平,这两者的含义是不同的,因此如果要给触发器输入1,需要将一个常量1转换为逻辑1,这就是Data Type Conversion的作用,常量1的输出通过Constant实现,他们在monly Used Blocks中,如图,分别拖放两个模型到untiled文档中。现在untitled文档中的模型如下:双击Data Type Conversion1可以翻开它的属性对话框,我们需要关心的是转换的类型,这个可以通过Output data type后面的下拉框来设置,其中就有boolean这种类型。默认为Inherit: In
7、herit via back propagation方式输出,意思为从输出端反向继承数据类型,也就是说输出端连接的端口需要什么类型就转化为相应的类型。这里需要改为boolean就可以实现给触发器输入高电平。调整他们的位置并按下面的样子完成连线:然后按ctrl+s保存文档,如下:下面对这个模块进展封装,按下ctrl+A选中所有模型,再通过下面的方式进展封装快捷键Ctrl+G封装之后变成这个样子:双击进入该模块内部,可以看见自动为输入和输出添加了连接点并编号,如下:上面这幅图片中出现了很多double,这是由于Data Type Conversion输出没有改成boolean而又进展了仿真造成的,
8、如果不改也能仿真,但是数据类型不是逻辑电平,如果修改了就不会出现上面的那些字符。这里面局部端口不使用,摆放位置也比拟乱,可以选中之后进展修改,修改之后如下:然后按下ctrl+s进展保存,点击下面的位置返回到顶层视图此时封装的模块变成了下面的样子:我们可以双击模块下面的名称来改变它,因为这个模块可以进展015的循环计数,这里将名称改成counter_16。如下:计数器的仿真现在一个4位计数器已经实现了,下面做一个简单的仿真来检测这个计数器是否能工作。切换到Simulink Library Browser窗口,在SimulinkSinks中获取示波器Scope,在Simulink E*trasFl
9、ipFlops中获取时钟模块Clock,并将它们拖放到my_counter文档中,如图然后双击Scope翻开示波器,然后点击菜单栏的齿轮图标翻开示波器属性对话框,设置示波器的输入通道为5,勾选Legends,这样就能同时观测5个信号,并显示信号名称。点击Apply,OK.此时示波器有了5个通道,示波器的符号也发生了变化,如图:但是此时示波器的符号有点小,以至于输入端口出现交叠,这样不便于连线,鼠标放在该图标上是图标四周会出现四个小方块,鼠标移到*一个方块上时可以调整图标大小,重新调整大小使其方便连线,如下:然后双击Clock翻开时钟属性对话框,将时钟的周期设置为1然后按照下面的方式完成连线。在
10、下面的工具栏中设置仿真时间长度,前面设置了时钟周期为1,下面设置仿真时间长度为10,则就会有10个完整的时钟。点击下列图左边第一个带齿轮的后退图标可以设置仿真时前进和后退的相关参数,点击之后我们可以看见有是否允许后退,前进按钮按下时前进幅度,暂停时刻等设置。绿色的运行按钮按下时会进展指定时长的仿真。前进按钮按下时会执行指定步长的仿真,此时前进按钮右边的停顿按钮会被激活,只有按下该停顿按钮才能推出单步仿真模式。现在将仿真时长设置为40,然后按下绿色的运行按钮。仿真40个时间长度后会自动停顿,然后双击示波器,如下列图:翻开时波形可能不是这样的,需要一些调整,首先鼠标放在任何一个通道上右键,选择Au
11、toscale,这样波形将充满整个屏幕,并根据屏幕大小调整。我们可以发现各个通道纵轴坐标*围都是-5到5,而我们这里是对逻辑电路进展仿真,电平值只有0和1两个,这里可以右键,选择A*es properties,设置纵轴的*围为0到2然后可以拖拽右侧的信号名称到适宜位置,调整好如下列图:由图我们可以看到四个输出端分别对时钟进展了2,4,8,16分频,增加输出端的状态就能够实现计数功能。交通灯电路设计交通灯设计的关键思路就是根据不同时刻对不同的灯进展开关操作。这里为了简单没有为计数器设计清零端,由于一个计数器只能计时16个时间单位,这里我们将两个计数器串联起来,从而实现256个时间单位的计数,但是
12、红绿灯的一次完整切换并不需要这么多时间,我们选择低6位作为计数端,6位能实现64个时间单位的计数,我们将时间进展一个划分,绿灯持续25s,黄灯持续5s,红灯持续35s,这样就需要在25,30,63这三个时刻输入控制信号。这里我们输出一个脉冲信号,然后利用这个脉冲信号对红绿灯状态进展翻转。25超过了一位计数器的计数*围,它可以拆分为16+9,也就是低位计数器计数为9,高位计数器计数为1,这样用二进制表示就为0001_1001,而我们一共采用了低6位,所以对应的计数器输出状态为01_1001,这样我们将其中的3个1输入到三输入与门,3个0输入到三输入或非门,然后将它们的结果通过二输入与门输出。对于30,63时刻做同样处理。在simulink中直接能得到与门模型,上面我们用到了或非门,以及3输入与门等模型,这个需要对与门进展设置,双击一个与门模型,弹出属性对话框,在operator中可以选择改门的类型,比方与门,与非门,反相器,或门等,下面的Number of input ports可以设置这个门的输入数目。上面我们通过对计数器的输出进展逻辑组合得到3个脉冲信号,然后我们需要使用这3个脉冲信号对交通灯状态进展翻转,设计思路是使用jk触发器的取反功能,将脉冲信号作为时钟信号,并设置jk触发器的初始值,jk触发器的输出作为交通灯的状态控制信号。其中为了实现交通灯的轮流
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重睑成形术术后护理
- 钢铁工作年度工作总结
- 薪酬谈判流程图
- 预防接种的好处
- (高清版)DB12 046.65-2011 产品单位产量综合电耗计算方法及限额 第65部分:棉布
- (高清版)DB5103∕T 14-2020 地理标志产品 五宝花生生产技术规范
- 核能行业核设施安全评估与监控方案
- 甜甜的玉米课件
- 四年级数学(四则混合运算带括号)计算题专项练习与答案汇编
- 二年级数学计算题专项练习
- QCT1177-2022汽车空调用冷凝器
- 基坑工程风险辨识及防范措施
- 招标代理服务服务方案
- 2022届上海高考语文调研试测卷详解(有《畏斋记》“《江表传》曰…”译文)
- 基于大数据的电商平台用户行为分析系统研究与实现
- 六年级下册语文试题-广东省广州市越秀区第一、二单元测验卷真卷(无答案)部编版
- 教学设计中的自适应学习模式
- 帕瓦娜的守候
- 2022年海南省高考物理真题试卷含答案与解析
- 意识障碍诊疗规范2023版
- 仪表检修规程
评论
0/150
提交评论