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

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

maynowei7个月前 (10-19)技术知识120

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)、函数 / 功能块调用等。

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

相关文章

去哪儿暑期PM实习一月记:在互联网公司做产品实习是怎样一种体验

人人都是产品经理旗下【起点学院】推出产品经理“365天”成长计划,BAT大牛带你学产品! 在毕业前的最后一个暑假,缘分使然找了几个月暑期实习之后进入了去哪儿,申请提前入职工作至今正好满一个月。原先有在...

Objective C interface(objective什么意思)

在Objective C里面,interface基本可以理解为其他语言里面的class。当然也有些不同。首先我们可以新建一个Objective-C的file。这里我们添加一个MyClass.m和一个M...

C++并发同步核心-mutex深度解析:守护共享数据的关键

在多线程编程中,当多个线程需要访问和修改共享数据时,如果没有任何同步机制,就可能发生数据竞争(Data Race),导致程序行为不可预测、数据损坏甚至崩溃。C++标准库通过<mutex>头...

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

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

C++11 同步机制:互斥锁和条件变量

前段时间,我研究了 ROS2(Jazzy)机器人开发系统,并将官网中比较重要的教程和概念,按照自己的学习顺序翻译成了中文,进行了整理和记录。到目前为止,已经整理了20多篇文章。如果你想回顾之前的内容,...

python-oracledb——利用python连接Oracle数据库的好用方法

这篇文章最早发布在CSDN了,最近想尝试使用一下头条,重新转移过来了。背景介绍之前使用的数据库一直是MySql,偶尔使用PostgreSQL,都是利用的数据库连接池使用;最近需要在Oracle数据库取...