Arduino平台在工业上的可靠性


29

我不是电气工程师(只是机械工程师),但是我想将自己的业余爱好者经验应用到我的工作中,并在工业(制造)环境中实施各种自动化系统。

传统上,工业环境中的自动化由工程系统或PLC组成。工程系统过于昂贵,PLC缺乏灵活性(它们也可能变得非常昂贵)。

我想用更灵活,功能更强大,更便宜的Arduino取代传统的PLC,但我担心Arduino的可靠性。PLC是在工业环境中发展而来的,因此非常坚固耐用且可靠,但是Arduino平台如何比较?

假设已采取适当措施保护Arduino免受机械和电气损坏,那么平台的可靠性如何?您是否愿意取代传统的控制机器安全联锁系统的PLC,以防止人员离操作中的机器太近?

编辑:那非安全关键系统呢?例如,将智能引入到PLC无法提供的夹具中?


17
您甚至不应该考虑在一分钟内在生命安全情况下使用Arduino。
标记

4
我的观点是,不,我不相信Arduino用于安全互锁系统。我将其留给实际上有推理能力的其他人来回答。
Kellenjb 2011年

1
@Mark-适用于每个组件。数据表几乎总是在文档末尾的免责声明中禁止这样做。
stevenvh

1
@stevenvh并非所有组件都正确。设计和构建用于随机爱好者的模块根本就不会经过测试和设计,始终认为如果失败,可能会伤害或杀死某人。这只是事物的最佳实践方面,甚至没有涉及可能取决于其用途的法规要求。尽管事实上有很多组件和微控制器参与其中,但您不会很快看到arduino运行汽车安全气囊部署系统。
马克

您正在寻找NI的cRIO。它是一台实时计算机,可以在任何情况下生存。
海绵鲍勃,

Answers:


35

PLC制造商希望您相信他们的软件更加可靠且经过更全面的测试。我的印象是,PLC的核心OS组件通常都经过了很好的设计和测试,但是外部硬件(运动系统等)的驱动程序通常是由应用程序工程师将其合并在一起的库,然后在公司范围内传播。PLC中的硬件通常过时了-其中许多正在运行旧的,热的Geode处理器。

当您从Allen-Bradley,B&R,Siemens或其他任何大公司购买PLC时,出现问题时,您大多是在寻求支持。他们的硬件采用与Arduinos相同的制造工艺制造,并且PLC上运行的实时操作系统没有任何神奇之处,可使其无缺陷。但是,我认为这种支持通常值得付出。如果这是一台每天要花费公司100万美元的机器,那它每天都将无法运行,那么我将确定,如果出现问题,将有一支专业的团队来提供帮助,而不仅仅是我和Google。对于光幕或其他安全联锁装置的特定情况,我想确保制造商已制定了严格的保险单,而不是试图为任何特定目的放弃所有适销性的声明。

即使这样,如果我正在设计(例如)一些固定装置的简单气动致动,并且我愿意承担机器损坏时固定机器的支持负担(或者如果我无法获得分配的资源)支付PLC费用),安全性不是问题,我很乐意使用Arduino。

我可能会使用Arduino开发系统原型,然后在工作时用纯C语言重写代码,因此我的代码是微控制器上唯一的代码。


11
我认为使用光幕和安全联锁功能通常甚至都无法在代码中实现-它是纯离散逻辑。在安全关键,时间依赖的情况下,相信与门的安全要比MCU高得多。
康纳·沃尔夫,

4
我同意这种观点-我也相信离散逻辑而不是代码-但是从经验来看,我已经看到许多PLC用代码检查安全传感器。我见过的最好的设置是多个急停按钮与一个为系统供电的接触器串联,这似乎比离散逻辑更好。
2011年

3
@Fake视情况而定的名称。每次您坐在车上时,您都会非常信任微控制器网络的安全性和生命。绝对有可能用微控制器构建相对故障安全的系统,但是您不必使用ardunio。
马克

5
@Mark-吓坏了我。
康纳·沃尔夫,

2
@Mark-我查了一下,BMW M3仍然有机械制动器,我找不到任何有关转向的信息,但是我非常怀疑它没有机械故障。油门当然是完全电子的(也可能是变速杆),但我的原始观点是正确的。我认为,机械故障不会在未来20-30年内从刹车/转向系统中消失,如果有的话,至少直到我们驾驶汽车时才会消失。
康纳·沃尔夫,

22

由于缺乏适当的保护和屏蔽,Arduino本身不适用于工业应用。但是可以制造基于工业级AVR的控制器:

您应该具有屏蔽,电源滤波/调节/保护,用于驱动外部物体的光电对,每个数字芯片上合适的去耦电容。

打开/关闭高负载时,应该非常仔细地进行测试,最好在使用示波器进行这种换向期间检查接地/电源/数据线上是否有毛刺(低至1ns范围)。

您应该非常仔细地检查时钟源-如果晶体振荡器发生故障,AVR不会回退到RC振荡器。因此,如果您不需要时钟精度或不要特别注意晶体布线,负载电容器,PCB质量(=助焊剂提醒,防潮保护)和晶体周围的屏蔽,则最好坚持使用内部RC。

对于工业应用,有更好的uC,尤其是具有此RC后备功能。


21

PLC之前,工业过程控制通过继电器logix(用于数字控制)和PID控制器(用于模拟控制)执行。众所周知,中继是不可靠的,在某些情况下,中继的失败会带来严重的后果。尽管如此,建议可以通过运行软件计算机更好地执行此操作当时用半导体输出而不是继电器输出的信号使大多数电气工程师感到震惊。当时反对采用PLC的论点与本论坛答案中的某些论点相似。拒绝有趣的建议,您一定会相处得很好。从经济,停机时间和维护方面的考虑,驱使(缓慢地)从硬接线控制过渡到微控制器/软件控制。我回想起最近,控制机构对当时以太网和各种相关协议的恐惧。以太网现在正迅速成为过程控制的事实上的标准。

如今,在最复杂的控制系统中,对安全至关重要的过程始终具有硬接线/气动/液压/机械备份,或至少具有故障安全状态。控制系统的操作员界面是控制系统的重要组成部分,它在机器控制之外,在大多数情况下是本地PC商店中的台式计算机,其操作系统具有容易出错的/容易崩溃的操作系统,易于过程控制的应用程序。这并不夸张。我们已经在化学和采矿业最具挑战性的环境中设计和建造了工厂,在这些环境中,灰尘和烟尘已成为生活的一部分,即使在控制室中,也没有比标准的现成消费/商业设备造成更多故障的工厂。工业设备。硬盘驱动器发生故障,但已密封。他们还是失败了。我们定期吹拂运行HMI的PC主板的工业尘云。诀窍是在所有重要/关键系统中都具有双重/三重冗余。任何事情都会失败。这就是为什么对安全性要求很高的东西总是由硬件备份的原因,而这是立法的一项要求。大多数国家和其他国家具有常识。

如果要把航空纳入讨论范围,请记住非空中客车飞机制造商满足了电传飞行建议的恐惧。在空难中,迄今为止,大多数事故都是由人为错误(主要是飞行员,还有维修人员)而不是工程/系统故障造成的。在PLC /微控制器的工业/商业领域,我认为编程终端的人员仍然是最关键的要素。软件设计,结构和可维护性是必不可少的要素,而不是硬件。

罗克韦尔提供SoftLogix产品,它是在标准商店PC上运行的软件PLC。想一想。关于PC在比PLC /控制器更受保护的电气/大气环境中运行的观点在某些情况下是正确的,但在大多数情况下却不是,在我们服务的工厂中很少。具有讽刺意味的是,以太网的普及需要在现场使用以太网交换机。通常,我们不使用工业交换机,而是使用标准的商业设备,并且经过10年的安装和数百次安装后仍未发生交换机故障。这些开关与PLC I / O位于同一面板中。失败的原因是交换机随附的廉价电源,但很少发生。避免这种情况,交换机将不是安装中最不可靠的组件。

关于工业PLC设备的严格测试/质量控制,我最近委托一家工厂使用,其中8或10个远程I / O模拟输入卡中的每一个都是DOA。该供应商是世界上最大的知名品牌之一,没有引起任何注意,立即更换了所有产品。我想这是一个不好的批次,他们可能在我们的报告之前已经知道了问题。替换工作完美,并且仍然可以在3年后使用。

如今,恐惧无处不在,吓倒了我们。使用原因,就像一些老朋友曾经说过的那样:“吸吮并亲自观察(见)”。我会毫不犹豫地在任何地方试用“非工业”微控制器。只需遵循良好的工程实践,量化风险并采取适当的措施即可。顺便提及,机动车辆在与某些工业条件(湿,热,振动)不太相似的条件下运行,但是具有许多对电子安全至关重要的系统。现在,尝试向工业控制系统工程师建议您将要在工厂中试用汽车部件!CANbus或DNET有人吗?去搞清楚 (:)


1
出色的写作。工程是很多关于正确权衡的问题,而不是一个固定的解决方案。更加严格的条件总是需要专用的硬件/软件,但是[AVR类的通用MCU +强大的软件]控制器肯定是一个利基市场。同样,说任何人都可以对PLC进行编程之类的事情肯定是在行销。
rjha94

15

我不是任何类型的工程师。我是一家大型航空航天公司的电子技术员,由于我们无法再为其提供零件的古老设备,因此必须一直对这样的数控机械进行翻新和/或升级。成本是一个大问题,但会给您带来麻烦的却是安全问题。

在2012年版的NFPA 79(工业机械电气标准)第9.4.3.4.2小节中规定:

“结合了执行安全相关功能的基于软件和固件的控制器的控制系统应进行自我监控,并符合以下所有条件:

  1. 在任何一个发生故障时,故障应:
    一。不会导致安全相关功能的丧失
    b。导致以安全状态关闭系统
    c。防止后续操作,直到纠正了组件故障
    d。纠正故障后防止设备意外启动

  2. 提供与包含硬接线/硬件组件的控制系统相同的保护

  3. 按照符合此类系统要求的批准标准进行设计”

如果您有能力确保您符合第1条和第2条的规定,我知道您将无法达到第3条的规定(除非您习惯于与监管机构打交道)

然而,

如果您仅使用arduino监视并建议发生了安全状况,则无法控制实际的安全电路本身,则不应违反该法律要求。

即,急停链已到位,当电路中的急停开关断开时,该主链会断开所有电机接触器/驱动器与主急停接触器的电源。您不想使用arduino来控制急停电路,但最好使用急停按钮上的辅助触点开关来告诉操作员显示屏上按下了哪个急停按钮。

这样,即使arduino试图通过控制信号来驱动电动机,也不会有任何实际功率可用,因为主急停接触器已掉电,而该急停接触器由硬通电的急停链控制,而不是微控制器

确保您了解NFPA70E和NFPA79中的所有规定,并符合所有规定。相信我,您不想在没有完全了解这些规定的情况下尝试尝试回答问题,而无需设计某些东西。

例如,其他要考虑的事情是停止运动太快-有时为了停止安全起见,必须在停止之前保持通电一段时间,以防止安全隐患-即,大型砂轮必须以设定的速度旋转,以免其爆炸。突然停止-在这种情况下,您需要一个较大的电阻器,该电阻器将使用电动机的Counter EMF安全地降低转速。您可能希望使电动机驱动器掉线的接触器将该电阻器与电动机绕组对齐 - 而不是arduino

NFPA79也涵盖了这些方案。

确保您和您的雇主满意地遵守这些规定并承担任何潜在的责任。

绝对要使用ruggeduino(值得付出45.oo的附加保护)和对24伏以上电路上连接的任何物体进行光隔离。在同一站点上,大多数与arduino兼容的继电器控制都是OMRON,并用于许多工业应用。请具有经验和资格的人员在实施之前检查您的设计- 请记住,我们每个人都不像我们所有人那么聪明

为您的应用程序测试其耐用性的唯一方法是设计它,并查看它能工作多长时间。如果成本/时间是主要考虑因素,则肯定有一个相同的备用件可随时在架子上更换。

如果您有任何问题,请告诉我。


感谢您提供的信息,总是很高兴听到有该领域经验的人的来信。那么24v以下的直流系统呢?
Faken 2012年

7

所谓的工业级Arduino克隆称为Ruggeduino,具有输入和输出保护,他们的网站上有关于Arduino 加固的有趣读物。


5

他们正在出售带有用于汽车的电路的MSP430。

因为我对工业认证一无所知,所以我也不知道这些“微型PLC”具有哪种安全性认证。

但是,对于安全互锁,我不会信任比简单开关更复杂的软件。


5

基本上...我不支持Arduino。Arduino暴露在外,它没有保护套,也无法为您必须满足的某些IEC标准提供保证。例如,Arduino的顶部如何运行2到3年的灰尘。

从长远来看,正如某人已经说过的,如果一台机器每天花​​费100万美元,那么不使用Arduino会更便宜。主要是因为它会在不久之后的6到10年内死亡,因此您今天使用的Arduino将不再适合您在合适的时间修理机器(开源,您可以生产它...但是)。

OTOH ...如果您将Arduino用作PLC,则必须开发辅助电路,开发大量的软件,最后,经过大量的时间和设备,您将看到与Allen Bradley,Siemens等人的产品相同。但成本较高。

不仅制造成本巨大,而且在几年内对其进行修改,尤其是如果您尝试集成诸如profibus或ASi之类的现场总线技术,则成本很高。

玩起来很有趣……但这不是解决方案。


3
我在一个项目中使用了Arduino,但我什么都不后悔!使用Arduino,我能够在创纪录的时间内完成项目(零件可在digikey上获得,而2周的开发时间与3周的交货时间仅是订购PLC的时间),成本仅为PLC的四分之一,因此学习关于电子产品(传感器,电机,PID控制和基本无线通信)的很多信息!老实说,这个答案听起来像是由PLC制造商自己编写的。
Faken 2011年

哈哈,听起来确实很烂。
马歇尔·尤班克斯

4

大部分坚固性来自整个原理图和PCB的电气设计背后的EE。“通过认证”的公司所使用的芯片没有什么特别的-它们只是数量更便宜,而且可能拥有自己的认证。但是我认为Atmel和Microchip已经匹配它们。真正的优势来自于大量的测试,各种备用方法(掉电/过压检测器,看门狗)和精心的布局。我的印象是PIC / Arduino并未大规模使用,因为它们价格昂贵,并且提供的功能超出实际需求。


您无法真正将整个PIC系列产品与Arduino进行比较,而且更大规模地使用PIC-它们出现在预期的位置,而不是预期的位置。
马歇尔·尤班克斯

3

我是电子工程师,在一些教育应用中使用Arduino mega板,同时我还是Labview DAQ模块(如DAQ-6009 / 6008等)的用户。我还是allen-bradelly等公司的PLC用户。但是,我发现Arduino的适用性必须在工业恶劣环境中进行测试,例如温度波动,灰尘和湿度条件,以及振动和EM辐射,甚至在连接到传感器或执行器以及与其他数据处理卡之前需要可靠连接之前,给出信号i?p并在将其提供给最终的末端执行器(如阀门等)之前...

从这个网页和讨论中,我将生成针对工业应用..不同类型的环境..不同参数..等的Arduino卡的测试工具。


并且请报告您的发现。欢迎来到EE.SE-
安德鲁(Andrew)

3

运行Arduino的Atmel微控制器也可用于汽车和工业控制系统。到目前为止,一切都很好!

[quote]他们的硬件采用与Arduinos相同的制造工艺制造。[/ quote]

不幸的是,Arduino开发板的其余部分可能没有那么坚固。

有许多设计上的折衷方案可能会缩短使用寿命,从而降低成本。例如,电容器在105°C时不能额定1万小时,而在80°C时可以额定2K小时,并且使用寿命确实存在差异!同样,Arduino上的调节器是便宜的高低压降版本,而不是功能更强大的超低压降版本。(曾经想知道为什么Arduino需要7V或更高的电压才能产生5V?这就是为什么-使用ULDO稳压器,5.3V就足够了。)您的电源会掉电吗?您如何知道整个系统是否处于安全状态?板上甚至没有保险丝!

同样,Arduino板上几乎没有针对恶劣环境的保护措施。这些触点价格便宜,是消费级母触点,可插入数十次,而不是IP-65触点(出于成本)。I / O引脚依靠Atmega MCU内置的弱ESD保护,无需外部保护。

如果要构建对安全性至关重要的系统,则可能会使用Atmega MCU,但我不会按原样使用Arduino开发板。相比之下,使用针对这种情况设计的新组件来旋转新板的成本将很小。在那块板上,我可以放置所需的所有驱动程序硬件和接口保护,并使用真正的坚固型连接器。并不是说我实际上有资格构建对安全性至关重要的电子系统-我是一名软件专家!

要使用具有某些电气保护功能(但在其他故障模式下仍然没有保护功能)的Arduino,请查看Ruggeduino:http: //ruggedcircuits.com/html/ruggeduino.html


2

我认为灰尘,湿气,振动等问题很容易解决。我从事汽车碰撞修复工作已有30年,并为各种控制器提供服务。在汽车上用于解决恶劣环境的简单解决方案是将控制模块封装在不导电的树脂中,以防止任何湿气或灰尘与控制器接触,同时使控制器不受振动的影响。

我还是一个皮划艇者,为我的船建造了一个电动泵系统,以解决在暴风雨中试图抽出被淹船的生命威胁问题。多年来,皮划艇中的电动泵的问题一直是电子设备易于使用,但要防止盐水。除了暂时的成功,似乎没有人能做到。

事实证明,通过在氨基甲酸酯中使用磁性开关以及外壳开关和控制器,我拥有一个能够在3年盐中存活下来的系统,并且淡水,水淹没的所有撞击以及汽车运输都可以向船。

请注意,我不是电子专家。因此,可能是Arduino的弱点,使它们不适用于安全系统,但是在环境中,没有什么可以避免一些思考的。


2

在以下情况下,可以在工业环境中使用Arduino:

  1. 您可以像PLC一样保护输入和输出
  2. 您可以在应用程序中或借助外部硬件来实现掉电检测和看门狗
  3. 您的应用程序要确保输出始终处于已知的安全状态
  4. 您可以直接在代码中实现所有互锁和安全性
  5. 您花费更多的时间进行测试,然后编写代码
  6. 您不需要为定制的设备认证

您可能需要提供MODBUSPROFIBUS协议接口,并使驱动程序连接0..20mA,4..20mA,0..10V,TC,电机,编码器(或使用带有此类驱动程序的MODBUS / PROFIBUS从站卡) )...

如果要使用梯形逻辑而不是C / ASM / PAS / BAS 对设备进行编程,则可以。该软件提供了这一点。

梯形逻辑编译器

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.