JZGKCHINA
工控技术分享平台
尊重原创 勿抄袭
勿私放其他平台
S7-200 SMART自上市以来,从最初的仅仅支持连接到SMART LINE的集成以太网口,功能逐步加强到令人发指的程度,现在的SMART标配以太网口支持PROFINET、TCP、UDP、Modbus TCP、ISO_on_TCP等,配置扩展模块EM DP01可以作为PROFIBUS-DP从站,CPU集成的RS485接口可以做MODBUS RTU通讯。
01
连接方式
使用S7-200 SMART集成以太网口通常我们可以采用以下方式连接到SIMATIC PCS 7系统下的400H控制器:
1. S7连接
2. MODBUS TCP
3. 共享智能设备(Shared I device)
02
通过S7以太网连接到冗余400H
冗余400H可以创建与S7-200 SMART的两个S7连接,如图中的S7_Connection 1与S7_Connection 2,但是这两个连接中只有一个可以在400H CPU当前扫描周期内在线,因此需要判断冗余CPU当前是哪个为主站(MSTR)而决定使用哪个连接,西门子提供免费功能块来指示400H的主从和运行状态,用户需要编程利用主从标志位切换两对“Put”和“Get”的S7连接ID号。
使用S7的方式连接到S7-200 SMART,SMART侧无需编程,提供IP地址和数据交换数据地址表即可,但对SMART通讯数据区可以提供以下建议:
- 使用连续的V区,不要毫无规划的提供一些分布在I、Q、M、V区的零碎数据地址交换表格
- 所有的布尔信号打包成DWORD
- 如果需要节约通讯资源可以将浮点数转换成整数,如123.45可以转换成12345,这样可以保证两位小数点的精度,但是需要注意数值可能大到如12345.67这样的数值的时候,就做不到2位小数点精度了,因为已经超出了整数最大的范围。对于S7通讯来说,通常通讯速度较快,不是很在乎非要将浮点转成整型这点通讯负荷。
- 留一个心跳测试的脉冲布尔量或者连续变化的整数用于判断S7通讯的健康状态。400H连续给S7-200 SMART发送脉冲,SMART接到后返送给400H,400H侧如果收到的心跳位不再产生高低沿的变化就可以判断SMART已经离线。
在数据交换表如果能做到以上几点,就说明你在CPU之间通讯已经非常专业和有经验了。
03
通过MODBUS TCP连接到冗余400H
400H侧做为CLIENT,SMART为SERVER端可以使用MODBUS TCP的方式连接S7-200 SMART到PCS 7系统,SIEMENS SIMATIC PCS 7可以提供400H集成PN口或者使用CP443-1 的方式冗余连接到标准控制器的Modbus TCP程序库,但并非免费提供。
PCS 7会提供一个向导来配置自动生成MODBUS TCP功能块调用所需要配置的参数和数据区DB,PCS 7中的MODBUS TCP通讯方式不仅支持冗余400H连接到单控制器,还支持冗余CPU连接到冗余CPU(包括第三方冗余控制器),另外需要注意的事,向导中需要选择400H的MODBUS TCP的物理以太网口是来自集成PN口还是CP443-1,两者调用的功能块不同,且使用的授权的订货号也不相同。
04
通过共享智能设备(Shared I device)连接到冗余400H
S7-200 SMART在V2.5后,开始可以作为PROFINET智能设备挂载到400H的PROFINET总线下。智能设备大家都听过,那共享设备是什么呢?其实非常简单,400H的硬件组态时会生成两条PN总线,S7-200 GSD挂载到第一条PN总线后,选中对象CTRL C然后CTRL V粘贴到第二条总线即形成了共享智能设备。
S7-200 SMART作为PN I/O子站挂载到400H下,以读写I/O的方式与SMART通讯,实时性非常高,但是这种方式会占用CPU双倍的I/O资源,如S7-200 SMART通过MicroWin设置输入输出100字节的数据交换,挂载到400H假设起始地址为800,那么将占用400H的IB800-999和QB800~999共200字节的输入输出。这个方式会快速的消耗掉冗余CPU的IO负载资源,因此不适合大量的交换数据,另外用户仍需编程判断读取哪段I/O地址作为当前数据。
05
三种方式优劣势对比
作 者 简 介
宁超
剑指工控S7-200 SMART专家