GEPLC第15讲-控制功能指令2_第1页
GEPLC第15讲-控制功能指令2_第2页
GEPLC第15讲-控制功能指令2_第3页
GEPLC第15讲-控制功能指令2_第4页
GEPLC第15讲-控制功能指令2_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十五讲

控制功能指令控制功能指令

程序控制指令用于对程序流转的控制,可以控制程序的结束、分支、循环、子程序或中断程序调用等。通过程序控制指令的合理应用,可以使程序结构灵活、层次分明,增强程序功能。读转换开关位置指令I/O控制指令主控继电器指令跳转指令循环指令子程序中断程序转鼓指令思考:使用带参数的子程序实现一位数加法计算器计算结果的显示:(1)计算结果存放在%R00001中,数据类型为INT型;(2)第一个数码管显示计算结果的十位数,第二个数码管显示计算结果的个位数。I/O分配表输入功能说明输出功能说明I00201数字1按钮Q00001个位数数码管a段I00202数字2按钮Q00002个位数数码管b段I00203数字3按钮Q00003个位数数码管c段I00204数字4按钮Q00004个位数数码管d段I00205数字5按钮Q00005个位数数码管e段I00206数字6按钮Q00006个位数数码管f段I00207数字7按钮Q00007个位数数码管g段I00208数字8按钮Q00008-Q00014十位数a段-g段I00209数字9按钮I00210数字0按钮I00211+(加)号I00215=(等号)号分析:DDCCBBAA数码管显示0000M100001M110010M120011M130100M140101M150110M160111M171000M181001M191、编写数字显示子程序

第一步:BCD译为一个位变量

第二步:位变量译为数码管显示码分析:0123456789输出M10M11M12M13M14M15M16M17M18M19aa√√√√√√√√bb√√√√√√√√cc√√√√√√√√√dd√√√√√√√ee√√√√ff√√√√√√gg√√√√√√√参考子程序:参考主程序:参考主程序:7.中断程序1)由CPU产生,中断的时间间隔由用户指定。如果设定了初始延时,则在完成停止-运行转换并经过初始延时时间后,开始计算中断时间。2)I/O中断由I/O模块发出,I/O中断用于指示离散输入状态的改变(上升沿/下降沿),模拟量范围限制(高/低报警)和高速计数器事件。3)模块中断由VME模块产生。每个模块支持单个中断。注意:中断驱动块执行后能中断非中断驱动块的执行。如果正在中断的逻辑和已中断的逻辑访问相同的数据,会产生不可预期的错误。需要的话,在共享数据正在被访问时,服务请求程序17或服务请求程序32可以临时屏蔽I/O和定时中断程序的执行。用于启动程序块的3种中断类型中断程序中断设置

定时中断块第一次执行的时间为:CPU进入运行模式后((延时*时间基准)+(时间间隔*时间基准))时间基准(TimeBase)设定的时间间隔和延时的最小时间单元。时间基准可以设定为1秒,0.1秒和0.001秒时间间隔(Interval)设定值*时间基准后,得到的值为程序块两次执行的时间间隔延时(Delay)

(可选择)设定值*时间基准后,得到的值为延时多长时间开始第一次执行程序块1)定时中断:系统上电后定期执行的中断程序块中断设置

程序块可以由某些硬件输入的中断信号触发。例如,24VDC,32路的输入模块(IC697MDL650),不管输入信号是上升沿还是下降沿,第一次输入时都发出一个中断。如果模块配置中将中断功能使能,则中断可以触发执行一个程序块。I/O中断在程序块属性栏中配置,触发必须使用全局变量%I,%AI或者%AQ。2)I/O中断如果在模块硬件配置中将VME中断参数使能,程序块可以由VME模块输入的中断信号触发。PAC系统CPU允许每个模块有一个中断。要配置模块中断,在程序块属性栏中标明模块所在的机架/槽号/中断ID即可。3)模块中断举例:完成功能:输出继电器Q00001以1秒为周期通断。思考:主程序为如下梯形图时绘制Q00001的时序。并编程计算扫描周期优先级程序块时序优先级时序允许你为每一个触发指定一个优先级。优先级数值范围为1-16,1优先级最高。单个模块可以有多个优先级不同的中断,也可以有多个优先级相同的中断。将接收到的中断级别和正在执行的程序块的中断级别进行比较后,会按如下方式执行程序:如果接收到的中断级别高于正在执行的程序块的中断级别,则停止执行当前程序块,转而执行和新收到的中断相关的程序块。如果接收到的中断级别等同于正在执行的程序块的中断级别,则继续执行当前程序块。将新收到的中断放入队列中。如果接收到的中断级别低于正在执行的程序块的中断级别,则将新收到的中断放入队列中。返回8.转鼓指令

Drum功能块象机械转鼓排序一样。转鼓排序器在一组潜在输出位组之间移步,然后选择其中基于输入的一个进功能块。选择的值被复制到一组16位离散的输出基准地址。机械转鼓

转鼓指令操作数功能许用操作数描述????R,P,L,W,符号地址(控制块)一个包含转鼓排序器控制块的5字数组的起始地址。控制块的内容将在下面叙述。??常数(长度)步数的指定值,在1到128之间。??≤样本长度

S流

步数输入端。用于正向顺序进入下一步。当功能块接收到能流,S从OFF到ON跳变,转鼓排序器移动一步。当R激活,功能块忽略S。R流

复位输入端。用于选择指定顺序中的步数。当DRUM和R都接收到能流,DRUM复制控制块中的预设步数到控制块的活动步地址里。然后,功能块复制预设步地址中的值到Q地址的位里。当R激活,功能块忽略S。PTN除常数和S、SA-SC数字量数据之外的任何操作数。(样本)字组的起始地址。字数由长度(??)操作数指定。每个字表示一步。对于控制块中活动步字的值表示设想的控制块中活动步的特值输出组合。第一个元素对应第一个活动步值,最后一个元素对应最后一个活动步值。程序软件不能自动生成字组,必须给PTN提供足够的内存空间。转鼓指令操作数功能许用操作数描述DT除了常数和S、SA-SC数字量数据之外的任何操作数。(暂停时间)使用DT操作数,也必须使用DTO操作数,反之亦然。DT操作数是存储器的字长的起始地址。这里的长度就是步数。每个DT字对应一个PTN字。每个字的值表示对应转鼓排序器对应步的停留时间,单位是0.1秒。给定步的停留时间一到,DTO位置位。如果暂停时间固定,转鼓排序器要等停留时间到才能进入下一步。程序软件不能自动生成字组,必须给DT提供足够的内存空间。FTT除了常数和S、SA-SC数字量数据之外的任何操作数。(故障超时)如果使用FTT操作数,也必须使用TFT操作数,反之亦然。FTT操作数是存储器的字长的起始地址。这里的长度就是步数。每个FTT字对应一个PTN字。每个字的值表示对应转鼓排序器对应步的故障暂停时间,单位始0.1秒。故障暂停时间一到,FTT位置位。程序软件不能自动生成字组,必须给FTT提供足够的内存空间。Q除了常数和S之外的任何操作数。存储器中一个字,包含对应当前活动步的PTN元素。转鼓指令操作数功能许用操作数描述DRC除了S之外的任何操作数。(Drum线圈)只要功能块使能激活,活动步不等于预设步,DRC置位。DTO除了常数和S之外的任何操作数。停顿超时用DTO操作数,也必须使用DT操作数,反之亦然。当前步的暂停时间一到,DTO被置位。TFT同上(超时)如果使用TFT操作数,也必须使用FTT操作数,反之亦然。如果DRUM功能块在处于一个特殊步长于该步的故障暂停时间,TFT被置位。FF同上(首位跟踪)存储器的(Length/8+1)字节起始地址,这里的Length就是步数。如果MOD(Length/8+1)>0,FF有(Length/8+1)个字节。FF里字节的位每个位对应PTN的一个字。只是FF里字节的位任何时候只有一个是ON,该位对应活动步的值。第一位对应活动步1的值,最后一个使用的位对应指定活动步的值。转鼓指令控制块说明Address????活动步

活动的值指定样本数组里的元素复制进输出存储单元。该值作为进入样本、暂停时间、故障超时、和首位跟踪操作数数组的索引使用。可写需预置address+1预设步

当R为ON时,复制进活动步输出的一个输入字。可写需预置address+2步控制

用于检测Step输入和Enable输入从OFF到ON跳变的一个字。步控制字留着供功能块专用,必须不被写进。不可写自动生成address+3定时器控制

两个数据字,用于保存运行定时器必须的值。定时器控制留着供功能块专用,必须不被写进不可写自动生成例:首先预置一些必要的数据,即控制块、样本、停顿超时、故障超时等数据。例:%R0100中放置控制块数据;%R0200中为样本数据;%R0300中为停顿超时数据;%R0400中为故障超时数据。思考:使用转鼓指令实现,16位流水灯的显示。要求,16个灯依次亮。例:点阵显示控制要求:在16×16的点阵上显示“GE”分析参考程序:返回思考:关于三台电机启动停止的问题:(1)用一个点动按钮实现电机的启动和停止控制,即:第一次按动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论