摘 要: 智能車設計中遠程端及控制端采用單片機作為主控制器,遠程端即小車端接收到控制端發送過來的控制信號,實現自身轉向、姿態變換等動作,姿態傳感器安裝在人的手背上作為控制端,通過無線裝置將相關參數傳輸到小車上的接收裝置,接收器接收到相應參數后,處理器執行相應濾波算法,發送指令,從而實現遠程遙控。設計中按照低功耗、高精度原則進行器件選型,主控制器部分、電機驅動等硬件電路設計力求經濟性和精簡性。軟件設計充分發揮軟件控制靈活方便的特點,實現了小車的平穩性和精確變換姿態等功能,所實現的智能車可應用于醫療、娛樂等各個領域。
關鍵詞: 體感控制; 智能車; 陀螺儀; 無線傳輸
中圖分類號: TN710?34 文獻標識碼: A 文章編號: 1004?373X(2016)03?0155?04
Design of smart car based on motion sensing control
CHEN Yumin1, XIE Wei1, MENG Xianmin2
(1. College of Information, Harbin Institute of Technology at Weihai, Weihai 264209, China; 2. Shandong Kaer Electric Co., Ltd., Weihai 264209, China)
Abstract: The MCU is taken as the main controller of the remote end and control end in the design of smart car. The car in the remote end can receive the control signal transmitted from the control end to realize the actions of self?turning and attitude transform. The attitude sensor is mounted on the back of the hand as the control end, and transmits the relevant parameters to the receiving device of the car by wireless transmitters. The controller executes the corresponding filtering algorithm after receiving the relevant parameters, and sends instructions to realize remote control. The devices are selected according to the principles of low power consumption and high precision in the design. The hardware circuit design including master controller and motor drive should conform to the requirement of economy and simplification. The software design gives full play to the characteristics of the flexible software control to implement the functions of stability and accurate attitude transform of the car. The implemented smart car can be applied to the medical treatment, entertainment, and other fields.
Keywords: motion sensing control; smart car; gyroscope; wirelless transmission
伴隨汽車工業蓬勃發展,體感遙控車設計剛處于起步階段,在電子設計的智能化領域中,應用單片機控制、遠程遙控等各種技術 [1?2]。體感控制小車即人們可以使用肢體動作直接控制遠程端的小車做出各種姿態的變化。本設計中將遙控控制端安裝在人的手背上,通過人手的姿態變化得到小車的姿態控制信號,最終實現小車的遠程控制。增加使用者較高的用戶體驗,增強小車的實用性,在控制端安裝了無線發射裝置,在小車端安裝了無線接收器。其設計思想可以應用在醫療、娛樂等領域,例如體感控制的輪椅和體感控制的游戲。
1 體感遙控智能車的整體設計方案
1.1 體感遙控智能車實現功能
體感控制小車是對兩輪自平衡車或者自平衡平臺的一種延續和擴展應用。通過增加遙控控制端得到小車的控制信號,即將姿態采集器安裝在手背上,為了減少控制端的體積和質量,設計無線控制模塊傳輸參數。小車端可以實現獨立行走,當接收到遙控端信號時實現自身相應的姿態變化。
1.2 總體方案設計
根據需要設計的功能,控制端分為單片機、無線傳輸模塊、姿態傳感器;小車端分為測距模塊、電機驅動模塊、液晶顯示模塊及無線傳輸模塊,系統模塊圖如圖1所示。其中,直流電機的速度使用PWM方式控制,使用89C52的定時器1,它是16位定時器,通過定時輸出周期變化的矩形波,加載矩形波到電機上,為了實現兩個電機的無差速控制,需要對小車增加測量裝置以實現閉環控制。
2 硬件結構
2.1 單片機模塊
本設計采用的主控制芯片為STC公司生產的嵌入式微處理器STC89C52RC單片機。STC89C52RC單片機是新一代高速、超強抗干擾、低功耗的單片機[3?4]。指令代碼與傳統STC8051單片機完全兼容,片上RAM有集成的512 B,工作電壓為5 V,32個通用I/O口,可作為看門狗或E2PROM使用,使用中無需專用編程器或仿真器,應用串口直接下載用戶程序,有3個16位定時器/計數器及4路外部中斷,具有外部中斷喚醒功能和低功耗, STC89C52RC單片機運行可靠性好、速度高、性價比高。
2.2 電機驅動模塊
直流電機采用直流電機驅動芯片L298,驅動電流可達1.2 A,外圍器件較簡單。選用兩個減速電機,通過PWM控制電機的轉速,通過單片機輸出高、低電平控制小車的前進、左轉、右轉、后退。P0.0與P0.1引腳控制A電機,P0.2與P0.3引腳控制B電機。電機驅動控制表如表1所示。
2.3 無線傳輸模塊
無線傳輸模塊使用NORDIC公司生產的nRF24L01[5?6]。其工作頻段在2.4~2.5 GHz,可選擇設置SPI接口進行控制,傳輸速率可為1 Mb/s或2 Mb/s,其正常工作兼容電平為3.3 V,由于本設計中單片機輸出電平為5 V,為使無線模塊正常傳輸,需要設計電壓轉化電路,如圖2所示。
2.4 超聲波測距模塊
超聲波傳感器通過發送一個超聲波和提供一個對應于爆裂回聲返回到傳感器所需時間的輸出脈沖來工作。程序流程如圖3所示,整個系統由信號發生電路和信號接收電路組成。單片機發出40 kHz的信號后,超聲波發射器輸出接收到的放大信號,接收器接收到信號后,啟動單片機程序測出傳輸時間,經過計算得到距離數傳給顯示器顯示。
2.5 MPU6050模塊
MPU6050整合了3軸陀螺儀、3軸加速度傳感器等性能[7?8]。單片機與MPU6050進行數據交換時,采用I2C總線連接,其SCL和SDL兩個引腳與單片機的I/O口直接相連,其模塊原理圖如圖4所示。
MPU6050數據處理中,加速度計、陀螺儀主要用來檢測車體傾斜角和傾斜角的變化速度,在角度測量時,除了小車角度變化的信號外,還伴隨著因車體運動而產生的噪聲,這個噪聲會隨著車體運動速度的增大而增加。本系統中采用微控制器循環采樣來獲取陀螺儀的角速率信息,這樣長時間的工作輸出數據就會受到噪聲干擾。為了獲取車體傾角值的準確值,需要對加速度計和陀螺儀的輸出進行融合,本設計采用卡爾曼濾波的方法進行數據融合,卡爾曼濾波是一種遞歸算法[9?10]。需要對[K]時刻車體的實際角度值估算。先根據[K-1]時刻角度預測值得到[K]時刻的角度值,再根據[K]時刻的預測角度值和高斯噪聲的方差,進行遞歸運算,直到得到最優的遙控傾斜角度值。單片機通過I2C總線獲得的數據不能直接作為控制信號使用,需要對得到的數據進行換算,以下為MPU6050姿態的變化坐標,如圖5所示。
俯仰角[α:]水平面和傳感器坐標系[X]軸的夾角。當[X]軸正半軸在過坐標原點水平面上時,俯仰角為正,反之為負。
偏航角[γ:]傳感器坐標系的[X]軸的水平投影與地面坐標系[X]軸(指向目標為正)之間的夾角,設由[X]軸逆時針至投影時的偏航角為正,即向右偏航為正,反之為負。
滾轉角[β:]傳感器坐標系[Z]軸與通過機體[x]軸的鉛垂面間的夾角。
分析后,對角速度積分得到傾斜角度:
采用卡爾曼濾波計算傾角:
進行互補濾波。補償原理是取當前傾角和加速度獲得傾角差值進行放大,然后與陀螺儀角速度疊加后再積分,從而使傾角跟蹤為加速度獲得的角度,設0.5為放大倍數,可調節補償度;
3 智能車硬件組裝與測試
3.1 硬件組裝
小車采用雙電機驅動加萬向輪結構,整體為三輪結構,小車整體重心偏后。小車的整體安裝需要對小車的硬件布局進行合理規劃,使得小車的中心在三個輪的中心線上,并且盡量靠后,避免小車在突然啟停時前翻。通過多次修改調試,得到如圖6所示的小車結構。遙控控制端采用手勢姿態控制小車行駛,將其直接安裝在手背上,如圖7所示。
3.2 系統測試
組裝好小車和遙控器后,對其進行整體測試。手勢與對應運行姿態見表2。單片機寫入程序后,按照表2中的動作進行測試,小車能按照手勢進行姿態的變化,動作準確。
4 結 語
通過對體感控制進行研究,選擇相關體感遙控器件和算法,設計了一款基于手勢控制的體感遙控器,并通過無線傳輸模塊對小車行駛進行控制。通過軟硬件的設計,并對小車硬件結構進行合理化布局,所設計成品可以為相關課題提供實驗基礎,例如:自平衡臺、兩輪自平衡小車等平衡裝置的設計,同時也可以將其應用到輪椅設計中,為人們帶來更大的便利。
參考文獻
[1] 楊曉迪,廖昕,古麗米拉·克孜爾別克,等.基于ARM的智能家居控制系統設計[J].現代電子技術,2015,38(8):93?95.
[2] 張鑫,徐文勝,劉階萍,等.基于Kinect的智能花盆體感控制系統研究[J].機電工程,2014,31(9):1226?1230.
[3] 呂云芳,陳帥帥,郝興森,等.基于C51高級語言程序控制的智能循跡小車設計與實現[J].實驗室研究與探索,2015,34(3):142?145.
[4] 王永喜,胡玫.基于單片機的電磁控制運動系統[J].自動化與儀器儀表,2014(2):123?125.
[5] 陳暉,張軍國,李默涵,等.基于STC89C52和nRF24L01的智能小車設計[J].現代電子技術,2012,35(17):12?15.
[6] 李賀,程祥,曾令國.基于nRF24L01芯片的近程無線通信系統設計[J].現代電子技術,2014,37(15):32?34.
[7] 賴義漢,王凱.基于MPU6050的雙輪平衡車控制系統設計[J].河南工程學院學報(自然科學版),2014,26(1):53?57.
[8] 李戰明,王曉萌.基于新型MEMS傳感器的老年人跌倒檢測系統設計[J].工業儀表與自動化裝置,2014(4):52?55.
[9] 張建軍.基于改進的擴展卡爾曼濾波伺服系統建模技術研究[J].計算機應用研究,2012,29(3):944?946.
[10] 高顯忠,侯中喜,王波.四元數卡爾曼濾波組合導航算法性能分析[J].控制理論與應用,2013,30(2):171?176.