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

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

3天内不再提示

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

控制工程中文版 来源:控制工程中文版 2024-01-22 09:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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

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

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

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

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

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

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

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

3b6068ca-b8c4-11ee-8b88-92fbcf53809c.jpg

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

01

尽早发现并修复错误

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

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

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

02

克服自动化编程的难题

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

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

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

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








审核编辑:刘清

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

    关注

    41

    文章

    6999

    浏览量

    114567
  • plc
    plc
    +关注

    关注

    5052

    文章

    14928

    浏览量

    489370
  • 编程语言
    +关注

    关注

    10

    文章

    1966

    浏览量

    40018

原文标题:克服PLC编程的难题——基于Git的软件

文章出处:【微信号:控制工程中文版,微信公众号:控制工程中文版】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    从梯形图到现代语言的自动化编程之路

    本文将探讨根据国际标准IEC 61131-3定义的现代PLC编程方案。但由于各家PLC制造商都提供专用于其特定硬件的编程软件,因而在编码技术
    的头像 发表于 05-16 10:05 335次阅读
    从梯形图到现代语言的自动化<b class='flag-5'>编程</b>之路

    三菱FX3U串口PLC远程编程实现方法(上)

      所谓PLC远程编程,是指对PLC、触摸屏等设备的运行程序进行远程在线调整(即远程调试)以及程序更新(包括远程上下载)。例如,设备位于北京,技术人员在长沙,传统做法需要派人前往北京现场更新程序,而
    的头像 发表于 04-23 17:11 425次阅读
    三菱FX3U串口<b class='flag-5'>PLC</b>远程<b class='flag-5'>编程</b>实现方法(上)

    三菱FX3U串口PLC远程编程实现方法(下)

    设置,新建网关与设备之间的VPN连接通道; 第三步:启动客户端,建立远程连接通道; 第四步:打开PLC编程软件GX Works,执行远程编程任务。 上篇文章已对第一步和第二步做了详细说
    的头像 发表于 04-21 11:22 286次阅读
    三菱FX3U串口<b class='flag-5'>PLC</b>远程<b class='flag-5'>编程</b>实现方法(下)

    SDRAM工业动态随机存储器在可编程逻辑控制器(PLC)的应用

    在工业自动化控制系统中,可编程逻辑控制器(PLC)承担着数据采集、逻辑运算与执行控制的核心任务。随着生产现场对实时性和稳定性的要求不断提高,PLC对内部存储器的性能也提出了更严苛的需求。其中
    的头像 发表于 04-07 14:10 225次阅读

    如何实现对异地PLC的远程编程调试和上下载程序

    远程维护通道,让工程师在办公室即可完成异地PLC编程、调试、上下载程序,实现“足不出户、运维全球”。 一、方案核心原理:安全透明的远程通信桥梁 “现场PLC+工业智能网关+设备维护快线+管理云平台”的四层架构,核心是构建加密虚
    的头像 发表于 03-31 14:15 384次阅读
    如何实现对异地<b class='flag-5'>PLC</b>的远程<b class='flag-5'>编程</b>调试和上下载程序

    施耐德系列PLC远程编程操作指南

    前期准备 所需硬件:HINET G110智能网关、施耐德PLC、网线、电脑(需安装Unity Pro软件等) 连接方式: 网关LAN口通过网线与PLC直接连接 IP地址及网络环境说明 施耐德P
    的头像 发表于 03-24 16:49 733次阅读
    施耐德系列<b class='flag-5'>PLC</b>远程<b class='flag-5'>编程</b>操作指南

    嵌入式开发绕不开的版本管理工具——git

    Git是一个开源的分布式版本控制系统,由Linux之父Linus Torvalds于2005年用C语言开发,主要是为了帮助管理Linux内核开发而创建的一个开放源码的版本控制软件Git与常用的版本
    的头像 发表于 01-30 16:47 1540次阅读

    CH341编程软件下载

    一款外国人设计的CH341编程软件,针对24CXX,25CXX等编程下载用,有更新资料见闲鱼上”于人杂货铺“
    发表于 01-23 15:37 16次下载

    设备电磁兼容整改:硬软件双维度破解辐射超标难题

    设备电磁兼容整改:硬软件双维度破解辐射超标难题|深圳南柯电子
    的头像 发表于 12-23 10:05 645次阅读

    ‌Microchip PL460可编程窄带PLC调制解调器技术解析

    Microchip Technology PL460可编程窄带PLC调制解调器设计用于在低于500kHz的频段内运行任何PLC协议。PL460嵌入PLC线路驱动器,实现高度集成的解决方
    的头像 发表于 10-11 15:04 1030次阅读
    ‌Microchip PL460可<b class='flag-5'>编程</b>窄带<b class='flag-5'>PLC</b>调制解调器技术解析

    信捷XS STUDIO编程软件V2.3.2版本的全新功能

    XS Studio(V2.3.2)编程软件,是面向XS系列的编程组态软件,集成了PLC编程、可视
    的头像 发表于 09-20 14:19 2727次阅读
    信捷XS STUDIO<b class='flag-5'>编程</b><b class='flag-5'>软件</b>V2.3.2版本的全新功能

    编程软件连接PLC出现IP冲突时如何解决?

    通信的。某工厂在新增一台自动化PLC设备后便遇到这个问题,导致编程软件无法访问到对应的PLC设备。 由于老设备接口已被占用,新设备接口仍有空闲。因此,物通博联网段隔离器WC503通过网
    的头像 发表于 07-31 17:08 1315次阅读
    <b class='flag-5'>编程</b><b class='flag-5'>软件</b>连接<b class='flag-5'>PLC</b>出现IP冲突时如何解决?

    PLC现场工程师工具携带指南

    介绍 PLC 编程人员在现场常用的工具及其用途。 1.笔记本电脑 笔记本电脑是 PLC 编程人员的核心工具之一。它不仅用于编写和修改 PLC
    的头像 发表于 06-26 15:32 1083次阅读
    <b class='flag-5'>PLC</b>现场工程师工具携带指南

    如何破解三菱PLC与西门子PLC的通讯难题

    系列PLC建立连接时,兴达易控Modbus RTU转Profinet网关(XD-MDPN100)成为破解这一难题的关键桥梁。
    的头像 发表于 06-09 17:14 1759次阅读
    如何破解三菱<b class='flag-5'>PLC</b>与西门子<b class='flag-5'>PLC</b>的通讯<b class='flag-5'>难题</b>

    多设备协同难题:聚徽厂家揭秘工业触摸屏如何实现与 PLC、机器人的无缝对接?

    在工业 4.0 与智能制造的浪潮中,工业生产正朝着高度自动化与智能化的方向加速迈进。工业触摸屏作为重要的人机交互界面,PLC(可编程逻辑控制器)作为工业控制的核心 “大脑”,机器人作为高效精准的执行
    的头像 发表于 05-28 15:40 901次阅读