S7-200和200SMART的子程序较多16个输入、输出参数。使用间接寻址可以显著减少输入、输出参数的个数,不再受上述的限制。
下面举一个简单的例子。
子程序“异或运算”对V存储器中连续的若干个字节作异或运算,下面给出了子程序的局部变量和STL程序。
子程序中的BTI指令用于将数据类型为字节的输入参数“字节数B”转换为数据类型为整数的临时变量“字节数I”,用来做FOR指令的当前循环计数器。
输入参数“地址指针”是需要异或运算的数据区的起始地址。子程序中的“*#地址指针”是输入参数“地址指针”*的地址中变量的值。在循环程序执行的过程中,该指针中的地址值是变化的。
下图是主程序中调用“异或运算”子程序的程序。调用时*的“地址指针”的值&VB10是源地址的初始值,即数据字节从VB10开始存放;需要异或运算的数据的字节数为4,异或运算的结果存放在VB14中。
实际上该子程序的输入、输出参数还可以进一步地简化:将保存运算结果的字节放在地址指针所指的地址区的**个字节,需要异或运算的字节数放在*2个字节,需要运算的数据从*3个字节存放。这样就只需要一个输入参数了,当然程序要做相应的改动。但是程序的输入、输出接口没有**个方案直观。
在DP时代,用FB125或FC125诊断DP网络故障是很方便的。
FB126是FB125的升级版,用它可以诊断DP和PN网络的故障。
但是FB126使用并不方便,网上下载的FB126_PNIODiag_V182解压后得到PNIODiag_V1_82_Setup.exe,用它安装FB126和hmi项目时,工作语言是德语,国内精通德语的工程人员较少,只好像瞎子走夜路一样碰运气来安装。系统组态及参数设置
由SIMATICSTEP7V5.2编程软件,进入硬件组态状态,对各台PLC进行网络参数设置。首先,建立Pro2ject,如为C:\ swjtu,在该文件下选择网络Subnet为PROFIBUS,站名为SIMATIC414HStation,然后进行硬件组态。其次是建立各站在网络的地址。最后组态3个PG/PC站,在选项窗口中选中CP5611,并分配地址,主编程站地址为0,其余两个只要地址不相同即可。程序结构
西门子SIMATICS7-400HPLC的编程器STEP7可运行在PC机的bbbbbbs环境下,界面友好,提供了梯形图、语句表和块图3种形式的编程、调试、诊断等功能。本实例采用模块化程序结构,程序由几大功能块组成,每个功能块完成一系列的控制逻辑,放置在组织块OB1中的指令决定控制程序的各功能块的执行。本例中功能块FC1是微机联锁命令处理程序,FC2是进路处理程序,FC3,FC4是微机联锁状态处理程序,FC5是常量定义,FC6是信号输出处理,FC7是道岔输出处理,FC8是信号采集。程序结构框图如图4所示。功能块为多层次调用,FC1在调用其他功能块,比如FC1调用FC9, FC9调用FC10,FC10调用FC11、FC12、FC13、FC14等。在STEP7中,允许功能块调用较多为16层。
为应用于唐山钢铁集团公司焦化厂火车站的微机联锁系统的PROFIBUS-DP/MPI网络原理框图。3台监控机为监控层,PLC为联锁层,I /O为控制层。车站联锁系统主要由联锁以及信号、道岔、区段和进路的动作建立。本例中,以车站微机联锁的控制过程说明PROFIBUS-DP网络的实践应用。进路控制过程包括进路建立、进路解锁。进路建立包括进路选择、道岔控制、进路锁闭、信号控制,进路解锁就是对已建立的进路、道岔进行的进路锁闭,进路解锁包括取消进路、人工解锁、正常解锁、中途折返解锁、故障解锁。
在组织块OB1中,先调用FC1对联锁命令进行处理,其中包括进路处理、道岔处理、信号处理,调用FC2对进路进行处理,调用功能块FC1、 FC2对联锁状态进行处理,再调用功能块FC6、FC7、FC8对数据进行输入输出处理。以功能块FC1命令处理程序为例,说明其功能调用过程。功能块 FC1先调用 FC10进行进路选择,然后调用FC11、FC12、FC13等,对其他命令进行处理。
结论
从实际应用来看,整个网络运行良好,网络结构简单,技术性能稳定。实践证明,PROFIBUS-DP网构成的灵活实用分布式网络在铁路系统有良好的应用前景。
我有两台计算机,用的是相同的64位Win7操作系统,一台能安装PNIODiag_V1_82,一台在安装时出现下面的对话框,安装不了,不知别的网友是否也遇到同样的问题?
安装好PNIODiag_V1_82后,在STEP7的库里能找到FB126,但是HMI项目和帮助文件在什么地方,需要自己慢慢找。
HMI项目默认的语言为德语,需要自己改为英语。
麻烦的是帮助文件至今只有英文的,这些对FB126的应用是个较大的障碍和门槛。希望能提供中文界面的HMI项目,和中文的帮助文件。
希望plcSIM能像DP网络故障一样,能对PN网络的故障。
希望FB126能像RSE(报告系统错误)一样,能用PLCSIM模拟PN网络故障,并用WinCC flexible的运行系统(Run time)显示故障。
我的希望可能多了一点,由于以太网通信即将或已经成为西门子控制系统主要的通信方式,我觉得这些工作还是值得做的。
1. 可编程控制器(PLC): 日本欧姆龙OMRON、法国施耐德,松下电工NAIS、三菱MITSUBISHI、富士FUJI、美国AB、GE,德国西门子SIEMENS 2 低压电器及配电产品: 法国施耐德SCHNEIDER、溯高美SOCOMEC、德国金钟-默勒MOELLER、西门子SIEMENS、 海格HAGER、闽台士林SHIHLIN、日本富士FUJI、三菱MITSUBISHI、ABB、美国AB、LK、ATS电源转换装置。 3 自控器件与传感元件: 日本欧姆龙OMRON、法国施耐德TE、施克SICK、倍加福P+F、图尔克TURCK、爱福门IFM、巴鲁夫BALLUFF、松下 电工NAIS、和泉IDEC、富士FUJI、山武YAMATAKE、三菱MITSUBISHI、理化RKC、闽台松菱CKC、马可MACK、 美国AB、霍尼韦尔HONEYWELL、德国西门子SIEMENS、金钟-默勒MOELLER、F&G。 4 变频调速(VVVF): 日本松下电工NAIS、法国施耐德TE、三菱MITSUBISHI、安川YASKAMA、三肯SANKEN、富士FUJI、松下电器PANASONIC、欧姆龙OMRON、德国西门子SIEMENS、丹麦丹佛斯DANFOSS、英国CT、美国AB、瑞典ABB、韩国LG、深圳华为、 闽台台达DELTA。 5 开关电源: 闽台明纬电源MW、日本欧姆龙OMRON。 6 触摸屏: 日本欧姆龙OMRON、DIGITAL、松下电工NAIS、闽台台达DELTA,法国施耐德. 上海骥擎电子科技有限公司 地址:上海市嘉定区江桥嘉涌路99号 电话: 传真: 手机:? Email:?