




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
指令介绍1.位操作指令2.比较指令3.格式转换指令4.计数器5.块操作6.逻辑控制7.算术指令8.装载与传送指令9.程序控制指令10.移位指令11.定时器12.字逻辑操作指令13.累加器相关指令11.位操作指令A
AN
O
ON
X
XN
与
与非
或
或非
对于简单的指令,如(#),(P)等,如果在LAD中看不清楚,可以转换成语句表,了解整个执行流程。
取反
输出
中间值
复位
置位
RS/SR触发器
正负边沿检测
保存RLO到BR中
NOTRLO取反
SETRLO置位
CLRRLO复位
FN负边沿检测
FP正边沿检测
2基本置位复位RS/SR触发器转换成语句表以后为R指令和S指令组合3(P)检测前面M1.2的状态,其数值放置在M1.4内,与下一次M1.2相比。(N)检测前面M1.2的状态,其数值放置在M1.3内,与下一次M1.2相比。=输出,赋值指令4NEG检测M1.6的状态。因为Q4.4的状态只是保持一个周期,所以使用一个自锁,观察状态。5系统把某一变量恒定置位或者复位的方法。还有:A“FALSE”R“FALSE”AN“TRUE”S“TRUE”6使用同一个信号分别设置本地与远程操作。紧停信号串联,因为只要一个出现故障,则系统断电。7根据某一时钟脉冲,再作出其它一些时钟脉冲。本例子中,根据M6.1-1秒钟的时钟脉冲,作出一个3秒钟的时钟脉冲来。其中#IF.H1_Imp3Sec为一直小于3的计数变量,其在每次M6.1为1时加1,加到3时,把M6.7置位输出,否则,复位M6.7,这样M6.7每3秒变化一次,也就是一个3秒钟的时钟周期。8
XXN的组合逻辑关系图,
X/X组合在状态不同时输出为1;
X/XN组合在状态相同时输出为1;停止时有灯按照一定的频率闪烁,程序如上图。9SETRLO置位
CLRRLO复位
()前后的操作,先看括号前的指令,再接合括号内指令。得出输出。把括号前的A看成是串连逻辑,括号与括号之间为串连关系。
O前后为并联逻辑,也就是说只要前后有一个为1,结果为1;10?以下程序段对应与什么样的梯形图
A"STAT-a1".ROB_CTRL.Pr_AtomOn
AN"STAT-a1".ROB_FLT.Flt_Seq_Program_5AN"STAT-a1".ROB_FLT.Flt_General_2 ON"EPS-CTRL_1".AT.ROB2_ENOA"GHOST_RUN"A"GHOST-W-COL"ON"PARA-STA".a1_ENABLE="CR-ATa1"11
A(A(OM1000.0ONM100.5)A(ONM1000.1OM1000.2)AM1000.3OM1000.6)AM1000.7=M100.412132.比较指令==ACCU2等于ACCU1
<>ACCU2不等于ACCU1
>ACCU2大于ACCU1
<ACCU2小于ACCU1
>=ACCU2大于等于ACCU1
<=ACCU2小于等于ACCU1如果满足条件,则RLO赋值,
根据不同的参数类型有不同指令:
整型数==I,<>I,>I,<I,>=I,<=I
双整型数==D,<>D,>D,<D,>=D,<=D
浮点数==R,<>R,>R,<R,>=R,<=R
14ACCU1ACCU2L***//执行完此句时,把L的数值***装入累加器1,累加器1内数值◎◎装入累加器2;ACCU1***L###//执行完此句时,把L的数值###装入累加器1,累加器1内***数值装入累加器2;ACCU1ACCU2ACCU2###◎◎
$$***◎◎15整数MW20>MW22,
RLO置位,M2.0输出。
梯形图指令始终是先输入的与后输入的比较。如果大于,则>I指令输出1。16双整型数MD20>MD24,
RLO置位,M2.0输出。
梯形图指令17比较实数18应用193.格式转换指令BTI/BTDBCD到整型数/双整型数
ITB/DTB整型数/双整型数到BCD
ITD整型数到双整型数
DTR双整型数到实数
INVI整型按位取反(16位)
INVD双整型按位取反(32位)
NEGI整型按位取反加1,得到负数
NEGD双整型按位取反加1,得到负数
NEGR实数得到负数
CAD交换累加器1低位内容,0-7<->8-15对换
CAW交换累加器1内容,ABCD换成DCBA。
RND、RND+、RND-、TRNUC圆整、截尾。
20BCD码BCD码的形式将重量信号传输给大屏幕进行显示BCD码(二到十进制编码)把十进制数的每一位分别写成二进制形式的编码,称为二进制编码的十进制数,或BCD(BinaryCodedDecimal)编码。BCD码编码方法很多,通常采用8421编码,这种编码方法最自然简单。其方法使用四位二进制数表示一位十进制数,从左到右每一位对应的权分别是23、22、21、20,即8、4、2、1。例如十进制数975的8421码可以这样得出975(D)=100101110101(BCD)用四位二进制表示一位十进制会多出6种状态,这些多余状态码称为BCD码中的非法码。BCD码与二进制之间的转换不是直接进行的,当需要将BCD码转换成二进制码时,要先将BCD码转换成十进制码,然后再转换成二进制码;当需要将二进制转换成BCD码时,要先将二进制转换成十进制码,然后再转换成BCD码。21
BCD与整数之间的转换,负数的BCD格式与常规不同。22BCD与双整型转换双整型转换与BCD23INVI:整型各位取反NEGI:整型各位取反加1
即得到负数24
得到负数
CAD、CAW指令25圆整到
最近整数MD10="100.5"=>RND=>MD20="+100"MD10="-100.6"=>RND=>MD20="-101"MD10="100.6"=>RND=>MD20="+101"MD10="-100.5"=>RND=>MD20="-100"26截去小数点后数向上圆整MD10="100.5"=>RND+=>MD20="+101"MD10="-100.5"=>RND+=>MD20="-100"274.计数器指令如果S引脚输入1,则计数器值为PV内数值;如果R引脚输入1,则计数器计数器值清零;如果CU引脚从0->1,则计数值加一,到999为止且保持不变;如果CU引脚从1->0,则计数值减一,到零为止且保持不变;2829把数值12赋给c3。加减计数30OPN打开数据块
CDB交换数据块内容
LDBLG装载共享数据块长度
LDBNO装载共享数据块编号
LDILG装载背景数据块长度
LDINO装载背景数据块编号5.块操作指令31打开数据块方式CDB交换数据块内容,例如把背景数据块里面的内容与共享数据块交换,可以访问共享数据块,进行操作处理。访问背景数据块时,可以使用DI,也可以使用DB打开数据块。32把共享数据块的内容送到背景数据块内首先打开共享数据块DBMS;然后从中读出DBD1176(此处访问共享数据块,所有使用DBD***);最后,传送到DID相应地址中去(此处访问背景数据块,所有使用DID***,且不要指定数据块号,因为在调用FB时已经指定了数据块);应用33LDBLG判断数据块大小是否合适OPNDB10
//OpendatablockDB10asshareddatablock.LDBLG
//Loadlengthofshareddatablock(lengthofDB10).LMD10
//Valueforcomparisonifdatablockislongenough.<DJCERRO
//JumptoERROjumplabeliflengthislessthanvalue
inMD10.34LDBLG装载共享数据块长度
LDBNO装载共享数据块编号
LDILG装载背景数据块长度
LDINO装载背景数据块编号35DB_CC_STAT为DB4,保存控制台激活的信号;同时把此信号存放到输出里。3637CDB解决了在一个功能块内调用两个共享数据块的问题;否则使用OPNDB1,×××再使用OPNDB2,×××容易出问题。38状态·····BRCC1CC0OSOVORSTARLOFC首次检测位
*逻辑操作结果*
状态位
或位
溢出位
溢出状态保持位
条件码0
条件码1
二进制结果位状态字表示CPU执行指令时所具有的状态,用户程序可以访问和检测状态字,并可以根据状态字中的某些位决定程序的走向和进程。
396.逻辑控制指令40无条件跳转指令JL:跳转表格JU:无条件跳转41根据JL后面指令和JL指向标签栏之间的跳转个数决定如何跳转。42根据RLO条件跳转指令43BR很多时候用于输出ENO。A I1.0 A I1.2 JCB JOVR //JumpifRLO=1tojumplabelJOVR.CopythecontentsoftheRLObitintotheBRbit.L IW8 //Programscancontinueshereifjumpisnotexecuted.T MW22 JOVR: A I2.1 //ProgramscanresumeshereafterjumptojumplabelJOVR.44根据状态位BR/OV/OS跳转注意此处JO与JOS的区别,JO只是判断前面的一个计算是否溢出,而JOS则判断前面所有计算是否有过溢出。4546根据运算结果跳转4748如何单步运行1,打开online功能块;(语句表格式)2,设置运行模式为test模式;3,插入断点,单步运行。49
可以观察PLC的寄存器数值,查看各个工作区域变化值。5051525354JUO使用:除以0;
使用非法指令;
浮点数比较,与无穷大或无穷小比较。55LOOP跳转567.算术指令(16位整型)+I
ACCU1+ACCU2-I
ACCU2
-ACCU1*I
ACCU1*ACCU2/IACCU2/ACCU1+整型常数(16,32位)(32位双整型)+D
ACCU1+ACCU2-D
ACCU2
-ACCU1*D
ACCU1*ACCU2/D
ACCU2/ACCU1MOD取余数57加法运算各种结果下的状态位指示。58L20+200TMW192+I与+的用法59乘法运算各种结果下的状态位指示。
60如果运算结果超出变量范围,如上例里面结果超出16位的MW184,赋值后出现错误结果,因此在乘法运算时尤其注意应该考虑结果会溢出的情况。此时可以读出状态字,1011指示结果超出32767,应该赋值给32位整型。61除法运算各种结果下的状态位指示。62除法:ACCU2-L/ACCU1-L,然后结果放到ACCU1-L,而余数放到ACCU1-H,影响的状态位如上页所示;
所以在上图中,当结果放置到MW192时,看不到余数,而放到MD196时,可以看到高位的余数数值。63ACCU2/ACCU1,余数放到ACCU1;
L2000
L30
MOD
TMW194
64+R
ACCU1+ACCU2-R
ACCU2
-ACCU1*R
ACCU1*ACCU2/R
ACCU2/ACCU1ABS绝对值SQR平方SQRT平方根EXP指数值LN
对数值下列角度算术运算:SIN
COS
TAN
ASIN
ACOS
ATAN
65开平方必须是浮点数格式才可以。666768以e为底数的指数值,判断OV位是否为1,程序是否有溢出、无穷大等。69应该只是接受弧度数的计算值,也就是说,先把45度转换成。7071符号S指数e=E+bias,bias=-127底数m=2-1~2-23
数值=(1+m)*2(e-bias)72实数:100.25,转换为16进制为:42C88000,转换为2进制为:指数:27+22+20=133底数:2-1+2-4+2-8=0.566406251.56640625*2(133-127)=100.2573L装载LSTW装载状态字到ACCU1LAR1AR2装载地址寄存器2的数值到地址寄存器1中LAR1<D>装载32位整型数到(32-bitPointer)地址寄存器1中LAR1装载ACCU1数值到地址寄存器AR1中LAR2<D>装载32位整型数到(32-bitPointer)地址寄存器2中LAR2装载ACCU1数值到地址寄存器2中T传送TSTW传送ACCU1到状态字TAR1AR2传送地址寄存器1到地址寄存器2TAR1<D>传送地址寄存器1到目标地址(32-bitPointer)TAR2<D>传送地址寄存器2到目标地址(32-bitPointer)TAR1传送地址寄存器1到ACCU1TAR2传送地址寄存器2到ACCU1CAR交换地址寄存器1和地址寄存器28.装载与传送指令7475装载共享数据块的内容,放入背景数据块响应的单元里面去。76读取背景数据块的数值。77FC303LP##SRC_ANY_PTR//SourceDateBlockloadLAR1LD[AR1,P#0.0]//dataTypeandrepeatingfactorTLD0//inANYPointerfileLD[AR1,P#4.0]//DBnumberandidentificationkeyTLD4//inANYPointerfileLW[AR1,P#8.0]//DWnumberTLW8//toANYPointerfileLP##DEST_ANY_PTR//pointerforSourceloadLAR1//andtoARRegisterfileLD[AR1,P#0.0]//dataTypeandrepeatingfactorTLD10//inANYPointerfileLD[AR1,P#4.0]//DBnumberandidentificationkeyTLD14//inANYPointerfileLW[AR1,P#8.0]//DWnumberTLW18//toANYPointerfile789.程序控制指令BE
块结束BEC
块条件结束BEU
块无条件结束CALL
块调用CC
块条件调用UC
块无条件调用CALL
多重背景调用79块条件结束:如果条件不满足,则直接返回调用块。80一般调用中,一个FB占用一个DB,而采用多重背景调用,则可以多个FB占用一个DB,带来的损失是多添加一个控制用FB。81上面为普通调用,下面为多重背景调用。82通过DP/DPCOUPLER传输的数据。直接在两个PLC内组态相应的数据传输区域,然后访问时直接读取或者写入而不必做其它的组态。通过DP/DPCOUPLER传输的数据。直接在两个PLC内组态相应的数据传输区域,然后访问时直接读取或者写入而不必做其它的组态。83DP/DPCOUPLER内组态与数据输入输出区域。84在控制用FB内,把希望控制的器件数据类型设置为FB<N>,此处为FB22,然后就可以在本程序中使用了。85•UC
块无条件调用,但是在调用FB时不能使用背景数据块。•
所以程序内尽量使用CALL指令。86多重背景调用监视8788步骤1,在线打开;2,设置testoperation;3,单击需要监视得块右键;8910.移位指令90移位无符号数9192有符号数移位93负数移位时高位添1,正数直接移位。94移位指令一览表95循环移位9697左移254位,每移位32位相当于没有移动,所以和左移30位类似,又因为是循环移位,所以相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 营运客车经营协议书
- DB36-T1614-2022-公路工程土石路基(落球式)无损检测技术规程-江西省
- 户外自我保护安全指南
- 会计报销标准化操作培训
- 2025年春人教版数学八年级下册 16.1 二次根式
- 2025年注册电气工程师专业基础模拟冲刺试卷:考点归纳与解析
- 2025年小学数学毕业模拟冲刺试卷权威解析全面覆盖知识点
- 狂犬病医学讲解
- 2025年人力资源管理师三级理论知识与应用试卷
- 2025年注册验船师船舶检验专业实务模拟试卷(船体结构与设备检验)-船舶检验实务操作与船舶检验环境
- 钢板桩安全技术交底
- 师德师风-做“四有”好老师
- 衣食住行见证改革开放时代变迁-(修订)
- 弱电智能化施工方案
- TQGCML 3946-2024 柴油发电机组维护保养规范
- DGTJ08-9-2023 建筑抗震设计标准
- 输变电工程质量通病防治手册
- 新生儿X线检查
- 2024年江西省中考生物·地理合卷试卷真题(含答案逐题解析)
- 【暑假衔接】知识点专题13 写话 (讲义+试题) 二升三年级语文(含答案)部编版
- 老年人智能手机使用教程课件
评论
0/150
提交评论