0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

手把手教你通过CODESYS V3进行PLC编程(三)

虹科工业物联网技术 来源:虹科工业物联网技术 作者:虹科工业物联网技 2023-11-30 14:02 次阅读

教程背景

通过之前的教程,我们已经为大家演示了宏集MC-Prime控制器的连接、试运行和CODESYS的安装,并创建了一个计数器项目。在本期教程中,我们将进一步深入,教大家如何使用CODESYS的可视化界面。

一、两种可视化方式

在CODESYS V3中,可视化界面分为两种类型:目标可视化和网络可视化。二者之间存在着一些本质上的区别。

(一)目标可视化

目标可视化(Target visualization)主要是针对一些带有集成屏幕的控制器(如宏集DC系列)。如果是没有屏幕的控制器,则需要通过在控制器上运行VNC服务器来使用目标可视化。目标可视化可以在一个或多个VNC客户端上显示。需要注意的是,目标可视化在所有连接的客户端上都会显示相同的图像,因此无法区分不同的客户端,也无法同时使用多个目标可视化。

(二)网络可视化

网络可视化(Web visualization)则会启动一个Web服务器,并提供基于HTML5和JavaScript的网页。通过浏览器或与HTML5兼容的设备,网络可视化得以显示。与目标可视化相比,网络可视化能够区分多个同时使用相同的可视化界面的个人用户,也可以同时运行多个网络可视化。这意味着可以通过一个控制器来控制和评估不同的屏幕。

二、实现可视化

为了能够在应用程序中使用可视化功能,必须首先添加一个具有“可视化管理器”类型的对象,步骤如下:

1. 插入视图管理器

请在设备视图中选择您的“应用程序”对象,然后右键单击以打开上下文菜单。首先选择“添加对象”,然后选择“视图管理器”。

wKgZomVoI1CAIE0KAAC4lwUjauE533.pngwKgZomVoI12ANhNyAAC0qqLR6BY306.png

在插入名为“视图管理器”的对象后,系统会自动创建一个网络可视化和一个目标可视化。需要注意的是,本教程使用的控制器宏集MC-Prime仅支持网络可视化功能。

此外,系统还会创建一个名为“VISU_TASK”的新任务。图形界面始终独立于其他任务运行。默认情况下,“VISU_TASK”的周期时间为100毫秒,优先级为31,意味着可视化任务的优先级最低,这样可以确保界面不会阻碍具有实时优先级的任务的执行。

2. 添加对象

插入“可视化管理器”后,现在可以创建“可视化”类型的对象。再次打开应用程序菜单,并添加一个具有“可视化”类型的对象。

wKgaomVoI3KAOVOMAACG_sBL3S0066.pngwKgZomVoI3uAZQLHAACbCcw1LzE364.png

3. 进行配置

现在,通过选择设备树中可视化管理器下面的相应对象并双击,打开网络可视化的设置,按如图所示步骤进行配置:

wKgZomVoI4uAfYfKAADOhnvHI94414.png

您可以为每个网络视图指定一个名称。此名称决定了可访问网络视图的URL。网络视图的web服务器运行在控制器的端口8080上。网络视图的默认路径是:http://[IP-redder Steuerung]:8080/webvisu.htm

4. 扩展主程序

下一个目标是创建一个可视化工具以显示我们主程序中的一些变量,并使用框架来实现单个可视化的可重用性,将一个可视化嵌入到另一个可视化中,实现一个灵活且可重用的可视化工具,更方便地监视和控制您的程序的状态和参数

为了实现这些目标,我们首先必须扩展我们的主程序,即我们的“应用程序”类型的“Main”对象。在“Main”程序中,定义其他变量:

→名称为“cotuner_enabled”的BOOL类型变量,作为第一个计数器变量。

→名称为“counter2”的INT类型,作为计数器变量。

→名称为“counter2_enabled”的BOOL类型变量,作为第二个计数器变量。

→名称为“input”的BOOL类型变量,用于存储数字输入的值。

→名称为“output”的BOOL类型变量,用于设置数字输出的值。

为此,使用IF语句检查变量的当前值,然后执行相应的操作。下图显示了完整的“Main”程序。

wKgaomVoI5eASBZTAACiDzFuQUA570.png

5. 定义变量

为了能够为这两个元素提供额外的功能,我们在可视化的界面编辑器中另外定义了两个IN-OUT变量:一个名为“counter”的INT类型变量和一个名称为“enabled”的BOOL类型变量④。

首先,我们将使用“enabled”变量来设置切换开关的状态。在可视化编辑器中选择开关,现在在右侧的“属性”窗口中将属性“variable”设置为“enabled”的值。因此,拨动开关总是与变量“enabled”⑤具有相同的状态。

wKgaomVoI8-AOFYjAAJBL-WGc_8134.png

6. 设置占位符

接下来,选择 text field⑥,并将属性“Text ”⑦,设置为值“%s”。这是一个占位符,在执行程序时会被文本变量的内容所取代。然后,您必须选择您要使用的文本变量,将其中的文本字段的“Text variable”属性⑧设置为值“counter”。如此,占位符将被替换为变量“counter”的值。您可以使用占位符将不同的变量类型(如字符串和INT)转换为文本。

wKgZomVoJAKAD94-AAIQO4OK88I151.png

三、可视化集成框架

由于在演示中定义了两个不同的计数器,因此您还需要两个文本框和两个开关来显示计数器读数,并激活或停用计数器。这是通过在另一个可视化中集成两帧-frame来实现的。在框架-frame的帮助下,可以实现多个嵌套,使帧再次嵌入到其他帧中。如此,您可以使用许多简单的元素来开发一个模块化的界面。

1. 设置第一个框架

编辑“Visualization”可视化①,并在“工具”窗口中的“基本”类别中插入可视化元素“frame”。然后选择框架②,会自动进入“框架配置”窗口。选择对应的视图,并添加到”Visualization”中③,如图:

wKgZomVoJCOAQBsoAAE2Q7PLNBs897.png

编辑“Visualization”可视化①,并在“工具”窗口中的“基本”类别中插入可视化元素“frame”。然后选择框架②,会自动进入“框架配置”窗口。选择对应的视图,并添加到”Visualization”中③,如图:

wKgZomVoJC-AEkcCAAD5B_WzKsU489.png

2. 复制框架

完成了第一个框架的配置后,您现在可以使用键组合“CTRL+C”在编辑器窗口中复制框架,然后用“CTRL+V”粘贴它。插入框架的副本后,用鼠标将框架拖动到正确的位置。请注意,Main函数中的变量“Main.counter2”和“Main.counter2_enabled”必须作为框架的属性输入。如果跳过此步骤,第二个帧也将显示第一个计数器的值。

wKgaomVoJDmAQJyFAAEsZ2cneXM519.png

3. 下载程序

点击登录并下载程序①,编译无误后可以看到界面显示“在线视图正在等待连接,请启动应用程序”,点击启动②

wKgZomVoJEyAaZwRAAC6je72h-Q587.png

可以看到如图所示的可视化界面,点击按钮可以看到计数器的数值变化:

wKgaomVoJFmAEPfDAADVEL40IqA015.png

此时,打开浏览器,输入对应的路径,同样可以看到配置好的可视化界面:

wKgZomVoJGWAJgFAAAC7q5zuJJ0010.png

就此,我们已在宏集MC-Prime上完成了CODESYS安装、应用程序创建与可视化的全过程。您可以尽情享受使用您的控制器。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5010

    文章

    13271

    浏览量

    463057
  • 编程
    +关注

    关注

    88

    文章

    3614

    浏览量

    93686
  • CoDeSys
    +关注

    关注

    10

    文章

    39

    浏览量

    18649
收藏 人收藏

    评论

    相关推荐

    手把手教你学FPGA 编程规范篇

    手把手教你学FPGA 编程规范篇
    发表于 02-02 11:32

    手把手教你构建一个完整的工程

    手把手教你构建一个完整的工程
    发表于 08-03 09:54 33次下载
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>构建一个完整的工程

    手把手教你写批处理-批处理的介绍

    手把手教你写批处理-批处理的介绍
    发表于 10-25 15:02 69次下载

    美女手把手教你如何装机(中)

    美女手把手教你如何装机(中) 再来是硬碟的部份,这款机壳还不错,可以旋转支架~
    发表于 01-27 11:14 1463次阅读

    美女手把手教你如何装机(下)

    美女手把手教你如何装机(下) 接著下来就是今天的重头戏,开核萝!~
    发表于 01-27 11:16 2923次阅读

    手把手教你制作XDS100V3教程+固件烧写方法--学DSP必备

    手把手教你制作XDS100V3教程+固件烧写方法--学DSP必备
    发表于 06-17 16:48 106次下载

    手把手教你安装Quartus II

    本章手把手把教你如何安装 Quartus II 软件 ,并将它激活 。此外 还有USB -Blaster下载器的驱动安装步骤 。
    发表于 09-18 14:55 9次下载

    手把手教你在家搭建监控系统

    手把手教你在家搭建监控系统
    发表于 01-17 19:47 25次下载

    手把手教你如何开始DSP编程

    手把手教你如何开始DSP编程
    发表于 04-09 11:54 12次下载
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>如何开始DSP<b class='flag-5'>编程</b>

    手把手教你学LabVIEW视觉设计

    手把手教你学LabVIEW视觉设计手把手教你学LabVIEW视觉设计手把手教你学LabVIEW视
    发表于 03-06 01:41 3129次阅读

    手把手教你开关电源PCB排板

    手把手教你开关电源PCB排板(新型电源技术)-分享一下开关电源PCB排板的基本要点及分析,以及例子讲解。绝对的手把手
    发表于 09-18 12:27 57次下载
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>开关电源PCB排板

    手把手教你学FPGA仿真

    电子发烧友网站提供《手把手教你学FPGA仿真.pdf》资料免费下载
    发表于 10-19 09:17 2次下载
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>学FPGA仿真

    手把手教你通过CODESYS V3进行PLC编程(二)

    在上一期教程中,我们已经完成了控制器设备的连接和配置。接下来的教程将继续以HK-MC-Prime为例,假设控制器已经配置并连接到开发者的PC上,为您演示如何为控制器安装合适的CODESYS V3版本并创建第一个程序。
    的头像 发表于 11-09 10:06 1243次阅读
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b><b class='flag-5'>通过</b><b class='flag-5'>CODESYS</b> <b class='flag-5'>V3</b><b class='flag-5'>进行</b><b class='flag-5'>PLC</b><b class='flag-5'>编程</b>(二)

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

    宏集MC系列是基于树莓派的高性能4核控制器;通过之前的教程,我们已经为大家演示了宏集MC-Prime的连接、试运行和CODESYS安装,并创建了一个计数器项目;本期教程将进一步教大家如何实现CODESYS的可视化,欢迎阅读及咨询
    的头像 发表于 11-17 10:09 769次阅读
    宏集干货 | <b class='flag-5'>手把手</b><b class='flag-5'>教你</b><b class='flag-5'>通过</b><b class='flag-5'>CODESYS</b> <b class='flag-5'>V3</b><b class='flag-5'>进行</b><b class='flag-5'>PLC</b><b class='flag-5'>编程</b>(<b class='flag-5'>三</b>)

    手把手教你通过CODESYS V3进行PLC编程(一)

    宏集MC系列模块化控制器是基于Raspberry Pi的高性能4核控制器,本系列教程将以宏集MC-Prime为例,详细演示通过CODESYS V3进行控制器测试
    的头像 发表于 11-21 15:13 2775次阅读
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b><b class='flag-5'>通过</b><b class='flag-5'>CODESYS</b> <b class='flag-5'>V3</b><b class='flag-5'>进行</b><b class='flag-5'>PLC</b><b class='flag-5'>编程</b>(一)