1)ppi协议:西门子内部协议,不公开
2)mpi协议:西门子内部协议,不公开
3)s7协议:西门子内部协议,不公开
4)profibus-dp协议:标准协议,公开
5)uss协议:西门子传动装置的通用串行通讯协议,公开详情请参考相应传动装置的手册
6)modbus-rtu(从站):公开
所有s7和c7都集成了s7通信服务,通过这些服务使用户程序可以读取或写入通信伙伴的数据。s7通信服务为s7系列plc之间、s7系列plc与()和pg/pc之间提供通信服务。
s7通信是专为simatic s7/c7优化设计的,提供简明、强有力的通信服务。
s7-400使用系统功能块(sfb),而s7-300或c7则使用功能块(fb)实现s7通信。
s7通信可以用于profinet、、profibus和mpi。
s7系统的所有设备都能处理下列s7功能:
1)编程、测试、调试和诊断s7-300/400 plc的全部step 7在线功能。
2)存取变量、自动传输数据到hmi系统。
3) s7站之间的数据传输。
4)读写别的s7站的数据,通信伙伴不需编写通信用户程序。
5)控制功能,例如通信伙伴cpu的停止、预热和热再启动。
6)监视功能,例如监视通信伙伴cpu的运行状态。
为了在plc之间传输数据,应在通信的单方或双方用连接表来组态一个s7连接,被组态的连接在站启动时建立并一直保持。可以建立与同一个通信伙伴的多个连接。可以随时访问的通信伙伴的个数受到cpu或cp(通信处理器)可用的连接资源数的限制。需要在s7 -300/400的用户程序中分别调用sfb/fb来实现集成的s7通信功能(见表)。
表用于s7通信数据交换的sfb/fb
编号 | 助记符 | 可传输字节数 | 描述 | ||
s7-400 | 27-300 | s7-400 | 27-300 | ||
sfb 8 | fb 8 | usend | 140 | 160 | 与接收方通信功能( urcv)执行序列无次的快速的
无需确认的数据交换,例如传送操作与维护消息,对方 接收到的数据可能被新的数据覆盖 |
sfb 9 | fb 9 | urcv | |||
sfb 12 | fb 12 | bsend | 64k | 32k | 将数据块安全地传输到通信伙伴,直到通信伙伴的
接收功能( brcv)接收完数据,数据传输才结束 |
sfb 13 | fb 13 | brcv | |||
sfb 14 | fb 14 | get | 400 | 160 | 程序控制读取远方cpu的变量,通信伙伴不需要编
写通信程序 |
sfb 15 | fb 15 | put | 程序控制与变量到远方cpu,通信伙伴不需要编写
通信程序 | ||
sfb 16 | 发送数据和指令格式到远方打印机,仅用于s7-400 |
此外s7-400可以用sfb 19~ 21改变远程设备的运行状态,用sfb 22和sfb 23查询远程设备运行状态。s7-400和s7-300分别用sfc 62和fc 62来查询连接的状态。