梯形图逻辑是一种简单且自文档化的编码方法,甚至有人怀疑它是否是一种编程语言。 它遵循继电器控制系统中使用的梯形电气图的格式,大多数人都可以快速学习并掌握它。它是在过去的数十年来唯一在机器自动化领域中大规模应用的编程语言,并且在可预见的将来, 仍然是自动化行业中使用的主要编程语言之一( 见图 2)。

图 2 : A u t o m a t i o n D i r e c t 提 供 的 一 款 PLC,可为执行梯形 图逻辑提供工业硬件 平台。

随着时间的推移,具有不同背景的人从不同领域进入该行业,各种编程语言被引入工业自动化工具箱中。其中包括功能块编程、结构化文本、状态编程和顺序功能图。这 4 种编程语言和梯形图逻辑,构成了IEC61131-3 国际电工委员会 (IEC) 的标准编程语言。

IEC61131 背后的逻辑是 :如果每个供应商都遵循该标准,那么至少在某种程度上,一个人只需学习这 5 种编程语言,就可以轻松地在来自不同供应商提供的平台之间进行切换。 然而,事实却并非如此。

基本梯形图逻辑(如使用继电器触点和线圈)也是一样的 ;但是在编程时,必须学习每个供应商的语法和用户体验,以及如何使用编程平台的详细信息。尽管缺乏标准化,但与面向对象编程相比,梯形图逻辑有以下优势 :

· 非常适合机器和过程控制 ;

· 由于本质上是自文档,因此更易于理解;

· 易于对受控系统进行故障排除 ;

· 易于调试 ;

· 源代码通常可以存储在处理器中。

梯形图逻辑非常适合于机器和过程控制, 特别是具有大量离散输入、输出(I/O)的自动化系统。多年来,梯形图逻辑也在不断改进,以处理模拟量I/O,使其更适合于众多的过程控制应用。

与机器控制应用相比,过程应用中模拟量 I/O 的比例往往较高。

因为梯形图逻辑比面向对象编程更易于使用,因此众多熟练的技术人员和工程人员可以快速学习梯形图逻辑。逻辑高度系统化、有序化,再加上其具有自文档的性质,使其更易于理解和掌握。在启动某个设备之前,每行代码都必须为真。如果有 5 个电机需要控制,那么至少需要 5行代码,实现了高度简化。

“梯形图逻辑源代码和描述符通常保存在控制器中,无需访问源代码,这可以消除程序员在试图理解编译程序所遭受的挫败。”

pythonplc曲线_PLC的编程策略:面向对象编程和梯形图逻辑之比较相关推荐

  1. pthon_函数式编程与面向对象编程的比较

    函数式编程作为结构化编程的一种,正在受到越来越多的重视.工程中不在只是面向对象编程,更多的人尝试着开始使用函数式编程来解决软件工程中遇到的问题. 什么是函数式编程?在维基百科中给出了详细的定义,函数式 ...

  2. 函数式编程与面向对象编程的优劣

    函数式编程作为结构化编程的一种,正在受到越来越多的重视.工程中不在只是面向对象编程,更多的人尝试着开始使用函数式编程来解决软件工程中遇到的问题. 什么是函数式编程?在维基百科中给出了详细的定义,函数式 ...

  3. 函数式编程与面向对象编程的比较

    函数式编程作为结构化编程的一种,正在受到越来越多的重视.工程中不在只是面向对象编程,更多的人尝试着开始使用函数式编程来解决软件工程中遇到的问题. 什么是函数式编程?在维基百科中给出了详细的定义,函数式 ...

  4. php 取对象数据_过程式编程和面向对象编程有什么区别?怎么理解php对象的概念?...

    PHP编程中对象的概念? 在上一篇文章咱们介绍了使用了php中的new pdo来连接数据库MYsql,其实在我们学习编程语言时经常会碰到"对象"这个词汇,准确来说是"面向 ...

  5. 高阶函数||编程范式: 命令式编程/声明式编程 || 编程范式: 面向对象编程(第一公民:对象)/函数式编程(第一公民:函数)

    编程范式: 命令式编程/声明式编程 编程范式: 面向对象编程(第一公民:对象)/函数式编程(第一公民:函数) 高阶函数 filter/map/reduce filter中的回调函数有一个要求: 必须返 ...

  6. Java函数式编程和面向对象编程

    文章目录 什么是函数式编程? 什么是面向对象编程? 函数式编程和面向对象编程的优缺点 什么是函数式编程? 函数式编程的核心:在思考问题时,使用不可变对象和函数,函数将一个值经过处理,映射成另一个值. ...

  7. JavaScript 的函数式编程与面向对象编程区别在哪?

    本文通过代码来看一看JavaScript中函数式编程和面向对象编程的差异. 作者 | Jesse Warden 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 以下为译文 ...

  8. php控制器面向对象编程,PHP 面向对象编程(2)

    一些内建方法: class Person { public $isAlive = true; function __construct($name) { //这里我们创建了一个name的属性 $thi ...

  9. python完全支持面向对象编程_python面向对象编程----009

    本篇内容: 1.反射 2.面向对象编程 3.面向对象三大特性 4.类成员 5.类成员修饰符 6.类的特殊成员 7.单例模式 反射 python中的反射功能是由以下四个内置函数提供:hasattr.ge ...

最新文章

  1. Ext.data.reader.Json reader: json
  2. Github热榜--《程序员做饭指南》
  3. WEB接口测试之Jmeter接口测试自动化 (四)(持续构建)
  4. Excel2019(Office 2019)导入数据网页(文本txt)无法显示以前样式的问题(终极解决方案)
  5. xamppmysql访问被拒绝_XAMPP中无法开始MySQL的问题
  6. mysql sql exists_数据库sql语句的exists总结
  7. Java面试题-集合框架篇三
  8. 数学分析与高等数学的异同
  9. 利用1stOpt进行方程拟合与参数优化
  10. xp如何快速升级win10系统
  11. 谷歌发现育碧uPlay安全漏洞
  12. fiddler手机下载证书提示No root certificate was found. Have you enabled HTTPS traff 解决方法 及手机配置代理后无网络问题
  13. ubuntu 使用LVM修改分区大小后开机报错的解决办法
  14. 一个月怎么赚到5万块?
  15. 小程序报错修改Expecting 'STRING','NUMBER'
  16. 自然语言处理NLP 2022年最新综述:An introduction to Deep Learning in Natural Language Processing
  17. Google论文之一----Bigtable学习翻译
  18. 创建TLS 客户端凭据时发生严重错误。内部错误状态为 10013。处理记录
  19. 淘宝的ITEST框架
  20. 问道手游安卓服务器维护公告,问道手游手游安卓服务器1月19日维护公告

热门文章

  1. c#中WinForm中拖拽窗体实现移动功能(无边框模态窗体)
  2. C#操作SQLite数据库增、删、改、查 实例
  3. MPAndroidChart LineChart 折线图 你要的都在这里了
  4. Android—View事件分发与View子类
  5. java第三周学习总结
  6. icp光谱仪的工作原理_ICP2060T ICP光谱仪
  7. 小白进阶之GIT篇(1)——创建了分支进行了代码修改但是切换回master分支运行发现代码在master分支也会生效
  8. android studio升级版本,导入项目出错
  9. 开源项目Hopsan代码梳理、流程分析
  10. idea使用svn拉取项目代码_IntelliJ IDEA 14 拉取SVN maven 多模块项目 部署tomcat 详细图解!...