- 博客(2)
- 收藏
- 关注
原创 步进电机磁编码器简单位置控制
1.思路:用定时器1实现20ms中断一次,采集as5600编码器的计数值a并把数据作为上一次的值last_a,下一次进入中断把差值除以0.02即可得到每秒的计数值counter。counter / 4096 = n 转/秒。电机16细分,步距角1.8°,即3200个脉冲转一圈,将设定的脉冲值与编码器的检测值比较,进行补偿,编码器计数值没有到预定值,或者超过预定值,通过改变dir引脚控制电机正反转使得电机转到既定角度,转到既定角度后关闭电机en引脚。2.代码 ://180 / PI / 360 =
2022-02-20 20:30:21 6250
原创 步进电机正反转驱动、AS5600编码器信息读取及速度检测
步进电机基本运动1.思路: 用定时器替代mstimer2库,mstimer2底层实现是延时函数控制,delay函数占用CPU资源,使得CPU在delay函数工作时无法处理其他任务,二是delay函数延时并不精准导致步进电机运转不平稳,发热。采用定时器中断控制高低电平的转换发出频率可变的方波可以解决上述问题,中断的使用可以让CPU处理其他任务,二是方波频率可调,时间精准。arduino定时器:Timer0和timer2是8位定时器,可以存储最大计数器值255。Timer1是一个16位定时器,可以存储最大
2022-02-19 16:13:59 4833 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人