以支持为中心的企业控件系列

本文是探讨以支持为中心的控制系统的关键组件的系列五篇文章的导论。

通过丹尼尔·卡迪纳尔 2014年10月23日

2014年9月的一篇文章控制工程报道了第一个可编程逻辑控制器(PLC)的起源。它描述了一场生产基于pc或特殊逻辑控制器以实现控制系统应用的竞赛。这种特殊控制器的支持者设想了该设计如何用PLC取代基于继电器的控制系统。文章接着描述了plc如何改进机器诊断、减少面板空间和降低维护成本。检查今天PLC设计的状态,很明显,它们只部分实现了最初的预期目标。plc确实使设计人员能够提供更好的诊断,同时允许他们减小控制面板的尺寸。从维护的角度来看,plc已经用基于控制器的逻辑电路取代了许多使用大型面板安装继电器的硬连线继电器电路。

自从plc的发展以来,制造商已经摆脱了基于继电器的控制系统的使用,获得了面板空间和诊断的好处。然而,制造商并没有实现显著的维护成本节约。这是机器供应商提供混乱的PLC应用程序的结果,通过增加支持成本来抵消维护成本。成本的增加与plc如何提高自动化机器的复杂性和灵活性直接相关。因此,越来越需要技术人员来支持来自各种机器供应商和系统集成商的许多独特格式的PLC应用程序。每个应用程序都是定制的,以适应每台机器的感知需求。与只有少量电路的简单继电器控制机器不同,新的PLC应用程序有数千个自定义逻辑电路。在技术人员能够安全地更改这些电路以支持制造过程之前,必须了解这些电路。理解许多不同的电路成为与维护相关的支持问题。当技术人员被迫迅速识别设备故障或进行维修,或在将机器恢复到运行状态之前发生逻辑变化时,问题就会浮出水面。 The cost of production delays increases maintenance-related support costs.

与维护相关的支持问题的另一个迹象来自正在进行的关于控制系统应该是基于pc的应用程序还是基于plc的应用程序的争论。基于pc的拥护者认为,计算机环境可以帮助设计人员开发更容易支持的结构化应用程序,而那些想要基于plc控制的人解释了为什么需要逻辑电路来支持柔性机器的敏捷本质。双方都有自己的观点。那么答案是什么呢?现在工业上有基于pc的设计在运行。然而,经过仔细检查,这些应用程序的功能是支持具有刚性序列的机器。因此,答案可能是一种混合解决方案,即基于pc的应用程序支持标准设计和基于plc的逻辑电路的操作支持。不难理解,目前的开发方法执行起来成本很高,成品很难得到技术人员的支持。此外,很难想象20世纪用于生产、调试和复制逻辑电路的设计过程将无限期地延续到未来。

愿景

在未来,不难想象一个以支持为中心的企业控制软件产品,它将为用户提供与机器的PLC程序的交互界面。作为简单地向技术人员展示启用电路的替代方案,这款新产品将为技术人员提供显示物体和机制物理运动的显示屏。该产品不仅允许设计人员直接对电路进行更改,还允许技术人员更改显示对象的属性,从而导致自动逻辑电路更改。该产品将使制造商能够控制机器的重要机电元件。交互式软件将允许系统的、基于规则的逻辑构建。因为构造规则是交互式记录的,所以技术人员在检查不同设计人员制作的各种梯级结构时不会感到困惑。

该产品将使制造商控制和设计师导入基石电路,作为所有站特定逻辑的基础。坚实的基础使所有设计师都能够以标准的方式逐步开发控制对象和机制移动的标准逻辑。设计过程将遵循一套用于构建逻辑的结构化规则。开发工具还允许设计人员和技术人员配置和重新配置移位寄存器应用程序。开发工具将允许插入和顺序激活定制的逻辑模板。这些模板将符合与移位寄存器应用程序中的控制逻辑和数据元素相关的标准联锁信号。

为了让一个以支持为中心的企业控制系统被广泛接受,它必须迫使设计人员摆脱在当今应用程序中发现的许多糟糕的编程实践。这些糟糕的做法通常与设计师复制他们的设计的捷径有关。有些做法是由于PLC制造商为控制器配备了高级功能而在不知不觉中实现的。这些功能的滥用只是设计走向混乱的众多原因之一。其他方面则与不同设计师偏爱的逻辑风格有关。误用的特性和错误的样式只会与以支持为中心的设计相冲突。这主要是由于支持人员不理解使用各种梯级结构来实现类似任务的原因。基本逻辑设计前提是技术人员理解逻辑,而原始设备制造商(OEM)设计人员提供基于快速复制和配置流程的逻辑。

视觉进化

在plc的早期,一个控制设计团队开发了一个基于矩阵的程序,能够自我生成布尔方程。该团队为波士顿的一家软件公司工作,该公司为Allen-Bradley开发了一个布尔开发工具。使用布尔开发软件,设计人员的任务是为汽车行业中使用的大型多工位焊机生产PLC逻辑。这些机器的控制系统设计包括以下类型的应用。

  • 基于事件的应用程序:一种软件程序,它使用特定事件启动一系列可检查的逻辑步骤,这些步骤要么通过要么失败。
  • 基于状态的应用程序:一种软件程序,检查许多离散变量,以确定机构的物理状态,然后才允许运动。

这些多工位机器的控制系统程序包括基于事件和基于状态的应用程序。基于事件的应用程序是用于移动数据、锁存和解锁存布尔信号的简单电路。基于状态的应用程序依次启用输出来控制一组机器机制。每个机器状态都是一组可检查的信号,这些信号在机制移动之前具有已知的模式。这个想法是把机器的机构分成连续的运动组。这些机制依次循环在一起,异步地从其他机器机制。

设计过程包括为每个运动组构造一个矩阵。矩阵有列表示机构的运动,行表示传感器的状态和其他连续运动组的联锁。顶部一行框包含特殊代码、输出地址和移动描述信息。类似地,第一列框包含传感器地址和描述信息。矩阵中心的每个盒子里都有一个数字。0表示它是关闭的,并且在机械装置移动时保持关闭。同样,数字1意味着它是开着的。矩阵应用程序使用相邻列中的数字转换来确定当机构移动时,哪些输入预计会改变状态。这个过程还允许设计师在通常包含数字的方框中放置破折号。破折号表示对列定义运动的指定信号的不关心状态。 The next part of the design process was the execution of a Fortran program to evaluate the matrix. The output of the program was a set of tag-based Boolean equations for each column-referenced motion and a tag-referenced address and description list. The output equations and tags were compatible with the Boolean development tool that when executed converted the equation and tag files to a PLC-downloadable logic file and printout with annotated documentation for each signal-addressed variable.

图1显示了PLC梯形和布尔方程中的两个逻辑电路。总的来说,由布尔开发软件支持的基于矩阵的开发过程只能产生启动一台机器所需的70%的逻辑。尽管布尔过程是开发PLC程序的有效方法,但它从未在业界获得任何认可。机器供应商很可能认为这个过程是有风险的,它增加了一个额外的设计步骤,因此迫使他们培训他们的控制工程师。矩阵和布尔开发工具对制造商没有实际价值,因为它只是简化了设计,并没有改善机器的操作支持。

在20世纪90年代初,通用汽车卡车和巴士集团的控制工程部门正在开发新的逻辑标准。控制团队致力于逻辑标准,他们通过用序列图开发流程取代矩阵思想来增强矩阵思想。由于序列图是正常设计过程的一部分,基于图表的界面是一个合理的改进。这一概念发展到通用汽车有了一个基于pc的应用程序,可以自动生成PLC逻辑。当通用汽车停止所有特殊项目的资金投入,以便将资金转移到电动汽车项目时,这个开发工具被认为是一个工作原型。一个非控件团队成员(他是翻译控件信息和定义原型如何工作的重要组成部分)对项目的终止感到失望。结果,他请求并获得了通用汽车公司的许可,离开公司,带着功能原型去罗克韦尔。虽然团队中的一些人宣布成功,但原型只能生成所需PLC逻辑的80%。一些人认为剩下的20%将通过一些未知的规则和方法来实现。十多年后,罗克韦尔开发了一款企业软件产品,后来被出售。 At least one member of the team suspected the Rockwell product was an extension of the team’s original work.

在20世纪90年代中期,克莱斯勒公司组建了一个设计团队,开发了一个全厂范围内的车辆跟踪系统。团队成员使用单个基于事件的电路来检测物体在跟踪位置之间移动。电路设计类似于移动移位寄存器数据的PLC逻辑电路。每个特定位置的电路产生一个“索引”信号,用于触发PLC向跟踪系统发送“从到”消息。每个电路在一个位置检测到车辆或车辆的载体,然后产生一个触发器,表明它已经移动到下一个跟踪位置。由于跟踪系统需要跟踪在整个工厂中移动的物体,设计团队在整个制造过程中为数百个控制点配置了电路。这些单一用途电路的重要性直到多年后才变得明显。

为什么没有解决方案?

为什么没有人研究控制并随后开发基于pc的PLC支持产品?是因为大多数设计师都专注于PLC技术吗?也许是因为许多进入控制领域的工程师被期望单独工作,复制其他人开发的设计或升级现有的设计。很可能许多控制工程师都有基于状态或基于事件的PLC应用的经验。重要的是要了解工程顾问根据其职业经验所拥有的不同观点。大多数工程师都有职业偏见,属于以下专家类别之一:

  • 创业专家:负责使机器、输送机和所有相关应用在现场工作的人员。
  • 控制器专家:为特定的工业自动化控制器制造商工作的硬件和/或应用工程师。
  • 控制专家:为机器或输送机供应商工作的控制工程师。
  • 植物专家:为制造商工作的自动化工程师,负责支持工厂特定制造流程的人员。

许多创业专家没有工程学位,但拥有丰富的控制相关领域经验。创业专家通常是技术人员,他们的职业生涯开始于电气面板布线和/或涉及机器设备布线。有些人一开始是机器人程序员或AutoCad细节师。随着时间的推移,启动专家负责使机器,输送机,和/或控制和/或控制器专家设计的应用程序准备生产。启动专家负责调试机电设备、特殊设备接口和控制器应用程序。特别是,他们负责确保保护人员免受过程伤害的安全设备连接好并正常运行。创业专家是动手操作的技术人员,当供应商在建造车间安装机器或输送机时,他们会在制造商的设施中安装机器或输送机。创业专家通常会带着机器和传送带长时间出差。当一个创业专家发现一个设计问题时,他或她必须在永久性地应用任何硬件或软件修复之前与控制和控制器专家合作。专家在制造业中的目标角色迫使他们在相同类型的机器或输送机上查看其他人的设计,从而最大限度地减少了他们看到定义新的基于pc的支持工具的操作范围所需的共同设计指标的能力。

控制器专家是经过专门培训的研究生工程师,了解控制器的详细特性。他们还擅长将控制器连接到网络、调整接口硬件和开发复杂的控制器应用程序。因此,控制专家更有可能信任技术,并接受基于他们期望这些技术在常规条件下如何工作的系统相关解决方案。许多控制器专家对机器和输送机控制过程的工作方式只有站级的了解。他们的目标角色使他们无法看到所有控件应用程序的公共特性的底层图像。

控制专家是研究生工程师,专门适应各种控制器从许多不同的工业控制器公司的机器,输送机,或过程。换句话说,控制专家负责为机械过程添加控制以使其运行。他们通过提供使物体和机构移动所需的液压、气动和电路来做到这一点。虽然机械工程师选择大多数传感器,控制专家负责控制布线传感器,阀门和控制器继电器的设计。控制专家还负责开发逻辑电路,用于在启用控制器输出之前检查控制器输入。大多数控制专家在做出高级硬件和软件相关的设计决策之前都会咨询控制器专家。

大多数分立部件制造商没有认识到控制和启动专家之间的区别。这两种类型的专家都在机器或输送机上工作,但在项目的不同阶段。大多数制造商认为他们都有相同的背景,并根据他们工作的设备类型对他们进行分类。这使得人们认识到机器控制专家了解机械工位和机器人流程,而输送机控制专家了解如何将产品从一个工位移动到另一个工位。大多数控制专家努力确保新技术不会对机器或输送过程产生负面影响。这意味着他们评估系统设计如何运行,并不能影响制造过程。对于大多数人来说,他们的作用仅限于特定类型的输送机或机器工艺,这使得他们很难看到影响所有机器和工艺的公分母。

控制专家和控制器专家对控制系统设计有不同的看法。控件专家可以轻松地对应用程序环境进行更改。因此,他们更有可能推荐综合解决方案。控制专家不太愿意对受控环境进行更改。这意味着他们更有可能推荐独立的、非集成的解决方案。控制专家还具有机器和过程的离散传感器或设备视图,而控制器专家更好地了解应用环境,并且大多数具有站点视角。

工厂专家通常是毕业的工程师,他们被分配去改变已经部署在他们生产设施中的控制系统。除了需要改变和改进现有设计外,大多数人几乎没有设计经验。这使他们无法识别基于事件的应用程序和基于状态的应用程序之间的区别。这也限制了他们对有限数量的工厂特定机器和制造过程的理解。

控制工程师未能认识到启用基于pc的PLC支持应用程序所需的公分母有两个主要原因。首先,许多专家要么在整个职业生涯中一直从事同一份工作,要么晋升到管理层。这限制了他们接触到许多不同的设计。其次,控制系统设计人员觉得他们需要关注和更新当今plc的复杂功能。因此,当他们关注新型控制器的技术特点时,很难识别常见的操作细节。总之,这意味着他们的思维不会进化到能够识别后续文章中描述的方法。因此,他们无法识别、理解和记录定义以支持为中心的控制系统的操作范围所需的设计细节。

以支持为重点的控制系统概述

所有基于pc的设计工具都提供了建模制造过程和生成相关控制应用程序的通用方法。大多数使用块流图来定义流程的开始点、决定点和结束点。实际的代码结构通常构建在各种执行块中。这与基于plc的设计人员编写程序的方式相反。最简单的方法是剪切粘贴之前的设计来创建下一个。许多人只是简单地可视化流程,然后处理应用程序的区域,这将允许他们快速生成高比例的逻辑。到目前为止,还没有生成基于plc的应用程序的关键规则。为了使其他人能够认识到以支持为中心的控件应用程序的规则,工具的战略家和/或设计人员需要理解这个新开发过程的关键步骤和组件。为了传递必要的知识,控制工程将发表一系列涵盖以下主题的文章:

  • 对象检测
  • 控制系统触发器
  • PLC基础知识
  • 控制逻辑基础
  • 模板设计策略

下一篇关于对象检测的文章将描述一个简单电路启动一个进程和/或触发另一个应用程序的能力。任何上过PLC-101控制课程的人都知道,基于状态的控制应用程序需要检测到达、离开和/或进入一个站点的对象。大多数班级实验室都有简单的钻孔电机,配备了传感器,以检测停在钻井站上的物体。对大多数学生来说,在钻孔前感知静止部分的必要性是显而易见的。大多数学生还认识到,在钻孔循环之后,控制应用程序必须设置一个关键变量,该变量稍后在零件离开工位或下一个零件进入工位时重置。虽然这个PLC实验室的例子很简单,但讲师从未讨论所需的对象检测电路的关键性质或可能的变化。关于检测的讨论将使设计师能够理解作者所说的“存在检测”和“移动检测”之间的区别。正确理解和应用这些电路将有助于设计者提高控制系统的可靠性和可保障性。

关于控制系统触发器的后续文章将描述运动检测电路的许多变化及其对制造过程的影响。具体地说,它描述了四种常见形式的运动检测电路的细节,并提供了不太常见形式的概述。关键不仅在于认识到如何使用运动检测,而且还在于它如何成为调节和改进所有控制系统设计的公共电路。本文将继续描述运动检测如何与防重复电路集成,以及它如何影响设计允许或防止物体碰撞的能力。

未来的PLC基础文章将描述应用程序的许多简单元素和特征。它针对的是那些对PLC编程概念不熟悉的人。它还描述了许多与电路替换技术相关的“观感”问题。最后,本文揭示了一些PLC制造商如何为PLC配备指令,当使用不当时,对以支持为重点的控制系统是有害的。

稍后,一篇关于控制逻辑基础的文章将详细介绍许多对于开发以支持为中心的控制系统至关重要的编程概念。它首先描述了PLC应用程序的层次和适应于大多数机器的通用操作模式。它继续详细说明了制造商如何规范设计,而不仅仅是提供模板标准的例子。这种类型的法规保证供应商将提供所需的基础机电设计,以确保更可靠的应用。这个基础允许制造商进一步规范和改进应用程序如何使用标准触发器来设置和重置操作变量。有了基础和触发器之后,本文将描述以支持为中心的控制系统如何对输送机和机器过程建模,从而允许系统地生成标准逻辑并与之交互。

最后,关于模板设计策略的文章将描述用于开发与以支持为重点的控制系统兼容的PLC应用程序的两种常用方法。它接着解释了控制器专家和控制专家如何专注于不同的设计目标。一种方法假设只有训练有素的工程师才能与逻辑交互,而另一种方法则建议为一般的、以支持为中心的工程师和技术人员保持简单的设计。

没有一篇文章将描述以支持为中心的设计如何改进上层系统设计的操作和可支持性,同时降低它们的集成成本。当基于控制器的系统应用适应更可靠的触发方法时,它可以改进上层系统设计。这使得控制应用程序消除了对定时传递系统信息的依赖。而不是时间,增强的触发器设计使控制应用程序同步运动部件与系统提供的信息。当控制和系统应用程序对同一组触发器做出反应时,以支持为重点的控制系统可以提高可支持性。这消除了与控制应用程序以非同步方式触发上层系统应用程序相关的支持问题。

以支持为中心的控制系统通过提供标准化触发器和应用程序的应用程序环境来降低集成成本。这意味着控制和上层系统应用程序都可以被测试并投入生产。这消除了与使用程序模拟器相关的时间和成本,以及与调试相关的部署延迟。总的来说,这种性质的产品将消除对系统集成商的需求,后者通常在生产冗余或自定义触发电路时对基于控制器的应用程序进行分层,以实现上层系统应用程序。

2014年11月控制工程北美印刷版和数字版,本文的摘录作为“技术更新”出现,题为“修复PC和PLC部门。”


Daniel B. Cardinal毕业于密歇根理工大学电气工程师。他拥有超过30年的控制系统设计经验,并担任控制集成商。在80年代早期,他是欧洲最大的机床供应商之一的控制主管,帮助他们在美国建立业务。后来,他创办了自己的控制公司,是控制系统联合公司的共同所有人,这是一家专门从事集成系统设计的公司。他目前担任INSYTE公司的工程顾问,在汽车行业实施集成调度和部件识别应用。