直播课堂
HOME
直播课堂
正文内容
linux plc编程软件 克服PLC编程的难题——基于Git的软件
发布时间 : 2025-05-11
作者 : 小编
访问数量 : 23
扫码分享至微信

克服PLC编程的难题——基于Git的软件

图片来源:Copia Automation

作者:Darren Henry

  一家控制系统集成商使用基于Git的软件提高了自动化程度,并提升了新员工的入职培训效率和质量。

  Git是一种分布式版本控制系统,它可以记录文件的修改历史和版本变化,并可以支持多人协同开发。Git最初是由Linux开发者Linus Torvalds创建的,它具有高效、灵活、稳定等优点,如今已成为软件开发领域中最流行的版本控制系统之一。Git使用一种名为“仓库”的数据结构来保存代码和它们的变更历史。每个开发人员都可以在本地拥有自己的仓库,并将其与其他人的仓库同步更新。除此之外,Git还提供了强大的分支和合并功能,可以让开发人员在不影响主干的情况下创建和测试新功能。

  自1996年以来,工程咨询公司DMC一直致力于通过定制的自动化软件和控制系统,帮助客户提高生产设施的生产力。他们参与过很多行业应用,如汽车、食品和饮料,甚至海军战舰。

  负责该公司美国西部自动化业务的项目总监John Sullivan表示,对服务的需求从未如此之高。“有时,我们不得不地拒绝合同,因为需求超过了我们快速雇佣和培训控制工程师的能力。”

  控制系统集成商协会(CSIA)最近的一项调查显示,2021年系统集成工程师的招聘形势严峻,但整个领域的人员流动率却高达16.5%,这也印证了 Sullivan 的判断。

  最大的瓶颈是培养新人才和有效地利用高级工程师的时间。软件工程专业的学生,学习的通常是基于文本的编程语言,而不是专用于机器自动化的可编程逻辑控制器(PLC)可视化梯形逻辑图。因此,年轻的工程师需要与经验丰富的导师配对进行培训,这可能需要几个月的时间。

  在DMC公司,软件项目组的大小从一名程序员到25名工程师不等,夏季往往会需要更大的团队,新人可以向经验丰富的同事学习。高级工程师的日程很快就被频繁的设计审查填满。到了冬天,随着大学毕业生更有能力独立开展工作,小型的团队变得越来越普遍。

  为了简化其设计审查过程、版本控制和协作,他们采用了基于Git的软件,该软件可以加速多个PLC编程环境的开发。这使团队能够在相同的文件上工作,而不会有覆盖他人工作的风险。Git分支和合并功能,为梯形图逻辑编程带来了与文本语言项目相同的协作优势。

  带注释的可视化检查功能,提供了易于阅读、颜色编码的比较,审核人员无需在原始集成开发环境(IDE)中下载和打开文件。

通过在网络浏览器或桌面应用程序中显示PLC梯形图逻辑 并突出显示提交之间的变化 Copia可以加快代码审查速度

  01 尽早发现并修复错误

  PLC编程语言的自动渲染以及在不使用原始IDE的情况下快速可视化变更的能力,大大加快了初级和高级工程师之间的反馈路径。在领导多个项目时,由于代码审查速度更快,高级工程师每周最多可以节省一天的时间。此外,审查比以前更频繁。Sullivan说道,“在部署或测试之前,我们会发现更多的错误。因为我们总是在合并之前查看可视化代码,所以我们犯的错误也更少。”

  转向基于Git的软件后,使Sullivan的团队效率大大提高。他说,“虽然在管理项目历史方面Git本身做得很好,但在审查代码时就显得力不从心了。每当有人提交代码变更时,我们的高级工程师都需要打开两份开发环境副本,在两个平台之间进行比较,并在重新提交之前手动复制代码。现在,我们可以立即看到变更,只需单击几个按钮即可合并这些变更。过去需要45分钟的过程,现在只需要15分钟。”

  “成功的关键之一就是要确保拥有最新的代码。共享同一个资源库有助于实现这一点。”

  02 克服自动化编程的难题

  Copia Automation公司基于Git的版本历史记录,可以捕获项目生命周期中的所有编码变更,允许团队根据需要恢复到任何早期版本。编辑历史对于团队成员了解最新的项目变化非常重要,它也有助于管理困扰DMC公司多年的难题。对于很多企业来说,挑战在于:在安装后很长一段时间内,如何保持为机器和系统提供持续支持的能力。

  Sullivan说:“我最近收到一位客户来信,该客户在七年前与我们最后一次合作。负责该项目的工程师和经理都去世了。始终能够找到老旧项目的文件非常重要。另外一个客户设施遇到电涌,导致其丢失了相关程序。不幸的是,他们从来没有保存过它的副本。因此,我们需要获取旧代码,并帮助它们重新部署到一组新的硬件上,以便它们能够恢复运行。现在,我们团队中的任何人,都能够在没有参与该项目的原始工程师参与的情况下,轻松应对这些难题。拥有项目整个生命周期的情境信息非常有价值。”

  在一个安全的中央存储库中拥有唯一的信息来源,也有助于团队更有效地与制造客户合作。有些客户在运营设施时,工程师会定期进行小代码更改。当真出现问题时,他们会给出及时反馈。Sullivan说,“我们的工作是介入并帮助客户解决问题。成功的关键之一是确保我们拥有最新的代码。共享同一个存储库可以做到这一点。”

  业界仍然依赖文件名和共享文件夹是一件 "令人尴尬 "的事情。开发一个精简平台,让程序员可以相互学习并开发单一的信息来源,这对于减少瓶颈和让年轻工程师在不麻烦高级工程师的情况下学习至关重要。基于Git的软件帮助他们大大提高了工作效率。

  关键概念:

  ■ 如何培养新人并对其进行编程培训,是一个主要的挑战。

  ■ 了解基于Git的软件如何消除一些潜在的瓶颈。

  ■ 发现单一信息来源对编程的重要性,以及开放式沟通对团队的好处。

  思考一下:

  如何通过改变PLC编程工作流程来提高自动化水平?

兄弟们 CODESYS 搞起

1 前世今生:

CODESYS 软件工具是一款基于先进的.NET 架构和 IEC 61131-3 国际编程标准的、面向工业 4.0 及物联网应用的软件开发平台。CODESYS 软件平台的独特优势是用户使用此单一软件工具套件就可以实现一个完整的工业自动化解决方案,即在 CODESYS 软件平台下可以实现:逻辑控制(PLC)、运动控制(Motion Control)及 CNC 控制、人机界面(HMI)、基于 Web Service 的网络可视化编程和远程监控、冗余控制(Redundancy)和安全控制(Safety)等。

1.1 标准化

符合 IEC 61131-3 国际标准(即提供六种编程语言)和 IEC 61508(安全标准)。

1.2 开放式、可重构的、组件化平台架构

CODESYS 可以向用户共享其全球领先的自动化开发平台中间件 CODESYS Automation Platform,并倾力支持和帮助用户开发出拥有自主知识产权的开发环境。

基于.NET 架构,CODESYS 软件由各种组件化的功能件(编译器、调试器、运动控制、CNC、总线配置等)组成;用户可以根据自己的实际需求进行裁剪,并完全支持用户基于 CODESYS 公司提供的强大中间件产品和标准构建开发出封装有自主知识产权的功能组件和库。

1.3 良好的可移植性和强大的通信功能

CODESYS 完全支持 EtherCAT、CANopen、Profibus、Modbus 等主流的现场总线。

CODESYS Runtime System 可以运行在各种主流的 CPU 上,如 ARM、X86,并支持 Linux、Windows、VxWorks、QNX 等操作系统或无操作系统的架构。

1.4 强大的运动控制和 CNC 功能

支持单轴和轴组控制、CNC 控制、机器人控制。

1.5 支持第三方开发工具和应用程序

具有 OPC、OPC UA 等功能。

国内的汇川的InoProShop(CODESYS V3)、固高的OtoStudio(CODESYS V2.3);国外的倍福的TwinCAT3、KEBA的KeMotion,都是基于CODESYS Automation Platformm深度定制、二次开发,形成了自己独特风格的IDE。

为了便于学习,我们可以选择国内二次开发的IDE,例如汇川的InoProShop。它的界面与其CODESYS基本相似,编程过程和方式也相同。此外,它还提供了完整的中文帮助文档,并有丰富的国内论坛程序案例可供参考。一旦掌握了其中一种IDE,对于其他基于二次开发的IDE也能够轻松上手。因此,通过学习一种IDE,实际上相当于掌握了多个品牌的编程方法。

2 InoProShop 的特点和优势

InoProShop 是面向中型PLC的编程组态软件。InoProShop可以为中型PLC提供完整的配置、编程、调试、监控环境,可以灵活自由地处理功能强大的 IEC 语言。通过InoProShop可完成对工程和设备的管理;支持IEC 61131-3标准语言编程,具有灵活的功能块库,离线仿真功能,智能调试查错功能及采样跟踪功能。

汇川 PLC 编程软件 InoProShop ,旨在为工程师和编程人员提供高效、可靠的 PLC 编程体验。本文将介绍 InoProShop 的特点和优势,并结合创建项目过程展示其在工业自动化领域的应用。

2.1 用户友好的界面

直观的用户界面简化了 PLC 编程操作,适用于初学者和有经验的工程师。

2.2 多语言支持

支持梯形图、结构化文本和顺序功能图等多种编程语言,提供灵活的选择以适应不同编程需求。

2.3 高效的调试工具

强大的在线调试工具帮助快速发现和纠正错误,实时监控和可视化界面节省时间和精力(CODESYS 的ST监控甩博图好几条街)。

2.4 丰富的函数库和模块

内置各种常用控制和运算功能的函数库和模块,简化编程过程,提高编程效率。

3 创建项目案例: 温度控制系统

3.1 硬件配置

使用 InoProShop 的硬件配置界面添加PLC,根据硬件选择,添加AI/AO模块,用于连接温度传感器和执行器。

3.2 编写控制逻辑

使用梯形图编程语言、ST编程语言或其他编程语言编写温度控制系统的控制逻辑,通过逻辑运算和数学运算实现温度的监测和控制,调用函数库中的 PID 控制函数实现自动调节加热功率。

3.3 在线调试和优化

使用 InoProShop 的仿真工具,验证和优化程序。实时监控,模拟输入信号,以检查逻辑正确性。调整和优化程序以确保系统稳定性和可靠性。

3.4 软硬件协同工作

将生成的控制程序下载到 PLC ,并与硬件设备进行协同工作。检查程序是否按正常的逻辑执行。

4 结尾:

CODESYS 通过其用户友好的界面、多语言支持、高效的调试工具和丰富的函数库,为工程师提供了便捷而高效的编程体验。通过实际的温度控制系统案例,展示了 CODESYS 在工业自动化中的应用。不论是简单的控制逻辑还是复杂的自动化系统,CODESYS 都能满足用户的需求,提供稳定可靠的解决方案。

工程师们可以根据具体项目需求,灵活运用 CODESYS 的功能和特点,快速开发出高质量的 PLC 控制程序。无论是初学者还是有经验的工程师,CODESYS 都是一个值得信赖的 PLC 编程工具。

相关问答

在三菱plc编程软件上怎样画状态流程图。它和梯形图能相互转...

我曾经试着在GX-deve软件画过,很麻烦你直接编程按顺序路编写梯形指令有用(0)回复lxhdzh1、这是非常复杂的,Q系列的SFC编程手册大约有300页,FX系列也有1个...

AB的PLC主要有什么系列的啊?

AB的PLC目前主要分5类:1.低端为MicroLogix1500,编程软件为RSLogix500。目前最新版本为V6.0。2.中端小型机为SLC500,编程软件为RSL...

如何连接abplc到电脑上?

首先打开RSLINX软件会在里面自动扫描到你连接的PLC。如果只是监控程序,那么直接打开下位软件,联机就可以。如果是新模块,先用BOOTP/DHCP设置CPU的IP(给旧模...

自动化专业适合从事嵌入式软件行业吗?

适合,适合,适合!重要的事情说三遍~嵌入式软件还是学自动化的人的一个主要方向,plc的发展很广阔。上学的时候自动化就是学各种控制,自动控制原理,顺序控...电子...

为什么工业使用PLC控制不用计算机编程控制?

1.plc也算是电脑,无非处理器等没有pc高,也不需要这么高性能。2.少了很多外设,功率更低体积更小更稳定。3.plc都是针对性的程序开发,体积更小响应更快。就...

做电气维修的学编程语言接受会快些吗?(个人感觉这和编程逻辑...

走向社会赞了好几年的大洋和朋友合伙买了个二手电脑自学,干了这么多年的维修的有点小领悟,感觉这编程语言的思维方式相同,自学了单片机的C,电脑的php,python...

工业plc控制到阿里云怎么对接?

那得看你买什么样的服务器了阿里云一般分两种,ECS和普通空间如果是ECS相当于是一个独立的机器,你需要安装系统,安装网站运行环境等一般是linux系统,所以是用s...

pic18f46k22用什么编程?

对于PIC18F46K22微控制器的编程,您可以使用Microchip公司的MPLABXIDE(IntegratedDevelopmentEnvironment)和MPLAB...

接触器用PLC怎么去控制?

这个属于plc与上位机通信和应用的问题,也就是所谓的数据采集与监控SCADA。不同的品牌或者型号的plc所使用的软件也是不同的,例如AB的5000系列要在计算机里面安...

世界前十的开源操作系统?

Tizen,Linux基金会和LiMo基金会,联合英特尔和三星电子,共同开发的开源操作系统,它可以满足物联网设备生态系统(包括设备制造商、手机运营商、应用开发者、独...

 贴片三极管  依米奴 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部