n
1.概述
通过以太网可以实现s7-1200与s7-300连接通信。s7-300可以使用带集成口cpu或通信处理器(cp343-1)连接到工业以太网上,它们都提供s7 通信的功能,既可作为客户机,也可以作为服务器,所拥有的连接资源可参见相关产品手册;s7-1200 集成以太网接口,提供s7 通信的功能,只能作为服务器,可以同时建立3 个通信连接。n
下面会用一个实例来描述s7-300 如何与s7-1200建立通信连接。n
192.168.0.8 192.168.0.18n
192.168.0.100n
图2:s7-300与s7-1200 通信原理n
2.硬件需求
• s7-1214c ac/dc/rly
• cpu 319-3 pn/dp
• scalance x204-2
• pg/pcn
3.软件需求
• s7-1200编程软件 step 7 basic v10.5
• s7-300 编程软件 step 7 v5.4 + sp4n
4.组态
4. 1 s7-1200 配置
• 使用step 7 basic 创建项目“coms7300”;n
图3: 创建项目n
• 添加s7-1200 设备 cpu1214c,设置ip 地址192.168.0.18;n
• 在program blocks 下,添加程序块(db1,db2,db3),其中db1和db3为符号db(选择 symbolic access only),db2为绝对地址db(不选择 symbolic access only) , s7 通信只支持绝对地址db 寻址通信;n
图5: 创建绝对地址db2n
• 打开全局db2,输入2个数组类型数据,每个数组有16 个元素;n
图6: 在db2中添加数据n
• 创建两个监视表格(监视表格_1, 监视表格_2) 用来观察db2的实时状态;
• 将程序下载到plc cpu1214c 中。n
4. 3 s7-300 配置
使用step 7 创建 simatic 300 station。n
• 在硬件组态中添加cpu 319-3 pn/dp,设置ip地址 192.168.0.8;n
图7: 硬件组态
• 在网络组态中(netpro)中创建s7连接,首先在打开的netpro中点击 simatic 300 (1) 机架的“cpu 319-3pn/dp”处;
图9: 添加s7连接
• 在相应的输入通信伙伴的ip地址192.168.0.18,点击“address details…”;
图10:输入通信伙伴ip地址 ;
• 在address details 对话框中,将通信伙伴的槽号改为1,确认其tsap 为03.01,点击“ok”,之后,可以将所建立硬件组态和网络连接编译并下载到plc 中。
图11:设置通信伙伴机架和槽号 ;
4. 4 s7-300 plc 编程
• 在step 7 blocks 中创建写数据db1 ( put data)和读数据db3 (get data)数据块;
图12: db1和db2;
• 打开主程序ob1,分别在network1和network2中添加指令fb14 get和 fb15 put,并为其添加背景数据块db14和db15 ;
图13: 选择单边通信指令;
注意:
在选择指令时,要根据使用的产品来确定。如果采用cpu集成的以太网接口建立s7 通信,要采用左侧的指令;如果采用cp 以太网卡建立s7通信,要采用右侧的指令。
图14:在ob1中调用fb14 ;
图15:在ob1中调用fb15 ;
• 创建变量表vat_1监视写数据操作(put);
图16:变量表vat_1 ;
• 创建变量表vat_2监视读数据操作(get);
图17:变量表vat_2 ;
5.调试 s7-1200 与s7-300 plc 通信
• 从s7-300 程序中可知,在m1.0 从0变为1时,读取s7-1200的数据db2.dbb0~db2.dbb15 到s7-300 db3.dbb0~ db3.dbb15中;
图18:s7-300调用get函数读取s7-1200数据
• 从s7-300 程序中可知,在m5.0 从0变为1时,将s7-300的数据db1.dbb0~ db1.dbb15 写入s7-1200 的db2.dbb16~db2.dbb31中;
图19:s7-300调用put函数写入s7-1200数据
6.总结
在使用s7-300与s7-1200 建立s7 通信时,所能建立的最大连接数和通信任务是与s7-300产品的型号相关,如:cpu319-3 pn/dp ,最大可组态的连接数为16,可建立最大通信任务为32(也就是可调用的通信指令的背景数据的总数),每个作业的用户数据最大值与所使用的块类型和通信伙伴有关,put 为212 个字节,get为222个字节。
关键词
s7 协议,s7-1200,s7-300