外部事件任务 “外部事件任务”机制可用于通过外部事件触发任务。 “Unix Domain Sockets”用于进程分离。根据用户为外部事件选择的名称,相应的套接字文件位于目标系统上: /var/run/codesysextension/eventtasks/<EventName>.sock 创建“外部事件”类型的任务 创建外部事件。 在设备树中,选择 任务配置 并在上下文菜单中单击 管理外部事件
事件机制 运行时系统使用“事件”来传达诸如 PLC 的启动/停止/复位、异常发生等事件。使用“事件机制”,可以在触发选定事件后立即接收消息。 转发以下与应用程序相关的事件: EVT_StartDone EVT_StopDone EVT_ResetDone EVT_ExitDone EVT_AllBootprojectsLoaded EVT_CmpApp_Exception EVT_StateCha
访问 PLC 外壳 扩展 API 支持对 PLC 外壳的外部访问。对于此功能,使用“Unix 域套接字”,运行时系统使用它来接收传入的命令并发送相应的响应。对应的socket文件为: /var/run/codesysextension/plcshell.sock 对于此功能,运行时系统需要允许“匿名用户”。允许匿名登录是通过 通讯设置 在设备的 改变沟通政策 对话框(1): 允许匿名登录 选项 (
START/STOP 开关 START/STOP 开关代表一个物理开关,可用于将 PLC 设置为启动或停止状态。 如果文件i /var/run/codesysextension/runstop.switch 存在。注意,与扩展包的其他功能不同,文件是在 /var/opt/codesysextension/ 该文件不是由运行时系统创建的。如果您想使用 START/STOPP 功能,您必须创建文件。当
调用外部函数 此机制可用于通过 Unix 域套接字调用 IEC 应用程序中的外部函数。这允许您创建自己的功能。同时,实现了流程分离。作为 IEC 的一个接口, EXTAPI.UDSExternalFunction 功能块提供在 ExtensionAPI 库。在 Python 中, ExternalFunctionBase 类用于此目的,在提供的示例中提供。 还使用此示例解释了该机制的使用。该示例包
链接您自己的 I/O 借助此功能,本地 I/O 可以连接到控制器并在 IEC 应用程序中使用。 编辑设备描述 在提供的示例中 C:\Users\<user>\CODESYS Control SL Extension Package\<version>\Examples\ExternalIoDrv ,设备描述用于创建两个通过 Unix Domain Socket 连接的输入和输出。 要定义您自己的输
将数据保留在共享内存中 某些产品不包括从控制器中的应用程序保留数据的自动连接(由于缺乏普遍有效的存储选项)。但是,运行时系统中存在一种通过共享内存 (SHM) 连接的现有机制,该机制可用于此目的,并具有相应的配置。 例如,可以通过以下方式使用 CODESYS Control SL 产品: CODESYS Control for Linux SL CODESYS Control für Linux
扩展 SDK 使用扩展 SDK,您可以在 C 中实现自己的函数并从 IEC 应用程序中调用它们。 对于这种连接,C 代码以单独的动态组件的形式集成到运行时系统中( shared object )。 有两种方法包括: 在控制器上准备:动态组件已配置为 CODESYS 运行时系统(一个 shared object 存在并在 Linux 系统上配置)。然后,只需要相应的 IEC 库。 以带有集成动态组件
CODESYS Virtual Control for Linux SL 本节内容如下 :
概述 这 CODESYS Virtual Control for Linux SL 附加组件可用于管理虚拟运行时和网关实例。 虚拟运行时系统基于 Docker 或 Podman 容器技术构建。 例如,Docker 区分镜像和容器。映像是容器的模板,该容器运行与系统其余部分封装的进程。封装使得在同一系统上同时运行多个容器成为可能,而与硬件无关。 CODESYS Virtual Control for