沙漠青青 发表于 2012-8-23 10:27:09

无感无刷直流电机电流过大,电源电压拉低

本人正在用AVR单片机atmega48做无霍尔传感器的无刷直流电机,现在遇到一个难题,电机是转了,但速度很慢,好像有东西堵住他一样,电流很大,电源电压被拉低,而且用示波器测量电源电压和5v电压,都是不断的在抖动,幅度很大,频率也很快。
程序中我没有测电流 ,电压来控制速度,我只是让让pwm波维持在一个恒定值(75%,改制也是电机启动的PWM波占空比),本来是启动后像减小PWM波的占空比的,例如50%,但是电机不转动,所以pwm波就一直维持在75%(以上也可以转动,当然电流更大)。
有没有高手帮忙解惑一下

enthier 发表于 2012-8-23 12:43:10

没有正确的换相导致。

沙漠青青 发表于 2012-8-23 13:06:55

enthier 发表于 2012-8-23 12:43 static/image/common/back.gif
没有正确的换相导致。

我的换相是按照两两导通的方式进行的
#define DRIVE_PATTERN_STEP1_CCW      ((1 << UL) | (1 << VH))

//! Drive pattern for commutation step 2, CCW rotation.
#define DRIVE_PATTERN_STEP2_CCW      ((1 << UL) | (1 << WH))

//! Drive pattern for commutation step 3, CCW rotation.
#define DRIVE_PATTERN_STEP3_CCW      ((1 << VL) | (1 << WH))

//! Drive pattern for commutation step 4, CCW rotation.
#define DRIVE_PATTERN_STEP4_CCW      ((1 << VL) | (1 << UH))

//! Drive pattern for commutation step 5, CCW rotation.
#define DRIVE_PATTERN_STEP5_CCW      ((1 << WL) | (1 << UH))

//! Drive pattern for commutation step 6, CCW rotation.
#define DRIVE_PATTERN_STEP6_CCW      ((1 << WL) | (1 << VH))

这是换相的代码,我也考虑过换相问题,所以换过六种相序,就是把三根相线与电机的三相线交错的相接,但结果是一样的,还是这个现象,只有正反转之分

enthier 发表于 2012-8-23 13:20:29

相序对的话那应该是时机不对,或者是本来应该换到AB相,因为检测的错误你换到了其他相。
页: [1]
查看完整版本: 无感无刷直流电机电流过大,电源电压拉低