版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、宜宾学院YIBIN UNIVERSITYPLC课程论文题 目: 可编程控制器的功能指令 专 业: 电子信息科学与技术 院 系: 物理与电子工程学院 学生姓名: 学生学号: 年级、班: 指导教师: 2015 年 6 月 12 日摘要小型PLC由于运算速度较低及存贮容量较小,使其功能受到限制,但为了使PLC在其基本逻辑功能、顺序步进功能之外具有更进一步的特殊功能,以尽可能多地满足PLC用户的特殊要求,从80年代开始,PLC制造商就逐步地在小型PLC中加入一些功能指令(Functional Instruction)或称为应用指令(Applied Instruction)。这些功能指令实际上就是一个个
2、功能不同的子程序。随着芯片技术的进步,小型PLC的运算速度、存贮量不断增加,其指令的功能也越来越强。许多工程技术人员以前不敢想象的功能,通过功能指令就能容易实现,从而大大提高了PLC的实用价值。关键词:PLC ;功能指令目录引言2可编程控制器的功能指令31.1 功能指令通则31.1.1 功能指令的表现形式31.1.2 数据长度及指令的执行形式41.1.3 位元件41.1.4 变址寄存器(V、Z)51.2 程序流控制指令(FNC00FNC09)61.2.1 条件跳转指令61.2.4 主程序结束指令61.3 传送和比较指令(FNC10FNC19)71.3.1 比较指令71.3.3 传送指令81.4
3、 四则运算及逻辑运算指令(FNC20FNC2981.4.1 BIN加法指令81.4.2 BIN减法指令91.4.3 BIN乘法指令91.4.4 BIN除法指令101.5 循环移位指令121.5.3 移位(左/右)指令121.6 数据处理指令(FNC40FNC49)131.6.1 区间复位指令13结论15参考文献15引言可编程逻辑控制器(Programmable Logic Controller,简称PLC),一种具有微处理机的数字电子设备,用于自动化控制的数字逻辑控制器,可以将控制指令随时加载内存内储存与执行。可编程控制器由内部CPU,指令及资料内存、输入输出单元、电源模组、数字模拟等单元所模
4、组化组合成。广泛应用于目前的工业控制领域。在可编程逻辑控制器出现之前,一般要使用成百上千的继电器以及计数器才能组成具有相同功能的自动化系统,而现在,经过编程的简单的可编程逻辑控制器模块基本上已经代替了这些大型装置。可编程逻辑控制器的系统程序一般在出厂前已经初始化完毕,用户可以根据自己的需要自行编辑相应的用户程序来满足不同的自动化生产要求。PLC是由取代继电器控制开始产生、发展起来的,且早期的PLC绝大部分用于顺序控制,于是许多人习惯于把PLC看作是继电器、定时器、计数器的集合,把PLC的作用局限于等同继电接触器控制系统、顺控器等。其实,PLC就是工业控制计算机,PLC系统属于计算机控制系统的一
5、个分支,大型PLC系统就是当代较先进的计算机控制系统。可编程控制器的功能指令1.1 功能指令通则1.1.1 功能指令的表现形式表1-1 功能指令的表现形式表MEAN FNC45(P) (16)Mean操作元件:K、HKnxKnyKnmKnsTCDV、ZN=164步数:MEAN、MEAN(P) 7步MEAN:指令助记符 FNC45:功能号(P):脉冲执行功能 (16):只能做16bit操作 (16/32):16或32bit操作功能指令按功能号(FNC00FNC99)编排,每条功能指令都有一助记符。某些功能指令只需指定功能号即可,但许多功能指令在指定功能号的同时还必须指定操作数。这是取平均值的指令
6、。图中S·指取值首元件。n指定取值个数。D·指定计算结果存放地址。S:(SOURSE)源操作数。若可使用变址功能时,表达为S·。有时源操作数不止一个,可用S1·、S2·表示。D:(DESTINATION)目标操作数。若可使用变址功能时,表达为D·。目标不止一个时用D1·D2·表示。m、n其它操作数。常常用来表示数制(十进制、十六进制等)或制作源和目标的补充注释。需注释的项目多时也可采用m1、m2等方式。功能指令的功能号助记符占一个程序步,操作数占2或4个程序步,取决于指令是16bit还是32bit的。注意,某些功能
7、指令在整个程序中只能出现一次,即使用跳转指令使其分别处于两个不可能同时执行的程序中也不允许,但可利用变址寄存器多次改变其操作数。1.1.2 数据长度及指令的执行形式116bit和32bit功能指令可处理16bit的数据和32bit数据。功能指令中附有符号(D)表示处理32bit数据。如(D)MOV、FNC(D)12、FNC12(D)。处理32bit数据时,用元件号相邻的两元件组成元件对。元件对的首元件号用奇数偶数均可。但为避免错误,元件对的首元件建议统一用偶数编号。32bit计数器(C200C255)不能用作16bit指令的操作数。2连续执行/脉冲执行助记符后附的(P)符号表示脉冲执行。(P)
8、和(D)可同时使用,如(D)MOV(P)。上图所示功能指令仅在X0由OFF变为ON时执行。在不需要每个扫描周期都执行时,用脉冲执行方式可缩短程序处理周期。上图程序是连续执行方式的例子。当X1为ON状态时上述指令在每个扫描周期都被重复执行。某些指令,例如XCH、INC、DEC等,用连续执行方式时要特别留意,这些指令用“!”号标示。注意:当X0和X1为OFF状态时,上述两指令不执行。目标元件的内容不变化,除非另行指定。1.1.3 位元件1位元件和字元件只处理ON/OFF状态的元件,例如X、Y、M和S,称为位元件,其它处理数字数据的元件,例如T、C和D,称为字元件。位元件组合起来也可以处理数字数据。
9、位元件组合由Kn加首元件号来表示。2位元件的组合位元件每4bit为一组合单元,KnM0中的n是组数,16bit数操作时为K1K4,32bit数操作时为K1K8。当一个16bit的数据传送到K1M0、K2M0或K3M0时,只传送相应的低bit数据,较高bit的数据不传送。32bit数据传送时也一样。在进行16bit数操作时,参与操作的位元件由K1、K2、K3来指定,高位(不足部分)均作0,这就意味着只能处理正数(符号位为0)。在处理32bit数操作时也一样。由X4X13组成的2位BCD码数转换成二进制码送到D0。被组合的位元件号可以是任意的,但为避免混乱建议采用以0结尾的元件(如X0、X10、X
10、20···等)。注:字的指定与字串,以D1开始的数据寄存器串即D1、D2、D3···,用位元件组合的字作为字串处理,其指定格式如下:K1X0 K1X4 K1X10 K1X14···,K2Y10 K2Y20 K2Y30···K3M0 K3M12 K3M24 K3M36···,K4S16 K4S32 K4S48···即元件每4个为一组连续编号。如果“K2Y0”用在32bit操作时,高16bit作“0”处理,要获得32bi
11、t数据需要用“K8Y0”。1.1.4 变址寄存器(V、Z)变址寄存器在传送比较指令中用来修改操作对象的元件号,其操作方式与普通数据寄存器一样。表示操作对象: D·对定时器及计数器指其当前值寄存器K、HKnxKnyKnmKnsTCDV、Z上图中表示从KnY到V、Z都可作为功能指令的目标元件。在D·中的点(·)表示可以加入变址寄存器,对32bit指令,V作高16bit,Z为低16bit。32bit指令中用到变址寄存器时只需指定Z,这时Z就代表了V和Z。如上图所示,因为K10送到V,K20送到Z,所以(V)、(Z)的内容分别为10、20。(D5V)+(D15Z) (D4
12、0Z)就是 (D15)+(D35) (D60) V和Z可使编程简化。(D1,D0)+(D3,D2) (D25,D24)某些应用会用到各种标志,这些标志在附录中详细列表说明。例如:M8020:零标志(Z) M8021:借位标志(Br) M8022:进位标志(Cy) M8029:执行完毕标志(F)如果功能指令的语法或操作元件号有错误(出错将在附录中加以解释),出错标志M8067(E)将被置1.功能指令每次执行时都会影响标志的状态(SET或RESET),而功能指令不执行或出错时标志状态不受影响。许多功能指令都会影响标志的状态,编程时要多加小心。 1.2 程序流控制指令(FNC00FNC09)1.2.
13、1 条件跳转指令表1-2 条件跳转指令功能表CJ FNC00(P) (16)条件跳转操作元件:指针P0P63 (允许变址修改) P63即END,无需再标号。程序步数:CJ和CJ(P)······步标号···步和CJ(P)指令用于跳过顺序程序中的某一部分,这样可以减少扫描时间,并使“双线圈操作”成为可能。1.2.4 主程序结束指令表1-3 主程序结束指令表FEND FNC06主程序结束操作元件:无程序步数:1步FEND指令表示主程序结束,执行到FEND指令时机器进行输出处理、输入处理、警戒时钟刷新,完成以后
14、返回到第0步。例1 设计一PLC控制程序控制3盏灯A、B、C,使之具有手动和自动功能,自动时,每5秒起动一盏。1.3 传送和比较指令(FNC10FNC19)1.3.1 比较指令表1-4 比较指令表CMP FNC10(P)(16/32)比较操作元件:K、HKnxknYknmknsTCDV、ZXYMS程序步数:CMP和CMP(P)···2步 (DCMP和(D)CMP(P)···1步下面这段程序是将源S1·和S2·的数据比较,结果送到目标D·中。这里源数据作代数比较(如102且所有的源数据均作为二进制数值处理。
15、程序中M0、M1、M2根据比较的结果动作。K100C20的当前值时,M0接通;K100=C20的当前值时,M1接通;K100C20的当前值时,M2接通。当执行条件X0=OFF时,CMP指令不执行,M0、M1、M2的状态保持不变。注:(1) 一条CMP指令用到三个操作数,如果只指定了一或二个操作数,就会出错(出错码:6503),防碍PC运行。(2) 指定的操作元件超出上表范围时出错(出错码:6705).例如X、D、T或C被指定作目标时就会出错。(3) 如果被指定为操作数(元件)的元件号超出允许范围时出错(出错码:6706).用变址修改参数时可能会出现这种情况。(4) 由于上述指定操作数出错时,请
16、参阅附录。1.3.3 传送指令表1-5 传送指令表 MOV FNC12(P) (16/32)传送操作元件:K、HKnxKnyKnmKnsTCDV、Z程序步数:MOV和MOV(P)5步 (D)MOV和(D)MOV(P)9步源数据被传送到指定目标。如X0=OFF指令不执行,数据保持不变。当传送指令执行时,常数K100自动转换成二进制数。1.4 四则运算及逻辑运算指令(FNC20FNC29)1.4.1 BIN加法指令表1-6 BIN加法指令表ADD FNC20(P) (16/32)BIN加法操作元件:K、HKnxknYknMknSTCDV、Z程序步数:ADD和ADD(P)··
17、183;7步 (D)ADD和(D)ADD(P)···13步 标 志:M8020(零标志),M8021(借位);M8022(进位)指定的源元件中的二进制数相加,结果送到指定的目标元件。每个数据的最高bit作为符号位(0为正,1为负)。运算总是代数运算,如:5+(8)=3。如果运算结果为0,则零标志M8020置1。如果运算结果超过32767(16bit运算)或2147483647(32bit运算),则进位标志M8022置1。如果运算结果小于32767(16bit运算)或2147483647(32bit运算),则借位标志M8022置1。在32bit运算中,用到字元件时,
18、被指定的字元件是最低16bit元件,而其下一个元件即为最高16bit元件。为了避免重复使用某些元件,建议指定操作元件时用偶数元件号。源和目标可以用相同的元件号,若源和目标元件号相同而且采用连续执行的ADD/(D)ADD指令时,加法的结果在每个扫描周期都会改变。上图所示程序,每当X1从OFF变为ON时,D0的数据加1。这与INC(P)指令的执行结果相似。其不同之处在执行ADD指令时,零、借位、进位标志将按前述方法置位。1.4.2 BIN减法指令表1-7 BIN减法指令表SUD FNC20(P) (16/32)BIN减法操作元件:K、HKnxknYknMknSTCDV、Z程序步数:SUB和SUB(
19、P)···7步 (D)SUB和(D)SUB(P)···13步标 志:M8020(零标志),M8021(借位)M8022(进位)S1·指定的元件中的数减去S1·指定的元件中的数,结果送到D·指定的目标中。运算是二进制代数法。例如:5(8)=13每个标志的功能、32bit运算的元件指定方法、连续执行和脉冲执行的区别等均与加法指令中的解释相同。上图所示的运算与执行(D)DEC(P)指令的运算极其相似。区别仅在于用SUB指令时可得到标志的状态。1.4.3 BIN乘法指令表1-8 BIN乘法指令表MUL FNC32
20、(P) (16/32)BIN乘法操作元件:K、HKnxknYknMknSTCDV、Z程序步数:MUL和MUL(P)···7步(D)MUL和(D)MUL(P)···13步116bit 运算两源的乘积以32bit形式送到指定目标。低16bit在指定目标元件,高16bit在下一个元件。若D0=8,D2=9,则上例中(D5,D4)=72最高bit是符号bit(0为正,1为负)。V不用于D·之中,对bit元件,可用K1K8来指定bit数。记住结果是32bit数,所以如图K4指定bit数,则只能得到乘积的低16bit。232bit运算在
21、32位运算中,如用bit元件作目标,则乘积只能得到低32bit,高32bit丢失,在这种情况下应先将数据移入字元件再进行运算。用字元件时,不可能监控这64bit数据的内容。在这种情况下通过监控结果的高32bit和低32bit并利用下式计算:64bit结果=(高32bit)×232+(低32bit)最高bit是符号bit,0为正,1为负。V和Z不能用于D·。1.4.4 BIN除法指令表4-22 BIN除法指令表DIY FNC23(P) (16/32)BIN除法操作元件:K、HKnxKnyKnmKnsTCDV、Z*只有Z可用于16bit运算程序步数:DIY和DIY(P)7步 (
22、D)DIY和(D)DIY(P)13步116bit运算用S1·指令被除数,S2·指定除数,商送到目标D·,余数在D·的下一个元件,V不可用于D·中。232bit运算S1·指定的元件及其下一个元件组成被除数,S2·及其下一个元件组成除数,商和余数放在以D·开始的4个连续元件中。V和Z不可用于D·中。注:(1)若除数为“0”则出错,该指令不执行。(2)若bit元件被指定为目标D·,则不能获得余数。(3)商和余数的最高bit是符号bit。例2 设计一PLC程序,计算(5×352+7×
23、2124×577)/56的值,若余数大于28,A灯亮;若余数小于28,B灯亮;若余数等于28,C灯亮。1.4.5 加1和减1指令表1-9 加1和减1指令表INC FNC24(P)(16/32)(“!”)加1操作元件:K、HKnxknYknMknSTCDV、Z程序步数:INC、INC(P)DEC和DEC(P)···3步 (D)INC、(D)INC(P)、(D)DEC和(D)DEC(P)···5步DEC FNC25(P)(16/32)(“!”)减1上例中,每次X0由OFF变ON时,由D·指定的元件中的数增加1。如果不用
24、脉冲指令,则每个扫描周期加1。在16bit运算中,达到+32767再加1就变为32768但标志不动作。32bit运算时,+2147483647再加1就变为2147483648时,标志也不动作。上例中,每次X1由OFF变为ON时,由D·指定的元件中的数减1。16bit运算时,32768减1就变为+32767,但标志不动作。32bit运算时,2147483648再减1就变为+2147483647,但标志不动作。计数器C0C9的当前值转换成BCD码送到输出K4Y0。Z由复位输入X10清0。每次X110N时,C0C9的当前值依次输出。例3 用INC指令设计一计数器,当按下按钮5次时,指示灯亮
25、。1.5 循环移位指令1.5.3 移位(左/右)指令表1-10 移位(左/右)指令表SFTR FNC34(P)(16)(“!”)右移位操作元件:XYMS程序步数:SFTR,SFTR(P),SFTL,SFTL(P)···9步SFTR FNC35(P)(16)(“!”)左移位本指令使bit元件中的状态向右/向左移位,由n1指定bit元件长度,n2指定移位bit数(n2n11024用脉冲移位指令时,在执行条件的上升沿到达时执行。用连续移位指令时,当执行条件为ON时,每个扫描周期执行一次。1.6 数据处理指令(FNC40FNC49)1.6.1 区间复位指令表4-32 区间复位指令表ZRST FNC40(P) (16)区间复位操作元件:K、HKnxknYknMknSTCDV、ZXYMS程序步
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 颈椎病分型及临床表现
- GBT51314-2018《数据中心基础设施运行维护标准》
- 合理的目标规划
- 舞蹈未来规划
- 乡村道路无障碍设施施工合同
- 物业管理评标办法培训与发展
- 采石场开采坑内探矿施工合同
- 自行车招投标操作规程
- 电梯设备维修保养拆除合同
- 艾滋病防控主题班会
- 2024年高考英语一模试题分类汇编:概要写作(上海专用)(解析版)
- 《师说》教学课件 2024-2025学年统编版高中语文必修上册
- 非暴力沟通课件
- 年产5万吨高密度聚乙烯聚合工段基本工艺设计
- 八年级英语上册 Unit 4 Whats the best movie theater(第1课时)说课稿
- 人教版道德与法治六年级上册全册单元测试卷课件
- JTG∕T L80-2014 高速公路改扩建交通工程及沿线设施设计细则
- 五年级上册小学高年级学生读本第11讲《国家安全是头等大事》教学设计
- 2024年全国注册消防工程师之消防技术综合能力考试重点试题(详细参考解析)
- 2024年北京工业职业技术学院高职单招笔试历年职业技能测验典型例题与考点解析含答案
- Unit 7 Section A(2a-2e)课件人教版2024新教材七年级上册英语
评论
0/150
提交评论