Version control PLC版本控制

Version control PLC版本控制,version-control,plc,Version Control,Plc,我需要为PLC代码想出一个CM流程 目前,该系统是使用RSLogix 5000开发的。构建产品是一个单片文件,可以加载到PLC上执行,并在开发环境中直接编辑。对于多个开发人员,这已经成为一个问题。他们在互相践踏 类似地,在进行Java开发时,编辑和保存源代码的唯一方法就是将*.jar文件加载到IDE中,进行更改,然后将其保存回jar文件。这不太理想 如何协调使用PLC的多个开发人员之间的更改?如果我们讨论的是一个大的二进制文件,那么VCS(集中式或分散式)并不是执行此任务的最佳工具。 一个外部引

我需要为PLC代码想出一个CM流程

目前,该系统是使用RSLogix 5000开发的。构建产品是一个单片文件,可以加载到PLC上执行,并在开发环境中直接编辑。对于多个开发人员,这已经成为一个问题。他们在互相践踏

类似地,在进行Java开发时,编辑和保存源代码的唯一方法就是将*.jar文件加载到IDE中,进行更改,然后将其保存回jar文件。这不太理想


如何协调使用PLC的多个开发人员之间的更改?

如果我们讨论的是一个大的二进制文件,那么VCS(集中式或分散式)并不是执行此任务的最佳工具。
一个外部引用(例如共享磁盘),其中批处理将复制并标记当前PCL状态更好。
见“

为了避免修订历史记录中的不连续性,必须存储程序的旧版本。
“不过,我们更进一步。使用我们的,我们实际上出去检查设备。隔夜或以指定的频率,软件读取PLC中的程序,然后将该信息与最后一个已知程序进行比较。版本控制软件将复制新程序并存储它,[然后]把它和上一个比较一下

启动版本控制相当简单。所需的是软件安装,然后是硬件配置。“你需要一台服务器和几周的工程,你就可以开始了,”Perysyn说。然而,他的公司使用的是“收缩包装方法”这涉及到安装软件,然后由用户填写空格进行定制

也就是说,当您有来自多个开发人员的多个更改时,您需要一个集成环境,在将其推送到实际服务器之前,可以在该环境中完成并验证第一次交付


另请参见。

这是一个非常好的问题,它实际上取决于您希望它做什么。 如果您只使用罗克韦尔设备,查看他们的解决方案可能会有所帮助,我认为它被称为FactoryTalk AssetCenter。 目前我正在考虑使用Canonical的Bazaar。 VonC指出的一件事是,一个可以与PLC进行交互的软件是一个明确的补充,在我的竞争中不是必须的,但它肯定会有帮助

我是否正确地阅读了您的问题,并且您有多个开发人员同时处理相同的PLC代码?这是一个可怕的想法,但我知道有时需要这样做,西门子PLC与多个开发人员一起编程比较容易,但在提交给PLC之前,我会指派一个人来整合和测试所有更改。any CVS系统将允许您为每个开发人员创建分支,但如何让他们整合他们的更改是百万多拉的问题


Bart。

一件简单的事情就是对.l5k文件进行文本区分,这样您就可以很容易地看到开发人员是否正在处理超出其范围的部分文件。

关于RSLogix5000,具体来说,我看到开发人员使用模拟PLC并在线进行更改。一旦开发出最终产品,则是put连同所有注释(因为它们不包含在PLC中)然后进行委托。存在无法在线完成的更改问题,例如AOI。现有工具可以阻止两个人同时在线编辑相同的逻辑,并获得分区的所有权。备份可以以上载的形式完成,但无法跟踪更改

这是一个混乱的问题,当你按照你想要的方式维护一个系统时,你仍然需要一个可以在线使用的.ACD,除非你用RSLogix比较工具做一个比较,否则你只会看到不可读的机器代码,比如“+||èèèÙÆW×230;”™µÙ>Ù,“


我见过的最常见的版本控制(遗憾的是)只是保存最新的文件,然后复制并将当前日期添加到文件名中,就像推荐的control.com帖子所描述的那样。

我使用Unity Pro,因此这可能不适用于其他品牌

Unity可以导出一个“归档”文件,该文件是XML,它完整地描述了PLC程序和IO设置。调试更改后,我创建了一个导出,并将其签入本地Git repo。这会得到一个带注释的更改历史记录,但没有直观的比较。我可以始终使用UnityDiff进行比较


另请查看

我刚才从stack exchange的一个链接中看到了这个问题:。我将在这里复制我的答案,而不是只有一个链接:

实际上,有一个罐装解决方案——来自所有地方的GE-IP。请查看Proficy Change Management。该产品从PLC控制系统的角度进行版本控制,而不是从文件的纯版本控制角度进行版本控制——它作为VCS顶部的一个层工作(可怕的是,最初该VCS是Visual SourceSafe)并处理权限管理、报告和签出/签入

虽然该产品来自GE-IP,但其设计用于支持各种现成的PLC和HMI系统


充分披露,我曾在一家销售和安装PCM的公司工作(但那是7年前的事了)。因此,如果你问我当时是什么样子,我很可能会告诉你哪里出了问题!

RSLogix5000一直禁止多个用户同时打开和编辑同一个.ACD文件。但是,如果多个用户有相同的.ACD文件,请打开它们,并且所有用户都连接到同一个目标控制器,则每个用户都可以编辑n同时打开控制器,但仅当他们正在处理不同的例程时。如果他们查看另一个程序员例程,则其他人的编辑将自动显示

注意,像这样的在线工作通常是在PLC运行的情况下完成的,