太原西门子一级代理
上海浔之漫智控技术公司在经营活动中精益求精,具备如下业务优势:
SIEMENS可编程控制器
长期低价销售西门子PLC,200,300,400,1200,西门子PLC附件,西门子电机,西门子人机界面,西门子变频器,西门子数控伺服,西门子总线电缆现货供应,欢迎来电咨询系列产品,折扣低,货期准时,并且备有大量库存.长期有效
欢迎您前来询价.100分的服务.100分的质量.100分的售后.100分的发货速度
您的选择您的支持是我的动力! ————致我亲爱的客户!
价格波动,请来电咨询
图13 S7-300 CPU通信指令库
库中提供了下列通信功能块:
´> FB 65 "TCON",用于建立连接,连接时需要UDT65来提供参数
> FB 66 "TDISCON",用于终止连接
> FB 63 "TSEND",用于发送数据到S7站点、S5站点、PC站或者第三方设备
> FB 64 "TRCV" 用于从S7站点、S5站点、PC站或者第三方设备接收数据
要通过CPU 的 集成PN 接口实现开放的ISO on TCP通信,不能在Netpro网络组态中直接建立连接,必须通过程序每个连接的参数。用于通信的FB标准功能块,请参见附件提供的例程 "Sample_1 ( 50 KB ) " 或参考下载中心文档《A0284 使用西门子PLC集成的PN口实现S5 兼容通信使用入门》提供的例程。下载链接:80490650
从附件提供的例程 "Sample_1 ( 50 KB ) " 中将把需要的程序块拷贝到新建的项目中,包括:
> UDT 65 "TCON_PAR",存放用户通信参数
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65内通信对象参数
> FC21, 被FB420调用
随后,使用通信功能块 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的编写。
4.1创建新项目
1、打开STEP7,新建一个项目
2、在项目中插入一个SIMATIC 300的站
3、组态硬件,插入一个CPU317-2PN/DP的CPU,并为PN接口分配IP地址“192.168.0.3",如图14所示。同时,在CPU的“Cycle/Clock Memory"属性页中MB0为时钟存储器,在程序中可以使用M0.3(2Hz 的时钟脉冲)去自动激活发送任务,如图15所示。
图14为PN接口分配IP地址
图15设置时钟存储器字节
4.2编写通信程序
1、从样例程序中拷贝通信所需的块
从附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21与UDT65程序块拷贝到新创建的项目中,如图16所示。
图 16
2、生成数据块
在程序中创建一个DB块,块号不限(本例为DB101),在块中建立变量DB_VAR,类型为UDT65,如图17所示。
图17
3、生成并调用FB块
首成一个FB块(本例为FB400),在FB400静态变量区建立一个结构“T_TSAP“,包含如下变量,并为变量分配初始值,如图18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有两个前导字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP规定)和 0x02(CPU槽号)
2) LOC_TSAP(STRING14)= 本地用户定义的ASCII字符'PLC_1' (注意要与S7-1200侧设置保持*)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用两个前导符。
4) REM_TSAP (STRING16)= 远程用户定义的ASCII字符'PLC_1' (注意要与S7-1200侧设置保持*)。
图18
然后在生成的FB400中调用FB420,如图19所示。
图19
其中参数的含义如下:
1)ID: 连接ID,与S7-1200里的设置保持*
2)DEV_ID:用于本PLC型号(注意不是通信对方)
DEV_ID = B#16#1本PLC型号为 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型号为CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型号为CPU319-3PN/DP
DEV_ID = B#16#5本PLC型号为CPU41x-3PN/DP
3)ACTIVE: 主动或是被动建立连接,通信双方必须一个主动,一个被动,本例中S7-300侧为被动方。
4)T_TSAP: 静态变量区的结构变量,用于ISO ON TCP 通信的TSAP地址
5)IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址,即S7-1200的IP地址192.168.0.2
6)CON_DB: 用UDT65生成的变量,即DB101
4、在OB1中调用发送和接收功能块
在OB1中先调用FB400功能块,为其背景数据块DB400,如图20所示。
图20
然后再在OB1中依次调用通信功能块FB65、FB64、FB63、FB66。其中发送和接收功能块FB64、FB63的数据区都为DB3,建立DB3如图21所示。关于块的使用请参考STEP7的在线帮助或相关文档说明。