欢迎来到天天文库
浏览记录
ID:40606463
大小:589.58 KB
页数:4页
时间:2019-08-04
《电机编码器-stm32编码器模式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、电机编码器的使&STM32的定时器编码器模式一、基础知识:编码器是小车测速反馈必不可少的模块,在做自平衡和速度的精确控制需要有编码器读取电机的转速和方向上图为编码器的示意图,中间是一个带光栅的码盘,光通过光栅,接收管接收到高电平,没通过,接收到低电平。电机旋转一圈,码盘上有多少光栅,接受管就会接收多少个高电平。我们做的自平衡是用的是SK3530高性能直流减速电机采用光栅测速单圈输出448*30个AB相脉冲也就是13440相位差90度接线说明:从白线到蓝线一次为:白线:A相;绿线:B相;红线:3.3V-5V;黑线;GND黄线和蓝线为电机两根接线柱的
2、线,通常接电机驱动。正转A相超前B相90度,也就是说,A相进入下降沿的时候,B相是高电平,反转的时候A相落后B相90度,也就是说A相进入下降沿的时候,B相是低电平,通常用法:A相接入单片机的中断IO口,B相接入单片机的普通IO口。二、stm32编码器模式接口:在通用定时器和高级定时器中有这个功能从图上中可以看出,TI1波形先于TI2波形90°时,每遇到一个边沿变化是,计数器加1(可以通过寄存器设置加减),可以看出一个光栅,被计数了4次。TI1波形后于TI2波形90°时,每遇到一次边沿变化,计数器减1。也就是说13440个脉冲计数了13440*4=
3、53760次简单的计数显示程序:由于DJ_jishu_L是int16_t即(signed)int类型数据范围-32768~32767TIM_GetCounter返回值是unsignedint类型转换为int类转动一圈DJ_jishu_L变化情况:即从0到-32768到32767到11579计数器变化值=32768+(32767-11579)=53956与之前的53760相差不大程序如下两个定时两个通道PA6PA7左电机PB6PB7右电机
此文档下载收益归作者所有