自动化行业是使用梯形逻辑来告诉可编程逻辑控制器(PLC)做什么和如何做的。但经典的计算机控制时代已经进入工业4.0时代,其重点是工业数字化和复杂系统的软件实现。为了跟上这一转变,工业自动化和控制工程学科也在不断发展,反映了操作技术(OT)和信息技术(IT)系统的融合。
在最近的一次技术会议上,我与Cirrus Link Solutions的首席技术官、MQTT的共同发明人阿尔伦·尼珀(Andrew Nipper)交谈时,我们开始谈论这一演变。我请他对自动化和控制工程师目前使用的编程语言进行排名。他告诉我Python、Java和C语言家族(C、C++和C#)是前三名。但他很快澄清说,他们的流行不以任何方式排除其他人。
由于它们相似的语法,Python和Java被认为是编程语言C族的一部分,C族还包括Julia、Perl和许多其他语言。然而,该系列不包括梯形逻辑(长期用于开发PLC和PACs等工业硬件的控制应用程序)和IEC 61131-3(一种更新的开放式编程标准)。
在一个文章 艾默生的达雷尔·哈尔特曼在2022年6月出版的题为“面向未来的边缘控制编程”的InTech杂志中写道:可编程自动化控制器(PACs)“开始承担我们今天会与边缘联系在一起的任务,尽管它们专用的实时操作系统(RTOS)施加了一些限制。在许多情况下,用户发现有必要使用现代信息技术(it)类型的语言(如C++和Python)创建复杂的算法(如机器学习策略),在与PACs协同工作的PC和工业PC(IPCs)上运行。”
在同一篇文章中,Halterman说,用户应该尽可能寻求包含开放编程、软件和通信标准的产品组合。他说,对于边缘控制器,这要求(除其他重要标准外)它们“可以使用C/C++、Python和其他适合机器学习【ML】和人工智能【AI】等应用的现代语言进行编程。”
在2022年10月的机器人和自动化新闻中文章题为“最受欢迎的自动化编程语言”的作者马克·阿林森写道:“根据去年进行的调查,【Python】是开发自动化系统的最受欢迎的语言。它的开源和自由是主要优势。强烈鼓励任何新企业使用Python作为其主要编程语言。Python的高可读性使其学习起来相对简单。”阿林森的文章还提到了JavaScript、Java和C#作为自动化和企业环境的强大编程语言的流行。
为了支持Python的领先地位,IEEE Spectrum最近发布了第10次顶级编程语言年度排名,称“今年,Python不仅在我们的通用‘Spectrum’排名中保持第一……而且扩大了领先优势。Python的主导地位的提高似乎在很大程度上是以更小、更专业的语言为代价的。它已经成为通用语言——也是人工智能等领域的大师,强大而广泛的库使它无处不在。”