1.带电插拔模块时,确保不造成模块的硬件损坏;
2.带电插拔模块时,CPU不停机,并产生报警;
3.带电插拔模块时,该模块I/O通道的数值保持不变,而其他模块的运行不受影响;
4.带电插拔模块时,CPU中触发中断组织块或通过DP诊断程序块,得到模块拔出或插入的事件信息,在用户程序或中断组织块OB**中进行相应控制逻辑和I/O通道的处理;
二.SIEMENS的PLC控制系统中:
1. S7-200系列PLC不支持热插拔功能;
2. S7-300 CPU直接带I/O模块的方式不支持热插拔;
3. S7-300作为PROFIBUS DP主站下挂DP从站ET200M、ET200S、ET200iS,支持热插拔功能;(ET200M作从站时需要使用有源总线底板,如下说明)
注:采用S7-300作为主站的软冗余系统无法实现热插拔全部功能,不具备以上所列第3,4条目中的功能。当您将ET200M从站上的模块拔出时,CPU 不停机,主CPU、备用CPU上的SF灯亮,BUSF灯闪烁,ET200M从站上的2块IM153-2模块的SF灯亮,BF灯闪烁,该ET200M从站上所有模块的I/O值被清0,S7-300主站失去对该ET200M从站的控制能力。当您再次将模块插入到ET200M站上时,系统从主CPU切换到备用 CPU,SF、BUSF、BF灯熄灭,软冗余系统重新回到正常运行状态。
若要在软冗余系统中实现热插拔的4项功能,必须使用S7-400作为软冗余系统的主站。
4. S7-400作为PROFIBUS DP主站下挂DP从站ET200M、ET200S、ET200iS,支持热插拔功能;(ET200M作从站时需要使用有源总线底板,如下说明)
5.S7-400 CPU直接带I/O模块的方式支持热插拔。
S7-400系统由于很好的电磁兼容性和抗冲击、耐震动性能,因而能最大限度的满足各种工业标准,模板能够带电插、拔,当S7-400机架上插入或取出模板时,都会在CPU中产生一个中断信息,供客户在用户程序中对模板更换的动作进行相应的处理。
三. ET200M的有源总线底板配置与说明:
ET200M是在工业现场经常使用的PROFIBUS DP分布式从站,一个ET200M从站一般由导轨(S7-300系列通用导轨)、IM153接口模块、若干块S7-300系列的模块(PS电源模块、I/O模块、CP通讯模块、FM功能模块)组成:
这样的ET200M从站是不支持热插拔功能的。为了实现ET200M从站的热插拔功能,我们需要对ET200M的硬件配置进行一些调整,通用导轨更换成带有有源总线模板的导轨,下图向您展示了1个有源总线导轨和5个有源总线模板组装后的情形:
下图比对了有源总线导轨与S7-300通用导轨的区别
下图展示有源总线导轨、有源总线模板和2个IM153-2接口模块组装后的情形:
"Module change during operation" (or "Insert/Remove module") 功能使得你能够在系统下运行过程中,在ET200M站上带电拔出或插入模板,即热插拔功能。
硬件要求:
使用普通的S7-300导轨和U型总线连接器是不能实现热插拔功能的,您必须购买有源总线底板,才能实现该功能。另外,您在配置时,必须使用MLFB 6ES7 153-1AA02-0XB0版本以上的接口模块,因为它支持DP协议的DPV1版本,而MLFB IM153-1AA00-0XB0模块是不支持该功能的。目前您能够购买到的IM153接口模块都支持热插拔,只有2-3年以前的IM153接口模块不支持热插拔。
注意:
如果想知道你的模块是否支持热插拔功能,你可以在STEP7的HW Config硬件组态窗口中的产品目录里选择对应模块,阅读窗口右下角对该模块功能的描述.
软件要求:必须在STEP7 5.1版本以上进行配置;
如果您采用S7-400 CPU或S7-400 CP作为DP主站,那么您可以直接在IM153的属性窗口的"Operating Parameters"标签页里配置热插拔功能。 如下图所示:
关于ET200M站
关于ET200M站"Module change during operation"(运行中更换模块)功能实现的说明:
STEP1:在STEP7的硬件组态窗口的PROFIBUS DP目录中选择相应IM153模块,可以看出该模块支持“module exchange in opration”(热插拔);
STEP2:将IM153模块拖到PROFIBUS总线上;
STEP3:选择I/O模块,插入到ET200M站的各个槽位中;
STEP4:双击ET200M站,打开属性窗口,选中“Replace modules during operation“(热插拔)选项;
STEP5:属性窗口中提供了ET200M站热插拔功能所需的有源总线导轨的订货号;
STEP6:属性窗口中提供了该型号IM153,插入的I/O模块对应使用的有源总线底板的订货号;
除了以上的硬件组态之外,还要向S7-400中下载OB82、OB83、OB84、OB85、OB86、OB87、OB121、OB122等组织块。当ET200M从站上进行模块的热插拔时,中断组织块OB83 ,OB85,OB122被调用。
如果你采用S7-300 CPU 或 CP 342-5作为DP主站,那么您只能够通过安装GSD文件的方式将IM153模块组态成DP从站,并双击IM153,打开它的属性窗口,进行设置。否则您在STEP7的硬件组态窗口中直接将PROFIBUS DP目录ET200M文件夹下IM153模块挂在PROFIBUS总线上,如下图:
从上图可以看出,当你从右侧的PROFIBUS DP树型目录中将IM153-2模块拖到PROFIBUS总线上后,双击点开IM153的属性,“Repalce modules during operation”(热插拔功能)选项为灰色,所以在这种方式下,无法实现热插拔的全部功能,只能实现第1、2两条,不能实现第3、4条功能。
添加IM153-2模块到PROFIBUS总线上,设置热插拔选项
设置IM153-1模块的热插拔功能选项
除了以上的硬件配置之外,还要向S7-300的CPU中下载OB82、OB86、OB121、OB122等组织块,才能保证当您在ET200M站上进行模块热插拔时,S7-300的CPU保持运行,而ET200M站上其他模块的工作不受影响。同时,当您进行ET200M站上模块的拔出或插入,系统都会调用 OB82、OB86,您可以获取OB86和OB82中的参数返回值,得知什么时间是哪一个主站下的哪一个从站上的模块被插拔, 您可以根据系统控制逻辑的需要,在组织块OB82,OB86中编写用户程序,调整I、O的数值,确保进行模块热插拔时,生产机构处于安全运行状态。
您可以在S7-300的用户程序中循环调用SFC13(DP总线诊断功能块),不断获取DP网络的诊断信息,当ET200M从站上进行模块的热插拔时,可以从SFC13的返回数据(在DB块中)获取插拔模块的信息,在用户程序中对返回的诊断信息进行判断、评估后,进行相应的逻辑控制和I/O处理,使生产机构处于安全运行状态;
如果您在ET200M站中使用了参数化的模块(如FM354,CP340等非输入输出的模块),在DP主站通电初始化过程中会对这些模板进行参数化和配置。当您带电拔掉可参数化的模块,再插入后,模块原有的参数就会丢失。除非重新启动DP主站,在主站进行初始化过程中,对这些模块在进行一次参数化和配置,否则这类模块在被拔掉,再插入后,只能够以它的默认参数运行。