我所有的好点子都被偷了

物理学家、五六十年代的教育电视明星丹·q·波辛(Dan Q. Posin)喜欢引用艾萨克·牛顿(Isaac Newton)的话:“如果说我看得更远,那是因为我站在巨人的肩膀上。”设计控制系统可能无法与牛顿的贡献相提并论,但“站在巨人的肩膀上”——也就是从别人的经验中学习——是非常重要的。

通过C.G. Masi,控制工程 二零零七年九月一日
栏:
动态计算运动轮廓,提高故障恢复
为良好的控制程序设计做好准备
最终用户可以是最好的信息源,也可以不是
寻找开放的、模块化的架构

物理学家、五六十年代的教育电视明星丹·q·波辛(Dan Q. Posin)喜欢引用艾萨克·牛顿(Isaac Newton)的话:“如果说我看得更远,那是因为我站在巨人的肩膀上。”

设计控制系统可能无法与牛顿的贡献相提并论,但“站在巨人的肩膀上”——也就是从别人的经验中学习——永远是解决难题最快、最可靠的方法。

例如,在20世纪80年代初,有人向我提出了如何在生产线上将塑料柱塞自动插入注射器的问题。注射器是分配和混合两组分环氧胶的包装的一部分。

困难的是,虽然一个人可以把活塞放在合适的位置,让气动滑块驱动回家,但如果不困住一个大气泡,他们就无法准确地分配适量的胶水。我们必须首先从注射器中抽出气泡,然后定位活塞,最后在不打破真空的情况下将其驱动回家。

我从1898年瑞士军队采用的施密特-鲁宾(Schmidt-Rubin)直拉式栓动步枪中借鉴了一些想法,从而解决了这个问题。施密特行动有一个唐固定在螺栓上,骑在一个螺旋槽切入接收器。当手柄沿直线移动时,凹槽旋转螺栓以将其锁定在适当的位置。

这种设计基于19世纪晚期的重复步枪动作,将一个塑料活塞“装入”接收器上的缺口,用真空密封将缺口封闭,等待泵将“腔”排出,然后将其撞回家。

我复制了这个设计,用一个双作用气缸拉回一个螺栓,打开缺口,这个缺口的大小正好适合活塞掉进去。接下来,气缸迫使螺栓向前。当螺栓向前移动时,它旋转以关闭缺口并形成真空密封。

然而,在将活塞推入注射器之前,闸板必须停止,直到吸入泵将困住的空气从注射器体内抽出。当真空度达到设定值时,电磁阀触发闸板驱动活塞进入注射器。

今天,我可能会使用微处理器来对动作进行排序,可能会使用电动马达而不是气动闸板,但在当时,这被证明是一个完全基于“重新定位”想法的优雅解决方案。

本文的四位撰稿人提出了一些“热门”的想法,以及他们的观点控制工程员工们,鼓励你们“偷”到自己的工作中去。

作者信息
C.G. Masi是控制工程。打电话给他。charlie.masi@reedbusiness.com

动态计算运动轮廓,提高故障恢复

多轴协调运动应用通常使用运动轮廓设计来复制机械凸轮。不受控制的停止会导致从轴偏离凸轮轮廓。如果在停止后无法相对于当前主轴位置计算所需的从轴位置,则不能移动从轴以使其与凸轮轮廓重新对齐。

一种可能的恢复方法是重建一个凸轮轮廓,该轮廓包含当前主从位置作为轮廓中的一个点。设计师应该评估在新的凸轮点开始运动是否会导致任何不可接受的速度、加速度或从轴的抖动。如果是这样,新的恢复凸轮配置文件可能会导致采取不希望的路径。附加凸轮点和分段类型选择(线性或立方)可用于纠正恢复路径。在所示的示例中(右上),从轴无法在当前位置之后到达三次线段所需的位置,因此使用了具有较慢主轴速度的线性线段来提供所需的恢复。

作者信息
帕特里克·加拉格尔,千年控制系统公司管理合伙人。Millennium是罗克韦尔自动化解决方案提供商,在开发复杂运动控制应用解决方案方面具有专业知识。

为良好的控制程序设计做好准备

我观察到了硬件和软件开发实践之间的差异。对于硬件,设计阶段是给定的。原理图总是先于电路的焊接。在制造机械组件、固定装置和设备机架之前,要先绘制方框图和CAD图纸。设计文档对于硬件来说是必不可少的。为什么软件就应该有所不同呢?

许多开发人员倾向于直接从需求规范跳到软件编码。然而,规划得越全面,编码就越好。

首先寻找能够加速设计和开发的资源,同时对风格产生积极影响。在线搜索产品、参考资料、示例、驱动程序、工具包、同事和顾问。许多软件工具供应商为开发人员提供在线论坛,让他们互相帮助,分享文章、示例代码和支持。

不要忽视许多可用的离线资源和媒体。例如,LabView软件开发环境包含数百个示例虚拟仪器(VIs),开发人员可以将其用作其应用程序模块的起点。

接下来,开发一个概念验证来评估每个特定的仪器、硬件组件或软件模块。设计一个测试,模拟关键的采集和分析算法,并对执行速度进行基准测试。然后用结果来验证你的设计;寻求替代方案,例如性能更高的仪器或更快的数据处理算法;或根据需要放宽说明书中的要求。当概念验证完成后,请确保保存它。您可能能够在最终的应用程序中重用它的全部或部分。

或者,您可能会发现已完成的应用程序的性能与概念验证不同。在这种情况下,您应该将概念验证作为故障排除工具。如果它仍然正常工作,则可以开始将性能问题隔离到其他区域。如果概念验证突然停止工作,那么自上次成功运行以来,硬件、系统配置或其他条件可能已经发生了变化。

当设计阶段完成,并且通过概念验证评估了关键需求时,重新审视规范。变化是不可避免的。几个需求之间可能存在冲突,并且可能需要权衡和调整。规范是一个活文档。确保定期重新审视规范,并进行必要的修改。

最后,代码重用是所有现代编程环境中的一项基本技术。与从头开始每个应用程序相比,它可以节省开发人员几天的时间。每个开发人员都应该维护一个包含有用代码模块的软件重用库。此外,每个雇用多个开发人员的组织都应该在源代码控制下的网络存储库中维护一个重用库。潜在的好处包括更快的开发时间、更大的通用性和更高质量的应用程序。

作者信息
Peter Blume, Bloomy Controls总裁。Bloomy Controls是国家仪器(NI)选择集成合作伙伴,NI认证培训中心,以及控制系统集成商协会(CSIA)的成员。这篇文章节选自布鲁姆的新书LabView样式书普伦蒂斯霍尔出版社出版。这里的注释代表了良好的编程实践,无论您使用哪种语言。

最终用户可以是最好的信息源,也可以不是

有时候机器人的应用是全新的——以前没有人做过。然而,大多数时候,客户已经制造了产品或实现了流程,但现在他们需要以更低的价格、更高的数量或更小的足迹来完成。大多数情况下,这是一个手动过程,一些更改已经驱动用户将其转换为自动化过程。

最终用户很可能对他或她设想的最终解决方案有一个很好的想法。这使得最终用户成为集成商的最佳信息来源。

作为外部系统集成商,企业主比我们更了解他们的流程。他们的产品可能已经生产了20年,甚至50年。他们知道什么是难做的,什么是容易做的,他们知道什么是需要注意的。

所以,要仔细倾听用户的意见,了解他们的问题是什么。当您设计自动化解决方案时,请考虑用户从多年经验中积累的大量知识。

他们可能不具备的是如何以自动化的方式做到这一点的丰富知识。有时候这是一个挑战。通常,他们这样做是因为他们是手工做的。如果你让机器人来做这项工作,你就会有一组不同的因素要考虑。所以有时候你必须说:“不会再这样了。”

作者信息
Delta Sigma公司于1990年开始运营,支持低可观察性(隐身技术)社区的研发工作。他们将其中的一些技术和经验教训重新应用于其他工业应用。虽然仍涉及许多雷达横截面应用,该公司已开发组装和检测机器的其他行业以及。

寻找开放的、模块化的架构

避免使用“黑盒”或专有硬件或软件包有几个原因。最重要的是,它归结为服务和支持问题。使用专有的硬件和软件通常会将您锁定在单个供应商的支持和升级中。

大多数主要的控制硬件制造商都支持模块化、开放式架构软件包,这些软件包能够满足当今最苛刻的应用程序所需的速度和高级运动功能。对于较大的制造商,您继承了更大的支持网络。这为支持和升级需求提供了更广泛的选择。

在当今的自动化领域,需要任何类型的专业控制器的应用越来越少。作为自动化客户,您应该要求可以在本地支持的开放体系结构系统。类似地,您的客户应该要求获得源代码的副本,允许他们维护自己的系统并排除故障。供应商可以用软件许可证保护他们的代码,同时不影响客户查看、维护和排除他们购买的系统故障的能力。

我们每年都会参与许多伺服系统的改造,包括更换不再受支持、难以维护或过时的专有硬件和/或软件。这些专有系统给维护部门带来了巨大的压力。仅仅找到部件就变得很困难,更不用说找到有能力对这些遗留系统进行故障排除的人了。

在许多情况下,仅仅失去一个人就意味着整个支持网络的消失。此外,如果有人可以支持系统,用户通常会为“专业”知识支付过高的费用。

在每一个这样的情况下,我们都能够用全球支持的开放体系结构替代这些专有系统。通常这些替换系统是通过梯形逻辑编程的,这是维护人员所熟知的。其结果是一个具有内置灵活性的模块化系统,可以通过各种渠道在当地得到支持。

作者信息
Michael Gurney, Concept Systems的共同所有人和首席工程师。Concept Systems是一家独立的系统集成商,专注于先进的运动控制应用,包括液压,气动和电动伺服系统。服务包括系统设计、开发和启动——从机械设计和改造分析,到硬件选择、制造、编程和验收测试。