核心转储是应用程序数据的内存快照。 如果发生异常错误,支持此功能的运行时系统会自动在应用程序目录和控制器上存储核心转储文件(<application name>.core)。
在在线模式下,如果应用程序当前在断点处停止或发生异常,也可以显式生成核心转储。 在这种情况下,CODESYS将核心转储文件存储在工程目录中,而不是存储在控制器上。
在离线模式下,您可以将核心转储从控制器加载到工程。然后,应用程序的在线视图将与异常时的数据和值一起显示。
另外,您可以在生成核心转储时调用控制器日志文件的工程视图。
| 提示!
运行时系统必须完全支持该功能,以确保在核心转储视图中正确显示变量值。 在CODESYS将核心转储加载到工程中时创建的应用程序的在线视图中,菜单命令显示为可用,但在此状态下没有任何效果。 选择其中一个命令时,将显示一条消息。 |
| 小心!
限制(CDS-37572):运行时系统中的异常处理可能会覆盖调用堆栈中的部分变量值。因此,在监视时原始值将会丢失,并且可能不再显示函数和方法中变量的重要信息。 |
|
创建工程归档时: 如果通过单击创建核心转储显式创建了核心转储,则此选项在归档配置中自动可用。另一方面,如果从PLC复制了核心转储,则只能通过选择其它文件将其添加到工程归档。 重要:具有核心转储的工程归档必须包含下载信息。 如果没有,则CODESYS不能使用核心转储。 |
将核心转储和设备日志加载到工程中进行分析
要求:您有一个打开的工程,该工程的应用程序在控制器上产生了异常。运行时系统能够创建核心转储。 工程中的应用程序处于离线模式。
1. | 通过单击,从控制器加载所需的核心转储。 ⇒ | CODESYS显示了该应用程序的在线视图。您可以看到错误发生时的变量值和调用堆栈(见下文)。 这还包括设备配置程序和任务配置的映射对话框中I / O变量的值。状态行中将显示“核心转储已加载”。CODESYS将核心转储文件作为<工程名称>.<设备名称>.<应用程序名称>.<应用程序向导>.核心到本地工程目录。 |
|
2. | 单击 以将错误时的设备日志加载到工程中。 ⇒ | 将打开日志视图(与设备编辑器的在线模式一样),其中包含核心转储时的事件。 |
|
3. | 完成核心转储分析后,单击。 ⇒ | CODESYS关闭应用程序的核心转储视图。 工程将返回到正常离线模式及其视图。 |
|
手动创建正在运行的应用程序的核心转储
要求:CODESYS应用程序处于在线模式。运行时系统支持核心转储功能。
1. | 单击。 ⇒ | CODESYS开始生成新的核心转储。 状态行中会出现一个进度条,并有一个取消该过程的按钮。 | | CODESYS将核心转储文件作为<project name>.<device name>.<application name>.<application Guid>.core.保存到本地工程目录。 |
|