克服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编程工作流程来提高自动化水平?
想要成为PLC编程专家?这7种最常见的PLC编程软件有什么区别?
plc编程软件有哪些?
1、欧姆龙plc编程软件
欧姆龙plc编程软件集成了CX-Programmer V9.5,能够为欧姆龙PLC编程提供全面的软件支持,本版本为最新版,全面支持32/64位WIN8系统,为多国语言版,支持简体中文。能为网络、可编程终端及伺服系统、电子温度控制等进行设置。适用于已具有电气系统知识(电气工程师或等同者)的负责安装FA系统者、负责设计FA系统者和负责管理和维护FA系统者使用。
2、三菱PLC编程软件
三菱PLC编程软件适用于Q、QnU、QS、QnA、AnS、AnA、FX等全系列可编程控制器。三菱PLC编程软件GX Developer定位为可编程控制器综合开发平台,支持梯形图、指令表、SFC、 ST及FB、Label语言程序设计,网络参数设定,可进行程序的线上更改、监控及调试,具有异地读写PLC程序功能。三菱公司目前最新PLC编程软件。
3、西门子step7
STEP7是西门子的最经典的编程软件,其中对应着西门子S7-300/400系列,属于西门子旧款PLC的代表作。STEP 7具有以下功能:硬件配置和参数设置、通讯组态、编程、测试、启动和维护、文件建档、运行和诊断功能等。STEP 7的所有功能均有大量的在线帮助,用鼠标打开或选中某一对象,按F1可以得到该对象的相关帮助。
在STEP 7中,用项目来管理一个自动化系统的硬件和软件。STEP 7用SIMATIC管理器对项目进行集中管理,它可以方便地浏览SIMATIC S7、M7、C7和WinAC的数据。实现STEP 7各种功能所需的SIMATIC软件工具都集成在STEP 7中。
4、西门子博途
TIA博途是全集成自动化软件TIA portal的简称,是西门子工业自动化集团发布的一款全新的全集成自动化软件。它是业内首个采用统一的工程组态和软件项目环境的自动化软件,几乎适用于所有自动化任务。借助该全新的工程技术软件平台,用户能够快速、直观地开发和调试自动化系统。
5施耐德编程软件
Unity Pro XL是施耐德电气自动化的核心产品,它是新一代软硬件自动化平台。其全新的独创设计缩短了开发时间,处理器的灵活性可以实现更高的性能。基于开放性以及对工具的协同式应用,Unity 在软件开发和控制系统运行上达到了更高水平,它将生产率的提高放在首位。
6、松下plc编程软件
松下FP系列PLC编程软件FPWIN GR 是一款功能强大,好用的系统编程软件。下载后压缩包说明内有序列号,已测试能用。安装包括MEWNET-H链接系统时所需要的软件,用于各种智能模块的设定软件,编程手册,本文件为说明PLC指令的PDF格式文件。
7、Delta WPLSoft台达PLC编程软件
台达PLC编程软件WPLSoft 最新版,在没有真实PLC的情况下,在电脑上模拟运行PLC程序的执行情况。先点仿真,在点那个梯形图监控。就可以右击控制一些量的状态。实现仿真。注意要和PLC连接起来。
启动仿真器之后不必选择通讯接口即可进行监控、上下载程序等通讯功能,操作方式与实际连接PLC相同。仿真器支持定时器及计数器,但定时器与计数器的运行时间会依用户计算机执行效率不同而有所不同。定时器处理方式与DVP-ES/SA系列PLC的动作相同。
相关问答
支持带参调用子程序st语言plc推荐?
ST语言支持功能块调用,子程序调用,函数调用,目前支持ST语言的有倍福,和利时,AB,三菱,西门子,ST语言基于IEC-61131-3国际通用PLC语言系统。功能强大,编...ST...
PLC编程分几种?
PLC编程分为几种不同类型,其中最常见的是基于图形化编程界面的Ladder逻辑编程。除此之外,还有文本式编程、函数块编程和结构化文本程序设计等多种方式。每种编...
基于PLC的变频调速恒压供水系统,毕业论文?
随社会经济的迅速发展,人们对供水质量和供水系统可靠性的要求不断提高,再加上目前能源紧缺,利用先进的自动化技术、控制技术以及通讯技术,设计高性能、高节能...
跪求答案,基于PLC控制的自动配料系统?
[回答]成立十余年来始终致力于产品的开发和制造。是一家专注于灌装设备、包装机械及控制系统,称重配料系列产品的研发、生产、销售型公司。,主要生产研发...
基于PLC控制汽车车库自动门系统设计梯形图(西门子s7-200)具...
[最佳回答]LD开门到位限位开关:I0.2OM0.0LDN门内光电探测开关:I0.0ON门外光电探测开关:I0.1ALDANT100TONT100,80=M0.0LD门内光电探测开关:I0.0O...
【“基于组态、PLC恒压供水系统的设计”翻译成英文是什么?】...
[最佳回答]Basedonconfiguration,PLCconstantpressurewatersupplysystemdesign
plc状态机编程思路及方法?
PLC状态机编程是一种基于状态转移的程序设计方法,主要思路是将程序分解成多个状态,每个状态对应着一种特定的工作模式和控制逻辑,通过状态之间的转移实现程序...
倍福的PLC与西门子的PLC都有哪些不同?哪个应用的更为广泛?软...
软PLC是什么?西门子讨论回答(9)倍福PLC还在幼儿阶段,西门子已经在壮年了,你选谁的?无论是技术支持和技术支持网络还是资料支持倍福都还没在中国建立起来呢...
PLC控制系统比计算机控制系统的优点是什么?
PLC控制系统比计算机控制系统的优点:1、实时性●由于控制器产品设计和开发是基于控制为前提,信号处理时间短,速度快。●基于信号处理和程序运行的速度,P...
普中的PLC编程软件能安装苹果笔记本吗-ZOL问答
3条回答:【推荐答案】三菱不支持Mac的系统,因此你只能在Mac上安装基于MAC的虚拟机软件,然后安装XP系统,再进行三菱软件的安装。