打印
[CW32F030系列]

基于CW32F030K8的增量编码器测速器

[复制链接]
658|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、方案规划
此方案拟采用Cortex-M内核单片机设计一款用于增量式旋转编码器的测速器,方案使用单片机的定时器外设,通过连接编码器的AB通道,通过捕获脉冲数量计算电机的旋转速度,通过比较AB两个通道的脉冲相对关系,确定电机的旋转方向。同时可增加RS485通信接口,可适当拓展绝对值编码器的测速。再通过相应的滤波算法,增强误差的过滤。另外增加一路RS232接口,可通过该接口与其他设备通信,输出测量出的速度值。同时滤波后的速度采用数码管或其他显示器进行显示。

二、方案选型
MCU:芯源CW32F030K8
RS232接口芯片:CH340N
RS485接口芯片:SN75176
三、选型理由
MCU选用芯源CW32F030K8,为Cortex-M0+内核,性价比高,M0+的内核,以64MHz的主频完全可以胜任数据的采集工作,至少在2500线的编码器,5000RPM可以正常采集,满足大多数应用场景,同时支持三路USRAT,可满足RS485和RS232同时使用。
RS232接口芯片选用CH340N,属于较为常用的芯片,开发简单,质量有保证。
RS485接口芯片选用SN75176,因为该芯片通信速率较高,可以轻松满足编码器的2.5M波特率要求。
四、方案设计概述

在系统上电后初始化相关外设,包括RS232和RS485的外设初始化,定时器捕获通道的初始化,初始完成后开始启动定时器进行捕获,此处有几种方式进行选择,可选用M法测速或者T法测速,或者直接采用M/T法测速,测得的速度可采用卡尔曼滤波算法进行速度的滤波,得到更加真实的速度曲线。完成后通过串口打印速度值,可通过PC端打印速度波动曲线,同时在显示设备显示速度值。
五、部分硬件电路设想


使用特权

评论回复
沙发
tpgf| | 2023-7-3 10:40 | 只看该作者
增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小,按照工作原理编码器可分为增量式和绝对式两类

使用特权

评论回复
板凳
nawu| | 2023-7-3 11:09 | 只看该作者
增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小

使用特权

评论回复
地板
aoyi| | 2023-7-3 11:30 | 只看该作者
编码器是把角位移或直线位移转换成电信号的一种装置。前者称为码盘,后者称码尺

使用特权

评论回复
5
zljiu| | 2023-7-3 11:57 | 只看该作者
旋转增量式编码器以转动时输出脉冲,通过计数设备来知道其位置,当编码器不动或停电时,依靠计数设备的内部**来记住位置

使用特权

评论回复
6
gwsan| | 2023-7-3 12:11 | 只看该作者
量式编码器转轴旋转时,有相应的脉冲输出,其旋转方向的判别和脉冲数量的增减借助后部的判向电路和计数器来实现

使用特权

评论回复
7
tfqi| | 2023-7-3 13:07 | 只看该作者
编码器轴转一圈会输出固定的脉冲,脉冲数由编码器光栅的线数决定

使用特权

评论回复
8
zhanan| | 2023-7-4 10:29 | 只看该作者
2500线的编码器,转25圈是62500,16位CNT是65535,超长位移如何处理?

使用特权

评论回复
9
zhanan| | 2023-7-4 10:43 | 只看该作者
看看我这个扩展编码器位数方案可不可行,在ATIM实现很自然,但在GTIM上取巧才能实现,有点土。可ATIM金贵啊。

https://bbs.21ic.com/icview-3311844-1-1.html

使用特权

评论回复
10
burgessmaggie| | 2023-7-10 15:13 | 只看该作者
编码器输出什么信号               

使用特权

评论回复
11
jonas222| | 2023-7-10 16:12 | 只看该作者
增量式编码器通常有两个输出信号通道(一般是A相和B相),以及一个Z相信号(用于零点检测)。将A相和B相信号连接到CW32F030K8的GPIO引脚,并连接Z相信号到另一个GPIO引脚。同时,连接编码器的电源和地线。

使用特权

评论回复
12
janewood| | 2023-7-10 16:47 | 只看该作者
配置A信号线所连接的引脚为外部中断输入模式,B信号线所连接的引脚为普通输入模式。

使用特权

评论回复
13
pl202| | 2023-7-10 17:20 | 只看该作者
信号线所连接的引脚配置外部中断触发条件。

使用特权

评论回复
14
loutin| | 2023-7-10 17:55 | 只看该作者
根据编码器的输出信号计算速度,可以使用M法、T法或者M/T法计算速度。

使用特权

评论回复
15
houjiakai| | 2023-7-10 18:31 | 只看该作者
通过中断方式读取编码器的脉冲信号。当编码器的A相或B相信号发生变化时,触发定时器的外部触发输入(ETR)中断。

使用特权

评论回复
16
hilahope| | 2023-7-10 19:05 | 只看该作者
根据读取到的脉冲数计算出当前的速度?

使用特权

评论回复
17
albertaabbot| | 2023-7-10 19:40 | 只看该作者
在中断处理函数中,根据编码器的脉冲数量和时间间隔计算测得的速度。可以使用计数器的值、定时器的预分频器和时钟频率来计算速度。

使用特权

评论回复
18
gygp| | 2023-7-10 20:14 | 只看该作者
定时器来测量编码器的脉冲频率。              

使用特权

评论回复
19
szt1993| | 2023-7-11 21:19 | 只看该作者
增量式容易发生问题感觉不如绝对值的稳定准确,尤其是突然断电的情况下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

102

主题

700

帖子

1

粉丝