MCU定时器的CNT寄存器一般是16位的,使用定时器的编码器正交接口功能,计数周期有两种配置方法:
1、计数周期与编码器脉冲数相等

TIM_TimeBaseStructure.TIM_Period = (uint16_t)(PulseNumber) - 1u; 

好处就是转子电角度获取不用做处理,由当前CNT计数值可以很方便对应到转子电角度。

缺点则是圈数计数溢出时,位置计数没有达到有符号2进制的溢出但被强制处理,也就是说位置计数不能在数据格式里完成连续循环,这样在溢出点前后数据就不连贯。如果使用位置信息计算转速,在溢出点前后的两次位置数据相减就会得到错误的速度,这样为保证测速的连贯性,就需要对位置信息做移位处理,这样就限制了编码器脉冲数必须为2的次数,或者速度计算不采用位置数据,记录两次的圈数和脉冲,分开相减后再处理,这样就避免溢出点的问题了。但即使这样正确处理了速度计算,编码器最大支持脉冲仍不能大于65535。

2、计数周期等于65535

TIM_TimeBaseStructure.TIM_Period = 65535; 

好处很明显,这样可以保证位置信息的连贯性,速度计算也不需要特殊处理,直接使用位置信息计算就可以,并且对编码器脉冲数也没有限制,可以支持很高精度的编码器。

缺点则是无法从CNT中直接得到当前的转子电角度,需要从位置信息中处理得到,不过处理也不复杂,可以说方法2适应性更好。

转载于:https://www.cnblogs.com/zhanghankui/p/7218265.html

增量式编码器定时器配置和速度计算的处理方法相关推荐

  1. STM32之增量式编码器电机测速

    STM32之增量式编码器电机测速 编码器 编码器种类 按监测原理分类 光电编码器 霍尔编码器 按输出信号分类 增量式编码器 绝对式编码器 编码器参数 分辨率 精度 最大响应频率 信号输出形式 编码器倍 ...

  2. 11旋转编码器原理_旋转编码器的原理是什么?增量式编码器和绝对式编码器有什么区别?...

    先给出结论,最重要的区别在于:增量式编码器没有记忆,断电重启必须回到参考零位,才能找到需要的位置,而绝对式编码器,有记忆,断电重启不用回到零位,即可知道目标所在的位置. 接下来细说一下,主要包含如下的 ...

  3. 增量式编码器c语言,增量式编码器

    机器人运行过程中,电机转动会产生各种干扰信号.通过两组电源给机器人驱动系统和控制系统供电,以消除干扰对稳定性的影响. 码盘加陀螺仪的方法在应用过程中发现陀螺仪的角度会随着机械振动发生漂移,影响定位精度 ...

  4. 增量式编码器 绝对值编码器

    机器人运行过程中,电机转动会产生各种干扰信号.通过两组电源给机器人驱动系统和控制系统供电,以消除干扰对稳定性的影响. 码盘加陀螺仪的方法在应用过程中发现陀螺仪的角度会随着机械振动发生漂移,影响定位精度 ...

  5. STM32 电机教程 26 - ST MCLIB实战之增量式编码器位置传感FOC方案

    前言 磁场定向控制又称矢量控制(FOC), 本质上为控制定子电流的幅度和相位,使之产生的磁场和转子的磁场正交,以产生最大的扭矩. PMSM的磁场定向控制框图如下图所示: 本节将基于NUCLEO-F10 ...

  6. 增量式编码器和绝对式编码器的介绍

    一.编码器的分类 根据检测原理,编码器可分为光学式.磁式.感应式和电容式,根据其刻度方法及信号输出形式,可分为增量式.绝对式以及混合式三种. 1.增量式编码器 增量式编码器是直接利用光电转换原理输出三 ...

  7. 增量式编码器和绝对式编码器区别

    一.编码器的分类 根据检测原理,编码器可分为光学式.磁式.感应式和电容式,根据其刻度方法及信号输出形式,可分为增量式.绝对式以及混合式三种. 1.增量式编码器 增量式编码器是直接利用光电转换原理输出三 ...

  8. 旋转编码器详解(主要讨论增量式编码器与绝对式编码器)

    参考资料:旋转编码器的原理是什么?增量式编码器和绝对式编码器有什么区别? 0. 前言 我们在选电机时,非常注重电机的扭矩和尺寸,因为这直接决定了电机是否能按规定的运动模式拖动负载,能不能很好地布置在有 ...

  9. 基于FPGA和ABZ增量式编码器的转子位置检测

    ​​ 前言 最近在做一个使用FPGA和增量式编码器实时检测转子位置的小课题,第一次完成从硬件到软件的设计以及软硬件的联调,想做一个总结,鼓起勇气开始自己的第一次发帖.并且,在做这个课题的过程中,发现相 ...

最新文章

  1. NBT:牛瘤胃微生物组的参考基因组集
  2. git for windows
  3. 一套模块化数据中心培训资料
  4. java hadoop2.6.0 读取文件报错_java 程序访问hdfs错误 hadoop2.2.0
  5. 前端笔试题(附答案)
  6. vue检测对象值_Vue 不能检测到对象属性的添加或删除,注意!!!
  7. 12月13日 什么是help_method,session的简单理解, find_by等finder method
  8. 白话(whitening)
  9. httpd路径映射和重定向
  10. ASP.NET Core的身份认证框架IdentityServer4--(5)自定义用户登录(通过接口登录,无UI版本)...
  11. mysql oracle 区别吗_MySQL与Oracle的区别(-)
  12. 长安链技术架构与共识模块介绍
  13. 群晖DS220+ 应用小笔记
  14. 服务器网页上传附件按钮无法使用怎么解决,IE上传附件无法点击确定按钮的具体处理方法...
  15. kirin710f是什么处理器_hisiliconkirin710是什么处理器
  16. 无线路由器如何建立ftp服务器,利用无线路由器建立FTP服务器
  17. UVa:10105 Polynomial Coefficients(多项式定理)
  18. 同花顺股票交易接口定义被类实现
  19. Python之input()函数用法,如何接收单行或多行的输入多个参数
  20. SVM训练莺尾花数据集

热门文章

  1. 收藏 | 机器学习、深度学习调参手册
  2. Facebook AI何恺明等最新研究MoCo(动量对比学习)第二版,超越Hinton的SimCLR,刷新SOTA准确率...
  3. 一文读懂经典卷积网络模型——LeNet-5模型(附代码详解、MNIST数据集)
  4. rust地基蓝图在哪找_Rust错误处理的思考
  5. 数据结构期末复习之排序
  6. 对HTML标记的理解,初学者接触HTML了解一些HTML标记(1)
  7. 部编版是什么版本_教材部编版和人教版的区别
  8. 静态路由配置_10 路由器间的静态路由及OSPF路由配置
  9. 高通驱动一键安装_一键重装神器,装系统简单的超乎想象!
  10. 十二、安装redis3.2