亳州西门子PLC代理商
网络组态
组态完2套系统的硬件模块后,分别进行下载,点击NetworkConfigration按钮,打开系统的网络组态窗口NetPro,选中CPU314,如下图:
在窗口的左下部分点击鼠标右键,插入一个新的网络链接,并设定链接类型为ISO-on-TCP connection 或 TCPconnection或 UDP connection 或 ISO Transport connection,如下图:
点击OK后,弹出链接属性窗口,使用该窗口的默认值,并根据该对话框右侧信息进行后面程序的块参数设定:
当2套系统之间的链接建立完成后,用鼠标选中图标中的CPU,分别进行下载,这里略去CPU314C-2DP的下载图示:
三、 程序编程
到此为止,系统的硬件组态和网络配置已经完成。下面进行系统的软件编制,在SIMATICManager界面中,分别在CPU314C-2PTP、CPU314C-2DP中插入OB35定时中断程序块和数据块DB1,DB2,并在两个OB35中调用FC5(AG_Send)和FC6(AG_Recv)程序块,如下图:
创建DB1、DB2数据块,如下图:
2套控制程序已经编制完成,分别下载到CPU当中,将CPU状态切换至运行状态,就可以实现S7-300之间的以太网通讯了。
如下界面说明了将CPU314C-2DP 的DB1中的数据发送到CPU314C-2PTP 的DB2中的监视界面:
a. 选择Data View,切换到数据监视状态:
b. CPU314C-2DP 的DB1中发送出去的数据:
c. CPU314C-2PTP 的DB2中接收到的数据
S7-1200新增了时间中断,又称为日时钟中断(Time of day)。2015年的系统手册和Easy PlusV3.2都没有时间中断的介绍。从在线帮助可知有关的指令和300/400的差不多。主要的区别是其参数设置指令SET_TINTL新增了一个参数ACTIVATE,它为1时该指令激活时间中断。为0时和300/400一样,需要调用指令ACT_TINT来激活时间中断。开始的时候我将ACTIVATE设置为1,QRY_TINT指令读取的状态字正确,其第2位为1,表示中断已被激活。死活不能调用OB10。折腾了一个晚上,早上醒来突然想到试一下300/400的方案,还是用ACT_TINT来激活时间中断,一试就成功了! 希望SET_TINTL指令激活中断的功能能正常使用,使程序得到简 |
西门子S7的plc需要加一块以太网的通讯模块如:CP343-1是S7-300的以太网通讯模块,在STep7中要对模块进行组态和设置IP地址。在上位机中需要安装一个西门子的通讯软件叫COMLS7的东东,进行设置以下即可。我用WinCC和S7-300通讯,没问题!
TCP/IP只是一种传输层/网络层的网络协议,在它之上可以有多种应用层的通讯方式
我研究了一段时间,发现可以在任何操作系统下和S7系列PLC进行以太网通讯.不需要专用网卡,不需要授权,真正的底层通讯,其实也不复杂.
我用的是VB调用Socket API.当然你用Winsock控件也可以.在Unix/Linux下面用C就可以访问Socket了.
设置:
协议:TCP,端口号:102,IP:你组态的地址.计算机为TCP客户端.
通讯:
发送连接请求,三次握手建立TCP连接,
还要进行一次SIEMENS的软件握手,其实就是...
这样就可以通讯啦.你的网络编程应该很好.不能用阻塞方式,否则容易出问题.
下位安装以太网模块(341/441)上位安装SIMENTIC NET,不一定需要CP1613,普通网卡就可!如果使用WINCC,不需要任何授权,如果采用S7或opc协议,则需要授权!
S7 PLC与 上位机之间可以采用TCP/IP通讯,设置一下IP就可以,需要一个以太网交换机