西门子S 指令表
PLC经验分享 西门子S-指令浅谈(一)
PLC经验分享西门子S-指令浅谈(一)PLC经验分享:西门子S-指令浅谈近年来,随着自动化技术的不断发展,PLC已成为自动化控制系统中不可或缺的一部分。
而西门子S-指令作为西门子PLC控制器中最常用的编程指令之一,有着广泛的应用范围和应用价值。
本文将讨论西门子S-指令的基础用法、常见错误及应对方法等方面问题,为读者提供一些实用的知识和经验。
一、基础用法1.1 S-指令介绍S-指令是西门子PLC控制器中最常用的编程指令之一。
它有两种类型:S-R/W和S-FC。
其中S-R/W是读写指令,可以读取和修改PLC内存中的数据。
S-FC是函数指令,可以执行各种运算、逻辑判断和数据处理。
1.2 S-R/W指令用法S-R/W指令的基本格式如下:S 开头符号LD Load指令,表示将后面的地址拷贝到一个寄存器中保存C 地址类型,表示使用绝对地址I 地址的数值存储的操作数,可以是数据、控制字或状态字例如,S7 LD C100 I0 代表将地址100的数据存储在S7中。
又例如,S8 LD C400 FAT代表将地址400中的第三组状态字的值存储在S8中。
1.3 S-FC指令用法S-FC指令的基本格式如下:S 开头符号FC Function Code,即函数码,根据不同的功能会有不同的代码地址目标地址,表示所有输入数据的输入地址输入数据函数需要的输入值,可以是数据或其他信号例如,S28 FC5 C500 W2 C200.0 表示执行函数码为5的函数,并将输入数据设置为W2寄存器的值,直接返回结果。
另一个例子是S29 FC8I200 #R4.9 SA1 表示执行函数码8的函数,其中输入数据分别为I200、R4.9和SA1。
二、常见错误及应对方法2.1 S-R/W指令错误常见的S-R/W指令错误包括地址越界、数据类型错误等。
在遇到这类错误时,程序就会停止工作。
要解决这类错误,可以采用以下方法:1) 检查地址是否正确,防止地址越界;2) 检查指令语句的格式是否正确,尤其注意逗号和空格;3) 确认数据类型是否正确,以避免数据类型不匹配的问题。
西门子S7-300系列PLC基本指令系统
标识符
I IB IW ID
Q QB QW QD
M MB MW MD
PIB PIW PID PQB PQW PQD
最大范围
0~65 535.7 0~65 535 0~65 534 0~65 532
0~65 535.7 0~65 535 0~65 534 0~65 532
0~255.7 0~255 0~254 0~252
西门子s7300系列plc基本指令系统图图419419五种类型定时器总览五种类型定时器总览西门子s7300系列plc基本指令系统图420脉冲定时器指令spulset5tvbcdbiq40s5t2si00i01s5t2sspt5西门子s7300系列plc基本指令系统图421脉冲定时器时序西门子s7300系列plc基本指令系统图422接通延时定时器指令sodtt5tvbcdbiq40s5t2si00i01s5t2ssdt5西门子s7300系列plc基本指令系统图423延时接通定时器时序定时器线圈指令表412定时器线圈指令lad西门子s7300系列plc基本指令系统图424扩展脉冲定时器线圈指令s5t2sset5西门子s7300系列plc基本指令系统432计数器指令s7中有三种计数器加计数器加计数器scuscu减计数器减计数器scdscd可逆计数器可逆计数器scudscud图425累加器1低字的内容计数值127计数器组成在cpu中保留一块存储区作为计数器计数值存储区每个计数器占用两个字节计数器字中的第011位表示计数值二进制格式计数范围是0999
字节单元。位地址参数用一个点与字节地址分开。如:
M 10.1 当操作数长度是字或双字时,标识符后给出的标识参数是字 或双字内的最低字节单元号。图4.1给出了字节、字、双字的相 互关系及表示方法。当使用宽度为字或双字的地址时,应保证 没有生成任何重叠的字节分配,以免造成数据读写错误。
西门子Splc指令系统
用接通延时定时器设计周期和占空比可调的振荡电路。
振荡电路的高、低电平时间分别由两个定时器的PT值确定。
I1.1 M2.7
一个扫描周期
Q0.7
2s
3s
保持型接通延迟定时器及其时序图
关断延迟定时器及其时序图
脉冲定时器及其时序图
例:用脉冲定时器实现一个周期振荡电路
复位定时器指令
两条运输带顺序相连,为避免运送的物料在1号运输带上堆积, 按下起动按钮I0.3,1号带开始运行,8s后2号带自动起动。停机 的顺序与起动的顺序相反,按了停止按钮I0.2后,先停2号带,8s 后停1号带。Q1.1和Q0.6控制两台电动机M1和M2。
加计数器及其时序图
计数器的背景数据块结构
CTD: 参数 CD 的值从 0 变为 1 时,CTD 使计数值减 1。如果参 数 CV (当前计数值)的值等于或小于 0,则计数器输出参数 Q = 1 如果参数 LOAD 的值从 0 变为 1,则参数PV (预设值)的值将作为 新的 CV (当前计数值)装载到计数器。
每个定时器都使用一个存储在数据块中的结构来保存定时器数 据。 在编辑器中放置定时器指令时可分配该数据块。
接通延迟定时器及其时序图
定时器的背景数据块结构
练习
按下瞬时启动按钮I0.0,5秒后电动机启动, 按下瞬时停止按钮I0.1,10秒后电动机停止。
例 用接通延时定时器设计一个周期振荡电路。
I0.3
M2.3
Q0.6
8s
Q1.1
I0.2 8s
参数 IN从0变为1将启动TP、TON 和 TONR,从1变0 将启动 TOF。
ET 为定时开始后经过的时间,或称为已耗时间值(可以不为ET 指定地址),它们的数值类型为32位的Time,单位为ms,最大定 时时间为T#24D_20H_31M_23S_647MS。
西门子802s指令
G55
第二可设定零点偏移值
G55
G56
第三可设定零点偏移值
G56
G57
第四可设定零点偏移值
G57
进给
15
G94*
进给率
F
毫米/分
G95
主轴进给率
F
毫米/转
2
G63
可编程的零点偏移
3
G158
对所有坐标轴编程零点偏移
G158
后面的G158指令取代先前的可编程零点偏移指令;在程序段中仅输入G158指令而后面不跟坐标轴名称时,表示取消当前的可编程零点偏移
G25 S…
主轴转速下限
G26
G26 S…
主轴转速上限
增量设置
14
G90*
绝对尺寸
G90
G91
增量尺寸
G91
单位
13
G70
英制单位输入
G70
G71*
公制单位输入
G71
可设定的零点偏移
9
G53
取消可设定零点偏移(程序段方式有效)
G53
8
G500*
取消可设定零点偏移(模态有效)
G500
G54
第一可设定零点偏移值
G5 Z… X…KZ…IX…
通过起始点和终点之间的中间点位置确定圆弧的方向G5一直有效,直到被G功能组中其它的指令取代为止
G33
加工恒螺距螺纹
G33 Z…K…
圆柱螺纹
G33 Z…X…K…
锥螺纹(锥角小于45度)
G33 Z…X…I…
锥螺纹(锥角大于45度)
G33 X…I…
端面螺纹
G33 Z…K…
SF=…
G3
西门子PLC指令表
关系表达位:有 1 出 1 。两个数只要有一个 1 时,输出为 1 。
用包含在地址IN中的字值写入N个连续字,从地址OUT开始。N的范围是1至255。置ENO = 0的 错误条件:间接地址或操作数超出范围。
在表格(TBL)中搜索与某些标准相符的数据。"表格查找"指令搜索表,从INDX指定的表 格条目开始,寻找与CMD定义的搜索标准相匹配的数据数值(PTN)。命令参数(CMD)被指定 一个1至4的数值,分别代表 =、<>、<, and >。如果找到匹配条目,则INDX指向表格中的匹 配条目。欲查找下一个匹配条目,再次激活"表格查找"指令之前必须在INDX上加1。如果未找 到匹配条目,INDX的数值等于条目计数。一个表格最多可有100个条目,数据项目(搜索区 域)从0排号至最大值99。置ENO = 0的条件:间接地址或操作数超出范围。必须用边缘触发 器指令激活。
TON
有记忆接通延 时定时器
TONR
定
时 器 指
关断延时定时 器
TOF
令
开始间隔时间 捕捉
BITIM
间隔时间捕捉 CITIM
备注
备注
从硬件时钟读取当前时间和日期,并将其载入以地址T起始的8个字节的时间缓冲区。
将当前时间和日期写入用T指定的在8个字节的时间缓冲区开始的硬件时钟。 从PLC读取当前时间、日期及夏时制,并将其载入以T指定之地址起始的19字节时间缓冲 区. 将当前时间、日期及夏时制配置以由T指定的19字节时间缓冲区地址起始写入PLC。
西门子PLC基本指令表及各指令解释
西门⼦PLC基本指令表及各指令解释最受欢迎的⼯控微信平台:技术分享、学习交流、⼯控视频西门⼦PLC基本指令表如下图所⽰名称助记符⽬标元件说明取指令LD I、Q、M、SM、T、C、V、S、L常开接点逻辑运算起始取反指令LDN I、Q、M、SM、T、C、V、S、L常闭接点逻辑运算起始线圈驱动指令=Q、M、SM、T、C、V、S、L驱动线圈的输出与指令A I、Q、M、SM、T、C、V、S、L单个常开接点的串联与⾮指令AN I、Q、M、SM、T、C、V、S、L单个常闭接点的串联或指令O I、Q、M、SM、T、C、V、S、L单个常开接点的并联或⾮指令ON I、Q、M、SM、T、C、V、S、L单个常闭接点的并联置位指令S I、Q、M、SM、T、C、V、S、L使动作保持复位指令R I、Q、M、SM、T、C、V、S、L使保持复位正跳变ED I、Q、M、SM、T、C、V、S、L输⼊信号上升沿产⽣脉冲输出负跳变EU I、Q、M、SM、T、C、V、S、L输⼊信号下降沿产⽣脉冲输出空操作指令NOP⽆使步序作空操作⼀、标准触点LD、A、O、LDN、AN、ONLD,取指令。
表⽰⼀个与输⼊母线相连的常开接点指令,即常开接点逻辑运算起始。
LDN,取反指令。
表⽰⼀个与输⼊母线相连的常闭接点指令,即常闭接点逻辑运算起始。
A,与指令。
⽤于单个常开接点的串联。
AN,与⾮指令。
⽤于单个常闭接点的串联。
O,或指令。
⽤于单个常开接点的并联。
ON,或⾮指令。
⽤于单个常闭接点的并联。
⼆、正、负跳变ED、EUED,在检测到⼀个正跳变(从OFF到ON)之后,让能流接通⼀个扫描周期。
EU,在检测到⼀个负跳变(从ON到OFF)之后,让能流接通⼀个扫描周期。
三、输出==,在执⾏输出指令时,映像寄存器中的指定参数位被接通。
四、置位与复位指令S、RS,执⾏置位(置1)指令时,从bit或OUT指定的地址参数开始的N个点都被置位。
R,执⾏复位(置0)指令时,从bit或OUT指定的地址参数开始的N个点都被复位。
西门子sPLC基本指令(比较和表等)
用计数指令实现下述控制过程,其动作时序如 图所示:
当I0.2=ON从1#灯亮到3#灯亮,每灯亮3S。当3#灯亮 完达到1S后又从1#灯亮到3#灯亮如此循环下去。
三电机相隔5s启动,各运行10s停止,循环往复,绘出 三电机一周期运行如图所示
利用计数器与比较指令,设计一个24 小时可设定 定时时间的住宅控制器的控制程序(以30分钟为 一个设定单位),要求实现如下的控制:
AR>= IN1, IN2
OR>= IN1, IN2
指令应用举例
计数器C0的当前值大于或等于1000时,输出线 圈Q0.0通电。
实现如图所示的时序图。
用一个按钮开关(I0.0)控制三个灯(Q0.1,Q0.2, Q0.3),按钮按一下则1#灯亮,再按三下2#灯亮,1# 灯灭。再按三下3#灯亮,2#灯灭。再按三下是3#灯 灭。再按一下又重复前面的工作。时序图如图7所示以 此反复。
从左母线向右以触点开始,以线圈或指令盒结束, 构成一个梯级,触点不能出现在线圈右边 。在一 个梯级中,左右母线之间是一个完整的“电路”, 不允许短路、开路,也不允许“能流”反向流动。
• 梯形图编程的基本规则
在梯形图中与“能流”有关的指令盒或线圈不 能直接接在左母线上,通过触点接。与“能流” 无关的指令盒或线圈直接接在左母线上。如 LBL、SCR、SCRE等。
西门子sPLC基本指令(比较和表 等)
引例
交通灯控中,时间如果不到,则怎么办? 利用多个时间继电器进行不同时间段的控制 如果就用一个时间继电器怎么控制时段呢?
先进行时间继电器工作原理的分析:
I0.0 PT
T37当前值
最大值32767
西门子S 系列PLC顺控继电器指令
顺控继电器指令应用注意事项:
状态器编号不能重复使用,不能把同一个S位用于不同程序中。 状态转移过程中,在一个扫描周期内两种状态同时接通,因此为了避免不能同时接通的一对输出同 时接通,除了在PLC外部设置互锁外,在相应的程序上也应设置互锁。 定时器线圈与输出线圈一样,也可在不同状态间对同一定时器软元件编程,但是,在相邻状态下对 同一定时器编程时,则状态转移时定时器线圈不断开,当前值不能复位,因此需要注意在相邻状态不 要对同一定时器编程。 在中断程序与子程序内不能采用SCR指令。 SCR指令内不禁止使用跳转指令,但由于动作复杂,建议不要使用。 SCR段之间不能使用JMP和LBL指令。 SCR段中不能使用END指令
SCR结束指令SCRE和下一条装载SCR指令LSCR之间的逻辑操作则不依赖于S堆栈的值。
SCR传输指令(SCRT):将程序控制权从一个激活的SCR段传递到另一个SCR段。执
行SCRT指令可以使当前激活的程序段的S位复位,同时使下一个将要执行的程序段的S位
置位。在SCRT指令执行时,复位当前激活的程序段的S位并不会影响S堆栈,SCR段会一
2020/7/12
电气控制与PLC
14
大、小球分类选择控制步进梯形图
2020/7/12
电气控制与PLC
15
大、小球分类选择控制步进梯形图
2020/7/12
电气控制与PLC
16
并行分支状态转移图
并行分支:多个分支可以同时执行的分支流程。
西门子plc指令一览表
指令
描述
STL
字节至整数 BTI
双整数至整数 DTI
字符串至整数 STI
自然对数运算 LN
自然指数运算 EXP
PID运算
PID
指令
描述
STL
整数相加
+I
双整数相加
+D
整数相乘得双 整数
MUL
整
数
运
整数相乘
*I
算
指
令
双整数相乘
*D
字节递增
INCB
字递增
INCW
双字递增
INCD
指令
描述 开放中断 禁止中断 中断有条件返回
STL ENI DISI RETI
中
断
连接中断
ATCH
SWAP
字节传送立即 读
BIR
指令
描述
STL
FOR…NEXT循环 FOR
程 序
跳转
JMP
控
制
装载SCR
LSCR
指
令
SBR有条件返回 CRET
看门狗复位
WDR
诊断LED
DLED
指令
描述
STL
字节左移
SLB
双字左移
SLD
字节右移
SRB
移
双字右移
SRD
移
位
指
字节循环左移 RLB
令
双字循环左移 RLD
字节循环右移 RRB
西门子S操作说明
西门子802s/c系统操作篇NC 键盘区(左侧):机床控制面板区域(右侧):屏幕划分符号说明屏幕中的缩略符分别具有如下含义:表 1-1 符号说明(1)当前操作区域(2)程序状态(3)运行方式图中元素缩略符含义MA 加工PA 参数PR 程序DI 通讯DG 诊断STOP 程序停止RESET 程序复位JOG 点动方式MDA 手动输入,自动执行AUTO 自动方式表 1-1 符号说明(续)图中元素缩略符含义SKP 程序段跳跃跳步的程序段在其段号之前用一斜线示,这些程序段在程序运行时跳过不执行。
DRY 空运行轴在运行时将执行设定数据“空运行进给率”中规定的进给值。
ROV 快速修调修调开关对于快速进给也生效。
(4)状态显示SBL单段运行此功能生效时零件程序按如下方式逐段运行:每个程序段逐段解码,在程序段结束时有一暂停,但在没有空运行进给的螺纹程序段时为一例外,在此只有螺纹程序段运行结束后才会产生一暂停。
SBL 功能只有处于程序复位状态时才可以选择。
M1程序停止此功能生效时程序运行到有 M01 指令的程序段时停止运行。
此时屏幕上显示“停止 M00/M01 有效”。
PRT程序测试(无指令给驱动)1_1000INC步进增量系统处于 JOG 运行方式时不显示程序控制而是显示所选择的步进增量。
开机和回参考点 2操作步骤第一步,接通 CNC 和机床电源。
系统引导以后进入“加工”操作区 JOG 运行方式。
出现“回参考点”窗口。
3 参数设定在 CNC 进行工作之前,必须通过参数的输入和修改对机床、刀具等进行调整:输入刀具参数及刀具补偿参数输入/修改零点偏置输入设定数据输入刀具参数及刀具补偿参数—“参数”操作区功能刀具参数包括刀具几何参数、磨损量参数和刀具型号参数。
不同类型的刀具均有一个确定的参数数量。
每个刀具有一个刀具号(T 号)。
参见章节“刀具和刀具补偿”。
参数设定软键选择接下去渐低的或渐高的刀沿号选择接下去渐低的或渐高的刀具号计算刀具长度补偿值用“扩展键”扩展软键功能所有的刀具补偿值复位为零新刀补建立到当前刀具上,并自动分配下一个刀沿号(D1-D9)。
西门子指令一览表
1 位逻辑指令1、1 -||- 常开接点(地址)1、2 -|/|- 常闭接点(地址)1、3 XOR 位异或1、4 -|NOT|- 信号流反向1、5 -( ) 输出线圈1、6 -(#)- 中间输出1、7 -(R) 线圈复位1、8 -(S) 线圈置位1、9 RS 复位置位触发器1、10 RS 置位复位触发器1、11 -(N)- RLO下降沿检测1、12 -(P)- PLO上升沿检测1、13 -(SAVE) 将RLO存入BR存储器1、14 MEG 地址下降沿检测1、15 POS 地址上升沿检测2 比较指令2、1 CMP?I 整数比较2、2 CMP?D 双整数比较2、3 CMP?R 实数比较3 转换指令3、1 BCD_IBCD码转换为整数3、2 I_BCD 整数转换为BCD码3、3 I_DINT 整数转换为双整数3、4 BCD_DIBCD码转换为双整数3、5 DI_BCD 双整数转换为BCD码3、6 DI_REAL 双整数转换为浮点数3、7 INV_I 整数得二进制反码3、8 INV_DI 双整数得二进制反码3、9 NEG_I 整数得二进制补码3、10 NEG_DI 双整数得二进制补码3、11 NEG_R 浮点数求反3、12 ROUND 舍入为双整数3、13 TRUNC 舍去小数取整为双整数3、14 CEIL 上取整3、15 FLOOR 下取整4 计数器指令4、1 S_CUD 加减计数4、2 S_CU 加计数器4、3 S_CD 减计数器4、4 -(SC) 计数器置初值4、5 -(CU) 加计数器线圈4、6 -(CD) 减计数器线圈5 数据块指令5、1 -(OPN) 打开数据块:DB或DI6 逻辑控制指令6、1 -(JMP) 无条件跳转6、2 -(JMP) 条件跳转6、3 -(JMPN) 若非则跳转6、4 LABEL 标号7 整数算术运算指令7、1 ADD_I 整数加法7、2 SUB_I 整数减法7、3 MUL_I 整数乘法7、4 DIV_I 整数除法7、5 ADD_DI 双整数加法7、6 SUB_DI 双整数减法7、7 MUL_DI 双整数乘法7、8 DIV_DI 双整数除法7、9 MOD_DI 回送余数得双整数8 浮点算术运算指令8、1 基础指令8、1、1 ADD_R 实数加法8、1、2 SUB_R 实数减法8、1、3 MUL_R 实数乘法8、1、4 DIV_R 实数除法8、1、5 ABS 浮点数绝对值运算8、2 扩展指令8、2、1 SQR 浮点数平方8、2、2 SQRT 浮点数平方根8、2、3 EXP 浮点数指数运算8、2、4 LN 浮点数自然对数运算8、2、5 SIN 浮点数正弦运算8、4、6 COS 浮点数余弦运算8、2、7 TAN 浮点数正切运算8、2、8 ASIN 浮点数反正弦运算8、2、9 ACOS 浮点数反余弦运算8、2、10ATAN 浮点数反正切运算9 赋值指令9、1 MOVE 赋值10 程序控制指令10、1 -(Call) 从线圈调用FC/SFC(无参数) 10、2 CALL_FB 从方块调用FB10、3 CALL_FC 从方块调用FC10、4 CALL_SFB 从方块调用SFB10、5 CALL_SFC 从方块调用SFC10、7 -(MCR>) 主控继电器断开10、8 -(MCRA) 主控继电器启动10、9 -(MCRD) 主控继电器停止10、10 -(RET) 返回11 移位与循环指令11、1 移位指令11、1、1 SHR_I 整数右移11、1、2 SHR_DI 双整数右移11、1、3 SHL_W 字左移11、1、4 SHR_W 字右移11、1、5 SHL_DW 双字左移11、1、6 SHR_DW 双字右移11、2 循环指令11、2、1 ROL_DW 双字左循环11、2、2 ROR_DW 双字右循环12 状态位指令12、1 OV -||- 溢出异常位12、2 OS -||- 存储溢出异常位12、3 UO -||- 无序异常位12、4 BR -||- 异常位二进制结果12、5 ==0-||- 结果位等于"0"12、6 <>0-||- 结果位不等于"0"12、7 >0-||- 结果位大于"0"12、8 <0-||- 结果位小于"0"12、9 >=0-||- 结果位大于等于"0"12、10 <=0-||- 结果位小于等于"0"13 定时器指令13、1 S_PULSE 脉冲S5定时器13、2 S_PEXT 扩展脉冲S5定时器13、3 S_ODT 接通延时S5定时器13、4 S_ODTS 保持型接通延时S5定时器13、5 S_OFFDT 断电延时S5定时器13、6 -(SP) 脉冲定时器线圈13、7 -(SE) 扩展脉冲定时器线圈13、8 -(SD) 接通延时定时器线圈13、9 -(SS) 保持型接通延时定时器线圈13、10 -(SF) 断开延时定时器线圈14 字逻辑指令14、1 WAND_W 字与字相"与"14、2 WOR_W 字与字相"或"14、3 WAND_DW 双字与双字相"与"14、4 WOR_DW 双字与双字相"或"14、5 WXOR_W 字与字相"异或"14、6 WXOR_DW 双字与双字相"异或。
数控系统中西门子和发那科(加工中心)指令对照表1
西门子和发那科(加工中心)指令对照表中文含义西门子发那科备注快速定位G00 X_ Y_ Z_ G00 X_ Y_ Z_ ; 一样直线插补G01 X_ Y_ Z_ F_ G01 X_ Y_ Z_ F_ 一样圆弧插补半径编程G02/G03 X_ Y_ CR=_ F_ G02/G03 X_ Y_ R_ F_半径符号不同圆弧插补圆心编程G02/G03 X_ Y_I_ J_ F_ G02/G03 X_ Y_I_ J_ F_ 一样进给暂停G04 F (秒)G04 S(转速) (S为转速,只有主轴受控机床才可是使用)G04 X (秒) 或G04 P(毫秒) 进给暂停工作平面G17* X-Y G18 Z-X G19 Y-Z G17* X-Y G18 Z-X G19 Y-Z 一样绝对/相对G90*绝对G91相对G90*绝对G91相对一样进给G94*分进给/G95转进给G94*分进给/G95转进给一样输入单位G71*公制/G70英制G21*公制/G20英制不一样刀具半径补偿G41左刀补G42右刀补G40取消刀补G41/G42 G90/G91 G01 X_ Y_ D_ F_ (建立)G40 G90/G91 G01 X_ Y_ F_ (取消)G41左刀补G42右刀补G40取消刀补G41/G42 G90/G91 G01 X_ Y_ D_ F_ (建立)G40 G90/G91 G01 X_ Y_ F_ (取消)一样刀具长度补偿T_D_ + G5_例如G00 Z_ T_D_;G5_ + G43/G44 + H_ G49取消补偿例如G00 Z_ G43/4 H_;不一样坐标偏移TRANS X_ Y_ Z_ (绝对)ATRANS X_ Y_ Z_ (附加于前一个指令)TRANS 单独占一行,取消坐标偏移G52 X_ Y_ Z_ (绝对)G52 X0 Y0 Z0 取消偏移可编程偏移坐标旋转ROT RPL= __ (RPL后跟旋转度数)AROT RPL=__(附加前一个指令)ROT单独占一行,取消坐标旋转G68 X_ Y_ R_ (X_ Y_为旋转中心,R为旋转度数,逆时针为正,反之为负)G69 取消坐标旋转可编程旋转比例缩放SCALE X_Y_ (比1大放大,比1小缩小)ASCALE X_Y_(附加前一个指令)SCALE单独占一行,取消比例缩放不做说明可编程比例镜像MIRROR X0 Y0 (关于X轴对称写Y0,反之亦然,X、Y后面只要跟一个数字即可,没意义)AMIRROR X0 Y0 (附加前一个指令)MIRROR 单独占一行,取消镜像不做说明可编程镜像极坐标AP极角RP极径G17 G16 X_ Y_ (X为极径Y为极角) G15 取消极坐标孔循环CYCLE 81、82、83、84、HOLSE等G73、G81-G89(G98为初始高度,G99为安全高度,R安全高度数值)均为孔系加工宏指令变量符号为R1-R249,R0为空变量运算(+、-、*、/、COS、SIN、TAN、SQRT)=、>、>=、<、<=、>< (等于、大于、大于等于、小于、小于等于、不等于)IF R1>=42.1 GOTOB AAA运算公式要加小括号“()”,比如COS(45)R1=6AAA: G01 X=R1 Y0;运算顺序:先三角函数,后乘除,再加减;先括号里面,后括号外面。
-西门子S-系列PLC应用指令
2019/8/3
电气控制与PLC
2
高速计数器指令
用于对S7-200扫描速率无法控制的高速事件进行计数,最高计数频率取决于CPU的类 型。高速计数器指令包括定义高速计数器指令(HDEF)和高速计数指令(HSC)。 DEF指令:为指定的高速计数器HSCx选择操作模式,决定高速计数器的时钟、方向、 启动和复位功能,每一个高速计数器使用一条定义高速计数器指令。HDEF指令ENO=0 的错误条件为:输入点冲突(代码0003)、中断中的非法指令(0004)和HSC重复定义 (代码000A)。 HSC指令:在HSC特殊存储器位状态的基础上,配置和控制高速计数器,参数N指定 高速计数器的标号。高速计数器可以配置为12种模式中的任意一种(见表7-2)。每一个
LAD
HDEF EN ENO HSC MODE
HSC EN ENO
N
FBD
HDEF EN ENO HSC MODE
HSC EN ENO
N
STL HDEF HSC, MODE
HSC N
操作数
HSC: 字节常数 MODE:字节常数 N:字常数
2019/8/3
电气控制与PLC
3
2019/8/3
高速计数器指令
高速计数器都有时钟、方向控制、复位、启动的特定输入。对于双相计数器,两个时钟 都可以运行在最高频率。在正交模式下,可以选择一倍速(1x)或4倍速(4x)计数频率。 所有计数器都可以运行在最高频率下而互不影响。HSC指令ENO=0的错误条件为:在 HDEF指令之前执行HSC指令(代码0001)和同时执行HSC/PLS(代码0005)。
电气控制对应的控制字节其他控制位的功能如表所示,其控制功能包括使能或者禁止 计数器、控制计数方向(模式0、1和2)或者对所有其它模式定义初始化计数方向、初始 值与预置值的更新控制等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西门子S7-200 PLC指令学习(1)
S7-200系列的基本逻辑指令
S7-200系列的基本逻辑指令与FX系列和CPM1A系列基本逻辑指令大体相似,编程和梯形图表达方式也相差不多,这里列表表示S7-200系列的基本逻辑指令(见表)。
表 S7-200系列的基本逻辑指令
S7-200系列PLC的比较指令
在SIEMENS S7-200的编程软件STEP-7中,有专门的比较指令:IN1与IN2比较,比较的数据类型可以是B、I(W)、D、R,即字节、字整数、双字整数和实数;还可以有其他的比较式:>、<、≥、≤、<>等等。
当满足比较等式,则该触点闭合。
与LMODSOFT指令对照:在LMODSOFT中,没有直接的数的比较指令,但SUB指令可以通过其执行减法功能后的三个输出端的状态实现整数的比较功能。
若与LMODSOFT 中的SUB指令对应,则在STEP-7中应有三个比较指令: >、=、< 来分别对应SUB 指令的三个输出;若还要对应≥、≤、或<>,则根据SUB指令三个输出端的不同组合,均可找到对应的比较指令。
比如:①(30007)>(40030)
②(30007)=(40030)
③(30007)<(40030)
①+②(30007)≥
②+③(30007)≤(40030)
①+③(30007)<>(40030)
S7-200系列PLC的定时器指令
类型、编号及分辨率
TON——接通延时
TONR——有记忆接通延时
TOF——断开延时
3种分辨率(时基):1ms、10ms、100ms——分别对应不同的定时器号
定时器6个要素:
指令格式(时基、编号等)预置值——PT
使能——IN 复位——3种定时器不同
当前值——Txxx 定时器状态(位)——可由触点显示
定时值=时基×预置值PT。
由于定时器的计时间隔与程序的扫描周期并不同步,定时器可能在其时基(1ms、10ms、100ms)内任何时间启动,所以,未避免计时时间丢失,一般要求设置PT预置值必须大于最小需要的时间间隔。
例如:使用10ms时基定时器实现140ms延时(时间间隔),则PT应设置为15(10ms×15=150ms)。
2)功能
(1)接通延时定时器TON——一般用于单一时间间隔的定时
指令格式:见图,编号与分辨率及定时器类型有关。
(见教材P221:Fig8-3-3a)
使能:——IN:I2.0 =“1”
当前值——T33,当在线(Online)时,此处显示当前值
预置值——PT=3,即定时时间=10ms×3=30ms
复位——IN:I2.0 = “0”
定时器状态(位)——“1”或“0”
与MODICON PLC的定时器指令对照:
区别:对MODICON PLC,当10001=“0” ,10002=“1”时,定时器当前值保持;当计时时间到,即(40040)= 30时,只要10002=“1”,定时器也是保持
对S7-200 PLC,只要I0.0=“1”,即计时,当T33当前值=3时,定时器继续计时,直至I0.0=“0”,定时器复位(相当于10002=“0” )
(1)断开延时定时器TOF——一般用于故障时间后的时间延时
指令格式:见图,编号与分辨率及定时器类型有关。
注意:定时器状态(位)=“1”(置位)及当前值复0与使能.I0.0=“1”同步;计时开始与使能I0.0从“1”→“0”(断开)同步,且当计时时间到而使能仍=“0”时,当前值保持。
(2)有记忆接通延时定时器TONR——一般用于累计许多时间间隔(指令功能及时序图见教材P222:Fig8-3-3c)
指令格式:见图,编号与分辨率及定时器类型有关。
注意:定时器状态(位)=“1”(置位)及当前值复0与使能.I0.0=“1”同步;计时开始与使能I0.0从“1”→“0”(断开)同步,且当计时时间到而使能仍=“0”时,当前值保持。
(3) 有记忆接通延时定时器TONR——一般用于累计许多时间间隔
S7-200系列PLC的计数器指令
1)类型及编号
CTU——增计数
CTD——减计数 C0~C255
CTUD——增减计数
计数器6个要素:指令格式(类型、编号等)预置值——PV
使能——CU、CD 复位——R、LD
当前值——Cxxx 计数器状态(位)——与定时器类似
2)功能、时序图及应用示例
此例为一个增减计数器的应用示例,其与MODICON PLC计数器指令的比较,同学可自己进行,并注意到,计数器指令的使能均是采样上升沿(“0” →“1” )。
S7-200系列PLC其它常用指令
1.脉冲产生指令EU/ED的应用
EU指令在EU指令前的逻辑运算结果由OFF到ON时就产生一个宽度为一个扫描周期的脉冲,驱动其后面的输出线圈。
2 .逻辑堆栈的操作
LPS为进栈操作,LRD为读栈操作,LPP为出栈操作。
S7-200系列PLC中有一个9层堆栈,用于处理逻辑运算结果,称为逻辑堆栈。
3 .NOT、NOP和MEND指令
NOT、NOP及MEND指令的形式及功能如表4-19所示。
为空操作,对程序没有实质影响。
MEND为无条件结束指令,在编程结束时一定要写上该指令,否则会出现编译错误。
调试程序时,在程序的适当位置插入MEND指令可以实现程序的分段调试。
4.比较指令
比较指令是将两个操作数按规定的条件作比较,条件成立时,触点就闭合。
比较运算符有:=、>=、<=、>、<和<>。
(1)字节比较字节比较用于比较两个字节型整数值INl和IN2的大小,字节比较是无符号的。
比较式可以是LDB、AB或OB后直接加比较运算符构成。
如:LDB=、AB<>、OB>=等。
整数INl和IN2的寻址范围:VB、IB、QB、MB、SB、SMB、LB、*VD、*AC、*LD和常数。
指令格式例如: LDB= VBl0,VBl2
(2)整数比较整数比较用于比较两个一字长整数值INl和IN2的大小,整数比较是有符号的(整数范围为16#8000和16#7FFF之间)。
比较式可以是LDW、AW或OW后直接加比较运算符构成。
如:LDW=、AW<>。
OW>=等。
整数INl和IN2的寻址范围:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常数。
指令格式例如: LDW= VWl0,VWl2
(3)双字整数比较双字整数比较用于比较两个双字长整数值INl和IN2的大小,双字整数比较是有符号的(双字整数范围为16#80000000和16#7FFFFFFF之间)。
比较式可以是LDD、AD或OD后直接加比较运算符构成。
如:LDD=、AD<>、OD>=等。
双字整数INl和IN2的寻址范围:VD、ID、QD、MD、SD、SMD、LD、HC、AC、*VD、*AC、*LD 和常数。
指令格式例如: LDD= VDl0,VDl2
(4)实数比较实数比较用于比较两个双字长实数值INl和IN2的大小,实数比较是有符号的(负实数范围为-1.175495E-38和-3.402823E+38,正实数范围为+1.175495E-38和+3.402823E+38)。
比较式可以是LDR、AR或OR后直接加比较运算符构成。
如:LDR=、AR<>、OR>=等。
实数INl和IN2的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD和常数。
指令格式例如: LDR= VDl0,VDl2
S7-200PLC功能指令概述
般的逻辑控制系统用软继电器、定时器和计数器及基本指令就可以实现。
利用功能指令可以开发出更复杂的控制系统,以致构成网络控制系统。
这些功能指令实际上是厂商为满足各种客户的特殊需要而开发的通用子程序。
功能指令的丰富程度及其合用的方便程度是衡量PLC 性能的一个重要指标。
S7-200的功能指令很丰富,大致包括这几方面:算术与逻辑运算、传送、移位与循环移位、程序流控制、数据表处理、PID指令、数据格式变换、高速处理、通信以及实时时钟等。
功能指令的助记符与汇编语言相似,略具计算机知识的人学习起来也不会有太大困难。
但S7-200系列PLC功能指令毕竟太多,一般读者不必准确记忆其详尽用法,需要时可可查阅
产品手册。
S7-200PLC四则运算指令介绍
四则运算指令如表4-20所示。
表4-20 四则运算指令。