基于FPGA的智能小車設(shè)計(jì)
1.3 動力及轉(zhuǎn)向系統(tǒng)
本小車有左右輪兩個(gè)電機(jī)及龜機(jī)驅(qū)動。驅(qū)動電路采用了CT Microelecttonics公司的大功率直流電機(jī)驅(qū)動芯片L298,最高支持50 V電壓,最大電流為5 A,滿足大功率電動機(jī)的要求,外圍電路簡單,同時(shí),由于該芯片為雙路結(jié)構(gòu),分別控制左右電動機(jī),增加了電路的可靠性,減少了復(fù)雜性。電機(jī)控制采用PWM脈沖寬度調(diào)制方式來控制汽車的前進(jìn)速度。由NiosⅡCPU寫入控制字,可得到不同占空比的PWM驅(qū)動信號,此PWM信號送入電機(jī)驅(qū)動芯片的控制端來調(diào)節(jié)速度。
1.4 小車自動避障系統(tǒng)
小車自動避障系統(tǒng)采用Verilog HDL語言編寫驅(qū)動電路。該模塊(見圖2中的MOTOR)和一個(gè)數(shù)據(jù)選擇器(見圖2中的select_2)相連來實(shí)現(xiàn)自動避障與人工遙控之間的切換。當(dāng)小車上NiosⅡCPU的SEL管腳輸出低電平時(shí),數(shù)據(jù)選擇器將把該模塊的輸出作為電機(jī)的控制指令。這樣設(shè)計(jì)的好處在于設(shè)計(jì)具有響應(yīng)迅速,不需要NiosⅡCPU參與,提高了CPU處理濕度、溫度數(shù)據(jù)并控制無線模塊收發(fā)數(shù)據(jù)的效率。該邏輯電路的工作原理是根據(jù)紅外傳感器發(fā)回來的數(shù)據(jù),經(jīng)過邏輯判斷來控制電機(jī)的工作狀態(tài)。本文引用地址:http://butianyuan.cn/article/162206.htm
1.5 小車的人工控制
小車的人工控制和自動避障之間的轉(zhuǎn)換由一個(gè)數(shù)據(jù)選擇器控制,當(dāng)小車上NiosⅡCPU的SEL管腳輸出高電平時(shí),數(shù)據(jù)選擇器將把無線模塊所發(fā)送過來的指令作為電機(jī)的控制指令,實(shí)現(xiàn)了對小車的無線控制。
1.6 溫度和濕度測量
在溫度測量系統(tǒng)中,采用抗干擾能力強(qiáng)的新型數(shù)字溫度傳感器DS18B20,該系統(tǒng)設(shè)計(jì)中將DS18B20的1,3引腳分別接于FPGA板的GND和+3.3 V管腳,2引腳接FPGA的I/O腳,傳輸控制及數(shù)據(jù)信號。DS18B20最高可用12位表示溫度值,最高5位為符號位。
采用HS1101濕度傳感器,具有響應(yīng)速度快,工作溫區(qū)寬(-40~+100℃),測量范圍大(0%~100%RH),可靠性高,穩(wěn)定性好,功耗低,外圍電路簡單等優(yōu)點(diǎn)。
工作原理為:用HS1101傳感器與TLC555構(gòu)成多諧振蕩器,HS1101傳感器內(nèi)部電容會隨濕度的變化而變化,從而使輸出頻率發(fā)生變化。編寫VHDL程序在FPGA設(shè)計(jì)一個(gè)頻率計(jì)可精確的測出頻率值,通過輸出頻率與濕度的關(guān)系便可得到濕度值。
1.7 無線收發(fā)系統(tǒng)
系統(tǒng)采用PTR4000無線嵌入式模塊,工作頻率為2.4 GHz,最高工作速率可達(dá)1 Mb/s,高效GMSK調(diào)制,且有CRC檢錯(cuò)功能。具有低功耗,抗干擾能力強(qiáng),體積小等優(yōu)點(diǎn)。主要有三種工作模式,分別為:配置模式、ShockBurst發(fā)送模式和ShockBurst接收模式。
2 軟件設(shè)計(jì)和調(diào)試
采用NiosⅡ進(jìn)行C語言編程。NiosⅡ集成開發(fā)環(huán)境(IDE)是NlosⅡ系列嵌入式處理器的基本軟件開發(fā)工具。所有軟件開發(fā)任務(wù)都可以在NiosⅡIDE下完成,包括編輯、編譯和調(diào)試程序。NiosⅡIDE是基于開放式的、可擴(kuò)展Eclipse IDE project工程以及EclipseC/C++開發(fā)工具(CDT)工程,NiosⅡIDE為GCC編譯器提供了一個(gè)圖形化用戶界面,可以支持標(biāo)準(zhǔn)C。NiosⅡIDE編譯環(huán)境自動地生成一個(gè)基于用戶特定系統(tǒng)配置(SoPC Builder生成的SoPC文件)的makefile,有利于程序的開發(fā)。
評論