SIMOTION PROFIBUS-DP 通信入门 SIMOTION PROFIBUS-DP Communication Getting Start 快速入门 Edition 2006-10
摘要本文介绍 SIMOTION 分别作为 PROFIBUS-DP 主站和从站的配置及诊断功能, 用户可以快速了解并使用 PROFIBUS-DP 网络进行数据交换 关键词 SIMOTION PROFIBUS-DP 通信 Key words SIMOTION PROFIBUS-DP Communication A&D Service & Support Page 2-15
目录 1.PROFIBUS 网络介绍... 4 2.SIMOTION 使用 PROFIBUS 网络的通信功能... 6 3.D435 作为从站... 7 4.D435 作为主站... 9 5.PROFIBUS 站点诊断... 12 A&D Service & Support Page 3-15
1.PROFIBUS 网络介绍 现场总线 PROFIBUS 可以连接远程 I/O 站 仪表 主站 (PLC 站 ) 等设备, 通信服务 分为 DP FDL S7 FMS PA( 将服务类型进行转换 ), 通信方式分为主 - 主 主 - 从通 信 PROFIBUS 网络分层参考表 1: 表 1 PROFIBUS 网络层 DP 设备行规 第 7 层 ( 应用层 ) 第 3~6 层 第 2 层 ( 数据链路层 ) 基本功能扩展功能 DP 用户接口直接数据链路映象程序 (DDLM) 数据链路层现场总线数据链路 (FDL) 应用层 S7 数据链路层现场总线数据链路 (FDL) FMS 设备行规 应用层接口 (ALI) 应用层现场总线报文规范 (FMS) 数据链路层现场总线数据链路 (FDL) PA 设备行规 基本功能扩展功能 DP 用户接口直接数据链路映象程序 (DDLM) IEC 接口 第 1 层 ( 物理层 ) 物理层 (RS485/ 光纤 ) 物理层 (RS485/ 光纤 ) 物理层 (RS485/ 光纤 ) IEC1158-2 PROFIBUS 总线符合 EIA RS485[8] 标准,PROFIBUS RS485 的传输程序是以半双工 异步 无间隙同步为基础的 传输介质可以是光缆或屏蔽双绞线, 电气传输每一个 RS485 传输段为 32 个站点和有源网络元件 (RS485 中间器,OLM 等 ), 在总线的两端为终端电阻, 结构如图 1: A&D Service & Support Page 4-15
图 1:PROFIBUS 网络结构 西门子总线终端一般都配有终端电阻,PROFIBUS 使用 9 针 D 型连接器,D 型连接器 插座连接总线站,D 型连接器插头与总线电缆相连 总线终端和针脚定义如表 2: 表 2 总线终端管脚定义针脚号 信号名称 设计含义 1 SHIELD 屏蔽或功能地 2 M24 24V 输出电压地 ( 辅助电源 ) 3 RXD/TXD-P 接收和发送数据 - 正 B 线 4 CNTR-P 方向控制信号 P 5 DGND 数据基准电位 ( 地 ) 6 VP 供电电压 - 正 7 P24 正 24V 输出电压 ( 辅助电源 ) 8 RXD/TXD-N 接收和发送数据 - 负 A 线 9 CNTR-N 方向控制信号 N PROFIBUS 总线的传输输率从 9.6Kbit/s ~12Mbit/s, 总线长度与传输输率相关, 总 的规律是传输输率越高总线长度越短, 越容易受到电磁干扰, 基于传输输率的最大段长度参 考表 3: 表 3 PROFIBUS 网络传输速率与距离的关系波特率 (K Bit/s) 9.6~187.5 500 1500 3000~12000 A&D Service & Support Page 5-15
总线长度 ( 米 ) 1000 400 200 100 总线终端的电阻与 PROFIBUS 总线相匹配, 并配有轴向电感以消除电容性负载而引起的导线反射, 选择普通的屏蔽双绞线不能保证总线的段长度 如果需要扩展总线的长度或者 PROFIBUS 从站个数超过 32 个时, 就要加入 RS485 中继器, 例如扩展 PROFIBUS 长度的应用, 实际 PROFIBUS 的长度为 500 米, 而波特率要求达到 1.5 MBIT/S, 对照上表波特率为 1.5MBIT/S 使最大的长度为 200 米, 要扩展到 500 米, 就需要加入两个 RS485 中继器, 拓扑图如图 2 所示 : 图 2:PROFIBUS 网络扩展西门子 RS485 中继器具有信号放大和再生功能, 在一条 PROFIBUS 总线上最多可以安装 9 个 RS485 中继器, 其他厂商的产品要查看其产品规范以确定安装个数 一个 PROFIBUS 网段最多可有 32 个站点, 如果一条 PROFIBUS 网上超过 32 个站点, 也需要用 RS485 中继器隔开, 例如一条 PROFIBUS 总线上有 80 个站点, 那么就需要两个 RS485 中继器分成 3 个网段 RS485 中继器是一个有源的网络元件, 本身也要算一个站点 除了以上两个功能,RS485 中继器的还可以使网段之间相互电气隔离 2.SIMOTION 使用 PROFIBUS 网络的通信功能 SIMOTION 系统只能使用 PROFIBUS-DP 通信服务进行通信,PROFIBUS-DP 采用主 - 从的通信方式, 使用 DP 通信方式, 一个 PROFIBUS 网络上只允许有一个 1 类主站, 其它站点可以是 2 类主站 (HMI 或只接收从站信息的主站 ) 或从站, 只有 1 类主站可以对从站发送命令, 主站以轮询的方式访问各个从站, 所以 PROFIBUS-DP 具有很好的实时性 按照 A&D Service & Support Page 6-15
PROFIBUS-DP 的规约, 主从间最大的通信量为 244 个字节输入和 244 个字节输出 SIMOTION 可以作为主站也可以作为从站 下面以 SIMOTION 435 为例, 通信区为 16 个字 节输入和 16 个字节输出, 分别介绍作为主站 从站的配置 3.D435 作为从站设置从站打开 SCOUT 软件插入 D435, 点击 D435 使用右键进入硬件配置界面, 点击 X126 接口新建一条 PROFIBUS 网络, 然后设置站号 通信速率 PROFIBUS 参数组 ( 选择 PROFIBUS-DP) 等参数 本例中作为从站的 SIMOTION 站地址为 2, 通信速率为 1.5M 在 Operating Mode 界面中选择 DP SLAVE, 其它参数保持缺省设置 在 Configuration 界面中设置通信接口区及开始地址, 如图 3 所示 : 图 3:SIMOTION 作为从站的通信接口设置界面 设置通信接口分别为 16 个字节输入和 16 个字节输出 设置主站在 STEP7 中打开与 SIMOTION D435 相同的项目, 插入 S7-300 站, 打开硬件配置, 插入 CPU 例如 CPU315-DP/PN, 设置与 SIMOTION 435 使用相同的 PROFIBUS 网络, 设置主站地址为 4 在硬件选择窗口 PROFIBUS-DP->Configured Stations 中选择 SIMOTION 从站并拖曳到主站网络上如图 4 所示 : A&D Service & Support Page 7-15
图 4: 将 SIMOTION 从站拖曳到网络中 弹出的窗口中将显示所有已经配置的从站, 选择与主站进行通信的从站进行连接, 如 图 5 所示, 点击 Connect 键连接从站 图 5: 连接 SIMOTION 从站 A&D Service & Support Page 8-15
点击 configuration 按钮出现从站已经配置的通信接口区, 点击 Edit 键为每一条 从站通信数据区配置相应主站的通信数据区, 配置规则, 从站输入地址区对应主站输出地址 区, 从站输出地址区对应主站输人地址区, 配置通信接口区如图 6 所示 : 图 6: 配置通信接口区点击确认键后, 配置完成 通过 PROFIBUS-DP 通信不需要编写通信程序, 双方数据通过输入 输出地址区直接对应, 例如图 6 配置的主站 从站通信关系如下 : S7-300 主站 QB0~QB15 SIMOTION 从站 IB0~IB15 S7-300 主站 IB0~IB15 SIMOTION 从站 QB0~QB15 SIMOTION 作为从站的示例程序参考附带文件 PROFIBUS-DP_SLAVE.ZIP 4.D435 作为主站设置从站打开 STEP7 软件插入一个站点例如 S7-300 站, 点击 Hardware 进入硬件配置界面, 插入 CPU, 例如 CPU315-2 DP/PN, 点击 X1 接口新建一条 PROFIBUS 网络, 然后设置站号 通信速率 PROFIBUS 参数组 ( 选择 PROFIBUS-DP) 等参数 本例中作为从站的 S7-300 站地址为 2, 通信速率为 1.5M 在 Operating Mode 界面中选择 DP SLAVE, 其它参数保持缺省设置 在 Configuration 界面中设置通信接口区及开始地址, 如图 7 所示 : A&D Service & Support Page 9-15
图 7:S7-300 作为从站的通信接口设置界面 设置通信接口分别为 16 个字节输入和 16 个字节输出 设置主站打开 SCOUT 软件插入 D435, 点击 D435 使用右键进入硬件配置界面, 点击 X126 选择与从站相同的 PROFIBUS 网络, 设置 SIMOTION 的站地址, 本例中作为主站的 SIMOTION 站地址为 4 在硬件选择窗口 PROFIBUS-DP->Configured Stations 中选择 S7-300 从站并拖曳到主站网络上如图 8 所示 : A&D Service & Support Page 10-15
图 8: 将 S7-300 从站拖曳到网络中 弹出的窗口中将显示所有已经配置的从站, 选择与主站进行通信的从站进行连接, 如 图 9 所示, 点击 Connect 键连接从站 图 9: 连接 S7-300 从站 A&D Service & Support Page 11-15
点击 configuration 按钮出现从站已经配置的通信接口区, 点击 Edit 键为每一 条从站通信数据区配置相应主站的通信数据区, 配置规则, 从站输入地址区对应主站输出地 址区, 从站输出地址区对应主站输人地址区, 配置通信接口区如图 10 所示 : 图 10: 配置通信接口区 点击确认键后, 配置完成 通过 PROFIBUS-DP 通信不需要编写通信程序, 双方数 据通过输入 输出地址区直接对应, 例如图 10 配置的主站 从站通信关系如下 : SIMOTION 主站 QB0~QB15 S7-300 从站 IB0~IB15 SIMOTION 主站 IB0~IB15 S7-300 从站 QB0~QB15 SIMOTION 作为从站的示例程序参考附带文件 PROFIBUS_MASTER.ZIP 5.PROFIBUS 站点诊断 主站通过 PROFIBUS-DP 轮询从站, 如果主站故障, 与所有从站的通信将终止, 从 站通信数据不更新 ; 如果一个从站故障, 主站还可以与其它从站进行通信 在 PLC 侧可以通 过 OB86 FC125/FB125( 可以从西门子网站上下载 ) SFC13 等组织块 程序块对主站或从 站进行诊断, 可以查看 PLC 相关文档, 在这里不作相信介绍 SIMOTION 使用函数 _getstateofsingledpslave 或 _getstateofalldpslaves 对一个站点或多个站点进行诊 断 以调用函数 _getstateofsingledpslave 为例介绍 PROFIBUS-DP 站点的诊断功能 函数调用如图 11 所示, 函数参数如下 : A&D Service & Support Page 12-15
图 11 PROFIBUS-DP 诊断函数 logicaldiagnosticaddress: 输入参数, 数据类型 DINT,PROFIBUS-DP 站点诊断地址, 本例中 S7-300PLC 作为从站, 诊断地址为 16378 ReqGetStateOfSingleDPSlaveStateMode: 输入参数, 枚举数据类型, 函数调用请求格式, 枚举元素如表 4 所示 : 表 4: 函数请求 REQUEST_TRUE (0) REQUEST_FALSE (1) REQUEST_ABORT (2) 本例中选择 : REQUEST_TRUE 开始执行查询 REQUEST_TRUE 状态终止函数执行 NextCommand: 输入参数, 枚举数据类型, 下一个命令执行的时机, 枚举元素如表 5 所示 : 表 5:NEXTCOMMAND 元素 IMMEDIATELY (60) 下一个命令与此命令同时执行 WHEN_COMMAND_DONE (160) 执本命令后执行下一个命令 ABORT_CURRENT_COMMAND (260) 立刻终止当前命令本例中选择 : WHEN_COMMAND_DONE commandid: 输入参数, CommandIdType 数据类型, 用户定义, 可以跟踪命令执行的状态 本例中选择一个临时变量, 没有赋值 StructRetGetStateOfSingleDpSlave: 输出参数, 结构数据类型, 结构元素如表 6 所示 : A&D Service & Support Page 13-15
表 6: 输出结构体结构元素 名称 数据类型 functionresult 函数调用返回值 DINT ActualStateOfSingleDpSlave PROFIBUS-DP 单站状态 枚举 ActualStateOfSingleDpSlave 单站状态为枚举数据类型, 枚举元素如表 7 所示 : 表 7: 输出站点状态 INACTIVE (0) 从站被用户程序去使能 IN_OPERATION (1) 与从站正在进行数据交换 DATA_EXCHANGE_INACTIVE (2) 与从站没有进行数据交换 NOT_PRESENT (3) 从站丢失 本例中将从站输出状态存储于全局变量 RET1 中, 通过编程可以判断从站的状态, 调试 状态下可以通过 SYMBOL BROWSER 监控从站状态, 如图 12 所示 : 图 12 在 SYMBOL BROWSER 监控从站状态 从站诊断的示例程序参考附带文件 PROFIBUS_MASTER.ZIP A&D Service & Support Page 14-15
附录 - 推荐网址 西门子 ( 中国 ) 有限公司自动化与驱动集团客户服务与支持中心网站首页 :http://www.ad.siemens.com.cn/service/ 专家推荐精品文档 :http://www.ad.siemens.com.cn/service/recommend.asp AS 常问问题 :http://support.automation.siemens.com/cn/view/zh/10805055/133000 AS 更新信息 :http://support.automation.siemens.com/cn/view/zh/10805055/133400 找答案 AS 版区 : http://www.ad.siemens.com.cn/service/answer/category.asp?cid=1027 Net 常问问题 :http://support.automation.siemens.com/cn/view/zh/10805868/133000 Net 更新信息 :http://support.automation.siemens.com/cn/view/zh/10805868/133400 找答案 Net 版区 : http://www.ad.siemens.com.cn/service/answer/category.asp?cid=1031 A&D Service & Support Page 15-15