关于Step7-1200与S7-300的以太⽹TCP及ISOonTCP通信
S7-1200与S7-300 的以太⽹TCP 及ISO on TCP通信
显⽰订货号
1.概述
1.1 S7-1200 的PROFINET 通信⼝
S7-1200 CPU 本体上集成了⼀个PROFINET 通信⼝,⽀持以太⽹和基于TCP/IP 的通信标准。使⽤这个通信⼝可以实现S7-1200 CPU 与编程设备的通信,与HMI触摸屏的通信,以及与其它CPU 之间的通信。这个PROFINET 物理接⼝是⽀持
10/100Mb/s的RJ45⼝,⽀持电缆交叉⾃适应,因此⼀个标准的或是交叉的以太⽹线都可以⽤于这个接⼝。
1.2 S7-1200⽀持的协议和最⼤的连接资源
S7-1200 CPU 的PROFINET 通信⼝⽀持以下通信协议及服务
TCP
ISO on TCP ( RCF 1006 )
S7 通信(服务器端)
通信⼝所⽀持的最⼤通信连接数
S7-1200 CPU PROFINET 通信⼝所⽀持的最⼤通信连接数如下:
3个连接⽤于HMI (触摸屏) 与CPU 的通信
1个连接⽤于编程设备(PG)与CPU 的通信
8个连接⽤于Open IE ( TCP, ISO on TCP) 的编程通信,使⽤T-block 指令来实现
3个连接⽤于S7 通信的服务器端连接,可以实现与S7-200,S7-300以及S7-400 的以太⽹S7 通信
S7-1200 CPU可以同时⽀持以上15个通信连接,这些连接数是固定不变的,不能⾃定义。TCP(Transport Connection Protocol)
TCP是由RFC 793描述的标准协议,可以在通信对象间建⽴稳定、安全的服务连接。如果数据⽤TCP协议来传输,传输的形式是数据流,没有传输长度及信息帧的起始、结束信息。在以数据流的⽅式传输时接收⽅不知道⼀条信息的结束和下⼀条信息的开始。因此,发送⽅必须确定信息的结构让接收⽅能够识别。在多数情况下TCP应⽤了IP (Internet protocol) ,也就
是“TCP/IP 协议”,它位于ISO-OSI 参考模型的第四层。
协议的特点:
与硬件绑定的⾼效通信协议
适合传输中等到⼤量的数据(<=8192 bytes)
为⼤多数设备应⽤提供
–错误恢复
–流控制
–可靠性
⼀个基于连接的协议
可以灵活的与⽀持TCP协议的第三⽅设备通信
具有路由兼容性
只可使⽤静态数据长度
有确认机制
使⽤端⼝号进⾏应⽤寻址
⼤多数应⽤协议,如TELNET、FTP都使⽤TCP
使⽤SEND/RECEIVE 编程接⼝进⾏数据管理需要编程来实现
1.3 硬件需求和软件需求
硬件:
tcp ip协议下载安装①S7-1200 CPU
②S7-300 CPU + CP343-1(⽀持S7 Client)
③PC(带以太⽹卡)
④TP以太⽹电缆
软件:
①STEP 7 Basic V10.5
②STEP 7 V5.4
2. ISO on TCP 通信
S7-1200 CPU 与S7-300/400 之间通过ISO on TCP 通信,需要在双⽅都建⽴连接,连接对象选择“Unspecified”。
所完成的通信任务为:
①S7-1200将DB3⾥的100个字节发送到S7-300的DB2中
②S7-300将输⼊数据IB0发送给S7-1200的输出数据区QB0。
2.1 S7-1200 CPU 的组态编程
组态编程过程与S7-1200 CPU 之间的通信基本相似(见6.3 ),这⾥简单描述⼀下步骤:①使⽤STEP 7 Basic V10.5 软件新建⼀个项⽬
在STEP 7 Basic 的“Portal View”中选择“Create new project”创建⼀个新项⽬
②添加新设备
然后进⼊“Project view”,在“Project tree”下双击“Add new device”,在对话框中选择所使⽤的S7-1200 CPU添加到机架上,命名为PLC_1。
③为PROFINET 通信⼝分配以太⽹地址
在“Device View”中点击CPU 上代表PROFINET 通信⼝的绿⾊⼩⽅块,在下⽅会出现PROFINET 接⼝的属性,在“Ethernet addresses”下分配IP 地址为192.168.0.1 ,⼦⽹掩码为255.255.255.0。
④在S7-1200 CPU 中调⽤“TSEND_C”通信指令并配置连接参数和块参数
在主程序中调⽤发送通信指令,进⼊“Project tree”> “PLC_1”>“Program blocks”>“Main”主程序中,从右
侧窗⼝“Instructions”>“Extended Instructions”>“Communications”下调⽤“TSEND_C”指令,并选择“Single Instance”⽣成背景DB块。然后单击指令块下⽅的“下箭头”,使指令展开显⽰所有接⼝参数。
然后,创建并定义发送数据区DB 块。通过“Project tree”>“PLC_1”> “Program blocks”>“Add new block”,选择“Data block”创建DB 块,选择绝对寻址,点击“OK”键,定义发送数据区为100个字节的数组。
根据所使⽤的参数创建符号表,如图1所⽰。
配置连接参数,如图2所⽰。
配置块接⼝参数,如图3所⽰。
图1 创建所使⽤参数的符号表图PLC tag
图2 配置连接参数
图3 配置TSEND_C 块参数
⑤调⽤“TRCV”通信指令并配置块参数如图6 47所⽰。
因为与发送使⽤的是同⼀连接,所以使⽤的是不带连接的发送指令“TRCV”,连接“ID”使⽤的也是“TSEND_C”中的“Connection ID”号,如图4所⽰。
图4 配置T_RCV 块参数
2.2 S7-300 CPU 的ISO on TCP通信的组态编程
①使⽤STEP 7 软件新建⼀个项⽬并进⾏硬件组态
创建完新项⽬,在项⽬的窗⼝下,右键菜单⾥,选择“Insert New Object”>“SIMATIC 300 Station”,插⼊⼀个S7-300 站。
为了编程⽅便,我们使⽤时钟脉冲激活通信任务,在CPU的“Properties”>“Cycle/Clock Memory”中设置,如图5所⽰。
图5 设置时钟脉冲
每⼀个时钟位都按照不同的周期/频率在0和1之间切换变化,见表1。
表1:时钟位频率
位76543210周期(S)201. Jun10.80.50.40.20.1频率(Hz)0.50.6251Jan 25202. Mai510
②配置以太⽹模块
进⼊“HW Config”中,组态所使⽤的CPU 及“CP343-1”模板。并新建以态⽹Ethernet (1) ,
配置“CP343-1”模板IP 地址为:192.168.0.2,⼦⽹掩码为:255.255.255.0 。如图6所⽰。配置完硬件组态及属性,编译存盘并下载所有硬件组态。
图6 S7-300 硬件配置
③⽹络组态
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论