资源描述
Hauptteiltext,Zweite Ebene,Dritte Ebene,Folientitel,日期:,2024/9/22,文件:,PRO2_09E.,35,SIMATIC S7,Siemens AG 2001.,版权所有,SITRAIN,自动化与驱动培训,基本和扩展,S7,基本和扩展,S7,通信,SIMATIC,中的网络,-SINUMERIK, RCM-TI 505-Other PLC,S7-300,S7-400,M7-400,OPs,SIMATIC S5,PROFIBUS-DP,ET 200B/L,ET 200C,DP/AS-I Link,ASI (,执行器、传感器接口,),AS-I,子模块,传感器和执行器,AS-I ASIC,现场设备,AS-I,电源,工业以太网,PROFIBUS,MPI Network,点对点,PC, OS,PG,单元级,现场级,AS-I,级,Comm. Conf. Standards,SIMATIC,通信服务,Profibus,Ethernet,FMS,DP,MAP 3.0,Open,Communic.,MPI,S7,基本通信,全局数据,S7,扩展通信,SIMATIC S7,通信,ISO,传输,TCP/ISO-on-TCP,FDL,PG,和,HMI,功能,UDP,程序控制,使用,MPI, K-Bus,Profibus,或,工业以太网,程序控制,使用,MPI,或,K-Bus,面向,S7-300/400,的,S7,通信服务,全局数据,基本通信无需组态连接,扩展通信使用组态连接,CPU,的,操作系统,CPU,的 操作系统,循环或,/,和程序控制,使用,MPI,或者,K-Bus,总线,SFC,SFC,SFB,SFB,PG,和,HMI,功能,CPU,的 操作系统,由操作系统控制,使用,MPI, K-Bus, Profibus,和工业以太网,S7,连接使用以太网,PG,连接,使用,MPI,S7-400,S7-300,OP,连接,使用,PROFIBUS,通信各方之间的连接,CP,CPU 1,CP,PROFIBUS,工业,以太网,工业,以太网,MPI,PROFIBUS,工业以太网,CP,CPU 2,S7,连接,使用,MPI,S7,连接,使用,PROFIBUS,空闲连接资源,已占用的连接资源,CPU,FM,CPU,S7-300/400:,MPI,或内部,PROFIBUS-DP-,接口,S7-300/400:,工业以太网,或,PROFIBUS-CP,S7,通信连线资源分配,S7-400:,MPI,或内部,PROFIBUS-DP,FM,CPU,S7-300:,内部,PROFIBUS-DP,FM,CPU,S7-300:,MPI,接口,CP,CPU,S7-CPU,通信特性数据,S7- 300,CPU 312 IFM,连接资源,缺省保留连接用于,PGOP,基本通信,6,112,CPU 314 /314 IFM,12,118,12,118,CPU 315/315 -2 DP,CPU 313,8,114,CPU 316,12,118,30,114,CPU 318 -2 DP,S7- 400,CPU 412-1/412-2,连接资源,预先指定的保留连接用于,PGOP,基本通信,16,11-,CPU 414-1/ -2 / -3,32,11-,CPU 413-1/413-2,16,11-,CPU 416-1/ -2 / -3,64,11-,CPU 417-4,64,11-,SFC,通信,:,概述,使用,MPI,子网或者在一个站内进行数据交换,与,SFB,相比无需组态连接,与对方的连接是动态建立和断开的,可传输多达,76,个字节的数据,可以用于所有,S7-300/400 CPU,在,S7-200,中可通过,PROFIBUS-DP,(,X_GET,,,X_PUT,)读写变量,也可在另外的,S7,项目中找到通信伙伴,SFC,通信,:,块概述,SFC,SFC 65,名称,简介,X_SEND,向,X_RCV,(,Client,)块发送数据的发送块,SFC 66,X_RCV,接收来自,X_SEND,块的数据的接收块,X_GET,从伙伴,PLC,读数据,SFC 67,X_PUT,向伙伴,PLC,写数据,SFC 68,X_ABORT,中断现有连接,SFC 69,I_GET,从伙伴,CPU,读数据,SFC 72,I_PUT,向伙伴,CPU,写数据,SFC 73,I_ABORT,中断与伙伴,CPU,的连接,SFC 74,SFC,通信,: X_GET,(,SFC 67,)块,STL,表示,LAD/FBD,表示,参数分配示例,SFC67 (X_GET),REQ,RET_VAL,BUSY,CONT,DEST_ID,VAR_ADDR,CALL SFC 67,REQ:= I 0.4/,触发器,CONT:= FALSE/,磁盘连接,DEST_ID:= W#16#3/MPI_,地址,VAR_ADDR:= P#M20.0 BYTE 10 /,远程变量,RET_VAL:= MW100/,错误代码,BUSY:= M 4.1/SFC,激活,RD:= P#M0.0 BYTE 10/,本地变量,RD,SFC,通信,: X_PUT,(,SFC 68,)块,STL,表示,LAD/FBD,表示,参数分配示例,SFC68 (X_PUT),REQ,RET_VAL,BUSY,CONT,DEST_ID,VAR_ADDR,CALL SFC 68,REQ:= I 0.5/,触发器,CONT:= FALSE/,磁盘连接,DEST_ID:= W#16#3/MPI_,地址,VAR_ADDR:= P#M20.0 BYTE 10 /,远程变量,SD:= P#M0.0 BYTE 10/,本地变量,RET_VAL:= MW100/,错误代码,BUSY:= M 4.1/SFC,激活,SD,SFC,通信,: X_SEND,(,SFC 65,)块,STL,表示,LAD/FBD,表示,参数分配示例,SFC65 (X_SEND),REQ,RET_VAL,BUSY,CONT,DEST_ID,SD,REQ_ID,CALL SFC 65,REQ:= M4.0/,触发器,CONT:= FALSE/,磁盘连接,DEST_ID:= W#16#4/MPI_,地址,REQ_ID:= DW#16#1/,标识符,SD:= P#M20.0 BYTE 10/,变量,RET_VAL:= MW40/,错误代码,BUSY:= M 4.1/SFC,激活,SFC,通信,: X_RCV,(,SFC 66,)块,STL,表示,LAD/FBD,表示,参数分配示例,SFC66 (X_RSV),EN_DT,RET_VAL,REQ_ID,CALL SFC 66,EN_DT:= TRUE/,触发数据传输,RET_VAL:= MW 50/,错误代码,REQ_ID:= MD52/,作业,ID,NDA:= M40.0/,数据存在,RD:= P#M20.0 BYTE 10/,变量,NDA,RD,SFB,通信,:,概述,使用,MPI,、,K-Bus,、,Profibus,或工业以太网进行数据交换,通过连接表组态连接,通过完全重新启动建立连接并使连接永久存在(即使是在,STOP,模式),用户数据大小可达,64 K,字节,通信服务也可用于控制(停止、启动)通信伙伴,SFB,只存在于,S7-400-CPU,数据可由,S7-300,(,GET/PUT,)读和写,通过一个连接可以处理不同的任务,SFB,通信,:,块一览,SFB/SFC,SFB 8,名称,简述,USEND,向,URCV,(,Client,)块发送数据的块,SFB 9,URCV,接收来自,USEND,的数据的接收块,BSEND,向,BRCV,块发送大批数据的发送块(最多,64K,字节),SFB 12,BRCV,接收大批数据的接收块(最多,64K,字节),SFB 13,GET,从伙伴,PLC,读数据,SFB 14,通信类型,双边,双边,双边,双边,双边,PUT,向伙伴,PLC,写数据,SFB 15,单边,PRINT,向远程打印机发送数据,SFB 16,单边,START,在伙伴机上执行完全重启动,SFB 19,单边,STOP,将伙伴机置为,Stop,状态,SFB 20,单边,RESUME,在伙伴机上执行重启动,SFB 21,单边,STATUS,伙伴机状态扫描,(,RUN/,运行、,STOP/,停止、,start-up/,启动、,hold/,保持),SFB 22,单边,USTATUS,接收伙伴机的状态信息,SFB 23,单边,CONTROL,扫描,S7,连接,+ SFB,的内部状态,SFC 62,-,使用,S7,连接进行单边通信服务,SFB:,- GET- PUT- STOP- START- STATUS,CPU,的操作系统,S7-400,MPI=3,S7-300/400,逻辑,S7,连接(单边或双边),MPI=2,CPU,MPI=2,CPU,MPI=2,1,本地,ID,物理连接,如,MPI,1,使用,S7,连接进行双边通信服务,SFB:,- USEND- URCV- BSEND- BRCV,SFBs,- URCV- USEND- BRCV- BSEND,S7-400,MPI=3,S7-400,逻辑,S7,连接(双边),MPI=2,CPU,MPI=2,CPU,MPI=2,2,本地,ID,物理连接,如,MPI,2,1,1,使用,NETPRO,组态网络,双击,插入,HW,站,双击,双击,组态,S7,连接,插入连接,远程站点,远程,CPU,选择,建立连接属性,编译和下载组态数据,下载,保存和编译,测试连接状态,连接状态,SFB,通信,: GET,(,SFB 14,)块,STL,表示,CALL GET, I_GET /,使用背景,DB,REQ:=I 0.2/,开始,ID:=W#16#1/,连接,No.,NDR:=#NDR_FLAG/,接收新数据,ERROR:= #ERROR_F/error,结束,STATUS:= #STATUS_W/,附加信息,ADDR_1:=P#I 0.0 BYTE 1/1.,远程变量,ADDR_2:=P#I 4.0 WORD 1/2.,远程变量,ADDR_3:=/3.,远程变量,ADDR_4:=/4.,远程变量,RD_1:=P#Q 0.0 BYTE 1/1.,本地变量,RD_2:=P#Q 4.0 WORD 1/2.,本地变量,RD_3:=/3.,本地变量,RD_4:=/4.,本地变量,LAD,表示,DB14,(背景,DB,),SFB14 (GET),EN,ENO,REQ,NDR,ERROR,ID,STATUS,ADDR_1,ADDR_2,ADDR_3,ADDR_4,RD_1,RD_2,RD_3,RD_4,参数分配示例,SFB,通信:,PUT(SFB 15),块,STL,表示,CALL PUT, I_PUT,(背景,DB,),REQ:=I 0.3/,开始,ID:=W#16#1/,连接,No.,DONE:= #DONE_F/,成功的,end,ERROR:= #ERROR_F/,出错的,end,STATUS:= #STATUS_W/,错误信息,ADDR_1:=P#Q 12.0 WORD 1/1.,远程变量,ADDR_2:=/2.,远程变量,ADDR_3:=/3.,远程变量,ADDR_4:=/4.,远程变量,SD_1:=P#I 2.0 WORD 1/1.,本地变量,SD_2:=/2.,本地变量,SD_3:=/3.,本地变量,SD_4:=/4.,本地变量,LAD,表示,DB15,(背景,DB,),SFB15 (PUT),EN,ENO,REQ,DONE,ERROR,ID,STATUS,ADDR_1,ADDR_2,ADDR_3,ADDR_4,SD_1,SD_2,SD_3,SD_4,参数分配示例,SFB,通信,: USEND,(,SFB 8,)块,STL,表示,CALL USEND, I_USEND,(背景,DB,),REQ:= I 0.4/,开始,ID:=W#16#3 /,连接号,R_ID:=DW#16#B1 /,功能块对,DONE:= #DONE_F/,成功结束,ERROR:= #ERROR_F/,结束但有错误,STATUS:= #STATUS_W/,错误信息,SD_1 :=P#DB3.DBX0.0 BYTE 100/1.,本地变量,SD_2 :=P#DB3.DBX100.0 BYTE 100/2.,本地变量,SD_3 :=P#DB3.DBX200.0 BYTE 100/3.,本地变量,SD_4 :=P#DB3.DBX300.0 BYTE 154/4.,本地变量,LAD,表示,DB 8,(背景,DB,),SFB 8 (USEND),EN,ENO,REQ,DONE,ERROR,ID,STATUS,R_ID,SD_1,SD_2,SD_3,SD_4,参数分配示例,SFB,通信,: URCV,(,SFB 9,)块,STL,表示,CALL URCV, I_URCV/,使用背景,DB,EN_R:= I 0.5/,开始,ID:= W#16#3/S7,连接,R_ID:= DW#16#B1/,功能块对,NDR:= #NDR_F/,接收新数据,ERROR:= #ERROR_F/,结束并有错误,STATUS:= #STATUS_W/,错误信息,RD_1:=P#DB3.DBX0.0 BYTE 100 /1.,变量,RD_2:=P#DB3.DBX100.0 BYTE 100 /2.,变量,RD_3:=P#DB3.DBX200.0 BYTE 100 /3.,变量,RD_4:=P#DB3.DBX300.0 BYTE 154 /4.,变量,LAD,表示,DB 9,(背景,DB,),SFB 9 (URCV),EN,ENO,EN_R,NDR,ERROR,ID,STATUS,R_ID,RD_1,RD_2,RD_3,RD_4,参数分配实例,SFB,通信,: BSEND,(,SFB 12,)块,STL,表示,CALL BSEND, I_BSEND/,使用背景,DB,REQ:= I 0.4/,开始,R:= I 0.5/,复位,BSEND,ID:=W#16#3 /S7,连接,R_ID:=DW#16#B2 /,功能块对,DONE:= #DONE_F/,成功结束,ERROR:= #ERROR_F/,结束但有错误,STATUS:= #STATUS_W/,附加信息,SD_1:=P#DB1.DBX0.0 BYTE 40000 /,发送数据,LEN:= #DB_LEN/,数据长度,LAD,表示,DB 12,(背景,DB,),SFB 12 (BSEND),EN,ENO,REQ,DONE,ERROR,R,STATUS,ID,R_ID,SD_1,LEN,参数分配实例,SFB,通信,: BRCV,(,SFB 13,)块,STL,表示,CALL BRCV, I_BRCV/,使用背景,DB,EN_R:= I 0.4/,开始,ID:=W#16#3 /S7,连接,R_ID:=DW#16#B2 /,功能块对,NDR:= #NDR_F/,接收新数据,ERROR:= #ERROR_F/,结束并有错误,STATUS:= #STATUS_W/,附加消息,RD_1:=P#DB2.DBX0.0 BYTE 40000 /,接收邮箱,LEN:= #DB_LEN/,接收端邮箱长度,LAD,表示,DB 13,(背景,DB,),SFB 13 (BRCV),EN,ENO,EN_R,NDR,ERROR,ID,STATUS,R_ID,RD_1,LEN,参数分配实例,SFB,通信,: STOP,(,SFB20,)块,STL,表示,LAD/FBD,表示,CALL “STOP”,“I_STOP” /,背景,DB,REQ:= I 0.0/,开始沿,ID:= W#16#1/,连接号,PI_NAME:= P#M100.0 Byte 9/,参见脚注,IO_STATE:=/,未使用,DONE:= #DONE_F_20 /,成功结束,ERROR:= #ERROR_F_20/,结束但有错误,STATUS:= #STATUS_W_20/,错误信息,DB20,(,背景,DB,),SFB20(STOP),EN,ENO,REQ,DONE,ERROR,ID,STATUS,PI_NAME,IO_STATE,参数分配实例,*,P_PROGRAM,在存储器中起点位置的详细信息,STL,表示,LAD/FBD,表示,DB19,(,背景,DB,),SFB19 (START),EN,ENO,REQ,DONE,ERROR,ID,STATUS,PI_NAME,ARG,IO_STATE,SFB,通信,: START,(,SFB19,)块,*,P_PROGRAM,在存储器中起点位置的详细信息,参数分配实例,CALL “START”,“I_START” /,使用,背景,DB,REQ:= I 0.1/,开始沿,ID:= W#16#1/,连接号,PI_NAME:= P#M100.0 Byte 9/,参见脚注,ARG:=/,未使用,IO_STATE:=/,未使用,DONE:= #DONE_F_20/,成功结束,ERROR:= #ERROR_F_20/,结束但有错误,STATUS:= #STATUS_W_20/,错误信息,SFB,通信,: CONTROL,(,SFC 62,)块,STL,表示,LAD,表示,CALL CONTROL,EN_R:= I 0. 2 /,开始,I_DB:= W#16#F /,背景,DB NO,OFFSET:= W#16#0/,用于多实例,RET_VAL:= MW4 /,错误信息,ERROR:= Q 0.4 /,结束但有错误,STATUS:= MW 4 /,状态信息,I_TYP:= MB 52 /SFB,类型,I_STATE:= MB 53 /SFB,状态,I_CONN:= M 54.0 /,连接状态,I_STATUS:= MW102/SFB,的状态,SFC 62 (CONTROL),EN,ENO,EN_R,RET_VAL,ERROR,I_DB,STATUS,OFFSET,IO_STATE,I_CONN,I_TYP,I_STATE,I_STATUS,参数分配实例,练习,10.1:,组态一个,S7,连接,S7-400,MPI=3,S7-300,逻辑,S7,连接(单边),MPI=2,CPU,MPI=2,CPU,MPI=2,1,本地,ID,MPI=0,PROFIBUS,电缆,MPI,电缆,练习,10.2:,使用,SFB GET/PUT,通信,CALL SFB14,DB14,REQ= I 28.0ID:=W#16#1.CALL SFB 15,DB15,REQ=I 28.1ID:=W#16#1.,.,S7-400,程序,OB 1,PUT,QB 40,IB 0,IW 4,QW 42,IW 30,QW 12,S7-400,S7-300,CPU,MPI=2,CPU,1,GET,练习,10.3:,使用,SFB START/STOP,通信,S7-400,MPI=3,S7-300,逻辑,S7,连接(单边),CALL SFB20,DB20,REQ= I 28.2ID:=W#16#1,PI_NAME:= P#M100.0 Byte 9,CALL SFB 19,DB19,REQ=I 28.3ID:=W#16#1,PI_NAME:= P#M100.0 Byte 9,.,.,S7-400,程序,MPI=2,OB 1,CPU,MPI=2,CPU,MPI=2,1,本地,ID,
展开阅读全文