news 2026/4/17 13:40:28

CoDeSys入门实战一起学习(五):CoDeSys V3 车库门控制编程全解析系列(手册基础第三篇)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CoDeSys入门实战一起学习(五):CoDeSys V3 车库门控制编程全解析系列(手册基础第三篇)

第三篇:编程基础篇——变量声明与 FBD 核心逻辑入门

完成工程配置后,就进入核心的编程环节。在 CoDeSys 中,所有输入/输出信号、中间逻辑变量都需要先进行声明,才能在程序中使用。本文就带大家完成变量声明,并入门 FBD(功能模块图)的基本操作,为后续控制逻辑编程打下基础。

一、变量声明:全局变量列表创建与 I/O 定义

本次项目我们使用“全局变量列表”声明变量(全局变量可在整个工程中使用,适合传递传感器、执行器信号),具体步骤如下:

1. 创建全局变量列表:右键点击对象树中的“应用程序”图标,选择“添加对象→全局变量列表”,命名为“仿真信号”(便于后续手动仿真测试)。

2. 变量分类与声明:根据车库门控制需求,变量分为“输入变量”(传感器、控制按钮)和“输出变量”(执行器),所有变量均为布尔类型(BOOL,取值为真/假)。具体声明如下:

变量类型

变量名

含义说明

输入变量

DoorOpen

门开传感器(检测门是否完全打开)

DoorClosed

门闭传感器(检测门是否完全关闭)

DoorOverloaded

过载传感器(检测门运行是否过载)

Actuation

控制按钮(触发门的开关切换)

输出变量

DoorUp

升门驱动(控制门打开)

DoorDown

降门驱动(控制门关闭)

Lighting

顶灯驱动(控制顶灯开关/闪烁)

3. 变量声明验证:完成后保存全局变量列表,可在“仿真信号”列表中查看所有变量,确保无拼写错误(变量名区分大小写,后续编程需严格匹配)。

二、FBD 编程基础:功能块与操作符使用

FBD 是基于“功能块”和“连接线”的可视化编程方式,核心逻辑通过“功能块+操作符”的组合实现。本次项目将用到的核心元素如下:

1. 核心功能块:

  • RS 功能块:置位-复位功能块,用于实现信号的闭锁(保持),有 2 个输入端(S:置位,R:复位)和 1 个输出端(Q:结果);

  • TON 功能块:延时通定时器,输入端 IN 为真时开始计时,达到预置时间 PT 后,输出端 Q 变为真;
  • TOF 功能块:延时断定时器,输入端 IN 从真变假时开始计时,达到预置时间 PT 后,输出端 Q 变为假。

2. 核心操作符:

  • AND 操作符(2 输入/多输入):所有输入端为真时,输出才为真;
  • OR 操作符(2 输入/多输入):任意一个输入端为真时,输出就为真;
  • 沿检测:分为上升沿(信号从假变真)和下降沿(信号从真变假),点击输入前的标记,通过工具栏图标切换。

3. FBD 基本操作:

  • 添加功能块/操作符:从右侧工具箱中选中对应元素,拖拽到编辑器的“Start here”位置;
  • 功能块实例化:在功能块上部“???”处输入实例名(如“RS_OpenDoor”),按回车键自动打开变量声明对话框,点击“OK”即可完成声明;
  • 变量连接:点击功能块/操作符的输入端/输出端,输入变量首字母,通过智能输入列表选择对应变量(或按 F2 打开在线帮助选择);
  • 删除无用管脚:部分功能块的输出端(如 TON 的 ET 消逝时间)若无需使用,可选中后按 Del 键删除。

掌握变量声明和 FBD 基本操作后,下一篇我们将正式编写车库门的核心控制逻辑——开门、关门与停止控制。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 3:30:25

A.每日一题——85. 最大矩形

题目链接:85. 最大矩形(困难) 算法原理: 博主声明:这84题和85题感谢灵神🌹🌹🌹的启发,我在灵神的思路上产生自己的想法,因此自己纯手敲了一遍,写博…

作者头像 李华
网站建设 2026/4/17 14:41:35

网络安全认证全景攻略:CISSP、CEH、OSCP深度备考策略与职业发展路径

网络安全认证全景攻略:CISSP、CEH、OSCP深度备考策略与职业发展路径引言:网络安全认证的价值与战略选择在数字化转型加速的时代,网络安全已成为企业和组织的核心战略需求。根据(ISC) 2023年网络安全劳动力研究报告,全球网络安全人…

作者头像 李华
网站建设 2026/4/18 5:21:43

IF=33.2多比较组差异分析火山图

适用场景 生物信息学/组学研究(转录组、蛋白组等)中专用的差异表达结果可视化: 研究对象包含N个分组(如多组织、多细胞亚群、多处理组),需展示各分组差异分子的整体分布与分组细节; 需筛选 的显著性差异分子,通过火山图呈现差异幅度与统计显著性; 学术论文 / 汇报配…

作者头像 李华
网站建设 2026/3/14 21:35:29

【图像加密】基于逻辑映射序列和线性反馈移位寄存器的状态序列生成的混沌密钥序列进行图像加密和解密附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书和数学建模资料 &#x1…

作者头像 李华
网站建设 2026/4/7 6:15:18

OBS Face Tracker 面部追踪插件完全指南:实现智能直播追踪

OBS Face Tracker 面部追踪插件完全指南:实现智能直播追踪 【免费下载链接】obs-face-tracker Face tracking plugin for OBS Studio 项目地址: https://gitcode.com/gh_mirrors/ob/obs-face-tracker OBS Face Tracker 是一款专为 OBS Studio 设计的革命性面…

作者头像 李华