- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
创建Proteus原理 仿真模型的制作技术
Proteus是英国Labcenter electronics公司研发的EDA工具软件。Proteus不仅是模拟电路、数字电路、模/数混合电路的设计与仿真平台;更是目前世界上最先进的多种型号微控制器(单片机)应用系统的设计与仿真平台。Proteus提供了众多的信号源,使用者还可构建信号;提供了数字示波器、逻辑分析仪、I2C调试器、SPI调试器等十几种虚拟仪器;提供了可作精确测量与分析(例傅里叶分析、噪声分析等)的Proteus高级图表仿真(ASF)。所以,Proteus也是检测、测试与分析的平台。正因如此,Proteus在电类教学、单片机应用产品研发、科研及测试技术中都获得了愈来愈广泛的应用。Proteus在全世界拥有越来越多的使用者。例如:Motorola、Philips、Sony等企业;Cambridge University(剑桥大学)、Stanford University(斯坦福大学)、香港理工大学、中山大学等高等院校。
Proteus元器件仿真模型库是应用Proteus设计与实现实时、交互、动态仿真的基础。Proteus有6 000多个各种类型的仿真模型。一般可将他们分为4类:原型模型(Primitive Models);原理图模型(Schematic Models);VSM模型(VSM Models);SPICE模型(SPICE Models)。
虽然Proteus仿真模型库相当丰富,但仍有不能满足应用的情况。这就需要自己创建模型来丰富Proteus库。本文以创建6位D/A转换器和TTL7458原理图模型实例论述创建原理图仿真模型方法,存库与调用方法。如图1所示。
1 Proteus创建模型流程
创建原理图模型同创建其他模型大致相同,其流程也大致一样。如图1所示。在创建模型中,若无需设计元器件封装,则可跳过与设计封装有关的步骤;若无需设计模型内电路,则可跳过与内电路有关的步骤。
2 创建6位数/模转换器(本文命名DA6,原Proteus库中无此模型)
2.1 绘制原理图符号
在Proteus ISIS中选择2D工具绘制DA6的原理图符号,如图2所示。并进行引脚编辑,引脚属性设置,如表1所示。图3表示了编辑引脚对话框。
2.2 DA6器件制作(Make Device)
选中整个DA6原理图符号,启动Make Device命令,弹出如图4所示的对话框,按该图所示设置相应属性。器件名称为DA6、前缀也为DA6。按NEXT键直到出现元器件属性及定义(Component Properties & Definitions)对话框。新建VHI属性,按图5所示设置各相关项。再按NEXT键,直到出现对话框“Indexing and Library Selec-tion”,选择元器件分类及存放库,单击OK键完成MakeDevice。此时新的元器件模型原理图符号就存入指定的库并出现在对象列表框中。
2.3 DA6仿真模型内电路设计
经以上步骤创建的模型只是个模型外壳,还没有仿真功能。其仿真功能主要由内电路完成。将新建的模型DA6放入ISIS编辑区,打开其属性编辑框,选中“Attachhierarchy model”,如图6所示。按OK键后再按键盘Pgdn键,则自动创建并进入内电路设计页。接着在内电路页设计内电路。从Proteus库中选取,他是Analogue Primitive,设计好如图7所示的内电路。并设置内电路中所有DAC原型的属性VHI=<VHI>。
2.4 生成模型文件,并设置Modfile属性
在内电路页操作菜单,Tools→Model Compiler,创建模型文件。选择路径并取名(本例为DA6_in.mdf)存盘。详细情况见参考文献。
返回主页,选中新建元器件DA6,再次启动Make Device命令,进入“Component Properties&Definitions”。如图8所示。按照图8,进行设置Modfile属性操作。再按NEXT键直到出现“Indexing and Library Selection”菜单。如图9所示。设置分类和所在的库。本例分类为DataConverters,存到USERDVC库中。单击OK则结束原理图模型的创建。
若在ISIS中单击按扭P,在Keywords栏中填入模型名DA6,则创建的模型被挑选出来。如图10所示。从图10中右上角可看到模型DA6为原理图模型。图中间标明他所在的库是USERDVC(用户库)。
2.5 验证模型DA6
验证模型DA6分4步。
(1)设计验证电路:在Proteus ISIS中设计如图11上左方所示的电路,其中有创建的仿真模型DA6和单片机AT89C2051。并将DA6的输出口Vout接上Proteus提供的虚拟示波器通道A上。
(2)设计D/A转换控制程序:在Proteus ISIS中设计如图11右上方所示的程序,并进行汇编调试生成目标代码文件。该程序是经D/A转换后形成锯齿波的程序。
(3)将目标代码文件加载到单片机AT89C2051中。
(4)启动仿真。则在虚拟示波器上看到由创建模型DA6转换的模拟锯齿波(图11的下方)。证明创建模型正确,并成为用户库中的一员。
从图11还可看出:Proteus统一完成了单片机应用系统的电路设计、程序设计和仿真。
3 创建7458仿真模型(原库中无此模型)
7458是2输入和3输入与或门。现创建此原理图模型。创建此模型的思路和步骤基本与创建DA6相同。也经过绘制原理图符号、器件制作、仿真模型内电路设计、生成模型文件、验证电路和模型仿真测试等过程。这里只将结果展示。图12为7458仿真模型的内电路。图13为从用户库中调用创建的7458仿真模型。图14为验证电路和仿真片段。其中使用了Proteus提供的逻辑状态输入开关和逻辑状态输出探头。前者可通过鼠标点击开关来实现逻辑状态(0,1)的选择。仿真结果证实所创建模型的逻辑功能与实际7458的功能表(见表2)一致。
最后特别指出:原理图仿真模型是由仿真原型(primi-tives)搭建的仿真模型。
4 结 语
在实践中创建了原库中没有的DA6和TTL7458原理图模型,并将模型存入用户库中。在Proteus ISIS环境下用户可从用户库中将他们调入验证电路中进行电路设计与仿真。仿真结果证明:所建原理图仿真模型和建模方法都是正确的。
射频工程师养成培训教程套装,助您快速成为一名优秀射频工程师...