该插件在PLC脚本是一个基于文本的控制监视(终端)。从控制器中得到的具有特定信息的命令以一个输入行进行输入并且作为一个字符串发送到控制器,返回相关的字符串在浏览窗口中的结果显示,这个功能用于诊断和调试目的。这是目标系统提供的命令可以用于个别控制器制造商的扩展,这个PLC脚本命令的处理可以在运行系统中通过一个 C 组件或者通过 IEC函数库或者工程的功能块实现。的功能区块。
选择设备对话框中的表格“PLC 脚本”。
 插图 513: CoDeSys PLC 脚本窗口浏览窗口中包含一个命令行入口以及一个结果/显示窗口。在选择框内,输入行显示从程序启动开始所有命令的一个列表(输入历史),在成功关闭之前可以重新选择。只有不同于已经存在的命令才会被添加到列表中。输入的命令通过[ Enter ] 键发送到控制器中。如果当前没有控制器连接,将会显示一个错误信息,否则将会显示控制器的相关反馈。命令可以以命令字符串的方式进行输入。
基本上 PLC 脚本提供了一些标准的 3S 命令,这些都是运行系统中的硬件代码。这些标准的命令提供直接执行内存操作的功能,用于提供控制器或者应用程序的诊断功能和信息。命令的描述可以通过命令 "?"进行查看。除了 3S 标准命令,也包含从 OEM 客户那里得到的一些扩展命令。注意如果命令处理是通过 C 或者 IEC实现的,将会出现帮助信息。如果命令处理是通过 IEC 实现的,命令只有在应用存在于 PLC 上时才可用。命令的获得不影响应用状态而会影响应用的生命周期。这意味着命令可以在停止或者例外状态下进行处理,但是在应用程序删除之后不可获得。
当点击位于 PLC 脚本命令行旁边的按键“...”,将会有一个 PLC 可以获得的命令请求。可以很容易的从列表中选择一个命令并处理。如果命令处理需要附加参数,那么命令将会提供一个帮助信息,用于解释必须的参数。这些参数需要在命令行进行输入。
 插图 514: “输入标准命令”对话框一般的命令语法:
<KEYWORD> <KEYWORD-DEPENDEND PARAMETERS>
命令名就是命令。通过这个命令可以在以下表格中进行显示。如果命令发送出去之后,命令不是一个有效的命令那么在输出数据窗口将不会显示任何的信息。
从控制器中通过命令 “pid” 获得工程 Id
命令行输入:
pid
结果窗口输出:
Project Identification
Application: Testapplication
Code GUID:0x09c555ef
Data GUID:0x98322738
| 
                               命令  | 
                           
                               描述  | 
                        
|---|---|
| 
                               ?  | 
                           
                               打印所有可用命令  | 
                        
| 
                               getcmdlist  | 
                           
                               内部使用显示所有可获得命令  | 
                        
| 
                               mem <address> [<size>]  | 
                           
                               打印十六进制特定内存范围  | 
                        
| 
                               reflect  | 
                           
                               仅仅返回输入的命令 (用于测试连接)  | 
                        
| 
                               applist  | 
                           
                               打印当前加载应用列表  | 
                        
| 
                               pid [<app name>|<app index>]  | 
                           
                               一个特定的跳转或者所有加载的应用  | 
                        
| 
                               pinf [<app name>|<app index>]  | 
                           
                               一个特定的跳转工程信息或者所有加载的应用  | 
                        
| 
                               startprg [<app name>|<app index>]  | 
                           
                               启动一个特定的或者所有的应用程序  | 
                        
| 
                               stopprg [<app name>|<app index>]  | 
                           
                               停止一个特定的或者所有的应用程序  | 
                        
| 
                               resetprg [<app name>|<app index>]  | 
                           
                               复位一个特定的或者所有的应用程序  | 
                        
| 
                               resetprgcold [<app name>|<app index>]  | 
                           
                               执行冷复位一个特定的或者所用的加载的应用  | 
                        
| 
                               reload[<app name>|<app index>]  | 
                           
                               重新加载一个特定的或者从启动工程中所有加载的应用  | 
                        
| 
                               getprgprop  | 
                           
                               还没有实现  | 
                        
| 
                               getprgstat [<app name>|<app index>]  | 
                           
                               获得一个特定或者所有加载应用的状态  | 
                        
| 
                               plcload  | 
                           
                               获得加载到 PLC 中的所有进程  | 
                        
| 
                               rtsinfo  | 
                           
                               打印运行系统信息,例如进程以及运行版本  | 
                        
                         
                      | 
                     
                        
                         输入命令序列的第一个字被解释为命令名。 如果命令输入的第一个字不被确认为控制器有效命令,它将会在没有任何信息提示的情况下载输出数据窗口重复输出。 可以通过一个标准命令 "?"获得一个包含帮助文档的说明。帮助文本信息将会在数据输出窗口显示。  |