亚洲国产中文字母_2023年免费b站视频_飘雪影院午夜理论片_欧美中文字幕第一_制服丝袜中文字幕丝袜专区_露脸真实国语乱在线观看_69xxⅹ色视频免费看_天堂在线最新版资源www_成人精品国产一区_亚洲一区视频免费在线观看

深圳市組創(chuàng)微電子有限公司
咨詢電話
0755-8299 4126

藍(lán)牙技術(shù)

藍(lán)牙運(yùn)動檢測系統(tǒng)


基于藍(lán)牙技術(shù)的運(yùn)動檢測系統(tǒng)設(shè)計

隨著傳感器技術(shù)的發(fā)展,現(xiàn)代工業(yè)控制變得更加精準(zhǔn),更多實時檢測處理傳感器得到了廣泛應(yīng)用。在車載應(yīng)用中,傳統(tǒng)的傳感器測控網(wǎng)絡(luò)為有線式監(jiān)控網(wǎng)絡(luò),使用屏蔽線或?qū)Ь€進(jìn)行信號傳輸。在汽車控制系統(tǒng)上集成了許多不同的傳感器裝置,用以測量汽車是否正常工作??赏ㄟ^查看汽車各傳感器的參數(shù)值進(jìn)行故障診斷等操作,而對車身整體的運(yùn)動檢測傳感器目前研究尚淺。因此,文中提出一款基于藍(lán)牙無線技術(shù)的汽車車載運(yùn)動狀態(tài)檢測裝置,該裝置是基于TCP/IP協(xié)議的網(wǎng)絡(luò)化智能傳感器。相比普通的基于現(xiàn)場總線的傳感器,該傳感器不僅體積小,安裝便捷性也得以提升。本傳感器適合安裝于車輛內(nèi)部各個位置,通過藍(lán)牙無線信號傳輸將本系統(tǒng)與汽車控制系統(tǒng)及其他檢測系統(tǒng)區(qū)分開來,以降低信號冗余度,減少信號擁堵。因此本系統(tǒng)可稱為獨(dú)立的運(yùn)動檢測裝置。

在許多應(yīng)用場合,不依靠外界而從自身內(nèi)部獲取自身運(yùn)動狀態(tài)信息十分重要,慣性測量單元就扮演了這一角色。慣性測量單元(Inertial Measurement Unit,IMU)由微型陀螺儀、微型加速度計、專用集成電路(ASIC)、嵌入式微機(jī)及相應(yīng)的軟件組成,內(nèi)部采用I2C總線接口,可以測出載體的角速度、加速度等信息,屬于微電子機(jī)械系統(tǒng)的一種。微電子機(jī)械系統(tǒng)(Micro-Electro-Mechanical Systems,MEMS)采用較低的成本把具有特定功能的復(fù)雜系統(tǒng)置于一個小小的硅片上,并將各種微型探測傳感器及微型機(jī)械裝置與微電子元件集為一體,使得系統(tǒng)的集成化程度更高,傳感器的體積更小。

一、運(yùn)動檢測系統(tǒng)功能分析

為分析藍(lán)牙無線姿態(tài)檢測傳感器,可根據(jù)數(shù)據(jù)的傳輸過程將系統(tǒng)分為3個部分:

(1)傳感器數(shù)據(jù)獲取模塊。利用動態(tài)卡爾曼濾波等算法,對原始傳感器進(jìn)行采集濾波整合處理;(2)傳感器數(shù)據(jù)無線發(fā)送模塊。掌握并運(yùn)用藍(lán)牙發(fā)送模塊的參數(shù)及配置;(3)數(shù)據(jù)顯示及保存模塊。使用手機(jī)App進(jìn)行數(shù)據(jù)接收及保存。

二、運(yùn)動檢測系統(tǒng)總體設(shè)計

本系統(tǒng)包含軟件和硬件設(shè)計,硬件電路使用STM32系列的ARM芯片,使用I2C總線通信方式與加速度計陀螺儀通信,并使用串口與藍(lán)牙芯片HC05通信,藍(lán)牙模塊發(fā)送數(shù)據(jù)至安卓手機(jī)端。軟件編程使用Keil,IAR,Eciplse軟件對模塊編程。使用Keil軟件完成對傳感器數(shù)據(jù)信息的采集和數(shù)據(jù)打包處理;使用IAR完成對藍(lán)牙模塊的配置操作處理,設(shè)置藍(lán)牙的發(fā)送模式,波特率等參數(shù);使用Ecilpse完成手機(jī)端App的編程,使用手機(jī)自帶的藍(lán)牙通信接口獲取數(shù)據(jù),后將數(shù)據(jù)解析拆包,將得到的數(shù)據(jù)顯示到手機(jī)屏幕并保存。系統(tǒng)總體模塊框圖如圖1所示。

圖 1 運(yùn)動檢測系統(tǒng)總體模塊框圖


三、運(yùn)動檢測系統(tǒng)硬件設(shè)計框圖

3.1 IMU慣性測量單元

IMU的主控制芯片選用STM32F103T8,ARM 32-bitCortex-M3內(nèi)核,它擁有64 KB的閃存存儲器和20 KB的運(yùn)行內(nèi)存及7通道的DMA,7個定時器。通過8 MHz晶體和STM32內(nèi)部的PLL,控制器可以運(yùn)行在72 MHz主頻上,由于姿態(tài)解算需要耗費(fèi)大量內(nèi)存進(jìn)行數(shù)學(xué)運(yùn)算,因此采用具有更快處理速度的芯片做更多解算優(yōu)化。IMU慣性測量單元硬件組成框圖如圖2所示。

圖 2 IMU 慣性測量單元硬件組成框圖


IMU上的傳感器通過I2C接口與STM32連接,同時傳感器的數(shù)據(jù)中斷引腳與STM32的IO相連,使得傳感器在完成ADC轉(zhuǎn)換后,STM32可在第一時間讀取最新、最快的數(shù)據(jù),快速響應(yīng)姿態(tài)變化,獲取各傳感器的狀態(tài)和轉(zhuǎn)換結(jié)果。其中,MPU6050為整合型6軸處理運(yùn)動組件,包含三軸陀螺儀和三軸加速度器,可準(zhǔn)確追蹤快速與慢速動作。HMC5883采用霍尼韋爾地磁傳感器,具有對正交軸的低靈敏度固相結(jié)構(gòu),可用來測量地球磁場的方向和大小。BMP180是一款高精度、超低能耗的壓力傳感器,測量大氣壓力后可換算為海拔高度。

3.2 Bluetooth模塊

傳感器使用的SPP-C藍(lán)牙模塊是遵循V2.1+EDR藍(lán)牙規(guī)范的智能無線數(shù)據(jù)模塊。除P12,P5為特殊I/O口外,其他P口均為可編程輸入/輸出接口,其串口UART-TX與UART-RX均采用CMOS接口。該模塊主要用于短距離的數(shù)據(jù)無線傳輸領(lǐng)域??梢苑奖愕呐cPC機(jī)的藍(lán)牙設(shè)備相連,數(shù)據(jù)也可以在兩個模塊之間互通。藍(lán)牙模塊的硬件框圖如圖3所示。

圖 3 藍(lán)牙模塊電路連接


四、運(yùn)動檢測系統(tǒng)傳感器軟件設(shè)計

4.1 IMU傳感器數(shù)據(jù)采集

IMU數(shù)據(jù)采集流程包括數(shù)據(jù)采集處理芯片STM32和三個傳感器的初始化,即首先對STM32芯片系統(tǒng)上電初始化,完成I2C接口初始化和串口初始化,然后對三個傳感器的配置初始化,如圖4所示。

圖 4 IMU 數(shù)據(jù)采集過程


(1)對MPU6050初始化:MPU6050初始化如圖5所示,軟件配置流程如下:(1)由電源管理寄存器1(0X6B)控制復(fù)位MPU6050;(2)由陀螺儀配置寄存器(0X1B)和加速度傳感器配置寄存器(0X1C)設(shè)置角速度傳感器和加速度傳感器的滿量程范圍;(3)由中斷使能寄存器(0X38)配置中斷;(4)由用戶控制寄存器(0X6A)設(shè)置AUX I2C接口;(5)由FIFO使能寄存器(0X23)設(shè)置FIFO;(6)由采樣率分頻寄存器(0X19)配置陀螺儀采樣率;(7)由配置寄存器(0X1A)設(shè)置數(shù)字低通濾波器;(8)由電源管理寄存器1(0X6B)設(shè)置系統(tǒng)時鐘。一般選擇x軸陀螺PLL作為時鐘源,以獲得更高精度的時鐘;(9)由電源管理寄存器2(0X6C)使能角速度傳感器(陀螺儀)和加速度傳感器。

圖 5 MPU6050 初始化


(2)對HMC5883初始化:HMC5883初始化程序如圖6所示。在軟件中設(shè)置HMC5883的工作模式0,為連續(xù)測量模式。在連續(xù)測量模式下,裝置不斷測量,并將數(shù)據(jù)更新至數(shù)據(jù)寄存器。由配置寄存器A設(shè)置測量輸出過程中的采樣平均數(shù)為8個周期,75 Hz的輸出速率。然后使用HMC5883L傳感器內(nèi)部產(chǎn)生的標(biāo)準(zhǔn)磁場進(jìn)行初步標(biāo)定,最后讀取校正后磁力計ADC的值。

(3)對BMP180初始化:需要在軟件中進(jìn)行配置:(1)發(fā)出壓力(或溫度)轉(zhuǎn)換命令;(2)一段時間后從UP(UT)寄存器讀取原始數(shù)據(jù);(3)若要得到攝氏溫度和hPa壓力則需要用到校正數(shù)據(jù),這些數(shù)據(jù)放在BMP085的E2PROM中,通過I2C可以在初始化時讀出。

4.2藍(lán)牙無線模塊配置

藍(lán)牙HC05是主從一體的藍(lán)牙串口模塊,可以使其工作在主或從機(jī)狀態(tài)。當(dāng)藍(lán)牙設(shè)備配對連接成功后,無需考慮藍(lán)牙內(nèi)部的通信協(xié)議,直接將藍(lán)牙作為串口使用。連接建立后,兩設(shè)備共同使用一通道,一個設(shè)備發(fā)送數(shù)據(jù)到通道中,另一個設(shè)備可以接收通道中的數(shù)據(jù)。為建立這種通道連接,需要將藍(lán)牙設(shè)置為能進(jìn)行配對連接的AT模式。使用藍(lán)牙模塊的AT指令對其進(jìn)行配置,將模塊設(shè)置為從機(jī)模式。

五、手機(jī)安卓端軟件

5.1運(yùn)動檢測系統(tǒng)總體設(shè)計

為完成手機(jī)端App的軟件開發(fā),首先建立其用例圖,描述用戶使用本App實現(xiàn)的目的。首先用戶打開App圖標(biāo)進(jìn)入軟件,完成藍(lán)牙設(shè)備的匹配連接,然后根據(jù)用戶的需要選擇用戶希望獲取的數(shù)據(jù)信息,最后用戶保存需要的數(shù)據(jù)信息。根據(jù)實現(xiàn)的功能按照實現(xiàn)類方法進(jìn)行劃分。其中涉及藍(lán)牙通信服務(wù),用戶與手機(jī)圖形界面交互中的事件監(jiān)聽處理機(jī)制,及數(shù)據(jù)的實時動態(tài)刷新顯示。在設(shè)計軟件時設(shè)計了用例圖和部署圖。

5.2 App實現(xiàn)框架

在AndriodMenifest.xml文件列出了應(yīng)用程序提供的功能,凡需要用到的組件都要在此進(jìn)行配置及注冊,包括Activity、Intent、Service及ContentProvider。當(dāng)使用到系統(tǒng)中內(nèi)置的應(yīng)用(如電話服務(wù)、互聯(lián)網(wǎng)服務(wù)、短信服務(wù)、GPS服務(wù)等)時還需在此文件中聲明使用權(quán)限,該文件也是所有Android應(yīng)用程序都需要的文件,描述了程序包的全局變量,包括公開的應(yīng)用程序組件和每個組件的實現(xiàn)類,及可以操作的數(shù)據(jù)資源,運(yùn)行空間等。

軟件中的Activity是Android的核心類,其作用相當(dāng)于c中的主函數(shù)。該類的全名是android.app.Activity。Activity相當(dāng)于C/S程序中的窗體(Form)或Web程序的頁面。每一個Activity提供了一個可視化區(qū)域。在這個區(qū)域中可以放置各種Android控件,如按鈕、圖像、文本框等。

由AndroidMenifest.xml文件配置軟件安卓運(yùn)行版本條件,并先執(zhí)行DeviceListActivity.java獲取設(shè)備列表,使用Intent調(diào)用DataMonitor.java程序。DeviceListActivity繼承了Activity類,DataMonitor繼承了FragmentActivity類。兩者在執(zhí)行時都調(diào)用BluetoothService.Java函數(shù)以完成藍(lán)牙通信。DeviceListActivity.java和DataMonitor.java都由可視化組件View及其子類組成,這些組件按照XML布局文件在指定位置的窗口上擺放。

5.3數(shù)據(jù)處理及顯示

DataMonitor是一個繼承了FragmentActivity的類,F(xiàn)ragmentActivity繼承自Activity,它提供了操作Fragment的方法,因此可在Activity中嵌入Fragment來實現(xiàn)需要的布局效果。在DataMonitor中首先實現(xiàn)的是oncreate方法,該方法在DataMonitor初始化時調(diào)用藍(lán)牙連接,通過setContentView方法將View放到Activity上。綁定后,Activity會顯示View上的控件。其余的是繼承父類的onStart(),onResume(),onPause(),onStop()和onDestroy()方法,未對其修改,完成Activity生命周期的重載基本方法。

在確保藍(lán)牙已經(jīng)連接的情況下使用handler接口完成Activity的Widget與應(yīng)用程序中線程的交互。重寫handler類中的handleMessage方法,通過該方法接收信息。接收的信息表示當(dāng)前時刻接收消息的狀態(tài),分別為MESSAGE_STATE_CH ANGE,M ES SAGE_READ,M ES SAGE_DEVICE_NAME,MESSAGE_TOAST。第一種狀態(tài)表示藍(lán)牙處于連接狀態(tài);第二種狀態(tài)表示數(shù)據(jù)讀取狀態(tài);第三種狀態(tài)為設(shè)備名稱讀入狀態(tài);第四種狀態(tài)為數(shù)據(jù)顯示狀態(tài),可將數(shù)據(jù)顯示在手機(jī)屏幕上。通過OnclickConfig(View v),ControlClick(View v)完成界面顯示及跳轉(zhuǎn)功能,在ControlClick中可以選擇顯示的內(nèi)容,并根據(jù)按下的按鍵選擇對應(yīng)的輸出數(shù)據(jù)。onRecordBtnClick(View v)方法是當(dāng)用戶按下“記錄”鍵時將數(shù)據(jù)保存到SD卡中,當(dāng)用戶按下“停止”按鈕時停止記錄數(shù)據(jù)信息。

5.4藍(lán)牙傳輸BluetoothService

對藍(lán)牙進(jìn)行開發(fā),首先在AndroidManifest.xml文件中加入管理員權(quán)限和藍(lán)牙開發(fā)權(quán)限,開啟藍(lán)牙后,用isEnabled()查詢當(dāng)前藍(lán)牙設(shè)備的狀態(tài),若返回為false,則表示藍(lán)牙設(shè)備沒有開啟,需要封裝一個ACTION_REQUEST_ENABLE請求到intent,調(diào)用startActivityForResult()方法使能藍(lán)牙設(shè)備。使用BluetoothAdapter類的方法可以查找遠(yuǎn)端設(shè)備,使用mArrayAdapter.Add方法顯示可以配對的藍(lán)牙設(shè)備集,以便選取一個設(shè)備進(jìn)行通信。

掃描設(shè)備只需調(diào)用startDiscovery()方法,應(yīng)用程序為了ACTION_FOUND動作需要注冊一個BroadcastReceiver來接收設(shè)備掃描到的信息。使能自身設(shè)備,將ACTION_REQUEST_DISCOVERABLE動作封裝在intent中并調(diào)用startActivityForResult(Intent,int)方法。建立兩個藍(lán)牙設(shè)備之間的連接,完成客戶端和服務(wù)器端的代碼。一個開啟服務(wù)來監(jiān)聽,一個發(fā)起連接請求(使用服務(wù)器端設(shè)備的MAC地址)。當(dāng)他們都擁有一個藍(lán)牙套接字在同一RFECOMM信道上時,可認(rèn)為他們之間已經(jīng)連接上了。getInptuStream()獲取輸入流,getOutputStream()獲取輸出流,進(jìn)行數(shù)據(jù)傳輸。

結(jié)語

本文中,我們提出了一種基于藍(lán)牙和慣性測量單元的無線位姿傳感器檢測系統(tǒng),針對傳感器的硬件和軟件進(jìn)行設(shè)計。使用整合型6軸處理運(yùn)動組件MPU6050、BMP180、HMC5883和STM32組成IMU(慣性測量單元),將數(shù)據(jù)通過藍(lán)牙發(fā)送至手機(jī)端,然后顯示,并將數(shù)據(jù)保存在手機(jī)端。文中設(shè)計的系統(tǒng)具有較好的實時性,且精度滿足一般運(yùn)動物體的檢測要求。

以上就是我們深圳市組創(chuàng)微電子有限公司為您介紹的基于藍(lán)牙技術(shù)的運(yùn)動檢測系統(tǒng)設(shè)計。如果您有藍(lán)牙產(chǎn)品設(shè)計開發(fā)需求,可以放心交給我們,我們有豐富的智能電子產(chǎn)品定制開發(fā)經(jīng)驗,可以盡快評估開發(fā)周期與IC價格,也可以核算PCBA報價。我們是多家國內(nèi)外芯片代理商:松翰、應(yīng)廣、杰理、安凱、全志、realtek,有MCU、語音IC、BLE藍(lán)牙IC、雙模藍(lán)牙模塊、wifi模塊。我們的擁有硬件設(shè)計與軟件開發(fā)能力。涵蓋了電路設(shè)計、PCB設(shè)計、單片機(jī)開發(fā)、軟件定制開發(fā)、APP定制開發(fā)、微信公眾號開發(fā)、語音識別技術(shù)、藍(lán)牙開發(fā)、wifi技術(shù)等。還可以承接智能電子產(chǎn)品研發(fā)、家用電器方案設(shè)計、美容儀器開發(fā)、物聯(lián)網(wǎng)應(yīng)用開發(fā)、智能家居方案設(shè)計、TWS耳機(jī)開發(fā)、藍(lán)牙耳機(jī)音箱開發(fā)、兒童玩具方案開發(fā)、電子教育產(chǎn)品研發(fā)。

注:部分圖片內(nèi)容來源于網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系刪除。

  • 返回頂部