EN0506PGP modbus driver setting.docx

上传人:b****6 文档编号:13564049 上传时间:2023-06-15 格式:DOCX 页数:13 大小:308.91KB
下载 相关 举报
EN0506PGP modbus driver setting.docx_第1页
第1页 / 共13页
EN0506PGP modbus driver setting.docx_第2页
第2页 / 共13页
EN0506PGP modbus driver setting.docx_第3页
第3页 / 共13页
EN0506PGP modbus driver setting.docx_第4页
第4页 / 共13页
EN0506PGP modbus driver setting.docx_第5页
第5页 / 共13页
EN0506PGP modbus driver setting.docx_第6页
第6页 / 共13页
EN0506PGP modbus driver setting.docx_第7页
第7页 / 共13页
EN0506PGP modbus driver setting.docx_第8页
第8页 / 共13页
EN0506PGP modbus driver setting.docx_第9页
第9页 / 共13页
EN0506PGP modbus driver setting.docx_第10页
第10页 / 共13页
EN0506PGP modbus driver setting.docx_第11页
第11页 / 共13页
EN0506PGP modbus driver setting.docx_第12页
第12页 / 共13页
EN0506PGP modbus driver setting.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

EN0506PGP modbus driver setting.docx

《EN0506PGP modbus driver setting.docx》由会员分享,可在线阅读,更多相关《EN0506PGP modbus driver setting.docx(13页珍藏版)》请在冰点文库上搜索。

EN0506PGP modbus driver setting.docx

EN0506PGPmodbusdriversetting

工程注意EngineeringNotice

北京贝利作者:

李阳审核:

杜琛

版本:

001

发布日期:

2005.06

更改:

B

 

PGP2.1Modbusdriver的设置方法

1.概述

本文描述PGP2.1通过Modbus协议与其他系统通讯时的设置方法.分为两种情况,一种是一台PGP2.1与对方一台设备通讯,另一种情况是两台冗余配置的PGP2.1与对方设备通讯.因此本文主要包括PGP2.1Modbusdriver的设置和PGP2.1server冗余配置两部分.

PGP2.1与其他系统通讯时作为Modbus的主站.在进行PGP的设置组态之前,请准备好与对方的通讯点表,其中包括标签名,Modbus地址,数据类型,数据传送方向等,并了解确定硬件连接方式.

2.PGP2.1Modbusdriver的设置

PGP2.1server

 

PLC或其他系统

 

总的说来,在PGP中的配置工作包括在Win2000注册表中添加相应的通讯接口,完成针对这种通讯接口的参数设置,之后在PGP的标签库中添加标签,与这种通讯接口关联上.

以下说明均根据在公司内进行的Modbus通讯测试,提供的例子文件(注册表、数据库)作为参考,实际项目可以以例子文件为模板进行修改。

首先连接串口电缆,使用串口测试程序modscan32验证串口的连接情况,保证电缆正确,可支持双向数据通讯.如果电缆只能单向通讯,请及时更换,避免影响PGP与其他系统的通讯.

PGP2.1安装在d:

\tenore目录下.具体安装方法请参见相关文档.请将注册表文件PGPModbusExample.reg拷贝到d:

\temp目录下.

将Modbusdriver对应的注册表文件加入系统.方法是双击文件PGPModbusExample.reg完成添加.可在Win2000注册表中,HKEY_LOCAL_MACHINE\SOFTWARE\ABB\InformIT\Tenore\scanner

之下,看到添加进来的Modbus_1项.其中主要是设置了串口速率,校验方式,数字位,终止位,串口名称等信息.该文件使用的参数是:

9600,n,8,1,COM1.一般来说,大部分参数都不用调整,只需根据实际情况修正串口名称,确定是COM1还是COM2在进行通讯.

编辑Modbus通讯所需的标签库,比如名称是PGPModbusExample.dbf.

在PGP的systemsetup中导入标签库PGPModbusExample.dbf.方法是双击TenoreSetup,选择Tagdatabasebuilder,点击import按钮,选中PGPModbusExample.dbf文件.

每个标签的General页,填写标签索引,标签名,标签类型,Source设为”EXT”,Acquisition页,FieldDrv设为”Modbus_1”,该页上半部分的参数为PLC中数据点的地址和数据类型信息.请根据实际情况填写.

PLC地址及数据类型信息

SlaveNumber:

Modbus子站的站号.

RegisterAddress:

该点在Modbus子站中的寄存器号

BitPosition:

该点在某寄存器中的位号

ScanClass:

扫描周期组别,对应注册表中设置的某一个TimeoutClassn项.

SignalType:

Modbus信号类别

DataType:

Modbus数据类型

BitNumber:

通讯程序将读取或写入的位数

标签库中点的类型设置会影响通讯,设置不对,通讯无法建立.下表列出了PGP标签库中参数的设置与Modbus数据类型的对应关系,供各位参考.

Modbus数据类型

PGP标签库设置

SignalType

DataType

数字量

BitNumber

Holdingregister

1

11

1

Coilstatus

1

12

Inputstatus

0

12

Inputregister

0

11

模拟量

1

Holdingregister

1

1,2…

16

Inputregister

0

1,2…

16

注:

DataType如果是”12”,则”BitNumber”设多少都可以.

DataType设为”11”,表示数据是打包传送的,即一个寄存器可存放16个数字量.

具体每项参数的含义请参见ApplicationNote:

PGPandTenoreScanner–RevA.pdf.

双向数据通讯:

在标签库中,编辑相应标签属性,Outputtab,填写输出地址,填写方法与Acquisition相同.特别是要填写driver名字.修改标签库之后,需重起PGP,否则修改不生效.

3.PGPserver的冗余设置

PGP2

Weight:

10

PGP1

Weight:

15

 

PLC或其他系统

 

如果配置了两台PGPserver互为冗余,与PLC等其他系统通过Modbus通讯,那么不管对方系统是否冗余,提供一个还是两个串口,PGPserver中的设置是相同的.

在设置前,请检查确认两台PGPserver之间的以太网连接已连通.

注册表文件仍然可以使用上述的PGPModbusExample.reg,只是修改其中的两项.两台PGPserver均要设置.为修改方便,打开PGP的scanmonitor工具完成编辑.打开scanmonitor有两种方法,一是找到Win2000任务条右侧的3个PGP相关图标,双击最右侧的scanmonitor图标,另一种方法是找到PGP安装目录,\tenore\bin\tntscanner.exe,双击之.

选中Modbus_1,双击,从弹出的窗口,找到Master/Slave项,选中此项,表示需要Master/Slave环境的支持.

接着找到ServersInfo项,点击右键,选Addserver,在添加出来的Server2下面填写另一台PGPserver的计算机名称(Name)和权重(Weight).设置完成之后,将光标移到下一行,确认修改,再点击窗口右下角的Close按钮退出.

编辑\tenore\config\node目录下的节点信息文件example.dbf,修改其中的节点名称(nodename)和权重(weight).保存,关闭.两台PGPserver均要设置.

假定PGP1的权重值高于PGP2.在PGP1中,Tagdatabase,将每个标签的Network属性中,8项均选中.

Tenoredatabaseconfiguration,Details->Nodes,依次修改两个节点,两个节点属性设置中DisplayAlarms,PrintAlarms选YES,Align相关的项,只将Alignvaluefrom设成YES,其余均设为NO.两台PGPserver均要设置.

注意:

这一项一定要做,否则两台PGPserver建立冗余关系之后,通过网络传送的数据量过大,会造成两台PGP中的一台CPU100%,几乎不响应任何操作,两台PGPserver中都有可能碰到.出现这种情况时,查看taskmanager,会发现是ApmsNetworker.exe,或ApmsNE~2.exe占用了几乎全部的CPU.

在两台PGP中,分别从主菜单utility选中ShutdownTenore.

从PGP1的Tenoresystemsetup,Export,tagdatabase,导出PGP1修改好的标签库.在PGP2中,Tenoresystemsetup,builddatabase,import从PGP1导出的标签库.

修改了节点信息后,Tenoresystemsetup中buildnode.两台PGP均要做这步.

完成上述设置后,请检查:

a.serverstatus.两台PGP正常起动,在Win2000任务条右侧,可看到3个PGP相关图标,若没有,请shutdownPGP,检查taskmanager中是否有未退出的PGP进程,若有,手工结束之,再重新启动PGP.

TenoreMonitor

TenoreNetServer

ScanMonitor

点击最左边的图标,即TenoreMonitor,查看General->Multimaster项,

 

Server状态正常

主server的权重

本server的权重

两台server的状态均应为”OK”.

b.测试PGP的冗余功能.Exitscanner,双击tenore\bin\simexp.exe,修改一台PGP中的数据,观察另一台PGP的标签数据是否也改变了.如果改变了,表明PGP的冗余功能工作正常.

4.总结:

PGP对外的每一个通讯连接对应于Modbusdriver的一个应用实例(instance).PGP的Modbusdriver支持冗余,且这种冗余基于driver应用实例,而不是server,每个driver应用实例独立工作,之间没有相互影响.

冗余情况下,两台PGP标签库中的数值跟随当前为主的PGP所连接的PLC的数值变化,两台PLC自己的数据同步应该由PLC方自己来保证,如果两台PLC的数据不一致,为从的连接的那一台数值不管如何变化,不反应到PGP中.

两台PGPserver根据各自在scanner中设置的权重(weight)决定主从关系.权重值大的为主(master),权重值小的为从(slave).PGP的master/slave是基于scanner,而不是基于整个PGPserver的。

如果在标签库中Network属性设了同步tagconfiguration,修改标签时,只需在master中改,slave会自动同步.

主PGP的scanner永远不会”standby”,只要主PGP在线,便会执行通讯任务,即主PGP不在线,从PGP接管通讯任务,一旦主PGP恢复在线,通讯任务马上会切换回主PGP.

两台冗余的PGPserver,只要其中之一的scanner在正常工作,则两台PGP的标签库均可正常刷新

正常工作需要tntscanner.exe起动,串口连接正常,两者缺一不可.

Tntscanner.exe退出与串口电缆断开的效果相同.

从PGP串口断开时,scanmonitor提示”driverstandby”,主PGP串口断开时,scanmonitor提示”drivernotconnected”.

若两台PGP的scanner均断开,再起动时,会自动读取当前的最新值.比如,断开前,PGPscanner读到的是”0”,断开后,PLCsimulator中该值变为”1”,则任一台PGP恢复与PLCsimulator的通讯时,会自动将两台PGP标签数值更新为”1”.

5.Modbus通讯测试步骤记录

观察PGP的scanmonitor和标签库中的数值.

在PLCsimulator的Modsim中更改数值,在PGP1和PGP2中可同步看到数值的变化.

关闭PGP1的tntscanner.exe,可看到PGP1scanmonitor没有显示,PGP2显示”driverrunning.”在PGP1和PGP2标签库中可同步看到数值的变化.

起动PGP1的tntscanner.exe,关闭PGP2的tntscanner.exe,可看到PGP1显示”driverrunning”,PGP2scanmonitor没有显示.在PGP1和PGP2标签库中可同步看到数值的变化.

拔掉PLCsimulator的串口电缆,可看到PGP1显示”drivernotconnected”,PGP2显示”drivernotconnected”.在PGP1和PGP2中都看不到数值的变化.

恢复PLCsimulator的串口连接,断开PGP1的串口连接,可看到PGP1显示”drivernotconnected”,PGP2显示”driverrunning.”在PGP1和PGP2中可同步看到数值的变化.

恢复PGP1的串口连接,断开PGP2的串口连接,可看到PGP1显示”driverrunning”,PGP2显示”driverstandby.”在PGP1和PGP2中可同步看到数值的变化.

ShutdownPGP1,可看到PGP2显示”driverrunning”,在PGP2中可看到数值的变化.

ShutdownPGP2,可看到PGP1显示”driverrunning”,在PGP1中可看到数值的变化.

双向数据通讯:

在标签库中,编辑相应标签属性,Outputtab,填写输出地址,填写方法与Acquisition相同.特别是要填写driver名字.修改标签库之后,需重起PGP,否则修改不生效.

在PLCsimulator的Modsim应用软件中打开新窗口观察,从Modsim修改的数值又写回Modsim,表明PGP向PLCmonitor传送数据成功.

6.故障处理

1).问题:

测试两台冗余PGP连接一台PLCsimulator时,master,slave中scanmonitor显示正确,分别为“driverrunning”,“driverstandby”,serverstatus也正常,但standby的PGPserver无法通过以太网更新串口通讯数据.

解决:

原因是两台PGPserver标签库的tagUID不同.解决办法:

在master中建好标签库,export出来,再在slave中buildtagdatabase.之后两台PGPserver便可同步更新数据了.因此,实际项目中,建议先完成master的标签库,再导出到slave中,确保标签完全相同.

2).问题:

在测试PGP与PLCsimulator之间的通讯时,有两台计算机始终不能正常通讯.

解决:

电缆故障,只能做单向数据传送.更换电缆解决.

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2