- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字电路—交通灯故障检测电路
1.设计题目的理论分析
1.1电路的理论分析
交通灯故障监测逻辑电路的设计,红灯R,黄灯Y,绿灯G。其中,灯单独亮正常,黄绿同时亮正常,其他情况不正常。设灯亮为“1”,不亮为“0”,正常为“0”,不正常为“1”。用与非门实现该逻辑电路。使用Simulink进行简单的仿真。
从题目上看,这是一个基本逻辑门电路在实际生活中的应用问题。根据我们本学期已经学过的数字电路方面的知识,首先要分析一下该题目中的逻辑命题,再根据命题确定我们要设定的输入和输出变量分别是什么。在这个设计实验中,很明显,输入变量是红,黄,绿三种灯的显示状态,而输出变量是检测电路的结果,即交通灯是否有故障。然后用二值逻辑的0和1两种状态,分别对输入输出变量进行赋值。题目中灯亮用“1”表示,灯不亮则用“0”表示,电路有故障用用“1”表示,不亮用“0”表示。再根据题目的意思,我们很容易写出该题目所要求实现的逻辑门电路的真值表,如下所示。
表1 电路实现的逻辑功能表
R Y G Z 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1
要设计出所需的逻辑电路,我们得先知道真值表所对应的的函数表达式。而要根据真值表得到逻辑函数表达式,我们可以用画卡诺图的方法。如下图所示,为输入输出变量的卡诺图表示。
R YG 00 01 11 10 0 1 0 0 0 1 0 1 1 1
图1 真值表对应的卡诺图
最后根据已经列写好的卡诺图,我们可以运用数字电路中学过的知识化简出输出变量Z的最终表达式,即:
(1)
但是题目要求我们用与非门实现该逻辑功能,所以我们还要将式(1)化成只由与非门构成的基本逻辑函数表达式,即:
(2)
1.2电路原理图的绘制
根据式(2),我们可以利用Altium designer软件绘制出相应的原理电路图,在原理图中,三个开关分别控制三个指示灯的亮或暗,元件“NAND”则表示相应的二输入端与非门74LS00,或者三输入与非门,其中三输入端的与非门可以由四输入端的与非门74LS20改变,只要让四输入端与非门的一个输入端接入高电平即可,最后的Z则表示监测信号的输出端。下面是绘制好的原理图形。
图2 实验原理图
2.MATLAB软件的使用
2.1 MATLAB软件的简要介绍
MATLAB是美国Mathworks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
其中,MATLAB是matrix和laboratory两个词的组合,意为矩阵工厂(矩阵实验室),它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB的主要功能有数值分析、数值和符号计算、工程与科学绘图、控制系统的设计与仿真、数字图像处理、数字信号处理、通讯系统设计与仿真、财务与金融工程等。
图3 打开MATLAB软件
图4 打开MATLAB的系统仿真软件Simulink
图5 打开新建模型窗口及新建模型
在“Simulink Library Browser”窗口中将“Simulink”节点展开,并选中“Logical and bit operations”模板库中的“Logical operator”模块,如图6所示,鼠标右击,在弹出的快捷菜单中选择“Add to Untitled”菜单项,就可以将“Logical operator”模块添加到“Untitled”模型中。也可以直接将“Logical operator”模块拖拽到模型编辑窗口中,完成模块的添加操作。
图6 模块的添加
添加元件的模型完成后,就可以开始按照原理图连接线路。完成连线,首先应该改一下电路中元件模型的名称,以方便我们看清各个模型。同时,还要对一些模型的参数加以更改,例如,模型图里的与非门都是由基本的与门通过设计相关参数来确定它的类型,输入管脚数。最后的Display则是用来观察输入和输出信号的状态。这样,我们就能在一次仿真的结果中同时看到输入和输出的高低电平状态。如下图7就是连接好的模型图。
图7 模型线路连接图
连接好模型线路图后,就可以开始进行模型的仿真了。该电路的输入共有八种不同的状态,为了证明该电路模型的正确性,我们需要将
文档评论(0)