直流電機(jī)的測速實(shí)驗(yàn)
一、 實(shí)驗(yàn)?zāi)康?/strong>1、 掌握直流電機(jī)的工作原理。
2、 了解開關(guān)型霍爾傳感器的工作原理和使用方法。
3、 掌握電機(jī)測速的原理。
二、 實(shí)驗(yàn)原理
直流電機(jī)是我們生活當(dāng)中常用的一種電子設(shè)備。其內(nèi)部結(jié)構(gòu)如下圖4-14-1所示:
圖4-14-1 直流電機(jī)結(jié)構(gòu)圖
下面就上圖來說明直流電機(jī)的工作原理。將直流電源通過電刷接通電樞繞組,使電樞導(dǎo)體有電流流過, 由于電磁作用,這樣電樞導(dǎo)體將會產(chǎn)生磁場。同時(shí)產(chǎn)生的磁場與主磁極的的磁場產(chǎn)生電磁力,這個(gè)電磁力作用于轉(zhuǎn)子,使轉(zhuǎn)子以一定的速度開始旋轉(zhuǎn)。這樣電機(jī)就開始工作。
為了能夠測定出電機(jī)在單位時(shí)間內(nèi)轉(zhuǎn)子旋轉(zhuǎn)了多少個(gè)周期,我們在電機(jī)的外部電路中加入了一個(gè)開關(guān)型的霍爾原件(44E),同時(shí)在電子轉(zhuǎn)子上的轉(zhuǎn)盤上加入了一個(gè)能夠使霍爾原件產(chǎn)生輸出的帶有磁場的磁鋼片。當(dāng)電機(jī)旋轉(zhuǎn)時(shí),帶動轉(zhuǎn)盤是的磁鋼片一起旋轉(zhuǎn),當(dāng)磁鋼片旋轉(zhuǎn)到霍爾器件的上方時(shí),可以導(dǎo)致霍爾器件的輸出端高電平變?yōu)榈碗娖。?dāng)磁鋼片轉(zhuǎn)過霍爾器件上方后,霍爾器件的輸出端又恢復(fù)高電平輸出。這樣電機(jī)每旋轉(zhuǎn)一周,則會使霍爾器件的輸出端產(chǎn)生一個(gè)低脈沖,我們就可以通過檢測單位時(shí)間內(nèi)霍爾器件輸出端低脈沖的個(gè)數(shù)來推算出直流電機(jī)在單位時(shí)間內(nèi)的轉(zhuǎn)速。直流電機(jī)和開關(guān)型霍爾器件的電路原理圖如下圖4-14-2所示:
圖4-14-2 直流電機(jī)、霍爾器件電路圖
電機(jī)的轉(zhuǎn)速通常是指每分鐘電機(jī)的轉(zhuǎn)速,也就是單位為rpm,實(shí)際測量過程中,為了減少轉(zhuǎn)速刷新的時(shí)間,通常都是5~10秒刷新一次。如果每6秒鐘刷新一次,那么相當(dāng)于只記錄了6秒鐘內(nèi)的電機(jī)轉(zhuǎn)數(shù),把記錄的數(shù)據(jù)乘10即得到一分鐘的轉(zhuǎn)速。最后將這個(gè)數(shù)據(jù)在數(shù)碼管上顯示出來。
最后顯示的數(shù)據(jù)因?yàn)槭菍?shù)據(jù)乘以10,也就是將個(gè)位數(shù)據(jù)的后面加上一位來做個(gè)位即可,這一位將一直為0。如:45*10變?yōu)?50,即為在“45”個(gè)位后加了一位“0”。由此可知,這個(gè)電機(jī)的轉(zhuǎn)速的誤差將是20以內(nèi)。為了使顯示的數(shù)據(jù)能夠在數(shù)碼管是顯示穩(wěn)定,在這個(gè)數(shù)據(jù)的輸出時(shí)加入了一個(gè)16位的鎖存器,把鎖存的數(shù)據(jù)送給數(shù)碼管顯示,這樣就來會因?yàn)樵谟?jì)數(shù)過程中,數(shù)據(jù)的變化而使數(shù)碼管顯示不斷變化。
三、 實(shí)驗(yàn)內(nèi)容
本實(shí)驗(yàn)要求完成的任務(wù)是通過編程實(shí)現(xiàn)電機(jī)轉(zhuǎn)數(shù)讀取,并在數(shù)碼管上顯示。其讀取數(shù)據(jù)和顯示數(shù)據(jù)的時(shí)序關(guān)系如下圖4-14-3所示:
圖4-14-3 實(shí)驗(yàn)控制信號時(shí)序圖
四、 實(shí)驗(yàn)步驟
1、 打開QUARTUSII軟件,新建一個(gè)工程。
2、 建完工程之后,再新建一個(gè)VHDL File,打開VHDL編輯器對話框。
3、 按照實(shí)驗(yàn)原理和自己的想法,在VHDL編輯窗口編寫VHDL程序,用戶可參照光盤中提供的示例程序。示例程序共提供4個(gè)VHDL源程序。每一個(gè)源程序完成一定的功能。其具體的功能如下表4-14-1:
文件名稱 | 完成功能 |
TELTCL.VHD | 在時(shí)鐘的作用下生成測頻的控制信號。 |
CNT10.VHD | 十進(jìn)制計(jì)數(shù)器。在實(shí)驗(yàn)中使用4個(gè)來進(jìn)行計(jì)數(shù) |
SEG32B.VHD | 16位的鎖存器,在鎖存控制信號的作用下,將計(jì)數(shù)的值鎖存 |
DISPLAY.VHDL | 顯示譯碼,將鎖存的數(shù)據(jù)顯示出來。 |
4、 編寫完VHDL程序后,保存起來。方法同實(shí)驗(yàn)一。
5、 將自己編寫的VHDL程序進(jìn)行編譯并生成模塊符號文件,并對程序的錯(cuò)誤進(jìn)行修改,最終所有程序通過編譯并生成模塊符號文件。其具體方法請參照實(shí)驗(yàn)六。
6、 新建一個(gè)圖形編輯文件,將已生成的模塊符號文件放入其中,并根據(jù)要求邊接起來。完成后,如下圖14-4所示:
圖14-4 編輯好的圖形設(shè)計(jì)文件
7、 將自己編輯好的的程序進(jìn)行編譯仿真,并對程序的錯(cuò)誤進(jìn)行修改,最終通過編譯。
8、 編譯仿真無誤后,根據(jù)用戶自己的要求進(jìn)行管腳分配。分配完成后,再 進(jìn)行全編譯一次,以使管腳分配生效。
9、 根據(jù)實(shí)驗(yàn)內(nèi)容用實(shí)驗(yàn)導(dǎo)線將上面管腳分配的FPGA管腳與對應(yīng)的模塊連接起來。
如果是調(diào)用的本書提供的VHDL代碼,則實(shí)驗(yàn)連線如下:
CLK: FPGA時(shí)鐘,接數(shù)字時(shí)鐘1.5M。
MOTOR:接電機(jī)模塊的SPD測速端口。
LEDAG[6..0]:接數(shù)碼管的A、B、C、D、E、F、G。
SEL[2..0]:接數(shù)碼管的SEL2、SEL1、SEL0。
10、 用下載電纜通過JTAG口將對應(yīng)的sof文件加載到FPGA中。觀察實(shí)驗(yàn)結(jié)果是否與自己的編程思想一致
五、 實(shí)驗(yàn)結(jié)果與現(xiàn)象
以設(shè)計(jì)的參考示例為例,當(dāng)設(shè)計(jì)文件加載到目標(biāo)器件后,將直流電機(jī)模塊的模式選擇到ON模式,旋轉(zhuǎn)改變轉(zhuǎn)速的電位器,使直流電機(jī)開始旋轉(zhuǎn),此時(shí)在一定的時(shí)間內(nèi),數(shù)碼管上將顯示此時(shí)直流電機(jī)的每分鐘轉(zhuǎn)速。通過電位器慢慢增加或者減少直流電機(jī)的轉(zhuǎn)動速率,此時(shí)數(shù)碼管上的數(shù)值也會相應(yīng)的增加或者減少。
六、 實(shí)驗(yàn)報(bào)告
1、 繪出仿真波形,并作說明。
2、 試編寫程序?qū)?shí)驗(yàn)的結(jié)果精確到個(gè)位。
3、將實(shí)驗(yàn)原理、設(shè)計(jì)過程、編譯仿真波形和分析結(jié)果、硬件測試結(jié)果記錄下來。