李志瑞,申慶超
(安陽工學院 電子信息與電氣工程學院,河南 安陽 455000)
?
基于STM32的無線重力感應遙控系統設計*
李志瑞,申慶超
(安陽工學院 電子信息與電氣工程學院,河南 安陽 455000)
基于STM32控制器設計了一款無線重力感應遙控系統,該系統由遙控端與運動小車組成。遙控端利用傾角傳感器ADXL345檢測遙控端的傾角信息,然后傳給STM32控制器進行處理并轉換為相應指令,通過NRF24L01模塊發送給運動小車。運動小車接收到指令之后,通過NUCLEO-F411控制電機驅動模塊L298N驅動小車產生相應動作。所設計的無線重力感應系統具有簡單、直觀、易操作等特點,具有廣泛的應用前景。
STM32控制器;無線;重力感應;傾角
目前,隨著企業生產技術不斷提高,對自動化的要求也在不斷加深,遙控智能車輛以及在智能化車輛基礎上開發出來的產品已成為自動化物流運輸、柔性生產組織等系統的關鍵設備。無線傳輸已廣泛應用于各個領域,與傳統的有線傳輸相比,無線傳輸無需布線,在安裝、監控節點增加和節點的移動等方面都非常方便[1-3]。本設計采用無線傳輸系統通過對遙控端傾角信息的采集、處理,生成指令發送給運動小車,使小車能夠方便、靈活地執行相應動作。整個無線重力感應遙控系統結構簡單,可靠性高,可以應用在惡劣狹小等人體不宜進去但肉眼可觀察的區域,如火災、排雷等危險場所,也可以作為高智能玩具和遙控汽車的模型,具有很好的現實意義及很高的市場價值[4-6]。
無線重力感應遙控系統主要由遙控端和運動小車兩部分組成,遙控端采集傾角信息并轉換為相應指令,通過無線方式發送給運動小車;運動小車接收到遙控端的指令信息之后進行相應的處理,執行相應的動作,如前進、后退、轉彎等操作。
1.1 遙控端設計
遙控端的設計采用模塊化的設計方法[7],由傾角傳感器模塊ADXL345、遙控端控制模塊STM32F103C8T6、無線收發模塊NRF24L01、電源模塊等組成,如圖1所示。傾角傳感器模塊ADXL345采集遙控端的傾角信息,把檢測到的角度傳給遙控端控制模塊進行處理,把處理好的數據轉換為指令,最后通過無線收發模塊NRF24L01發送給接收端。電源模塊給各個部件供給電源,保證正常運行。

圖1 遙控端設計框圖
ADXL345 是ADI公司推出的基于 iMEMS 技術的3軸、數字輸出加速度傳感器,具有標準的I2C或 SPI 數字接口,自帶 32 級FIFO存儲,并且內部有多種運動狀態檢測和靈活的中斷方式等特性。具有高分辨率(3.9 mg/LSB)的特性,能夠測量小于1.0°的傾斜角度變化[8]。
STM32F103C8T6器件采用Cortex-M3內核,CPU最高速度達72 MHz,具有16 KB~1 MB Flash、多種控制外設、USB全速接口和CAN等特點,是目前應用相當廣泛的ARM芯片[9]。主要作用是分析處理傾角數據以及控制無線收發模塊NRF24L01等。ADXL345傳感器與控制模塊STM32F103C8T6之間采用I2C方式連接。電路連接圖如圖2所示。

圖2 ADXL345傳感器與控制模塊連接電路圖
無線收發模塊NRF24L01[10]具有2.4 GHz全球開放免許可使用的ISM頻段,工作速率高達2 Mb/s,高效的GFSK調制,抗干擾能力強;125個可選的頻道,滿足多點通信和調頻通信等特點。主要用于遙控端與運動小車之間的指令無線傳輸。無線收發模塊NRF24L01與控制模塊STM32F103C8T6之間采用SPI方式進行連接。電路連接圖如圖3所示。

圖3 NRF24L01模塊與STM32連接電路圖
1.2 運動小車設計
運動小車的設計同樣采用模塊化的設計方法,由無線收發模塊NRF24L01、小車控制模塊NUCLEO-F411開發板、電機驅動模塊L298N、電源模塊等組成。如圖4所示。無線收發模塊接收來自遙控端的指令信號,傳送給小車控制模塊進行處理,由電機驅動模塊L298N控制各個電機完成運動小車的相應動作。

圖4 運動小車設計框圖
NUCLEO-F411是意法半導體推出的一種基于Cortex-M4 STM32F411RET6的新型開發板卡。具有兼容Arduino、提供ST Morpho擴展排針、ST-LINK/V2-1調試器、支持對外部微控制器調試等特點。支持Keil、IAR、embed在線IDE設計工具,使用靈活、方便。
L298N是意法半導體生產的一種高電壓、大電流電機驅動芯片。主要特點是:工作電壓高,最高工作電壓可達46 V;輸出電流大,瞬間峰值電流可達3 A,持續工作電流為2 A;額定功率25 W[11]。所設計小車采用直流電機,利用L298N電機驅動器進行驅動。L298N電機驅動器可以驅動兩臺直流電機,分別為M1和M2。引腳A,B可用于輸入PWM脈寬調制信號對電機進行調速控制。
本系統軟件設計分為兩個部分:遙控端部分和運動小車部分。遙控端部分使用STM32F103 C8T6作為平臺,應用ADXL345加速度傳感器檢測角度的變化,使用無線模塊NRF24L01作為通信模塊向小車發送動作指令。軟件程序流程圖如圖5所示。

圖5 軟件程序流程圖
本文結合角度檢測與無線傳輸技術設計了一款無線重力感應遙控系統,主要介紹了遙控端與運動小車的硬件構成與軟件實現。整個系統由傾角傳感器采集角度信息,經過處理之后,通過無線模塊與運動小車進行信息交互,電機驅動小車完成相應動作。測試結果表明整個系統具有較高的穩定性和靈活性,具有廣闊的應用前景。
[1] 蔣中俊, 史鐵剛, 胡瀟灑,等. 基于STM32的嵌入式無線遙控系統的設計與實現[J]. 科技資訊, 2015(10):7-9.
[2] 何哲. 基于nRF24L01和STM32的無線文件收發系統[J]. 可編程控制器與工廠自動化, 2011(4):91-93.
[3] 劉偉永,王鳳瑛.基于ZigBee技術的無線溫濕度監測系統設計[J].微型機與應用,2013,32(11):64-65,69.
[4] 劉磊, 孫曉菲, 張煜. 基于STM32的可遙控智能跟隨小車設計[J]. 電子測量技術, 2015(6):31-33.
[5] 隋紹勇, 鄭維廣, 張振邦. 基于STM32F103和nRF24L01的近程無線數傳系統設計[J]. 電子元器件應用, 2010(12):15-17.
[6] 馬軍,李志華.基于STM32的無線次聲采集系統的設計[J].電子技術應用,2014,40(4):92-95.
[7] 嚴正國,黎偉,馬龍,等.一種分布式無線同步數據采集系統設計[J].電子技術應用,2014,40(10):49-52,56.
[8] ADXL345中文數據手冊[EB/OL].(2013-02-19) [2015-11-15]http://www.analog.com/media/cn/technical-documentation/data-sheets/ADXL345_cn.pdf.
[9] STM32F103C8T6 Datasheet[EB/OL].(2015-08-10) [2015-11-15]http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00161566.pdf.
[10] nRF24L01中文手冊[EB/OL].(2008-12-02) [2015-11-15] http://www.freqchina.com/cn/Download.asp.
[11] L298N中文資料[EB/OL].(2000-01-13) [2015-11-15]http://www.hqchip.com/ic/L298N.
The design of wireless gravity sensor control system based on STM32
Li Zhirui,Shen Qingchao
(School of Electronic Information and Electrical Engineering, Anyang Institute of Technology, Anyang 455000, China)
A wireless gravity sensor control system was designed based on STM32 controller.The system consists of remote terminal and small car. The remote terminal uses ADXL345 to detect inclination angle information,and then STM32 controller converts it to the corresponding command to the small car by NRF24L01 module. After receiving the instruction, small car generates a corresponding action by the NUCLEO-F411 and L298N motor drive module.The wireless gravity sensor control system is simple, intuitive, and easy to operate. It has broad application prospects.
STM32 controller; wireless;gravity sensor;inclination angle
安陽工學院青年科研基金(QJJ2015016)
TN92.5
A
1674-7720(2016)07- 0033- 02
李志瑞,申慶超.基于STM32的無線重力感應遙控系統設計[J].微型機與應用,2016,35(7):33-34,40.
2015-12-11)
李志瑞(1985-),男,碩士,講師,主要研究方向:無線傳感器網絡、信息檢測技術。
申慶超(1986-),男,碩士,講師,主要研究方向:信號信息處理。