位置:51电子网 » 电子资讯 » 行业预测

编程语言发展趋势及未来走向

发布时间:2019/3/11 10:15:16 访问次数:34991

kbpc25

通用ac / dc桥全波

通用3路终端





rohs rohs

单相桥式整流器,25a

51电子网公益库存:
AD8226ARZ-REEL7
AD8648ARZ
APT60GF120JRD
ANX6212GN-AE-R
STI23NM60ND
STM32F031G6U6
STM32F031K4U6
STF7NM60N
SN74LVC04APWR
SN74LVC06ADR
SN74LVC162244ADGGR
LT1641-1CS8
STM8S003F3P6
STM8S003F3U6TR
STM8S005C6T6
SKET800/18GH4
SKHI22AH4R
SKHI22BH4
SKHI60
SKM100GAL123

符合rohs

http://tenghaowy.51dzw.com / /

编程语言的关键因素在将梯形图逻辑与其它潜在选项进行比较之前,了解程序真正需要做什么,这一点非常重要。

程序必须能够使自动化运行,虽然几乎任何语言都能做到,但现实也对其提出了其它要求。这在很大程度上归结于可读性。

应该仔细考虑有关编程语言的3个关键问题:

a. 程序员或维护技术人员,能否查看代码并了解其功能?

b. 能否快速发现问题,最大限度地减少机器停机时间?

c. 当需要新功能时,是否易于扩展程序?不同语言的特性会影响程序员编写可读程序的能力。


以下方面可能会影响编程语言的选择。

1. 基本知识

梯形图逻辑应用广泛,很容易就能找一个能阅读理解程序的人。虽然某些行业对其它iec 61131 语言表现出一定的偏好,但并没有被普遍采用或理解。自动化中使用的pc语言往往非常流行,并且有大量的支持资源,但这些资源并不总能应用到工业领域,这就降低了可能的潜在收益。

2. 内部文档

每种语言都有一种方法,可以让程序员用简单的语言来解释程序的意图。在梯形图逻辑中,这主要是用回路注释和标签( 变量)注释来完成的,它们适用于简单的回路,但对较大的回路或数学函数的帮助则较小。其它iec 61131 语言各不相同,但通常很适合记录它们擅长的内容。例如,结构化文本在数学计算和循环结构文档方面表现良好。pc 语言往往有更多的功能,可用于内部文档,有时甚至会自动从源代码生成文档,为程序员或技术人员创建手册,以参考和快速了解整体结构。

3. 决策结构和循环

简单来讲,编程归结为“如果发生这种情况,就那样去做”。这是一个名为“如果,那么”的决策结构。在本文讨论的所有语言中,此结构都易于使用和理解。但是,如果程序员想重复做同一件事情,梯形图逻辑对这些结构支持的并不是特别好,通常会导致代码的可读性较差。而结构化文本和pc 语言往往更擅长常见的决策和循环结构。

http://xiangxing.51dzw.com

4. 数学

加、减法很容易,在任何语言中都能处理的很好,但当涉及复杂的数学功能时,那又会怎样呢?梯形图逻辑支持算术和一些基本函数,如绝对值或平方根,但如果计算涉及的内容更多,它们的可读性往往较低。从视觉效果上,注释与它们记录的内容是分开的,而且重复执行数学运算并不是特别好,因为循环功能并不完美。结构化文本和pc 语言功能往往更强大,因为它具有更强大的数学功能。pc 语言提供的高级数学函数,几乎可以用于任何目的,还可打包,以方便使用。

5. 可视性

阅读一个不熟悉的程序,就像通过纸管阅读一本探险小说,不得不在书的kbpc25不同部分之间来回切换,因此一次只能看到页面的一部分。适合屏幕显示的代码量,可能会影响程序员判断程序功能的执行和方法。通常情况下,屏幕上只能同时显示1 到5 行的梯形逻辑。它的图形性质使其信息密度很小,程序员难以“看到”整个程序。而顺序功能图,虽然也是图形化的,由于具有较高级的属性,因此可以在一定程度上避免这个问题,就像一本带有目录的短篇小说。基于文本的语言( 结构化文本和pc 语言)信息量往往更密集,在屏幕上一次可以显示30-50 行代码。

http://xiangxing.51dzw.com

6. 封装、代码复用

有什么措施可以应对不断增加的复杂性?开车时,司机并不需要考虑点火时间、牵引力控制或发动机冷却策略。所有其它无关的东西都被抽象掉,自成一体、自我管理。在编程中,这被称为“封装”。封装的好处,不仅仅是让程序在不同的细节层次上更容易理解;而且这也意味着代码可以复用。

如果根据程序设计,用机器来计算一天中每个小时的整体设备效率,则可以对其进行编程:计算一次整体设备效率,然后每小时复用一次。梯形图逻辑和其它iec 61131 语言,都可以很好地做到这一点。pc 语言增加了面向对象功能,这使其变得更强大。iec 61131 提供了面向对象的规定,但plc 制造商并不总是执行这些规定,这意味着程序员可能无法使用它们。

7. 库文件

库文件允许用户通过将经封装、测试的代码添加到程序中,使代码复用提升到一个新的水平。仍然用汽车作例子,虽然用户不知道引擎盖下有什么部件,但仍然可以驾驶它。梯形图逻辑和iec 语言对类似功能的支持有限。pc 语言有很多库文件支持,而且通常是免费的。并不是为了与梯形图逻辑一较高下,但它们确实是经常适用于梯形图逻辑不太适用的领域,如数学、视觉检查和数据处理。

8. 模拟与数字

在许多方面, 模拟与数字参数有点类似于数学参数。梯形图逻辑在数字信号和信息方面做得非常好, 但在模拟方面却不太擅长。功能块是另外一种 iec61131 语言,它在模拟信号方面做得非常好,但在数字信号方面却不太擅长。结构化文本和pc语言,能很好地处理这些,但由于它们更灵活,因此程序员需要更好地组织代码以提高可读性。

9. 确定性

在自动化应用中,按照循环周期( 例如,每15 毫秒) 读取输入、执行程序和写入输出,对控制器(plc、pc) 很重要。这就是所谓的确定性。梯形图逻辑和所有 iec 61131 语言都是确定性的。pc 语言各不相同。例如,c++ 可以是确定性的,但像 java和 c# 这样的高级语言,通常不具有确定性。

最好的选择是什么

那么梯形图逻辑与其它逻辑是如何匹配的呢?它仍然受到离散自动化行业的青睐,在这些行业中,数字输入和输出是常态。另一方面,在模拟输入和输出占主导地位的过程工业,则更多的使用功能块语言,来处理这部分代码。

当然,行业偏好只由上述因素之一,技术支持也很重要。现有的技术支持,在很大程度上是历史上适用规范的体现,因为最近的历史决定了当今的劳动力经验。由于梯形图逻辑长期以来被广泛采用,所以使用不同的编程语言可能看起来像是一个未卜的前景。http://xiangxing.51dzw.com

大量新毕业的大学生有基于文本的语言经验,但并没有梯形图逻辑的经验。随着劳动力的更新换代,并且随着更多支持文件的出现,行业偏好可能会倾向于基于文本的语言。未来,自动化操作很可能会包括多种语言。只用一种语言思考问题,可能会对实现这些目标产生不利影响。

plc 将使用一种或多种语言,众多外围设备也是如此。对于程序员来说,了解哪些语言是可用的、哪种语言适合于哪些领域,以及如何用其创建可读、有资源支持的代码将至关重要。

梯形图逻辑的起源自动化的出现要早于plc,那时使用继电器网络来充当应用的“大脑”。没有编程人员的角色:只有工程师负责设计电路、电工负责组装。当将逻辑绘制到图纸上时,电路被记录在有点类似梯子的标准结构中,因此被命名为“梯形图”


当plc 刚出现时,宣称它们会为自动化带来很多好处,但没有人知道如何对其进行编程。然后有人想到用梯形图对plc 进行编程,这样工业领域就可以利用现有的编程技能。工程师和电工也可以阅读和理解程序。在很大程度上,自动化设计可以遵循与继电器相同的模式。

在plc 之前,继电器控制需要占用机柜的物理空间,而这些机柜需要花钱购买,接线也需要时间。它们只能实现开/ 关功能——在继电器逻辑中,无法实现模拟、数学工具或数据收集功能( 除了特殊继电器中的一些定时和计数功能)。即使是最大、最复杂的自动化系统,也受到继电器物理特性的限制,因此梯形图逻辑语言并不需要做太多。

如今,plc 所用的处理器芯片,所占用的空间、资金和时间成本比继电器更少,但能实现的功能更多。另外,plc 中使用的编程语言也在不断扩展,以实现不断增加的功能。现在,梯形图kbpc25逻辑可以实现的功能比过去更多。plc 通常用于模拟控制,至于跟踪部件数据( 条形码、测试结果、校准)、控制运动和其它更多任务,梯形图逻辑仍然是主要语言。

随着编程语言的发展,自动化变得更加复杂。对plc 进行编程已成为一种更专业化的职业。对电工来讲,阅读和维护梯形图逻辑并不十分方便,而且在即将到来的新一代劳动力中,梯形图逻辑也不是普遍掌握的技能。

国际电工委员会的工业控制编程标准iec61131-3,以及个人计算机(pc) 编程也对工业编程产生了重要的影响。这些语言通常被视为梯形图逻辑的补充,而不是对立面。

由于plc 逐渐开始流行,工业界发现需要新的标准来指导编程。iec 委员会通过iec61131 标准(主要是第三部分(iec 61131-3)中的语言)来解决这一需求。标准中所定义的可以互换的4种编程语言——梯形图、功能块图、结构化文本和指令列表,还有一种被称之为顺序功能图的程序组织语言。

每种语言都有自己的优点和缺点,它们可以在某个程序中一起使用,以便更好地支持不同的程序功能。对于哪种语言最适合哪种任务,要根据不同的应用情况进行讨论。通常情况下,过程或以离散方式运行、或以连续方式运行。自动化也倾向于直接依靠数字量或模拟量输入输出(i/o)。http://xiangxing.51dzw.com

从pc 世界中蜕变而出的自动化语言,往往被用于特殊程序或外设的应用程序。这可能包括与数据库的接口或为自动化外围设备的编程,如摄像机和机器人。结构化文本 ( 在 iec61131 中的定义) 与pascal 语言非常相似。

iec 61131 编程标准面世时,pascal 语言是常用的pc 编程语言。此后,虽然pascal 语言不再流行,但这是自动化行业向pc 行业借鉴的一个很好的例子。现在,在自动化中行业中,也有些正在应用的pc语言,例如c++、java和c#。这些语言虽然功能强大,但在自动化领域还没有得到广泛的应用。(控制工程网 )

热门点击

推荐电子资讯

三星将推电子眼镜
据三星电子今年早些时候提交的设备图纸的备忘录显示,... [详细]