無刷直流電機學習(3)

2021-09-29 15:11:46 字數 1893 閱讀 2561

一.內容

此次學習主要完成了無霍爾感測器的電機的程式的學習理解和相關引數的認識。

二.知識點

三段式啟動

三段式啟動是在定時器tim1的中斷處理函式中。由於電機在靜止時反電動勢為0或者反電動勢很低,無法根據反電動勢訊號確定轉子磁極的位置,因此需要等反電動勢能檢測到過0時,再切換至無刷直流電機執行狀態。

switch(motora.state)  

break;

case 1:

if(motora.pwmticks >= uspwmspd) //4000->400

if(bemf_cnt >= 36)

break;

case 2: //啟動

if (motora.pwmticks >= 8)//過濾電動勢

}

if (bemf_adc_cnt < adn) //記錄啟動過程bemf資料

if (bemf_cnt >= 50) //50次換向之後,認為達到平穩狀態

break;

case 3:

if (motora.flagbemf == 0) //未檢測到過零事件

}

}

else

else

}

if (bemf_cnt >= 800000) //50000次換向之後,停止

break;

case 4:

bldc_stop();

break;

case 5:

break;

default:

break;

} }

主要函式

bldc_switchstep(): 換相函式,和有感無刷直流電機一樣,還是六步換相;

bemf():過零點檢測函式,作為是否能夠檢測到零點的依據;

主要引數:motora.state:三段式啟動的條件引數,作為三種狀態轉換的依據;

bemf_cnt:換相次數,作為狀態是否穩定的標誌; motora.flagbemf:過零點檢測標誌;

2. 六步換相

無感無刷直流電機也是採用二二導通方式,通過六個步驟依次執行來實現控制電機的轉動

void bldc_switchstep(void)

else

motora.pwmtickspre = motora.pwmticks;

motora.flagbemf = 0;

motora.pwmticks = 0; //6步法驅動

switch (motora.step)

}

從程式中可以看出,程式的實現是通過導通兩個定時器,而關閉乙個定時器,但啟動的兩個定時器中,只有乙個設定了ccr,實際上也就是三相一相通正電,一相通負電,一相不通電,這也就是二二導通方式的實質所在,原理和有感的基本相似,只不過有感的條件引數是通過霍爾感測器得到hall序列,而無感的是通過函式計算得到的motora.step。

三、學習總結

這半個月花在學習上的時間較少,導致學習進展不大,下個月需要加緊進展。總體上來說,這個月整體上把無感無刷電機的框架建立。

無刷直流電機學習筆記3

本期學習的內容,主要是結合 現代永磁同步控制原理及matlab 一書與網上材料,對三相pmsm座標變換原理,三相電斥源逆變器 pwm 技術的基本原理以及三相 pmsm 向量控制的基本原理進行學習。1.無刷直流電機 bldc 和永磁同步電機 pmsm 的區別,可認為是設計理念中控制方式分別為方波和正弦...

無刷直流電機學習筆記10

本期的學習內容主要是 基於基波數學模型的三相永磁同步電機無感測器控制,其重點是學習滑模觀測器演算法的相關原理,並對該演算法進行詳細的分析和建模,從而正確的認識pmsm是如何獲得準確的轉子位置及轉速資訊,已到達穩定的控制效果。上一期的學習中提到,就pmsm有霍爾感測器和無霍爾感測器在foc向量控制原理...

直流電機pwm 直流電機的調速方法

直流電機的調速方法 一 概述 一是調節電樞電壓,二是調節勵磁電流,1 常見的微型直流電機,其磁場都是固定的,不可調的永磁體,所以只好調節電樞電壓。調節電樞電壓方法 常用的一是可控矽調壓法,再就是脈寬調變法 pwm pwm的h型屬於調壓調速。pwm的h橋只能實現大功率調速。國內的超大功率調速還要依靠可...