第5章-三菱FX2N系列-PLC的功能指令分析课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第5章-三菱FX2N系列-PLC的功能指令分析课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 三菱 FX2N 系列 PLC 功能 指令 分析 课件
- 资源描述:
-
1、2022-12-71第第5章章 三菱三菱FX2N系列系列 PLC的功能指令的功能指令 本章导读本章导读 本章主要介绍了FX2N的功能指令及其编程方法,功能指令编号为FNC00FNC246,将常用功能指令归类讲述,从5.6节起只作简讲,未介绍的可查阅附录表B.2。将以表格形式归纳功能指令格式、类型及使用要素。选择合适的功能指令,将使编程更加方便和快捷。要求掌握各类功能指令及其编程方法,掌握GPPW内装的的模拟仿真、时序图等功能,来帮助学习功能指令。2022-12-725.1 功能指令的基本规则功能指令的基本规则1 FX2N系列PLC的功能指令一览表见附录表B.2。一条基本逻辑指令只完成一个特定的
2、操作,而一条功能指令却能完成一系列的操作,相当于执行了一个子程序,所以功能指令功能更强大,编程更精练,它能用于运动控制、模拟量控制等场合。基本指令和其梯形图符号之间是互相对应的。而功能指令采用梯形图和助记符相结合的形式,意在表达本指令要做什么。有些功能指令在整个程序中只能使用一次,介绍到此类指令时会特别强调。5.1.1 功能指令的表示功能指令的表示1功能指令的梯形图表示功能指令的梯形图表示用功能框表示功能指令,即在功能框中用通用的助记2022-12-735.1.1 功能指令的表示功能指令的表示 2符形式来表示,如图5.1(a)所示,该指令的含义如图5.1(b)所示。图5.1(a)中X000常开
3、接点是功能指令的执行条件,其后的方框即为功能指令。由图可见,功能指令同一般的汇编指令相似,也是由操作码和操作数两大部分组成。(1)操作码部分功能框第一段为操作码部分,表达了该指令做什么。2022-12-745.1.1 功能指令的表示功能指令的表示 3一般功能指令都是以指定的功能号来表示,如FNC45。但是,为了便于记忆,每个功指令都有一个助记符,对应FNC45的助记符是MEAN,表示“求平均值”。这样就能见名知义,比较直观。在编程器或FXGP软件中输入功能指令时,输入的是功能号FNC45,显示的却是助记符MEAN。不过,在FXGP软件中也可直接输入助记符MEAN。注意注意:本书在介绍各功能指令
4、时,将以图5.1(a)的形式同时给出功能号和对应的助记符,但并不意味着在FXGP软件中输入功能指令时要两者一起送,而是按上述介绍,只要送入其中一个就行了。(2)操作数部分 2022-12-755.1.1 功能指令的表示功能指令的表示 4功能框的第一段之后都为操作数部分,表达了参加指令操作的操作数在那里。操作数部分部分组成:源操作数(源)目标操作数(目)数据个数源操作数(源)目标操作数(目)数据个数源操作数:D0、D1和D2,数据个数K3指示源有3个;目操作数:D10。当X000接通时,MEAN指令的含义如图5.1(b)所示,即要取出D0D2的连续3个数据寄存器中的内容作算术平均后送入D10寄存
5、器中。当X000断开时,此指令不执行。操作数排列次序:源在前,目在后,数据个数在最后源在前,目在后,数据个数在最后有些功能指令还要求多个操作数,也有的功能指令不需要操作数。2022-12-765.1.1 5.1.1 功能指令的表示功能指令的表示 5 52功能指令的要素描述功能指令的要素描述功能指令的要素描述将按表图的格式给出。如对图5.1(a)这条MEAN指令的要素描述如表5.1所示。表中使用符号的说明:求平均值指令:指令的名称 FNC45:指令的功能号2022-12-775.1.1 功能指令的表示功能指令的表示 6 MEAN指令的助记符(P)指令的执行形式,(P)表示可使用脉冲执行方式,在执
6、行条件满足时仅执行一个扫描周期;缺省的为连续执行型。(D)指令的数据长度可为32位,缺省为16位。S源操作数,简称源,指令执行后不改变其内容的操作数。当源不止一个时,用S1、S2等来表示。有“”表示能用变址方式,缺省为无“”,表示不能使用变址方式。D目标操作数,简称目,指令执行后将改变其内容的操作数。当目不止一个时,用D1、D2等来表示。有“”表示能使用变址方式,缺省为无“”,表2022-12-78示不能使用变址方式。m、n其它操作数,常用来表示常数或对源和目作出补充说明。表示常数时,K后跟的为十进制数,H后跟的为十六进制数。程序步指令执行所需的步数。一般来说,功能指令的功能号和助记符占一步,
7、每个操作数占24步(16位操作数是2步,32位操作数是4步)。因此,一般16位指令为7步,32位指令为13步。5.1.2 功能指令的数据长度功能指令的数据长度 11字元件与双字元件字元件与双字元件(1)字元件1个字元件是由16位的存储单元构成,最高位(第15位)5.1.1 功能指令的表示功能指令的表示 72022-12-795.1.2 功能指令的数据长度功能指令的数据长度 2为符号位,第014位为数值位。图5.2所示为16位数据寄存器D0图示。(2)双字元件 可以使用两个字元件组成双字元件,以组成32位数据操作数。双字元件是由相邻的寄存器组成,在图5.3中由D11和D10组成。低16位数据存放
8、在低位元件D10中,2022-12-7105.1.2 功能指令的数据长度功能指令的数据长度 3高16位数据存放在高位元件D10中,存放原则是:低对低对低,高对高低,高对高。双字元件中第31位为符号位,第030位为数值位。注意注意:在指令中使用双字元件时,一般只用其低位地址表示这个元件,但高位元件也将同时被指令使用。建议用偶数作为双字元件的地址,此点会用图5.6来说明。功能指令中的操作数是指操作数本身或操作数的地址。功能指令能够处理16位或32位的数据。2功能指令中的功能指令中的16位数据位数据因为几乎所有寄存器的二进制位数都是16位,所以功能指令中16位的数据都是以缺省形式给出。如图5.4 所
9、示即为一条16位MOV指令:2022-12-7115.1.2 功能指令的数据长度功能指令的数据长度 4MOV指令的含义是,当X000接通时,将十进制数100传送到16位的数据寄存器D10中去。当X000断开时,该指令被跳过不执行,源和目的内容都不变。3功能指令中的功能指令中的32位数据位数据功能指令也能处理32位数据,这时需要在指令前缀符号(D),如图5.5 所示即为一条32位MOV指令:2022-12-7125.1.2 功能指令的数据长度功能指令的数据长度 5凡是能前缀显式符号(D)的功能指令,就能处理32位数据。32位数据是由两个相邻寄存器构成的,但在指令中写出的是低位地址,源和目都是这样
10、表达的。所以对图5.5所示32位MOV指令含义应该这样来理解:当X000接通时,将由D11和D10组成的32位源数据传送到由D13和D12组成的目标地址中去。要避免出现类似图5.6所示指令的错误:源由D11和D10组成,而目由D12和D11组成,这里D11是源、目重复使用,就会引起出错。所以建议32位数据首地址用偶地址。2022-12-7135.1.2 功能指令的数据长度功能指令的数据长度 6注意注意:32位计数器C200C255不能作为16位指令操作数4功能指令中的位元件功能指令中的位元件位元件:只有ON或OFF两种状态,用一个二进制位就能表达的元件。如X、Y、M、S等。功能指令中也能使用由
11、只含一个bit的位元件,以及位元件组合。位元件组合成位组合元件的方法:将多个位元件按四位一组的原则来组合,也就是说用4位BCD码来表示1位十进制数,这样就能在程序中使用十进制数据了。组合方法的助记符是:Kn最低位位元件号最低位位元件号 如KnX、KnY、KnM即是位元件组合,其中“K”表示后面跟的是十进制数,“n”表示四位一组的组数,2022-12-7145.1.2 功能指令的数据长度功能指令的数据长度 716位数据:K1K4,32位数据:K1K8。数据中的最高位是符号位。如:K2M0:由M0M3和M4M7两组位元件组成一个8位数据,其中M7是最高位,M0是最低位。K4M10:由M10M25四
12、组位元件组成一个16位数据,其中M25是最高位,M10是最低位。注意注意:当一个16位数据传送到目元件K1M0K3M0时,由于目标元件不到16位,所以将只传送16位数据中的低位数据,高位数据将不传送。32位数据传送也一样。由于数据只能是16位或32位这两种格式,因此当用2022-12-7155.1.2 功能指令的数据长度功能指令的数据长度 8K1K3组成字时,其高位不足16位部分均作0处理。如执行图5.7所示指令时,源数据只有12位,而目标寄存器D20是16位的,传送结果D20的高4位自动添0,如图5.8所示。这时最高位的符号位必然是0,也就是说,只能是正数(符号位的判别是:正0负1)。202
13、2-12-7165.1.2 功能指令的数据长度功能指令的数据长度 9 由位元件组成组合位元件时,最低位元件号可以任意给定。如X000、X001和Y005均可。但习惯上采用以0结尾的位元件,如X000、X010和Y020等。5.1.3 功能指令的执行方式功能指令的执行方式 功能指令的两种执行方式:连续执行和脉冲执行方式。1功能指令的连续执行方式功能指令的连续执行方式缺省为连续执行方式,如图5.9。PLC是以循环扫描方式工作的,如果执行条件X000接通,指令在每个扫描周期中都要被重复执行一次,这种情况对大多数指令都是允许的。22022-12-7175.1.3 功能指令的执行方式功能指令的执行方式
14、22功能指令的脉冲执行方式功能指令的脉冲执行方式对于某些功能指令,如XCH、INC和DEC等,用连续执行方式在实用中可能会带来问题。如图5.10所示是一条INC指令,是对目标元件(D10、D11)进行加1操作的。假设该指令以连续方式工作的话,那么只要X000是接通的,则每个扫描周期都会对目标元件加1,而这在许多实际的控制中是不允许的。为了解决这类问题,设置了指令的脉冲执行方式,并在指令助记符的后面后缀符号“P”来表示此方式,如图5.10所示。2022-12-7185.1.3 功能指令的执行方式功能指令的执行方式 3注意注意:在图5.10中INC后加“(P)”,仅表示指令还有脉冲执行方式;在IN
15、C前加“(D)”,也仅表示指令还有32位操作方式。但在FXGP中输入时应该这么送:DINCPD10,即加在前后缀的括号不必送的。对于在本书中,以这种方式表达的所有其它功能指令都要这样来理解。在脉冲执行方式下,指令INC只在条件X000从断开变为接通时才执行一次对目标元件的加1操作。即每当X000来了一个上升沿,才会执行加1;而在其它情况下,即使X000始终是接通的,都不会执行加1指令。在不需要每个扫描周期都执行指令时,可以采用脉冲执行方式的指令,这样还能缩短程序的执行时间。2022-12-7195.1.4 变址操作变址操作 1FX2N的16个变址寄存器V和Z都是16位的(FX0N和FX0S只有
16、两个变址寄存器V和Z),即V0V7、Z0Z7。除了能作为通用数据寄存器之外,主要用于运算操作数地址的修改,在传送、比较等指令中用来改变操作对象的元件地址,循环程序中也常使用变址寄存器。变址方法是将V、Z放在各种寄存器的后面,充当操作数地址的偏移量。操作数的实际地址就是寄存器的当前值和V或Z内容的相加后的和。当源或目的寄存器用S或D表示时,就能进行作变址操作。当进行32位数据操作时,V、Z自动组对成32位(V,Z)来使用,这时Z为低16位,而V充当高16位。可以用变址寄存器进行变址的软元件是X、Y、M、S、P、T、C、D、K、H、KnX、KnY、KnM、KnS。2022-12-720例例5.1
17、如图5.11所示的梯形图中,求执行加法操作后源和目操作数的实际地址。解:解:第一行指令执行10V,第二行指令执行20Z,所以变址寄存器的值为,V10,Z20。第三行指令执行(D5V)(D15Z)(D40Z),S1为D5V:D(5+10)D15源操作数1的实际地址 S2为D15Z:D(15+20)D35 源操作数2的实际地址 D为D40Z:D(40+20)D60 目操作数的实际地5.1.4 变址操作变址操作 2所以,第三行指令实际执行(D15)(D35)(D60),即D15的内容和D35的内容相加,结果送入D60中去。2022-12-7215.2 程序流向控制指令程序流向控制指令 1FX2N系列
18、PLC的功能指令中程序流向控制指令共有10条,功能号是FNC00FNC09,程序流向控制指令汇总如附录表B.2所示。通常情况下,PLC的控制程序是顺序逐条执行的,但是在许多场合下却要求按照控制要求改变程序的流向。这些场合有:条件跳转、转子与返回、中断调用与返回、循环、警戒时钟与主程序结束。5.2.1 条件跳转指令条件跳转指令1指令用法说明指令用法说明条件跳转指令为CJ或CJ(P)后跟标号,其用法是当跳转条件成立时跳过一段指令,跳转至指令中所标明的标号处继续执行,若条件不成立则继续顺序执行。这样可以减少扫描时间并使“双线圈操作”成为可能。352022-12-7225.2 程序流向控制指令程序流向
19、控制指令 2条件跳转指令的助记符、功能号、操作数和程序步等指令概要如表5.2所示。由表5.2可见,能够充当目标操作数的只有标号P0P127。例例5.2梯形图如图5.12所示,阅读此程序,试分析:(1)程序的可能流向;(2)程序中的“双线圈操作”是否可能。解:解:(1)分析图5.12所示程序的流向如下。若M0接通,则CJP0的跳转条件成立,程序将跳转到标号为P0处。因为M0常闭是断开的,所以 CJ P1的跳转条件不成立,2022-12-7235.2 程序流向控制指令程序流向控制指令 3程序顺序执行。按照M3的状态对Y000进行处理。若M0断开,则CJP0的跳转条件不成立,程序会按照指令的顺序执行
20、下去。执行到P0标号处时,由于M0常闭是接通的,则CJP1的跳转条件成立,因此程序就会跳转到P1标号处。(2)Y000为双线圈输出。程序在执行过程中,M0常开和M0常闭是一对约束。使线圈Y000驱动逻辑任何时候只有一个会发生,所以在图5.12所示梯形图中Y000为双线圈输出是可以的。2跳转程序中软元件状态与标号跳转程序中软元件状态与标号(1)被跳过程序段中软元件的状态 被跳过的程序段中的各种继电器和状态器、定时器等将保持跳转发生前的状态不变。正在工作的定时器正在工作的定时器T192T199高高速计数器速计数器C235C255不管有无跳转仍将不管有无跳转仍将2022-12-7245.2 程序流向
21、控制指令程序流向控制指令 4连续工作,输出接点也能动作。掉电保持计数器、定时器,其当前值被锁定。程序继续执行时,它们将继续工作。复位优先,即使复位指令在被跳过程序段中,条件满足,复位也将执行。(2)标号不能重复使用,但能多次引用。同一标号不能重复使用,但可多次被引用,即可从不同的地方跳转到同一标号处,如图5.13(a)。标号也可以出现在跳转指令之前,如图5.13(b)。2022-12-725当M0接通时,程序也允许向回跳转。但是如果M0接通时间超过100ms,会引起警戒时钟出错,但不会影响程序的执行。标号共有128个,其中P63相当于END,不能作为真正的标号使用。这样,当要跳过最后一段程序结
22、束时,就可以在此段程序前设置一条CJ P63指令。也可以理解为CJ P63就是跳转到程序的最开始处。而且标号P63不必出现在程序中。3无条件跳转与条件跳转的脉冲执行方式无条件跳转与条件跳转的脉冲执行方式(1)构造无条件跳转指令可用条件跳转指令来构造无条件跳转指令,使用某个始终成立的条件使条件跳转变成无条件跳转。常用的是5.2 程序流向控制指令程序流向控制指令 52022-12-7265.2 程序流向控制指令程序流向控制指令 6M8000,因为只要PLC处于RUN状态,则M8000总是接通的,无条件跳转梯形图如图5.14(a),条件跳转指令CJ P0的驱动条件始终成立,因此就可以将这条指令看成是
23、无条件跳转。(2)条件跳转指令的脉冲执行方式条件跳转指令脉冲执行方式如图5.14(b)。2022-12-7275.2 程序流向控制指令程序流向控制指令 74跳转与主控区之间的相关问题跳转与主控区之间的相关问题 如果跳转的区域包括整个主控区(MCMCR),则将不受任何限制,可以随意跳转而不必考虑主控区问题。如果跳转从主控区外跳到主控区内时,这时主控指令的目标接点,应被当作接通来处理。比如说被跳过的主控指令为MC N0 M10,则M10仍被看作是接通的。如果跳转发生在主控区内,当主控接点为断开时,跳转指令因没有执行到而不能跳转。如果跳转从主控区内跳到主控区外时,当主控接点断开时,由于没有执行到跳转
24、指令,因此不能跳转。当主控接点接通时,可以跳转,这时MCR指令被忽略。如果跳转从一个主控区内跳到另一个主控区内,而且2022-12-7285.2 程序流向控制指令程序流向控制指令 8源主控接点是接通的,则跳转可以进行,不管目标主控接点原状态如何,均被看做接通,MCR N0被忽略。5.2.2 转子与返回指令转子与返回指令子程序也是为一些特定的控制目的编制的相对独立的模块,供主程序调用。为了区别于主程序,将主程序排在前边,子程序排在后边,并以主程序结束指令FEND(FNC06)给以分隔。1指令用法说明指令用法说明(1)子程序调用指令:CALL或CALL(P)标号,标号是被调用子程序的入口地址,以P
25、0P127(不包括P63)来表示。子程序返回用SRET指令。2022-12-7295.2.2 转子与返回指令转子与返回指令 2转子与返回指令的指令概要如表5.4所示。子程序调用和返回的梯形图如图5.15(a)。当M0接通时,调用子程序P0,程序将跳转到P0标号所指向的那条程序,同时将调用指令下一条指令的地址作为断点保存。此后从P0开始逐条顺序执行子程序,直至遇到SRET指令时,程2022-12-7305.2.2 转子与返回指令转子与返回指令 3序将返回到主程序的断点处,继续顺序执行主程序,即执行指令LD M1,OUTY000。(2)子程序的位置与标号使用子程序P0安排在主程序结束指令FEND之
展开阅读全文