首页 > 编程语言 >详解PLC常用的编程语言

详解PLC常用的编程语言

时间:2023-10-07 11:35:02浏览次数:42  
标签:功能模块 语言 编程语言 编程 梯形图 详解 PLC

大家都知道学习某种新知识,技巧跟方法是关键的。正如新手刚开始接触PLC,它的软件编程语言与一般计算机语言相比,具有明显的特点,它既不同于高级语言,也不同于一般的汇编语言,它既要满足易于编写又要满足易于调试的要求。

早期的PLC仅支持梯形图编程语言和指令表编程语言,现根据国际电工委员会制定PLC编程支持的语言包括以下五种:梯形图 (LD)、指令表 (IL)、功能模块图 (FBD)、顺序功能流程图 (SFC)及结构化文本 (ST)。

 

一、梯形图语言(LD)

梯形图语言是PLC程序设计中最常用的编程语言,它是与继电器线路类似的一种编程语言。因为从事电气人员对继电器控制较为熟悉,所以梯形图编程语言应用的程度上比较广泛。

特点:

1、具有直观性、形象性及实用性,与电气操作原理图相对应;

2、梯形图程序与继电器控制系统相类似,电气从业人员易于掌握;

3、梯形图使用的继电器是由软元件来实现的,使用和修改较为灵活方便

7cee916a-d123-11ed-bfe3-dac502259ad0.png

二、指令表语言(IL)

指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。

特点:

1、常采用助记符来表示操作功能,具有容易记忆,便于掌握;

2、与梯形图有对应关系,在PLC编程软件下可以相互转换有部分软件没有这个功能(如:三菱的GX Works2)

3、便于操作,在手持编程器的键盘上采用助记符表示,在无计算机的场合可实现编程设计。

7d155f0c-d123-11ed-bfe3-dac502259ad0.png

三、功能模块图语言(FBD)

功能模块图语言是与数字逻辑电路类似的一种PLC编程语言,对于有数字电路基础的人比较容易掌握。

特点:

1、以功能模块为单位,分析理解控制方案简单容易

2、功能模块是用图形的形式表达功能,直观性强,有较好的易操作性

3、对规模大、由于功能模块图能够清楚表达功能关系,使编程、组态及调试时间大大减少

7d318344-d123-11ed-bfe3-dac502259ad0.png

四、 顺序功能流程图语言(SFC)

顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。具有图形表达方式,能较简单和清楚地描述并发系统和复杂系统的所有现象,在模型的基础上能直接编程,所以得到了广泛的应用。

特点:

1、以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;

2、对大型的程序可分工设计,采用较为灵活的程序结构,可节省程序设计时间和调试时间;

7d5a5256-d123-11ed-bfe3-dac502259ad0.png

五、结构化文本语言(ST)

结构化文本语言是用结构化的描述文本来描述程序的一种编程语言,它是类似于高级语言的一种编程语言。在大中型PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系,完成所需的功能或操作。

特点:

1、采用高级语言进行编程,可以完成较为复杂的控制运算;

2、要求较高,需要有一定的计算机高级语言的知识和编程技巧;

3、因为直观性和操作性较差,常用于其他编程语言较难实现的用户程序编制。

7d883ac2-d123-11ed-bfe3-dac502259ad0.png

在PLC控制系统设计中,不同型号的PLC编程软件对以上五种编程语言的支持种类是不同的,所以不但对PLC的硬件性能了解外,也要了解PLC对编程语言支持的种类。

 

标签:功能模块,语言,编程语言,编程,梯形图,详解,PLC
From: https://www.cnblogs.com/emanlee/p/17627795.html

相关文章

  • plt.scatter 中cmap参数详解
    plt.scatter中cmap参数详解 1.首先,cmap参数和c参数配合使用的。参数c可以是一个序列,如:plt.scatter(a,b,c=['b','r','b','r','b'],s=80)此时c的序列是一个颜色序列,除了上述的简洁写法,还可以使用RGB或RBGA:plt.scatter(a,b,c=['#f00','#0f0','#f00�......
  • 以视频监控系统 EasyCVR 为例带您详解数字视频监控
    安防视频监控平台EasyCVR是一个具有强大拓展性、灵活的视频能力和轻便部署的平台。它支持多种主流标准协议,包括国标GB28181、RTSP/Onvif、RTMP等,还可以支持厂家的私有协议和SDK接入,例如海康Ehome、海大宇等设备的SDK。该平台不仅拥有传统安防视频监控的功能,还具备接入AI智能分析的......
  • AC自动机与dp详解
    AC自动机与dp前言:本篇题解隶属于https://www.cnblogs.com/linghusama/p/17742870.html部分首先一定要理解fail跳的原理,不然很难理解第二维为什么要设置。首先给出大致的雏形,dp_i_j表示目前拼凑出长度为i的字符串,且ac自动机上的指针在j位置时的字符串方案数。适用题型:对于求......
  • Flutter/Dart第11天:Dart函数方法详解
    Dart官方文档:https://dart.dev/language/functions重要说明:本博客基于Dart官网文档,但并不是简单的对官网进行翻译,在覆盖核心功能情况下,我会根据个人研发经验,加入自己的一些扩展问题和场景验证。Dart语言是纯面向对象的编程语言,就是是函数也是对象,它的类型就是Function类(https://......
  • 视频监控/视频融合平台EasyCVR视频监控系统组成详解
    安防视频监控平台EasyCVR是一个具有强大拓展性、灵活的视频能力和轻便部署的平台。它支持多种主流标准协议,包括国标GB28181、RTSP/Onvif、RTMP等,还可以支持厂家的私有协议和SDK接入,例如海康Ehome、海大宇等设备的SDK。该平台不仅拥有传统安防视频监控的功能,还具备接入AI智能分析的......
  • MSSQLSERVER执行计划详解
    转自:https://www.cnblogs.com/knowledgesea/p/5005163.html1.序言本篇主要目的有二:看懂t-sql的执行计划,明白执行计划中的一些常识。能够分析执行计划,找到优化sql性能的思路或方案。如果你对sql查询优化的理解或常识不是很深入,那么推荐几篇博文给你:SqlServer性能检测和优化......
  • Java多线程详解
          线程对象是可以产生线程的对象。比如在Java平台中Thread对象,Runnable对象。线程,是指正在执行的一个指点令序列。在java平台上是指从一个线程对象的start()开始,运行run方法体中的那一段相对独立的过程。相比于多进程,多线程的优势有:   (1)进程之间不能共享数据,线......
  • 三层架构详解
    一、什么是三层架构?   UI(表现层):主要是指与用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据。   BLL:(业务逻辑层):UI层和DAL层之间的桥梁。实现业务逻辑。   DAL:(数据访问层):与数据库打交道。主要实现对数据的增、删、改、查。将存储在数......
  • ORACLE 存储过程详解
    一、定义所谓存储过程(StoredProcedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数来调用并执行它,从而完成一个或一系列的数据库操作。二、存储过程创建......
  • PHP配置文件详解php.ini
    [PHP];PHP还是一个不断发展的工具,其功能还在不断地删减;而php.ini的设置更改可以反映出相当的变化,;在使用新的PHP版本前,研究一下php.ini会有好处的;;;;;;;;;;;;;;;;;;;;关于这个文件;;;;;;;;;;;;;;;;;;;;;这个文件控制了PHP许多方面的观点。为了让PHP读取这个文件,它必须被......