【電氣工程自動化】直流無刷電機-運動控制實驗報告
《【電氣工程自動化】直流無刷電機-運動控制實驗報告》由會員分享,可在線閱讀,更多相關《【電氣工程自動化】直流無刷電機-運動控制實驗報告(15頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、小組成員 : 運動控制系統(tǒng)綜合實驗》 實驗報告 直流無刷電機實驗報告 、 實驗目的 通過對 8257 的編程控制,發(fā)出可以驅(qū)動直流無刷電機的六路 PWM 波,實現(xiàn)對電機的控制。 、 實驗原理 1. 直流無刷電機驅(qū)動原理 這部分在PPT里有詳細介紹,簡單來說就是要根據(jù)轉(zhuǎn)子上的 三個霍爾傳感器的狀態(tài)發(fā)出下一步所需的三相電流。剛開始時我 對這部分原理遲遲不能搞透徹,對著向量圖思考了好久,就是不 能把霍爾傳感
2、器的狀態(tài)和所需電流方向?qū)饋怼V饕獑栴}是那 個PPT上的向量圖沒有清楚的思考步驟,導致我把定子的磁場一 直當成轉(zhuǎn)子的看,當然搞不清楚。后來在和身邊同學交流后才明 白。然后我按照六步驅(qū)動法得到了逆時針轉(zhuǎn)動所需的霍爾狀態(tài)表, 如圖 1 左,經(jīng)驗證此狀態(tài)表是可以成功驅(qū)動電機的。 搞定逆時針轉(zhuǎn)動后我趁熱打鐵,把順時針轉(zhuǎn)動的霍爾狀態(tài)表 也寫了出來。但是最開始我想當然的以為把逆時針的狀態(tài)倒過來 對應霍爾傳感器的值電機就會反轉(zhuǎn),經(jīng)過試驗后證明這種思路是 錯誤的,電機還是逆時針轉(zhuǎn)動。我想了好久沒想明白,只好又從 頭推了一遍順時針轉(zhuǎn)動所需的狀態(tài)表,如圖一右。前后對比我們 發(fā)現(xiàn)相同霍爾狀態(tài)時, 正反所需的電流
3、恰好相反, 也即相差 180°。 再回想推導過程中實際是用下一個狀態(tài)的電流對應本狀態(tài)的霍爾 值,我一下豁然開朗。我判斷電機在某一位置時允許有 60。的誤 差,逆時針轉(zhuǎn)動時上一個狀態(tài)加上 60°,順時針轉(zhuǎn)動時則減去 60°,所以順時針逆時針轉(zhuǎn)動正好差了 180°。 霍爾傳感器的狀態(tài)和所需電流如下表: 逆時針轉(zhuǎn)動 順時針轉(zhuǎn)動 HaHbHc A B C A B C 001 - 0 + + 0 - 101 0 - + 0 + - 100 + - 0 - + 0 110 + 0 - - 0 + 010 0 +
4、 - 0 - + 011 - + 0 + - 0 2. 相序確定 上述表格中A,B,C其實是我們假定的,與霍爾元件HaHbHc 對應的ABC并不對應,所以我們還要確定一下三相相序。 考 慮到我們只給三相電機提供A正E負的電流時, 電機轉(zhuǎn)子應該 停在一個確定的位置,而這個位置對應的霍爾狀態(tài)值為010。 那么當我們?nèi)我馔ㄈ胍徽回摰碾娏鲿r, 若霍爾狀態(tài)值為01 0,此時正電流即A相,負電流即B相。按此方法即可確定相 序,所用的A正B負程序如下: void main(Toid) ?**/ /* Write your local variable definit
5、ioh here */ /*** Processor Expert internal initialization. DON'T EEMOVE THIS CODE!I PE^ lov_level_i nit(); z*** End of Frooessor Expert interna 1 initialization /* Wti t e your code1 herp *Z Cpu._DfelaylOOUG( 1.000); b2_5etVal(): Cpu_DelaylD0US(10aO^ fcr(;:) { cc=cc_GetVal(j : PESL[eFPWMl_DEV
6、ICE, PESL[eFPVMl_DEVICEr PESL[eFFWMlZDEVICEH PESL[cFF¥M:_DEVICE, PESLj eFPUM:_DEVICE. PESI[eFPVM匚DEVICE. PEbl [et 1 Uh.. PESI[eFPVMl_DEVICE, PE5L[eFFWML_DEVICE* b3_SetVal(i; 0x3000). 0x0000:: oxooaoi; OxlUUfl ; UxUjjUU]; OkOODC), PVM_SM D_ 咽ITE.^ALUE.PEG3 PUM_SH 0_fl R17E_TALUE_EEG 5 PVMZS
7、EtZLDOK,_PUM_SH0); FMB^Sh 1_TO I TE_ 恥坯氏REG 3 F V 1_ U E?丄 TE_ 9 AIUE_ EEG 5 PUJCSEILLDOK, PWM-SM1); F U1C』C 叫丄 TE_ V AlUt_kEb J PVM_S? 2二 W? ITE_VALUE_EEG 5 F¥M_5ET_LD0K” FWM_SM2); 寫在mai n里面是為了一直發(fā)出A正E負的電流。 3. 8257的編程原理 一直以來涉及到程序的地方都讓我很頭痛, 不過這次還好, codewarrior采用C語言,還是可以熟練應用的。概括說來, 我們所編寫的程序應能按
8、照上述表格發(fā)射正確的 PWM波,為 此需添加PWM模塊,并應用里面的Submodule子模塊。每個 模塊可以產(chǎn)生兩路PWM,所以我們需要三個子模塊。通過對 module里的value賦值可以控制該路波的發(fā)出與占空比, 從而 發(fā)出所有的PWM。 三、實驗中遇到的問題與解決 顯然在實驗過程中大家都碰到了許多問題,困擾我們的問題比較 多,其中比較大比較重要的有以下幾個: 1. PWM模塊的配置 雖然關于PWM模塊的設置助教老師講過一遍,但怎奈需 要配置的參數(shù)太多,前幾周我都沒能把PWM波完整的發(fā)出去, 更別提受控制的波形。好在通過查找相關資料我終于搞明白如 何調(diào)整占空比,如下所
9、示:
PWM SMnVAL2 field descriptions (continued)
Eld
Description
Pis 16-b 10、t PWM ad cyclo begins or CTRLfLDMODI j9 set. VAL2 cannot tw writlan wt?n MCTHIJLDQK] is 涮,R闘曲噸 VAL2 r&ads 惱 valu? in a Duff協(xié) and not rwc那sari詡 lh? The PWM gsneraior is curramti/ L0inQ.
PWM_SMnVAL3 field descriptions
Fiokl
Doccription
IS^O
VAL3
Vaiu&R agister 3
The 16-bit sigrwd value in thi 11、s buffered, read-^^e raster defines the go uni ^alu? to s?t PVJMM low Ttiis register is no? byta acc&ssibis.
NOTE: The VAL3 f&gist即出 BuflM&d. The value wriien doss not 仙乜 Men unu MCTRL[LDOK] is s?i and the noxl PV/*J load cyciQ begins w C'TRULDMOQ] is set, VAL3 cannal be wntten v/han MCTRL[LDOK1 is 12、 xt A nd ng VAL5 伽ds tha vallio in a burffv and not nKssaarily lhe val uq lh& PWM geno 嘲肝 i $ cu rentiy l Ling,
通過給VAL2 VAL3賦值即可控制PWM23開通的時間。這是 一個Sub里的一個頻道A,對頻道B和其他Sub方法是一樣的。
這樣我們終于可以發(fā)出6路PWM,但此時這些PWM還不受 控制,是一起輸出的,下一個問題是怎么控制 PWM的輸出。
2. PWM輸出的控制
開始時我想反正占空比是可以固定不變的, 那就控制頻道 的輸出與否就可以控制PWM的輸出了。剛好我在PWM 13、自帶 的函數(shù)庫里看到了控制某路輸出 enable/diaable的函數(shù),如下:
■抑LWI— ?- _ r ■= <-■■■ --"i -j . J h , . ■,! |- i; , i r .:. =;' _■ ■/ -=i F
in
Moiieidertdi京 dm eFle?F^ld
param
in
刑V-SW-E岷肌E PMdAfWUTof SO&iabled ?_^1JNABLE PWMAa 14、ded P'WM SM1 USAliLE - P'j',VA ouqpd 0 S1 disatied. PVVN-SU2-aSAft£ -PM4A dis^d.
PWV ,SU3 DSA3LE ? P?陥 qgh '-j S31i加閔.
PE^L{ fHtXEW.刑」RT町占SW単1型匹11… K irnlf ?n?KW. TBLOTTFU^Ar
因此就采取這種方法進行編程。但是不知為何,采用
enable/disable的方法編寫的程序就是不能正確工作,而且邏 輯上程序也沒有錯誤,在多次討論找不到錯誤后我就向身邊的 同學請教,又學會了另一種方法,即通過對三個模塊的VAL2 15、
VAL3 VAL4 VAL5的不斷賦值來控制,相關函數(shù)如下:
? PWM_ SMO_WRnE_VA_ UE_RE G J Set P^'M_SM V □! u e R eg j cto r 3.
A ■gum^nts
deviceld
in
Module idertifier - u^e eFlexPWM
param
in
Word - Value to be written to tne registers
o \oid
ft 磚 Lf i 二:
PESL i *Fl#KPW1r PKM_KM0_WRITE_7ALlTE_RFf;3r 1 ) y loctK e 16、FlexTWK, ?WH_5M0JWRITE_uaUTE_REG3, 1 I;
采用這種方式要注意每次對某個模塊復制后要加上一行
LDOK即將寄存器里的值賦給 VAL,否則VAL的值不會改變
■ PWi_5ET_L[>o*(-S?lLo-d :iks ■ liar's pararn^is can* e .sed 內(nèi) th 'logicai orccsmbinAl oni e c pv/mmsi^O|FWM_fu 1|
呵」朋甘馬■
devicyld
in
LiodulE? ideriih^r - use
param
in
F\U1_SMD Set load OkaySM 17、O Set load Okay SM1 Set had Okay SM2
PWhl SP/3 - Set load Ukav SM3 PWhi zt RO Nothing selected
Rew
o void
Era^ie:
EE:L( SflexFHM. FiW_3EI_LDO5rr I;
xm^K cncsEWi, 7Wi_£ET_H3T* FW SHOI …-);
采用這種方式還有一個好處就是可以改變占空比, 而且非常簡
單。
3. 電機連線
經(jīng)過好久的調(diào)試后PWM波終于可以按規(guī)定變化,接上電機 后電機也可以轉(zhuǎn)起來,但我們發(fā)現(xiàn)轉(zhuǎn)不一會兒電機就發(fā)出大量熱, 手摸上 18、去都受不了。而且電機轉(zhuǎn)的不太均勻,有不太強的震動。
開始時以為是電機的問題,但換了一個后還是發(fā)熱,后來經(jīng)詢問
老師后我們想到雖然電機能轉(zhuǎn),但可能電機的頻率和 PWM的變
化頻率并不一樣,電機可能沒有跟上 PWM的變化頻率。正常運
行時電機的ABC三相應該正好與PWM的三相對應,但如果 A相 接正確而BC相接反時電機也會轉(zhuǎn),只不過效率不高而且轉(zhuǎn)的不穩(wěn)。 經(jīng)過確定相序后發(fā)熱的問題也隨之消失。
四、實驗感想(???)
這次實驗主要是靠自己動手,從剛開始時什么也不會到最后 成功驅(qū)動電機,中間我們付出了很多時間和精力,但也學到了很 多。按常老師的話說這次課程主要是鍛煉我們自主學習知識的能
19、
力,特別是查找資料的能力。雖然剛開始幾周助教老師講解時我 沒聽太懂,但助教老師把相關資料都放在電腦里了,想看隨時都 可以看。 通過幾周的研究特別是查找 codewarrior 里的幫助, 我既 搞懂了原理,也明白了應該怎么實現(xiàn)。有時實在想不通某個問題 我還會和身邊的同學討論討論,大家交流一下互相的想法基本都 能解決問題。
通過這次課程我覺得我基本已經(jīng)可以花費一些時間來掌握一 門自己從沒接觸過的技能,學習的能力得到了很大的提高。常老 師對待科研的態(tài)度也給我留下了深刻印象, 對待科研一定要認真, 一點馬虎都要不得。對我們的課程我們也有一些小小的反饋,希 望老師能看一下:
首先電源轉(zhuǎn)換器看上 20、去就很危險,2 2 0 V的火線都露在表 面,說不好就有漏電的危險。 另外實驗的驅(qū)動電路經(jīng)常電到我們, 漏電比較嚴重。不過想要更換實驗設備關系到許多問題,所以我 們也只好抱怨一下。
另外希望常老師能把每個階段的任務都給我們明確一下,不 然好多次在實驗室大家都不知道該干嘛, 就坐在那兒等助教來講。 遮掩效率比較低下,也不便于有些能力強的同學自主完成任務。
步進電機實驗報告
步進電機驅(qū)動原理
與直流無刷電機相比,步進電機結(jié)構比較簡單,驅(qū)動原理也相對
簡單。其內(nèi)部接線圖如下:
REE ELU
紅 藍
黑 ELK A=—>
黃 YFL 0 1
綠GRU C——
6 Lead 21、s B ° D
RED fflT BLU
紅白藍
本次實驗用的是四步步進電機,共四根接線,兩兩一組控制 2只
線圈。為了讓電機順利轉(zhuǎn)起來,比如逆時針轉(zhuǎn)動,我們需要先給 線圈AC通正電,再給線圈BD通正電,再給AC通負電,再給BD
通負電。一個周期共四個狀態(tài),所以稱為四步步進電機。由于實 驗所用板子輸出的是三相電,所以在接線時須將 BC或AD接在同 一相,用相間電壓Uab,Ubc做AC、ED電壓。
PWM控制
通過上面的分析知道要驅(qū)動步進電機只需要按順序發(fā)出四個狀態(tài) 的PWM波即可。不過由于沒有反饋檢測,我們無法確認應該在 何時切換PWM,進入下一個狀態(tài)??紤]到電機的轉(zhuǎn)子旋轉(zhuǎn) 90 22、°
(這時需切換狀態(tài))需要一定時間,我們可以在每個狀態(tài)之間加 上延時,根據(jù)延時的多少來控制電機的轉(zhuǎn)速。程序?qū)崿F(xiàn)如下:
for(- ) {
for(- ) {
PESL(eFPWMl_DEVI匚巨 H PESL (eFPWlZDEVICE, P£5L( &FPWL_DEVI匚町 FEH(=「F真11 TFL 匚 PESL(eFPWHl_DE7ICEf PESL(eFPWMlZDEVlCE* ?ESL(eFPUMl_DEVL匚巳 PESL(eFPVKl_DEVLCEH PESL(eFPUMlZDEVrCE” Gpu_?e1aylDOUS(□);
PESL(eFPUMl D 23、EVICE, FESL(eFFWl_DEVI 匚瓦 PESL(eFPVMl_DEVICE, PESL(eFPUMl_DEVI匚E * FESL (eFPWl_DEVICE, PESL(cFPVMl_DEVrCE. PESL(eFPUMl_DEVLCE‘ FESL (eFPWl_DEVICE ” PESL(eFPVMl_DEVLCE, Cpii-IJe 1 ayl D OUS (a);
FE3L (eFFWl.E'EVICE, PESL(eFPUMl DEVICE, FESL(eFFPMl_DEVI匚巨 * FESL(eFPVMl_DEVICE* PESL(eFPUMl DEVICE, FES 24、L (eFPWl_DEVI 匚巨 * PESL(?FPVM1_DEVICE, PESL(bFPUM1_DEVLCE, FESL (eFPWl_DEVICE, |-^pu._I>e L ayl 0 OUS (a);
FESL (eFF?i_DEVICE, FESL(eFF¥Ml_DEVI匚巨 * PESL(eFPWMl_DEVLCEf FESL(aFF¥Ml_DEVI匚叵 * FESL (eFF^fl_DEVICE * PESL( eFPWl_DEVI 匚 E, FESL(eFFWl_DEVI 匚町 PESL(?FPVM1_DEVICE, PESL (sFP¥lfl_DEVI 匚 E * Cp 25、u_I>elaylDOUSCa);
PWM_SM a_WRITE^ V^1UE_EEG 3, fwmZ sm oZwriteZvaiueZeec s, PWM_SET_LDOK, PUM_£M0):
PWM_SM1_WRITE_VAlUE^REG 3.
PWH_ SM1_VRITE_7AIUE_REG 5, PW>CsETZLDOK;_PVII_SM1 ;
PWM_SH 2_WRITE_VAlUE^REG 3.
PWM_SM2_VRITE_VA1UE_REG5 f pwjCsetZldok,_PUM_SM2);
PWM_SMa VRIT^_7A1UE^REG3.
PWM_SM o 26、ZffRITEL VAlUE^REG 5, PWILSET-LDOK, p?_SM0);
PWM_SM1_7RITE^ VAlUE^REG 3.
PWM_SM1_WRITE_VAlUE^REG 5. PWILSETJDOK, PUILSMI); PWtLSM2_VRITE_VAIUE_EEG3,
PWM_SM WRITEL VAlUE^REG 5. PUH_SET_LDOR. PVH_SM2);
PWM_5M 0_ffRITE_VAlUE^REG 3. PWH_SMa WRITERVAIUE^REG5, FWM_SET_LDOK. PUH_SM0);
PWM_SM1_WRITE_VA 27、1UE_REG 3(
PWlCSHl WRITE_VA1UE KEG5, FWM_SET_LDOK, );
FWH_SM2_VRITE_VAIUE_EEG3』 PUtCSM2^WRITE_7AlUE_KEG6,
PWM_SET_LDOK. PVM_SM2);
PWM_SMa_UE?ITE_VAlUE_REG3,
PWH_SM 0 TE_VA1UE_EEG 5,
PUM_SET_LDOR. PUM_£M0);
PWM_SM1 TE_VA1UE_REG 3 *
PWM_5M1_¥RITE_VA1UE_REG 5, PWM_SET_LDOK. PUM_SM1);
PWM_SMZ_? 28、RITE_VAlifE_KEG 3 * FWH_ 5H 2_^7R I TE_VAlVE_EEG 5 *
PUMZSET_LDCK. PUM_SK2);
0x2000);
OliOOOO);
OuODOO);
0x5000);
0x0000);
O^ODQO);
OsODOO);
0x0000);
0^2000);
0x0003);
0x0000);
0x5000);
OtiDOOO^ ;
0x2000);
o?s5ooor 0x0000);
0x0000);
0x0000);
osoooor
oxoooor
oxoooor
Ok?000^
0x5 29、000^;
0^0000);
其中a可以改變,以調(diào)節(jié)轉(zhuǎn)速
a越小延遲越小,每個狀態(tài)間切
換的時間越短,電機的轉(zhuǎn)速越快。
不過由于轉(zhuǎn)子轉(zhuǎn)速有上限,所
以a不能太小,否則轉(zhuǎn)子轉(zhuǎn)速會跟不上 PWM狀態(tài)的變化,從而
出現(xiàn)震動等問題。
有了上面的程序要實現(xiàn)反轉(zhuǎn)就非常簡單了,只需AE通完正
后通DE,再通EA,再通ED即可
課程建議( ???)
1)在課程安排上, 在學期初就 30、明確地把課程目標和課程任務 告訴我們,讓我們清楚的知道這門課我們要做什么,這樣在理論 學習的時候才可以更好地掌握相關的知識。
2)在講解理論的同時結(jié)合實驗,讓我們可以邊做邊學,避免 像這學期一樣在后面實驗的過程中,忘記很多前面所學的基礎知 識。可以讓我們更扎實,更清楚明白的掌握所學的內(nèi)容。
3)建議小班教學,這個學期上課的人太多,我們覺得教學效 果不是很好,后面的同學在老師進行演示的時候,我們很多時候 無法跟上。覺得學的很不清楚。
4)希望可以再多配幾個助教,由于助教少,很多遇到的無法 解決的問題無法得到及時解決,助教經(jīng)常兩個屋子跑,很辛苦。
5)希望能出一本運動控制的實驗指導書, 這樣可以供我們清 楚明白的有條理的進行學習。
6)我們上課所用的參考資料很亂,不清晰,很多我們需要用 到的東西卻沒有,希望老師可以把所用資料進行整理,分類,這 樣可以供我們參考。
7)希望在以后的課上,如有外面公司的人來講課,希望可以 有老師在場。公司的人可能不是很了解課程進度,教學目標,可 能效果不是很好。
8)硬件的穩(wěn)定性有待加強,板子與電腦的連接不好,希望提
高其各方面得性能
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。