硬件仿真

2024-10-19

硬件仿真(精选8篇)

硬件仿真 篇1

摘要:单片机硬件仿真是单片机应用系统软件开发调试的一个常用方法,也是一个重要手段。文章分析了单片机硬件仿真和软件仿真的区别,介绍了一种性价比很高的、实用的单片机硬件仿真解决方案,通过控制单片机的系统时种和运行系统监控程序,读取单片机数据总线的数据,实现单片机硬件仿真的功能。

关键词:单片机硬件仿真,存储器,地址总线,数据总线,系统时钟

0 引言

单片机作为计算机发展的一个重要分支领域,广泛应用于人类生活的各个领域。单片机仿真是单片机应用系统软件开发调试的一个常用方法,单片机仿真分为硬件仿真和软件仿真。尽管软件仿真具有无需搭建硬件电路就可以对程序进行验证的优点,但无法完全反映真实硬件的运行状况,因此还要通过硬件仿真来完成最终的设计。本文将提出一种性价比很高的、实用的单片机硬件仿真解决方案,通过控制单片机的系统时种和运行系统监控程序,读取单片机数据总线的数据,实现单片机硬件仿真的功能。

1 总体方案

图1为实现单片机硬件仿真的总体结构框图。主控MCU与PC通信,将目标代码下载到FLASH。主控MCU通过控制被仿真单片机的系统时钟,就可以控制被仿真单片机运行FLASH中的目标代码,实现单步运行程序、让程序运行到指定的程序行停止或查看存储器资源等调试功能。

2 工作原理

要实现此方案的单片机硬件仿真功能,必须要有一个被仿真单片机的仿真芯片,此芯片与被仿真单片机相比,其它硬件相同,但没有内部程序存储器,而且多预留出程序地址总线AD16、程序数据总线DATA16、系统数据总线SDA8和一些仿真调试的引脚。

如图2所示,主控MCU通过16根地址线(ADDR16)、16根数据线(DATA16)、CE线、OE线、WE线与FLASH相连。仿真芯片的16根程序地址总线AD16通过三态缓冲 器74HC244与FLASH的地址线相连,16根程序数据总线DATA16与FLASH的数据线相连,8根系统数据总线SDA8与主控MCU相连。

以下按下载程序、全速运行、单步运行、查看存储器资源4种情况分别详述其工作原理。

2.1 下载程序

主控MCU的P1.0输出高电平,禁止74HC244 ;主控MCU的P1.1输出低电平,选通FLASH ;P1.2输出高电平,P1.3输出低电平,让FLASH处于写状态。仿真芯片即可与PC通信,将PC端的目标代码写到FLASH中,完成下载程序的功能。

2.2 全速运行

主控MCU的P1.0输出低电平,选通74HC244,仿真芯片的程序地址总线AD16与FLASH的地址线相连 ;主控MCU的P1.1、P1.2输出低电平,P1.3输出高电平,让FLASH处于读状态,仿真芯片就可从FLASH中读取目标代码 ;主控MCU的P1.4输出高电平,P1.5不输出,由晶振提供系统时钟给仿真芯片。这样,仿真芯片即可模拟被仿真单片机全速运行。

2.3 单步运行

主控MCU的P1.0输出低电 平,选通74HC244,ICE芯片的程 序地址总线AD16与FLASH的地址线相连 ;主控MCU的P1.1、P1.2输出低电平,P1.3输出高电平,让FLASH处于读状态,仿真芯片就可从FLASH中读取目标代码。当需要单步运行时,主控MCU的P1.4输出低电平,切断晶振提供的系统时钟,由主控MCU的P1.5给仿真芯片提供系统时钟。这样,主控MCU即可通过P1.5控制系统时钟,从而控制仿真芯片运行目标代码,实现单步运行功能。

2.4 查看存储器资源

当仿真芯片停止运行时,还可以查看存储器资源,观察到单片机内部各个存储单元的状态,完全反映真实硬件的运行状况。

当需要查看存储器资源时,主控MCU修改FLASH中的数据,将目标代码改为一段系统监控程序。主控MCU的P1.4输出低电平,切断晶振提供的系统时钟,由主控MCU的P1.5给仿真芯片提供系统时钟,逐条运行系统监控程序。与此同时,主控MCU通过仿真芯片的系统数据总线SDA8读取系统数据,即可逐个读出存储器的值,完成查看存储器资源的功能。

全部存储器都读完后,主控MCU要将FLASH中的系统监控程序还原为目标代码。

3 结束语

文章在对单片机软件仿真和硬件仿真进行了分析之后,提出了一种基于仿真芯片,通过控制仿真芯片的系统时种和运行系统监控程序,读取单片机数据总线的数据,实现单片机硬件仿真的方法。文中分别针对下载程序、全速运行、单步运行、查看存储器资源4种情况,给出了具体的实现方法。文章使用的方法具有通用性和易用性,并在基于单片机的仿真器中得到使用,取得了良好的效果,对单片机的硬件仿真开发调试具有实际的参考价值。

硬件仿真 篇2

ICE 2实现了复杂系统交互过程的可视化,并能快速地捕获到问题的起因根源,从而以更高的效率解决问题。这些新的功能特性不仅适用于单处理器系统,更重要的是可以帮助开发人员应对多核系统开发中所面临的挑战。ICE 2还能通过固件升级实现从某一处理器系列到另一产品系列的移植,帮助开发人员有效利用原有投资,从而解决了整个业界所面临的可扩展性问题。

ICE 2能够提供高级远程支持和多达16个内核的并发调试,主要是有效地应用了JTAG(Joint Test Action Group)带宽来实现更快的运行控制和下载速度。ICE 2的其他关键产品特性和优势包括:

对各种全新多核system-on-a-chip处理器系列和设备产品的扩展支持,包括Cavium OCTEON多核处理器系列(1—16个内核)、基于Power Architecture 技术的Freescale多核处理器系列以及Freescale最新推出的QorIQ通信平台产品。

全面的硬件和内存诊断能力,能够快速高效地进行系统级硬件配置诊断。

与业界领先的基于Eclipse技术的片上系统调试环境平台Wind River Workbench On-Chip Debugging Edition的完全集成。

能够在同一扫描链中管理系统与设备之间多达128个设备的连接。

实现对各种业界领先操作系统的支持,包括VxWorks和Wind River Linux。

使开发人员能够快速地确认和解决各种复杂的系统级多内核或多处理器硬件/软件集成问题,通过单个ICE 2仿真器支持多达16个内核并发调试。

引入了LCD面板,更加便于配置、编辑和监控。

通过目标板控制台与设备间的通讯端口,为远程开发人员提供了独立于用户物理位置的远程硬件调试能力。

硬件仿真 篇3

1 电弧炉硬件仿真平台组成

仿真平台主要由4部分组成:波形发生电路,功率放大电路,仿真变压器电路和检测环节。系统组成框图如图1所示。其中波形发生电路,功率放大电路和检测环节从工业电弧炉炉体的输入/输出特性上来模拟。仿真变压器部分从工业电弧炉供电系统的结构及相关参数上来模拟。

2 波形发生电路

波形发生电路模拟的是工业电弧炉炉体本身。电弧炉模型有很多种,有时域、频域、电压-电流模型等[5,6,7]。本文采用电压-电流模型来模拟电弧炉的输入/输出特性。工业电弧炉电极电压的幅值与电弧弧长成正比,且工业电弧炉电弧电压波形有一个典型的形状,如图2所示。

因此,波形发生电路模拟电弧炉炉体要从两个方面来进行:波形发生电路要能输出图2所示的典型电压波形,频率为50 Hz。输出的电压波形幅值与输入弧长信号大小成正比。

2.1 硬件设计

波形发生电路的硬件设计以单片机为核心。在此所选取的芯片为STC12C5A60S2(含片内A/D模块)[8]。此款芯片性能好,工作稳定,而且比使用片外A/D成本降低1 2。单片机输入端接直流信号,在实验中利用一个电位器来调节输入电压大小;输出端接DAC0832,将数字电压信号转化为模拟电流信号。DAC0832后接运放电路,将电流信号转换为双极性电压信号,即为电弧炉典型电压波形。电路原理图如图3所示。

2.2 软件设计

由于工业电弧炉工作电压频率为50 Hz,因此该仿真电路输出的电压波形频率也应为50 Hz,即周期为20 ms。将一个周期的电压波形按横轴即时间轴等分50份,即主程序定时器设置为400µs。单片机每过400µs输出一个数值,即可满足波形的完整性。程序采用C语言编写,主程序流程图如图4所示。

3 功率放大电路

波形发生电路的输出为-5~5 V的电压信号,驱动能力很弱,而设计的单片机与仿真变压器之间的电流为2 A左右,仿真变压器端电压输出为20 V,因此波形发生电路必须通过功率放大电路的驱动,才能与仿真变压器端连接。

功率放大电路的设计以高性能音频功放芯片LM3886为核心。该芯片±35 V电源供电,8Ω负载时平均输出功率可达到50 W,峰值功率最大可达到135 W。而要求功放的输出电压为20 V,电流为2 A左右,因此该芯片可以满足需要。电路设计方案采用芯片手册上的典型应用电路[9]。通过调节输入端电位器RIN的大小可以调整电路的放大倍数。

4 仿真变压器电路

仿真变压器电路从系统结构及器件参数方面模拟工业电弧炉的供电系统。工业电弧炉供电系统主要由配电变压器部分和电弧炉变压器部分组成。以西安唐都钢厂3吨电弧炉供电系统为例[10]:配电变压器容量为6 300 k VA,110 k V变11 k V,11 k V侧总的等效阻抗为(0.407 07+j3.575 76)Ω。电弧炉变压器容量为1 800 k VA,11 k V变220 V,220 V侧总的等效阻抗为(2.195 6+j12.937)mΩ。

仿真变压器电路的设计参照唐都钢厂3吨电弧炉实例。仿真配电变压器容量选择120 VA,220 V变60 V,副边接0.4Ω电阻,10 m H电抗器,总的阻抗Z1=(0.4+j3.14)Ω,与工业电弧炉配电变压器副边阻抗保持时间常数一致。仿真电弧炉变压器容量选择120 VA,60 V变20 V,副边接2Ω电阻,30 m H电抗器,总的阻抗Z2=(2+j9.42)Ω,与工业电弧炉变压器副边阻抗保持时间常数一致[11]。

由系统框图图1可以看出,Z2一端接功率放大电路的输出端,为20 V交流电;另一端接仿真电弧炉变压器副边,也为20 V交流电。因此流过Z2的电流即电弧电流也为交流。经计算,该电流有效值为2.08 A。

5 检测环节

由于工业电弧炉电弧电压与电弧电流是同相位的,即电弧的对外特性表现为纯阻性。所以我们还增加了电流互感器检测环节。电流互感器变比为10 A/10 m A,可将大电流转换为小电流。电流互感器检测经过Z2的电流,输出电流为毫安级,然后接1 kΩ的电阻将电流转化为电压信号送给波形发生电路中的硬件中断电路,硬件中断电路输出接单片机的INT0。当硬件中断环节检测到电流过零点时,会给单片机中断信号,单片机此时开始产生电压波形。这样,就保证了电弧电压与电弧电流的同相位,与工业电弧炉电弧的纯阻性特性保持一致。

6 实验结果与分析

经过调试,在实验室测得波形如图5,图6所示。示波器型号为Tektronix TDS 1002。

由图5可以看出,仿真平台输出的电弧炉电压波形与工业电弧炉典型电压波形形状基本一致。示波器测得波形发生电路输出电压波形(放大前)幅值为5 V,放大后波形幅值为20 V,且频率都为49.8 Hz,接近所要求的50 Hz。波形发生电路输出的电压波形并可通过输入端电位器在0~5 V之间连续可调。由图6可以看出,电弧电压与电流同相位,即电弧为纯阻性。

综合实验结果可以看出,本仿真平台可以产生出与工业电弧炉典型电压波形基本一致的波形;产生出的电压波形幅值连续可调,频率满足要求;仿真电弧电流波形与电压波形同相位,达到了我们的预期目标。此外,本硬件仿真平台运行稳定,精度较高,成本低,因此可以作为研究电弧炉电极控制策略的一个可靠平台。

参考文献

[1]刘世瑞,吴文平.电弧炉电极升降自动调节系统简介[J].中国科技信息,2011(14):120-121.

[2]管萍,李明辉,刘小河,等.电弧炉的反步自适应模糊控制[J].控制工程,2012(4):221-224.

[3]黄亮,赵辉.BP神经网络模糊控制在电弧炉电极调节系统中的实现[J].电气自动化,2010,32(3):18-20.

[4]BHONSLE D C,KELKAR R B.Simulation of electric arc fur nace characteristics for voltage flicker study using Matlab[C]//2011 International Conference on Recent Advancements inElectrical,Electronics and Control Engineering.Sivakasi:[s.n.],2011:174-181.

[5]顾建军,李凯,郑永征.交流电弧炉系统建模与仿真研究[J].冶金动力,2010(2):1-3.

[6]王琰,毛志忠,李妍,等.交流电弧炉供电系统建模及耦合关系仿真研究[J].系统仿真学报,2010,22(4):841-844.

[7]池伟,李恺伦,查蕾,等.基于能量平衡的电弧炉模型的仿真与参数辨识[J].机电工程,2012,29(4):454-457.

[8]丁向荣.STC系列增强型8051单片机原理与应用[M].北京:电子工业出版社,2011.

[9]National Semiconductor.LM3886 OvertureTM audio power ampli fier series[EB/OL].[2013-03-10].http://www.wenku.baidu.com.

[10]刘小河.电弧炉电气系统的模型、谐波分析及电极调节系统自适应控制的研究[D].西安:西安理工大学,2000.

硬件仿真 篇4

半实物仿真阶段是民机飞控系统研制的一个重要阶段, 此时通过主飞行仿真计算机对飞机的六自由度运动、发动机推力、起落架系统、液压燃油等系统进行计算模拟, 但对驾驶舱操纵器件、飞控计算机、传感器、仪表显示等与飞行控制相关设备采取真实硬件, 一方面可以在初期对控制策略进行原理性试验;另一方面是在系统集成阶段对飞控系统机载设备进行测试验证。由于各种机载设备在飞机上是通过模拟信号或者各种总线数字信号连接在一起, 因此, 在地面半实物仿真需要硬件接口系统对各种模拟信号、数字信号、ARINC429总线、以太网等进行分配、管理。

硬件接口系统主要功能是实现主飞行仿真计算机内部数据与驾驶舱仿真设备以及之后的飞机机载设备所需电气物理量之间的变换和传输功能。硬件接口系统接收主飞行仿真计算机内部的数据, 并将这些数据传送给仿真驾驶舱的显示屏、指示灯, 同时接口系统采集驾驶舱设备的开关、按钮、旋钮等操控设备的状态, 并将这些状态转换成各仿真软件内部需要的变量数据发送给仿真计算机。对于需要通过航空总线进行激励的设备, 例如ARINC429或者ARINC 664的航电设备, 接口需要搭建相应的航空总线通道, 这样接口系统接收各仿真软件内部的模型数据, 转化成总线信号, 通过航空总线向设备发送激励信号, 同时接收设备发出的总线反馈信号并解析转化成各仿真软件内部需要的数据信息。

1 系统架构

硬件接口系统由接口计算机、各种信号和总线的接口板、接口配线箱、接口子系统和连接电缆组成硬件接口系统组成原理如图 1所示。

2 系统组成

(1) 接口计算机

接口计算机为高性能工业接口PC, 具备10个以上的PCI插槽, 每个插槽上可以安装各种信号和总线接口板。

接口计算机上安装有操作系统。接口计算机中安装的各种信号和总线接口板, 通过运行在接口计算机中的接口控制软件进行驱动。接口软件通过以太网 (UDP/IP) 与实时仿真主机交换数据, 通过对接口板的读写实现与设备的通讯。

其中航空总线信号的板卡也可以根据需要安装在航电仿真计算机上, 将对应板卡的接口驱动模块在航电仿真计算机上调用运行。

(2) 接口配线箱

接口配线箱中实现信号、工作电源、照明电源的重新分配, 为接口板与设备的通讯建立通道, 为设备的工作分配工作电源和照明电源, 使得设备能够正常工作。由于接口板上按照信号电气特性进行分类的, 如DI、DO、AD等, 而驾驶舱设备则是按照设备功能组织的, 从电气特性角度来说是一个综合体, 有可能由多种信号组成, 这样就需要在接口配线箱中对设备的信号电缆进行重新分类组织使之符合接口板的电气信号定义。同时根据驾驶舱设备工作的需要将工作电源和照明电源分配到设备电缆。

通过接口配线箱可以使仿真件的接口电缆线和真件的接口电缆线相分离。使得电缆线路的走线更清晰, 方便电缆线路的检查以及设备的拆装和替换。

(3) 接口子系统

接口子系统是一个小型的接口采集系统, 它由接口控制盒和配线箱构成。接口控制板具备96个DI通道、48个DO通道和8个AD通道的驱动能力, 通过本子系统的配线箱与驾驶舱设备进行通讯, 而向上则通过标准的RS422总线协议与接口计算机中的接口软件实现数据通讯。由于接口子系统对 DI/DO/AD信号的驾驶舱设备进行前端控制处理, 在接口计算机中就不需要插对DI/DO/AD信号处理的板卡了, 所对应仅需插入一块串口卡, 减少了接口计算机内部的板卡数量, 减轻了接口计算机的负担, 简化了接口系统结构, 实现了接口系统的分布式处理。其组成原理见图 2。

由于各接口板卡是非常成熟的货架产品, 各接口板卡采用市售成熟的高品质板卡, 飞机研制过程中前期对设备进行仿制和后期对机载真实设备的换装的需要, 硬件接口系统主要的板卡有ID板、DA板、A429等板卡, 其清单见表1。

(4) 软件

接口控制软件运行在接口计算机的操作系统中, 通过寻址接收各种接口板上发来的信号并根据各仿真系统的需要和要求, 对接收到的数据进行处理, 并打包通过以太网 (UDP/IP) 把数据传输到主仿真计算机中, 由主仿真计算机进行分发。

随着机载真实设备的接入, 根据所提供的设备的实际情况, 接口控制软件将接收仿真计算机的传来的数据, 并依据机载设备所遵循的数据格式和数据协议, 从中来提取所需数据, 把数据存储在符合主仿真计算机所定义的数据结构中, 并通过以太网 (UDP/IP) 输出给主仿真计算机, 同理, 接口控制软件也将通过以太网 (UDP/IP) 接收实时仿真主机主仿真计算机传来的数据, 把数据转换成符合真件接收的数据格式并根据真件的通信协议输出。

接口控制软件主要包括:RS-422串口板读写模块、A429板读写模块、A664板读写模块、A429/A664数据转换模块、ID/DO数据处理模块、AD/DA数据处理模块。

接口控制软件的原理框图见图 3。

3 结束语

本文对民用飞机飞控系统半实物仿真系统的硬件接口系统进行了设计和研究, 描述了其系统架构、组成、功能, 并提供了推荐的硬件采购清单, 根据此方案可以为半实物仿真系统提供硬件接口系统, 根据具体的信号种类、数量采购相关的板卡, 并开发驱动, 事实证明, 采用此方案, 可以高效、灵活地进行接口控制和管理。

参考文献

[1]王行仁.飞行实时仿真系统及其技术[M].北京:科学出版社, 1985.

[2]孔祥营.嵌入式实时操作系统VxWorks及Tornado开发环境[M].北京:中国电力出版社, 2002.

[3]申文彬, 刘宏立.实时仿真系统的时间特性分析与控制[J].中国科技信息, 2005 (24) .

硬件仿真 篇5

计数是一种最简单基本的运算[3]计数器就是实现这种运算的逻辑电路, 计数器在数字系统中主要是对脉冲的个数进行计数, 以实现测量、计数和控制的功能。

2 硬件测试电路设计

测试电路由4个部分组成, 即锁相环模块, 计数器模块, 防抖电路, 译码模块, 每个部分均由VHDL语言编写合成图形模块, 从上而下组件成系统模块。

锁相环PLL可以与输入的时钟信号同步, 并以其作为参考信号实现锁相, 从而输出一至多个同步倍频或分频的片内时钟, 以供逻辑系统应用, 以供逻辑系统应用。

由于干扰抖动信号是一群宽度狭窄的随即信号[4]在串入时, 很难整齐地同时使与门输出为1, 只有足够的宽度的信号通过此电路, 从而起到“滤波”的功能。译码模块设计中由七段数码显示译码器设计。

3 总体设计

3.1 综合编译

系统利用QuartusⅡ自带仿真器, 采用ALTERA公司Cyclone III系列的EP3C5E144C8芯片。该系统的每个模块均在VHDL语言编辑下完成, 实现整体设计电路图。如图1所示。

本次设计总共应用了27个逻辑单元, 小于总逻辑单元个数的1%, 使用引脚28个, 是总引脚的29%。总体来看, 虽然出现了警告, 但是没有错误。仿真的结果达到了预期效果。

3.2 整体仿真

该设计中输入信号有模拟的时钟信号CLK和按键k8, 输出时为了验证数码管、蜂鸣器、LED灯等, 分别设置了6个输出按键, 仿真波形如图2所示。仿真起始延时时间10.175us, 并不影响系统性能。效果较好。

4 结论

本文完成了基于FPGA的硬件测试电路设计和仿真, 以PC机为平台, 利用ALTERA公司的Quartus II 9.0软件编译仿真。可以通过引脚锁定和下载, 对PCB板的实际操作进一步验证本设计的成功性。

参考文献

[1]戴立江.基于EDA技术的FPGA应用研究[D].天津工业大学, 2004, (12) :10-11

[2]黄艳敏.浅谈电子产品的硬件测试技术[J].单片机与嵌入式系统应用, 2010, (02) :16-17

[3]王学礼, 李根乾, 谭玉山.PCB测试技术研究进展[J].无线电通信技术, 2000, (05) :27-28

硬件仿真 篇6

电控机械式自动变速器(automatic mechanical transmission,AMT)是在传统的固定轴式变速器和干式离合器的基础上,通过增加电控单元(ECU)、传感器以及相应的执行机构,从而实现自动变速的变速器。AMT具有传动效率高、成本低、操作容易、驾驶舒适等优点,已成为重型车辆变速器配置的一个重要发展方向[1,2]。硬件在环仿真是指将实际被控对象用高速计算机系统上实时运行的仿真模型来代替,与实际控制器连接成为一个系统,通过仿真试验实现对控制系统功能的测试和验证。利用硬件在环仿真可以大大缩短发动机电控单元ECU的开发周期,降低开发成本[3]。

硬件在环仿真技术已广泛应用于轿车自动变速器技术开发中[3,4,5,6,7],在重型车辆上的应用主要集中在防抱死制动系统(ABS)、驱动防滑系统(ASR)、牵引力控制系统(TCS)控制器的开发[8,9]。国内近几年才开始研究开发适用于重型车辆的多挡位(12/16挡)自动变速器,目前还没有见到有关将硬件在环仿真技术应用于重型车辆多挡位(12/16挡)电控机械式自动变速器开发的相关文献报道。

本文通过在某重型车辆法士特12JS200T型变速器基础上增加控制器、传感器以及相应的离合器与选换挡执行机构,取代原来由人工操作完成的离合器分离与接合及变速器选换挡等动作,研制开发出重型车辆AMT硬件在环仿真试验系统,并通过AMT样车道路试验,对其综合性能进行了评估。

1 硬件在环仿真试验系统总体结构设计

重型车辆AMT硬件在环仿真试验系统包括通信协议制定、离合器执行机构和选挡机构的开发设计与制造、传感器选型布置及标定、控制系统线束制作、手自一体换挡手柄的改装、AMT控制系统软件设计、试验平台软硬件系统设计等。

图1为重型车辆AMT硬件在环仿真平台总体结构示意图。通过油门踏板传感器、制动踏板传感器以及换挡手柄传感器,把驾驶员操作意图转换为模拟电信号输入dSPACE/AutoBox中,dSPACE/AutoBox中的DS1401卡A/D口实现模数转换,读入驾驶员信号。通过CAN总线采集发动机转速信号,DS1401卡A/D口采集离合器位移传感器信号与液压单元的压力传感器信号,I/O口接收各挡位电磁开关信号。

dSPACE/AutoBox运行整车动力学仿真模型以及AMT换挡控制算法代码,得到各执行机构的控制指令;经过驱动单元放大驱动电流与电压,DS1401卡I/O转换发送给相应挡位电磁阀及直流电机继电器,发送PWM信号控制离合器的进油高速开关阀(进油HSV)与出油高速开关阀,并通过控制局域网(CAN)总线与发动机电控单元(ECU)通信,控制相应机构执行动作,从而实现控制系统指令接收与反馈。惯性飞轮模拟整车惯量,交流电力测功机实现模拟整车行驶阻力。数据采集及控制系统由传感器群与控制系统组成。上位机安装了测试软件ControlDesk,实现硬件在环试验与模型相关参数在线、实时的修改调试;工控机中安装了自行开发的AMT综合性能试验测控软件,能与AMT控制器进行数据通信,实时显示重型车辆AMT的运行状态,并反馈给驾驶员。

2 硬件在环仿真试验系统硬件设计

图2为重型车辆AMT硬件在环仿真试验台结构示意图。图2中的硬件在环仿真试验台硬件系统主要由发动机、重型车辆AMT样机、进油高速开关阀、出油高速开发阀、换挡电磁阀、电机继电器、转速转矩传感器、惯性飞轮组、法士特12JS200T型变速器、电力测功机及其变频器、驱动器、dSPACE/AutoBox、笔记本电脑、工控机、方向盘、油门踏板、制动踏板以及换挡手柄等组成。硬件系统按功能可分为动力单元、被测单元、加载单元、监控单元、接口单元和控制单元。试验台可对AMT系统的各种工况进行模拟,完成系统控制参数的匹配和优化。

2.1 动力单元

动力单元为试验的动力来源,根据重型车辆的特点,本文试验系统选用康明斯柴油发动机ISM420 E30作为动力源。

2.2 被测单元

被测对象通过增加控制器、传感器以及相应的离合器与选换挡执行机构,将法士特12JS200T型手动变速器改装成AMT样机。增加的传感器包括8个换挡手柄位置传感器(P、R、N、D、M、+、-、AUTO)、转向盘转角传感器、油门踏板传感器、制动踏板传感器、发动机转速传感器、离合器位移传感器、液压系统压力传感器,以及8个挡位传感器(1挡、2挡、3挡、4挡、5挡、6挡、R挡、高低挡);执行机构包括进油高速开关阀、回油高速开关阀、换挡电磁阀与电机继电器。控制器部分由dSPACE/AutoBox替代实际的电控单元进行试验测试。

2.3 加载单元

加载装置采用西门子560kW交流电力测功机,变频调速柜采用矢量控制调节加载扭矩,从而对车辆行驶阻力进行模拟;陪试变速器采用法士特12JS200T型手动变速器,试验中作为升速箱,通过调节升速箱挡位实现测功机的直接加载,满足AMT系统不同工况下试验加载需求。采用惯性飞轮组模拟整车转动惯量。

2.4 监控单元

监控单元由工控机、转速转矩传感器与转速转矩仪组成。转速转矩传感器信号通过工控机内安装的转速转矩仪读取,再通过串口通信把信号传递给dSPACE/AutoBox。

2.5 控制单元

控制单元由制动踏板、油门踏板、换挡手柄、dSPACE/AutoBox以及上位机笔记本电脑组成。操作人员可通过操纵制动踏板、油门踏板与换挡手柄体现驾驶员的操纵意图,实现基于人-车闭环系统的重型车辆AMT样机控制系统硬件在环试验测试。上位机安装了MATLAB/Simulink/Stateflow、ControlDesk测试软件以及自行开发的AMT综合性能试验测控软件。上位机通过LAN与dSPACE/AutoBox相连,实现对试验系统相关单元的实时控制,dSPACE/AutoBox通过串口与转速转矩仪相连。

3 硬件在环仿真试验系统软件设计

3.1 组合型两参数换挡规律

重型车辆AMT的换挡以小油门开度为主,以舒适、稳定、少污染为目标,采用单参数控制;中油门开度以保证最佳燃油经济性为主,兼顾动力性,采用两参数经济性控制;大油门开度则以获得最佳动力性为主,采用两参数动力性控制的方法,由此得到某重型汽车AMT的两参数组合型换挡规律。重型车辆在满载情况下的换挡规律曲线如图3所示。换挡规律存储在控制器中,在自动变速系统正常运行时,由各种传感器采集汽车当前行驶状态信息,

通过控制器所预设的相应控制规律将这些信息与最佳的换挡规律相比较,从而求取最佳换挡点[10]。之后通过逻辑判断程序完成是否执行换挡的决定,如果达到换挡的要求,则向执行机构发出完成换挡的信号。

3.2 实时仿真模型

如图4所示,AMT控制系统硬件在环仿真模型主要由输入模块、计算模块、AMT控制模块以及输出模块组成。输入模块中包含发动机油门、发动机转速、制动踏板开度、离合器位置、AMT输入轴转速、液压系统压力、挡位判断、换挡手柄判断以及车速共9个子模块;计算模块包含发动机转速控制、离合器接合速度控制、升降挡判断以及液压力控制共4个子模块;AMT控制模块包含换挡车速计算与AMT换挡逻辑控制系统2个子模块,换挡规律曲线包含换挡车速计算模块;输出模块包含变速器主箱换挡电磁阀、副箱气动电磁阀、电机继电器、进油高速开关阀、回油高速开关阀。AMT换挡逻辑控制系统包括P挡、N挡、R挡、D挡与M挡(包括+、-)5个模式以及各模式等待与切换,如图5所示。

3.3 接口模块

基于MATLAB/Simulink/RTW环境,开发系统接口模块,包括信号采集模型、信号处理模型与信号输出模型。其中,信号采集模型与信号输出模型采用与DS1401卡配套的Simulink环境下的A/D、D/A与I/O模块建立,用于采集试验系统相关参数,并输出控制信号。信号处理模型是采用低通滤波器模块与函数计算模块建立的,用于对输入信号进行滤波与转化处理。同时,由于试验系统中发动机与AMT之间采用CAN通信技术进行数据交换,各节点遵循统一的通信规范,因此不需要额外的信号调理电路,把实物节点CAN接口和仿真节点CAN接口直接用双绞线相连就可以实现通信[11,12]。

3.4 AMT综合性能试验测控软件

图6所示是基于Delphi开发平台开发的重

型车辆AMT综合性能试验测控软件,其功能是对插于工控机扩展槽内的卡式扭矩仪和CAN卡进行读写、采集转速转矩信号,并通过RS232串口将采集到的数据发送至dSPACE/AutoBox。测控软件能与AMT控制器进行数据通信、在线调整参数,实时显示AMT的运行状态。

3.5 硬件在环仿真测控调试系统

为便于试验的实时测控、参数调整以及试验过程中可能出现的不可预期的故障检测和分析,需构建试验测控系统,实现对试验系统运行状态和工作参数的测控和调试。本文利用dSPACE/ControlDesk软件提供的虚拟测试控件建立了重型车辆AMT面向对象的实时测控系统(图7)。通过该系统能进行试验的实时测控、参数在线调整、试验数据保存和紧急情况的应急处理。

4 硬件在环仿真试验

在对重型车辆AMT系统进行硬件在环试验前,应首先对离合器执行机构、选换挡执行机构的工作性能进行快速控制原型(RCP)测试和检验,验证执行机构的结构合理性和工作可靠性,同时标定各个传感器,检验驱动单元与传感器的工作性能,保证单个系统工作可靠;其次检验各子系统协调控制性能,并进行参数在线调试和优化;最后完成被控实物硬件在环仿真试验台和实时仿真控制系统的构建,并与dSPACE/AutoBox正确连接后,在MATLAB/Simulink环境下结合dSPACE/RTI工具完成代码的生成,并下载到dSPACE/AutoBox控制箱中进行硬件在环仿真试验,实时验证重型车辆AMT换挡控制策略。

图8所示是分别保持小油门开度(30%)、中油门开度(50%)与大油门开度(80%),从1挡连续升挡到12挡的车速与挡位随时间的变化曲线。表1、表2和表3所示是从曲线中得到的各个挡位的实际换挡点,与之前设计的组合型两参数换挡规律比较,结果表明实际换挡点车速与本文制

定的换挡规律曲线在该点的车速基本相同,证明本文制定的组合型两参数换挡控制策略能够满足重型车辆AMT的控制要求。

5 AMT样车道路试验

完成硬件在环仿真台架试验后,将该AMT样机安装在某重型车辆上,仍然采用dSPACE/AutoBox作为AMT样机控制器进行路试,便于实时测控、在线调整参数、实时数据保存与分析等,更好地评价AMT样车综合性能。

5.1 平路起步试验

如图9所示,根据重型车辆特点,选择4挡且油门开度α=15%工况起步。开始时离合器接合非常缓慢,主动盘、从动盘转速同步前,离合器接合速度几乎为零。当主动盘、从动盘转速同步后,离合器迅速接合。在整个起步过程中,发动机转速基本保持在900r/min左右,车速变化较小,起步平稳,但时间较长。

5.2 坡道起步试验

如图10所示,车辆在小坡道上以4挡起步,加速踏板开度比水平路面稍大。离合器半接合点延后,离合器接合比较缓慢,当离合器主动盘、从动盘转速同步后,离合器迅速接合。整个起步过程中,发动机转速基本保持在1000r/min左右,车速变化较小,起步较为平稳。

5.3 连续加减挡试验

如图11所示,在无风状态、水平良好路面条件下,车辆从1挡连续换至12挡,然后松开加速踏板,并踩下制动踏板,逐渐从12挡换至1挡。在整个过程中,当车辆达到换挡车速后,节气门开度迅速下降为零,离合器分离,然后进行退挡、选挡和挂挡,离合器接合,同时控制节气门逐渐恢复至目标开度。发动机工作平稳,无换挡不及时现象。

6 结论

开发了重型车辆AMT硬件在环仿真试验系统。基于该试验系统,分别在大、中、小油门开度下进行连续换挡试验,结果表明,实际换挡点车速与本文制定的换挡控制规律车速基本相同。AMT样车道路试验结果表明,综合性能变化趋势符合重型车辆AMT运行规律,控制策略准确可靠,为后续电控单元的开发与整车测试打下基础。

摘要:以重型车辆电控机械式自动变速器(permanent magent synchronous motor,AMT)样机开发为应用背景,基于MATLAB/Simulink/Stateflow/RTW与dSPACE软硬件系统,开发了重型车辆AMT硬件在环仿真试验系统。利用该系统实时验证组合型两参数换挡控制策略,并进行了平路起步、坡道起步以及连续加、减挡AMT样车道路试验。结果表明:所开发的硬件在环仿真系统能快速、有效地验证重型车辆AMT控制策略,正确评估其综合性能,为重型车辆AMT控制器的开发提供了很好的系统测试平台。

关键词:重型车辆,AMT,换挡控制,硬件在环仿真

参考文献

[1]徐淑峰,张承瑞,李洪斌.基于CAN总线和DSP的重型汽车AMT系统研究[J].自动化仪表,2006,27(11):21-23.

[2]王阳,席军强,刘富庆,等.重型车辆整车一体化自动变速技术[J].农业机械学报,2009,40(1):15-19.

[3]Kenji H,Satoshi T,Yohei T,et al.The Development and Utilization of Hardware-in-the-loop Si mu-lation for The Development of an Automatic Trans-mission Control System[C]//SAE Technical Paper Series.Transmission and Driveline.Detroit:SAE,2002-01-1255.

[4]Joe S,Bapiraju S,Mike R,et al.Modeling,Si mula-tion,and Hardware-in-the-Loop Transmission Test System Software Development[C]//SAE Technical Paper Series.Virtual Engineering,Si mula-tion&Opti mization.Detroit:SAE,2003-01-0673.

[5]张新荣,黄宗益.自动变速器电子控制单元硬件在环仿真试验[J].长安大学学报(自然科学版),2005,25(6):78-81.

[6]Zheng Quan,Woowon C,Ken D,et al.A Hardware-in-the-loop Test Bench for Production Trans-mission Controls Software Quality Validation[C]//SAE Technical Paper Series.In-Vehicle Software&Hardware Systems.Detroit:SAE,2007-01-0502.

[7]Zheng Quan,Asif H,Woowon C,et al.A6-speed Automatic Transmission Plant Dynamic Model for HIL Test Bench[C]//SAE Technical Paper Series.Transmission and Driveline.Detroit:SAE,2008-01-0630.

[8]杨晓辉.4×2中重型汽车驱动防滑硬件在环仿真及道路试验研究[D].长春:吉林大学,2005.

[9]任国新.商用车ABS/TCS集成控制系统硬件在环仿真试验技术研究[D].长春:吉林大学,2008.

[10]姜峰.重型商用车AMT自适应换挡规律的研究[D].长春:吉林大学,2007.

[11]Feng Jing,Zhong Hu,Ao Guoqiang,et al.Priciple and Application of the Real-ti me Hardware-in-the-loop Si mulation Platform Based on Multi-thread and CAN[C]//IEEE International Sympo-sium on Industrial Electronics.United Kingdom:ISIE,2008:2225-2230.

硬件仿真 篇7

随着电子技术的发展,IC设计的规模越来越大,复杂度越来越高。利用IP核复用技术和用户开发的专用IP核可以设计组成一个完整的系统级芯片。研究实践表明,在目前芯片的研发流程中,仿真验证的实践已经占到整个设计周期的70%以上。现有的仿真平台多是基于模块级的仿真,对在系统级的仿真缺乏手段,由于芯片产生缺陷的地方多在系统级环境下,模块与模块之间的冲突。因此将软件代码融入硬件仿真作为RTL的激励,可以提高验证的覆盖率。软件还可以很好的模拟实际的工作环境,可以充分控制所需验证的硬件功能,也避免了编写测试代码验证设计的典型应用。在此基础上,衍生出软硬件协同仿真这一需求。软硬件协同仿真指系统设计过程中同时验证软件和硬件,在系统硬件还未可用之前,在硬件模型上运行系统软件,检查调试软硬件设计中的缺陷及接口的错误等。而在使用软件验证过程中,还需要进行软件的调试,本文主要介绍了软硬件协同验证中软件仿真调试内容。

1 软件仿真调试模型

本文Soc芯片选择ARM,利用ARM汇编编译器ARMASM,C/C++编译工具ARMCC、ARMCPP以及连接器工具ARMLINK,将由C语言和汇编编写的源文件编译连接成带调试信息的可执行ELF文件格式并生成bin文件。将bin文件加载到硬件模型的存储器中,由硬件模型仿真产生出波形文件。

软硬件系统仿真中分析elf可执行文件和产生的波形文件,进行软件仿真调试,系统流程如图1所示。

在软件仿真调试模型中,主要包括以下的内容:

(1)软件的Firmware code经过编译器编译链接生成elf格式的可执行文件和二进制bin文件。硬件的仿真是基于二进制可执行文件,为了实现源码级的调试,需要解析elf文件中的调试信息。

(2)软件代码作为硬件仿真RTL的激励产生出波形文件,其中包含了程序仿真阶段的所有信息,进行软件调试需要对波形文件解析。

(3)利用解析得到的elf文件调试信息和波形文件的信息,将源代码和波形文件连接起来,并进行软件调试。

2 DWARF调试规范

在本文模型中采用DWARF(Debugging With Attributed Record Formats)调试规范[1],DWARF是一种非常优秀的调试规范,遵从GNU FDL授权,规定了编译器生成源码级别的调试信息的格式。调试信息被包含在ELF文件某几个节中,对于这些包含调试信息的节,在ELF文件规范[2]中并没有定义这些节,这些节中的调试信息的含义由编译时指定的调试信息格式来解释。

DWARF中的基本描述实体是调试信息条目DIE(Debugging Information Entries)。DIE中包含一个指定DIE所描述内容的标签(tag),以及许多用来填充细节并进一步描述实体的属性(attribute)。DWARF调试信息项之间的所有关系被表示成一棵树,树的节点就是调试信息表项自身。节点的子节点实际上就是该表项所有的子表项,这颗树通过先序进行了线性化,每个调试信息表项可以有,也可以没有子表项。

DWARF的调试信息条目自身不包含调试信息表项标签或每个属性的属性名和形式编码。相反地,每个调试信息表项以一个代码开头,该代码描述了在一个单独的缩写表(abbreviation table)中的表项,缩写表中的表项才包含了调试信息项的标签或各个属性的属性名和形式编码。这个代码后面直接跟着一系列属性值。缩写表中相应的表项将引导对直接包含在.debug_info节中的信息的解释。每个编译单元与一个特殊的缩写表相联系,但是多个编译单元可以共享同一个表。实验表明用缩写表可以将DWARF文件的大小缩减一半。源程序经过编译器的编译后,主要的调试信息包含在以下四个节中,节关系如图2所示。

(1).debug_info包含调试信息的调试信息表项(DIE),描述了代码内所有可供调试的模块的信息,包括函数、局部变量、全局变量等。

(2).debug_abrev包含对调试信息入口的标签和属性的格式说明,所有的编译单元的缩写表(abbreviation table)包含在这个单独的对象文件的节.debug_abbrev中。

(3).debug_line包含目标文件中机器码地址和源文件语句对应信息,对于源码级调试而言,需要解析.debug_line信息。例如当在某一行上设定断点时,调试器将利用行信息找到实际应该断点的地址。当某个指令引起段错误时,调试器会利用行信息反过来找出源代码中的行号,并告诉用户。

(4).debug_pubname保存源程序中的全局对象名、函数名及在.debus_info中的偏移。

Dwarf还有一些段,如.debug_frame段描述了调用栈的使用情况用于调试回溯;.debug_aranges段描述了各个CU的地址范围;.debug_loc信息来获取栈指针等[3]。通过对ELF文件中dwarf段的解析可以对软件代码进行调试。

3 软件仿真调试模型实现

本文模型将软件和硬件波形连接起来按指令同步,可以快速了解软硬件协同仿真过程中问题发生时,执行的是哪条指令,对应的是哪个函数,函数的调用关系,有效解决了软件的调试问题。

3.1 文件连接与断点操作

本文利用ELF文件调试信息,将波形文件和源文件连接起来。现代的计算机原理为程序存储原理,程序输入到计算机中,存储在内存储器中(存储原理),在运行时,控制器按地址顺序取出存放在内存储器中的指令(按地址顺序访问指令)。在处理器中一般有一个寄存器PC存放当前指令的地址,在波形文件中对应PC信号的值。根据波形文件中PC的值确定当前代码执行的位置,按照调试信息.debug_line节中机器码地址和源文件语句的对应信息,可以将波形的位置和源文件代码连接起来,按指令同步。

断点设置是调试器调试程序的基本操作,给定源文件的行进行断点操作(包括设置,取消等),首先需要找到源文件代码行对应的可执行代码的位置。根据.debug_line节调试信息调试控制程序可以得到可执行二进制代码的位置,在波形文件中查找PC信号的值,在对应位置设置断点[4]。区别于一般的软件指令集仿真,在软硬件协同仿真中,可以根据硬件的波形设置断点对应到软件的代码中。在波形中在指定PC信号位置处设置断点,直接对应到源文件的行位置。

3.2 调用堆栈

函数的层次调用中,可以解析得到调用它们的函数的调用结构,这些函数调用结构表现出一种“堆栈”的特征,最后被调用的函数出现在最上方。因此称这种关系为调用堆栈(call stack)。在程序发生故障的时候,程序被终止,一般可以得到最后出错的函数。利用调用堆栈可以知道出错的函数在被哪些函数调用的过程中出错,依此可以检查出错的原因。

在调试器中获得当前函数的调用情况,需要解析.debug_frame节中保存的堆栈状况,对指令解析,获得返回该函数调用函数的地址,从而获得函数所有的调用路径直到main函数。

本文根据波形文件中的信息采用了一种新的方法实现函数的调用堆栈。调试信息.debug_pubnames节中记录了全局对象名、函数名及在.debus_info中的偏移,根据.debug_info、.debug_abbrev节内容,可以得到当前工程中所有函数的地址范围,然后保存在一个数据结构中。在波形文件包含了程序运行过程中PC的所有路径,当程序被中断时,通过中断处的PC,查找函数的范围可以确定当前所在的函数。函数在执行过程中会调用其他函数,所以通过PC向前查找,直到本函数的开始位置,继续向前查找可以得到调用本函数的函数。依次查找可以获得当前函数的调用堆栈直到main函数。整个流程如图3所示。

3.3 数据操作

数据基本操作包括程序中全局变量和局部变量的操作。数据操作的关键在于确定操作变量地址。在DWARF中变量使用DW_TAG_variable调试信息条目DIE描述,变量的属性数据存放在.debug_info节中,属性名和形式编码存放在.debug_abbrev节中。.debug_abbrev节包含了对.debug_info节内容的解析。变量的地址由变量属性DW_AT_location描述。

全局变量的地址固定,一般分配在目标文件的数据段中。对于全局变量,DW_AT_location属性描述了变量的绝对地址。

局部变量相对复杂,因为局部变量可以在全局数据区,可以在栈上,甚至是在寄存器中。全局数据区局部变量与全局变量类似,寄存器中的局部变量,记录变量的寄存器可以得到变量的值,下面对于在栈上的局部变量进行讨论。在堆栈中分配的局部变量,其地址随着函数的调用位置和深度而变化,以其所在函数的调用帧栈基地值进行偏移。局部变量所在函数使用DW_TAG_subprogram调试信息条目DIE描述。函数的调用帧栈基地值存储的寄存器由属性DW_AT_frame_base指定(如:x86使用ebp寄存器,arm体系结构使用r13寄存器)。变量的DW_AT_location属性描述了变量的偏移地址。将函数调用帧栈基址寄存器于变量偏移地址相加可以得到当前局部变量的地址。

根据波形文件中的读写时序,搜索对变量地址最近的写操作。首先在地址总线上查找变量的地址,然后分析写选通信号是否有效。写选通信号送到所有的存储器,但只选通地址有效的存储单元,使之能写入数据。最后读取数据总线上的数据,得到当前变量的值。读写时序如图4所示。

4 软硬件协调仿真调试

将源文件编译产生的二进制代码加载到芯片存储器中,由硬件模型仿真产生VCD波形文件,其中VCD文件包含了整个仿真时间内的信号变化信息,如图5所示。VCD是一个通用的波形文件格式,是IEEE1364标准(Verilog HDL语言标准)[5]中定义的一种ASCII文件。

图中左边为VCD文件的信号值列表,右边为仿真时间内的信号值。在VCD波形文件中仅列出了地址总线,写选通信号线,数据总线和PC寄存器信号。其中波形文件中PC信号记录了程序运行过程中的所有路径。选择源文件中指定行可以对应到VCD波形仿真的位置。反之,选择VCD波形仿真位置,根据PC寄存器值,定位到源文件,如图6所示。

根据VCD波形中的PC路径可以确定PC当前位置函数中的函数调用堆栈的层次结构。当前PC信号为0x1B20,main函数地址范围为0x1AE0到0x1BE4,可以得到当前函数为main函数。在解析二进制可执行文件得到全局变量和局部变量的地址,如全局变量g_flag,解析获得地址为数据段的0x000d0000处。在波形中可以看到,在432.0μs左右,写选通信号线为高电平,对地址0x000d0000写操作,数据总线的值为0,得到当前全局变量g_flag为0。(下转第147页)波形中对全局变量g_flag写操作对应于源文件中对全局变量g_flag赋值操作。在VCD波形文件中根据读写时序,查找依据PC寄存器最近对该地址单元的写操作,可以确定变量值,进行软件调试。另外根据波形文件和调试信息可以实现单步调试、变量值查找等功能。

5 结束语

本文介绍了软硬件协同仿真的原理和流程,利用经编译得到的带调试信息的二进制可执行文件和硬件仿真的波形文件,设计了软硬件协同仿真环境。该环境可以实现硬件波形和软件代码之间的对应连接,并且实现一定的软件调试功能,可以更好地验证软硬件的功能和时序。一般软件仿真基于指令集的仿真,本文设计了一种新的基于硬件波形的仿真环境仅依赖于编译产生的可执行文件和仿真波形文件,不需要指令仿真,可以为各种项目调试验证使用。

参考文献

[1]UNIX International Programming LanguagesSIG.DWARF Debugging Inofmration Format[Z].Revision:2.0.0(Jul.27,1993).

[2]Tool Interface Standard(TIS).Exeeutable and Linkable Format(ELF)Speeifieation(Versionl.2)1998[Z].

[3]李宝丹.嵌入式系统辅助调试环境的开发北京邮电大学[D].2009.

[4]张和君,张跃.基于DWARF的Bootloader远程交叉调试模型[J].计算机工程,2006(24):60-62.

硬件仿真 篇8

1 开发单片机仿真实验平台的必要性分析

在全国高等院校电子信息类专业中, 已普遍开设单片机及其相关课程。《单片机原理及应用》、《单片机原理及接口技术》等课程是大中专院校电子类专业实践性、应用性和工程性很强的专业基础课或专业选修课。从加强学生能力培养的要求来看, 这类课程仅在课堂上讲授基本原理是不够的, 必须在教学中加强实践环节, 开出一定数量的高质量的配套实验课或独立的实验课程, 让学生有足够的实践机会。

2 Proteus软件的特点

Proteus与其它单片机仿真软件相比较具有很多优点, 它不仅能仿真单片机CPU的工作情况, 而且能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。在仿真和程序调试时, 只需将相关的十六进制文件载入微机处理器, 就可从实践、工程的角度直接看程序运行和电路工作过程与结果。对于这样的虚拟仿真实验, 从教学和实践的角度上讲, 弥补了理论教学、实验实践和工程应用间脱节的缺陷。

3 软硬件结合的单片机仿真实验平台的结构

仿真实验平台由两部分构成, 即由Proteus与keil软件整合的软件仿真和周立功公司开发的DP-51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发的硬件仿真平台。

3.1 软件仿真平台

⑴采用Keil软件进行程序的编译。对于刚刚使用Keil的用户来说, 一般是按照下面的流程来完成单片机应用系统开发任务的。

1) 建立工程;2) 为工程选择目标器件, 例如选择Atmel公司生产的AT89C51单片机;3) 设置工程的配置参数;打开/建立程序文件;4) 编译和连接工程;纠正程序中的书写和语法错误并重新编译连接;5) 对程序中某些纯软件的部分使用软件仿真验证;6) 使用硬件仿真器对应用程序进行硬件仿真;7) 将生成的Hex文件烧写到单片机的程序存储器ROM中运行测试。

上面的流程只是一个标准的开发流程, 实际使用中, 用户可能反复重复其中的一个或几个步骤。

⑵采用Proteus进行软件仿真。Proteus功能模块一部分是智能原理图输入系统ISIS和虚拟系统模型VSM, 组合了混合模式的PROSPICE电路仿真、动画器件和微控制器模型。

另一部分是高级布线及编辑软件ARES也就是PCB.ARESPCB设计具有32位数据库、元件自动布置、撤消和重试的自动布线功能。

3.2 硬件仿真平台

DP-51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台集成有强大的硬件资源, 并且为用户提供了多种选择, 使用户可以进行各种相关的实验。

1) 自带5V、12V、-12V电源, 其中5V电源可提供2A电流, 12V可提供500m A, -12V可提供300m A, 含瞬时短路保护和过流保护;配备TKStudy ICE独立的实时硬件仿真器;2) 带有Easy PRO51编程器用于烧写51序列单片机和串行E2PROM;DIP40脚圆孔座即可用于插放仿真头又可用于插放在Easy PRO51上烧写好的单片机;3) 灵活简单138译码和573锁存电路, 方便用户随意设置;集成1路完全能的CAN-bus现场总线接口;4) 集成1路USB1.1接口;集成1路USB1.2接口 (可供用户选配) ;5) 集成1路TCP/IP以太网接口 (可供用户选配) ;6) 支持CPLD实验, 可选择使用XILINX公司的XC95108系列的CPLD或ALTERA公司的EPM7128S系列的CPLD (可供用户任意选择, 需要或不需要) ;7) 带有128X64的点阵液晶模块及接口, 和一个16X2字符液晶模块的接口 (可供用户任意选择) ;8X8LED点阵模块;步进电机.直流电机实验;8) ADC0809并行AD、DAC0832并行DA实验, 串行AD实验;555实验电路;9) 由键盘显示芯片ZLG7290控制的8个8段数码管和16个按键;10) 8个拨码开关、8个LED、8个独立的按键;接触式IC卡实验;11) 非接触式IC卡读卡模块实验 (可供用户选配) ;LM324四运放, 可以搭建各种运放电路, 做运放实验;12) 继电器驱动及控制电路, 可做各种继电器控制实验;I2C接口的EEPROM和RTC实时时钟电路;RS232和RS485接口电路;13) 交流蜂鸣器驱动控制电路;PWM脉宽调制输出接口;电位器电压调节电路。

参考文献

[1]孙爱晶, 张明远, 刘毓。软件仿真平台在通信原理实验教学改革中的实践[J].中国现代教育装备, 2009 (7) .[1]孙爱晶, 张明远, 刘毓。软件仿真平台在通信原理实验教学改革中的实践[J].中国现代教育装备, 2009 (7) .

上一篇:名家视点下一篇:形态构成原理空间设计