-
keil怎么测量时间
测试
2023-09-14 47 -
求多任务系统中步进减速电机平稳运行的思路
调了好几天都没搞定,发现步进电机驱动起来很简单,但是要想电机转动平稳太难了,尤其是在多任务的系统中。用的是24BJY48步进减速电机,四相八拍方式,步距角是5.625°,用的是脉冲驱动方式。我的系统现在有多个任务,就是在while(1)循环中有好几个函数需要执行,步进电机驱动是其中一个,现在如果把步进电机测试函数单独放在while(1)中,如下intmain(void){while(1){motor_test();//步进电机驱动}}那么步进电机运转很丝滑,很平稳,我通过多次调试找到了延时设置为1500us时,电机运转最平稳,当然这只限于while(1)中只有这一个函数时,如果我同时运行其他任务,如下intmain(void){while(1){motor_test();//步进电机驱动read_sensor();status_update();}}voidmotor_test(){PAH;PBL;PCL;PDL;SysTick_delay_us(1500);PAH;PBH;PCL;PDL;SysTick_delay_us(1500);PAL;PBH;PCL;PDL;SysTick_delay_us(1500);PAL;PBH;PCH;PDL;SysTick_delay_us(1500);PAL;PBL;PCH;PDL;SysTick_delay_us(1500);PAL;PBL;PCH;PDH;SysTick_delay_us(1500);PAL;PBL;PCL;PDH;SysTick_delay_us(1500);PAH;PBL;PCL;PDH;SysTick_delay_us(1500);}那么,电机会转起来,但是会产生震动,怎么调整延时值都没用,1500上下的延时我都试过了,一样震动,可能有人会说,用定时器中断,我当然试过,而且调试了很长时间,一样的结果也是震动,我知道是其他程序影响了电机运转,但不至于对时间要求这么精确把?其他的程序执行会分掉时间,但不至于会影响到电机这么严重吧?实际项目中不可能只有电机控制这一个函数,肯定是多个函数一起运行的。我甚至把这两个函数read_sensor();和status_update();用时间片轮询的方法写了一遍,就是给他们分配更长的执行时间,让步进电机执行时间尽可能短,也还是不行,还是震动。真的没有思路了,大家有什么好的思路吗?可以解决震动问题
2022-08-03 16 -
两个相同的MCU如何通信
两个相同的MCU,一个作为控制芯片,一个作为显示驱动芯片,这两个芯片怎么通信
2021-04-22 11 -
步进电机低速运行振动和噪声明显,应该怎样处理?
现在的应用是需要控制步进电机在20rpm左右的转速下进行180度的往复旋转,负载非常的轻,电机带动完全没问题,用的是LV8728的步进电机驱动芯片,用4细分8细分16细分32细分都有测试,电机在运行时会振动和噪音明显,将速度调到120rpm以上振动基本消失,电机厂商反馈说可能是电机共振导致的异常,望大家不吝赐教,我应该从哪里入手来解决此问题。下载视频
2021-01-04 3 -
电机反电动势导致自举电路失效问题
驱动芯片:IR2103车子在平地跑的时候正常,没任何问题;当遇到长下坡时,车子会一直加速到很快,然后突然减速,这时用万用表测得自举电容两端的电压为0V,说明自举电路失效了。猜测反电动势上升,导致电机没有正向电流,自举电容不能充电。有什么办法能解决自举电路么?
2020-08-24 23