新聞中心

EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 基于Android平臺和藍牙的太陽輻照度采集系統(tǒng)

基于Android平臺和藍牙的太陽輻照度采集系統(tǒng)

作者:劉敏 賀永亮 時間:2015-04-29 來源:電子產(chǎn)品世界 收藏

  1 系統(tǒng)程序流程

本文引用地址:http://m.butianyuan.cn/article/273342.htm

  輻照度采集系統(tǒng)由標準測試,集成環(huán)境溫度、電池板溫度等測試功能,下位機通過模塊連接具有接口的移動終端,以利用便攜式設(shè)備來實時監(jiān)控和記錄系統(tǒng)采集數(shù)據(jù)。程序執(zhí)行的流程圖如圖1所示。

  打開上位機軟件,進入到配置界面,首先打開藍牙,匹配藍牙模塊,然后搜索藍牙設(shè)備并顯示搜索到的藍牙設(shè)備名稱,點擊需要匹配的藍牙模塊名稱項目進行匹配,匹配成功即可點擊按鈕進入到采集數(shù)據(jù)界面,設(shè)置好測試間隔時間之后,按啟動按鈕進行,按停止按鈕結(jié)束采集。選上記錄復(fù)選框,自動保存采集數(shù)據(jù)結(jié)果至設(shè)備根文件目錄下。

  2 Bluetooth模塊匹配連接

  在采集系統(tǒng)中,下位機通過標準測得數(shù)據(jù),其藍牙接口與Android設(shè)備藍牙模塊匹配之后,建立連接,進行。藍牙模塊的匹配是的前提,下面簡述匹配步驟。

  (1)開啟藍牙

  要使用藍牙,必須取得藍牙適配器,我們可以通過BluetoothAdapter的getDefaultAdapter()方法來取得本地藍牙適配器:

  public BluetoothAdapter bluetooth= BluetoothAdapter.
  getDefaultAdapter();
  然后打開藍牙:bluetooth.enable();

  (2) 搜索藍牙模塊

  在藍牙打開之后,需要搜索藍牙設(shè)備,然后才能進行匹配操作。搜索藍牙設(shè)備需要使用BluetootDevice類,可以使用BluetoothAdapter類的getRemoteDevice方法來得到一個指定地址的BluetoothDevice。搜索藍牙設(shè)備的具體流程如圖2所示。

  根據(jù)圖2,獲得藍牙設(shè)備需要分別注冊搜索完成和發(fā)現(xiàn)設(shè)備兩類廣播消息,并調(diào)用startDiscovery()方法。每次系統(tǒng)廣播事件發(fā)生后,系統(tǒng)就會創(chuàng)建對應(yīng)的BroadcastReceiver實例,并自動觸發(fā)它的onReceive()方法,onReceive()方法執(zhí)行完后,BroadcastReceiver的實例就會被銷毀。在該BroadcastReceiver實例的onReceive()方法中,我們處理注冊的廣播消息,將發(fā)現(xiàn)的藍牙設(shè)備放在設(shè)備列表中進行顯示。在點擊藍牙模塊匹配按鈕之后,調(diào)用startDiscovery()方法開始搜索。

  ( 3)藍牙模塊匹配

  在藍牙設(shè)備搜索完成之后,采集系統(tǒng)下位機的藍牙模塊名稱和MAC地址顯示在藍牙設(shè)備列表中,下面是Android藍牙與下位機藍牙模塊實現(xiàn)連接的部分代碼:

  通過藍牙設(shè)備的MAC地址獲取BluetoothDevice對象: device = bluetooth.
  getRemoteDevice(BlueToothAddress);
  BluetoothDevice對象通過UUID號創(chuàng)建一個Socket連:socket =
  device.createRfcommSocketToServiceRecord(UUID.
  fromString("00001101-0000-1000-8000-00805F9B34FB"));
  連接遠程藍牙適配器:socket.connect();

  至此,藍牙模塊匹配連接完成,將匹配的結(jié)果顯示在藍牙匹配信息列表中。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉