文档库 最新最全的文档下载
当前位置:文档库 › 基于现场程序实现PLC S7与wincc联合仿真

基于现场程序实现PLC S7与wincc联合仿真

基于现场程序实现PLC S7与wincc联合仿真
基于现场程序实现PLC S7与wincc联合仿真

基于SIMPLC实现PCS7-WINCC联合仿真

1、把备份PLC程序恢复归档,解压

2、桌面打开SIMTIC Manger,选择step7模式

3、打开网络组态,更改网络连接,把原有网络连接删掉,新建仿真用的网络连接,编译保

存。连接类型connection type选择S7-connection。然后选择主CPU CPU414-4H,确定便已保存。

4、打开硬件组态,打开网络连接设置,把IP protocol is be used 打上勾,激活mac 码,IP,

记住该mac码后几位:46-4E,以后网络连接用该MAC码对应选择。编译保存。

5、点开wincc os 主机,右键选择complie 编译,把PLC变量送入wincc生成wincc对用变

量。Complie—next—YJL—右键select network connection,选择mac码后几位:46-4E 的

工业以太网。

6、在SIMTIC Manger 编辑画面中选择 os wincc ,右键点击打开wincc ,选择computer 右键

属性,点击Use local computer name ,选择转换成使用本地计算机。确定,退出wincc ,重启wincc 进入下一项设置

7、打开 SIMATIC S7 PROTOCOL SUITE 协议组下面的industral Ethernet 工业以太网,点击系统参数, 选择连接端口 为仿真连接端口 PLCSIM(ISO)

8、打开仿真器S7-PLCSIM,访问CUP节点中,选择cpu414-4H下面的cp443-1 mac为46-4E的连接点。

9、以上是设置好PLC与wincc的通信连接设置,接着就要回到S7,点击选中项目YJJL 工作站,右键PLC download,或直接点击菜单栏下载图标,将PLC程序下载到存储器中。

完成以上步骤,仿真设置就完成了。点击wincc 蓝色三角形运行图标,激活运行wincc,大功告成。

总结:实现将现场跟实物硬件PLC连接应用的S7 程序脱离实物PLC硬件进行仿真调试程序,关键搞定wincc与PLC的网络设置。首先要废掉原来的连接,建立基于仿真器的连接。方法方式很多,要完全懂PLC-wincc网络设置原理才能搞的定,依图按书学会了一个以后,就要想想其中的原理,逻辑关系,想想为什么要这样那样,每个步骤先后的关键次序。

以上项目设置完成后,日后要打开运行wincc-plc仿真,就不用重复上面设置,不过要完成以下操作:

1、打开仿真器S7-PLCSIM,访问CUP节点中,选择cpu414-4H下面的cp443-1 mac为46-4E

的连接点。、

2、回到S7,点击选中项目YJJL 工作站,右键PLC download,或直接点击菜单栏下载图

标,将PLC程序下载到存储器中。

3、完成以上步骤,仿真设置就完成了。点击wincc 蓝色三角形运

行图标,激活运行wincc。

关于PLC-wincc软件安装,可以用老毛桃winpe-u盘版,在现场运行

PLC-wincc的控制监控电脑上,做一个GHO系统备份镜像如

ES1207en.GHO

这样就不用安装跟现场一样的xp系统或复杂安装步骤的西门子S7-wincc软件。

找一台与现场一同型号的电脑,比如,现场用的是戴尔i3 OPTIPLEX 790,我办公

室备件电脑是他的升级版戴尔i5 OPTIPLEX 7010,把ES1207en.GHO 当新系

统用老毛桃winpe-u盘版软件安装到OPTIPLEX 7010 上。这里要注意,安装

ES1207en.GHO系统前,新机OPTIPLEX 7010 要先把

它的网卡驱动下载落来,因为驱动精灵要上网才能下载其

他驱动程序。装上这个ES1207en.GHO的系统后,安装

上可以上网的新网卡驱动,使之可以上网。这时,OPTIPLEX 7010里面的主板驱

动程序及IP等都是旧电脑上的,这里就要用驱动精灵软件

DG2013_Final_1024U 。安装驱动精灵后,运行,让其检测驱动状况,下载安装与

之相适应的各种驱动。

完成以上电脑系统及wincc-plc软件克隆安装,接下来,就把从现场运行的PLC-wincc程序下载存放到OPTIPLEX 7010 固态硬盘,如D盘。

不会用老毛桃winpe-u盘版克隆系统?百

度文库学吧!这个教程,我不知道什么时候有

空整理出来哦。

---mrfeng 于清远江铜2013.07.05

Thanks 江西瑞林周勇,陈静

如何将step7变量自动导入到wincc

一、从WinCC里调用STEP 7 变量的前提条件 从WinCC里调用STEP 7 变量可以将建立变量的工作量减少一半,同时将建立变量的出错概率建设一半,从而减少了相应的排错工作,大大提高了工作效率。 从WinCC里调用STEP 7 变量的前提条件是,WinCC的项目文件必须是集成在STEP 7项目中的。 在安装所有Simatic 软件前,请查阅软件的安装注意事项,确定操作系统与软件的兼容性。该文档一般位于:CD\Documents\<语言版本>\InstallNotes.chm。 要使用WinCC与STEP 7的集成功能,WinCC和STEP 7必须安装在同一台计算机上,必须在安装WinCC之前安装STEP 7。STEP 7 与WinCC的版本必须一致。WinCC 与STEP 7的版本兼容行列表可以在西门子自动化与驱动集团的技术支持与服务网站上获得。 请STEP 7安装完毕后,进行WinCC安装。在WinCC安装过程中,请选择“自定义安装”,在communitation 下的所有选项都必须钩选。 二、在Simatic Manager里建立新的WinCC项目 在建立新的STEP 7项目后,可以在Simatic Manager里直接建立新的WinCC 项目。方法是在Simatic Manager里,右键点击项目名称,选择“Insert New Object\OS”。此时系统会在STEP 7 项目文件里建立一个WinCC项目文件你可以在OS站上点击右键,选择“Re name”来修改WinCC项目名称。 可以通过在名称上点击右键,选择“Open Object”打开并编辑这个WinCC项目 三、把现成的WinCC项目集成到STEP 7 项目中 按如下步骤把已有WinCC项目文件插入STEP 7项目文件 A. 在STEP 7项目文件中插入一个OS站,然后把它改名为已有的WinCC项目名称。 B. 在STEP 7项目里删除因仅插入OS站而产生的WinCC项目文件,其位置在STEP 7 项目文件夹里的wincproj文件夹下,例如: d:\siemens\STEP7\S7proj\STEP7_Integration\wincproj\Name of the OS C. 最后在项目复制器里用’Save as’把已有的WinCC项目文件存储到STEP 7项目路径下。项目复制器位于开始菜单项"Start > SIMATIC > WinCC > Tools"。 注意: 对于集成STEP 7项目里的WinCC项目,你也可以使用压缩工具(Packer)来归档WinCC项目。 四、把变量(符号表,共享DB,背景DB)从STEP 7传送到WinCC里 STEP项目文件里的符号表,共享DB里的变量可以一次性的传入继承的WinCC 项目文件。 具体步骤如下: A、为需要传输的变量打上“传输标志” 在需要传输的变量上点击右键,从关联菜单中选择“Special Object Properties \ Operator Control and Monitoring…”,打开Operator Control and Monitoring对话框,激活复选框“Operator Control and Monitoring”,并点击“OK”关闭对话框。此时该变量前将显示绿色小旗 如需对成批变量进行该操作,可以使用“Shift+鼠标左键”进行批选择,或

WinCC-STEP7仿真

WinCC-STEP7仿真 一、描述 通常我们做项目的过程中有PLC编程(STEP7平台),上位组态监控(WinCC),WinCC与PLC通过以太网方式通讯实现监控;项目编程工作完成后,为了安全起见,我们通常会通过仿真的方式测试程序,检查错误,本文介绍仿真建立的过程; 二、材料 WinCC v7.5,STEP7 v5.6,S7-PLCSIM V5.4+SP8 三、STEP7仿真步骤 在Step7中打开项目如图1所示,点击选项(Options)显示下拉窗口,选中“设置PG/PC接口”进入图2; 图1 选择PLCSIM.TCPIP.1 以太网方式通讯,点击确定; 返回Step7如图3所示,打开仿真器如图4所示; 在图4中可看到PLCSIM(TCP/IP)协议,对应PG/PC接口;

图2 图3 图4

PLC处于STOP模式见图4,如图5所示下载程序到仿真器(全部内容); 打开OB1如图7,点击在线如图8所示,且在状态栏可知PLC状态为STOP; 图5 图6

图7 图8

打开仿真器,将PLC状态调整为RUN-P如图9,至此STEP7仿真成功; 图9 图10

四、WinCC仿真步骤 打开WinCC项目如图10所示,点击“变量管理”->“SIMATIC”-> “TCP/IP”-> “系统参数” 在“系统参数-TCP/IP”->“逻辑设备名称”设置为PLCSIM.TCPIP.1 图11 在“变量管理”->“SIMATIC”-> “TCP/IP”-> “PLC1”中右击连接参数-TCPIP 如图12所示,在IP地址栏需要输入PLC的IP地址; 如何查看PLC的IP地址: 在STEP7中选择图13中hardware,进入图14,点击硬件CP443-1的属性即可查看PLC的IP地址; 注:WinCC修改变量管理中的通讯参数之后再重新启动WinCC

51单片机常用外设(硬件)软仿真

51单片机常用外设(硬件)软仿真 (陕西师范大学物理学与信息技术学院,杨春江,西安,710062) 摘要:单片机体积小,功能强,具有很强的灵活性,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。但在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。然而我们也发现基于51单片机的嵌入式应用几乎都要用到这几种常用外设硬件(51单片机,LED,LCD,RAM,键盘,D/A,A/D)。Proteus 就是一款功能强大的EDA仿真软件。它拥有丰富的库元件,尤其是动态外设的仿真极大地补充了其他仿真软件的不足;虚拟工具箱的引入为仿真测试提供了方便。 本文以51单片机为例具体分析了该软件在仿真微处理器及其外设硬件方面的独到之处,protues能有效的仿真51单片机及其常用外设硬件,大幅提高开发效率和降低开发成本。 关键词:51单片机Proteus软仿真常用外设(硬件) 0.引言 单片机应用技术所涉及到的试验实践环节比较多,而且硬件投入比较大。在具体的工程实践中,如果因为方案有误而进行相应的开发设计,会浪费较多的时间和经费。所以进行软件的软仿真是非常有用和必要的。有一点必须先肯定,软件仿真不能替代硬件仿真。 软件仿真只是对硬件的仿真模拟,但是软件仿真仍有必要。目标系统是千变万化的,需要开发者去实现。实现可能需要相当长一段时间,甚至完成后不能随意调试,因此有必要对目标系统进行模拟或仿真,以便开发、检测嵌入式软件。 外围设备软件仿真可以快速建立开发目标的模拟系统。由于各仿真部件是软件,因此只要部件存在,就没有采购、制作电路板的过程。将各部件按规则布置、用软件连接,就构成了目标模拟系统。 外围设备软件仿真可以使嵌入式的软件设计与硬件设计相对独立。软件设计者可以先在模拟软件上进行功能和逻辑测试,从而减少了对硬件的依赖。 外围设备仿真软件在一定条件下可以制作为检测硬件功能的工具。如果仿真部件的连接口可以转化为硬件接口,那么就可以在硬件上用软件仿真部件代替被仿真部件运行。 外围设备软件仿真可以降低开发成本。过去有时为了配合软件开发,需要在硬件开发初期制作一些测试硬件。而现在,硬件开发可以按自己的需要按部就班地进行,只要在必要时与软件设计者沟通就可以了。

modelsim仿真小结

Modelsim仿真小结 Modelsim的基本仿真流程大致分以下几个步骤:建库、编译工程、前后仿真、调试等。Modelsim仿真既可以在modelsim界面操作,也可以用do文件实现,这里结合学习的教程、网上看到的资料,和实际遇到的一些问题,分别做一整理小结。 1.建库 建库包括Altera库和Xilinx库,同时都包括Verilog和VHDL。这里只建了Verilog库,VHDL和Verilog步骤相同。 对于Altera库主要包括lpm元件库、Mega_Function库atera_mf、altera原语库altera_primitive和各器件系列模型库。前三种是调用altera模块的必备库,第四种是进行综合后功能仿真和布线后时序仿真需要的库,和器件系列有关,只选对应系列即可。 Altera库创建和编译步骤如下: a)在Modelsim安装目录下新建文件夹,命名altera_lib,以存放编译后的库文件,可 以在altera_lib下新建Verilog和VHDL两个子文件夹,分别存放Verilog和VHDL库。 b)打开Modelsim,新建Library,file ->new->library .. c)如下图,创建lpm库,路径E:\modeltech_10.1a\altera_lib\Verilog\lpm

d)添加库文件,并编译,compile -> compile …,出现compile source files窗口, library 指定到lpm下,查找范围,选quartus安装目录下… eda\sim_lib目录里的仿真原型文件:220model.v ,点c ompile ,点done。 到此,lpm库建立完毕。 e)同理,建立altera_mf库添加altera_mf.v ,建立primitive库添加altera_primitive.v 建立各系列的模型库,命名可用系列名加_ver“xxx_ver”,也可随意吧,添加各系列的xxx_atoms.v。 这里,也可以把以上库放在一个文件夹,这样做简单,一次就搞定,分开也就是条理清楚,没人去看,所以没必要。 f)修改modelsim.ini文件,为的是让modelsim能自动map到已经编译的这些库上。 先去掉只读属性,在[Library]和[vcom]之间加上:库名=库路径[绝对路径或者相对路径],相对路径是相对于modelsim安装路径,modelsim安装路径用$MODEL_TECH 表示。 这里所有库都放在E:\modeltech_10.1a\altera_lib下,库名是altera_lib,这里只添加一句:altera_lib = E:\modeltech_10.1a\altera_lib g)保存退出,改回modelsim.ini只读属性,防止乱改。至此altera库建立完毕。 Xlinx库创建和编译步骤如下: 相比altera,xilinx建库很方便。xilinx有批处理命令,直接在console命令窗口,输入compxlib命令,调出编译库的窗口,先改掉modelsim安装目录下modelsim.ini只读属性。设置如下图:

实验2 CCS Emulator硬件仿真环境的配置与使用

实验二CCS硬件仿真环境的配置与使用 一、实验目的 1.了解嵌入式DSP硬件仿真调试的过程; 2.学会自己配置CCS Emulator开发环境; 3.掌握CCS硬件仿真环境下的调试与运行。 二、实验内容 1、CCS硬件开发环境的熟悉; 2、CCS Emulator硬件仿真环境的配置与使用 3、CCS Emulator硬件仿真调试实例。 三、实验设备及工具 软件:PC机操作系统Windows XP环境、CCS2.0。 硬件:DSP开发板、TDS 510仿真器。 四、实验步骤 ? 1. 分发工具箱,检查开发套件是否完备,共6项,见列表。 如有配件不齐全,立刻向老师反应。本次试验会用到 1,4,5,6项; 1.DSP开发板; 2.并口连接线; 3.9口直连线 https://www.wendangku.net/doc/5518579722.html,B黑色数据线 5.TDS510 Jtag仿真器

6.黑色电源适配器 , ? 2. 认识硬件电路;硬件连接。 *注意事项: Jtag口不支持、不允许热插拔;否则有可能损伤硬件 连接顺序: 1)仿真器连接开发板; 2)开发板利用电源适配器上电; 3)仿真器利用USB口上电;观察电源指示灯; 4)断电顺序与上述依次相反。 * 一定要按照顺序连接硬件,否则可能无法识别硬件。? 3.仿真器驱动安装自动安装usb-driver

按照提示从指定文件夹usb-driver中进行安装。

新硬件安装成功,查看设备管理器中图示红框处TITDS510-USB2.0,即为安装成功。 ? 4.开发板驱动安装 DSPice-usb2 setup.exe 按提示安装文件夹中的setup程序。

? 5.开发环境设置 setup ccs 双击打开ccs setup。Exe进行配置, 清除掉原有的configuration文件,选择54xxXDS510 emulator,然后进行配置。

WINCC与STEP7模拟通信设置

WinCC与Step7-300通讯 4.1 通讯术语 (1)通讯 通讯用于描述两个通讯伙伴之间的数据交换。 (2)通讯伙伴 通讯伙伴是指可以相互进行通讯的模块,也可是说它们互相交换数据。它们可以是PLC中的中央处理器板和通讯处理器,也可以是PC中的通讯处理器。(3)通讯驱动程序 在WinCC中通讯驱动程序也指通道。它是一个软件组织,可在自动化系统和WinCC中的变量管理器之间设置连接,以便能向WinCC变量提供过程值。在WinCC中有很多通讯驱动程序,可通过不同的总线系统连接不同的自动化系统。(4)通道单元 通道单元指的是一种网络或连接类型。每个使用的通道单元必须分配给相关的通讯处理器。一些通道单元需要附加系统的组态。 (5)连接 连接是两个通讯伙伴组态的逻辑分配,用于执行已定意的通讯服务。每个连接有两个端点,它们包含对通讯伙伴进行寻址所必需的信息,以及用于建立连接的附件属性。 一旦WinCC与自动化建立正确的物理连接,就需要WinCC的通讯驱动程序和相关的通道单元来建立或组态与自动化系统间的逻辑连接。每个通道单元下可有多个连接。 4.2 建立WinCC与PLC间通讯的步骤 ●创建WinCC站与自动化系统之间的物理连接。 ●在WinCC项目中添加适当的通道驱动程序。 ●在通道驱动程序适当的通道单元下建立与制订通讯伙伴的连接。 ●在连接下建立变量。 WinCC变量管理器管理运行时的WinCC变量。它的任务是从过程中取出请求的变量值。 4.3 创建一个S7-300 PLC的项目 要实现WinCC与PLC间的通讯,首先要在PLC创建一个项目。 ●打开SIMATIC Manager,在File菜单下单击“New Project Wizard”,创建一个 项目名为zx的SIMATIC 300 Station。如图4-1所示。

modelsim和NCverilog的区别

Modelsim和NCverilog的比较 集成电路的发展趋势是,单位面积集成的晶体管的数目越来越多,可靠性越来越越高、稳定性越来越好。现在芯片集成度已经超出可人们的想象,有的芯片内部集成了数百万的晶体管,已经远远超出了人的大脑可以分析的范围。这就对EDA工具提出了更高的要求,不管是设计、仿真、综合软件的发展,都给集成电路工程师带来了巨大的便利。 modelsim是Mentor graphics公司推出的HDL代码仿真工具,也是业界最流行的HDL仿真工具之一。支持图形界面操作和脚本操作,常见的图形界面操作相对直观,但是由于重复性操作几率高、处理效率低、工程的非保存性,对于大规模的代码仿真不推荐使用;脚本操作完全可以克服以上的缺点,把常见的命令,比如库文件和RTL加载、仿真、波形显示等命令编辑成.do脚本文件,只需要让Modelsim运行.do文件即可以完成仿真,智能化程度高。 NCverilog是candence公司推出的Verilog HDL的仿真工具。NC-Verilog是Verilog-XL的升级版, 它采用Native-Compiled技术, 无论仿真速度, 处理庞大设计能力, 编辑能力, 记忆体容量和侦错环境都以倍数升级。C-Verilog是一个编译仿真器,它把Verilog代码编译成Verilog程序的定制仿真器。也就是它把Verilog 代码转换成一个C程序,然后再把该C程序编译成仿真器。因此它启动得稍微慢一些,但这样生成的编译仿真器运行得要比Verilog-XL的解释仿真器快很多。Ncverilog是shell版的,nclaunch是以图形界面为基础的,二者调用相同内核;Ncverilog的执行有三步模式和单步模式,在nclaunch中对应multiple step和single step;Ncverilog的三步模式为:ncvlog(编译) ncelab(建立snapshot文件) ncsim(对snapshot文件进行仿真)基于shell的ncverilog操作(尤其是单步模式)更适合于大批量操作,hncverilog的波形查看配套软件是simvision,其中包含原理图、波形、信号流等查看方式。 Ncverilog命令使用库文件或库目录 ex). ncverilog -f run.f -v lib/lib.v -y lib2 +libext+.v //一般编译文件在run.f 中, 库文件在lib.v中,lib2目录中的.v文件系统自动搜索使用库文件或库目录,只编译需要的模块而不必全部编译。 Verilog Testbench信号记录的系统任务: 1). SHM数据库可以记录在设计仿真过程中信号的变化. 它只在probes有效的时间内记录你set probe on的信号的变化。 ex). $shm_open("waves.shm"); //打开波形数据库 $shm_probe(top, "AS"); // set probe on "top" 第二个参数: A -- signals of the specific scrope

WINCC与STEP7的通信

WinCC与Step7-300通讯 步骤如下: 1、用一根普通网线连接计算机和以太网模块。 2、启动Step 7 ,点击“选项---->设置PC/PG接口”,将通讯接口设置为ISO的那个,指向你正在使用的网卡。 3、点击“PLC--->编辑以太网节点”,输入以太网模块上的MAC 地址,以及你需要分配的IP地址,子网掩码,最后点击“分配IP组态”,IP分配完成。 4、点击“选项---->设置PC/PG接口”,将通讯接口设置成TCP/IP。 5、在PLC硬件组态中,将以太网IP地址设置成你刚才分配的那个IP。 6、现在你可以正常通过以太网下载程序了。 如果mmc卡是空的或者卡里面的硬件配置程序跟现有硬件一致,可以用mac地址下载。否则,必须先清空mmc卡或者先用mpi下载 ?三菱PLC输出指示灯安装于各自的输出模块上,PLC输出指示灯用于指示PLC输出信号的状态。当输出指示灯不亮时,检查、确定故障原因。 ?当利用编程器检查,确认PLC输出已经为“1”,且更换模块后PLC输出可以正常输出时,如对应的指示灯还是不亮,在检查输出模块安装、连接正常的基础上,可以 确认故障是PLC输出模块或对应的输出点本身不良引起的。输出模块、输出点本身 不良可能的原因有: ? 1.采用汇点输出(无源)时,可能PLC输出接口电路损坏;

? 2.采用源输出(有源)时,因输出负载过重、短路引起了三菱PLC内部电源电压的降低、保护; ? 3.当故障发生在扩展单元时,可能是基本单元与扩展单元间的连接不良; ? 4.三菱PLC输出接口电路损坏等。测量三菱PLC输出电压、检查模块安装与连接,在确认正确后,应更换输出模块或进行输出模块的维修与处理。 本章通过一个实际例子讲述WinCC与S7-300 PLC之间通过Ethernet的通讯方法。下面列举了一些在通讯中常用的术语。 4.1 通讯术语 (1)通讯 通讯用于描述两个通讯伙伴之间的数据交换。 (2)通讯伙伴 通讯伙伴是指可以相互进行通讯的模块,也可是说它们互相交换数据。它们可以是PLC中的中央处理器板和通讯处理器,也可以是PC中的通讯处理器。(3)通讯驱动程序 在WinCC中通讯驱动程序也指通道。它是一个软件组织,可在自动化系统和WinCC中的变量管理器之间设置连接,以便能向WinCC变量提供过程值。在WinCC中有很多通讯驱动程序,可通过不同的总线系统连接不同的自动化系统。(4)通道单元 通道单元指的是一种网络或连接类型。每个使用的通道单元必须分配给相关的通讯处理器。一些通道单元需要附加系统的组态。 (5)连接 连接是两个通讯伙伴组态的逻辑分配,用于执行已定意的通讯服务。每个连接有两个端点,它们包含对通讯伙伴进行寻址所必需的信息,以及用于建立连接的附件属性。 一旦WinCC与自动化建立正确的物理连接,就需要WinCC的通讯驱动程序和相关的通道单元来建立或组态与自动化系统间的逻辑连接。每个通道单元下可有多个连接。 4.2 建立WinCC与PLC间通讯的步骤 ●创建WinCC站与自动化系统之间的物理连接。 ●在WinCC项目中添加适当的通道驱动程序。 ●在通道驱动程序适当的通道单元下建立与制订通讯伙伴的连接。 ●在连接下建立变量。 WinCC变量管理器管理运行时的WinCC变量。它的任务是从过程中取出请求的变量值。 4.3 创建一个S7-300 PLC的项目 要实现WinCC与PLC间的通讯,首先要在PLC创建一个项目。 ●打开SIMATIC Manager,在File菜单下单击“New Project Wizard”,创建一个 项目名为zx的SIMATIC 300 Station。如图4-1所示。

单片机软硬件联合仿真解决方案

单片机软硬件联合仿真解决方案摘要:本文介绍一种嵌入式系统仿真方法,通过一种特殊设计的指令集仿真器ISS将软件调试器软件Keil uVision2和硬件语言仿真器软件Modelsim连接起来,实现了软件和硬件的同步仿真。关键词:BFM,TCL,Verilog,Vhdl,PLI,Modelsim,Keil uVision2,ISS,TFTP,HTTP,虚拟网卡,Sniffer,SMART MEDIA,DMA,MAC,SRAM,CPLD缩略词解释:BFM:总线功能模块。在HDL硬件语言仿真中,BFM完成抽象描述数据和具体的时序信号之间的转换。PLI:Verilog编程语言接口,是C语言模块和Verilog 语言模块之间交换数据的接口定义。TCL:字面意思是工具命令语言,是一种解释执行语言,流行EDA软件一般都集成有TCL。使用TCL用户可以编写控制EDA工具的脚本程序,实现工具操作自动化。ISS:CPU指令集仿真器,可以执行CPU的机器码。TFTP:简单文件传输协议,Windows的tftp.exe既是该协议的客户端实现。SMART MEDIA:一种存储卡,常用于数码相机、MP3。DMA:直接内存访问。用于外部设备之间高速数据转移。MAC:媒体接入控制器。本文中是指网卡芯片。前言传统的嵌入式系统中,设计周期、硬件和软件的开发是分开进行的,并在硬件完成后才将系统集成在一起,很多情况下,硬件完成后才开始进行实时软件和整体调试。软硬件联合仿真是一种在物理原型可用前,能尽早开始调试程序的技术。软硬件联合仿真有可能使软件设计工程师在设计早期着手调试,而采用传统的方法,设计工程师直到硬件设计完成才能进行除错处理。有些软件可在没有硬件支持的情况下完成任务的编码,如不涉及到硬件的算法。与硬件相互作用的编码在获得硬件之前编写,但只有在硬件上运行后,才能真正对编码进行调试。通过采用软硬件联合仿真技术,可在设计早期开始这一设计调试过程。由于软件的开发通常在系统开发的后段完成,在设计周期中较早的开始调试有可能将使这一项目提早完成,该技术会降低首次将硬件和软件连接在一起时出现意外而致使项目延期完成所造成的风险。在取得物理原型前,采用软硬件联合仿真技术对硬件和软件之间的接口进行验证,将使你不会花太多的时间在后期系统调试上。当你确实拿到物理原型开始在上面跑软件的时候,你会发现经过测试的软件部分将会正常工作,这会节省项目后期的大量时间及努力。软硬件联合仿真系统由一个硬件执行环境和一个软件执行环境组成,通常软件环境和硬件环境都有自己的除错和控制界面,软件通过一系列由处理器启动的总线周期与硬件的交互作用。本文以一个Mini Web卡的开发介绍一种软硬件联合仿真系统。[!--empirenews.page--]该方案的核心是采用一个51单片机仿真引擎GoldBull ISS51(以下简称ISS51),ISS51是51单片机开发环境Keil uVision2的一个插件,ISS51具有连接Keil 和硬件仿真环境Modelsim的接口,可以实现软硬件同步仿真。在该系统中,Keil作为软件调试界面,Modelsim作为硬件仿真和调试界面,ISS51负责软件执行、监控软件断点、单步执行、内存和寄存器数据返回给Keil、CPU总线时序产生和捕获、内部功能模块(如定时器,串口)的运行等功能。Mini Web卡介绍Mini Web卡是一个运行在单片机上的Web服务器,提供网口连接,有大容量文件系统,提供TFTP和HTTP服务。尽管软件系统比较复杂,但优化编译后,执行代码还不足25K,为后续升级留下了足够空间。 51CPU采用SST89系列,这种CPU具有ISP功能,可以通过RS232串口,直接将目标码下载到CPU。DMA控制逻辑是一个可编程逻辑器件,采用的是ALTERA的CPLD EPM240,主要功能是实现外围器件之间的DMA传递。因为51CPU进行IO访问是很低效的,需要24个时钟周期才能进行一次IO访问,在外围设备之间转移数据则需要更多的时钟周期,使用DMA控制逻辑可以达到3个时钟周期就能转移一个字节。本系统中处理多种网络协议,需要大量报文收发和文件系统访问,采用DMA可以极大地提高51单片机的数据处理速度。DMA通道主要有MAC芯片与RAM之间的数据块转移,SMART MEDIA和RAM之间的数据块转移。网卡芯片采用的是AX88796,主要的优点是可以和51CPU方便地接口;支持100M以太网,速度高;有较大的接收报文缓存,能够平滑网络流量,减少因51CPU处理速度慢导致的报文丢弃和重发。SMART MEDIA是一个移动存储卡,主要用于存储文件,Mini Web卡支持8M到256M的SMD卡。文件系统是Mini Web卡的新开发模块,

Ncverilog_的一些经验

Ncverilog 的一些经验 1.Verilog和Ncverilog命令使用库文件或库目录 ex). ncverilog -f run.f -v lib/lib.v -y lib2 +libext+.v //一般编译文件在run.f中, 库文件在lib.v中,lib2目录中的.v文件系统自动搜索使用库文件或库目录,只编译需要的模块而不必全部编译 2.Verilog Testbench信号记录的系统任务: 1). SHM数据库可以记录在设计仿真过程中信号的变化. 它只在probes有效的时间内记录你set probe on的信号的变化. ex). $shm_open("waves.shm"); //打开波形数据库 $shm_probe(top, "AS"); // set probe on "top", 第二个参数: A -- signals of the specific sc rope S -- Ports of the specified s cope and below, excluding library cells C -- Ports of the specified s cope and below, including library cells AS -- Signals of the specifie d scope and below, excluding library cells AC -- Signals of the specifie d scope and below, including library cells 还有一个 M ,表示当前scope的m emories, 可以跟上面的结合使用, "AM" "AMS" "AMC" 什么都不加表示当前scope的por ts; $shm_close //关闭数据库 2). VCD数据库也可以记录在设计仿真过程中信号的变化. 它只记录你选择的信号的变化. ex). $dumpfile("filename"); //打开数据库 $dumpvars(1, top.u1); //scope = top.u1, depth = 1 第一个参数表示深度, 为0时记录所有深度; 第二个参数表示scope,省略时表当前的scope. $dumpvars; //depth = all scope = all $dumpvars(0); //depth = all scope = current $dumpvars(1, top.u1); //depth = 1 scope = top. u1 $dumpoff //暂停记录数据改变,信号变化不写入库文件中 $dumpon //重新恢复记录 3). Debussy fsdb数据库也可以记录信号的变化,它的优势是可以跟debus sy结合,方便调试.

STEP7_v5.4与Wincc_Flexible2008的集成与仿真

STEP 7 v5.4 与 WinCC Flexible 2008的集成与仿真 By Herowuking,2009-8-31 1. 软件环境 STEP7 v5.4 SP4 Wincc Flexible 2008 说明: 网上有人说先安装STEP7 后安装WinCC Flexible就可以 把Wincc Flexible集成到 STEP7里面去,但是我安装完 STEP7 5.4之后安装了Wincc Flexible 2008,虽然可以在STEP7里面插入HMI站点,插入之后却不能够在STEP7里面编辑这个Wincc Flexible项目。所以,我采用的是另外一种方法。 2. 项目集成 STEP1.新建STEP7项目,编写好符号表和代码之后保存; 符号表(编写好之后在WINCC FLEXIBLE中建立变量很轻松了) 我这里编了一个最简单的启停控制做演示

STEP2.新建一个WINCC FLEXIBLE 项目; 【项目】→ 【新建…】→这里我选择了TP270 10”→保存项目; 可以保存到和STEP7相同的目录下,也可以保存在别的地方。这里我放在了STEP7项目目录下新建的一个文件夹中。 执行项目集成到STEP7里面去 【项目】→【在STEP7中集成…】→选择STEP1中新建的项目; 这个时候你再用STEP7打开原来的项目发现下面多出了一个HMI 站点; 这个时候,如果同时开着Wincc Flexible 2008,双击“变量”可以自动打开变量编辑界面。但是如果这个时候Wincc Flexible 没有打开,就会一闪下面的画面,而没有任何其他反应。估计还是STEP7 v5.4SP4和Wincc Flexible 2008集成的不够好吧。 暂且不管这软件上的问题,下一步开始执行STEP7和Wincc Flexible 的连接,实现Step 7的PLCSIM 仿真和Flexible 的仿真通讯。 注意:Wincc Flexible 2008打了SP1以及HotFix5 for SP1的补丁之后,不存在上述问题了。

调试与测试软硬件设计

系统测试软硬件设计 本课题所采用的单片机P89C668内部带有ISP和IAP的片内Flash存储器,其内部有Boot-Rom用于引导RS232 串口下载程序。本课题正是通过程序直接下载到单片机运行调试而不需要仿真器,以减少程序现场运行的不稳定性。以及为了配合本转换器在线调试功能,特意开发了具有输入输出字符功能的串口调试程序,以便观察内部运行的相关状态来进一步完善程序;同时为了使本系统具有很强的应用灵活性能,还开发了通过串口进行相关内部参数的设定的程序,从而使其可以适应不同的系统中[39]。 1 RS232串口硬件的实现 本串口硬件电路采用传统的电平转换芯片MAX232来进行TTL与RS-232C之间的电平转换,由于其内部有专门的升压电路,因此外部只须单一+5V供电,接口方便实用,芯片不易损坏具体电路如图6-1所示。 图6-1 串口扩展电路 2 RS232串口软件实现 串口软件中,由于程序下载软件有专门的厂家提供,不用具体介绍。在本课题中进行程序调试和参数设置所需的输入输出程序设计,主要包括串口中断子程序中将接收的数据存入串口接收缓冲区、将串口发送缓冲区的数据通过串口发送出去、 从串口缓冲区读字符、向串口发送缓冲区写字符、以及利用以上子程序进行进行发送各种格式的数据等(字符型、十六进制、IP格式等)。

3 串口中断子程序实现 串口中断函数在接收中断处理中负责对串口数据的接收,且只将接收数据放到接收缓冲区,接收缓冲区ComRxdBuf大小可根据需要进行调整,由两个指针管ComRxdWrite和ComRxdRead进行管理;其中ComRxdWrite 为接收缓冲区写指针,ComRxdRead为接收缓冲区读指针,且程序以比较此二指针来判断发送缓冲区是否有数据。COM_RXD_BUFF_SIZE 为接收缓冲区容量最大值(数组)。在发送中断处理中只负责处理发送缓冲区的数据输出到串口,输出缓冲区由指针ComTxdRead和ComTxdWrite管理,其中ComTxdWrite 定义为接收缓冲区写指针,定义ComTxdRead为接收缓冲区读指针,且程序以比较此二指针来判断发送缓冲区是否有数据,COM_RXD_BUFF_SIZE为发送缓冲区容量最大值(数组)。具体流程如图6-2所示。 发送中断子程序接收中断子程序 图6-2 中断子程序流程 4 其他串口处理函数[41] 完成上述中断子程序后,对接收和发送数据的处理只须对发送和接收缓冲区操作即可从而减少了程序的复杂性能。读取接收缓冲区一个数据由函数unsigned char Get_Char() 来完成,函数将读得的数据返回给调用此函数的主体来做进一步处理。同样,当要通过串口向外发送数据时则只须将所要发送的数据放入发送缓冲区,然后置发送中断标志位就可通过中断子程序自动将数据发送出去,由函数void Printf_Char(uchar ascii)完成此功能。具体流程如图6-3所示。

如何把一个已经存在的 WinCC 项目集成到一个 STEP 7 项目中

返回列表 WinCC --

关于“装载和调试程序”的信息 如何把一个已经存在的WinCC 项目集成到一个STEP 7 项目中? 多重项目“Multiproject”功能对大型网络化的项目有哪些优势? 数据块初始值与实际值的含义 为什么项目、程序块或硬件组态根本无法打开,或者打开时出现错误信息,或是显示“只读”? WinCC -- 通信组态和编程-- S7通信(无PROFIBUS) 如何把一个已经存在的WinCC 项目集成到一个STEP 7 项目中? WinCC V5.0中可用插槽PLC吗? 使用MPI (CP5611)建立的WinCC与S7 之间的在线连接有哪些要求? 使用WinCC通过TCP/IP 通信需要哪种许可证? WinCC 访问S7-200 可使用哪些选项? 如何通过调制解调器建立到S7 的链接? 如何将WinCC 链接到S7 PLCSIM? 通过TS 适配器做WinCC 与S7 控制器的通讯,需要做哪些设置? 若要通过CP343-1 与S7 通讯,WinCC 系统需要哪些硬件和软件? 通过CP5611、CP5613 或CP1613,使用WinCC 和SIMATIC NET 访问S7 CPU 时,需要进行哪些设置?如何把一个已经存在的WinCC 项目集成到一个STEP 7 项目中? 显示订货号 配置说明

为了把一个 WinCC 项目导入一个STEP 7 项目中,必须安装下面的WinCC 组件:?SIMATIC Device Drivers ?Object Manager ?AS-OS Engineering 这些组件存在于WinCC 安装光盘中(图.01)。并且,WinCC 和STEP 7 必须安装在同一台计算机上。可以使用已经存在的归档WinCC 项目的压缩工具(packer)来把WinCC 项目导入到STEP 7项目中。 图. 01 注意 关于在不同版本的WinCC 中安装附加组件(以"Smart Tools"为例)的更多信息可以在条目:10880206中找到。 说明

Debussy是一个VerilogVHDL调试工具

介绍 一、Debussy是一个Verilog/VHDL调试工具 Debussy是一套很好的Verilog/VHDL调试工具,可以帮助设计者快速理解复杂的设计,查找和定位设计中存在的问题,提高效率。 二、Debussy包含软件模块 Debussy主要有以下几个模块: 1、nTrace:超文本连接方式的源代码追踪及分析 2、nSchema:原理图显示及分析 3、nWave:波形显示及分析 4、nState:有限状态机的显示及分析 5、nCompare:分析仿真结果,比较其相异处。 Debussy的五个组成部分nTrace, nWave, nSchema, nState, nCompare在FSDB和Knowledge Database (KDB)的支持下高度集成。

三、Debussy功能 Debussy直接编译Verilog/VHDL源代码,并且采用了预综合技术识别电路的单元,可以生成原理图。在导入仿真结果后,可以用Active Annotation在源代码、原理图、状态图上动态显示变量的仿真值。 Debussy的输入为:Verilog/VHDL或混合语言源代码,仿真波形文件,SDF 支持的波形格式:vcd,fsdb,模拟波形文件(PowerMill,TimeMill,Avant! Star-Sim,SmartSpice) 支持的仿真器:VCS,Verilog-XL,NC-verilog,NC-VHDL,Modelsim,Leapfrog,Ploaris。

操作 一、启动 1. 启动 %debussy 启动debussy时,弹出一个nTrace窗口,包含三个子窗口: a、左边是Hierarchical Browser窗口,用来显示设计的层次(design hierachy)。 b、右边是Source Code window,显示源代码。跟踪信号的驱动、负载。 c、底下是Message window(消息窗口),用来报告操作的结果。 2.导入设计 File->Import Design Debussy提供了两种导入设计的方法: A、从设计源文件直接导入 B、从库导入(先将源文件编译成库) Note: 可以用命令的方式直接启动debussy并导入设计文件,即在命令行上列出所有的选项和源文件,或者把这些选项和源文件写到一个文件中,用-f选项指定这个文件。例如: %debussy design.v -v lib.v %debussy -f run.f Note: 启动debussy后,会自动建立一个日志目录DebussyLog,在这个目录下,有一个日志文件:,记录了Debussy的编译信息。 3.查看编译信息: File->View Import Log 二、根据仿真结果进行调试 1. 生成仿真的波形文件 Debussy提供的新的波形文件格式FSDB(Fast Signal DataBase),相比于VCD格式,压缩量大,比vcd文件小5-50倍,加载速度快。 Debussy提供了PLI(for Verilog)和FLI(for VHDL)接口,我们可以在仿真时直接导出FSDB文件。例如,在Verilog的测试模块中加入如下语句:

在STEP里面创建WINCC项目完整版

在S T E P里面创建W I N C C项目集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]

一、从WinCC里调用STEP 7 变量的前提条件从WinCC里调用STEP 7 变量可以将建立变量的工作量减少一半,同时将建立变量的出错概率建设一半,从而减少了相应的排错工作,大大提高了工作效率。从WinCC里调用STEP 7 变量的前提条件是,WinCC的项目文件必须是集成在STEP 7项目中的。在安装所有Simatic 软件前,请查阅软件的安装注意事项,确定操作系统与软件的兼容性。该文档一般位于:CD\Documents\<语言版本>\。要使用WinCC与STEP 7的集成功能,WinCC 和STEP 7必须安装在同一台计算机上,必须在安装WinCC之前安装STEP 7。STEP 7 与WinCC的版本必须一致。WinCC与STEP 7的版本兼容行列表可以在西门子自动化与驱动集团的技术支持与服务网站上获得。请STEP 7安装完毕后,进行WinCC安装。在WinCC安装过程中,请选择“自定义安装”,在communitation 下的所有选项都必须钩选。二、在Simatic Manager里建立新的WinCC 项目在建立新的STEP 7项目后,可以在Simatic Manager里直接建立新的WinCC项目。方法是在Simatic Manager里,右键点击项目名称,选择“Insert New Object\OS”。此时系统会在STEP 7 项目文件里建立一个WinCC项目文件你可以在OS站上点击右键,选择“Re name”来修改WinCC项目名称。可以通过在名称上点击右键,选择“Open Object”打开并编辑这个WinCC项目 三、把现成的WinCC项目集成到STEP 7 项目中按如下步骤把已有WinCC项目文件插入STEP 7项目文件 A. 在STEP 7项目文件中插入一个OS站,然后把它改名为已有的WinCC项目名称。B. 在STEP 7项目里删除因仅插入OS站而产生的WinCC项目文件,其位置在STEP 7 项目文件夹里的wincproj文件夹下,例如:d:\siemens\STEP7\S7proj\STEP7_Integration\wincproj\Name of the OS C. 最后在项目复制器里用’Save as’把已有的WinCC项目文件存储到STEP 7项目路径下。项目复制器位于开始菜单项"Start > SIMATIC > WinCC > Tools"。注意:对于集成STEP 7项目里的WinCC项目,你也可以使用压缩工具(Packer)来归档WinCC项目。四、把变量(符号表,共享DB,背景DB)从STEP 7传送到WinCC里 STEP项目文件里的符号表,共享DB里的变量可以一次性的传入继承的WinCC项目文件。具体步骤如下: A、为需要传输的变量打上“传输标志” 在需要传输的变量上点击右键,从关联菜单中选择“Special Object Properties \ Operator Control and Monitoring…”,打开Operator Control and Monitoring对话框,激活复选框“Operator Control and Monitoring”,并点击“OK”关闭对话框。此时该变量前将显示绿色小旗如需对成批变量进行该操作,可以使用“Shift+鼠标左键”进行批选择,或者使用“Ctrl +鼠标左键”对成批选择的变量进行个别增减。为共享DB的变量做注释在需要传输的变量上点击右键,从关联菜单中选择“Object Properties”,打开Properties 对话框,在对话框第一行的Attribute 中输入 S7_m_c ,Value 为ture,并点击“OK”键退出。此时被选中变量前被用红色小旗标志. 为背景DB的变量做注释打开相应的FB,在需要传输的变量上点击右键,从关联菜单中选择“Object Properties”,打开Properties 对话框在Attribute页第一行输入 S7_m_c ,Value 为ture并点击“OK”键退出开启共享和背景DB的操作和监视功能 DB里的变量被标志后,必须启动DB的“Operater control and monitor”功能才能启动变量传输。 在simatic maneger 窗口中右击所需传送变量的DB,在弹出的菜单中选择 special object- >operetor control and monitoring,在接下来的对话框中将Operater control and monitor复选框钩上。选中该复选框后,“WinCC Attributes”页被显示,其中列举了所有被标准过的变量。 B、将被标志的变量传送到WinCC项目文件中在SIMATIC Manager的菜单中选中选项“Options\OS\Compling…”在弹出的对话框中直接点next 直到开始编译。编译完成后,弹出integration2对话框,选择第一项,并用“OK”键确认。编译完成后系统会提示编译是否成功,如果失败会弹出相应的记录文件。编译成功后,打开WinCC项目文件。可以看到,系统已经在变量管理器里自动生成了相应的WinCC变量。在WinCC里需要变量引用的位置进行变量选择,出现变量选择对话框后,选中对话框右上角的“STEP 7 Symbol Server”复选框。此时,对话框右侧变量选择列表中将显示“STEP 7 Symbol Server”列表。从改列表中可以显示STEP 7符号表和共享数据块里的所有变量

相关文档