当前位置:首页 > 技术知识 > 正文内容

PLC的编程方式有哪些呢?_plc的编程方式有哪些呢图片

maynowei5个月前 (10-19)技术知识76

PLC(可编程逻辑控制器)的编程方式遵循国际标准 IEC 61131-3,同时各厂商也会提供扩展形式,主要包括以下几类:梯形图(LD),指令表(STL),功能块图(FBD),结构化文本ST,顺序功能图(SFC)

1 梯形图:

梯形图是最经典、应用最广泛的编程方式,图形化结构模仿传统继电器控制电路,由母线、触点(常开 / 常闭)、线圈、定时器、计数器等元素组成。

是不是和电路图特别像,直观易懂,与电气工程师熟悉的继电器电路图高度相似,上手门槛低;

逻辑关系清晰,串联表示 “与”,并联表示 “或”,适合表达开关量控制逻辑,缺点是计算复杂算法(如 PID、数据处理)实现繁琐,经常需要中间变量来过度,大型程序易冗长,可读性下降。

2 指令表:

基于文本的编程语言,类似汇编语言,用指令(如 LD、AND、OR、OUT)描述控制逻辑,每条指令对应一个操作。


好处是代码简洁,占用存储空间小,类似于机器语言。适合编写紧凑的逻辑或调试时手动修改指令。但是程序大的时候真心看不懂,尤其指针,感觉现在用这个用的越来越少。

3 功能块图 :

图形化编程语言,用 “功能块”(封装特定功能的模块)和 “连接线” 表示信号流向,类似电子电路中的逻辑门组合


适合表达复杂数学运算和控制算法(如 PID、比较、算术运算);模块化程度高,功能块可重复调用,便于大型程序开发。但是开关量逻辑表达不如梯形图直观;需理解功能块的输入 / 输出参数含义,在老外写的程序见过使用比较多。

4 结构化文本:

高级文本编程语言,语法类似 Pascal 或 C 语言,支持变量定义、条件语句(IF-ELSE)、循环语句(FOR、WHILE)、函数 / 功能块调用等。

适合编写复杂算法(如数据处理、模糊控制、批量配方管理);代码结构化强,便于维护和复用,支持大型程序开发。当然这个也是我自己使用最多,当时有一个小问题就是没有梯形图直观,但是图形化逻辑表达能力弱,不像梯形图监控可以直观的看到哪里条件不通,直接处理。不适合简单开关量控制;对编程者的编程语言基础要求较高。

相关文章

利用Axure+js创建可配置地图页面(axure嵌入地图)

编辑导语:如何利用Axure实现自定义地图展示?本篇文章里,作者结合Axure与高德地图,对如何在Axure中设置相应参数、进而预览时实现自定义地图展示效果的操作流程进行了示范和总结,一起来看一下。本...

关于异步信号安全(下面关于异步电路危害的描述错误的是)

线程安全与重入以及异步信号安全的区别. 可重入一定是线程安全的,但是线程安全不一定是可重入的. 引用别人的博客中的话吧.如下: http://blog.csdn.net/xiaofei0859/art...

掌握C语言多线程:高效并发编程指南

一、多线程基础概念介绍多线程编程是现代软件开发中提高程序性能和响应性的重要技术。在C语言中,pthread(POSIX Threads)库是实现多线程编程的标准工具。本节将通俗易懂地介绍多线程的核心概...

如何正确理解Java领域中的并发锁,我们应该具体掌握到什么程度?

苍穹之边,浩瀚之挚,眰恦之美; 悟心悟性,善始善终,惟善惟道! —— 朝槿《朝槿兮年说》写在开头对于Java领域中的锁,其实从接触Java至今,我相信每一位Java Developer都会有这样的一个...

go语言并发原语RWMutex实现原理及闭坑指南

1.RWMutex常用方法Lock/UnlockRLock/RUnlockRLocker 为读操作返回一个Locker接 口的对象2. RWMutex使用方法 func main() { var c...

c++ 继承简介(c++继承的概念)

24.1 — 继承简介2024 年 6 月 5 日在上一章中,我们讨论了对象组合,即从更简单的类和类型构建复杂类。对象组合非常适合构建与其部分具有“has-a”关系的新对象。但是,对象组合只是 C++...