Skip to main content

CODESYS 例子

示例项目可用于以下产品。

1.

姓名

描述

应用管理器

该示例展示了如何使用 CmpApp 库来获取有关项目和应用程序的信息,以及区域地址和数据类型的大小。

加密货币

该示例显示了哪些加密函数可用 CODESYS 以及如何使用它们。

日期和时间

该示例展示了如何使用日期和时间函数 SysTimeUtil 图书馆。

Event Manager

此示例演示如何发送和接收系统事件,例如启动、停止、登录和注销。

File Utilities

此示例演示如何读写文件以及使用目录。示例中使用了同步和异步函数调用。

IO 映射工具

该示例展示了如何使用 IEC 库 IO Mapping Tool 通过运行时模式下的可视化将程序的输入和输出重新映射到彼此。

网络变量

该示例展示了如何在具有多个设备的网络中使用变量。

面向对象编程

该示例展示了如何使用面向对象编程。

面向对象编程(扩展)

该示例展示了如何利用面向对象编程的其他优点。

OMAC PackML 状态机

该示例展示了如何使用 OMAC_PackML_State_Machine 图书馆。该库包含 OMAC PackML 状态机的实现。

开放式计算机视觉

该示例提供了一个 Python 实现 opencv,一个免费的编程函数库。

远程过程调用

该示例提供了 RPC(“远程过程调用”)的应用程序。

具有可视化功能的串行 COM

该示例展示了如何使用三个 COM 端口并可视化读取和写入缓冲区的内容。

Shared Memory

该示例展示了如何创建共享内存以及如何读取和写入它。

Shared Memory Communication

该示例展示了如何在 CODESYS 控制器和其他进程通过共享内存。

任务管理器

该示例展示了如何使用 CmplecTask 系统库读取任务信息。



2.

姓名

描述

CAA设备诊断

这个例子展示了如何使用 CAA Device Diagnosis 用于项目中可用设备的通用诊断的库。

现场总线诊断人机界面

此示例显示如何显示诊断数据 CODESYS 现场总线驱动程序 CODESYS 可视化。



3. CODESYS BACnet2 SL

姓名

描述

BACnet 服务器、备份和恢复

该示例显示如何对 BACnet 服务器进行编程以支持 BACnet 备份和恢复服务。

BACnet BBMD

该示例显示如何配置和使用 BACnet 设备作为“BACnet 广播管理设备”(BBMD)。

BACnet 设备发现

该示例显示如何在网络中查找 BACnet 设备。

BACnet 示例

该示例包含使用示例的集合 CODESYS BACnet2 SL 服务器功能和 CODESYS BACnet2 SL 客户端功能。

限制 BACnet 客户端对象属性值

该示例显示了在创建或写入客户端对象时如何限制 BACnet 服务器接受的属性值(类型)。

BACnet 对象和属性的持久性

该示例展示了如何使用 BACnetDefaultImpl.ObjectPersistence 使 BACnet 对象和属性持久化。

BACnet 趋势日志(服务器)

该示例展示了如何使用 BACnetDefaultImpl.TrendLog 用于监控 BACnet 属性的功能块。

BACnet路由

该示例展示了如何使用 CODESYS BACnet2 SL 路由。

楼宇自动化:BACnet

该示例显示了集成 CODESYS BACnet2 SL 到楼宇自动化应用程序中。

楼宇自动化:持久性

该示例展示了如何处理楼宇自动化应用程序中的可选持久性。

楼宇自动化:示例

示例项目包含所有功能块的概述 CODESYS Building Automation 图书馆。



4. CANopen

姓名

描述

CANopen

该示例涉及 CANopen 主站和 CANopen 从站通信堆栈的编程接口。

CAN总线

该项目提供了该库的应用程序,可以让您轻松使用CAN总线功能。



5. EtherCAT

姓名

描述

基于 EtherCAT 的伺服驱动器

该示例展示了如何通过 EtherCAT 使用 ServoDrive 读取和写入 IDN。

通过 EtherCAT 传输文件

该示例展示了如何使用 CAN over EtherCAT 读取和写入 SDO,以及如何使用 File over EtherCAT 下载固件文件。



6. 以太网/IP

姓名

描述

以太网IP服务

该示例展示了如何使用 EtherNet/IP Services 图书馆。它展示了如何与以太网/IP 适配器交换显式消息。

罗克韦尔 1734 AENT 配置

此示例显示了带有 1734-IB4 I/O 模块的 Rockwell 1734-AENT EtherNet/IP 适配器的配置。



7. MODBUS

姓名

描述

MODBUS

该示例展示了如何创建 Modbus TCP/串行服务器和客户端。的功能块 ModbusFB.compiled-library 使用库。



8.

姓名

描述

报警管理器

该示例展示了如何使用程序访问警报对象。

报警表

该示例展示了如何配置警报并将其用作 报警表 可视化元素。

模拟时钟

该示例展示了如何使用标准可视化元素实现模拟时钟。

记录变量值的变化

该示例展示了如何使用处理程序来记录可视化中由用户输入触发的变量值更改。

双陆棋游戏

这个例子展示了如何使用 CODESYS 使用顺序功能图语言对“西洋双陆棋”游戏进行编程。

响应式设计

该示例展示了如何将组合框与数组和文本列表一起使用。

泡泡破坏游戏

此示例展示了如何编写“Bubble Breaker”游戏 CODESYS

应用程序中的用户管理

此示例展示如何在应用程序中处理可视化用户管理。

组合框

该示例展示了如何将组合框与数组和文本列表一起使用。

Visu ST 对话框

该示例使用三个示例应用程序来展示如何以编程方式访问可视化对话框 结构化文本 (ST) 实现语言。

对话框

该示例展示了如何在可视化中使用对话框。

动态文本

该示例展示了如何使用文本字段。

捕获事件

该示例展示了如何以编程方式捕获和处理可视化事件。以及如何为其实现必要的接口。

按锁存器和时间变量过滤警报

该示例展示了如何通过锁存器和时间变量过滤警报。

全球客户经理

该示例展示了如何使用 CURRENTCLIENTID 系统变量来管理全局客户数据。

笛卡尔 XY 图

该示例显示了您可以使用的显示选项 笛卡尔 XY 图表 可视化元素。基本上,数组值的历史在笛卡尔坐标系中以图形方式显示为折线图或条形图。

麻将游戏

该示例展示了如何使用 CODESYS 编写“麻将”游戏。

根据可视化样式定位按钮

该示例展示了如何根据可视化风格定义嵌入图像的按钮的文本位置。

多点触控处理

该示例展示了如何评估和处理多点触控显示器中的触摸事件。

元素的编程选择

该示例展示了如何使用 SelectionManager 以编程方式选择可视化中的元素。

使用梯形图编辑器编程

该示例展示了如何实现可视化,其中梯形图编辑器允许立即对 PLC 进行编程。

VisuDialogs 库的源代码

在此示例中,您将获得以下源代码 VisuDialogs 图书馆。

源库为您提供了可视化中自动可用的所有对话框,以便您可以自定义它们。例如,您可以从对话框中删除按钮或更改布局以创建新的自定义库。

VisuUserMgmtDialogs 库的源代码

通过这个例子,你可以获得的源代码 VisuUserMgmtDialogs 图书馆。

源库为您提供了用于可视化用户管理的所有对话框,这些对话框在可视化中自动可用,以便您可以自定义它们。例如,您可以从用户管理对话框中删除按钮或更改布局以创建新的自定义库。

配方管理

该示例展示了如何针对不同设备(例如显示器、平板电脑或智能手机)调整可视化设计。

七段显示器

该示例显示了七段显示的实现 CODESYS Visualization 以及相应的功能块。

数独游戏

该示例显示了 SuDoKu 的实现 CODESYS

趋势

示例项目展示了如何使用可视化和记录值 趋势 可视化元素。

元素叠加

该示例展示了如何使用覆盖功能 CODESYS Visualization

在多个可视化之间切换

该示例项目展示了如何在框架中引用的可视化之间进行切换。

可视化元素

该示例展示了如何使用可视化元素和处理事件。

虚拟键盘和虚拟数字小键盘

该示例描述了如何将用于用户输入的虚拟键盘或虚拟数字小键盘集成到任何可视化中。

HMI

该示例展示了如何连接 CODESYS HMI 到一个 CODESYS V3 和 V2.3 控制器。

示例:文件传输

此示例项目展示了如何在 CODESYS 控制器和 CODESYS 网络可视化。

使用 VisuTrendStorageAccess 图书馆

示例项目使用可视化来展示如何使用 VisuTrendStorageAccess 库来读取趋势数据。

HTML5 API

该示例项目展示了如何使用简单的 HTML5 控件。



9. Basic Motion

姓名

描述

控制单轴运动

该示例展示了如何通过 PLCopen 标准化功能块控制驱动器。

凸轮编辑器

该示例展示了如何在在线可视化中使用凸轮编辑器。

带虚拟时间轴的凸轮驱动器

该示例展示了如何在线性驱动器上实现周期凸轮并应用凸轮功能。

交替凸轮

该示例展示了如何使用两个交替凸轮创建凸轮运动。

通过编程创建凸轮

该示例展示了如何使用 IEC 代码来创建和使用凸轮。

CFC 中单轴的运动

该示例展示了如何使用可视化模板来移动各个轴。此外,您可以使用可视化来定义轴的运动参数。

使用 SM_Drive_PosControl 在控制器上进行位置控制

该示例演示了如何通过以下方式对速度控制设备(例如,带位置反馈的变频器)进行位置控制: CODESYS SoftMotion

电子齿轮、相位偏移和齿轮间隙补偿

该示例展示了如何将电子变速箱与相位偏移和齿轮间隙补偿结合使用。

GearInPos(飞锯)

该示例展示了如何使用 MC_GearInPos 实现飞锯。

单轴运动预测

此示例显示如何定义轴的预测以获取有关未来轴状态的信息。

基于距离的坡度

该示例展示了如何使用StartMode输入MC_CamIn功能块。

SoftMotion 轴的速度覆盖

该示例显示如何定义 SoftMotion 轴的速度覆盖。

使用MC_DigitalCamSwitch_HighPrecision

该示例展示了如何使用SMC_DigitalCamSwitch_HighPrecision以高时间分辨率控制数字输出。



10. CNC

姓名

描述

CNC 3D 编辑器

此示例显示如何使用在线 CNC 编辑器。

CNC 01:直接生成OutQueue

该示例展示了如何离线创建 OutQueue。 OutQueue由插值器直接使用,无需在线路径规划。

CNC 02:带变量的在线解码

该示例展示了如何使用变量来执行在线解码。

CNC 03:在线执行路径预处理

该示例展示了如何在在线模式下执行路径预处理。

CNC 04:使用表格编辑器对 CNC 进行编程

该示例展示了如何使用表格编辑器进行编程。

CNC 05:从 ASCII 文件创建 G 代码程序

该示例演示如何从文件中读取 G 代码。

CNC 06:使用 Path3D 可视化元素

该示例展示了如何使用 Path3D 可视化元素。

CNC 07:使用表达式和子程序

该示例显示了如何在 CNC 行驶命令中使用表达式和子程序。

CNC 08:使用附加轴

该示例展示了从 XY 平面中的四个位置行进时如何使用附加轴。

CNC 09:使用刀具长度校正

该示例展示了如何使用 SMC_ToolLengthCorr 补偿刀具长度的功能块。

CNC 10:编程动态 CNC 路径

该示例展示了如何在运行时直接在应用程序中生成 CNC 路径。

用户特定的 G 代码功能

该示例展示了如何创建自己的函数以用于 G 代码中的表达式。

ReadNCFile2使用令牌修饰符

该示例显示如何在导入期间修改 G 代码,以便将路径速度(F 字)的单位从 mm/min 转换为 mm/s。



11. Robotics

姓名

描述

自定义运动学

此示例演示如何创建具有自定义运动学变换的库(Gantry3C)以及如何在项目中使用该库来控制机器人。

慢跑机器人

此示例演示了如何使用 SMC_GroupJog2 POU。

使用 Pick&Place 对机器人进行编程

该项目以 3D 动画形式可视化运动学。该示例需要安装 CODESYS Depictor

在没有 Depictor 的情况下使用 Pick&Place 对机器人进行编程

该项目以简化的形式可视化运动学。

SoftMotion 机器人人机界面

该项目展示了如何使用一些可用的功能 SoftMotion 机器人技术。

使用 Depictor 可视化轴组

该示例展示了如何将 Depictor 与 Kin_Scara3_Z 运动配置一起使用。

触发器示例 1:简单示例

该示例展示了如何在运动中命令单个触发器然后循环读取。

触发示例2:粘合过程

该示例展示了触发器在粘合过程中的实际应用。

动作的中断和延续

该示例展示了如何使用SMC_GroupInterrupt功能块,然后继续SMC_GroupContinue功能块。



12. SoftMotion Light

姓名

描述

SoftMotion Light 兼容性检查 DS402

该项目可以帮助您检查驱动器是否适合使用 CODESYS SoftMotion Light



13.

姓名

描述

Redundancy

该示例展示了如何配置两个 Raspberry Pi 设备以进行冗余操作。

串行通讯

本例展示了如何实现串行通信。

Trace

该示例展示了如何通过设备树中的跟踪对象和 痕迹 可视化元素。



14. CODESYS Control Extension Package

姓名

描述

使用 C 语言实现的函数

该示例展示了如何在应用程序中使用 C 代码实现的函数。

ExternalEvent

该示例展示了如何从 Linux 系统对 IEC 应用程序的事件做出反应。

通过 Unix Domain Socket 调用外部函数

该示例展示了如何创建一个新的 myExternalFunction 功能块。

将外部事件分配给外部任务

该示例展示了如何使用将外部事件分配给外部任务的配置。

通过 UDS(Unix 域套接字)链接使用设备描述创建的 I/O

该示例展示了如何使用设备描述来创建通过 Unix Domain Socket 链接的两个输入和输出。



15. CODESYS Control for PFC200

姓名

描述

访问用户 LED CODESYS Control for PFC200

该示例显示如何访问 PFC200 的用户 LED。



16. CODESYS Control for Raspberry Pi

姓名

描述

DCF77解码器

该示例展示了如何使用 CODESYS Control for Raspberry Pi 控制器解码 DCF77 时间信号。

相机

该示例显示了一个控制 Raspberry PI 相机模块、拍摄单张照片并将其保存为文件的应用程序。

相机直播

该示例显示了一个具有 WebVisu 用户界面的应用程序,该界面显示相机实时流或仅显示单个图像。

以太猫

该示例显示了一个应用程序,其中 EtherCAT 现场总线设备受到控制。

通用输入输出口

该示例显示了具有 GPIO 的应用程序。

控制通过 I²C 连接的从设备和总线设备

该示例显示了一个控制通过 I²C 驱动的多个传感器和执行器的应用程序。

控制通过 SPI 连接的 MCP23S17 端口扩展器芯片

该示例显示了一个应用程序,其中控制通过 SPI 连接的端口扩展器芯片 (MCP23S17)。

MCP3008 A/D 转换器通过 SPI 连接以控制 LM35 温度传感器

该示例显示了一个通过 SPI 读取模拟温度传感器 (LM35) 的应用程序,该传感器连接到 A/D 转换器芯片 (MCP3008)。

控制通过 OneWire 连接的 DS18B20 温度传感器

该示例显示了一个检测通过 OneWire 连接的设备的应用程序。

控制通过 SPI 连接的 PiFace 模块(二)

该示例包含一个应用程序,用于控制具有 8 个数字输入和输出的 Raspberry PiFace 数字 I/O 硬件。

以编程方式控制通过 SPI 连接的 PiFace 模块

此示例演示如何以编程方式访问 PiFace 附加模块(通过 SPI)。

控制通过 SPI 连接的 PiFace 数字和文本显示模块

该示例展示了一个应用程序,除了具有 8 个数字输入和输出的 Raspberry PiFace 数字 I/O 硬件外,还控制两行文本显示器,以便配置应用程序参数。

控制通过 SPI 连接的 PiFace 模块(一)

该示例包含一个应用程序,用于控制具有 8 个数字输入和输出的 Raspberry PiFace 数字 I/O 硬件。

配置通过 I²C 连接的 Sense HAT 模块

该示例提供了一个用于操作 Sense Hat 附加板的应用程序。

使用通过 I²C 连接的 Adafruit PWM 模块控制模型伺服电机

该示例包含一个应用程序,其中 CODESYS SoftMotion 与模型伺服电机配合使用。

配置 WebVisu

该示例显示了一个具有使用以下命令创建的界面的应用程序 CODESYS Visualization



17. CODESYS Control for IOT2000

姓名

描述

IOT2000 GPIO 演示

本示例项目展示了如何使用带有 GPIO 扩展“IO 模块”的 IOT2000 控制器上的 GPIO CODESYS



18.

姓名

描述

使用 AWS IoT Core 客户端 SL 库

这个例子展示了如何使用 AWS IoT Core Client SL 库来发送和接收消息。

“AWS IoT Core”是亚马逊的管理云平台,连接的设备可以在其中轻松、安全地与云应用程序和其他设备协同工作。通信经过加密并通过 MQTT 协议进行。在AWS环境中,消息通常以JSON格式发送。这 JSON Utilities 库可用于解析和创建 JSON 文件。

使用 Azure IoT Hub Client SL 库

这个例子展示了如何使用 Azure IoT Hub Client SL 库来发送和接收消息。

微软的“Azure IOT Hub”云服务是直接链接物联网设备的服务。

使用 0_Global: Lib CSV Utility SL 库

这个例子展示了如何使用 CSV Utility SL 用于读取和写入 CSV 文件的库。

该库由组件 CSVReader(用于读取 CSV 文件)和 CSVWriter(用于写入 CSV 文件)组成。所有功能块均可用于经典过程编程或面向对象编程。

温室模拟器

此示例使用温室模拟器展示如何使用与“AWS IoT Core”AWS 服务的云通信。

使用INI File Utility SL 图书馆

这个例子展示了如何使用 INI File Utility SL 用于读取和写入 INI 文件的库。

该库还包含用于搜索 INI 文件中的值的功能块。

使用 JSON Utilities SL 图书馆

这个例子展示了如何使用 JSON Utilities 用于读取和写入 JSON 文件的库。

该库还包含用于在 JSON 文件中搜索值的功能块

使用 JSON Web Token SL 图书馆

JSON Web Token SL Example.project 示例项目包含在控制器上创建 JWT(JSON Web 令牌)的可视化,展示了如何使用 JSON Web Token SL 图书馆。

使用图书馆 Mail Service SL

该示例展示了如何在网络上发送、接收和删除电子邮件 CODESYS 控制器。

使用 MQTT Client SL 图书馆

MQTT Client SL Example.project 示例项目包含发送和接收消息的可视化,展示了如何使用 Mail Service SL 图书馆。

使用 SNMP Service SL 图书馆

该示例还提供了发送和接收 SNMP 消息的可视化,展示了如何使用 SNMP Service SL 图书馆。

SNTP Service SL 图书馆

该示例还通过 SNTP 提供时间请求和时间设置的可视化,展示了如何使用 SNTP Service SL 图书馆。

Web Client SL 图书馆

该示例还提供了通过 HTTP 或 HTTPS 与 Web 服务器进行通信的可视化,展示了如何使用 Web Client SL 图书馆。

使用图书馆 Web Socket Client SL

该示例展示了如何使用 Web Socket Client SL 图书馆。该示例项目包含一个可视化,用于通过 Internet 建立与 Web 服务器的双向连接。

XML Utility SL 图书馆

该示例显示了如何使用 XML Utility SL 图书馆。它包含用于在控制器上读写 XML 文件和 XML 字符串的功能块。

使用 OpenWeather 客户端 SL 库

该示例显示了如何使用 OpenWeather Client SL 图书馆。它显示了如何查询来自OpenWeather的天气数据。



19.

姓名

描述

元素集合

示例项目展示了如何使用 Element Collections 库。该库包含列表、队列、堆栈和哈希表的功能块。

PLC聊天网络基础服务

该示例提供了一个服务器应用程序和一个客户端应用程序,每个应用程序都具有可视化效果。客户端应用程序通过 TCP(端口 50000)通过服务器应用程序与另一个客户端应用程序进行通信。



20.

姓名

描述

OPC UA Client

该示例展示了如何使用 IEC 61131-3 接口 CODESYS OPC UA 客户。

OPC UA Data Source

该示例展示了如何配置 CODESYS 与 OPC UA 服务器连接的数据源。

使用 OPC UA PubSub SL 图书馆

该示例展示了如何使用 OPC UA PubSub SL 图书馆在 OPC UA PubSub Example.project 项目以便通过 OPC UA 基金会定义的 Pub/Sub 协议交换消息。

CODESYS OPC UA Client API

该示例展示了如何使用 OPC Client API库。示例项目包含一个 OPC UA 服务器配置和一个 OPC UA 客户端配置。



姓名

描述

OO(面向对象与 UML)

此示例显示了 UML 项目中的面向对象编程:类图,使用语言元素,例如 延伸 或者 器具.

UML_SC_CoffeeMachine

此示例描述了 UML 项目中咖啡自动售货机的状态图。

21.

姓名

描述

应用程序编辑器示例

该项目包包含各种示例。每个示例项目都描述了特定的功能 CODESYS Application Composer。这些示例让您大致了解该应用程序的功能 CODESYS Application Composer

AC模块教学

该示例展示了如何通过简单的照明控制来创建和使用可学习模块。