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