【图】西门子s7-1200 s7通信特点及连接资源的方法

作者:老电工时间:2015-12-02 22:32:58

西门子s7-1200 s7通信特点及连接资源的方法

一、西门子s7-1200 S7通讯特点

1)S7协议是西门子专有协议,广泛用于各种通讯服务,例如:PG通讯,OP通讯,S7通讯等;

2)S7协议独立于西门子各种通讯总线,可以在MPI,PROFIBUS,Ethernet上运行;

3)S7协议是由多种应用层协议组成,或者说S7协议是一个多种协议的集合;

4)S7通讯在以太网上的底层协议根据应用的不同使用ISO或ISO on TCP。

二、S7-1200 S7 连接资源

软件:

1)PORTAL V10.5软件,只支持 S7 通信的服务器(Sever)端。

2)TIA PORTAIL V11软件,支持 S7 通信的服务器与客户端。

3)TIA PORTAIL V12软件,支持 S7 通信的服务器与客户端。

硬件:

1)硬件版本 V1.0,3个用于 S7 通信的服务器端连接。

2)硬件版本 V2.0或更高,支持3个用于 S7 通信的服务器端连接,8个用于S7 通信的客户端连接。 

三、 关于TSAP

当建立了一个连接时,模块中专用于连接的资源会分配给该连接。 该分配要求连接资源可以被寻址。 TSAP(Transport Service Access Point,传输服务访问点 ) 是通过连接资源或(在使用固件版本为 V2.0 或更高的 S7-1200 CPU 的情况下)SIMATIC-ACC(SIMATIC Application Controlled Communication,SIMATIC 应用控制通信) 而形成的资源的地址。

S7-1200 CPU的TSAP组态取决于相关固件和远程连接伙伴。当S7-1200 CPU与S7-200/300/400 CPU进行连接时,S7-1200 CPU也会使用一个包含连接资源的TSAP组态。

四、S7通信编程

1)使用 STEP7 V11/V12,S7-1200的PROFINET 通信口仅支持 S7 单边通信,仅需在客户端单边组态连接和编程,而服务器端只准备好通信的数据就行。

2)S7-1200 CPU的S7通信使用PUT, GET指令

3)S7-1200 CPU 不能访问远程 S7-1200 CPU 的优化 DB 中的DB 变量。

4)必须确保PUT, GET指令的ADDR_x与RD_x或SD_x参数的长度和数据类型相匹配。

五、PUT/GET指令

1)对于 GET: 从下次扫描开始,远程 CPU 会将请求的数据返回接收区 (RD_x)。 当读操作顺利完成时,NDR 参数设置为 1。只有在完成前一个操作后,才能开始新的操作。

2)对于 PUT: 本地 CPU 开始将数据发送 (SD_x) 到远程 CPU 中的存储位置(ADDR_x)。 写操作顺利完成后,远程 CPU 返回执行确认。 然后,PUT 指令的DONE 参数设置为 1。只有在完成前一个操作后,才能开始新的写操作。

注意:

1) 从以上可以看出S7通讯与TCP通信的不同, TCP通信如果接收方没有正常接收,发送方DONE位仍会置1,即发送方不知道通信是否真正成功,这也是为什么说S7通信比TCP通信安全的原因。

2) 为确保数据的一致性,应始终在访问数据或启动另一读/写操作前评估已经完成的操作(对于 GET 评估 NDR = 1;对于 PUT 评估 DONE = 1)。

六、S7-1200之间S7通信故障测试

如果访问远程优化的DB块,指令执行后会报错,状态位故障代码8。如果是不存在的DB块或者如果远程1200的DB块有效长度不满足本地ADD_R引脚定义,也报同样故障。

七、S7-1200 S7 通讯数据长度

通过GET指令可接收的字节总数或者通过PUT指令可发送的字节总数有一定的限制。

S7-1200 S7 通讯数据长度

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > 西门子plc