中级会员
 
- 积分
- 221
- 金钱
- 221
- 注册时间
- 2016-6-16
- 在线时间
- 56 小时
|
1金钱
背景:
直流电机驱动和霍尔编码器脉冲计数。
编码器捕获接PA1--定时器2的2通道捕获。电机驱动接PA8--定时器1的1通道PWM和PB8 --定时器4的3通道PWM。
目的:
实现对电机转动位置的定位。
思路:
两个IO驱动电机正反转,通过编码器捕获脉冲,通过脉冲数的对比,实现电机的正反转的定位。
问题:
[size=13.3333px]两种方式驱动电机:
[size=13.3333px]1 [size=13.3333px]不用pwm调速电机。只是IO高低电平驱动电机正反转,这个时候发现定时器2捕获的编码器脉冲在电机正反转的时候,是相当的,电机转的圈数也相当。但是有累积误差,循环正反转时间长了定位就不准了。
[size=13.3333px]2 用定时器1和定时器4的PA8 PB8两路单独的PWM驱动电机,对电机的正反转进行调速,以此试图消除正反转速度不一致造成的惯性影响。操作办法是正转的时候占空比100%。反转占空比50%。理论上正反转定时器2捕获的编码器脉冲应该都一样才对。但是发现,正转的时候正常,捕获脉冲10,电机转5圈,反转的时候,捕获的脉冲数量10,电机转1圈。明显捕获的脉冲不一样。
[size=13.3333px]这是为什么呢?
[size=13.3333px]我这个思路不知道合理不合理,有哪位大神做过这种应用,可否指点下。怎么消除误差,使得定位准确?
|
|