You are currently viewing 宏集干货 | 手把手教你通过CODESYS V3进行PLC编程(二)

宏集干货 | 手把手教你通过CODESYS V3进行PLC编程(二)

教程背景

在上一期教程中,我们已经完成了控制器设备的连接和配置。接下来的教程将继续以宏集MC-Prime为例,假设控制器已经配置并连接到开发者的PC上,为您演示如何为控制器安装合适的CODESYS V3版本创建第一个程序

一、安装CODESYS

(一)选择适合的版本

值得注意的是,控制器不能与任意编码的V3版本一起使用,其对CODESYS V3的版本和相应的target要求取决于控制器的固件版本。因此,重要的是要为您的控制器安装适配的CODESYS V3版本,而非直接使用CODESYS V3开发环境的最新版本。

要找到控制器的固件版本,请参考上一则教程中“通过web界面进行配置”的步骤,登录到控制器的web界面,并打开“System Info”页面。

如上图所示,可以看到控制器的固件版本为1.1.3,且宏集MC-Prime是基于Pi控制平台的,那么根据固件版本和CODESYS V3版本的对应选型表可知,该控制系所使用的开发环境为:CODESYS3.5.16.50。您可以通过CODESYS官网下载对应的安装包。

(二)安装CODESYS V3

完成安装包的下载,之后CODESYS V3的具体安装步骤如下:

01 启动安装:请注意需以管理员身份运行文件CODESYS.3.5.16.50,以启动CODESYS V3的安装。

02 自定义安装位置:点击“Next”,接受相应的安装要求,并再次点击“Next”,跳转到下图界面,可自定义更改软件安装位置:

03 选择特性:如果您不知道您需要什么特性,那么就对所有特性进行完整的安装;反之,您可以取消选择一些不必要的特性。

04 等待安装完成:点击“Next”,等待安装结束后,点击完成即可。

二、创建程序

至此,我们已经完成CODESYS的安装;本节将详细介绍如何创建、编译并运行第一个CODESYS V3项目。在此之前,需再次确认以下要求已被满足:

·控制器的网络设置必须正确配置,以便通过以太网访问控制器。

·必须在开发人员的计算机上安装与控制器固件版本相对应的CODESYS V3版本和 设备库Target Package。

(一)快速创建第一个项目

确认无误后,我们可以逐步创建一个CODESYS V3的示例项目,并加载到控制器上,执行的步骤如下:

01 点击“新建项目”,选择“标准项目”,自定义存储路径和项目名称,注意选择文件设备类型

02 连接项目中的控制器:创建空项目后,必须将控制器集成到项目中;首先选择您新创建的项目,然后用右键单击打开上下文菜单,选择菜单项“添加设备”

按下“添加设备”后,关闭窗口;在设备窗口中,会显示一个“PLC 逻辑”类型的对象,下面包含一个“Application”类型的对象,和一个库管理器。

(二)创建程序并自定义任务

为了获得一个完整的、可执行的程序,必须将至少一个“程序”类型的对象插入到项目中,并且必须为要执行的程序定义一个合适的任务

01 创建程序:选择您的应用程序对象,然后单击右键以打开上下文菜单,选择“添加对象”,然后在子菜单中选择“POU…”

选择POU的类型为“程序”,并给该程序起一个名称。在本例中,名称“main”用来表示这是控制器的主程序。所选择的实现语言是ST(结构化文本)。

02 定义任务:通过双击编辑模块,在编辑器窗口的上半部分中定义我们的第一个变量,名称为“counter”,数据类型为INT,并用值“0”初始化这个变量。就此我们实现了一个简单的程序:每当您调用“main”对象时,该程序都会对变量“counter”实现+1。

03 选择对象:对于要调用的程序,必须插入一个具有“任务配置”类型的对象。此对象会自动创建一个类型为“MainTask”的子对象。您可以通过双击“MainTask”对象来配置它。选择“添加调用”,然后选择您已经创建的“程序”对象“Main”,点击确定。

04 任务时间间隔:默认情况下,任务时间间隔设置为25 ms,这意味着控制器将每25 ms调用并运行你的“程序”对象。对于几个已定义的任务,当一个程序正在执行时,优先级高的任务优先于优先级低的任务,能中断同一资源中优先级低的程序执行,使较低优先级的程序执行被放缓。

循环时间间隔设置注意事项:在 CODESYS V3 中,使用虹科控制器的最快循环时间是 1 毫秒;基于 PI 的控制器可以将循环时间降至 500 微秒

(三)登陆控制器并运行项目

要将应用程序加载到控制器上时,CODESYS V3不会自动知悉项目应该加载到哪一控制器上。这就要求用户自行为CODESYS V3项目分配控制器。除了分配控制器外,还必须确认应用程序没有错误。

01 扫描控制器:在设备窗口中双击“Device”打开通信设置,显示尚未分配设备。默认情况下,必须释放位于中间的已添加的网关;右边的符号是指定的控制器,此时仍然为空。

搜索网络中已连接的控制器。

方法一:只需点击“扫描网络”按钮。

方法二:若使用上述方法无法成功扫描,则直接用IP地址扫描,输入控制器IP地址,并按Enter键,控制器就能被搜索出来。

02 检查程序错误:按下“编译”菜单栏下的“编译”项,或通过“F11”快捷键,构建程序并检查代码、可视化和设置中的错误。

经过短暂的等待后,结果将显示在消息窗口中。如果您在创建此示例时没有出错,则应该显示“0错误”和“0警告”;如果确实发生了错误,它将显示在消息中,通过双击错误消息,CODESYS V3将自动跳转到错误的位置,帮助您有效且轻松地修复错误。如果该项目已经完全没有错误,并且已分配了一个控制器,那么您可以将该程序加载到该控制器上。

03 加载应用:要登录,请按菜单栏“在线->登录到”或“登录”按钮,该按钮位于菜单栏中的项目“窗口”和“帮助”下方。

如果到目前为止在控制器上没有应用程序,则会出现如图显示的消息;如果一个应用程序已经加载到控制器上,则会出现一条消息,说明该控制器上有一个未知的应用程序。此消息可能会根据现有的应用程序是否正在运行而有所不同。

在所有情况下,请按下“是”来确认。但如果有消息显示程序中仍然有错误,您需要取消登录,首先找到程序中的错误并纠正它们。然后,再以CODESYS V3将应用程序加载到控制器上。

04 运行应用:当“设备”和“应用程序”后出现绿色背景,并且在后面出现“[已连接]”或“[停止]”字样时,加载过程就完成了。此时应用程序已完全加载到控制器上,但仍处于Idle状态,尚未运行。要启动程序,请点击菜单栏中的“调试->启动”或按“F5”键。

当设备窗口中的“应用程序”状态从“[stop]”更改为“[运行]”时,将在控制器上执行该程序;此时,点开之前创建的程序“Main”,可以看到计数器“counter”中的值在累加

就此,我们完成了CODESYS的安装并创建了一个应用程序。在下一则教程中,宏集将带你创建可视化界面使用控制器的内部输入和输出

关于宏集

宏集科技(上海)有限公司是广州虹科电子科技有限公司旗下的子公司。依托于总公司在工业领域多年的技术经验和客户积累,宏集科技为国内外数字化和智能化工厂提供面向工业现场控制级、边缘级、过程监控级和云端的解决方案,致力于帮助各行业推动数字化转型升级。我们与全球顶尖工业技术团队开展深度合作,提供包括物联网HMI、网关、工业树莓派、SCADA解决方案、边缘计算解决方案、OPC通信方案、MQTT通信方案、预测性维护方案、传感器方案等在内的多种工业自动化解决方案。我们已为石油、化工、海洋海事、医药、食品、包装、汽车、钢铁等多个行业超过300家用户提供了从硬件到软件的不同方案,广受客户的好评与信任。
选择宏集科技,就是选择专业和可靠。我们将为您提供一站式解决方案、个性化定制服务以及专业可靠的售后技术支持,省时高效,助力企业实现自动化升级与数字化转型。