0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

西门子plc常用指令有哪些?

PLC在实现各种数量的I/O控制的同时,还具备输出模拟电压和数字脉冲的能力,可以满足您在过程控制中任何层次上的需求。

分享:

好的,西门子PLC(特别是S7-300/400/1200/1500系列)常用的指令主要分为几大类。下面列出一些最常见的、在梯形图(LAD)和功能块图(FBD)中广泛使用的中文指令及其含义:

一、 基本逻辑操作指令

  1. 常开触点 (Normally Open Contact - ||):

    • 指令:常开触点 或图示符号 ||
    • 功能:当连接到此触点的位状态为 1(“真”、“ON”)时,该触点“闭合”,允许能流通过。等同于“如果(A=真)则接通”。
  2. 常闭触点 (Normally Closed Contact - |/|):

    • 指令:常闭触点 或图示符号 |/|
    • 功能:当连接到此触点的位状态为 0(“假”、“OFF”)时,该触点“闭合”,允许能流通过。等同于“如果(A=假)则接通”或“非A则接通”。
  3. 输出线圈 (Output Coil - ( )):

    • 指令:线圈 或图示符号 ( )
    • 功能:当能流到达该线圈时,它将连接的位设置为 1。如果该线圈没有能流,位被复位为 0(除非有其他地方在写入该位)。是梯级末尾最常见的执行指令。
  4. 置位线圈 (Set Coil - (S)):

    • 指令:置位线圈 或图示符号 (S)
    • 功能:当能流到达时(通常只需要一个脉冲/扫描周期),将连接的位置位为 1,并保持为 1,直到被复位指令清零。常用在需要自锁或状态保持的场合。
  5. 复位线圈 (Reset Coil - (R)):

    • 指令:复位线圈 或图示符号 (R)
    • 功能:当能流到达时(通常只需要一个脉冲/扫描周期),将连接的位复位为 0,并保持为 0,直到被置位指令置位。常用于清除状态、停止设备等。
  6. 取反操作 (Negate - NOT / -|NOT|-):

    • 指令:取反 或图示符号 -|NOT|-
    • 功能:将输入的逻辑状态取反。若输入为 1,输出为 0;若输入为 0,输出为 1。可以用在触点或线圈的路径上。

二、 定时器指令 (主要针对S7-300/400的IEC定时器,S7-1200/1500指令形式类似但块不同)

  1. 接通延时定时器 (TON - Time ON Delay):

    • 指令:TON (例:TON DB1.Timer1)
    • 功能:当使能端 IN1 时开始计时。当前时间值 ET 从0开始递增。当 ET >= 预设时间 PT 时,输出 Q 变为 1IN 变为 0 时立即复位 ETQ
  2. 断开延时定时器 (TOF - Time OFF Delay):

    • 指令:TOF (例:TOF DB1.Timer1)
    • 功能:当 IN1 时,输出 Q 立即变为 1ET 保持为0。当 IN10 时开始计时。ET >= PT 时,Q0。计时期间 IN1 则立即复位 ETQ 保持为 1
  3. 保持型接通延时定时器 (TP - Pulse Timer):

    • 指令:TP (例:TP DB1.Timer1)
    • 功能:当 IN01(上升沿)时开始计时,输出 Q 立即变为 1。持续计时直到 ET >= PT,此时 Q0。计时期间 IN 变为 0 也不会停止计时或复位 ET。只有计时完成或执行复位指令才会使 Q0

三、 计数器指令 (主要针对S7-300/400的IEC计数器,S7-1200/1500指令形式类似但块不同)

  1. 加计数器 (CTU - Count Up):

    • 指令:CTU (例:CTU DB1.Counter1)
    • 功能:在计数脉冲输入端 CU 的每个上升沿(从 01),计数器当前值 CV 增加1。当 CV >= 预设值 PV 时,输出 Q 变为 1。复位输入 R1 时,CV 被复位为 0Q 变为 0
  2. 减计数器 (CTD - Count Down):

    • 指令:CTD (例:CTD DB1.Counter1)
    • 功能:在计数脉冲输入端 CD 的每个上升沿(从 01),计数器当前值 CV 减少1。当 CV <= 0 时,输出 Q 变为 1。装载输入 LD1 时,CV 被装载为预设值 PVQ 变为 0
  3. 加减计数器 (CTUD - Count Up/Down):

    • 指令:CTUD (例:CTUD DB1.Counter1)
    • 功能:结合了加、减计数器的功能。CU 上升沿加1,CD 上升沿减1。CV >= PVQU 为1,CV <= 0 时 QD 为1。R (1)复位CV和输出,LD (1)装载PVCV

四、 比较指令

  1. 数值比较 (Compare):

    • 指令:等于 (== / CMP==)不等于 (<> / CMP<>)大于 ( > / CMP> )小于 (< / CMP<)大于或等于 (>= / CMP>=)小于或等于 (<= / CMP<=)
    • 功能:比较两个操作数(可以是常数或变量)。如果比较结果为真,则该比较框的输出或触点为 1(允许能流通过)。通常用于设置条件触发点。
  2. 字符串比较 (String Compare):

    • 指令:S_COMP (或类似指令,如 ==S, <>S)
    • 功能:比较两个字符串变量是否相等或不相等(或其他关系,取决于PLC型号和指令集)。

五、 移动指令

  1. 移动 (MOVE):
    • 指令:MOVE 或图示符号(方框内带箭头)
    • 功能:将源操作数(SRC)的数据复制到目标操作数(DST)中。是最基本的数据传输指令,适用于大多数数据类型(位、字节、字、双字、浮点数等,但源和目标类型需兼容)。

六、 数学运算指令

  1. 基本运算 (Basic Arithmetic):

    • 指令:加 (ADD / +)减 (SUB / -)乘 (MUL / *)除 (DIV / /)
    • 功能:对两个操作数执行基本算术运算,并将结果存储到输出中。
  2. 浮点数运算 (Floating-Point Arithmetic):

    • 指令:ADD_R (浮点数加)、SUB_R (浮点数减)、MUL_R (浮点数乘)、DIV_R (浮点数除) - S7-300/400中更常见这种指令形式。
    • 功能:对REAL(浮点数)类型数据进行精确算术运算。

七、 转换指令

  1. 数据类型转换 (Conversion):
    • 指令:整数转浮点数 (例如:DI_R / ITD DTR / I_REAL)浮点数转整数 (例如:ROUND / ROUND, TRUNC / TRUNC)BCD码转整数 (BCD_I)整数转BCD码 (I_BCD) 等。
    • 功能:将一种数据类型的值转换为另一种数据类型。在操作不同类型的数据进行计算或比较时必不可少。

八、 程序控制指令

  1. 跳转 (Jump - JMP):

    • 指令:JMP / 标号(LBL)
    • 功能:JMP指令(或条件跳转如JC)使程序无条件地或当条件满足时,跳转到指定的标签处继续执行。LBL指令标记跳转目标位置。
  2. 子程序调用/返回 (Call/Return):

    • 指令:CALL (调用功能FC/FB)、RET (在子程序中返回)
    • 功能:CALL用于调用编写好的功能块(FB)或功能(FC)子程序。子程序执行完毕后通过RET或自动返回调用点继续执行主程序。是结构化编程的基础。
  3. 主控继电器 (MCR):

    • 指令:MCR( / MCRD / MCRA
    • 功能(较老/特殊用法):用于控制一个程序段(梯级区域)的激活/禁用。当MCR激活时(MCRA打头),位于MCR(MCR)之间的程序正常执行;当MCR失活时,该区域内所有普通线圈输出强制为0(某些特殊指令可能不受影响)。注意: 现代编程中更推荐使用条件逻辑代替MCR。

九、 其它常用指令/功能

  • 上升沿/下降沿检测 (Edge Detection):

    • 指令:P (Positive RLO Edge - |P| 用于触点)、N (Negative RLO Edge - |N| 用于触点)、R_TRIG (上升沿检测块)、F_TRIG (下降沿检测块)
    • 功能:检测输入信号的变化:P/R_TRIG 检测从 01(上升沿),N/F_TRIG 检测从 10(下降沿)。输出仅在检测到边沿的那个扫描周期内为 1极其常用于只触发一次的动作(如按钮按下启动/停止)。
  • 置位/复位位区域 (Set/Reset Bit Area - SET / RESET):

    • 指令:SETRSTRESET
    • 功能:快速将一组连续的位全部置位为 1 (SET) 或复位为 0 (RST / RESET)。
  • 移位寄存器 (Shift / Rotate):

    • 指令:SHL (左移)、SHR (右移)、ROL (循环左移)、ROR (循环右移) 等。
    • 功能:对位序列进行移位操作。常用于数据处理或特定控制逻辑(如步进控制)。
  • 通讯指令:PUT/GET (用于S7通讯),TSEND_C/TRCV_C (用于开放式以太网通讯)等,具体指令取决于通讯协议和目标PLC型号。

重要提示

  1. 指令形式差异: 不同系列的西门子PLC(如S7-300/400 vs S7-1200/1500)和不同的编程软件(STEP 7 Classic vs TIA Portal)中,相同功能的指令名称和表示符号可能有细微差别,但核心逻辑相同。S7-1200/1500在TIA Portal中更多使用指令框和优化的版本(如TP在TIA中是TP指令框,而在S7-300的STEP7中叫SP_PULSE)。
  2. 数据类型匹配: 使用指令时(尤其涉及数学运算、比较、移动等),务必注意源和目标操作数的数据类型必须匹配或兼容
  3. 寻址方式: 理解西门子PLC的寻址方式(绝对地址如I0.0, Q4.1, MW10, DB1.DBD4;符号地址如StartButton)对于正确使用指令至关重要。
  4. 手册是最好的参考: 以上列表是常用指令,但远非全部。在学习和使用过程中,务必查阅对应PLC型号和软件版本的官方指令手册或帮助文档以获取最准确、最全面的信息。

这个列表涵盖了西门子PLC编程中最基本、最常用的指令类别和代表指令。掌握这些是进行有效PLC编程的基础。希望这对你有帮助!

西门子常用PLC指令

西门子常用PLC指令

2023-02-09 14:34:14

西门子系列PLC常用模块接线图

西门子系列PLC常用模块接线图

2023-07-15 10:27:47

三菱plc西门子plc编程什么不同?

首先它们的编程理念不同,三菱plc是日系品牌,编程直观易懂,学习起来会比较轻松,而西门子plc是德国品牌,指令比较抽象,学习难度较大,但指令较少,而三菱的指令较多,所以学习三菱和学习西门子的周期

2021-12-21 15:19:37

西门子基础指令大全

西门子基础指令

2022-09-14 09:59:14

西门子PLC常用的几种加密方式

【导读】分享西门子PLC常用的几种加密方式,看看你喜欢哪一种?

2023-07-13 09:32:36

西门子PLC数据传送指令的功能介绍

西门子PLC数据传送指令用于各个编程元件之间进行数据传送,根据每次传送数据的多少可分为单个数据传送指令和块传送指令。 1、智盛达西门子PLC单个数据传送指令 单个数据传送指令每次传送一个数据,传送

2022-06-28 16:29:14

西门子S7-1200 PLC指令介绍

西门子S7-1200 PLC,作为西门子自动化控制产品中的一款紧凑型控制器,凭借其强大的功能和易用性,在工业控制领域得到了广泛的应用。S7-1200 PLC不仅具备标准的PLC功能,还融入

2024-06-18 14:52:34

西门子plc数据类型_西门子plc通讯方式

西门子PLC的品质非常好,其网络稳定性、开放性深受工控人员的喜爱,而且编程软件分类多,使用方便。在国内工控界具有显著地位。虽然大家对西门子PLC都有一定的了解,但要你说出西门子PLC各种通信方式的特点,相信很多人都不能完整答出。下面就是几种常见的西门子通信方式?

2019-07-25 10:57:17

三菱和西门子PLC区别及优势分析

首先它们的编程理念不同,三菱PLC是日系品牌,编程直观易懂,学习起来会比较轻松,而西门子PLC是德国品牌,指令比较抽象,学习难度较大,但指令较少,而三菱的指令较多,所以学习三菱和学习西门子的周期

2023-10-26 08:07:39

如何使用西门子1200的脉冲指令

西门子1200PLC的脉冲沿指令是一种非常重要的指令,它可以检测输入信号的上升沿或下降沿,并在检测到沿时产生一个脉冲。

2023-05-23 09:20:30

初学PLC是学习西门子还是三菱?

plc是日系品牌,编程直观易懂,学习起来会比较轻松,但指令较多。而西门子plc是德国品牌,指令比较抽象,学习难度较大,但指令较少,所以学习三菱和学习西门子的周期是一样的。

2020-10-01 18:30:00

西门子PLC和三菱PLC哪个好?如何进行数据采集?

西门子PLC和三菱PLC是工业现场中常见的自动化控制设备。西门子PLC是德国品牌,编程简单、指令比较抽象、学习难度较大,但在市场中占据主流;三菱PLC则是日本品牌,指令较多、编程直观易懂、容易

2024-02-06 10:34:56

三菱or西门子品牌PLC的区别

三菱PLC是日系品牌,编程直观易懂,学习起来会比较轻松,但指令较多。而西门子PLC是德国品牌,指令比较抽象,学习难度较大,但指令较少,所以学习三菱和学习西门子的周期是一样的。

2024-02-20 14:09:36

西门子PLC系列的区别 西门子PLC指示灯报警解决方案

西门子是全球知名的自动化解决方案提供商,其PLC(可编程逻辑控制器)系列产品广泛应用于工业控制领域。不同系列的PLC在功能、性能和适用范围上有所区别。本文将详细介绍西门子PLC各个系列的特点和区别,并提供常见指示灯报警的解决方案,帮助读者更好地了解和应用西门子PLC

2023-08-04 10:15:31

西门子plc的型号选择_西门子plc型号说明

本文主要介绍了西门子plc的型号选择及型号说明。首先需要根据工艺要求:确定输入、输出点数,也就是DI、DO、AI、AO。

2019-07-25 10:38:06

西门子PLC控制经典案例

西门子PLC控制经典案例

2023-06-27 14:02:01

#PLC 西门子PLC常用指令.

plc,指令,西门子PLC

2022-10-25 15:07:39

西门子plc模块型号详解

西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是工业自动化领域中非常重要的一种设备,其模块化的设计使得其应用范围非常广泛。本文将详细介绍西门子PLC

2024-06-11 16:18:49

三菱PLC西门子PLC什么区别?

三菱PLC西门子PLC什么区别?分别有什么优点和缺点?该如何选择?学习哪种品牌?

2023-04-27 15:16:53

西门子PLC编程技巧(软件篇)

为大家整理一些西门子PLC的软件编程小窍门

2023-07-10 09:34:02

西门子PLC300的技术特点及应用领域

本文对西门子PLC300的技术特点和应用领域进行了介绍,并且从西门子PLC300在自动化控制领域重要地位开始,对其技术的特点和工作原理等进行了解析,叙述了西门子PLC300的应用。

2020-10-13 15:57:53

西门子PLC通讯知识汇总

西门子 200 plc 使用 MPI 协议与组态王进行通讯时需要哪些设置?

2023-05-06 10:35:45

西门子S7-200SMART系列PLC位相关指令分享

本案例采用子程序的结构编程,并且结合循环指令、定时器指令等编写彩灯循环案例。希望大家能在此文章中汲取西门子200SMART PLC编程相关知识及理念。

2023-04-04 11:28:13

西门子PLC和施耐德PLC区别

西门子PLC系统的设计、建造工作量小,维护方便,容易改造,西门子PLC用存储逻辑代替接线逻辑,大大减少了控制设备外部的接线,使控制系统设计及建造的周期大为缩短,同时维护也变得容易起来。

2024-01-17 10:14:50

西门子PLC对Socket通信的支持

对于自控或电气工程师来说,西门子PLC是每个人都非常熟悉的一款PLC品牌;而对于上位机开发工程师来说,Socket通信或TCP/IP协议也是必须要掌握的一种通信方式。刚好手头一款西门子的200Smart PLC,可以利用它来跟大家聊聊Socket通信的那些事儿。

2022-10-27 10:37:35

常见的西门子编程软件介绍

很多初入门的PLC工程师和不了解西门子产品的工程师不是很清楚西门子编程软件哪些?

2023-10-26 17:01:31

西门子PLC的复位操作

西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是一种广泛应用于工业自动化领域的控制设备。在实际应用过程中,有时需要对PLC进行复位操作,以解决一些程序

2024-08-16 17:46:48

工业智能网关可以采集西门子PLC

工业智能网关可以采集西门子PLC的数据。物通博联提供全面接入西门子PLC的数据采集解决方案,其工业智能网关支持多种网络制式,可采集各种工业设备数据,包括主流PLC品牌如西门子、施耐德、三菱、欧姆龙

2025-05-26 09:14:53

西门子1200PLC之间的ModbusTCP通讯如何实现?

西门子1200PLC通过以太网通讯与其它设备进行数据交互,西门子1200PLC可以和西门子系列plc进行通讯,例如S7-300/S7-1200/S7-1500等,使用ModbusTCP、s7、Profinet等通讯协议

2023-07-30 14:49:41

加载更多