0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

S7-1200作为IO控制器进行分布式IO设备的通信诊断功能

重庆机器人 来源:重庆机器人 2023-07-29 15:16 次阅读

S7-1200 作为 IO 控制器进行分布式 IO 设备的通信诊断功能

本部分使用 CPU 1214C V4.4 和 ET200SP 的 PN 通信为例进行说明(DP通信同样适用)。

硬件

  1. CPU 1214C DC/DC/DC,V4.4,一台

  2. ET200SP 分布式 IO 站,PN 接口,两套

软件:

  1. TIA Portal V16

1. 使用 TIA Portal 创建项目

使用 TIA Portal 创建一个新项目,正确配置,下载后,进入网络视图,所有站点状态正常。如图 1 所示。

8c96ec58-2dd4-11ee-815d-dac502259ad0.jpg

图 1 网络视图

注意:分布式 IO 为 PN 子站时,可在“网络概览”中可以查看分布式 IO 的设备编号。

2. 使用 DeviceStates 指令对分布式 IO 子站进行诊断

2.1 创建全局数据块,用于存储状态数据

在全局数据块中创建数据类型为 Array of BOOL 数组,共计1024个元素,如图 2 所示。

『注意』对于DP主站系统,相关的诊断功能与PROFINET系统类似。只是需要使用DP系统兼容的变量,例如创建128个元素的 Array of BOOL 数组,用于存储DP站的状态,类似情况下文不再赘述。

8cbd10ea-2dd4-11ee-815d-dac502259ad0.jpg

图 2 创建全局数据块

2.2 编程

在 OB1 中调用 DeviceStates 指令,双击 LADDR 引脚,选择需要诊断的 IO 系统,如图 3 所示。

8ce92d9c-2dd4-11ee-815d-dac502259ad0.jpg

图 3 调用 DeviceStates 指令

本例中选择PN IO系统硬件标识符,并将 MODE 设置为2,STATE 填写上述定义的全局数据块数组。如图 4 所示。

8d05a508-2dd4-11ee-815d-dac502259ad0.jpg

图 4 填写相应的引脚

表 1 DeviceStates 指令引脚说明

参数 LADDR

使用 LADDR 参数通过硬件标识符选择 PROFINET IO 或 DP 主站系统。

硬件标识符位于:

  • PROFINET IO 或 DP 主站系统属性的网络视图中。

  • 或数据类型为 HW_IOSYSTEM 的所列系统常量的 PLC 变量表中。

参数 MODE

使用 MODE 参数可读取状态信息。可读取整个 PROFINET IO 或 DP 主站系统的下列一条状态信息:

  • 1: IO 设备/DP 从站已组态

  • 2: IO 设备/DP 从站故障

  • 3: IO 设备/DP 从站已禁用

  • 4: IO 设备/DP 从站存在

  • 5: 出现问题的 IO 设备/DP 从站。

参数 STATE

通过 STATE 参数,输出由 MODE 参数选择的 IO 设备/DP 从站的状态。
如果使用 MODE 选择的状态适用于 IO 设备/DP 从站,则在 STATE 参数中将下列位设置为“1”:

  • 位 0 = 1:组显示。至少有一个 IO 设备/DP 从站的第 n 位设置为“1”。

  • 位 n = 1:通过 MODE 选择的状态将应用到 IO 设备/DP 从站。

    • 对于 PROFINET IO 系统,第 n 位对应于相应 IO 设备的设备编号(请参见设备视图和网络视图中的 PROFINET 接口属性)。

    • 对于 PROFINET DP 系统,第 n 位对应于 DP 从站的 PROFIBUS 地址(请参见设备视图和网络视图中的 DP 从站属性)。

使用“BOOL”或“Array of BOOL”作为数据类型:

  • 要仅输出状态信息的组显示位,可在 STATE 参数中使用 BOOL 数据类型。

  • 要输出所有 IO 设备/DP 从站的状态信息,请使用下列长度的 Array of BOOL:

    • 对于 PROFINET IO 系统:1024 位

    • 对于 DP 主站系统:128 位

2.3 测试

将程序下载到 PLC 中。

监控全局数据块 devicestate。如图 5 所示。

8d1e378a-2dd4-11ee-815d-dac502259ad0.jpg

图 5 IO 系统正常

当 IO device_2 故障时(掉电或网线拔除导致丢站),state[2]=1。如图 6 所示。

8d37742a-2dd4-11ee-815d-dac502259ad0.jpg

图 6 IO device_2 故障

当 IO device_1 和 IO device_2 故障时(掉电或网线拔除导致丢站),state[1]=1 和 state[2]=1。如图 7 所示。

8d584308-2dd4-11ee-815d-dac502259ad0.jpg

图 7 IO device_1 和 IO device_2 故障

3. 使用 ModuleStates 指令对分布式 IO 子模块进行诊断

3.1 创建全局数据块,用于存储状态数据

在全局数据块中创建数据类型为 Array of BOOL 数组,共计128个元素。如图 8 所示。

8d6b4c50-2dd4-11ee-815d-dac502259ad0.jpg

图 8 创建全局数据块

3.2 编程

在 OB1 中调用 ModuleStates 指令,双击 LADDR 引脚,选择需要诊断的分布式 IO 站。如图 9 所示。

8d84c432-2dd4-11ee-815d-dac502259ad0.jpg

图 9 调用 ModuleStates 指令

本例中选择PN IO设备硬件标识符,并将 MODE 设置为2,STATE 填写上述定义的全局数据块数组。如图 10 所示。

8db0363a-2dd4-11ee-815d-dac502259ad0.jpg

图 10 填写相应的引脚

表 2 ModuleStates指令引脚说明

参数 LADDR

使用 LADDR 参数通过站硬件标识符选择 IO 设备或 DP 从站。
硬件标识符位于:

  • IO 设备站或 DP 从站属性的网络视图中。

  • 或数据类型为 HW_DEVICE(对于 IO 设备)或 HW_DPSLAVE(对于 DP 从站)的所列系统常量的 PLC 变量表中。

参数 MODE

使用 MODE 参数可读取状态信息。可读取模块的下列一条状态信息:

  • 1: 模块已组态

  • 2: 模块故障

  • 3: 模块禁用

  • 4: 模块存在

  • 5: 模块中存在故障。

参数 STATE

STATE 参数输出使用 MODE 参数选择的模块状态。
如果使用 MODE 选择的状态适用于某个模块,那么下列位将设置为“1”:

  • 位 0 = 1:组显示。至少一个模块的第 n 位设置为“1”。

  • 位 n = 1:使用 MODE 选择的状态将应用到插槽 n-1(例如:位 3 对应插槽 2)中的模块。

使用“BOOL”或“Array of BOOL”作为数据类型:

  • 要仅输出状态信息的组显示位,可在 STATE 参数中使用 BOOL 数据类型。

  • 要输出所有模块的状态信息,请使用长度为 128 位的 Array of BOOL。

3.3 测试

将程序下载到 PLC 中。

监控全局数据块 modulestate。如图 11 所示。

8dc2d5d8-2dd4-11ee-815d-dac502259ad0.jpg

图 11 分布式 IO 站所有子模块正常

当 IO device_1 站插槽编号1的子模块故障时(损坏或被拔除),state[2]=1。如图 12 所示。

8dde21f8-2dd4-11ee-815d-dac502259ad0.jpg

图 12 插槽编号1子模块故障


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    16206

    浏览量

    177427
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10826

    浏览量

    211160
  • S7-1200
    +关注

    关注

    11

    文章

    331

    浏览量

    17916

原文标题:S7-1200 作为 IO 控制器进行分布式 IO 设备的通信诊断功能

文章出处:【微信号:cqspkjrobot,微信公众号:重庆机器人】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    profinet远程分布式IO模块国产型与西门子1200通讯方法

    定义和现场连接的外部设备的通讯机能,其基础是级联性的实时概念,是实现工厂自动化过程自动化和安全性的解决方案。下面我们用西门子1200PLC与国产捷米特Profinet分布式IO模块JM
    的头像 发表于 02-26 09:51 4452次阅读
    profinet远程<b class='flag-5'>分布式</b><b class='flag-5'>IO</b>模块国产型与西门子<b class='flag-5'>1200</b>通讯方法

    S7-1200和CP343-1的Profinet通信方法

    (6GK7343-1CX10-0XE0) 支持 I Device 模式,故可使用 CP343-1 作为智能 IO 设备S7-1200 做 Profinet
    的头像 发表于 10-30 14:21 3606次阅读
    <b class='flag-5'>S7-1200</b>和CP343-1的Profinet<b class='flag-5'>通信</b>方法

    S7-1200运动控制的结构及原理

    CPU S7-1200 兼具可编程逻辑控制器功能和通过脉冲接口控制步进电机和伺服电机运行的运动控制功能
    发表于 09-29 14:37 42次下载
    <b class='flag-5'>S7-1200</b>运动<b class='flag-5'>控制</b>的结构及原理

    基于PROFINET IO实现S7-1200S120通讯

    S7-1200 与SINAMICS S120 之间通过PROFINET IO进行周期性或: 非周期性数据通讯,使用功能块DPWR_DAT
    发表于 09-29 16:50 30次下载
    基于PROFINET <b class='flag-5'>IO</b>实现<b class='flag-5'>S7-1200</b>与<b class='flag-5'>S</b>120通讯

    西门子S7-1500与分布式IO设备诊断

    西门子S7-1500 CPU IO 设备诊断功能(与1200完全相同),可使用 DeviceS
    发表于 02-11 17:27 1.1w次阅读
    西门子<b class='flag-5'>S7</b>-1500与<b class='flag-5'>分布式</b><b class='flag-5'>IO</b><b class='flag-5'>设备</b>的<b class='flag-5'>诊断</b>

    使用DeviceStates指令对分布式IO子站进行诊断

    S7-1200 CPU V2.1 开始支持分布式 IO 设备诊断功能,可使用 DeviceSt
    的头像 发表于 03-23 10:15 1.5w次阅读
    使用DeviceStates指令对<b class='flag-5'>分布式</b><b class='flag-5'>IO</b>子站<b class='flag-5'>进行</b><b class='flag-5'>诊断</b>

    远程IO分布式IO之间的区别是什么

    分布式IO的区别。 远程和分布在位置范围内。 如今的DCS是一个控制系统,有很多分布式自主控制器
    发表于 06-01 17:26 1.1w次阅读

    S7-400作为PROFINET IO控制器(STEP7

    S7-400集成PN口和CP443-1均可作为PROFINET IO控制器。本文以CPU 414-3 PN/DP作为
    的头像 发表于 12-16 11:35 1925次阅读

    简要叙述分布式IO和远程IO的区别

    远程IO分布式IO的区别是什么?让很多人糊涂,到底什么是远程IO,什么是分布式IO,网上包括各
    的头像 发表于 12-29 11:59 1.1w次阅读
    简要叙述<b class='flag-5'>分布式</b><b class='flag-5'>IO</b>和远程<b class='flag-5'>IO</b>的区别

    S7-1200IO控制器通信诊断功能

    本部分使用 CPU 1215FC V4.4 (智能设备)和 CPU 1217C V4.5 (IO 控制器)PN 通信为例进行说明
    的头像 发表于 01-14 11:08 2917次阅读

    S7-1200S7-300的选型区别

    的CPU支持通过信号板来增加IO点数,而S7-300CPU的IO点数是固定的。在硬件组态方面,S7-300和S7-1200的地址都可以由用户
    的头像 发表于 05-04 15:18 1655次阅读
    <b class='flag-5'>S7-1200</b>与<b class='flag-5'>S7</b>-300的选型区别

    S7-1500与S7-200 SMART的PROFINET IO通信配置

    -200 SMART/S7-1200/S7-1500等控制器进行PROFINET通信,或者和其它支持做 PROFINET
    的头像 发表于 07-02 14:21 9851次阅读
    <b class='flag-5'>S7</b>-1500与<b class='flag-5'>S7</b>-200 SMART的PROFINET <b class='flag-5'>IO</b><b class='flag-5'>通信</b>配置

    基于S7-300和S7-1200 CPU的Profinet通信

    CPU 315-2 PN/DP 作为控制器,需要调用 OB83 和 OB86(防止控制器无法正常连接作为 IO
    发表于 07-18 12:28 1547次阅读
    基于<b class='flag-5'>S7</b>-300和<b class='flag-5'>S7-1200</b> CPU的Profinet<b class='flag-5'>通信</b>

    西门子S7-1200S7-300PLC之间的区别有哪些?

    S7-1200作为新推出的紧凑型控制器,其产品定位在原有的SIMATIC S7-200和S7-300之间,它与
    的头像 发表于 01-10 10:54 1015次阅读
    西门子<b class='flag-5'>S7-1200</b>与<b class='flag-5'>S7</b>-300PLC之间的区别有哪些?

    远程IO分布式IO的区别

    在工业自动化和控制系统设计中,远程IO(Input/Output)和分布式IO是两个重要的概念。它们各自具有独特的特点和优势,适用于不同的应用场景。本文将详细探讨远程
    的头像 发表于 06-15 15:57 2317次阅读