zoukankan      html  css  js  c++  java
  • 2台S7-1200 的以太网口通信

    S7-1200 的以太网口可以做 S7 通信的服务器端或客户端。S7-1200 支持 S7 单边通信,仅需在客户端单边组态连接和编程,而服务器端只准备好通信的数据就行。

    一、创建一个新项目,新建 S7-1200 命名为服务器端 ,再新建另一个S7-1200站命名为客户端 。

    二、设置IP地址和子网。在CPU属性中单击“添加新子网”,新建子网,写入IP地址,要确定两个CPU在同一个IP地址网段内,两个CPU在同一个子网内。PLC间使用路由器通讯时激活使用路由器功能,要保证路由器地址IP一致。但试验证明不选路由器也可以。

    三、启用客户端的系统时钟存储器,方便后面编程使用

    启用客户端的系统时钟,应用其中的M0.3 2HZ的时钟去自动执行发送任务。系统时钟就相当于不同时基的时钟。TIA中不管3004001200还是1500都有系统存储器位,类似于200的SM0.1/SM0.0。

    客户端和服务器端,在属性中的连接机制中选择“允许来自远程对象的PUT/GET”通信访问。

    四、网络视图中组态S7连接

    进入“网络视图”,可以看到两个已经组态的CPU,在同一个子网内。

    在“网络视图”中,点中左上角的“连接”图标,连接框中选择“S7连接”,然后选中客户端,右键客户端的CPU,选择“添加新的连接”,在创建新连接对话框内,右上角类型,选择S7连接,选择连接对象“服务器端”,不能选择未指定,然后选择“主动建立连接”。本地ID号不用改,每新建一个S7连接后本地ID号会自动更改。

    在中间栏的“连接”条目中,可以看到已经建立的“S7_连接_1”,两个CPU中都自动创建了S7连接,所以S7通信组态完成后,两个CPU都需要重新下载一次。

    点中上面的连接,在“S7_连接_1”的连接属性中查看各参数

    在本地ID中:显示通讯连接的ID 号,这里ID=W#16#100(记住此ID号W#16#100,后面编程会使用)。

    在特殊连接属性中:可以选择是否为主动连接,这里client是主动建立连接。

    在地址详细信息中:定义通讯双方的 TSAP 号,这里不需要修改。

    配置完网络连接,双方都编译存盘并下载。如果通讯连接正常,连接在线状态

    五、创建PUT/GET结构体变量。

    六、创建发送和接收DB

    在客户端,创建一个用于发送和接收的数据块,调用PUTGET参数结构体变量,生成后面编程要用到的管脚参数地址。注意DB数据块的属性中,需要选择非优化块访问(把默认的勾去掉),要对DB块进行编译,编译完成后地址的偏移量才会出现。

    在服务器端,创建一个用于发送和接收的数据块,创建数组,用于发送和接收数据的存放地址。同上,注意数据块的非优化操作。

    七、在客户端调用PUT和GET指令,具体管脚解释见S7通信指令文件。

    不用DB块做数据地址,也可以,如下

    八、编程完毕后要分别下载客户端和服务器端配置。虽然S7通信中的PUT/GET指令只在客户端中调用,但对于在同一项目下的两个1200,在组态S7时都有组态的变化,所以对两个1200的组态都需要下载到各自CPU中。

    可以同时开两个仿真器

    然后监控数据交换

  • 相关阅读:
    [USACO08OCT]Watering Hole
    [USACO08OCT]Watering Hole
    Mininet系列实验(七):Mininet脚本实现控制交换机行为
    IIS与TOMCAT协同工作---在IIS下运行JSP页面
    代码与编程题
    JAVA面试题集
    Jquery测试题
    Java---SSH(MVC)面试题
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
  • 原文地址:https://www.cnblogs.com/laoxiongzhijia/p/13994667.html
Copyright © 2011-2022 走看看