《【電氣工程自動(dòng)化】直流無刷電機(jī)~運(yùn)動(dòng)控制實(shí)驗(yàn)報(bào)告》由會(huì)員分享,可在線閱讀,更多相關(guān)《【電氣工程自動(dòng)化】直流無刷電機(jī)~運(yùn)動(dòng)控制實(shí)驗(yàn)報(bào)告(12頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、
?運(yùn)動(dòng)控制系統(tǒng)綜合實(shí)驗(yàn)?
實(shí)驗(yàn)報(bào)告
小組成員:
直流無刷電機(jī)實(shí)驗(yàn)報(bào)告
一、 實(shí)驗(yàn)?zāi)康?
通過對(duì)8257的編程控制,發(fā)出可以驅(qū)動(dòng)直流無刷電機(jī)的六路PWM波,實(shí)現(xiàn)對(duì)電機(jī)的控制。
二、 實(shí)驗(yàn)原理
1. 直流無刷電機(jī)驅(qū)動(dòng)原理
這局部在PPT里有詳細(xì)介紹,簡(jiǎn)單來說就是要根據(jù)轉(zhuǎn)子上的三個(gè)霍爾傳感器的狀態(tài)發(fā)出下一步所需的三相電流。剛開場(chǎng)時(shí)我對(duì)這局部原理遲遲不能搞透徹,對(duì)著向量圖思考了好久,就是不能把霍爾傳感器的狀態(tài)和所需電流方向?qū)?yīng)起來。主要問題是那個(gè)PPT上的向量圖沒有清楚的思考步驟,導(dǎo)致我把定子的磁場(chǎng)一直當(dāng)
2、成轉(zhuǎn)子的看,當(dāng)然搞不清楚。后來在和身邊同學(xué)交流后才明白。然后我按照六步驅(qū)動(dòng)法得到了逆時(shí)針轉(zhuǎn)動(dòng)所需的霍爾狀態(tài)表,如圖1左,經(jīng)歷證此狀態(tài)表是可以成功驅(qū)動(dòng)電機(jī)的。
搞定逆時(shí)針轉(zhuǎn)動(dòng)后我趁熱打鐵,把順時(shí)針轉(zhuǎn)動(dòng)的霍爾狀態(tài)表也寫了出來。但是最開場(chǎng)我想當(dāng)然的以為把逆時(shí)針的狀態(tài)倒過來對(duì)應(yīng)霍爾傳感器的值電機(jī)就會(huì)反轉(zhuǎn),經(jīng)過試驗(yàn)后證明這種思路是錯(cuò)誤的,電機(jī)還是逆時(shí)針轉(zhuǎn)動(dòng)。我想了好久沒想明白,只好又從頭推了一遍順時(shí)針轉(zhuǎn)動(dòng)所需的狀態(tài)表,如圖一右。前后比照我們發(fā)現(xiàn)一樣霍爾狀態(tài)時(shí),正反所需的電流恰好相反,也即相差180°。再回想推導(dǎo)過程中實(shí)際是用下一個(gè)狀態(tài)的電流對(duì)應(yīng)本狀態(tài)的霍爾值,我一下豁然開朗。我判斷電機(jī)在某一位置時(shí)允許
3、有60°的誤差,逆時(shí)針轉(zhuǎn)動(dòng)時(shí)上一個(gè)狀態(tài)加上60°,順時(shí)針轉(zhuǎn)動(dòng)時(shí)那么減去60°,所以順時(shí)針逆時(shí)針轉(zhuǎn)動(dòng)正好差了180°。
霍爾傳感器的狀態(tài)和所需電流如下表:
逆時(shí)針轉(zhuǎn)動(dòng)
順時(shí)針轉(zhuǎn)動(dòng)
HaHbHc
A
B
C
A
B
C
001
-
0
+
+
0
-
101
0
-
+
0
+
-
100
+
-
0
-
+
0
110
+
0
-
-
0
+
010
0
+
-
0
-
+
011
-
+
0
+
-
0
2. 相序確定
上述表格中A,B,C其實(shí)是我們假定的,與霍爾元件HaHbHc對(duì)應(yīng)
4、的ABC并不對(duì)應(yīng),所以我們還要確定一下三相相序。考慮到我們只給三相電機(jī)提供A正B負(fù)的電流時(shí),電機(jī)轉(zhuǎn)子應(yīng)該停在一個(gè)確定的位置,而這個(gè)位置對(duì)應(yīng)的霍爾狀態(tài)值為010。那么當(dāng)我們?nèi)我馔ㄈ胍徽回?fù)的電流時(shí),假設(shè)霍爾狀態(tài)值為010,此時(shí)正電流即A相,負(fù)電流即B相。按此方法即可確定相序,所用的A正B負(fù)程序如下:寫在main里面是為了一直發(fā)出A正B負(fù)的電流。
3. 8257的編程原理
一直以來涉及到程序的地方都讓我很頭痛,不過這次還好,codewarrior采用C語言,還是可以熟練應(yīng)用的。概括說來,我們所編寫的程序應(yīng)能按照上述表格發(fā)射正確的PWM波,為此需添加PWM模塊,并應(yīng)用里面的Submodule子模
5、塊。每個(gè)模塊可以產(chǎn)生兩路PWM,所以我們需要三個(gè)子模塊。通過對(duì)module里的value賦值可以控制該路波的發(fā)出與占空比,從而發(fā)出所有的PWM。
三、 實(shí)驗(yàn)中遇到的問題與解決
顯然在實(shí)驗(yàn)過程家都碰到了許多問題,困擾我們的問題比擬多,其中比擬大比擬重要的有以下幾個(gè):
1. PWM模塊的配置
雖然關(guān)于PWM模塊的設(shè)置助教教師講過一遍,但怎奈需要配置的參數(shù)太多,前幾周我都沒能把PWM波完整的發(fā)出去,更別提受控制的波形。好在通過查找相關(guān)資料我終于搞明白如何調(diào)整占空比,如下所示:
通過給VAL2、VAL3賦值即可控制PWM23開通的時(shí)間。這是一個(gè)Sub里的一個(gè)頻道A,對(duì)頻道B和其他Sub方法是
6、一樣的。
這樣我們終于可以發(fā)出6路PWM,但此時(shí)這些PWM還不受控制,是一起輸出的,下一個(gè)問題是怎么控制PWM的輸出。
2. PWM輸出的控制
開場(chǎng)時(shí)我想反正占空比是可以固定不變的,那就控制頻道的輸出與否就可以控制PWM的輸出了。剛好我在PWM自帶的函數(shù)庫里看到了控制某路輸出enable/diaable的函數(shù),如下:
因此就采取這種方法進(jìn)展編程。但是不知為何,采用enable/disable的方法編寫的程序就是不能正確工作,而且邏輯上程序也沒有錯(cuò)誤,在屢次討論找不到錯(cuò)誤后我就向身邊的同學(xué)請(qǐng)教,又學(xué)會(huì)了另一種方法,即通過對(duì)三個(gè)模塊的VAL2、VAL3、VAL4、VAL5的不斷賦值來控
7、制,相關(guān)函數(shù)如下:
采用這種方式要注意每次對(duì)某個(gè)模塊復(fù)制后要加上一行LDOK,即將存放器里的值賦給VAL,否那么VAL的值不會(huì)改變。采用這種方式還有一個(gè)好處就是可以改變占空比,而且非常簡(jiǎn)單。
3. 電機(jī)連線
經(jīng)過好久的調(diào)試后PWM波終于可以按規(guī)定變化,接上電機(jī)后電機(jī)也可以轉(zhuǎn)起來,但我們發(fā)現(xiàn)轉(zhuǎn)不一會(huì)兒電機(jī)就發(fā)出大量熱,手摸上去都受不了。而且電機(jī)轉(zhuǎn)的不太均勻,有不太強(qiáng)的震動(dòng)。開場(chǎng)時(shí)以為是電機(jī)的問題,但換了一個(gè)后還是發(fā)熱,后來經(jīng)詢問教師后我們想到雖然電機(jī)能轉(zhuǎn),但可能電機(jī)的頻率和PWM的變化頻率并不一樣,電機(jī)可能沒有跟上PWM的變化頻率。正常運(yùn)行時(shí)電機(jī)的ABC三相應(yīng)該正好與PWM的三相對(duì)應(yīng),
8、但如果A相接正確而BC相接反時(shí)電機(jī)也會(huì)轉(zhuǎn),只不過效率不高而且轉(zhuǎn)的不穩(wěn)。經(jīng)過確定相序后發(fā)熱的問題也隨之消失。
四、 實(shí)驗(yàn)感想〔???〕
這次實(shí)驗(yàn)主要是靠自己動(dòng)手,從剛開場(chǎng)時(shí)什么也不會(huì)到最后成功驅(qū)動(dòng)電機(jī),中間我們付出了很多時(shí)間和精力,但也學(xué)到了很多。按常教師的話說這次課程主要是鍛煉我們自主學(xué)習(xí)知識(shí)的能力,特別是查找資料的能力。雖然剛開場(chǎng)幾周助教教師講解時(shí)我沒聽太懂,但助教教師把相關(guān)資料都放在電腦里了,想看隨時(shí)都可以看。通過幾周的研究特別是查找codewarrior里的幫助,我既搞懂了原理,也明白了應(yīng)該怎么實(shí)現(xiàn)。有時(shí)實(shí)在想不通某個(gè)問題我還會(huì)和身邊的同學(xué)討論討論,大家交流一下互相的想法根本都能解決
9、問題。
通過這次課程我覺得我根本已經(jīng)可以花費(fèi)一些時(shí)間來掌握一門自己從沒接觸過的技能,學(xué)習(xí)的能力得到了很大的提高。常教師對(duì)待科研的態(tài)度也給我留下了深刻印象,對(duì)待科研一定要認(rèn)真,一點(diǎn)馬虎都要不得。對(duì)我們的課程我們也有一些小小的反應(yīng),希望教師能看一下:
首先電源轉(zhuǎn)換器看上去就很危險(xiǎn),220V的火線都露在外表,說不好就有漏電的危險(xiǎn)。另外實(shí)驗(yàn)的驅(qū)動(dòng)電路經(jīng)常電到我們,漏電比擬嚴(yán)重。不過想要更換實(shí)驗(yàn)設(shè)備關(guān)系到許多問題,所以我們也只好抱怨一下。
另外希望常教師能把每個(gè)階段的任務(wù)都給我們明確一下,不然好屢次在實(shí)驗(yàn)室大家都不知道該干嘛,就坐在那兒等助教來講。遮掩效率比擬低下,也不便于有些能力強(qiáng)的同學(xué)自主完成
10、任務(wù)。
步進(jìn)電機(jī)實(shí)驗(yàn)報(bào)告
一、 步進(jìn)電機(jī)驅(qū)動(dòng)原理
與直流無刷電機(jī)相比,步進(jìn)電機(jī)構(gòu)造比擬簡(jiǎn)單,驅(qū)動(dòng)原理也相對(duì)簡(jiǎn)單。其部接線圖如下:
本次實(shí)驗(yàn)用的是四步步進(jìn)電機(jī),共四根接線,兩兩一組控制2只線圈。為了讓電機(jī)順利轉(zhuǎn)起來,比方逆時(shí)針轉(zhuǎn)動(dòng),我們需要先給線圈AC通正電,再給線圈BD通正電,再給AC通負(fù)電,再給BD通負(fù)電。一個(gè)周期共四個(gè)狀態(tài),所以稱為四步步進(jìn)電機(jī)。由于實(shí)驗(yàn)所用板子輸出的是三相電,所以在接線時(shí)須將BC或AD接在同一相,用相間電壓Uab,Ubc做AC、BD電壓。
二、 PWM控制
通過上面的分析知道要驅(qū)動(dòng)步進(jìn)電機(jī)只需要按順序發(fā)出四個(gè)狀態(tài)的PWM波即可。不過由于沒有反應(yīng)檢測(cè),我們無
11、法確認(rèn)應(yīng)該在何時(shí)切換PWM,進(jìn)入下一個(gè)狀態(tài)??紤]到電機(jī)的轉(zhuǎn)子旋轉(zhuǎn)90°〔這時(shí)需切換狀態(tài)〕需要一定時(shí)間,我們可以在每個(gè)狀態(tài)之間加上延時(shí),根據(jù)延時(shí)的多少來控制電機(jī)的轉(zhuǎn)速。程序?qū)崿F(xiàn)如下:
其中a可以改變,以調(diào)節(jié)轉(zhuǎn)速。a越小延遲越小,每個(gè)狀態(tài)間切換的時(shí)間越短,電機(jī)的轉(zhuǎn)速越快。不過由于轉(zhuǎn)子轉(zhuǎn)速有上限,所以a不能太小,否那么轉(zhuǎn)子轉(zhuǎn)速會(huì)跟不上PWM狀態(tài)的變化,從而出現(xiàn)震動(dòng)等問題。
有了上面的程序要實(shí)現(xiàn)反轉(zhuǎn)就非常簡(jiǎn)單了,只需AB通完正后通DB,再通BA,再通BD即可
課程建議〔???〕
1〕在課程安排上,在學(xué)期初就明確地把課程目標(biāo)和課程任務(wù)告訴我們,讓我們清楚的知道這門課我們要做什么,這樣在理
12、論學(xué)習(xí)的時(shí)候才可以更好地掌握相關(guān)的知識(shí)。
2〕在講解理論的同時(shí)結(jié)合實(shí)驗(yàn),讓我們可以邊做邊學(xué),防止像這學(xué)期一樣在后面實(shí)驗(yàn)的過程中,忘記很多前面所學(xué)的根底知識(shí)??梢宰屛覀兏鷮?shí),更清楚明白的掌握所學(xué)的容。
3〕建議小班教學(xué),這個(gè)學(xué)期上課的人太多,我們覺得教學(xué)效果不是很好,后面的同學(xué)在教師進(jìn)展演示的時(shí)候,我們很多時(shí)候無法跟上。覺得學(xué)的很不清楚。
4〕希望可以再多配幾個(gè)助教,由于助教少,很多遇到的無法解決的問題無法得到及時(shí)解決,助教經(jīng)常兩個(gè)屋子跑,很辛苦。
5〕希望能出一本運(yùn)動(dòng)控制的實(shí)驗(yàn)指導(dǎo)書,這樣可以供我們清楚明白的有條理的進(jìn)展學(xué)習(xí)。
6〕我們上課所用的參考資料很亂,不清晰,很多我們需要用到的東西卻沒有,希望教師可以把所用資料進(jìn)展整理,分類,這樣可以供我們參考。
7〕希望在以后的課上,如有外面公司的人來講課,希望可以有教師在場(chǎng)。公司的人可能不是很了解課程進(jìn)度,教學(xué)目標(biāo),可能效果不是很好。
8〕硬件的穩(wěn)定性有待加強(qiáng),板子與電腦的連接不好,希望提高其各方面得性能。
12 / 12