西门子plc常用指令有哪些?
PLC在实现各种数量的I/O控制的同时,还具备输出模拟电压和数字脉冲的能力,可以满足您在过程控制中任何层次上的需求。
好的,西门子PLC(特别是S7-300/400/1200/1500系列)常用的指令主要分为几大类。下面列出一些最常见的、在梯形图(LAD)和功能块图(FBD)中广泛使用的中文指令及其含义:
一、 基本逻辑操作指令
-
常开触点 (Normally Open Contact -
||):- 指令:
常开触点或图示符号|| - 功能:当连接到此触点的位状态为 1(“真”、“ON”)时,该触点“闭合”,允许能流通过。等同于“如果(A=真)则接通”。
- 指令:
-
常闭触点 (Normally Closed Contact -
|/|):- 指令:
常闭触点或图示符号|/| - 功能:当连接到此触点的位状态为 0(“假”、“OFF”)时,该触点“闭合”,允许能流通过。等同于“如果(A=假)则接通”或“非A则接通”。
- 指令:
-
输出线圈 (Output Coil -
( )):- 指令:
线圈或图示符号( ) - 功能:当能流到达该线圈时,它将连接的位设置为 1。如果该线圈没有能流,位被复位为 0(除非有其他地方在写入该位)。是梯级末尾最常见的执行指令。
- 指令:
-
置位线圈 (Set Coil -
(S)):- 指令:
置位线圈或图示符号(S) - 功能:当能流到达时(通常只需要一个脉冲/扫描周期),将连接的位置位为 1,并保持为 1,直到被复位指令清零。常用在需要自锁或状态保持的场合。
- 指令:
-
复位线圈 (Reset Coil -
(R)):- 指令:
复位线圈或图示符号(R) - 功能:当能流到达时(通常只需要一个脉冲/扫描周期),将连接的位复位为 0,并保持为 0,直到被置位指令置位。常用于清除状态、停止设备等。
- 指令:
-
取反操作 (Negate -
NOT/-|NOT|-):- 指令:
取反或图示符号-|NOT|- - 功能:将输入的逻辑状态取反。若输入为 1,输出为 0;若输入为 0,输出为 1。可以用在触点或线圈的路径上。
- 指令:
二、 定时器指令 (主要针对S7-300/400的IEC定时器,S7-1200/1500指令形式类似但块不同)
-
接通延时定时器 (TON - Time ON Delay):
- 指令:
TON(例:TON DB1.Timer1) - 功能:当使能端
IN为 1 时开始计时。当前时间值ET从0开始递增。当ET>= 预设时间PT时,输出Q变为 1。IN变为 0 时立即复位ET和Q。
- 指令:
-
断开延时定时器 (TOF - Time OFF Delay):
- 指令:
TOF(例:TOF DB1.Timer1) - 功能:当
IN为 1 时,输出Q立即变为 1,ET保持为0。当IN从 1 变 0 时开始计时。ET>=PT时,Q变 0。计时期间IN变 1 则立即复位ET且Q保持为 1。
- 指令:
-
保持型接通延时定时器 (TP - Pulse Timer):
- 指令:
TP(例:TP DB1.Timer1) - 功能:当
IN从 0 变 1(上升沿)时开始计时,输出Q立即变为 1。持续计时直到ET>=PT,此时Q变 0。计时期间IN变为 0 也不会停止计时或复位ET。只有计时完成或执行复位指令才会使Q变 0。
- 指令:
三、 计数器指令 (主要针对S7-300/400的IEC计数器,S7-1200/1500指令形式类似但块不同)
-
加计数器 (CTU - Count Up):
- 指令:
CTU(例:CTU DB1.Counter1) - 功能:在计数脉冲输入端
CU的每个上升沿(从 0 到 1),计数器当前值CV增加1。当CV>= 预设值PV时,输出Q变为 1。复位输入R为 1 时,CV被复位为 0,Q变为 0。
- 指令:
-
减计数器 (CTD - Count Down):
- 指令:
CTD(例:CTD DB1.Counter1) - 功能:在计数脉冲输入端
CD的每个上升沿(从 0 到 1),计数器当前值CV减少1。当CV<= 0 时,输出Q变为 1。装载输入LD为 1 时,CV被装载为预设值PV,Q变为 0。
- 指令:
-
加减计数器 (CTUD - Count Up/Down):
- 指令:
CTUD(例:CTUD DB1.Counter1) - 功能:结合了加、减计数器的功能。
CU上升沿加1,CD上升沿减1。CV>=PV时QU为1,CV<= 0 时QD为1。R(1)复位CV和输出,LD(1)装载PV到CV。
- 指令:
四、 比较指令
-
数值比较 (Compare):
- 指令:
等于 (== / CMP==)、不等于 (<> / CMP<>)、大于 ( > / CMP> )、小于 (< / CMP<)、大于或等于 (>= / CMP>=)、小于或等于 (<= / CMP<=) - 功能:比较两个操作数(可以是常数或变量)。如果比较结果为真,则该比较框的输出或触点为 1(允许能流通过)。通常用于设置条件触发点。
- 指令:
-
字符串比较 (String Compare):
- 指令:
S_COMP(或类似指令,如==S,<>S) - 功能:比较两个字符串变量是否相等或不相等(或其他关系,取决于PLC型号和指令集)。
- 指令:
五、 移动指令
- 移动 (MOVE):
- 指令:
MOVE或图示符号(方框内带箭头) - 功能:将源操作数(
SRC)的数据复制到目标操作数(DST)中。是最基本的数据传输指令,适用于大多数数据类型(位、字节、字、双字、浮点数等,但源和目标类型需兼容)。
- 指令:
六、 数学运算指令
-
基本运算 (Basic Arithmetic):
- 指令:
加 (ADD / +)、减 (SUB / -)、乘 (MUL / *)、除 (DIV / /)。 - 功能:对两个操作数执行基本算术运算,并将结果存储到输出中。
- 指令:
-
浮点数运算 (Floating-Point Arithmetic):
- 指令:
ADD_R(浮点数加)、SUB_R(浮点数减)、MUL_R(浮点数乘)、DIV_R(浮点数除) - S7-300/400中更常见这种指令形式。 - 功能:对REAL(浮点数)类型数据进行精确算术运算。
- 指令:
七、 转换指令
- 数据类型转换 (Conversion):
- 指令:
整数转浮点数 (例如:DI_R / ITD DTR / I_REAL)、浮点数转整数 (例如:ROUND / ROUND, TRUNC / TRUNC)、BCD码转整数 (BCD_I)、整数转BCD码 (I_BCD)等。 - 功能:将一种数据类型的值转换为另一种数据类型。在操作不同类型的数据进行计算或比较时必不可少。
- 指令:
八、 程序控制指令
-
跳转 (Jump - JMP):
- 指令:
JMP/ 标号(LBL) - 功能:
JMP指令(或条件跳转如JC)使程序无条件地或当条件满足时,跳转到指定的标签处继续执行。LBL指令标记跳转目标位置。
- 指令:
-
子程序调用/返回 (Call/Return):
- 指令:
CALL(调用功能FC/FB)、RET(在子程序中返回) - 功能:
CALL用于调用编写好的功能块(FB)或功能(FC)子程序。子程序执行完毕后通过RET或自动返回调用点继续执行主程序。是结构化编程的基础。
- 指令:
-
主控继电器 (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检测从 0 变 1(上升沿),N/F_TRIG检测从 1 变 0(下降沿)。输出仅在检测到边沿的那个扫描周期内为 1。极其常用于只触发一次的动作(如按钮按下启动/停止)。
- 指令:
-
置位/复位位区域 (Set/Reset Bit Area - SET / RESET):
- 指令:
SET、RST或RESET - 功能:快速将一组连续的位全部置位为 1 (
SET) 或复位为 0 (RST/RESET)。
- 指令:
-
移位寄存器 (Shift / Rotate):
- 指令:
SHL(左移)、SHR(右移)、ROL(循环左移)、ROR(循环右移) 等。 - 功能:对位序列进行移位操作。常用于数据处理或特定控制逻辑(如步进控制)。
- 指令:
-
通讯指令: 如
PUT/GET(用于S7通讯),TSEND_C/TRCV_C(用于开放式以太网通讯)等,具体指令取决于通讯协议和目标PLC型号。
重要提示
- 指令形式差异: 不同系列的西门子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)。 - 数据类型匹配: 使用指令时(尤其涉及数学运算、比较、移动等),务必注意源和目标操作数的数据类型必须匹配或兼容。
- 寻址方式: 理解西门子PLC的寻址方式(绝对地址如
I0.0,Q4.1,MW10,DB1.DBD4;符号地址如StartButton)对于正确使用指令至关重要。 - 手册是最好的参考: 以上列表是常用指令,但远非全部。在学习和使用过程中,务必查阅对应PLC型号和软件版本的官方指令手册或帮助文档以获取最准确、最全面的信息。
这个列表涵盖了西门子PLC编程中最基本、最常用的指令类别和代表指令。掌握这些是进行有效PLC编程的基础。希望这对你有帮助!
西门子S7-1200 PLC的指令介绍
西门子S7-1200 PLC,作为西门子自动化控制产品中的一款紧凑型控制器,凭借其强大的功能和易用性,在工业控制领域得到了广泛的应用。S7-12
2024-06-18 14:52:34
西门子S7系列PLC以太网通讯处理器
1970-01-01 08:00:00 至 1970-01-01 08:00:00
西门子plc数据类型_西门子plc通讯方式
西门子PLC的品质非常好,其网络稳定性、开放性深受工控人员的喜爱,而且编程软件分类多,使用方便。在国内工控界具有显著地位。虽然大家对西门子
2019-07-25 10:57:17
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 芯片的工作原理是什么?
- ssd是什么意思
- 什么是蓝牙?它的主要作用是什么?
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- EDA是什么?有什么作用?
- 中科院研发成功2nm光刻机
- 苹果手机哪几个支持无线充电的?
- dtmb信号覆盖城市查询
- 怎样挑选路由器?
- 华为芯片为什么受制于美国?
- 元宇宙概念股龙头一览
- type-c四根线接法图解
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- amoled屏幕和oled区别
- BLDC电机技术分析
- 复位电路的原理及作用
- dsp是什么意思?有什么作用?
- iphone13promax电池容量是多少毫安
- 苹果无线充电器怎么使用?
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 传感器常见类型有哪些?
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机