应用指令c预案.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
 第5章 特殊指令 5.2.1 高速计数 5.2.2 高速脉冲输出 1. 高速计数器介绍 普通计数器是按照顺序扫描的方式进行工作,每个扫描周期中,对计数脉冲值进行一次累加,当输入脉冲的频率比PLC扫描频率高时,则不能准确计数。可用高速计数器。 高速计数器最大计数频率可达20kHz,主要用于电机转速的检测,距离检测等。 (1)数量及编号 (2)中断事件类型 PLC可用的高速计数器的中断事件大致分为3类: 当前值等于预设值中断 输入方向改变中断 外部复位中断。 所有高速计数器都支持当前值等于预设值中断。 每个高速计数器的3种中断的优先级由高到低,不同高速计数器之间的优先级又按编号顺序由高到低。具体对应关系如表5.8所示。 (3)工作模式 高速计数器的工作模式共有12种。6个计数器功能不完全一样。 可通过编程,使用定义高速计数器指令 HDEF来选定工作模式。 每个高速计数器都有固定的特殊功能存储器与之相配合,完成高速计数功能。具体对应关系如表5.11所示。 高速计数器编程步骤: 1选择计数器及工作模式 2设置控制字节 3执行HDEF指令 4设定当前值和预设值 5设置中断事件并全局开中断 6执行HSC指令 4. 应用实例 要对一高速事件精确控制,通过对脉冲信号进行增计数,计数当前值达到24产生中断,重新从0计数,对中断次数进行累计。计数方向用一个外部信号控制,并能实现外部复位。所用的主机型号为CPU221。 设计步骤: ①选择高速计数器HSC0,并确定工作方式4。②令SM37=16#F8 ③执行HDEF指令,输入端HSC为0,MODE为4。④装入当前值,令SMD38=0。⑤装入设定值,令SMD42=24。⑥执行中断连接ATCH指令,输入端INT为INT0,EVNT为12。 主程序、初始化子程序和中断程序分别如图5.12、图5.13和图5.14所示。 5.2.2 高速脉冲输出 在需要对负载进行高精度控制时,如对步进电机的控制,需要对步进电机提供一系列的脉冲,高速脉冲输出指令就是为满足这种需求而开发的。 1. 高速脉冲输出介绍 (1)输出端子的确定(Q0.0或Q0.1) (2)高速脉冲输出的形式(PTO或PWM) (3)相关寄存器 (SMB67或SMB77等) (4)脉冲输出指令 (PLS) (3)相关的寄存器 控制字节寄存器、状态字节寄存器和参数数值寄存器。 控制字节 2. 高速脉冲串输出PTO (1)周期和脉冲数 (2)PTO的种类 (3)中断事件类型 (4)PTO的使用 (1)周期和脉冲数 周期:单位可以是微秒μs或毫秒ms;为16位无符号数据,周期变化范围是50~65535μs或2~65535ms,通常应设定周期值为偶数,若设置为奇数,则会引起输出波形占空比的轻微失真。如果编程时设定周期单位小于2,系统默认按2进行设置。 脉冲数:用双字长无符号数表示,脉冲数取值范围是1~4294967295之间。如果编程时指定脉冲数为0,则系统默认脉冲数为1个。 (2)PTO的种类 根据管线的实现方式分: 单段管线---管线中只能存放一个脉冲串的控制参数(入口地址)。在当前脉冲串输出期间,要对下一个脉冲串的相关寄存器进行更新。当前脉冲串输出完成,即可开始输出新脉冲串。编程复杂。 多段管线---输出多个脉冲串。需要在变量存储区(V)建包络表,在包络表中存储各脉冲串的参数 ,当执行PLS指令时,CPU自动按顺序从包络表中调出各个脉冲串的入口地址,连续输出各个脉冲串。 多管线PTO 包络表由包络段数和各段构成。每段长度为8个字节,包括:脉冲周期值(16位)、周期增量值(16位)和输出脉冲数(32位)。以包络3段的包络表为例,包络表的结构如表所示。 (3)中断事件类型 高速脉冲串输出可以采用中断方式进行控制,各种型号的PLC可用的高速脉冲串输出的中断事件有两个,如表5.18所示。 (4)PTO的使用----编程要点 1.确定脉冲串的输出端及管线的实现方式(单段或多段) 2. 设置控制字节---将控制字写入SMB67或SMB77 3.写入周期值、周期增量值和脉冲数 周期增量值= (Tn+1-Tn)/N 其中:Tn-------该段开始的周期时间 Tn+1------该段结束的周期时间 N------该段脉冲数 4. 装入包络表的首地址 5.设置中断事件并全局开中断 6.执行PLS指令 3. 应用实例 (1)控制要求 步进电机转动过程中,要从A点加速到B点后恒速运行,又从C点开始减速到D点,完成这一过程时用指示灯显示。电机的转动受脉冲控制,A点和D点的脉冲频率为2kHz,B点和C点的频率为10kHz,

文档评论(0)

a336661148 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档