S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯

测试内容:

1、 S7-1200(1217)与S7-1200(1214)不同项目S7通讯连接;
2、 S7-1500(ET200SP)与S7-1200(1214)不同项目S7通讯连接;

软件:
Step7 V14 SP1

所完成的通讯任务:
1、 S7-1200(S7-1500) CPU (主CPU)将通信数据区DB1(Send)块中的10个字节的数据发送到S7-1200(S7-1500) CPU (远程CPU)的通信数据区DB1(Receive)块中;
2、 S7-1200(S7-1500) CPU (主CPU)读取S7-1200(S7-1500)(远程CPU)通信数据区DB2(Send)块中的10个字节的数据到S7-1200(S7-1500) CPU(主CPU)的通信数据区DB2(Receive)块中;

操作如下所示:(S7-1500与S7-1200 S7通讯)

  1. 使用Step7 V14生成主CPU项目
    使用Step7 V14 创建两个新项目,一个项目内通过“添加新设备”添加设备添加(主CPU)CPU 1510SP-1 PN V1.8(PLC_2 IP 192.168.0.1), 如下图所示:
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第1张图片

  2. 双击PLC_2下面“设备组态”按钮进入设备组态界面,选择“网络视图”,在网络视图界面内PLC_2组态模块上方找到“连接”按钮,点击连接按钮,在连接按钮右边下拉框内选择“S7连接”,如下图所示:
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第2张图片

  3. 选择“网络视图”内PLC_2的CPU模块,右键选择“添加新连接(N)”,在“创建新连接”界面内,选择“未指定”,点击“添加”按钮创建S7连接,如下图所示:
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第3张图片
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第4张图片

  4. 点击“网络视图”PLC_2模块连接线“S7-连接-1”,从主界面下部上拉“S7-连接-1”属性界面,选择“常规”界面,添加伙伴(未知设备)“地址”栏内地址:192.168.0.10(远程CPU IP地址),如下图所示:
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第5张图片

  5. “S7-连接-1”属性界面内,“本地ID”、“特殊连接属性”、“地址详细信息”内的数据无需修改,“本地ID”内ID号将在后面GET、PUT调用块内使用,如下图所示:
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第6张图片
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第7张图片
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第8张图片

  6. 点击“网络视图”PLC_2模块,右键“属性”,选择“常规”界面,在“PROFINET接口[X1]”下拉框内选择“以太网地址”,找到“添加新子网”按钮进行添加新的子网,如下图所示:
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第9张图片

  7. 重复以上操作,新建另一个(远程CPU)项目,IP:192.168.0.10。

  8. 在(主CPU)项目中新建全局DB块:Send(DB1)块和Receive(DB2)块,块内分别新建一个10个Byte的数组(根据GET、PUT功能块设定字节数决定,现测试10个字节);

在(远程CPU)项目中新建全局DB块:Receive(DB1)块和Send(DB2)块,块内分别新建一个10个Byte的数组(根据GET、PUT功能块设定字节数决定,现测试10个字节);

主CPU 远程CPU

Send(DB1)–> PUT指令:向远程CPU写入数据—>Receive(DB1)

Receive(DB2)—>GET指令:从远程CPU读取数据—>Send(DB2)

S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第10张图片

  1. 在(主CPU)Main[OB1]主程序块或者其他FB块内添加GET功能块:
    REQ引脚:上升沿触发动作,使用时钟M0.0(Clock_10Hz),1S内触发10次;
    ID引脚:S7-连接-1属性内本地ID号(W#16#100);
    ADDR_1引脚:写入(P#DB2.DBX0.0 BYTE 10);
    DR_1引脚:receive(DB2);
    NDR引脚:通讯成功;
    ERROR引脚:报警信息;
    STATUS引脚:报警代码;
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第11张图片

点击上图框内显示按钮,设置GET功能块属性:
1、 设置远程CPU IP地址:192.168.0.10;
2、 设置与远程CPU通讯字节长度,现测试为10个字节,可根据这里的设置调整通讯字节长度;
S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第12张图片
S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第13张图片
(该GET功能块只需在主CPU内进行添加即可)

  1. 在(主CPU)Main[OB1]主程序块或者其他FB块内添加PUT功能块:
    REQ引脚:上升沿触发动作,使用时钟M0.0(Clock_10Hz),1S内触发10次;
    ID引脚:S7-连接-1属性内本地ID号(W#16#100);
    ADDR_1引脚:写入(P#DB1.DBX0.0 BYTE 10);
    DR_1引脚:send(DB1);
    NDR引脚:通讯成功;
    ERROR引脚:报警信息;
    STATUS引脚:报警代码;
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第14张图片
    点击上图框内显示按钮,设置PUT功能块属性:
    1、 设置远程CPU IP地址:192.168.0.10;
    2、设置与远程CPU通讯字节长度,现测试为10个字节,可根据这里的设置调整通讯字节长度;
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第15张图片
    S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第16张图片
    (该PUT功能块只需在主CPU内添加即可)

  2. 将两个项目程序分别下载至各自CPU内即可,分别转至在线,打开对应的send DB块与receive DB块,修改主CPU的Send数据,查看远程CPU的receive数据,查看通讯是否正常;

S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯_第17张图片

你可能感兴趣的:(S7-1200(S7-1500)和S7-1200(S7-1500)不同项目S7通讯)