如题,我用ST的L6470电机驱动芯片,F091为控制芯片。现在用官方L6470的驱动程序实现控制步进电机,细分为128。最大速度设置低于1000步/秒时,正常运行不会产生太大噪音和振动,当设置最大速度超过1000步/秒时电机噪音非常大,振动厉害,当设置最大速度超过1500步/秒时,电机回出现不转的现象,并发出强烈的噪音。
上面是L6470初始化的参数设置。另外我测了一下L6470的输出电流,我逐渐把最大速度的值增加,输出电流也随之增加,但电流最大输出也就1.1A,不会超过1.1A。不知道什么原因,请问有大神用过这个芯片吗?怎么会出现这种状况的。 |
而你的电机,最大输出才1.1A。
所以,你应该看看电机的资料,
最大驱动电流是多少?
最大转速是多少?
最大支持细分步数是多少?
还有用示波器看看电机反电动势。
通常情况下,步进电机驱动电路是电流式控制设计,
电流控制器监测并控制绕组电流强度,
因为电源电压变化、停转等会导致电流有很大变化,
而且,随着转速提高或减小,电机的反电动势(BEMF)的变化也会导致绕组电流的变化。
L6470可以通过在电机绕组上施加电压来控制相电流。
虽然不能直接控制相电流的幅度,但是,
相电流与相电压的大小、负载、转矩、电机电学特性和转速密切相关。
有效输出电压与电机电源电压和补偿系数Kval的积成正比。
KVAL=((KVAL_X+BEMF_COMP)×VSCOMP ×K_THERM)×microstep
其中
KVAL_X 是当前Kval值,
BEMF_COMP 是反电动势补偿因子,
VSCOMP 是输入电压,
K_THERM 是线圈电阻补偿因子,
microstep 是当前设置的微步数。
还有,你可以利用ST公司提供的dSPIN evaluation tool可以方便地求出Kval值,
只要你把电机的各个参数代入数据框,
点击一下evaluate按键就可以求出L6470的各个补偿因子和对应寄存器值。
付上相关资料:
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分