当前位置: 主页 > 建站知识 > 软件开发

工业自动化软件开发-深圳招聘化工业务员

发布时间:2023-02-04 22:04   浏览次数:次   作者:佚名

本文作者彭宇,毕业于清华大学热能工程系,教授级高级工程师,PLCopen中国组织名誉主席,中国自动化学会仪器仪表专业委员会名誉常务委员,享受国务院特殊津贴者; 长期从事工业生产过程自动控制系统、现场总线的设计和工业通信在控制系统中的应用研究工作。 由《工控百话》原创发布,数码企业授权。

浏阳市工业新城建设开发_深圳招聘化工业务员_工业自动化软件开发

01

软件开源与开源软件我们平时使用的数码设备中的程序都是由基本代码组成的软件。 根据基础代码是否公开,可以分为开源和闭源两类。 任何人都可以共享、修改和维护的代码称为开源代码; 那些只能由代码开发者独家使用、修改和维护的是封闭源代码。

深圳招聘化工业务员_工业自动化软件开发_浏阳市工业新城建设开发

图1 开源软件的特点:开放、自由、共享

开源软件(Open Source Software,OSS)是指每个使用它的人都可以按照自己的意愿修改、改进或使用该软件,不受任何限制。 因此,可以在现有开源软件的基础上,针对自己的具体应用进行定制。 开源软件是一项协作工作,依赖于程序员和同行社区相互使用、更改、审查和共享源代码。 开发人员共享见解、想法和代码,共同或单独创建更具创新性的软件解决方案。 这种可扩展且灵活的软件开发方法确保拥有源代码的任何人都可以修改、增强和重新分发它,以提高可重用性和可访问性。 开源软件遵循点对点生产和大规模协作的基本原则,为最终用户创建更具可持续性的软件。

闭源软件 (CSS) 是不向公众发布的专有软件。 本软件是加密的,只有创建代码的原作者才有权合法复制、修改、更新、编辑源代码。 在最终用户方面,封闭软件对其应用程序的操作施加了限制,并阻止用户修改、共享、复制或重新分发源代码。 除了开源和闭源之外,还有一种免费和开源的软件叫做FOSS,它可以让用户从更原则的角度来访问软件。 在自由开源软件体系中,自由软件基金会(FSF)旨在保护用户的自由,开源组织(OSI)旨在确保可靠软件的技术价值。

由于开源软件的出现,计算环境在过去 20 年发生了翻天覆地的变化。 这种戏剧性的变化是在开源软件开发人员社区提供的软件和代码的背景下发生的,他们花费了数百万工时来开发和验证这些软件和代码。 用户可以从这些库和构建块中组装软件,而不是从头开始编写,以前被认为成本高昂的软件开发现在要便宜得多,以前需要长期开发的项目现在可以快速开发。

浏阳市工业新城建设开发_深圳招聘化工业务员_工业自动化软件开发

这类开源软件大致可以分为三类。 首先是操作系统,Linux和安卓(Android)就属于这一类。 目前,100% 的超级计算机和 85% 的智能手机、大多数边缘计算设备都在运行 Linux,全球前 100 万台服务器中有 96.3% 和 90% 的云基础设施都在运行 Linux。 这显然意味着随着越来越多的工厂开始使用服务器和云连接来连接和增强其基础设施,Linux 将在工业自动化市场中继续增长。 第二类开源软件包括应用程序,例如数据库和浏览器。 在工业界,这类软件往往不如其他类别的软件受欢迎。 但一些开源数据库,如 PostgreSQL 全球开发组织的 PostgreSQL 和 Oracle 的 MySQL,仍然很受欢迎。 更流行的开源软件类别之一是可以嵌入到其他软件项目中的代码库。 现在一个软件项目中90%的代码都与多线程处理有关,而软件开发人员为软件带来的价值只有10%。 因此,具有必要才能的软件开发人员和用户通常使用开源代码和商业代码的组合来构建他们的大部分代码。

许多公司和个人更喜欢使用开源软件而不是专有或商业软件,因为它的多功能性、安全性、进化性、社区氛围和支持、培训和稳定性。 使用开源软件的一些优势包括节省成本、自定义代码的灵活性以及利用社区而不是依赖单一供应商的自由。 开源也有一些缺点,包括:支持不足、测试不足、文档不足、过度复杂和软件漏洞。

02

工业自动化开源的背景及进展 与IT行业的开源运动相比,工业自动化领域开源软件的发展要晚得多。 要了解开放软件运动如何影响工业软件技术,让我们首先看看目前推动许多新的自动化技术决策的大趋势,主要是:

工业自动化软件开发_浏阳市工业新城建设开发_深圳招聘化工业务员

(1) 终端用户需求的增加导致软件应用和程序的复杂性增加; 为了在满足个性化、多样化的技术需求与提供稳定可靠的工业技术快速落地之间取得平衡,力推工业自动化走向开源的未来。

(2)工业自动化与工业互联网日益融合或结合的趋势,反映了更大范围内OT与IT融合的客观需求; 将推动IT技术高速发展多年的开源模式引入到OT领域,以期突破OT领域软件长期保守封闭的局面。

(3)在工业自动化领域,开放自动化的风从七八年前就开始吹了。 一方面针对DCS、PLC等主控系统软硬件捆绑带来的弊端。 在发展环境的制约下,寻求革命的出路; 追求使用来自不同供应商的硬件和软件组件,形成具有开放性、互操作性、内生信息安全性、快速部署和运行特征的新兴控制系统的目标。 必须借鉴和充分利用开源软件的无限生命力和潜力,让广大终端用户摆脱对特定供应商的依赖,把握好自己的发展节奏。

工业自动化软件开发_深圳招聘化工业务员_浏阳市工业新城建设开发

总之,“应用驱动技术”是开源软件开发的核心,这种社区成员可以使用、修改和共享源代码的模式注定会成为不可阻挡的趋势。 面对这种趋势,自动化行业首先要明确并迅速改变“根本不了解任何开源商业模式”的主要问题。 有识之士认为,在未来更多企业管理软件来自开源软件的时代,大中小型自动化企业和行业组织或产业联盟应该考虑如何跟上形势,使用开源软件。 这是公司和组织发展战略的重要组成部分。

德国A&D咨询公司对363名自动化行业参与者进行了自动化领域开源软件应用情况调查。 大约2/3的人认为高性能在未来的应用中至关重要,控制器作为一个开放的通信中心,需要连接到云端并支持任何编程/开发工具。 几乎80%的人都关心与“No Vendor Lock-in”相关的一个关键问题,即在控制平台中开放接口,以减少在自身集成开发环境中的集成工作。 谈到开源软件,参与调查的人有些分歧,因为很多人对开源软件还存在很多的无知。 虽然 2/3 的受访者认为通过社交平台和开放免费的源代码交换信息非常有帮助,但约 1/3 的受访者仍然偏爱专有且经过验证的 PLC 解决方案,顽固地认为对于控制任务,开放社区解决方案通常不受信任.

综上所述,可以得出结论,工业控制器系统正在增加工业级开源软件的性能选项,但仍有很多意见不看好开源可编程逻辑控制器(PLC)。 所以让我们从这里开始。 50多年前,为工业应用量身定做的PLC一经问世,短短几年便风靡全球,并迅速普及到各类离散制造行业。 它还不断扩展包括 I/O、通信和运动控制功能,以提高计算速度和可靠性。 还走标准化道路,制定了国际标准IEC61131,为全行业所普遍接受。 同时,应用领域也扩展到运动控制和过程控制。

PLC设备结构紧凑,可以安装在机械设备和移动设备的现场,在很大程度上促进了自动化的发展,甚至被誉为第三次工业革命的标志之一。 PLC通常使用专门的电缆、通信协议和编程语言来执行任务。 它们虽然是相对封闭的平台,但使命非常明确,长期以来一直为大中小型工业应用提供多样化、有效的控制、数据采集和监控服务。 但是,随着IT技术的飞速发展,即使是这样成熟的控制产品,现在也面临着开源软件和开源硬件的影响和冲击。

开源PLC在很多方面都展现出其独特的优势,例如:可以在开源软件代码的基础上进行自由代码合成和代码再共享; 可以进行更高程度的合作与协作; 在条件下对源代码的有序许可管理访问; 结束独家供应商软件锁定; 和更多。 因此,这些年美国和德国出现了既继承传统PLC特性又具有开源特性的产品,例如德国菲尼克斯电气的可编程逻辑控制器PLCnext和边缘可编程美国OPTO 22工控。 设备史诗。 还有工业级开源 PLC(见图 2)及其基于 Raspberry Pi 和 Arduinos 开源硬件的集成开发环境。 Arduino是一款来自欧洲的便捷、灵活、易用的开源电子原型平台,包括各类硬件Arduino开发板和软件Arduino IDE。

工业自动化软件开发_浏阳市工业新城建设开发_深圳招聘化工业务员

图2 基于Arduinos扩展的开源PLC

作为开放式流程自动化的倡导者和实践者,埃克森美孚一直在研究如何从 PLCnext 中获益。 受 Raspberry Pi 和其他开放式架构社区的启发,Phoenix 将此 PLC 开发为开源设备。 埃克森美孚自 2019 年起在其位于新泽西州克林顿的试验工厂引入了它,以提供基本计算和可配置 I/O。 除了作为传统的 PLC,PLCnext 还是一款支持 Linux 的设备,这意味着它允许使用传统的 IEC61131-3 语言以及 C++、C 和 Python 等编程语言。 这种开源PLC几乎可以运行在任何IDE(集成开发环境)编译器上,如Eclipse 4DIAC、Visual Studio、Matlab等。埃克森美孚所追求的开放式自动化理念不是依赖一家供应商,而是将多个软硬件结合起来供应商按照O-PAS系列标准形成可互操作、组态可移植、应用程序可移植和可互操作的可替换控制系统(见图3)。 该试点工厂一直在使用 PLCnext 来证明这一概念,但埃克森美孚工程师开发的任何基于 Linux 的软件都可以在任何开放的、支持 Linux 的控制器上运行。

工业自动化软件开发_浏阳市工业新城建设开发_深圳招聘化工业务员

工业自动化软件开发_浏阳市工业新城建设开发_深圳招聘化工业务员

图3 埃克森美孚的开放式流程自动化测试实验室控制系统,由多厂商硬件和软件组件组成

秉承互联网开放互通的总体理念,工业物联网和工业互联网显然也需要建立在开放互通的基础上。 最终用户需要意识到开放软件运动对工业软件技术的影响,认识到互联网基本构建块的开放性很重要。 比如现在互联网的通信协议TCP/IP,以及网站开发的超文本标记语言HTML,前者是美国国防高级研究计划局DARPA为了在核战争中生存而建立的开放协议,后者是由 CERN 开发的。 研究中心创建的互联网开放语言。 一旦成为开源软件,就极大地促进了互联网的普及。 同样,工业界越来越多地使用 Internet 也受益于开源软件。 近年来工业物联网 (IIoT) 的流行推动了最新版本的 HTML、HTML5 和开源版本的 TCP/IP 的使用,以及 MQTT 开放消息协议的使用。 据 MQTT 共同发明人 Arlen Nipper 称,MQTT 的使用已经占所有工业物联网项目的 64%。 MQTT 协议的开源版本在 Eclipse 上称为 mosquitto。

03

开源软件在工业自动化应用中的优势显而易见,制造自动化领域众多参与者的崛起以及工厂越来越多地采用工业物联网和自动化解决方案,为开源软件的应用提供了合适的环境。 无论制造商的运营技术和管理要求如何,开源软件都是一种增值解决方案,因为它具有定制化、高适应性、可扩展性、可访问性、成本效益和质量等优势。

01

客制化

软件开发商使用开源代码为创建自己的特定应用软件提供核心代码,在此之上构建特定功能,并允许用户访问它并根据需要进行更改。 与锁定用户的封闭系统不同,开源允许他们调整和修改代码以满足特定需求或应用程序。 这种额外的编码允许无限定制,使社区(即用户集合)能够在软件集成阶段添加有益的功能,例如用于用户测试或为机器寻找最佳解决方案的功能。 定制在数据和流程可视化方面也很有价值,用户可以在其中开发最能描述其操作的仪表板和视觉效果。 如果使用正确的传感器为特定机器提供实时状态监测数据,则可以定制软件代码来收集和处理特定参数的数据或计算特定值。

02

适应弹性

由于源代码的快速修改,开源软件对变化具有弹性。 快速添加或删除功能并适应网络环境或特定应用程序的能力可能会使新开发的程序变得不稳定,但通过暴露在不同的环境和应用程序中,开源代码也可以更强大地抵御网络安全威胁。 由于有这么多编码人员或程序员进行测试和增强,实施开源代码的风险(例如在网络安全方面)不一定高于封闭代码。 在使用开源软件开发自己的定制软件时,实施者可以借鉴适用于其他闭源软件的相同规则,但实施者必须了解代码的源代码,避免使用未知源代码,因为这些源代码可能裸露。 恶意更改代码。 总体而言,开源代码具有弹性、适应性和敏捷性,能够适应给定的新环境。

03

浏阳市工业新城建设开发_深圳招聘化工业务员_工业自动化软件开发

可扩展性

开源附加组件和定制功能还允许代码具有高度可扩展性。 这种可扩展的实施发生在两个维度上工业自动化软件开发,即时间线和基于应用程序的实施。 二者缺一不可,才能保证用户愿意接受并满足运行应用的要求。 关于采用时间表,可扩展性允许修改软件和代码以满足用户期望。 开源代码支持用户测试和反馈功能。 最终解决方案将包括多次迭代以满足用户需求和运营期望。 另一方面,基于不同的应用,代码程序也可以根据控制目的或要求进行更改和扩展。 比如控制不同的机器,或者同类型的机器但是使用不同的环境或者场景,或者为了特定的目的增删某些特性等。如果有三台相同的机器(A、B、C),它们在不同环境:A在负2度工作,B在常温,C在不断洗涤。 然后状态监控软件应该为每个场景定义可接受的参数,以避免错误触发误报。 为此,可以调整基本代码以满足不同应用程序的特定功能。

04

可达性

一般来说,网上可以找到性价比高的开源代码。 还有其他资源,例如免费编码教程,也不需要任何许可。 此外,当程序员更新开源代码时,他们必须共享新版本以便再次使用,并确保代码可访问且是最新的。

05

成本效益和质量

使用社区开源代码大大降低了内部构建应用程序的开发、集成和测试阶段的成本。 同时也减少了实施时间,有利于满足项目的进度或产品的上市时间。 从本质上讲,开源软件应该是受信任的源代码,是由许多编码人员和用户创建的高质量、可靠的代码。

06

开源安全与权限管理系统

与其他操作系统相比,开源 Linux 的优势之一是权限管理和安全性。 为了授予定制的访问权限,Linux 提供了非常细粒度的、可独立调整的权限管理,对用户和组进行严格的权限分配和管理。 例如,允许保护配置文件和控制设置免受未经授权的访问或无意的更改。 这样,机器操作员无法在分配了适当权限的情况下对工艺参数进行任何更改。 严格的权限管理可以保护操作系统免受网络攻击工业自动化软件开发,安全问题在日益网络化的控制系统中显得尤为重要。 许多商用工业 PC 控制器使用 Windows 作为操作系统,因此必须定期安装安全更新。 特别是在生产环境中,安全刷新意味着中断并可能导致不良副作用。 然而,在基于 Linux 的内核中,有特别强化的“设计安全”内核。 操作系统通过简化来获得额外的安全性:只保留执行任务所必需的代码。 一开始就没有在系统上安装可能导致额外攻击媒介的不必要软件。 另一个好处是新的安全漏洞出现在开源库和免费程序中。 由于开放性,可以快速从社区导入相应的补丁。 相比之下,这依赖于制造商的安全补丁,这可能需要很长时间。

04

深圳招聘化工业务员_浏阳市工业新城建设开发_工业自动化软件开发

使用开源软件必须注意的问题 集成商和最终用户为他们的项目从相关开源网站借用免费代码。 为确保其运作良好且使用安全,需要首先对其进行仔细审查。 审查应从评估许可证开始,以确定它是否是可以合法使用的商业友好的开源软件许可证。 还要确定是否允许修改代码。 开源并不一定意味着您必须修改它,但您必须能够查看和使用代码。

除了检查许可证外,还要考虑安全性。 最好的起点是由活跃的用户社区支持和维护的开源应用程序和库。 用户越多越好,因为更多的眼睛会寻找错误并提出修复建议,这不仅会不断改进软件,而且有助于让社区领先于恶意行为者。 每个社区都有自己的特点。 如果你想加入的社区里有熟悉的人更好,这样你就可以了解更多。 还要找出谁是代码的发布者。 一般来说,愿意公开自己的名字和工作的人不太可能做出任何恶意的事情。

任何良好的审查过程还必须包括性能测试。 当我从开源社区获得一些代码时,我的下一项工作就是确保它对我有用,并且应该始终对您部署或修改的任何内容进行严格测试。

审查开源软件的另一个重要方面是考虑其在产品生命周期内的成本和收益。 在整个产品生命周期中运维开源软件的能力变得比自研软件更重要也更具挑战性。

深圳招聘化工业务员_工业自动化软件开发_浏阳市工业新城建设开发

出于这个原因,应该制定自己的内部标准和指南,以审查任何考虑包含在其产品中的开源代码。 在软件评估阶段,从软件在该领域的业绩、产品质量、与同类软件的比较、提供长期维护的能力、许可证结构等多个角度进行审查。

使用开源时,仍必须遵守许可条件,并在必要时加以澄清。 因此,每个开源软件的用户都必须将他们的程序建立在开源代码的基础上。 还要考虑封闭源代码是否可供您自己使用,这些程序是否可以商业分发等等。

原则上,在公司内部使用 GPL(GNU General Public License)或 BSD(Berkeley Software Distribution)等各种开源许可证时,它们之间的区别不大。 但是,如果进一步开发和分发开源软件,则应考虑许可条件。 这里开源程序区分了“Copyleft”和“Non-Copyleft”的许可类型。 如果制造商使用基于 copyleft 许可证(如众所周知的 GPL)的开源代码,那么修改后的代码也必须在原始许可证下重新分发给社区。 这是为了防止用户或制造商分发修改使用条款的修改后的源代码。 因此,在其解决方案中使用具有 copyleft 许可证的开源软件的自动化解决方案提供商必须仔细检查除许可证文本外是否还必须提供经过编辑的源代码。 例如,一些 copyleft 许可证要求开源软件的每个编辑版本都必须不受限制地分发。 但也有适度的 copyleft 变体,它们仅在特定条件下才需要分发源代码。 与包含 BSD 许可软件的非 copyleft 许可类型不同,它不需要发布修改后的代码。 因此,用户可以根据需要进一步使用BSD许可证开发软件,并获得专有许可证。 作为开发商业产品的一种选择,源代码不需要公开。 总之,开源软件使用的合规性是一个必须严格遵守的文件问题。

05

国内自动化企业使用开源软件的经验 虽然开源软件仍然存在文档薄弱、无技术支持等劣势,但国内一些小型自动化企业仍然认同使用开源软件打造工控机,并且有不少需要为这项工作完成工作。

当然,我们不得不承认工控系统的要求还是比较特殊的。 一味地提高核心处理器的性能并不能带来控制性能的绝对提升。 由于PLC等工控系统基本工作在循环扫描模式,对实时性的要求比较高,所以在选择开源软件时需要进行详细的评估和测试,尤其是对于基本的实时操作系统。 相比之下,非开源的商用实时操作系统(如:VxWorks、QNX等)拥有完善的文档和团队,为工控系统中使用的实时操作系统提供技术保障,但成本需要由采用者详细评估。 制作。 对于基本的实时操作系统,一些小型自动化公司更喜欢商业开源解决方案。 比如在开发PLC时,可以考虑使用:uCOSIII、KEIL RTX5、embOS、ThreadX等。这些RTOS应用非常成熟,并且有开源代码,提供商业技术支持,不会有后续的版权费或无一些指定芯片的版权费。

如果Linux操作系统应用于工业控制器产品,需要添加实时补丁。 目前主流的实时补丁有Preempt-RT和Xenomai。 其中,Xenomai实时补丁综合评价具有较高的实时性,在实时性要求较高的运控系统中得到广泛应用和验证。 而且采用微内核模式架构,实时应用执行效率更高。 Preempt-RT和Xenomai补丁都是开源社区项目,在不同平台实时性不同。 因此,需要进行大量的测试和验证。 用户需要评估公司团队是否具备测试和优化的能力。

工业自动化软件开发_浏阳市工业新城建设开发_深圳招聘化工业务员

由上可见,在工业控制器中使用开源软件进行基础系统建设也是一把双刃剑。 上海易控科技有限公司在这方面积累了很多宝贵的经验。 他们认为,最好的模式是在实时操作系统的基础上使用商业开源软件,或者聘请专业的工程师或者与第三方专业公司合作,解决实时操作系统的基础问题。 对于像IEC61131-3 PLC运行时系统这样非常专业的基础系统,虽然开源社区也有类似的开源软件平台,但其成熟度远远落后于市场上专业公司的产品。 如果公司不能投入巨资在项目上基于这个开源社区产品进行优化,是很难满足市场客户的要求的。 因此,对于以开发工业控制器为己任的OEM企业来说,与专业的控制软件公司合作是最佳的解决方案。

易控科技在搭建NXTOS工控系统平台时,也是基于以上分析判断,采用商用专用软件(LogicLab IEC61131-3软件平台)、商用开源软件、开源免费软件实现最终产品。 例如:NXTOS采用基于x86平台的Linux操作系统,支持Xenomai/Preemp-RT补丁。 因此,一控科技花费大量精力对这个平台进行优化和测试,最终在极其严苛的负载条件下进行了实时测试。 Xenomai 的最差抖动仍然可以达到小于 13us,Preempt-RT 的抖动小于 27us。 NXTOS在嵌入式MCU平台上实现了平均10us以内的最差抖动(部分平台1-2us)。 因此,在低抖动的情况下,可以大大提高处理器的利用效率,即使使用Cortex-M处理器,也可以达到EtherCAT 1ms的运行周期。 对于工控系统,公司的结论是:商业专有软件、商业开源、免费开源的结合。 另外,PLC运行内核不建议采用开源社区方案。 这种解决方案只能作为参考,但离产品化的距离太大了。

06

结论

The open source genie, full of hope and vitality, has come out of Pandora's box, and there is no way back to the old proprietary model of building software. Of course, it is impossible to replace all existing and future software with open source software overnight. But the whole software world, including the software field of industrial automation, has already been targeted and is moving in this direction. When emphasizing the importance of software in the past few years, we have all heard the phrase "software is eating the world", but it may be open source software that really eats the world.

The important promoters of open source software also make the open source movement develop vigorously. There is the Linux Foundation, which has annual revenue of billions of dollars and has taken over nearly 750 large and medium-sized open source projects, the ECLIPSE Foundation, which advocates industrial automation and intelligent open source software development with great enthusiasm, and the old software company Microsoft In recent years, a lot of effort has been devoted to supporting the application and promotion of open source software. In the field of industrial automation, there have also emerged many companies that have devoted themselves to the development and application of open source software. For example, Inductive Automation in the United States has created a very active and effective Ignition community; PLCnext from Phoenix, Germany has become a traditional PLC. A model of open automation; the edge programmable industrial controller EPIC advocated by OPTO22 in the United States has opened up a development path combining PLC control and industrial Internet.

How many domestic automation companies and research institutes will choose and act in the face of the vigorous development of open source software, people are eagerly waiting.

深圳招聘化工业务员_浏阳市工业新城建设开发_工业自动化软件开发

recommended video

Follow the "Digital Enterprise" video account to see first-line dry goods

工业自动化软件开发_浏阳市工业新城建设开发_深圳招聘化工业务员

Lean digital management and practice training course registration

深圳招聘化工业务员_浏阳市工业新城建设开发_工业自动化软件开发

Long press the QR code to see details