浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » D S P

無位置傳感器控制系統(tǒng)軟件流程

發(fā)布時間:2008/10/28 0:00:00 訪問次數(shù):660

  主程序中main()中,首先進(jìn)行dsp內(nèi)核時鐘、各功能模塊預(yù)定標(biāo)器、ad采樣時鐘、各類外設(shè)中斷以及pwm、gp10等各個重要參數(shù)的初始化,用以設(shè)置pwm占空比、不導(dǎo)通相選擇、d上升沿觸發(fā)器觸發(fā)信號周期。另外,還包括使用無刷直流電機(jī)模型仿真得到的開環(huán)起動時間、換相標(biāo)志、電機(jī)驅(qū)動pwm換相表數(shù)組以及不導(dǎo)通相選擇數(shù)組的初始化。設(shè)定一個關(guān)鍵的換相標(biāo)志flag,以循環(huán)更替無刷直流電機(jī)的6個換相狀態(tài),因此這個換相標(biāo)志flag會在0~5問變化。程序初始化時設(shè)定一個換相數(shù)組phase[8],以及不導(dǎo)通相端電壓選擇數(shù)組floatselect[8]。換相數(shù)組中記錄著6個不同換相狀態(tài),所對應(yīng)的6路pwm驅(qū)動信號行為寄存器actr的數(shù)值。端電壓選擇表的數(shù)值代表著6個不同換相狀態(tài)時,應(yīng)當(dāng)加載在模擬多路開關(guān)adg409上的不導(dǎo)通相端電壓選擇信號。

  通過讀取電機(jī)換相表,先將電機(jī)固定在某一特定的位置上。需要注意的是,這一過程輸出pwm的占空比應(yīng)當(dāng)很小,以保證電機(jī)繞組中電流很小。通過設(shè)定好換相標(biāo)志位,讀取相應(yīng)位置的換相表,然后進(jìn)行一定時間的延時,以防止電機(jī)在固定過程中發(fā)生抖動。延時之后,使得換相標(biāo)志加1,讀取換相表數(shù)組的下一個值進(jìn)人actr寄存器,開始使電機(jī)起動,此時再進(jìn)入一個軟件循環(huán)中,以等待中斷事件的發(fā)生。利用定時器中斷進(jìn)行換相從固定相位開始啟動后,當(dāng)反電動勢是夠大時,開始準(zhǔn)各切換到閉環(huán)控制狀態(tài),在dsp程序中開啟cap中斷,準(zhǔn)各檢測第一個不導(dǎo)通相反電動勢的過零點(diǎn)以進(jìn)人cap中斷子程序。具體主函數(shù)初始化程序如附錄所示。

  無位置傳感器電機(jī)控制程序中斷事件主要包括cputirnet0定時中斷以及cap捕獲中斷,通過中斷子程序的編制,可以實現(xiàn)開環(huán)起動加速、閉環(huán)切換以及轉(zhuǎn)速計算和換相等諸多系統(tǒng)功能。

  cputimet0中斷的主要作用是在電機(jī)開環(huán)過程中,讀取開環(huán)起動時間表中的計數(shù)值開始計數(shù)。當(dāng)計數(shù)完成后,即是一定時間過后,進(jìn)入中斷后,更改換相標(biāo)志,讀取換相表的下一個數(shù)值,送人actr寄存器,以改變6路pwm的驅(qū)動信號。

  cputimet0中斷的另一個作用是用于電機(jī)閉環(huán)過程中,在檢測到不導(dǎo)通相反電動勢過零點(diǎn)之后,延時30°電角度之后進(jìn)行換相。根據(jù)過零點(diǎn)比較信號,將當(dāng)前轉(zhuǎn)速計算出電機(jī)延時30°所需要的時間,換算成cputimet0的計數(shù)值,寫人定時寄存器,以作為延時換相的參數(shù)。當(dāng)在dsp的cap端口發(fā)現(xiàn)反電動勢過零比較信號發(fā)生跳變后,就啟動cputimet0開始計數(shù),直到再次進(jìn)人定時中斷。在定時中斷子程序中,改變換相標(biāo)志位,讀取換相表中的下一個數(shù)值,以及選通不導(dǎo)通相的端電壓。

  因此,dsp中cputimer0實現(xiàn)了電機(jī)開環(huán)起動功能以及閉環(huán)之后的延時換相功能,并最終通過改變換相標(biāo)志,進(jìn)行電機(jī)的換相與不導(dǎo)通相的選擇操作。

  cap中斷的重要作用是響應(yīng)過零點(diǎn)比較信號,并計算電機(jī)轉(zhuǎn)速。每次模擬檢測電路輸出的比較信號發(fā)生跳變,即不導(dǎo)通相反電動勢過零時,dsp能夠相應(yīng)地進(jìn)人cap中斷子程序。使用cap中斷的定時器捕獲功能可以得到兩次過零點(diǎn)之間的定時器計數(shù)值,而兩次過零點(diǎn)之間的時間對電機(jī)來說是運(yùn)行了60°電角度,因此可以很容易得知延時30°電角度的時間。

  cputimet0定時中斷以及cap捕獲中斷子程序?qū)崿F(xiàn)如附錄所示。

  另外,當(dāng)無刷直流電機(jī)在每次換相和不導(dǎo)通相端電壓切換時,由于電機(jī)相電流續(xù)流以及電子開關(guān)的作用,不導(dǎo)通相端電壓會發(fā)生振蕩,有噪聲和干擾出現(xiàn),可能會導(dǎo)致模擬檢測電路產(chǎn)生虛假的過零點(diǎn)。因此,在換相標(biāo)志每次發(fā)生改變時,可以在軟件執(zhí)行上對上述干擾采取避免措施,是無位置傳感器控制系統(tǒng)提高過零點(diǎn)檢測精度的關(guān)鍵。依據(jù)cap中斷子程序中捕獲到的電機(jī)當(dāng)前運(yùn)行60°電角度cputimer0的計數(shù)值,通過計算可以得到運(yùn)行15°電角度的計數(shù)值。每次進(jìn)行換相和切換不導(dǎo)通相之后,進(jìn)行10°電角度運(yùn)行時間的延時,通過使用cputimer0定時器以實現(xiàn)延時。

  整個初始化起動過程軟件流程如圖1所示。

  無位置傳感器進(jìn)人cap中斷,對不導(dǎo)通相反電動勢過零點(diǎn)進(jìn)行響應(yīng),計算當(dāng)前電機(jī)轉(zhuǎn)速,并且進(jìn)行延時換相的程序流程如圖2所示。

  圖1 dsp初始化起動程序流程

  圖2 cap中斷子程序流程

  歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)



  主程序中main()中,首先進(jìn)行dsp內(nèi)核時鐘、各功能模塊預(yù)定標(biāo)器、ad采樣時鐘、各類外設(shè)中斷以及pwm、gp10等各個重要參數(shù)的初始化,用以設(shè)置pwm占空比、不導(dǎo)通相選擇、d上升沿觸發(fā)器觸發(fā)信號周期。另外,還包括使用無刷直流電機(jī)模型仿真得到的開環(huán)起動時間、換相標(biāo)志、電機(jī)驅(qū)動pwm換相表數(shù)組以及不導(dǎo)通相選擇數(shù)組的初始化。設(shè)定一個關(guān)鍵的換相標(biāo)志flag,以循環(huán)更替無刷直流電機(jī)的6個換相狀態(tài),因此這個換相標(biāo)志flag會在0~5問變化。程序初始化時設(shè)定一個換相數(shù)組phase[8],以及不導(dǎo)通相端電壓選擇數(shù)組floatselect[8]。換相數(shù)組中記錄著6個不同換相狀態(tài),所對應(yīng)的6路pwm驅(qū)動信號行為寄存器actr的數(shù)值。端電壓選擇表的數(shù)值代表著6個不同換相狀態(tài)時,應(yīng)當(dāng)加載在模擬多路開關(guān)adg409上的不導(dǎo)通相端電壓選擇信號。

  通過讀取電機(jī)換相表,先將電機(jī)固定在某一特定的位置上。需要注意的是,這一過程輸出pwm的占空比應(yīng)當(dāng)很小,以保證電機(jī)繞組中電流很小。通過設(shè)定好換相標(biāo)志位,讀取相應(yīng)位置的換相表,然后進(jìn)行一定時間的延時,以防止電機(jī)在固定過程中發(fā)生抖動。延時之后,使得換相標(biāo)志加1,讀取換相表數(shù)組的下一個值進(jìn)人actr寄存器,開始使電機(jī)起動,此時再進(jìn)入一個軟件循環(huán)中,以等待中斷事件的發(fā)生。利用定時器中斷進(jìn)行換相從固定相位開始啟動后,當(dāng)反電動勢是夠大時,開始準(zhǔn)各切換到閉環(huán)控制狀態(tài),在dsp程序中開啟cap中斷,準(zhǔn)各檢測第一個不導(dǎo)通相反電動勢的過零點(diǎn)以進(jìn)人cap中斷子程序。具體主函數(shù)初始化程序如附錄所示。

  無位置傳感器電機(jī)控制程序中斷事件主要包括cputirnet0定時中斷以及cap捕獲中斷,通過中斷子程序的編制,可以實現(xiàn)開環(huán)起動加速、閉環(huán)切換以及轉(zhuǎn)速計算和換相等諸多系統(tǒng)功能。

  cputimet0中斷的主要作用是在電機(jī)開環(huán)過程中,讀取開環(huán)起動時間表中的計數(shù)值開始計數(shù)。當(dāng)計數(shù)完成后,即是一定時間過后,進(jìn)入中斷后,更改換相標(biāo)志,讀取換相表的下一個數(shù)值,送人actr寄存器,以改變6路pwm的驅(qū)動信號。

  cputimet0中斷的另一個作用是用于電機(jī)閉環(huán)過程中,在檢測到不導(dǎo)通相反電動勢過零點(diǎn)之后,延時30°電角度之后進(jìn)行換相。根據(jù)過零點(diǎn)比較信號,將當(dāng)前轉(zhuǎn)速計算出電機(jī)延時30°所需要的時間,換算成cputimet0的計數(shù)值,寫人定時寄存器,以作為延時換相的參數(shù)。當(dāng)在dsp的cap端口發(fā)現(xiàn)反電動勢過零比較信號發(fā)生跳變后,就啟動cputimet0開始計數(shù),直到再次進(jìn)人定時中斷。在定時中斷子程序中,改變換相標(biāo)志位,讀取換相表中的下一個數(shù)值,以及選通不導(dǎo)通相的端電壓。

  因此,dsp中cputimer0實現(xiàn)了電機(jī)開環(huán)起動功能以及閉環(huán)之后的延時換相功能,并最終通過改變換相標(biāo)志,進(jìn)行電機(jī)的換相與不導(dǎo)通相的選擇操作。

  cap中斷的重要作用是響應(yīng)過零點(diǎn)比較信號,并計算電機(jī)轉(zhuǎn)速。每次模擬檢測電路輸出的比較信號發(fā)生跳變,即不導(dǎo)通相反電動勢過零時,dsp能夠相應(yīng)地進(jìn)人cap中斷子程序。使用cap中斷的定時器捕獲功能可以得到兩次過零點(diǎn)之間的定時器計數(shù)值,而兩次過零點(diǎn)之間的時間對電機(jī)來說是運(yùn)行了60°電角度,因此可以很容易得知延時30°電角度的時間。

  cputimet0定時中斷以及cap捕獲中斷子程序?qū)崿F(xiàn)如附錄所示。

  另外,當(dāng)無刷直流電機(jī)在每次換相和不導(dǎo)通相端電壓切換時,由于電機(jī)相電流續(xù)流以及電子開關(guān)的作用,不導(dǎo)通相端電壓會發(fā)生振蕩,有噪聲和干擾出現(xiàn),可能會導(dǎo)致模擬檢測電路產(chǎn)生虛假的過零點(diǎn)。因此,在換相標(biāo)志每次發(fā)生改變時,可以在軟件執(zhí)行上對上述干擾采取避免措施,是無位置傳感器控制系統(tǒng)提高過零點(diǎn)檢測精度的關(guān)鍵。依據(jù)cap中斷子程序中捕獲到的電機(jī)當(dāng)前運(yùn)行60°電角度cputimer0的計數(shù)值,通過計算可以得到運(yùn)行15°電角度的計數(shù)值。每次進(jìn)行換相和切換不導(dǎo)通相之后,進(jìn)行10°電角度運(yùn)行時間的延時,通過使用cputimer0定時器以實現(xiàn)延時。

  整個初始化起動過程軟件流程如圖1所示。

  無位置傳感器進(jìn)人cap中斷,對不導(dǎo)通相反電動勢過零點(diǎn)進(jìn)行響應(yīng),計算當(dāng)前電機(jī)轉(zhuǎn)速,并且進(jìn)行延時換相的程序流程如圖2所示。

  圖1 dsp初始化起動程序流程

  圖2 cap中斷子程序流程

  歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)



相關(guān)IC型號

熱門點(diǎn)擊

 

推薦技術(shù)資料

業(yè)余條件下PCM2702
    PGM2702采用SSOP28封裝,引腳小而密,EP3... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!