找回密码
 立即注册
查看: 1019|回复: 8

如何让采集速度更稳定?编码器获得速度的一些见解

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2024-9-26 10:26:38 | 显示全部楼层 |阅读模式
本帖最后由 王昱顺 于 2024-9-26 10:28 编辑

      
为了让电机转动的更稳定,一般会选择使用编码器进行速度闭环。但是编码器其实也有所适应的输出数据类型。
截图202409261025591981.jpg
磁编码器
      
首先,使用编码器可以采集到的一般有三种类型的数据——位置、速度、加速度。
      
这三种类型里面,不考虑累计误差的问题,从前往后转换会使得数据噪声被放大,也就是更加的不稳定,比如使用位置传感器求速度。而从前往后转换会让数据变得更加平稳,不过也会加剧累计误差。比如使用加速度传感器进行积分得到的速度,往往是带有很大漂移的。
      
而市面上常见的编码器类型一般都是磁编码器,或者如果要求不高还有用电阻当位置传感器的,比如说一些舵机。
磁编码器呢,又大致分为两种信号类型。脉冲形式和数字信号形式。
      
脉冲形式的分辨率叫XX线,意思是转一圈会输出多少个脉冲,比如说1024线就可以输出1024个脉冲,通常分辨率较低,都是128,512线这样子。
数字形式的分辨率就比较高了,一般是按照位数来的,比如12位的磁编码器就是2^12=4096。
      
正是因为上面两种接口的区别,所以延伸出来了这两种信号的特点——脉冲形式适合作为速度和位置采样,速度采样稳定性较高,准确度较高。而数字形式仅仅适合位置采样,并且一般是作为绝对位置采样出现。
      
为什么数字形式不适合作为速度采样呢?因为数字形式的编码器数据是靠通讯的来的。通讯就会出现迟滞,就会出现角度变化了,过了好一会才读走。所以如果进行位置变换速度的操作,就会引入很多脉动噪声,导致读出来的速度没办法使用。
      
不过从抗干扰和精度角度来讲,数字类型的编码器又非常适合作为位置方式的应用。因为数字形式可以进行CRC校验和多次采样的数字比较,一旦有异常值可以及时发现。
      
使用脉冲手段则并不能分辨出来干扰脉冲和实际脉冲。但是,脉冲可以根据边沿进行准确的时间采样,也就是数据本身带有准确的时间信息,所以十分适合作为速度采样。也算是各有优劣了。
      
但是,要是就想使用数字形式来读取速度呢?又应该用什么方式提高精度?
      
首先是从速度的计算公式下手,v=ds/dt
      
提高编码器分辨率和提高时间的分辨率都十分重要,因为要保证这个公式的上下两部分有效分辨率对等。
      
因为转动的时候并非完全平稳的一条速度曲线,为了避免采样速度过快使得ds为太小的数值进而导致数值的不稳定。通过实际工作中发现,优先保证ds的数值比较合适,因为保证dt的话,采样率较高可能会造成较大的数据波动,体现起来就是数据毛刺。
      
举个例子就是ds=5,dt=50us,此时计算v=0.1*3662(编码器系数)=366.2rpm
      
那么ds稍微变化一些,ds=4,dt=50us,v=292.96rpm,可以看到跨度非常大,变化高达73,这显然是令人不能接受的。
      
那么根据这个优先保证ds的思想,可以设置一个简单的由P控制的参数。
      
将角度变化量和0.25圈进行对比,通过累加完成控制dt。
      
然后通过对dt进行限制最大值(最低采样频率)和最小值(最高采样频率)。通过将dt赋给定时器初值,改变定时器计时时间的方式实现速度采样。

      
这里给出优化后的实际效果,角度数据是SPI-DMA读取的,速度数据已经是闭环情况。
截图202409261026201539.jpg


回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-9-26 12:31:28 | 显示全部楼层
分辨率,是 分辨率,价格贵的原因,低的做位置控制差点意思,高的,一般人又用不起,选项困难

点评

磁编码器mt6701,淘宝均价5元左右,也不算很贵了。 也拥有14位的单圈绝对分辨率  详情 回复 发表于 2024-9-26 13:22
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2024-9-26 13:22:45 | 显示全部楼层
科学*** 发表于 2024-9-26 12:31
分辨率,是 分辨率,价格贵的原因,低的做位置控制差点意思,高的,一般人又用不起,选项困难 ...

磁编码器mt6701,淘宝均价5元左右,也不算很贵了。
也拥有14位的单圈绝对分辨率
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-9-27 10:36:36 | 显示全部楼层
好的,推荐的好,看看去,王同学,继续加油,多多展示作品哟
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-9-27 10:42:08 | 显示全部楼层
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-9-27 10:43:11 | 显示全部楼层
是这个吗
截图202409271042535624.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-9-27 10:44:56 | 显示全部楼层
本帖最后由 科学妞妞 于 2024-9-27 10:48 编辑

在stc单片机中,怎么用呢,不会呀,单霍尔的元件,我运用是会了,梁工的例子学的。编码器,没有梁工的完整例子。
截图202409271044222166.jpg

点评

SPI接口,摒弃MOSI接口,只做输入用就可以读取了  详情 回复 发表于 2024-9-27 10:49
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2024-9-27 10:49:39 | 显示全部楼层
科学*** 发表于 2024-9-27 10:44
在stc单片机中,怎么用呢,不会呀,单霍尔的元件,我运用是会了,梁工的例子学的。编码器,没有梁工的完整 ...

SPI接口,摒弃MOSI接口,只做输入用就可以读取了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-9-28 11:18:21 | 显示全部楼层
要研究研究了,来活了
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 02:32 , Processed in 0.152513 second(s), 102 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表