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