CPM1A的子程序控制与中断控制指令课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《CPM1A的子程序控制与中断控制指令课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CPM1A 子程序 控制 中断 指令 课件
- 资源描述:
-
1、 Date:11/8/2022 Page:1 第五章 CPM1APLC一、一、子程序控制子程序控制指令指令1 1、在编写、在编写PLCPLC的应用程序时,的应用程序时,有的程序段需多次重复使用。有的程序段需多次重复使用。这样的这样的程序段可以编成一个程序段可以编成一个子程序子程序,在满足一定条件时,在满足一定条件时,中断中断主程序而主程序而转转去执行子程序去执行子程序,子程序执行完毕,再,子程序执行完毕,再返回断点处返回断点处继续继续执行主程序执行主程序。2 2、另外,、另外,有的程序段需多次使用,且程序段的结构不变,但每次输有的程序段需多次使用,且程序段的结构不变,但每次输入和输出操作数不同
2、。入和输出操作数不同。对这样的程序段也可以编成一个子程序,在对这样的程序段也可以编成一个子程序,在满足执行条件时,中断主程序的执行而转去执行子程序,满足执行条件时,中断主程序的执行而转去执行子程序,并且每次并且每次调用时赋予该子程序不同调用时赋予该子程序不同的的输入和输出操作数输入和输出操作数,子程序执行完毕再,子程序执行完毕再返回断点返回断点处继续执行主程序。处继续执行主程序。第六讲第六讲 CPM1ACPM1A的子程序控制与中断控制指令的子程序控制与中断控制指令 Date:11/8/2022 Page:2 第五章 CPM1APLC一、一、子程序控制子程序控制指令指令 1 1子程序调用指令子程
3、序调用指令SBSSBS(9191)/SBS/SBS(9191)2 2子程序定义指令子程序定义指令SBNSBN(9292)/SBN/SBN(9292)3 3子程序返回指令子程序返回指令RETRET(9393)/RET/RET(9393)4.4.宏指令宏指令MCROMCRO(9999)/MCRO/MCRO(9999)Date:11/8/2022 Page:3 第五章 CPM1APLC1 1子程序调用指令子程序调用指令SBSSBS(9191)/SBS/SBS(9191)格式:格式:SBS N SBS N 符号:符号:N N:子程序编号子程序编号。其取值为。其取值为00009999。功能:调用编号为功
4、能:调用编号为N N的子程序。的子程序。主程序中主程序中调用子程序调用子程序的的次数不受限制次数不受限制,子程序子程序还可以还可以调用其它调用其它的的子程序子程序,但,但不可以调用本身。不可以调用本身。Date:11/8/2022 Page:4 第五章 CPM1APLC2 2子程序定义指令子程序定义指令SBNSBN(9292)/SBN/SBN(9292)格式:格式:SBN N SBN N 符号:符号:N N:子程序编号子程序编号。其取值为。其取值为00009999。功能:功能:SBNSBN定义子程序的定义子程序的开始,不需要执行条件。开始,不需要执行条件。子程序的子程序的编号不可重复编号不可重
5、复。Date:11/8/2022 Page:5 第五章 CPM1APLC3 3子程序返回指令子程序返回指令RETRET(9393)/RET/RET(9393)格式:格式:RET RET 符号:符号:功能:功能:RETRET表示表示子程序结束。子程序结束。RETRET指令指令不带操作数不带操作数,也不需要执行条件。也不需要执行条件。SBNSBN和和RETRET指令要指令要成对使用成对使用,组成一个,组成一个完整完整的的子程序。子程序。Date:11/8/2022 Page:6 第五章 CPM1APLC4.4.宏指令宏指令MCROMCRO(9999)/MCRO/MCRO(9999)格式:格式:MC
6、RO N MCRO N 符号:符号:S1 S1 S2 S2N N:子程序编号子程序编号。其取值为。其取值为00009999。S1S1:输入开始输入开始通道。通道。取值范围取值范围IRIR、HRHR、ARAR、LRLR、TCTC、DMDM、*DMDM。S2S2:输出开始通道输出开始通道。取值范围同。取值范围同S1S1。Date:11/8/2022 Page:7 第五章 CPM1APLC4.4.宏指令宏指令MCROMCRO(9999)/MCRO/MCRO(9999)5.5.功能:功能:用一个用一个子程序子程序N N代替代替数个相同结构数个相同结构但但操作数不同的子程序操作数不同的子程序。6.6.当
7、执行条件为当执行条件为ONON时,时,停止停止执行主程序,将输入通道执行主程序,将输入通道S1S1S1+3S1+3的的内容复制到通道内容复制到通道SR232SR232SR235SR235中;将输出通道中;将输出通道S2S2S2+3S2+3的内容的内容复复制制到通道到通道SR236SR236SR239SR239中,然后中,然后调用子程序调用子程序N N。7.7.子程序子程序执行完毕执行完毕,再将通道,再将通道SR236SR236SR239SR239中中的内容的内容传送传送到到输出输出通道通道S2S2S2+3S2+3中,并返回到中,并返回到MCROMCRO指令的指令的下一条语句下一条语句,继续执继
8、续执行主程行主程序。序。Date:11/8/2022 Page:8 第五章 CPM1APLC 使用子程序调用程序时要注意以下几点:使用子程序调用程序时要注意以下几点:(1 1)所有子程序都必须放在主程序之后和)所有子程序都必须放在主程序之后和ENDEND指令之前。指令之前。(2 2)主程序调用各子程序主程序调用各子程序的的次数没有限制。次数没有限制。(3 3)子程序可以嵌套调用。子程序可以嵌套调用。即子程序中即子程序中又调用别的子程序。又调用别的子程序。但是嵌套但是嵌套不能超过不能超过1616级,级,且子程序且子程序不能自调用。不能自调用。Date:11/8/2022 Page:9 第五章 C
9、PM1APLC宏指令调用子程序的例子宏指令调用子程序的例子 Date:11/8/2022 Page:10 第五章 CPM1APLC二、中断控制指令二、中断控制指令 中断:指在中断:指在外部或内部触发信号外部或内部触发信号的作用下,的作用下,中断主程序的执行而转去执行一个预先编写的子程序,中断主程序的执行而转去执行一个预先编写的子程序,即中断处理子程序即中断处理子程序(也称中断服务程序也称中断服务程序),中断处理子程序执行完毕中断处理子程序执行完毕再返回断点处再返回断点处继续执行继续执行主程主程序的现象。序的现象。Date:11/8/2022 Page:11 第五章 CPM1APLC二、中断控制
10、指令二、中断控制指令 中断功能作用:中断功能作用:在在实际控制过程中,实际控制过程中,控制系统中有些控制系统中有些随时可能发生随时可能发生的的情况需要情况需要PLCPLC处理处理;具有具有中断功能中断功能的的PLCPLC可以可以不受扫描周期不受扫描周期的的影响;影响;及时及时将将这种随机这种随机的的信息输入到信息输入到PLCPLC中中;提高提高PLCPLC对对外部信息外部信息的的响应速度。响应速度。Date:11/8/2022 Page:12 第五章 CPM1APLC 1 1外部输入中断外部输入中断 CPMlACPMlA系列系列PLCPLC中,中,00003000030000600006这四个
11、点是外部输入中断这四个点是外部输入中断的输入点。外部发生的输入点。外部发生的的事件所产生事件所产生的的信号信号通过通过中断输入点送中断输入点送入入PLCPLC,当某个中断输入点为,当某个中断输入点为ONON或或ONON一定次数时一定次数时,产生,产生中断中断请求信号。请求信号。当不使用当不使用中断功能时,中断功能时,这些点作为这些点作为普通输普通输入点使用。入点使用。外部输入中断外部输入中断有有输入中断输入中断和和计数中断计数中断两种模式。两种模式。二、中断控制指令二、中断控制指令 常见中断有三种形式:常见中断有三种形式:外部输入中断、间隔定时器中断和高速计数器中断。外部输入中断、间隔定时器中
12、断和高速计数器中断。Date:11/8/2022 Page:13 第五章 CPM1APLC(1 1)外部输入中断模式。)外部输入中断模式。1 1)输入中断模式)输入中断模式 在在非屏蔽非屏蔽情况下,只要情况下,只要中断输入点接通中断输入点接通则产生则产生中断响应。中断响应。若若在屏蔽在屏蔽情况下,即使中断输入点接通情况下,即使中断输入点接通也不能产生中断也不能产生中断响应,响应,但该中断信号但该中断信号被记忆下,被记忆下,待屏蔽解除后待屏蔽解除后立即产生中断。立即产生中断。若屏蔽解除后若屏蔽解除后不希望响应不希望响应所记忆的中断,可用所记忆的中断,可用指令清除指令清除该记忆。该记忆。Date:
13、11/8/2022 Page:14 第五章 CPM1APLC2 2)计数器中断模式)计数器中断模式 对对中断输入点接通中断输入点接通的的次数次数进行进行高速计数高速计数(减计数减计数),当当达到设定达到设定的的次数次数时产生时产生中断,中断,计数器计数器停止计数、中断被屏停止计数、中断被屏蔽。蔽。若想若想再产生中断需使用指令再产生中断需使用指令进行设定。进行设定。计数器计数器的的计数范围计数范围0 06553565535,计数频率,计数频率最高为最高为lkHzlkHz。对对计数模式计数模式中断,中断,CPMlACPMlA系列规定用系列规定用通道通道SR240SR240243243(分别对应(分
14、别对应00003000030000600006输入点)存放输入点)存放计数器设定值。计数器设定值。Date:11/8/2022 Page:15 第五章 CPM1APLC 外部输入点外部输入点对应对应固定固定的的中断处理子程序中断处理子程序编号:编号:中断输入中断输入0(0(输入点输入点00003)00003):子程序号为:子程序号为000000 中断输入中断输入1(1(输入点输入点00004)00004):子程序号为:子程序号为001001 中断输入中断输入2(2(输入点输入点00005)00005):子程序号为:子程序号为002002 中断输入中断输入3(3(输入点输入点00006)0000
15、6):子程序号为:子程序号为003003 优先级:优先级:中断输入中断输入00中断输入中断输入11中断输入中断输入22中断输入中断输入3 3。不使用中断功能,这些子程序号可用作不使用中断功能,这些子程序号可用作普通子程序编号普通子程序编号。中断处理子程序也用中断处理子程序也用SBNSBN定义其开始,用定义其开始,用RETRET定义其结束定义其结束。中断处理子程序中断处理子程序也必须放在主程序之后和也必须放在主程序之后和ENDEND之前。之前。Date:11/8/2022 Page:16 第五章 CPM1APLC 在在外部输入中断外部输入中断使用之前,要用使用之前,要用编程器对编程器对DM662
16、8DM6628进行设定,进行设定,若若不进行设定不进行设定就就没有中断功能。没有中断功能。DM6628DM6628设定的内容和含义如图设定的内容和含义如图 Date:11/8/2022 Page:17 第五章 CPM1APLC(2 2)外部输入中断控制指令)外部输入中断控制指令 :INT:INT(8989)/INT/INT(8989)格式:格式:INT C1 INT C1 符号:符号:000000 C2 C2 C1C1:控制码。其取值为:控制码。其取值为000000003003,100100,200200。C2C2:控制数据。:控制数据。C1=002C1=002时时取值范围取值范围IRIR、H
17、RHR、ARAR、LRLR、TCTC、DMDM、*DMDM C1002C1002时时取值范围取值范围DMDM、*DMDM、#0000#0000#000F#000F。功能:功能:当执行条件当执行条件ONON时,根据时,根据C1C1的数据的数据完成完成6 6种功能种功能中一种。中一种。Date:11/8/2022 Page:18 第五章 CPM1APLCC1C1是控制码,其取值和含义:是控制码,其取值和含义:1 1)C1=000C1=000:对对00003000030000600006输入点输入点屏蔽不屏蔽。是否屏蔽,屏蔽不屏蔽。是否屏蔽,由由C2C2的的bit00bit00bit03bit03位
18、来决定位来决定.2 2)C1=001C1=001:清除不清除清除不清除输入中断记忆。输入中断记忆。是否清除,是否清除,由由C2C2的的bit00bit00bit03bit03位来决定。(位来决定。(1/0:1/0:清除不清除清除不清除)3)C1=0023)C1=002:读出读出00003000030000600006输入点的输入点的当前屏蔽状态写入当前屏蔽状态写入C2C2中,为中,为屏蔽屏蔽时时C2C2的的对应位为对应位为1 1。Date:11/8/2022 Page:19 第五章 CPM1APLC4 4)C1=003C1=003:更新不更新更新不更新00003000030000600006输
19、入点的计数器设输入点的计数器设定值。定值。是否更新设定值,是否更新设定值,由由C2C2的的bit00bit00bit03bit03位来决定,位来决定,(1/0:1/0:不更新更新不更新更新)5 5)C1=100C1=100:屏蔽屏蔽所有中断(所有中断(包括外部输入中断、间隔定时器包括外部输入中断、间隔定时器中断和高速计数器中断中断和高速计数器中断)。屏蔽期间若有中断请求将不)。屏蔽期间若有中断请求将不响应,但响应,但可记忆可记忆各种中断信号,各种中断信号,待屏蔽解除待屏蔽解除时时立即响应立即响应中断。中断。6 6)C1=200C1=200:解除:解除屏蔽所有中断,恢复到执行屏蔽所有中断,恢复到
20、执行“屏蔽所有中断屏蔽所有中断”之前的状态,但不解除各个中断自己的屏蔽字(如之前的状态,但不解除各个中断自己的屏蔽字(如C1=000C1=000时,时,INTINT写入的屏蔽字)。写入的屏蔽字)。Date:11/8/2022 Page:20 第五章 CPM1APLC注:注:C1=100C1=100和和C1=200C1=200时,时,C2=0000C2=0000为固定设置;为固定设置;屏蔽所有中断与解除屏蔽所有中断应屏蔽所有中断与解除屏蔽所有中断应成对使用成对使用;不是十分必要,不是十分必要,一般不要使用屏蔽所有中断。一般不要使用屏蔽所有中断。Date:11/8/2022 Page:21 第五章
21、 CPM1APLC 记数器模式外部中断举例。记数器模式外部中断举例。生产线记数装箱程序(局部)。生产线记数装箱程序(局部)。对产品进行记数,对产品进行记数,每到每到5050件便执行装箱件便执行装箱子程序。子程序。0000300003为记为记数脉冲输入点。数脉冲输入点。程序运行前程序运行前首先设定首先设定DM6628=0001DM6628=0001,使输使输入点入点0000300003成为成为中断输入点。中断输入点。1 1部分部分计数器设定值输入,设定值为计数器设定值输入,设定值为5050;2 2部分部分中断控制,中断控制,设定输入点设定输入点0000300003更新,更新,其余输入点其余输入点
22、为为屏蔽状态;屏蔽状态;3 3部分部分中断处理子程序中断处理子程序用来执行装箱子程用来执行装箱子程序,应序,应注意注意的是的是中断输入点中断输入点0000300003对应的中对应的中断处理断处理子程序号是子程序号是000000。Date:11/8/2022 Page:22 第五章 CPM1APLC 2 2间隔定时器中断间隔定时器中断 CPM1ACPM1A有一个有一个间隔定时器,间隔定时器,是是递减计数器,定时时间到递减计数器,定时时间到时,不受扫描时,不受扫描周期的影响,周期的影响,停止执行停止执行主程序并主程序并建立断点,建立断点,立即转去立即转去执行执行中断子程序,中断子程序,实现实现高精
23、度高精度的的定时中断处理。定时中断处理。间隔定时器中断间隔定时器中断有有两种两种工作模式:工作模式:1)1)单触发模式,单触发模式,当规定时间到时,只执行当规定时间到时,只执行一次中断一次中断;2)2)重复中断模式,重复中断模式,每隔一定时间反复执行中断。每隔一定时间反复执行中断。Date:11/8/2022 Page:23 第五章 CPM1APLC间隔定时器中断控制指令:间隔定时器中断控制指令:STIMSTIM(6969)/STIM/STIM(6969)格式:格式:STIM C1 STIM C1 符号:符号:C2C2 C3 C3C1C1:控制码。:控制码。其取值为其取值为000000,003
展开阅读全文