首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
  P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
  D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
  电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
使用Modbus协议建立S7-200与紫金桥软件之间的通讯
紫金桥软件技术有限公司
收藏本文     查看收藏

在使用西门子S7-200时,在不增加其它通讯接口模块时,紫金桥?软件可以通讯PPI协议与S7-200直接通讯。但这种通讯方式由于受通讯协议本身限制,在通讯数据较多时,通讯速度相对较慢,使用Modbus协议则通讯速度可以提高约一倍。下面就介绍一下怎么使用Modbus协议建立S7-200与紫金桥软件之间的通讯:

硬件连接

在使用Modbus协议时,计算机与S7-200之间通讯直接使用PPI通讯电缆即可。但如果通讯距离较远,或者需要将多个S7-200连接到一个通讯总线上时,我们可以通过如下方法配制通讯链路。

  • 选配一个计算机通讯端口

由于S7-200通讯端口物理层使用的是RS-485通讯规范,因此我们需要在计算机端增加一个RS-485通讯端口,才能与计算机通讯建立通讯。如果计算机闲置的串口,我们可以选配一个RS-232转RS-484转换器即可;如果没有闲置的串口,我们通过在计算机中增加一个RS-485通讯卡也可以;现在很多计算机都有USB口,我们也可以在计算机上外接一个USB转RS-485转换器。

  • 连接通讯电缆

S7-200的通讯端口是一个9孔(famel)D型插头,针脚分布如下所示:

针脚

信号

1

地线 (RS-485 逻辑地)

2

24 V 地线 (RS-485 逻辑地)

3

信号B (RxD/TxD+)

4

RTS (TTL level)

5

地线 (RS-485 逻辑地)

6

(空)

7

24 V 电源

8

信号A (RxD/TxD-)

9

通讯选择

S7-200通讯端口(端口0)与RS-485板卡或RS-485/RS-232转换器之间接线,如下图所示:

S7-200编程及设置

在缺省情况下S7-200的通讯端口是不支持Modbus协议的,要想实现Modbus通讯必需在PLC的主程序模块中调用Modbus通讯子程序。Modbus通讯子程序可以从“STEP 7-Micro/WIN Add-On: Instruction Library (STEP 7-Micro/WIN附件:指令库)”中获得。在安装了“STEP 7-Micro/WIN附件:指令库”后,在导航树“指令/库”下面我们可以找到“Modbus Protocol”。在其下面包含了MBUS_INIT和MBUS_SLAVE两个子程序,MBUS_INIT用于对Modbus通讯进行初始化,MBUS_SLAVE用于在指定端口上提供Modbus从站通讯服务。下在介绍如何在主程序中调相关子程序及环境参数设置:

调用Modbus通讯初始化命令

首先为MBUS_INIT命令建立一个触发条件(只触发一次),如:SM0.1;从导航树“指令/库/ Modbus Protocol”下面,将MBUS_INIT指令拖拽到主程序块中。再就是正确设置MBUS_INIT各项调用参数和执行结果输出地址,我们可以建立一下如下图所示初始化调用过程:

Mode:协议类型,1-Modbus协议;0-PPI协议。

Addr: PLC地址,1~247,。

Baud: 通讯波特率,1200、2400、4800、9600、19200、38400、57600或11520。

Parity: 校验方式,0-无校验;1-奇数校验;2-偶数校验。

Delay:信息结束超时时间,0~32767,有线连接设置为0即可。

MaxIQ:0~128,映射在离散输入寄存器或离散输出寄存器中的I或Q数。建议为:128。

MaxAI:0~32;映射在模拟输入寄存器中AIW数;CPU 221为0,CPU 222为16,CPU 224、226和226XM为32。

MaxHold:V内存映射在保持寄存器中的寄存器数。

HoldStart:V内存的映射时的起始地址。

Done:初始化指完成时,输出为开状态;开关量(Bit)。

Error:初始化错误代码,请参阅Modbus从机协议执行错误代码;输出为字节。

调用Modbus从机通讯命令

初始化完成后,就可以调用Modbus从机通讯命令(MBUS_SLAVE)了。通常Modbus从机通讯命令在主程序块的每个执行周期都要初执行(始终保持通讯状态),因为可以用一个常开量作为命令的触发条件,如:SM0.0。从导航树“指令/库/ Modbus Protocol”下面,将MBUS_SLAVE指令拖拽到主程序块中。调用过程如下图所示:

Done: 当MBUS_SLAVE指令响应对Modbus请求时,"Done"为开状态。没通讯请求时"Done"为关状态。

Error:指令执行结果。只有"Done"为开状态时,此状态有效。请参阅Modbus从机协议执行错误代码;输出为字节。

库存储区分配

在完成前面两个指令调用后,还要为库指令使用的符号分配内存。当库指令被插入到主程序块中,在导航树“程序块”下会出现一个“库”节点。在“库”节点上点击鼠标右键,在弹出菜单中选择“库存储区”,进入“库存储区分配”对话框。

在地址框中输入分配内存的开始地址,或者通过点击“建议地址”按钮自动分配内存。注意,分配的内存不要与已使用的内存重叠。

紫金桥软件组态

完成PLC编程和配制后,还要对紫金桥软件进行配制,这样才能获取、处理、查测、存储和显示相应的数据。组态过程分为两个步骤:(1)设备组态,即建立一个与PLC相对应的逻辑设备;(2)点组态,即建立过程数据库点的过程参量与PLC中变量的对应关系,从而利用点的自身功能进行处理、检测和存储。当然要将过程数据在计算机上展现给用户,还要进行交互界面(窗口)组态。但这一过程对所有应用是相同这,这里就不介绍了。

设备组态

设备组态就根据PLC使用的通讯协议及在网上的节点地址、端口属性等对通讯参数进行定义的过程。

进入紫金桥开发环境,将导航树切换到“数据库”,在导航树上选择“设备驱动/MODBUS/
MODBUS(ASCII&RTU串口通讯)”,单击鼠标右键,在单出菜单中选择“增加设备驱动”会弹出发下所示对话框:

在对话框中输入设备名称、设备地址(与PLC中MBUS_INIT初始化的Addr参数一致),选择串口号,并且设置(点击“设置”按钮)端口属性,使用它与PLC中MBUS_INIT命令设置的属性一致。点击“下一步”:

在Modbus设备定义对话框中将协议类型选择为“RTU”,存贮器类型选择“32位”(即长整和浮点型4字节的数据的传送格式为高位在前,低位在后)。单击“完成”按钮,则设备组态完成。

点组态及I/O连接

完成了点组态还要进行点组态I/O连接,这样才能将PLC中的变量映射到紫金桥软件中。

进入紫金桥开发环境,将导航树切换到“数据库”,在导航树上双击“点组态”,进入点组窗口:

选择点类型,建点,设置常规参数是点组态的基本操作,对所有应用是相同的,这里就不详细说明了。下面重点介绍一下I/O连接及与变量对应关系。

这里以模拟I/O点的I/O连接为例。新建一个模拟I/O点后,输入点名,切换到“数据连接”属性页:

从该属性的设备列表框中选择在上一步骤中建立的设备(如:MOD),点击“增加连接项”按钮,进入“Modbus组点对话框”:

这里的“内存区”、“偏置”和“数据格式”是与PLC中部分内存类型和地址相对应的。对于在Modbus协议中不能对应的PLC内存类型,如果需要上传到过程数据库中,可以先它们先移动到V内存区,再通过V内存区读取。S7-200内存区与紫金桥I/O连接对应关系如下所示:


 

S7-200地址

紫金桥软件I/O连接

内存区

偏置

Q0.0

DO离散输出量

0

Q0.1

1

Q0.2

2

……(Qm.n)

……(m*8+n)

Q15.6

126

Q15.7

127

I0.0

DI离散输入量

0

I0.1

1

I0.2

2

……(Im.n)

……(m*8+n)

I15.6

126

I15.7

127

AIW0

AR输入寄存器

0

AIW2

1

AIW4

2

……(AIW2n)

……(n)

AIW62

31

Hold Start(如:VB0)

 

0

Hold Start+2(如:VB2)

 

1

Hold Start+4(如:VB4)

 

2

……

 

……

Hold Start+(HoldMax-1)*2

 

HoldMax-1

在完成存贮区和地址组态,还要注意一点就是数据类型一致性,只有类型一致才能从PLC上获得正确数据。我们可以从“数据格式”中选择格式。对于字寄存器我们也可以将它拆分为位,从而获得某个位的状态。

注:对新组态的数据库点只有重新启动后才会生效。

以上是对通过Modbus协议在紫金桥软件中获取S7-200 PLC数据的使用方法的简单介绍,希望对大家使用紫金桥有所帮助。


 

状 态: 离线

公司简介
产品目录

公司名称: 紫金桥软件技术有限公司
联 系 人: 李磊
电  话: 0459-8151391-808
传  真: 0459-8151391-804
地  址: 大庆市高新区服务外包产业园C-1座817室
邮  编: 163316
主  页:
 
该厂商相关技术文摘:
跨平台实时数据库变量引用导航功能介绍
跨平台实时数据库 如何利用MODBUS仿真软件测试MODBUS驱动
紫金桥跨平台实时数据库如何实现多屏显示
紫金桥跨平台软实时数据库Web服务器和数据服务器分离访问的配置
紫金桥跨平台软件远程采集RealInfo6.5
使用虚拟机做的工程实现跨网Web访问
紫金桥软件Microsoft Office Access 2003的ODBC数据源配置
紫金桥软件闸门整体自动化监控系统
通过紫金桥软件来提高画面组态速度
组态软件在配套设备中的应用
紫金桥的关系库同步工具简介
紫金桥组态软件与欧姆龙PLC以太网通信(FINS命令)——CPU型号-CJ2M-CPU33
更多文摘...
立即发送询问信息在线联系该技术文摘厂商:
用户名: 密码: 免费注册为中华工控网会员
请留下您的有效联系方式,以方便我们及时与您联络

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 不良信息举报
工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2022 Gkong.com, All Rights Reserved