工程师:张工,您好!这里是西门子热线!
客户:您好,您贵姓?
工程师:免贵姓吕,您刚在这边登记过一个Simotion D*不能自动启动的问题,具体是什么样的?
客户:我正在现场调试一台Simotion,今天早上来上电后,CPU不自动运行。
工程师:哦,是重新上电时不自动运行吧?
客户:是的。只要是断电了,再上电就不运行。CPU的系统变量_startupdata.operationMode已经设为run了,执行系统的systemfaulttask里也加了5个空程序了。
工程师:上电后,将CPU切为RUN,之后如果再进行程序的下载、操作模式切换等操作,是不是都正常?
客户:是的,就上电的时候不正常。
工程师:您所描述的现象可能是正常的。在SIMOTION D*中有两个CPU,一个是Simotion的CPU,另一个是集成的CU320的CPU。而重新上电时,两个CPU启动时所花费的时间不一致,一般是Simotion的CPU先启动,它要读取CU320的数据时,而CU320还未启动完成,就会出现SIMOTION无法自动切换到RUN状态的现象。
客户:那应该怎么办?
工程师:您可以尝试在SIMOTION的执行系统execution system的启动任务startupTask中加一段程序,程序内容是“等待20秒”,程序语言可以根据个人习惯。换句话说,就是人为的让SIMOTION的CPU延时20秒后再运行,以保证CU320能够启动起来。至于具体的等待时间,您可以根据实际情况调整。
客户:这个我可以去试一下,不过我还是觉得这么做有点怪怪的,不像是工程师的做法。
工程师:当然还有其他选择,针对SIMOTION与外围设备起动时间不一致的问题,西门子已经开发了现成启动检查功能,以确保SIMOTION的CPU能够正常启动。这个功能叫做StartupCheck,它位于SIMOTION SCOUT软件安装包的Utilities_Application文件夹内,您可以搜一下,里面也有相应的使用说明书。
客户:哦,有这么好的工具,得好好研究下,谢谢!
工程师:不客气。
后记:SIMOTION的CPU无法正常启动可能有各种不同原因,通过在线查看CPU的诊断缓冲区,可以找到CPU无法起动的准确原因。另外,针对SIMOTION仅仅在重新上电时无法起动的问题,可以参考本文中提到方法去处理,对于有工程经验的工程师可以考虑使用西门子提供的标准程序StartupCheck来简化工作。如果是其他原因致使CPU无法正常启动,就要依据实际情况去采取对策了,千万不能生搬硬套。