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

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

3天内不再提示

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

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2023-10-30 14:21 次阅读

CP343-1(6GK7343-1EX30-0XE0) 或 CP343-1 Advanced(6GK7343-1GX30/1GX31-0XE0) 或 CP343-1 Lean(6GK7343-1CX10-0XE0) 支持 I Device 模式,故可使用 CP343-1 作为智能 IO 设备和 S7-1200 做 Profinet 通信。本例中将 S7-1200 做为控制器,连接作为智能 IO 设备的 CP343-1 实现 Profinet 通信;下面详细介绍使用方法。

硬件

CPU 1217C DC/DC/DC,V4.4

CPU 314C-2 PN/DP,V3.3 + CP343-1 Standard(6GK7343-1EX30-0XE0) ,V3.0

软件:

TIA Step7 V17

Step7 V5.6 SP2

CP343-1 的 PN 接口连接 S7-1200 的 PN 接口,这种方式可以分 3 种情况来操作,具体如下:

第一种情况:S7-1200 与 CP343-1 在一个项目中操作(TIA STEP7 V17)

第二种情况:S7-1200 与 CP343-1 不在一个项目中的操作(两个 TIA STEP7 V17 项目)

第三种情况:S7-1200 与 CP343-1 不在一个项目中的操作( S7-1200 在TIA STEP7 V17 项目中,CP343-1 在 STEP7 V5.6 项目中)

1. 第一种情况(S7-1200 与 CP343-1 在同一 TIA 项目中)

CPU1217C 作为 IO 控制器,CP343-1 作为 IO 设备,使用 TIA Step7 V17 在一个项目中操作,详细步骤如下。

1-1 使用 Step7 V17 创建 S7-1200 站

使用 STEP7 V17 创建一个新项目,并通过“添加新设备”组态 S7-1200 站 PLC_1,选择 CPU 1217C,添加子网并设置 IP 地址,确认设备名称,本示例中 S7-1200 设备名称是 plc_1。如图 1 所示。

302f0ef8-76d3-11ee-939d-92fbcf53809c.jpg

图 1 在新项目中插入 S7-1200 站

组态 S7-1200PLC 后,默认为 IO 控制器模式,无需设置。如图 2 所示。

305793fa-76d3-11ee-939d-92fbcf53809c.jpg

图 2 S7-1200的操作模式

1-2 使用 Step7 V17 创建 S7-300 站

使用 STEP7 V17 创建一个新项目,并通过“添加新设备”组态 S7-300 站 PLC_2,选择 CPU314C-2 PN/DP V3.3 和 CP343-1 V3.0;对 CP343-1 分配子网并设置 IP 地址,并确认设备名称,本示例中 CP343-1 设备名称是 plc_2.cp343-1_1 。如图 3 所示。

3076c6f8-76d3-11ee-939d-92fbcf53809c.jpg

图 3 在新项目中插入 S7-300 和 CP343-1

CP343-1 作为 IO 设备,需要将其操作模式设置为 IO 设备,将 IO 设备分配给控制器 PLC_1。

在“智能设备通信”的“传输区”创建 IO 通信区,控制器的 QB2~7 共计 6 个字节传送到 IO 设备的接收块中偏移量数据 0~5 ;控制器的 IB2~7 共计 6 个字节读取 IO 设备的发送块中偏移量数据 0~5 ,如图 4 所示。

30908fd4-76d3-11ee-939d-92fbcf53809c.jpg

图 4 设置 CP343-1 为 IO 设备和智能设备通信传输区域

之后分别将 PLC_1 站和 PLC_2 站硬件组态编译下载到各自的 PLC 中。

1-3 S7-300 编程

本例中,CP343-1 作为 智能 IO 设备,要在 OB1 中编程调用 PNIO_SEND 和 PNIO_RECV 进行数据读写。如图 5 所示。

30af7408-76d3-11ee-939d-92fbcf53809c.jpg

图 5 CPU314C-2 PN/DP 中编程

指令管脚参数说明:

CALL “PNIO_SEND” //调用 PNIO_SEND
CPLADDR :=W#16#100 // CP 模板 IO起始地址
MODE :=B#16#0 // 工作模式:当 CP343-1 仅作为 IO 控制器或 IO 设备时,设为 0;当 CP343-1 同时作为 IO 控制器和 IO 设备时,设为 1
LEN :=6 // 要发送的数据区长度;该长度始终是从数据区地址0开始计算
SEND :=P#M100.0 BYTE 6 // 发送数据区
IOCS :=P#M120.0 BYTE 1 // 每一用户数据字节传送一个状态位。长度信息取决于 LEN 参数中的长度。
以程序段 1 为例,共发送 6 个字节,每个字节需要 1 个位,所以共需要 6 位,即至少需要 1 字节。
DONE :=%M130.0 // 为 1 时,无错误完成该作业
ERROR :=%M130.1 // 为 1 时,有故障发生
STATUS :=%MW132 // 状态代码
CHECK_IOCS :=%M130.2 // 0: 所有 IOCS 均设置为 GOOD
// 1: 至少一个 IOCS 设置为 BAD
CALL “PNIO_RECV” //调用 PNIO_RECV
CPLADDR :=W#16#100 // CP 模板 IO起始地址
MODE :=B#16#0 // 工作模式:当 CP343-1 仅作为 IO 控制器或 IO 设备时,设为 0;当 CP343-1 同时作为 IO 控制器和 IO 设备时,设为 1
LEN :=6 // 要接收的数据区长度;该长度始终是从数据区地址 0 开始计算
RECV :=P#M200.0 BYTE 6 // 发送数据区
IOPS :=P#M220.0 BYTE 1 // 每一用户数据字节传送一个状态位。长度信息取决于 LEN 参数中的长度。
以程序段 2 为例,共接收 6 个字节,每个字节需要 1 个位,所以共需要 6 位,即至少需要 1 字节。
NDR :=%M230.0 // 为 1 时,无错误完成该作业
ERROR :=%M230.1 // 为 1 时,有故障发生
STATUS :=%MW232 // 状态代码
CHECK_IOPS :=%M230.2 // 0: 所有 IOPS 均设置为 GOOD
// 1: 至少一个 IOPS 设置为 BAD
ADD_INFO :=%MW234 // 附加诊断信息;具体请查看指令帮助信息

注意:CPLADDR 是 CP343-1 的 IO 地址的起始地址,如图 6 所示。指令中使用 W#16#100,即 256。

30d8425c-76d3-11ee-939d-92fbcf53809c.jpg

图 6 CP343-1 地址

1-4 通讯测试

检查无错误后,下载 S7-300 的程序,分别给两个站点新建监控表,添加通信数据区,监控。如图 9 所示。

30f40e1a-76d3-11ee-939d-92fbcf53809c.jpg

图 7 通信测试

1-6 地址对应关系的说明

310794b2-76d3-11ee-939d-92fbcf53809c.jpg

图 8 地址对应关系

从图中可以看到,当 CP343-1 作智能 IO 设备时,传输区块中的偏移量默认从 0 开始,无法修改。地址对应排列关系以逻辑地址大小为序。

2. 第二种情况( S7-1200 与 CP343-1 在不同TIA项目中)

在不同项目中的操作,即:1217C 作为 IO 控制器,CP343-1 作为 IO 设备在两个 TIA 项目操作,详细步骤如下。

2-1 使用 Step7 V17 创建 S7-300 站

S7-300 站点创建和第一种情况-->1-2 使用 Step7 V17 创建 S7-300 站章节内容相同,不再赘述。

2-2 配置智能设备通信传输区并导出GSD 文件

CP343-1 作为 IO 设备,需要将其操作模式设置为 IO 设备,将 IO 设备分配选择未分配。在“智能设备通信”的“传输区”创建 IO 通信区,IO 数据长度分别为6个字节,如图 9 所示。

311e2d26-76d3-11ee-939d-92fbcf53809c.jpg

图 9 设置 CP343-1为 IO 设备和智能设备通信传输区域

编译该项目,在“智能设备通信”属性的下方,找到并点击“导出”按钮,根据提示将 GSD 文件自由选择路径导出(注意不要修改设备名称)。如图 10、11 所示。

3133e7ba-76d3-11ee-939d-92fbcf53809c.jpg

图 10 导出 CP343-1的 GSD 文件

315f1980-76d3-11ee-939d-92fbcf53809c.jpg

图 11 导出 CP343-1 的 GSD 文件

2-3 使用 Step7 V17 创建 S7-1200 站

S7-1200 站点创建和第一种情况-->1-1 使用 Step7 V17 创建 S7-1200 站章节内容相同,不再赘述。

在 TIA 内导入 CP343-1 的 GSD 文件,路径为“选项”-->“管理通用站描述文件(GSD)”。在源路径选择 IO-device 的 GSD 文件存放路径,选择并安装 GSD 文件。如图 12、13 所示。

316c8da4-76d3-11ee-939d-92fbcf53809c.jpg

图 12 TIA 内安装 GSD 文件

319075a2-76d3-11ee-939d-92fbcf53809c.jpg

图 13 选择并安装 GSD 文件

2-4 在S7-1200 中组态 IO-device

网络视图内,硬件目录中找到导入的 CP343-1 ,然后拖拽到网络视图内。点击 CP343-1 网口拖拽到 CPU 1217C 网口上,将 CP343-1 分配给IO 控制器 CPU 1217C 。如图 14 所示。

31b187d8-76d3-11ee-939d-92fbcf53809c.jpg

图 14 IO 控制器项目内组态 IO 设备

在网络视图内,双击 CP343-1 查看 IO 地址分配情况。如图 15 所示。

31d4fb46-76d3-11ee-939d-92fbcf53809c.jpg

图 15 IO 设备的 IO 地址分配情况

2-5 硬件组态下载,检查设备名称和 IP 地址是否正确

分别将 S7-300 站和 S7-1200 站下载到各自的 PLC 中。

将 TIA 软件转至在线状态,在网络视图查看站点通信状况。若在线站点显示31f402d4-76d3-11ee-939d-92fbcf53809c.png,则表示通信正常。如图 16 所示。

3202ef24-76d3-11ee-939d-92fbcf53809c.jpg

图 16 TIA 在线查看网络状态

2-6 S7-300 编程

S7-300 编程 和第一种情况-->1-3 S7-300 编程 章节内容相同,不再赘述。

2-7 通讯测试

检查无错误后,分别给两个站点新建监控表,添加通信数据区,监控。如图 17 所示。

32109836-76d3-11ee-939d-92fbcf53809c.jpg

图 17 通信测试

2-8 地址对应关系的说明

当 CP343-1 作智能 IO 设备时,传输区块中的偏移量默认从 0 开始,无法修改。在 IO 控制器 S7-1200 PLC 侧导入 GSD 文件后, IO 设备对应主站的 IO 地址可在网络视图内双击 IO 设备查看。如图 15 所示。

本例中,IO 设备传输区对应 IO 控制器 IB68~IB73 和 QB68~QB73。对应关系为:

S7-1200 PLC 的 IB68~IB73 <---> S7-300 PLC 的 MB100~MB105;

S7-1200 PLC 的 QB68~QB73 <--->S7-300 PLC的 MB200~MB205。

3. 第三种情况(S7-1200 在 TIA 项目中,CP343-1 在 Step7 项目)

1217C 作为 IO 控制器,使用 Step7 V17 编程;CP343-1 作为 IO 设备 使用 Step7 V5.6 编程,详细步骤如下。

3-1 使用 Step7 V5.6 创建 S7-300 站

使用 STEP7 V5.6 创建一个新项目,并组态 CPU 314C-2 PN/DP, 添加 CP343-1 ,设置 IP 地址并添加子网,并确认设备名称,本示例中设备名称是 PN-IO 。如图 18 所示。

32331898-76d3-11ee-939d-92fbcf53809c.jpg

图 18 在新项目中插入 S7-300 站

3-2 配置智能设备通信传输区并导出 GSD 文件

CP343-1 作为 IO 设备需设置 IO 设备模式。在 PN-IO 中,选择 I-Device 页,勾选 I-device mode,并在“智能设备通信”的“传输区”创建 IO 通信区,IO 数据长度分别为 6 个字节,如图 19、20、21 所示。

324dd070-76d3-11ee-939d-92fbcf53809c.jpg

图 19 设置 CP343-1 为 IO 设备和智能设备通信传输输出区域

325a52fa-76d3-11ee-939d-92fbcf53809c.jpg

图 20 设置 CP343-1 为 IO 设备和智能设备通信传输输入区域

327b1562-76d3-11ee-939d-92fbcf53809c.jpg

图 21 智能设备通信传输区域配置完成

CP343-1 智能设备传输区域配置完毕后,生成并导出 GSD 文件。如图 22 所示。

32905076-76d3-11ee-939d-92fbcf53809c.jpg

图 22 生成 CP343-1 的 GSD 文件

生成 GSD 文件后,点击导出并选择目标路径,如图 23 所示。

32a32ebc-76d3-11ee-939d-92fbcf53809c.jpg

图 23 导出 CP343-1 的 GSD 文件

3-3 使用 Step7 V17 创建 S7-1200 站

S7-1200 站点创建及 GSD 导入方法和第二种情况-->2-3 使用 Step7 V17 创建 S7-1200 站 章节内容相同,不再赘述。

3-4 在S7-1200 中组态 IO-device

在网络视图内,硬件目录中找到导入的 CP343-1,然后拖拽到网络视图内。点击 CP343-1 网口拖拽到 CPU 1217C 网口上,将 CP343-1 分配给 IO 控制器 CPU 1217C。如图 24 所示。

32b9e79c-76d3-11ee-939d-92fbcf53809c.jpg

图 24 IO 控制器项目内组态 IO 设备

在网络视图内,双击 CP343-1 查看 IO 地址分配情况。如图 25 所示。

32e459be-76d3-11ee-939d-92fbcf53809c.jpg

图 25 IO 设备的IO地址分配情况

3-5 硬件组态下载,检查设备名称和 IP 地址是否正确

分别将 S7-300 站和 S7-1200 站下载到各自的 PLC 中。

将 TIA 软件转至在线状态,在网络视图查看站点通信状况。若在线站点显示31f402d4-76d3-11ee-939d-92fbcf53809c.png,则表示通信正常。如图 26 所示。

33106aae-76d3-11ee-939d-92fbcf53809c.jpg

图 26 TIA 在线查看网络状态

3-6 S7-300 编程

本例中,CP343-1 作为 智能 IO 设备,要在 OB1 中编程调用 PNIO_SEND 和 PNIO_RECV 进行数据读写。如图 27 所示。

3322b1f0-76d3-11ee-939d-92fbcf53809c.jpg

图 27 CPU314C-2 PN/DP 中编程

指令管脚参数说明:

CALL “PNIO_SEND” //调用 PNIO_SEND
CPLADDR :=W#16#100 // CP 模板 IO起始地址
MODE :=B#16#0 // 工作模式:当 CP343-1 仅作为 IO 控制器或 IO 设备时,设为0;当 CP343-1 同时作为 IO 控制器和 IO 设备时,设为 1
LEN :=6 // 要发送的数据区长度;该长度始终是从数据区地址0开始计算
SEND :=P#M100.0 BYTE 6 // 发送数据区
IOCS :=P#M120.0 BYTE 1 // 每一用户数据字节传送一个状态位。长度信息取决于LEN 参数中的长度。
以程序段 1 为例,共发送 6 个字节,每个字节需要 1 个位,所以共需要 6 位,即至少需要 1 字节。
DONE :=%M130.0 // 为 1 时,无错误完成该作业
ERROR :=%M130.1 // 为 1 时,有故障发生
STATUS :=%MW132 // 状态代码
CHECK_IOCS :=%M130.2 // 0: 所有 IOCS 均设置为 GOOD
// 1: 至少一个 IOCS 设置为 BAD
CALL “PNIO_RECV” //调用 PNIO_RECV
CPLADDR :=W#16#100 // CP 模板 IO起始地址
MODE :=B#16#0 // 工作模式:当 CP343-1 仅作为 IO 控制器或 IO 设备时,设为0;当 CP343-1 同时作为 IO 控制器和 IO 设备时,设为 1
LEN :=6 // 要接收的数据区长度;该长度始终是从数据区地址 0 开始计算
RECV :=P#M200.0 BYTE 6 // 发送数据区
IOPS :=P#M220.0 BYTE 1 // 每一用户数据字节传送一个状态位。长度信息取决于LEN 参数中的长度。
以程序段2为例,共接收 6 个字节,每个字节需要 1 个位,所以共需要 6 位,即至少需要 1 字节。
NDR :=%M230.0 // 为 1 时,无错误完成该作业
ERROR :=%M230.1 // 为 1 时,有故障发生
STATUS :=%MW232 // 状态代码
CHECK_IOPS :=%M230.2 // 0: 所有 IOPS 均设置为 GOOD
// 1: 至少一个 IOPS 设置为 BAD
ADD_INFO :=%MW234 // 附加诊断信息;具体请查看指令帮助信息

注意:CPLADDR是 CP343-1 的 IO 地址的起始地址,如图 28 所示。指令中使用 W#16#100,即256。

3347a01e-76d3-11ee-939d-92fbcf53809c.jpg

图 28 CP343-1 起始地址

3-7 通讯测试

检查无错误后,分别给两个站点新建监控表,添加通信数据区,监控。如图 28 所示。

335bcb98-76d3-11ee-939d-92fbcf53809c.jpg

图 29 通信测试

3-8 地址对应关系的说明

当 CP343-1 作智能 IO 设备时,传输区块中的偏移量默认从 0 开始,无法修改。在 IO 控制器 S7-1200 PLC 侧导入 GSD 文件后, IO 设备对应主站的 IO 地址可在网络视图内双击 IO 设备查看。如图25 所示。

本例中, IO 设备传输区对应 IO 控制器 IB68~IB73 和 QB68~QB73 。对应关系为:

S7-1200 PLC 的 IB68~IB73 <--->S7-300 PLC 的 MB100~MB105;

S7-1200 PLC 的 QB68~QB73 <---> S7-300 PLC 的 MB200~MB205。

审核编辑:汤梓红

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

    关注

    112

    文章

    16240

    浏览量

    177601
  • 接口
    +关注

    关注

    33

    文章

    8537

    浏览量

    150906
  • Profinet
    +关注

    关注

    6

    文章

    1092

    浏览量

    23349
  • S7-1200
    +关注

    关注

    11

    文章

    331

    浏览量

    17924

原文标题:S7-1200 和 CP343-1 的 Profinet 通信(S7-1200 做控制器)

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    S7-1500与CP343-1之间的TCP通信(TIA)配置过程

    SIMATIC S7- 1500 CPU集成了 PROFINET 接口,该接口除了具备连接 PROFINET总线通信功能,同时还可用于标准的 TCP
    的头像 发表于 02-22 11:24 1675次阅读
    <b class='flag-5'>S7</b>-1500与<b class='flag-5'>CP343-1</b>之间的TCP<b class='flag-5'>通信</b>(TIA)配置过程

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

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

    S7-1200PROFINET通信

    S7-1200 CPU 本体上集成了一个PROFINET 通信口,支持以太网和基于TCP/IP 的通信标准。使用这个通信口可以实现
    发表于 09-29 18:58 38次下载
    <b class='flag-5'>S7-1200</b>与<b class='flag-5'>PROFINET</b>的<b class='flag-5'>通信</b>

    通过CP343-1模块实现S7-300之间的以太网通讯设计方案

    2套S7-300系统由PS307电源、CPU314C-2DP、CPU314C-2PTP、CP343-1CP343-1 IT、PC、CP5611、STEP
    发表于 08-17 15:57 1.8w次阅读

    S7-1200S7-1200进行S7通信的详细资料说明

    S7-1200PROFINET 通信口可以做 S7 通信的服务器端或客户端(CPU V2.0及以上版本)。
    的头像 发表于 08-17 10:51 2.9w次阅读
    <b class='flag-5'>S7-1200</b>和<b class='flag-5'>S7-1200</b>进行<b class='flag-5'>S7</b><b class='flag-5'>通信</b>的详细资料说明

    关于S7-1200S7-1200之间UDP的通信与仿真

    S7-1200S7-1200 之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在双方 CPU 调用 T-block ( TCON, TDISCON, TUSEND,
    的头像 发表于 04-22 09:14 5535次阅读
    关于<b class='flag-5'>S7-1200</b>和<b class='flag-5'>S7-1200</b>之间UDP的<b class='flag-5'>通信</b>与仿真

    通过PROFINET实现S7-1200与CU320-2PN通讯

    通过PROFINET实现S7-1200与CU320-2PN通讯说明。
    发表于 04-23 09:28 74次下载

    关于S7-1200S7-1500 PLC的通信

    WinCC V7.4SP1中针对S7-1200S7-1500通信,可以创建状态变量和控制变量,用来显示和控制S7-1200
    发表于 10-09 10:05 2197次阅读

    S7-1200S7-300集成DP口的主从通信1200做主站,300做从站)

    使用 S7-1200S7-300 的集成 DP 接口进行主从通信,这里是将 S7-1200 做为主站,将 S7-300 做为从站,即:
    的头像 发表于 02-06 11:16 4831次阅读

    S7-1200S7-300 CP342-5的DP口的主从通信

    使用 S7-1200S7-300 用 CP342-5 进行主从通信,这里S7-1200 的 CM1243-5 做为主站,将
    的头像 发表于 02-13 09:32 1594次阅读

    S7-1200 CPU与S7-300 CP STEP7 UDP通信

    S7-1200S7-300 CP 之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在
    的头像 发表于 04-08 10:48 1979次阅读

    S7-1200 CPU与S7-300 CP TIA UDP通信

    S7-1200S7-300 CP 之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在
    的头像 发表于 04-08 10:49 2373次阅读

    S7-1200 CPU与S7-200 SMART S7通信指南

    S7-1200 CPU 固件版本 V2.0 及其以上,本体集成的 PROFINET 通信接口可以做 S7 通信客户端。
    的头像 发表于 04-19 15:14 3073次阅读

    一文解析S7-1200S7-1500 S7通信

    S7-1200PROFINET 通信口可以做 S7 通信的服务器端或客户端(CPU V2.0及以上版本)。
    发表于 05-15 17:13 5966次阅读
    一文解析<b class='flag-5'>S7-1200</b>与<b class='flag-5'>S7</b>-1500 <b class='flag-5'>S7</b><b class='flag-5'>通信</b>

    S7-1200下载项目程序步骤详解

    S7-1200的CPU本体上集成了PROFINET通信口,通过这个通信口可以实现CPU与编程设备的通信。 此外,
    发表于 11-15 15:45 4380次阅读
    <b class='flag-5'>S7-1200</b>下载项目程序步骤详解