S7-200高速计数器的学习_第1页
S7-200高速计数器的学习_第2页
S7-200高速计数器的学习_第3页
S7-200高速计数器的学习_第4页
S7-200高速计数器的学习_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、中德自动化培训高速处理S7-200的高速处理功能 S7-200 自带了高速输入和高速输出功能,根据CPU的不同,所带数量不同。 高速处理与CPU自身的扫描时钟无关。只与CPU类型有关。旋转编码器 旋转编码器是用来测量转速的装置,光电式旋转编码器通过光电转换,可将输出轴的角位移、角速度等机械量转换成相应的电脉冲以数字量输出(REP)。 编码器的分类编码器按照信号电压分类:24V和5V按照信号类型分为:绝对式编码器、增量式编码器、混合式编码器 绝对值编码器为每一个轴的位置提供一个独一无二的编码数字值。 增量式编码器轴的每圈转动,增量型编码器提供一定数量的脉冲。 按照信号采集方式分为:单倍频和四倍频

2、旋转编码器单倍频模式(1X)旋转编码器四倍频模式(4X)S7-200 高速计数器基础高速计数器对CPU扫描速率无法控制的高速事件进行计数,最多可配置12种不同的操作模式。高速计数器的最高计数频率取决于CPU类型。其中CPU222和CPU221没有HSC1和HSC2S7-200 高速计数器基础 模式0、 1、 2 的计数方式S7-200 高速计数器基础 模式3、 4、 5 的计数方式S7-200 高速计数器基础 模式6、7、8 的计数方式S7-200 高速计数器基础 模式9、10、11 (1X)的计数方式S7-200 高速计数器基础 模式9、10、11 (4X)的计数方式S7-200 高速计数器

3、特殊寄存器 在使用高速计数功能的时候,需要修改系统内的部分特使寄存器。以改变我们的计数模式。 SMB36至SMB65被用于监控和控制高速计数器HSC0、HSC1和HSC2; SMB136至SMB165被用于监控和控制高速计数器HSC3、HSC4和HSC5。 下面,我们就对相应的特殊寄存器进行介绍S7-200 高速计数器特殊寄存器 控制字节 HSC0 HSC1 HSC2HSC3 HSC4HSC5说明SM37.0SM47.0SM57.0SM147.0复原现用水平控制位:0=复原现用水平高1=复原现用水平低SM47.1SM57.1起始现用水平控制位:0=起始现用水平高1=起始现用水平低SM37.2S

4、M47.2SM57.2SM147.2正交计数器的计数速率选项:0=4x计数速率1=1x计数速率SM37.3SM47.3SM57.3SM137.3SM147.3SM157.3计数方向控制位:0 = 向下计数1 = 向上计数SM37.4SM47.4SM57.4SM137.4SM147.4SM157.4向HSC写入计数方向:0 = 无更新1 = 更新方向SM37.5SM47.5SM57.5SM137.5SM147.5SM157.5向HSC写入新预设值:0 = 无更新1 = 更新预设值SM37.6SM47.6SM57.6SM137.6SM147.6SM157.6向HSC写入新当前值:0 = 无更新1

5、= 更新当前值SM37.7SM47.7SM57.7SM137.7SM147.7SM157.7启用HSC:0 = 禁用HSC1 = 启用HSCS7-200 高速计数器特殊寄存器当我们需要手动更新计数器预设值和当前值时,需要将SM*.5和SM*.6设置为1。然后,将要输入的值更新给对应计数器的特殊寄存器中载入数值HSC0HSC1HSC2HSC3HSC4HSC5新当前值SMD38SMD48SMD58SMD138SMD148SMD158新预设值SMD42SMD52SMD62SMD142SMD152SMD162S7-200 高速计数器特殊寄存器HSC0HSC1HSC2HSC3HSC4HSC5说明SM36

6、.0SM46.0SM56.0SM136.0SM146.0SM156.0未使用 SM36.1SM46.1SM56.1SM136.1SM146.1SM156.1未使用 SM36.2SM46.2SM56.2SM136.2SM146.2SM156.2未使用 SM36.3SM46.3SM56.3SM136.3SM146.3SM156.3未使用 SM36.4SM46.4SM56.4SM136.4SM146.4SM156.4未使用 SM36.5SM46.5SM56.5SM136.5SM146.5SM156.5当前计数方向状态位:0 = 向下计数;1 = 向上计数SM36.6SM46.6SM56.6SM136

7、.6SM146.6SM156.6当前值等于预设值状态位:0 = 不相等;1 = 等于SM36.7SM46.7SM56.7SM136.7SM146.7SM156.7当前值大于预设值状态位:0 = 小于或等于;1 = 大于状态位S7-200 高速计数器指令v高速计数器定义(HDEF)指令选择特定的高速计数器(HSCx)的操作模式。模式选择定义高速计数器的时钟、方向、起始和复原功能。例:将HSC0设置成计数模式1S7-200 高速计数器指令v高 速 计 数 器(HSC)指 令根 据 HSC 特 殊 内 存 位 的状 态 配 置 和控 制 高 速 计数 器。参 数 N指 定 高 速 计数 器 的 号

8、码。读取高速计数器当前值 欲存取高速计数器的计数值,您需要利用内存类型(HC)和计数器号码(例如HC0)指定高速计数器的地址。如下所示,高速计数器的当前值是只读数值,只能作为双字(32位)编址。 格式:HC高速计数器号码 例如:HC2例题编写一个高速计数程序,将I0.6的输入模式设置高速计数,为A/B正交计数,由外部信号启动和复位。当计数值为50的时候将计数值清零重新计数。项目分析: 1)项目使用模式为: A/B正交计数,由外部信号启动和复位。所以,我们选择工作模式为“11”; 2)输入端使用I0.6,我们根据模式选择定义使用的高速计数器为:HSC1(I0.6为A相,I0.7为B相, I1.0

9、为复位, I1.1为启动) 3)由于使用的是HSC1,我们需要选择CPU224以上的CPU型号例题 程序设计:在首次运行时需要对高速计数器参数初始化,初始化程序为SBR_0例题将HSC1的预设值和当前值设置为允许更新,方向允许更新,4倍频的向上计数将HSC1的计数模式设置为11将HSC1的当前值更新为0将HSC1的预设值设置为50子程序SBR_0例题设置中断为预设值=当前值,触发中断INT_0启用全局中断将设置传给HSC1子程序SBR_0例程当前值=预设值时,当前值清零设置允许更新当前值将设置传给HSC1中断程序INT_0思考练习题编写一个高速计数程序,将I0.0的输入模式设置高速计数,为A相

10、计数,B相高电平为加计数。由内部信号启动和复位。当计数值为100的时候将计数值停止计数,并将Q0.0置位。存放计数器当前值,从V100.0开始高速输出前言 S7-200自带了两个高速输出Q0.0和Q0.1(仅限DC输出) 高速输出的分类: 分为两种:PTO和PWM PTO提供方波(50%占空比)输出,配备周期和脉冲数用户控制功能。 PWM提供连续性变量占空比输出,配备周期和脉宽用户控制功能。高速输出前言脉冲周期PTO脉冲数高速输出前言脉冲周期PKW宽度高速输出关联特殊寄存器Q0.0Q0.1状态位SM66.4SM76.4PTO轮廓由于计算错误异常中止0 = 无错:1 = 异常中止SM66.5SM

11、76.5PTO轮廓由于用户命令异常中止0 = 无错:1 = 异常中止SM66.6SM76.6PTO管线溢出下溢0 = 无溢出; 1 = 溢出下溢SM66.7SM76.7PTO空闲 0 = 进行中;1 = PTO空闲高速输出关联特殊寄存器Q0.0Q0.1控制位SM67.0SM77.0PTO/PWM更新周期值 0 = 无更新;1 = 更新周期SM67.1SM77.1PWM更新脉宽时间值 0 = 无更新;1 = 更新脉宽SM67.2SM77.2PTO更新脉冲计值0 = 无更新;1 = 更新脉冲计数SM67.3SM77.3PTO/PWM选择0 = 1 S /tick;1 = 1ms/tickSM67.

12、4SM77.4PWM更新方法:0 = 异步更新;1 = 同步更新SM67.5SM77.5PTO操作:0 = 单段操作;1 = 多段操作SM67.6SM77.6PTO/PWM模式选择0= 选择PTO;1 = 选择PWMSM67.7SM77.7PTO/PWM启用0 = 禁用PTO/PWM;1 = 启用PTO/PWMQ0.0Q0.1其他PTO/PWM寄存器SMW68SMW78PTO/PWM周期值(范围:2至 65535)SMW70SMW80PWM脉宽值(范围:0至65535)SMD72SMD82PTO脉冲计值(范围:1至4294967295)SMB166SMB176进行中的段数(仅用于多段PTO操作

13、)SMW168SMW178轮廓表起始位置,用距离V0的字节偏移量表示(仅用于多段PTO操作)SMB170SMB180线性轮廓状态字节SMB171SMB181线性轮廓结果寄存器SMB172SMB182手动模式频率寄存器高速输出关联特殊寄存器经过整理,我们得到上表SMB67/77启用选择模式PTO段操作PWM更新方法脉冲计数脉宽周期16#81是PTO单段1 S/循环载入16#84是PTO单段1 S/循环载入16#85是PTO单段1 S/循环载入载入16#89是PTO单段1 S/循环载入16#8C是PTO单段1 ms/循环载入16#8D是PTO单段1 ms/循环载入载入16#A0是PTO多段1 S/循环16#A8是PTO多段1 S/循环16#D1是PWM同步1 S/循环载入16#D2是PWM同步1 S/循环载入16#D3是PWM同步1 S/循环载入载入16#D9是PWM同步1 S/循环载入16#DA是PWM同步1 S/循环载入16#DB是PWM同步1 S/循环载入载入高速输出指令例题 一台步进电机,每200个脉冲旋转一圈,我们需要它在按下I0.0后旋转20圈,速度为1圈/秒。做出设计实现功能!项目分析: 本项目使用步进电机,对于脉冲宽度没有要求,而对于发出的脉冲数有要求,采用的脉冲为PTO模式发送。发送数量为200*20=4000个脉冲。速度为1圈/S,那么脉冲的周期应当为1000/

温馨提示

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

评论

0/150

提交评论