S7-1200CPU通电后,它在开始执行循环用户程序之前首先执行启动程序。CPU支持以下组态选项:
●不重新启动(保持为STOP模式)
●暖启动-RUN模式
●暖启动-断电前的模式

一:启动模式设置
S7-1200启动模式可以在“CPU属性-常规-启动”进行设置。如下图1所示:

图1.CPU启动选项设置

二:启动时CPU执行的操作
启动特性:
在暖启动期间,所有非保持性位存储器内容都将删除并且非保持性数据块内容将复位为来自装载存储器的起始值。将保留保持性位存储器和保持性DB中的内容。
不管选择哪种启动模式,已编写的所有启动OB都会执行。
不执行任何基于时间的程序。
中断控制的程序的执行仅限于:OB82(诊断中断)
禁用模块上的输出。
不更新过程映像;可以对输入进行直接I/O访问。
如下图2所示:

图2.启动时CPU执行的操作
三:常见问题
1.哪些情况会导致S7-1200CPU无法启动?
以下的情况会导致S7-1200CPU断电后再上电无法启动:
检测到的某些错误会阻止CPU进入RUN模式;
在“CPU属性-常规-启动”设置为不重新启动(保持为STOP模式);
暖启动-断电前的模式:CPU组态为“暖启动-断电前的模式”,且在发生掉电或故障时,CPU处于STOP模式,则CPU将在上电时进入STOP模式并保持STOP模式;
在CPU设备组态的属性里选择了“允许通过用户程序重新组态设备”。而WRREC指令在启动OB中传送完控制数据记录后组态控制才会生效。如果已启用组态控制但CPU不具有控制数据记录,则在退出STARTUP模式时会转到STOP模式。
2.为什么CPU断电后,再上电CPU没有报任何错误,但CPU却运行不起来?
答:原因是CPU没有硬件开关用于启停控制,CPU上电后的启停由CPU属性中的“启动”选项来决定(如图1所示)。其默认设置为“暖启动-断电前的操作模式”,此时如果是断电前CPU因故障停止,那么再上电后即使没有故障,CPU也会延续断电前的状态,保持STOP模式。或者设置成“不重新启动”,则CPU上电后直接进入STOP模式。如果在以上两种模式下,CPU无法启动,需要通过博途软件在线功能启动CPU。
所以必须将启动选项设置为“暖启动-RUN模式”,才能保证在没有错误的情况下,CPU上电后直接进入RUN模式。

3.CPU属性的"启动"特性中,设置的"比较预设与实际组态匹配",这里的"匹配"或者"兼容"是什么含义?
答:匹配(兼容性)是指与当前的模块的输入和输出数量相匹配,而且电气和功能特性也相匹配。兼容模块必须能够完全替换已组态的模块;功能性可以更多,但不能比替换的模块少。
举例说明,16个通道的数字量输入模块可作为8个通道的数字量输入模块的兼容替换模块。反之则不兼容;16个通道的晶体管数字量输出模块不可作为16个通道的继电器数字量输出模块的兼容替换模块。
所以,如果设置“仅在兼容时,才启动CPU”并且插入组态的模块兼容时,CPU启动;如果插入的模块不兼容,则CPU无法启动。
如果选择“即使不兼容也启动CPU”的设置,此时如果插槽中插入一个模拟量输出模块或不插入任何模块,则与实际的16个通道数字量输入的信号模块完全不兼容。虽然无法访问所组态的输入,但CPU仍可启动。

4.为什么已经将"启动"选项设置为"暖启动-RUN模式"下载组态后,CPU无法启动,而ERROR灯也不报错?
答:这种情况下查看诊断缓冲区,通常可以发现报错:“没有可用于中央设备选件处理的数据记录或无效”,如图3所示。造成这个错误的原因是因为,CPU属性的“组态控制”中已激活“允许通过用户程序重新组态设备”,如图4所示,但启动OB未传送一个有效的组态数据记录,则CPU从启动模式返回到STOP模式。CPU在这种情况下不会初始化集中式I/O,导致启动失败。如果用户并没有使用组态控制,一定确认取消激活“允许通过用户程序重新组态设备”,以免造成不必要的错误。

图3组态控制造成的错误

图4组态控制配置
摘自:西门子S7-1200EasyPlus手册
免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系