基于C8051F040的模型車無線控制系統(tǒng)的設(shè)計(jì)
2.2 控制模塊硬件設(shè)計(jì)
控制模塊使用的是Silabs公司的C8051F040單片機(jī)作為系統(tǒng)的微處理器進(jìn)行電機(jī)的控制及系統(tǒng)的其他處理工作。
控制模塊硬件圖如圖3所示(僅畫出使用的引腳)。主電機(jī)選擇了7.2 V的無刷直流電機(jī)。由于有刷電機(jī)換向是通過碳刷及整流子,但是碳刷及整流子在電機(jī)轉(zhuǎn)動時(shí)會產(chǎn)生火花,碳粉因此會造成組件損壞,而無刷直流電機(jī)是用電路來進(jìn)行換向的且體積小、易控制,因此不存在這些問題。無刷直流電動機(jī)是以自控式運(yùn)行的,所以不會像變頻調(diào)速下重載啟動的同步電機(jī)那樣在轉(zhuǎn)子上另加啟動繞組,也不會在負(fù)載突變時(shí)產(chǎn)生振蕩和失步。
無刷直流電機(jī)構(gòu)造復(fù)雜,因此對它的直接控制通過電子變速器來實(shí)現(xiàn)。根據(jù)單片機(jī)PWM信號的占空比來控制電子調(diào)速器中MOSFET的導(dǎo)通關(guān)斷時(shí)間從而控制電流,達(dá)到控制電機(jī)轉(zhuǎn)速的目的。這種方法具有電流大,輸出電流線性度高等優(yōu)點(diǎn),使電機(jī)的效率得到提高。
模型車的轉(zhuǎn)角控制是用一個(gè)舵機(jī)實(shí)現(xiàn)的。舵機(jī)的控制簡單、輸出力矩大、輸出角度精確、工作電壓低,非常適合用于模型車的轉(zhuǎn)角控制。舵機(jī)內(nèi)部有一套精密的減速齒輪組,直流電機(jī)的輸出經(jīng)這套減速齒輪減速后輸出。單片機(jī)輸出PwM信號來控制舵機(jī)的轉(zhuǎn)角,該信號進(jìn)入舵機(jī)內(nèi)部的信號調(diào)制芯片獲得直流偏置電壓,將此直流偏置電壓與內(nèi)部一個(gè)標(biāo)準(zhǔn)電路產(chǎn)生的周期為20 ms寬度為1.5 ms的基準(zhǔn)電壓比較,獲得電壓差輸出。電壓差的正負(fù)輸出到電機(jī)驅(qū)動芯片決定電機(jī)的正反轉(zhuǎn)。當(dāng)電機(jī)轉(zhuǎn)速一定時(shí),通過級聯(lián)減速齒輪帶動電位器旋轉(zhuǎn),使得電壓差為0,電機(jī)停止轉(zhuǎn)動。本文引用地址:http://www.ex-cimer.com/article/197800.htm
系統(tǒng)的電源采用了7.2 V的電池,而C8051F040的高電平是3.3 V,因此需要進(jìn)行電平轉(zhuǎn)換。本系統(tǒng)使用的是貼片式的LM1117進(jìn)行電平轉(zhuǎn)換。如圖4所示,由于該芯片的輸入、輸出的允許壓降很小,所以用了兩片規(guī)格不同的LM1117實(shí)現(xiàn)兩級電平轉(zhuǎn)換,中間再串聯(lián)二極管,利用二極管的固有壓降來滿足芯片的壓降要求。
3 軟件設(shè)計(jì)
3.1 無線模塊軟件設(shè)計(jì)
無線模塊應(yīng)用程序是將上位機(jī)的運(yùn)動控制信號發(fā)送給電機(jī)控制模塊,另外還要把微處理器的電機(jī)控制量上傳給上位機(jī)。復(fù)位時(shí)進(jìn)行系統(tǒng)初始化并開中斷,置標(biāo)志位ST,完成后系統(tǒng)進(jìn)入休眠模式(ST=00)。當(dāng)上位機(jī)有數(shù)據(jù)采集要求時(shí),通過串口與之通信,此時(shí)將會觸發(fā)系統(tǒng)的串口中斷激活系統(tǒng)。隨后,中斷服務(wù)程序?qū)⑾到y(tǒng)置為發(fā)送命令狀態(tài)(即ST=01),先解析命令信號,接著將命令信號打包發(fā)送出去,發(fā)送成功后將進(jìn)入等待接收數(shù)據(jù)模式(即ST=10)。此后,如果有數(shù)據(jù)發(fā)送過來,底層將數(shù)據(jù)上交到應(yīng)用層后,就直接將數(shù)據(jù)通過串口上傳給上位機(jī),完成一次數(shù)據(jù)傳輸。其程序流程如圖5所示。
評論