下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、FOC及無感控制的算法移植指南1、下載正確的FOC源代碼目前市面上主流的能驅動電機的MCU?;旧隙紟в?FOC庫。很多公司還提供可以用于修改的FOC源代碼。還有些甚至于提供了無位置算法的源代碼??梢韵螺d到代碼的有 ST, TI, MICROCHIP NXP, RENESA潞芯片公司。直接到官網下 載即可。為保證代碼的可行性,最好從官網下載代碼。不要從第三方下載。避免產生不必要的調試過程。2、找到與芯片的硬件初始化相關的代碼。ADC部分的初始化。不同的芯片,ADC工作模式不同。ADC的初始化方法以及數據采樣方法不同。ADC的采樣,根據電路結構不同。完全不同。單電阻采樣模式。需要在一個三角波內,
2、進行兩次ADC采樣。而且軟件還要特殊處理。才能做到采集的數據。這種方式下。ADC需要有一個專用的定時器配合來實現ADC采樣。兩電阻或電流傳感器方式下,ADC有兩種模式可以實現。一種是在波峰或波谷的前后一點位置處,觸發(fā)ADC 采樣。另一種方式,就是在定時器的波峰或波谷中斷進入后,第一時間進行ADC采樣。ST的ARM芯片CORTEX-M陳列,由于只有一組 ADC單元,且ADC轉換出來的結果只有一個緩沖區(qū)保 證。所以,數據采集通常采用 DMA的方式。將多個ADC采樣到的數據緩存到一個 ADC數組 中。如M3或M4等系列。MCU有兩組ADC單元??梢砸淮涡圆蓸觾蓚€通道。在波峰波谷 中斷的模式下,可以設
3、成分時采樣不同的通道。也可以用DMA方式采樣(ST的2個ADC單元,輸出結果地址是相連的。且剛好組成了一個32 位數,用DMA 方式,可以一次將兩個ADC單元的結果全部采樣出來。)RENESAS芯片,ADC的輸出結果是根據通道來設定的緩沖。因此,只需要觸發(fā)ADC即可。ADC轉換后的數據,分開存放在不同的寄存器當中。 所以,這類芯片,可以省掉DMA 的操作方法。定時器部分定時器根據電機的載頻來設定。生成三角波(遞增計數到設定值以后,開始遞減計數)。需要處理的內容,分別是互補的死區(qū)設定、中斷的方式(上溢中斷、下溢中斷、上/下溢中斷)。中斷的頻率(16K的PWM頻率,可以設定 8K的電流或4K的電流
4、環(huán)。利用中斷 次數控制來實現)。編碼器部分不同的芯片,對于正交編碼器的接口不同。接到不同的IO 引腳上。然后選擇正確的定時器資源來實現自動計數功能。FO保護(自動剎車控制)FO保護由IPM或IGBT驅動或單獨設計的電路產生信號。通過專用的保護引腳來實現 MCU 自動關閉PWM 輸出。 從而實現負載突然短路的情況下,快速關閉輸出。保護電路不受影響。 這個引腳,在很多芯片廠家,是有數字濾波參數可以設定。用來避免突然出現的小尖鋒干擾。3、FOC代碼部分一般FOC代碼函數分成:ADC采樣處理,采樣電機的電流,可以采樣IA,IB,ICo也可以采樣IA和舊(當然,采樣舊和IC也可以,但需要計算一次得到。根
5、據IA+IB+IC=0的公式可以根據其中的任意兩項電流,求出第三相的電流。單電阻采樣,也會生成IA和舊兩組電流。Clarke變換,將ADC采樣到的三相電流合成兩相電流。生成I_alpha和I_beta兩個電流。Park變換,將alpha和beta兩個電流與電相度通過三角函數的方式。合成ID和IQ電流。InvPark變換(反 Park變換),將 VD和VQ轉換成 Valpha和Vbeta.InvClarke變換(反 Clarke變換),將Valpha和Vbeta轉換成三相電壓值。扇區(qū)計算,通過三相電壓,計算出正確的扇區(qū)值。PWM 數據輸出,根據扇區(qū)值和三相電壓值,計算出三路PWM 值。4、調試技
6、巧1、確認硬件的接入正常上電后,先對IA, IB, IC的輸入AD進行監(jiān)測??纯戳泓c狀態(tài)的AD是否正常。通常零點的AD都設在1/2的VCC附近。以12位白ADC為例,這個零點的 ADC是2048 正負 100 以內。然后,對母線電壓的 ADC進行監(jiān)測。特別是用到了無位置或母線電壓補償的算法。對母線電壓的準確性,要求比較高。母線電壓太低或太高,都將導致輸出的不正常(嚴重時,電機都無法運轉)。最后, 對于有位置傳感器的硬件,旋轉一下電機。查看一下編碼器的A/B/Z, U/V/W輸入信號是否正常。2、確認IQ和ID的極性的正確。注:為防止硬件受損。程序做個最長時間的控制。進入PWM 輸出以后,最長工
7、作時間設 0.5秒到 1 秒。軟件自動關閉輸出。將PID控制部分屏蔽掉。給 VD和VQ設一個固定值??梢栽囍O定5V。根據當前的母線電壓。5/ 母線電壓*VDVQ 的最大值。例:母線是60V, VDVQ 的最大值是32768,則設定VD=5/60*32768先設VD=5V, VQ=0,用軟件示波器查看,電流檢測的IA,IB或IC, I_alpha、I_beta, ID、IQ。正確的情況下,ID比IQ大很多,且IQ基本上趨于0,ID是正數的電流。剛開始電機可能會轉一下。這是因為電機當前的角度不在0 點附近。這個時候,ID 會出現變化。但第二次以后,電機的停止位置處于0 點附近。很明顯的看到ID
8、電流是一個直線。再設VQ=5V,VD=0用軟件示波器查看,可以看到IQ電流明顯大于ID電流。且ID基本上趨于0。IQ電流是正數。通過以上操作。如果IQ 和 ID 都是正常狀態(tài)。則表示電流檢測的軟件和硬件是正確的??梢赃M入下一步操作。調試過程中,如果IQ 和 ID 出現了電流是負數。有以下幾種可能A、電流檢測的方向出錯。CurA = CurA_Offset - NowA 或 CurA = NowA - CurA_OffsetB、IA和舊的引腳對應錯了。C、 PWM 的方向可能有錯。三角波的PWM 。 0RPM 輸出的時候,PWM 輸出并不是0,而是載頻周期的一半。以 ST為例:PWM有兩種模式。
9、PWM1和PWM2兩種模式下的數值 剛好是反的。給PWM 占空比賦值的時候,一種是直接把計算值輸出。另一種是用周期-計算值輸出。3、強拖運轉測試及電流檢測標幺值檢測當第一步完成以后,就要試著強拖一次??纯措姍C是否能正常運轉。關鍵是針對有編碼器的系統。查看一下電機運轉方向所顯示出來的編碼器的AB 方向是否正確。強拖測試,可以不需要任何傳感器的介入。也不需要關心電機的UVW 動力線是否連接正確。強拖的方法:首先,設一個固定大小的IQ 數據,且初始的電角度為0。如果電機是空載,那么這個電流可以設為1A左右。這個電流下,持續(xù) 1秒鐘內,電角度始終為0, 1 秒鐘以后,電流可以減少1/2,電角度按200
10、RPM 左右的速度增加。200RPM 是機械角度。轉換成電角度時,要乘以電機的極對數。通常折算每MS 增加多少個電角度,以200RPM為例:=200/60*360/1000*PP ,其中PP為電機的極對數。這樣強拖10圈以上,就可以停止了。電流檢測標幺值正確性驗證: 最好用兩個電流探頭(如果只有一個探頭,可能需要多強拖幾次,保證所采樣的電流是正確的。最好把強拖關閉,只做定位),分別接到電機的動力線上。查看軟件設定的1A 電流,與實際的1A 是否符合。如果不符合,則需要檢查電流檢測電路是否出問題或者放大倍數計算是否有誤等。強拖環(huán)節(jié)的另一個關鍵點是,編碼器數據的方向。如AB 和 UVW 方向。因為
11、強拖是角度增加,假定這個方向為正轉。那么最好是AB 是增加。如果AB 是減少。有一個軟件辦法解決。(NOW_AB A= 0XFFFF僅PM于16位計數器),這樣操作一下??梢愿淖儤O性。4、速度傳感器的加入采用增量式編碼器的系統。速度計算,有兩種方法M和T。分別是采樣脈沖寬度(用于低速檢測)和脈沖個數(中高速)。簡單的操作,直接采用 T (計數)方法。由于低速比較難統計到個數。因此,速度采樣通常設為2MS 采樣一次。以200RPM 且編碼器為360 線為例:=200/60*( 360*4)/1000*2, 則每 2MS, AB 變化 9.6 個。速度計算采用AB 個數 *AB/1MS 對應的速度
12、。1AB/(360*4)*1000*60=41.6666RPM , 由于是 2MS 采樣一次,所以 AB/2MS=20.8333RPM,因為是小數,采用Q8 格式以后=5333,若 2MS 內,變化AB 個數為10 個,=10*5333/256=208RPM由于低速時,AB 個數變化對速度的統計影響比較大。因此,通常將速度計算分成高速和低速兩種計算結果。低速計算時,加入一級低通濾波。這樣得到的低速就會比較平滑一些。做低速控制時,電機不容易抖動。5、位置傳感器的加入(扇區(qū))當系統加入了 UVW扇區(qū)位置檢測以后, 可以使得電機啟動時, 直接在扇區(qū)內啟動,無需再增加定零位了。相當于已知當前的電角度,
13、可以快速啟動。針對 UVW 扇區(qū)傳感器,有兩種操作方式。一種是UVW 傳感器的安裝位置與轉子位置是完全固定的。因此,任意互換電機后,角度是基本上一致的。還有一種是UVW傳感器的安裝與轉子位置并非完全一致。碰到這種情況,就需要將這個電機的UVW信息與電角度做配對操作。實際上,無論是哪一種安裝方式。第一次使用FOC的時候,都有一個配對的過程。這個過程,實際上也是利用強拖來完成。以下方法,適用于帶AB 的系統操作。強拖開始時,有個定位過程。這個過程是強制電機運轉到零位。為了操作簡單化,UVW的配對操作。定位時,采用ID啾定。IQ=0的方法。這樣的操作,是為了方便后續(xù)的電角度直接使用。針對帶AB的系統
14、。強拖定位時間完成時,將 AB的當前計數清零。將當前的 UVW 信息存儲起來。強拖過程中,對UVW信息進行連續(xù)檢測。當檢測到的UVW信息與存儲起來的 UVW 信息不同時,將當前的 AB角度、扇區(qū)UVW信息存起來。并更新 UVW存儲信息。當連續(xù)檢測到2個或以上的機械角度以后。停止強拖。開始統計信息。統計時,第一步將AB角度轉換成電角度。超過一圈電角度的,取電角度的模。第二步將多組電角度進行求平均處理。得到每個扇區(qū)所對應的電角度數據。第三步將這些數據存儲起來,寫入FLASH或EEPROM中。做為以后運轉的計算用。后續(xù)電機啟動時,根據當前的扇區(qū)號。取出當前扇區(qū)的數據和下一個扇區(qū)的數據,兩者相加除2
15、(程序要處理數據越界現象),得到中間角度值。然后,以這個角度值, 直接啟動即可。且要求在檢測到下一個UVW信號沿的時候,更新一次角度(根據電機的運轉方向,賦不同方向 UVW所對應的電角度的邊沿值)。5、其它技巧1、編碼器AB個數的處理。在使用編碼器的 AB計數時,可以利用數字溢出的原理來解決極性問題。使用 16 位的寄存器全員值,0-65535,本次的計數減去上一次的計數,得到一個Delta_AB。正轉的時候,這個數字會是正向增加的。用一個有符號的16位數據來處理這個數據,非常簡單。機械角度,旋轉一圈以后,CPR*4,剛好是一圈的機械 AB個數。超過這個數據的時候,即進入下一圈的角度了。機械角
16、度也一直累加Delta_AB即可。當超過CPR*4時,減去一個CPR*4即可。當數據小于 0時,加一個 CPR*4即可。2、Q格式在計算過程中,經常會出現小數。但便宜單片機往往不支持浮點運算。因此。必須使用Q格式來完成計算。但Q格式在使用時,一定要注意。Q格式運算是有損的。Q格式的格式越大,計算的變量越大。如果超過 64位。則很難參考計算。所以, Q格式計算時,往往需要根據 變量的有效范圍,預先計算好Q格式的范圍。如果數據結果是16位,數據源在256以內,那么Q格式最大不能越過 8,否則就會出現越界現象。Q格式在數據計算時, 因為精度有限,長時間累加的時候, 容易出現數據慢慢丟失 的現象。精度要求高一的點的計算。通常保留Q格式
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025石方爆破專業(yè)施工合同
- 2025餐館合作經營合同
- 特殊人群的出行安全保障措施研究
- 網絡安全產品銷售中的技術合同法律解析
- 課題申報參考:康區(qū)佛苯藝術中的儒家人物形象演變與漢藏文化交融研究
- 環(huán)保理念下的小型機械設備創(chuàng)新設計實踐探討
- 2024年高等教育服務項目資金籌措計劃書
- 跨學科學習模式下的學生個性化發(fā)展
- 2025年人教版PEP七年級物理上冊階段測試試卷含答案
- 2025年蘇科新版必修1地理上冊階段測試試卷含答案
- 2025貴州貴陽市屬事業(yè)單位招聘筆試和高頻重點提升(共500題)附帶答案詳解
- 2024年住院醫(yī)師規(guī)范化培訓師資培訓理論考試試題
- 期末綜合測試卷(試題)-2024-2025學年五年級上冊數學人教版
- 2024年廣東省公務員錄用考試《行測》試題及答案解析
- 結構力學本構模型:斷裂力學模型:斷裂力學實驗技術教程
- 2024年貴州省中考理科綜合試卷(含答案)
- 無人機技術與遙感
- PDCA提高臥床患者踝泵運動的執(zhí)行率
- 黑色素的合成與美白產品的研究進展
- 面向機器人柔順操作的力位精準控制方法研究共3篇
- 同步輪尺寸參數表詳表參考范本
評論
0/150
提交評論