CoDeSys V3 新手详细教程:从安装到第一个PLC程序
引言
CoDeSys V3(Controlled Development System)是一款基于IEC 61131-3标准的工业自动化编程软件,广泛应用于PLC(可编程逻辑控制器)编程。它支持多种编程语言,包括梯形图(LD)、结构化文本(ST)、功能块图(FBD)等,适用于各种工业控制场景。本教程旨在为初学者提供一份超详细的指南,覆盖从软件下载、安装、编程、调试到项目导出的全流程。每一步都配有文字说明和视觉辅助,确保即使毫无经验的小白也能轻松跟随操作。教程末尾,我们将介绍如何将CoDeSys与英辉InVent E30M6203-5G无线远程终端集成,实现远程编程和控制功能。
第一章:软件下载与安装
1.1 CoDeSys V3 简介与版本选择
CoDeSys V3是工业自动化领域的标准编程工具,它允许用户为多种PLC硬件编写、调试和运行程序。软件遵循IEC 61131-3国际标准,这意味着一旦掌握CoDeSys,您就能编程许多品牌的PLC,如西门子、倍福、施耐德等的高端控制器。对于初学者,建议从模拟器开始练习,例如CoDeSys自带的"CODESYS Control Win V3",它可以在PC上完全模拟PLC环境,无需真实硬件。
选择正确的软件版本至关重要。CoDeSys版本必须与您的PLC硬件固件版本兼容,否则可能导致程序无法下载或运行错误。例如,如果您的PLC固件是V3.5.16.50,那么您需要下载相同版本的CoDeSys开发环境。访问CoDeSys官网(https://www.codesys.com/),在"Downloads" section查找适合您系统的版本(Windows推荐)。如果您是练习,选择最新版本通常没问题,但生产环境务必核对兼容性。
1.2 下载CoDeSys V3
下载过程简单直接:
-
打开CoDeSys官网,点击"Downloads"菜单。
-
选择"CODESYS Development System V3"。
-
根据您的操作系统(如Windows 10/11)选择版本。通常提供32位和64位安装包,现代PC建议64位。
-
填写基本信息(如姓名、邮箱)后,点击下载链接。下载文件一般为EXE格式(如
CODESYS-V3-Setup-3.5.16.50.exe)。 -
下载完成后,将文件保存到易于找到的位置,如桌面或Downloads文件夹。
如果官网访问慢,可以联系供应商或从可信的第三方镜像获取。下载时注意文件大小(通常几百MB),确保网络稳定。
1.3 安装CoDeSys V3
安装前,请确保以管理员身份运行安装程序,以避免权限问题。以下是详细步骤:
-
右键以管理员身份运行:找到下载的EXE文件,右键点击,选择"以管理员身份运行"。这确保安装程序有足够权限修改系统文件。
-
选择安装语言:安装向导启动后,选择英语或德语(软件主要支持语言),然后点击"Next"。
-
接受许可协议:仔细阅读许可条款,勾选"I accept the terms of the license agreement",点击"Next"。
-
选择安装类型:推荐选择"Complete"安装,这会安装所有组件,包括运行时、编译器和模拟器。如果您磁盘空间有限,可以选择"Custom"自定义安装,但确保勾选关键组件。
-
设置安装路径:默认路径为
C:\Program Files\CODESYS 3.5。您可以点击"Browse"更改路径,但避免使用中文或特殊字符的路径,以防止兼容性问题。 -
安装组件:在组件选择界面,确保勾选"CODESYS Control Win V3"(模拟器)和"Development System"(开发环境)。其他组件如"SoftMotion"(运动控制)可根据需要选择。
-
开始安装:点击"Install",等待进度条完成。安装过程可能需要5-10分钟,取决于您的系统性能。
-
完成安装:当看到"Installation completed successfully"提示时,点击"Finish"。现在,桌面上会出现CoDeSys V3快捷方式。
1.4 验证安装
启动CoDeSys V3验证安装是否成功:
-
双击桌面快捷方式或从开始菜单打开CoDeSys。
-
首次启动可能会稍慢,因为软件初始化。主界面应包括菜单栏、工具栏、项目树和工作区。
-
尝试创建一个测试项目:点击"File" → "New Project",如果无错误,说明安装成功。
如果启动失败,检查系统日志或重新安装。常见问题包括防病毒软件拦截或缺少Visual C++ Redistributable。

第二章:创建第一个项目
2.1 启动CoDeSys与界面介绍
启动CoDeSys V3后,您会看到主界面,它由以下几个关键区域组成:
-
菜单栏和工具栏:位于顶部,提供文件操作(如新建、保存)、编辑命令(如复制、粘贴)、视图切换和在线功能(如登录、运行)。
-
项目树(Device Tree):位于左侧,以树形结构显示项目、设备、程序和数据。您可以在这里管理所有项目元素。
-
工作区/编辑区:中间区域,用于编写代码、配置硬件和可视化设计。它根据所选编程语言动态变化。
-
消息窗口(Message Window):位于底部,显示编译信息、错误、警告和调试输出。这是排查问题的重要工具。
-
状态栏:在最底部,显示当前项目状态、连接状态和网络延迟。
花几分钟熟悉界面。如果您是新手,建议打开帮助文档(按F1)查看详细指南。

2.2 创建新项目步骤
创建新项目是编程的第一步。以下是详细步骤:
-
点击菜单栏:选择"File" → "New Project"。
-
选择项目类型:在弹出的对话框中,选择"Standard project"(标准项目)。避免选择"Empty project",因为它不包含默认设置。
-
输入项目名称:例如"MyFirstPLCProject"。名称应简洁易懂,避免特殊字符。
-
选择设备类型:这是关键步骤。如果您没有真实PLC,选择"CODESYS Control Win V3"作为模拟设备。如果您有真实硬件,选择对应型号(如"CODESYS Control for Raspberry Pi")。
-
选择编程语言:CoDeSys支持6种语言。对于初学者,推荐"Ladder Diagram"(梯形图)或"Structured Text"(结构化文本)。您可以在项目中添加多种语言。
-
点击"OK"创建:项目创建后,项目树中会显示设备结构,包括"Device"、"Application"和默认POU。

项目创建后,立即保存:点击"File" → "Save",选择位置保存项目文件(.project格式)。定期保存以防数据丢失。
为了可视化项目创建过程,这里提供项目对话框的图示:

2.3 添加程序组织单元(POU)
POU(Program Organization Unit)是CoDeSys的基本编程模块,包括程序、功能块和函数。添加POU的步骤:
-
在项目树中右键点击"Application"。
-
选择"Add Object" → "POU"。
-
输入名称:例如"MainProgram"。名称应描述其功能。
-
选择类型:选择"Program"作为类型。功能块(Function Block)和函数(Function)用于模块化编程。
-
选择编程语言:例如选择"Structured Text"(ST)。您可以根据需要选择其他语言。
-
点击"Open"创建:POU会在工作区打开,分为声明区(Declarations)和代码区(Implementation)。
添加POU后,您可以在声明区定义变量,在代码区编写逻辑。例如,在ST语言中,您可以编写类似Pascal的代码。
以下是添加POU的界面图示:

2.4 编程语言示例:梯形图与结构化文本
CoDeSys支持多种编程语言,每种适合不同场景。以下是两种常用语言的简单示例:
梯形图(LD):类似于电气电路图,适合逻辑控制。例如,创建一个启保停电路:
-
从工具箱拖拽常开触点(命名为"StartButton")、常闭触点("StopButton")和线圈("Motor")。
-
连接元素:将触点与线圈连接,形成自锁电路。当StartButton为ON时,Motor启动;当StopButton为ON时,Motor停止。
-
自锁功能:添加Motor的常开触点并联在StartButton两侧,实现自锁。
梯形图直观易学,但复杂逻辑可能难以管理。
结构化文本(ST):类似Pascal语言,适合复杂算法。示例代码:
PROGRAM MainProgram
VAR
StartButton: BOOL;
StopButton: BOOL;
Motor: BOOL;
END_VAR
// 启保停逻辑
Motor := (StartButton OR Motor) AND NOT StopButton;
END_PROGRAM
ST语言灵活,支持条件语句、循环和函数调用。对于数学运算或数据处理,ST更高效。
选择语言时,考虑项目需求:LD适合简单逻辑控制,ST适合计算密集型任务。
第三章:编程与变量管理
3.1 变量声明详解
在POU的声明区,您需要定义所有变量。变量声明包括名称、数据类型和初始值。基本数据类型:
-
BOOL:布尔值,TRUE或FALSE,用于表示开关状态(如按钮按下)。
-
INT:整数,范围-32768到32767,用于计数或索引。
-
REAL:浮点数,用于测量值如温度或压力。
-
STRING:字符串,用于文本信息或消息。
示例变量声明:
VAR
bStartButton: BOOL := FALSE; // 启动按钮,初始值为FALSE
nCounter: INT := 0; // 计数器,初始值为0
rTemperature: REAL; // 温度值,未初始化
END_VAR
变量可以映射到硬件地址,例如%IX0.0表示输入位的第0字节第0位。使用硬件地址时,确保与PLC配置匹配。
变量声明后,您可以在代码区使用它们。良好的命名习惯(如前缀b for BOOL, n for INT)提高代码可读性。
3.2 编写第一个程序:启保停电路
让我们用ST语言编写一个简单的启保停程序。此程序模拟典型工业控制:按启动按钮启动电机,按停止按钮停止电机,并带有自锁功能。
步骤:
-
在MainProgram的声明区,定义变量:
VAR StartButton: BOOL; // 输入:启动按钮 StopButton: BOOL; // 输入:停止按钮 Motor: BOOL; // 输出:电机状态 END_VAR -
在代码区,编写逻辑:
// 启保停逻辑:当启动按钮按下或电机已运行,且停止按钮未按下时,电机运行 Motor := (StartButton OR Motor) AND NOT StopButton; -
添加注释:使用
//或(* *)添加注释,说明代码功能。例如,// This is a comment。
此程序使用布尔逻辑实现自锁。当StartButton为TRUE时,Motor变为TRUE;即使StartButton变为FALSE,Motor保持TRUE直到StopButton为TRUE。
3.3 使用梯形图编程
如果您偏好梯形图,可以创建另一个POU选择LD语言。步骤:
-
添加新POU:右键"Application" → "Add Object" → "POU",名称"LD_Program",类型"Program",语言"Ladder Diagram"。
-
在梯形图编辑器中,从工具箱拖拽元素:
-
常开触点:拖到第一行,命名为"StartButton"。
-
常闭触点:拖到第一行右侧,命名为"StopButton"。
-
线圈:拖到第一行末端,命名为"Motor"。
-
自锁触点:拖放Motor的常开触点并联在StartButton两侧。
-
-
连接元素:点击触点右侧的连线点,拖动到线圈左侧,形成电路。
梯形图编辑器提供可视化编程体验,适合电气背景的用户。
以下是梯形图编辑器的图示:

3.4 编译程序
编写完代码后,需要编译以检查错误。编译将代码转换为PLC可执行的机器码。
-
点击菜单栏:选择"Project" → "Build"(或按F7快捷键)。
-
查看消息窗口:编译过程中,消息窗口显示进度和结果。如果无错误,显示"0 errors, 0 warnings"。
-
处理错误:如果有错误,根据提示修改代码。常见错误包括语法错误、变量未声明或类型不匹配。
编译成功后,程序 ready for download。如果您使用模拟器,无需真实PLC即可测试。
第四章:调试与运行
4.1 下载程序到模拟器
CoDeSys Control Win V3模拟器允许您在PC上运行PLC程序,无需硬件。下载步骤:
-
启动模拟器:点击菜单栏"Online" → "Start Simulation"(或按Ctrl+F7)。模拟器在后台运行,系统托盘显示图标。
-
登录设备:点击"Online" → "Login"(或按Ctrl+F5)。这会建立连接并下载程序到模拟器。
-
选择下载选项:在弹出的对话框中,选择"Download program only"(仅下载程序)。如果选择"Download and run",程序会自动运行。
-
等待下载完成:状态栏显示"Login succeeded",表示程序已下载。
下载后,模拟器会模拟PLC运行。您可以在线监视和调试程序。
4.2 在线调试技巧
CoDeSys提供强大的调试工具,帮助您验证程序逻辑:
-
监视表(Watch Table):右键变量选择"Watch",将其添加到监视表。监视表实时显示变量值变化。例如,添加StartButton、StopButton和Motor变量,观察它们的状态。
-
强制功能(Force):右键变量选择"Force",手动设置值用于测试。例如,强制StartButton为TRUE,模拟按钮按下。
-
断点调试(Breakpoints):在ST代码行号旁点击设置断点(红点)。当程序运行到该行时暂停,便于检查状态。仅ST语言支持断点。
-
跟踪功能(Trace):记录变量值历史,分析趋势。在"Online"菜单中启用跟踪。
调试时,确保模拟器处于运行状态:点击"Online" → "Run"(或F5)。如果程序行为异常,检查逻辑或变量值。
4.3 运行控制
运行程序后,您可以控制其执行:
-
启动运行:点击"Online" → "Run"(F5),程序开始执行。
-
暂停程序:点击"Online" → "Pause",临时停止执行,用于检查状态。
-
停止程序:点击"Online" → "Stop",完全停止执行。
-
重启程序:点击"Online" → "Reset",重新启动程序。
在运行过程中,通过监视表观察变量变化。例如,强制StartButton为TRUE,应看到Motor变为TRUE;强制StopButton为TRUE,Motor变为FALSE。
4.4 常见问题与解决
调试中常见问题及解决方法:
-
程序不运行:检查模拟器是否启动,或登录是否成功。重启模拟器或重新登录。
-
变量值不变:确保程序在运行状态,并检查逻辑错误。
-
编译错误:修改代码后重新编译。常见错误包括拼写错误或缺失分号。
-
连接失败:如果使用真实PLC,检查网络或硬件连接。
如果问题持续,查看消息窗口的错误详情,或查阅CoDeSys帮助文档。
第五章:导出与项目管理
5.1 保存项目
定期保存项目防止数据丢失:
-
手动保存:点击"File" → "Save"(或Ctrl+S)。建议每完成一个步骤就保存。
-
自动保存:在设置中配置自动保存间隔(如每10分钟)。路径:"Tools" → "Options" → "Editor"。
-
另存为:点击"File" → "Save As",可保存为不同版本或位置,便于备份。
项目文件(.project)包含所有代码和配置。同时,CoDeSys自动生成备份文件(.bak),可在意外删除时恢复。
5.2 导出项目
CoDeSys支持多种导出格式,用于分享或归档:
-
导出为压缩文件:点击"File" → "Export" → "Project to File",选择ZIP格式。这包含所有项目文件,便于传输。
-
导出文档:点击"File" → "Export" → "Documentation",选择PDF或HTML格式。生成的项目文档包括代码、变量列表和注释,适合交付或审计。
-
导出库文件:如果您创建了可重用功能,可导出为库(.library),供其他项目使用。
导出后,将文件存储在安全位置。对于团队项目,使用版本控制系统(如Git)管理更改。
5.3 最佳实践
为了高效管理项目,遵循以下最佳实践:
-
模块化设计:将功能分解为多个POU(如程序、功能块),提高可重用性。
-
使用注释:在代码中添加详细注释,说明逻辑和用途,便于维护。
-
版本控制:定期备份项目,并记录版本变化。
-
测试充分:在模拟器中彻底测试后再部署到真实硬件。
第六章:无缝集成无线远程解决方案
通过前五章的详细教程,您已经掌握了CoDeSys V3从安装、编程到调试的全流程。但在实际工业应用中,传统编程方式存在一个核心痛点:依赖物理线缆连接。无论是CAN总线、RS232串口还是以太网,都需要现场接线,这不仅增加了维护成本,还限制了远程操作的灵活性。本章将介绍如何通过英辉InVent E30M6203-5G无线远程终端,打破这一束缚,实现CoDeSys项目的无线化升级。
6.1 为什么需要无线解决方案?
在工程机械、移动设备和分布式工业场景中,设备往往分布在偏远或危险环境,现场接线和维护既耗时又高风险。例如:
-
挖掘机在矿山作业:技术人员需要频繁前往现场更新程序,效率低下。
-
生产线设备调试:多台PLC分散布局,接线复杂,容易出错。
-
紧急故障处理:设备停机时,需快速远程诊断,避免生产损失。
E30M6203-5G针对这些问题应运而生,它专为CoDeSys生态设计,支持全无线操作,让您摆脱线缆束缚,提升工作效率。
6.2 产品核心优势:完全兼容CoDeSys
6203与CoDeSys V3无缝集成,支持所有标准接口:
-
CAN总线无线化:通过终端内置的双CAN通道(CAN1和CAN2),您可以直接无线下载程序到PLC,无需物理连接。终端自动处理波特率适配和节点扫描,兼容CoDeSys的CANopen协议。
-
串口与以太网无线透传:RS232、RS485和以太网数据可通过4G/5G或WiFi实时传输,确保CoDeSys的变量监视、强制操作远程进行。
-
远程下载与调试:使用终端后,CoDeSys的"登录"和"下载"功能完全无线化。您可以在全球任何地点,通过互联网更新程序,就像本地操作一样简单。
例如,在CoDeSys中编译完程序后,只需在SuperIT软件(E30M6203配套工具)中选择无线通道,即可下载到目标PLC,无需接触设备。
6.3 关键好处:提升效率与灵活性
-
无需现场访问:通过无线网络,实现远程程序下载、实时监控和故障诊断,减少差旅成本和停机时间。技术员在办公室即可完成所有操作。
-
多网络支持:终端支持4G/5G、WiFi和有线备份,适应各种环境。在无WiFi的野外,5G网络提供低延迟连接(时延约50ms),确保CoDeSys在线调试流畅。
-
即插即用集成:终端提供标准接口(如35针插件),直接连接PLC的CAN或串口,无需修改现有CoDeSys项目。设置简单,只需配置网络参数即可上线。
-
安全可靠:内置加密传输和认证机制,保护CoDeSys项目数据安全,防止未授权访问。
6.4 如何快速上手?
-
硬件连接:将终端与PLC通过CAN或串口连接(接线定义见产品手册),通电后指示灯SYS闪烁表示就绪。
-
软件配置:在CoDeSys中,设备类型选择"Generic PLC",设置终端的IP地址(如192.168.65.1)
-
无线操作:在CoDeSys中编译程序后,通过SuperIT选择下载通道(如CAN1),即可无线下载。监视表和数据透传功能同样无线可用。
整个过程无需更改CoDeSys代码,真正实现无缝过渡。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)