第6章特殊功能指令

合集下载

第6章 S7-300PLC指令系统及编程(1)

第6章 S7-300PLC指令系统及编程(1)
1、“与嵌套”指令
“与嵌套”指令用于电路块串联的编程。其指令格式如下: A( ——与嵌套开始指令 )——与嵌套结束指令
图6-6
2、“或嵌套”指令 “或嵌套”指令用于电路块并联的编程。其指令格式如下: O( ——或嵌套开始指令 )——或嵌套结束指令
图6-7
3、说明:先与后或(即电路元件先串后并)可不用嵌套指令中的 括号,如图6-8所示。
3.二分频器程序编写
图6-18 抢答器程序
二分频器是一种具有一个输入端和一个输出端的功能单元,输出频
率为输入频率的一半。实现二分频的方法有很多种,下面介绍其中
两种:
(1)利用“与”“或”指令实现二分频程序。 设输入为I1.0,输出为Q4.0,根据二分频要求I1.0接通2次,Q4.0只接
通1次。其波形如图6-19所示。
②复位/置位的LAD指令只能放在逻辑串的最右端,不能放在逻辑 串的中间,它们也属于输出指令。
③置位指令具有保持功能,即使指定位地址的“位”一直为1,直 到复位指令把它清零。
图6-11说明了复位/置位指令的用法。
图6-11
图6-11的程序中,只要I1.0一闭合,不论I1.0闭合后又断开,Q4.0 一直保持通电状态(1态,直到I2.0闭合且不论闭合后又断开,Q4.0 才断电(0态)。其功能同电动机的起停保控制电路类似。
验灯程序的编写很简单。在
PLC中用1个输入点如I3.7,其外 部连接一个常开按钮。由于I3.7 的内部触点是无数的,控制指示 灯输出点的梯形图上均并联1个 I3.7常开触点,当它闭合时指示 灯均亮,以查验灯的好坏。
2.利用触发器编写第一信号记录程序
图6-17 验灯程序
在工业现场一旦有故障发生可能随之带来多个故障,如果能找出

第6章 8086指令系统与汇编基础

第6章 8086指令系统与汇编基础

第13页
2013年8月1日星期四
第6章
8086指令系统与汇编基础 3.段地址寄存器
有 CS、DS、ES、SS 四 个 , 分 别 表 示 程 序 码 ( code segment register)、 数 据 ( data segment register)、附加(extra segment register)、堆栈 (stack segment register)段地址用。在 DOS 系统 中,每一个段地址容量只有 64KBytes。 当数据段地址不够用时,就可以用附加数据段地址 来补足,例如想要将一个段地址的某些内容复制到 另一段地址中,就可以同时指定 DS、ES 分别表示 这两个段地址。
第17页 2013年8月1日星期四
第6章
6.2.4
8086指令系统与汇编基础
寄存器间接寻址(Register Indirect Addressing) 寄存器间接寻址方式中,操作数存放在存储器 中,但操作数的有效地址EA在基址寄存器BX、BP或 变址寄存器SI、DI中。操作数的物理地址为: 物理地址=16(段寄存器)+(寄存器)
执行结果为:(AX)=8060H 指令中也可指定段跨越前缀以取得其它段中的 数据。如:MOV AX,ES:[BX]指令,则从附加段中 取得数据。
操作码
DS 3000 0 BX + 200 0
代 码

30000 32000 AH AL
60 80
3200 0
数 据

图 6- 2- 2
例 6 - 5 的执行过程
第3页 2013年8月1日星期四
第6章
8086指令系统与汇编基础
计算机只能识别二进制代码,因此计算机能执行 的指令必须以二进制代码的形式表示,这种以二进制 代码形式表示的指令称为指令的机器码(Machine Code)。 2.汇编指令格式 一条指令一般包含操作码和操作数两部分。

FANUC机器人程序员A 讲义6(第六章)

FANUC机器人程序员A 讲义6(第六章)
Value=ON 发出信号 Value=OFF 关闭信号 DO[i]=PULSE ,(Width) Width=脉冲宽度(0.1 to 25.5秒)
机器人信号 (RI/RO)指令,模拟信号(AI/AO)指令,群组信号 (GI/GO)指令的用法和数字信号指令类似。
33
程序案例2
三、指令
IO指令的应用实例——搬运工件
30
程序案例1 USER0
三、指令
1: PR[11]=LPOS 2: PR[12]=PR[11] 3: PR[12,1]=PR[11,1]+100 4: PR[13]=PR[12] 5: PR[13,2]=PR[12,2]+100 6: PR[14]=PR[11]
执行该行程序时,将 机思器考人:当如前以位PR置[1保3存] 至为依PR据[1,1]如中何,算并且 以PR直[1角4(]?或关节)坐标 形式显示出来。
PR[i,j]=PR[i]的第j个要素(坐标值)
LPOS(直角)
PR[2,1]=X PR[2,4]=W PR[2,2]=Y PR[2,5]=P PR[2,3]=Z PR[2,6]=R
JPOS(关节)
PR[2,1]=J1 PR[2,4]= J4 PR[2,2]=J2 PR[2,5]= J5 PR[2,3]=J3 PR[2,6]= J6
运动指令,Robot 根据以上计算得到 的位置走出轨迹。
[ END ]
31
思考题
三、指令
请用坐标计算的方式编程,让机器人画出一个 半径为100mm的圆(参考坐标为:UF0,UT1)。
r=100mm
32
三、指令
2、I/O(信号)指令 I/O I/O指令用来改变信号输出状态和接收输入信号。

第6章功能指令

第6章功能指令

名词:脉冲执行方式
功能指令有两种执行方式:连续执行方式 和脉冲执行方式。(1分)脉冲执行方式表 示只有在输入信号由OFF变为ON的瞬间执 行功能指令,在下面的循环扫描过程中, 即使输入信号保持ON的状态也不执行。 (1分)在指令语句中,若在功能指令的后 面加“(P)”,就表示此指令将以脉冲方 式执行。
14.设D10为F00FH,则当X10接通, SUM指令执行后,D20值为( C ) A.0 B.10 C.8 D.16
X 10
SUM
D10
D 20
15.设D10为F00FH,D20为FF00H。则当 X10接通,WXOR指令执行后,D30为 ( B ) A.F00FH B.0F0FH C.FF00H D.F0F0H
X0
NEG ( P)
D0
4.一个存储容量为500步的PLC,可推知 其存储容量为 1000 字节。 14.一个存储容量为1000步的PLC,可推 知其存储容量字节数为(D ) A.250 B.500 C.1000 D.2000
11.下面必须成对使用的指令是( D ) A.MRD、MPP B.LD、OUT C.RET、RST D.FOR、NEXT 17.表示禁止中断的功能指令是(B ) A.EI B.DI C.IRET D.NEXT
4.PLC语句中的操作数一般由源操作数和 目的操作数 组成。 18.表示一个程序步的指令是( D ) A.MC B.MCR C.ADD D.END
结合下图说说功能指令的主要要素
X0
FNC 45 ( D ) MEAN ( P )
[ S ]
[ D]
n
D0
D10
K3
FNC45:指令的功能号;(1分)MEAN:指令 的助记符;(1分)(P):指令的执行方式, 为脉冲执行方式;(1分)(D):指令的数据 长度为32位,默认为16位;(1分)[S]:为源 操作数,有D0,D1和D2;[D]:为目操作数, 有D10;n:操作数个数,这里为3。

第6章 应用指令

第6章 应用指令

算术运算指令:举例
yi 1 yi y yi ( x xi ) xi 1 xi
式中yi和xi是测量值所在区 段的低端分界点的值。输入 值x在D0中,输出值y在D1中。 设x0、x1、x2、…、x9在 D10~D19中,y0、y1、 y2、…、y9在D20~D29中。
第6章 FX系列PLC的应用指令 LD SUB SUB SUB MUL M8000 D0 D10Z D21Z D20Z D11Z D10Z D2 D3
用移位寄存器写入、读出指令实现先入库的产品先出库
LDP X20
//在入库按钮X20的上升沿
MOV K4X0 D2ቤተ መጻሕፍቲ ባይዱ6
品的编号
//来自X0~X17的产品编号送到D256
SFWR D256 D257 K100 //D257作为指针,D258 ~356存放99件产
LDP
X21
//先进入产品的编号送至D357
常数10送Z
LD
M8000
Z D9Z
MOV K10 P1 LD< D0
如果D0<D9Z, 比较触点接通, 否则断开
DEC
CJ
Z
P1 返回标号 P1处,继 续比较
第6章 FX系列PLC的应用指令
6.2.2 子程序调用与子程序返回指令
子程序应放在FEND (主程序结束)指令 之后,同一指针只能 出现一次,CJ指令中 用过的指针不能再用, 不同位置的CALL指 令可以调用同一指针 的子程序。在子程序 中调用子程序称为嵌 套调用,最多可以嵌 套5级。
LDP
X1
//在X1的上升沿 //变址寄存器Z清零
D10
RST
Z
MOV K50 FOR K8

西门子2000 第6章功能指令

西门子2000 第6章功能指令

6.3 局部变量表与子程序
6.3.1 局部变量表 1.局部变量与全局变量 程序中的每个程序组织单元POU(Program Organizational Unit)均有由64 字节L存储器组成的局部变量表。局部变量只在它被创建的POU中有效,全 局符号在各POU中均有效。局部变量有以下优点: (1) 尽量使用局部变量的子程序易于移植到别的项目。 (2) 如果使用临时变量(TEMP),同一片物理存储器可以在不同的程序 中重复使用。 2.局部变量的类型 TEMP (临时变量):暂时保存在局部数据区中的变量。主程序或中断程序 的局部变量表只有TEMP变量。 IN (输入变量):由调用它的POU提供的传入子程序的输入参数。 OUT(输出变量):子程序返回给调用它的POU的输出参数。 IN_OUT(输入_输出变量):其初始值由调用它的POU提供,并用同一变量将 子程序的执行结果返回给调用它的POU。
移位指令-双字左移和双字右移
SLD和SRD,双字左移和双字右移。指令盒与字节移 位比较,只有名称变为SHL_DW和SHR_DW,其他部分 完全相同。使能输入有效时,把双字型输入数据IN 左移或右移N位后,再将结果输出到OUT所指的双字 存储单元。最大实际可移位次数为32。 指令格式: SLD OUT, N (双字左移) SRD OUT, N (双字右移) 例: SLD MD0, 2 SRD LD0, 3
块传送
指令可用来进行一次多个(最多255个)数据的传送,数据块 类型可以是字节块、字块、双字块。 三条指令中N的寻址范围都是:VB、IB、QB、MB、SB、SMB、 LB、AC、*VD、*AC、*LD和常数。 使ENO断开的出错条件:SM4.3(运行时间);0006(间接寻 址);0091(数超界)。

6-FX系列PLC功能指令及应用[1]

6-FX系列PLC功能指令及应用[1]

第6章第9页
EXIT
第6章 FX2N PLC功能指令及应用
6.1.3 位元件和字元件
当一个16bit的数据传送到K1M0、K2M0或K3M0(使用 MOV指令)时,只传送相应的低位(bit)数据。较高位 的数据不传送。32bit数据传送时也一样。
例如
若X1为ON时用连续传送的方式传送M0~M7组成的8位二 进制数到D0数据寄存器。传送前的M0~M15组成的16bit 数如下:
6.1.1 功能指令的表现形式
[S]:(SOURSE)源操作数。若可使用变址功能时,表达为 [S·]。有时源操作数不止一个,可用[S1·]、[S2·]表示。
[D]:(DESTINATION)目标操作数。若可使用变址功 能时,表达为[D·]。目标不止一个时用[D1·]、[D2·] 表示。
m、n:其他操作数。常用来表示数的进制(十进制、 十六进制等)或者作为源操作数(或操作地址)和目标操 作数(或操作地址)的补充注释。需要注释的项目多时也 可以采用m1、m2等方式。
第6章第15页
EXIT
第6章 FX2N PLC功能指令及应用 6.2 程序流程控制
指令: SRET FNC02 操作元件:无 程序步数:Leabharlann 步子程 序返梯形图
功能: 与CALL指令对应的子程序结束返
回CALL指令后的程序顺序执行。
第6章第16页
EXIT
第6章 FX2N PLC功能指令及应用
6.2 程序流程控制
梯形图
功能: 若扫描周期超过
100ms,PLC将停止 运行。此时,应将 WDT指令插入到合 适的位置刷新警戒 时钟,使程序执行 到END。
第6章第21页
EXIT
第6章 FX2N PLC功能指令及应用

第六章S7200功能指令及使用

第六章S7200功能指令及使用

1.四则运算指令—除法指令
除法指令对两个输入端(IN1,IN2)指定的有符号 数进行相除操作,结果送到输出端(OUT)。 除法指令可分为整数、双整数、实数除法指令和整 数完全除法指令。 前三种指令各自对应的操作数分别为有符号整数、 有符号双整数、实数。整数完全除法指令,把输入端
指定的两个16位整数相除,产生一个32位结果,并送
语句表:INCB OUT 功能:当EN=1时,将单字节长的无符号字节型输入 数IN加1,结果为单字节长无符号整数存入OUT 。
1.四则运算指令—加1指令
②字加1指令 梯形图:
语句表:INCW OUT 功能:当EN=1时,将单字长的有符号输入数IN加1, 结果为单数学功能指令—自然指数指令
梯形图:
语句表: EXP IN, OUT 功能:当EN=1时,将32位的实数IN取e为底的指数, 结果为32的实数存入OUT 。
2.数学功能指令—自然对数指令
梯形图:
语句表: LN IN, OUT 功能:当EN=1时,将双字长的实数IN取自然对数, 结果为32的实数存入OUT 。
1.四则运算指令—减法指令
减法指令对两个输入端(IN1,IN2)指定的有符号 数进行相减操作,结果送到输出端(OUT)。 减法指令可分为整数、双整数、实数减法指令,它 们各自对应的操作数分别是有符号整数、有符号双整 数、实数。
在LAD中,执行结果为IN1-IN2→OUT;
在STL中,通常将操作数IN1与OUT共用一个地址单 元,因而执行结果为OUT-IN2→OUT。
1.四则运算指令—减法指令
③实数减法指令 梯形图:
语句表:-R IN2, OUT 功能:当EN=1时,将两个32位实数IN1和IN2相减, 结果为32位实数存入OUT 。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

6.2.2 中断指令
中断指令有4条,包括开、关中断指令,中断 连接、分离指令。指令格式如下表所示。
LAD
STL
ENI
操作数及 数据类型

DISI 无
ATCH INT,EVNT
INT:常量 0-127 EVNT:常量,CPU
224: 0-23; 27-33 INT/EVNT数据类型
:字节
DTCH EVNT
6.2.3 中断程序
1. 中断程序的概念
中断程序是为处理中断事件而事先编好的 程序。中断程序不是由程序调用,而是在 中断事件发生时由操作系统调用。在中断 程序中不能改写其他程序使用的存储器, 最好使用局部变量。中断程序应实现特定 的任务,应“越短越好”,中断程序由中 断程序号开始,以无条件返回指令 (CRETI)结束。在中断程序中禁止使用 DISI、ENI、HDEF、LSCR和END指令
EVNT:常量, CPU 224: 023; 27-33
数据类型:字节
1. 开、关中断指令
开中断(ENI)指令全局性允许所有中断事 件。关中断(DISI)指令全局性禁止所有中 断事件,中断事件的每次出现均被排队等 候,直至使用全局开中断指令重新启用中 断。
PLC转换到RUN(运行)模式时,中断开 始时被禁用,可以通过执行开中断指令, 允许所有中断事件。执行关中断指令会禁 止处理中断,但是现用中断事件将继续排 队等候。
2. 中断优先级和排对等候
优先级是指多个中断事件同时发出中断请求时, CPU对中断事件响应的优先次序。S7-200规定的 中断优先由高到低依次是:通信中断、I/O中断和 定时中断。每类中断中不同的中断事件又有不同 的优先权,如表6-2所示。
一个程序中总共可有128个中断。S7-200在中断各 自的优先级组内按照先来先服务的原则为中断提 供服务。在任何时刻,只能执行一个中断程序。 一旦一个中断程序开始执行,则一直执行至完成。 不能被另一个中断程序打断,即使是更高优先级 的中断程序。中断程序执行中,新的中断请求按 优先级排队等候。中断队列能保存的中断个数有 限,若超出,则会产生溢出。中断队列的最多中 断个数和溢出标志位如表6-3所示
程序编辑器从先前的POU显示更改为新中断程序, 在程序编辑器的底部会出现一个新标记,代表新 的中断程序。
6.2.4 程序举例
【例6-1】编写由I0.1的上升沿产生的中断事 件的初始化程序。
分析:查表6-2可知,I0.1上升沿产生的中断 事件号为2。所以在主程序中用ATCH指令 将事件号2和中断程序0连接起来,并全局 开中断。程序如下图所示
2. 中断连接、分离指令
中断连接指令(ATCH)指令将中断事件 (EVNT)与中断程序号码(INT)相连接, 并启用中断事件。
分离中断(DTCH)指令取消某中断事件 (EVNT)与所有中断程序之间的连接,并 禁用该中断事件。
注意:一个中断事件只能连接一个中断程 序,但多个中断事件可以调用一个中断程 序。
第6章 特殊功能指令
6.1 立即类指令 6.2 中断指令 6.3 高速计数器与高速脉冲输出 6.4 PID控制 6.5 时钟指令
6.1 立即类指令
立即读 \立即输出
立即读指令用于输入I接点,立即读指令读取实际输 入点的状态时,并不更新该输入点对应的输入映像 寄存器的值。如:当实际输入点(位)是1时,其对 应的立即触点立即接通;当实际输入点(位)是0时, 其对应的立即触点立即断开。
(1)通信中断
在自由口通信模式下,用户可通过编程来 设置波特率、奇偶校验和通信协议等参数。 用户通过编程控制通讯端口的事件为通信 中断。
(2)I/O中断
I/O中断包括外部输入上升/下降沿中断、 高速计数器中断和高速脉冲输出中断。S7200用输入(I0.0、I0.1、I0.2或I0.3)上升 /下降沿产生中断。这些输入点用于捕获 在发生时必须立即处理的事件。高速计数 器中断指对高速计数器运行时产生的事件 实时响应,包括当前值等于预设值时产生 的中断,计数方向的改变时产生的中断或 计数器外部复位产生的中断。脉冲输出中 断是指预定数目脉冲输出完成而产生的中 断。
立即输出指令用于输出Q线圈,执行指令时,立即将 新值写入实际输出点和对应的输出映像寄存器。
立即类指令与非立即类指令不同,非立即指令仅将 新值读或写入输入/输出映像寄存器。
表6-1 立即类 中断源的类型
中断源即发出中断请求的事件,又叫中 断事件。为了便于识别,系统给每个中断源 都分配一个编号,称为中断事件号。S7-200 系列可编程控制器最多有34个中断源,分为 三大类:通信中断、输入/输出中断和时基中 断。
主程序
LD SM0.1
//首次扫描时,
ATCH INT_0 2 //将INT_0 和EVNT2连接
ENI
//并全局启用中断
LD SM5.0 //如果检测到I/O错误,
DTCH 2
//禁用用于I0.1的上升沿中断
(本网络为选项)
LD M5.0
// 当M5.0=1时
DISI
//禁用所有的中断
【例6-2】编程完成采样工作,要求每10ms采样一 次。
2. 建立中断程序的方法
方法一:从“编辑”菜单→选择插入(Insert)→ 中断(Interrupt)。
方法二:从指令树,用鼠标右键单击“程序块” 图标并从弹出菜单→选择插入(Insert)→ 中断 (Interrupt)。
方法三:从“程序编辑器”窗口,从弹出菜单用 鼠标右键单击插入(Insert)→ 中断(Interrupt)。
(3)时基中断
定时中断用于支持一个周期性的活动。周期时间 从1毫秒至255毫秒,时基是1毫秒。使用定时中 断0,必须在SMB34中写入周期时间;使用定时 中断1,必须在SMB35中写入周期时间。
定时中断可以用来对模拟量输入进行采样或定期 执行PID回路。定时器T32/T96中断指允许对定时 间间隔产生中断。这类中断只能用时基为1ms的 定时器T32/T96构成。当中断被启用后,当前值 等于预置值时,在S7-200执行的正常1毫秒定时 器更新的过程中,执行连接的中断程序。
相关文档
最新文档