資料介紹
Android操作系統(tǒng)是Google基于開源的Linux操作系統(tǒng)開發(fā)的移動操作平臺,由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,是專門為移動終端打造的開放和完整的移動操作系統(tǒng)。Android軟件平臺包含Java Application、Application Framework、Libraries、Runtime與LinuxOS等層。用戶可根據(jù)產(chǎn)品的不同需求對系統(tǒng)進(jìn)行裁剪,從而適應(yīng)多樣的產(chǎn)品需求,Android系統(tǒng)就如同積木一樣通過組合不同的軟硬件實現(xiàn)不同的應(yīng)用產(chǎn)品。藍(lán)牙的出現(xiàn)為移動設(shè)備的互聯(lián)提供了一個方便快捷的選擇,Android設(shè)備和以單片機(jī)為處理器的控制器聯(lián)接使兩者的功能得到了互補(bǔ)。
1系統(tǒng)架構(gòu)
基于藍(lán)牙與Android設(shè)備的控制系統(tǒng)由Android設(shè)備和下位機(jī)組成。Android設(shè)備(Android智能手機(jī)或Android平板)安裝有專門編制的軟件。下位機(jī)采用ATMEL公司高效的RISC內(nèi)核的ATMEGA 8為核心,并集成藍(lán)牙串行模塊為通信信道。Android設(shè)備通過藍(lán)牙將數(shù)據(jù)發(fā)送至下位機(jī),下位機(jī)根據(jù)接收到數(shù)據(jù),完成相應(yīng)的控制功能,并將處理結(jié)果上傳,實現(xiàn)實時監(jiān)測、實時控制功能。下位機(jī)只負(fù)責(zé)數(shù)據(jù)的采集和實現(xiàn)控制功能,數(shù)據(jù)的存儲和處理在Android設(shè)備上實現(xiàn)。
2下位機(jī)設(shè)計
2.1控制模塊的設(shè)計
下位機(jī)由ATMEAG8、數(shù)字溫度傳感器、電機(jī)驅(qū)動電路等組成,其中CPU部分電路如圖1所示。下位機(jī)處理器串口連接藍(lán)牙模塊。數(shù)字溫度傳感器將當(dāng)前溫度直接轉(zhuǎn)換成數(shù)字信號。藍(lán)牙模塊設(shè)置為從工作模式。
圖1 CPU電路原理圖
系統(tǒng)上電后藍(lán)牙模塊處于等待連接狀態(tài),當(dāng)Android設(shè)備第一次發(fā)出連接請求時需要輸入藍(lán)牙模塊的內(nèi)置密碼,以后再連接時則不需要輸入密碼,只有密碼匹配成功才能后成功建立藍(lán)牙連接。藍(lán)牙模塊為Android設(shè)備和ATMEAG8的通信信道,實現(xiàn)Android設(shè)備和下位機(jī)的雙向數(shù)據(jù)連接。用戶通過Android設(shè)備向下位機(jī)發(fā)送命令,下位機(jī)接收到命令后,控制相應(yīng)的執(zhí)行模塊,實現(xiàn)設(shè)定的控制功能。K1和K2為低電平,電機(jī)兩端電壓為0V,電機(jī)停止;K1為高電平,K2為低電平電機(jī)兩端為5V,電機(jī)正向轉(zhuǎn)動;K1為低電平,K2為高電平電機(jī)兩端為-5V,電機(jī)反向轉(zhuǎn)動;K1和K2不能同時為高電平,電機(jī)驅(qū)動電路如圖2所示
圖2電機(jī)驅(qū)動電路原理圖
2.2藍(lán)牙模塊
藍(lán)牙模塊型號為IDS-BM4A,模塊有主/從兩種工作模式,通過PIO2電平來選擇模塊的工作,PIO2為高電平,模塊工作在從模式。模塊可以有兩種應(yīng)用方式,方式1:從模塊上電即開始工作,用戶可以通過Android設(shè)備查找模塊,模塊設(shè)備名稱為“SPP”,查到設(shè)備后選擇連接,電腦端將提示輸入密碼,此時輸入“0000”,電腦將與模塊建立透明連接。方式2:需要兩個藍(lán)牙模塊,一個設(shè)置為主模式,一個設(shè)置為從模式,分別與兩個MCU連接,上電后主從模塊會自動配對連接,連接成功后主從模塊將建立透明數(shù)據(jù)傳輸,兩個設(shè)備之間可以直接互發(fā)數(shù)據(jù)。
工作狀態(tài)指示:模塊PIO0用來連接LED,指示當(dāng)前工作方式。
主模式:
未連接,LED間隔1秒鐘快速閃爍2次;已連接,LED常亮。
從模式:
未連接,LED快速閃爍;已連接,LED常亮。
連接狀態(tài)指示:模塊PIO1為連接狀態(tài)指示,連接成功PIO1為高電平,連接斷開PIO1為低電平。
波特率設(shè)定表:
3 Android設(shè)備軟件設(shè)計
Android2.2版本以上才能很好的支持藍(lán)牙功能,Android上的應(yīng)用程序一般采用Java語言開發(fā),編程環(huán)境一般采用Eclipse.
Android應(yīng)用程序需要使用藍(lán)牙功能,必須在AndroidManifest.xml中要申請兩個權(quán)限:BLUETOOTH_ADMIN和BLUETOOTH.具體格式如下:
ission.BLUETOOTH_ADMIN“/》me=”android.permission.BLUETOOTH“/》
BLUETOOTH_ADMIN權(quán)限允許Android應(yīng)用程序啟動發(fā)現(xiàn)設(shè)備或者進(jìn)行藍(lán)牙功能的設(shè)置;BLUETOOTH權(quán)限是Android應(yīng)用程序執(zhí)行藍(lán)牙通信必須具有的權(quán)限,例如接受連接和傳送數(shù)據(jù)。大多數(shù)應(yīng)用程序都需要這個權(quán)限,才能查找當(dāng)?shù)氐乃{(lán)牙設(shè)備。
由于需要和下位機(jī)的藍(lán)牙模塊連接,在應(yīng)用程序中需要實現(xiàn)主設(shè)備功能。具體的連接流程是:
(1)在應(yīng)用程序中檢查設(shè)備的藍(lán)牙功能是否開啟,如果未開啟,則打開藍(lán)牙功能;
(2)查找設(shè)備附近等待連接的藍(lán)牙設(shè)備,顯示查找到的藍(lán)牙設(shè)備的物理地址(以前沒有連接過的設(shè)備)或藍(lán)牙設(shè)備的名稱;
?。?)選擇想要連接的藍(lán)牙設(shè)備,如果是第一次連接這個目標(biāo)設(shè)備系統(tǒng)會自動發(fā)起一個配對過程,彈出輸入連接密碼的對話框,輸入“0000”,等待對方校驗密碼,完成配對,然后進(jìn)行連接。
(4)應(yīng)用程序接收到連接成功,就可以通過生成的BluetoothServerSocke和下位機(jī)進(jìn)行數(shù)據(jù)傳輸。需要連接的藍(lán)牙模塊是藍(lán)牙串口,因此應(yīng)用程序中定義的UUID必須符合藍(lán)牙串口的UUID,這樣連接才會被接受。因為accept()調(diào)用是一個阻塞的調(diào)用,應(yīng)用程序所有響應(yīng)在調(diào)用返回之前會被阻塞,因此一定不能在主線程中進(jìn)行調(diào)用,通常是在一個新的線程中做所有的工作從而避免應(yīng)用程序主線程的阻塞。主要代碼如下;
?。?)關(guān)閉server socket,釋放serversocket和它占用的資源,結(jié)束應(yīng)用程序。
4結(jié)束語
本文提出了基于藍(lán)牙與Android設(shè)備的無線控制系統(tǒng)模型,分析了藍(lán)牙網(wǎng)絡(luò)的一般結(jié)構(gòu),采用通用的藍(lán)牙模塊實現(xiàn)了無線終端設(shè)計,給出了Android設(shè)備的藍(lán)牙串行通訊軟件框架。憑借藍(lán)牙的傳輸高效并且快速等特點,該系統(tǒng)具有很好的靈活性,能廣泛應(yīng)用于工業(yè)現(xiàn)場控制等多個領(lǐng)域,尤其是一些需要數(shù)據(jù)傳輸又不能很方便的布設(shè)通訊電纜的場合,具有廣闊的發(fā)展空間。
1系統(tǒng)架構(gòu)
基于藍(lán)牙與Android設(shè)備的控制系統(tǒng)由Android設(shè)備和下位機(jī)組成。Android設(shè)備(Android智能手機(jī)或Android平板)安裝有專門編制的軟件。下位機(jī)采用ATMEL公司高效的RISC內(nèi)核的ATMEGA 8為核心,并集成藍(lán)牙串行模塊為通信信道。Android設(shè)備通過藍(lán)牙將數(shù)據(jù)發(fā)送至下位機(jī),下位機(jī)根據(jù)接收到數(shù)據(jù),完成相應(yīng)的控制功能,并將處理結(jié)果上傳,實現(xiàn)實時監(jiān)測、實時控制功能。下位機(jī)只負(fù)責(zé)數(shù)據(jù)的采集和實現(xiàn)控制功能,數(shù)據(jù)的存儲和處理在Android設(shè)備上實現(xiàn)。
2下位機(jī)設(shè)計
2.1控制模塊的設(shè)計
下位機(jī)由ATMEAG8、數(shù)字溫度傳感器、電機(jī)驅(qū)動電路等組成,其中CPU部分電路如圖1所示。下位機(jī)處理器串口連接藍(lán)牙模塊。數(shù)字溫度傳感器將當(dāng)前溫度直接轉(zhuǎn)換成數(shù)字信號。藍(lán)牙模塊設(shè)置為從工作模式。
圖1 CPU電路原理圖
系統(tǒng)上電后藍(lán)牙模塊處于等待連接狀態(tài),當(dāng)Android設(shè)備第一次發(fā)出連接請求時需要輸入藍(lán)牙模塊的內(nèi)置密碼,以后再連接時則不需要輸入密碼,只有密碼匹配成功才能后成功建立藍(lán)牙連接。藍(lán)牙模塊為Android設(shè)備和ATMEAG8的通信信道,實現(xiàn)Android設(shè)備和下位機(jī)的雙向數(shù)據(jù)連接。用戶通過Android設(shè)備向下位機(jī)發(fā)送命令,下位機(jī)接收到命令后,控制相應(yīng)的執(zhí)行模塊,實現(xiàn)設(shè)定的控制功能。K1和K2為低電平,電機(jī)兩端電壓為0V,電機(jī)停止;K1為高電平,K2為低電平電機(jī)兩端為5V,電機(jī)正向轉(zhuǎn)動;K1為低電平,K2為高電平電機(jī)兩端為-5V,電機(jī)反向轉(zhuǎn)動;K1和K2不能同時為高電平,電機(jī)驅(qū)動電路如圖2所示
圖2電機(jī)驅(qū)動電路原理圖
2.2藍(lán)牙模塊
藍(lán)牙模塊型號為IDS-BM4A,模塊有主/從兩種工作模式,通過PIO2電平來選擇模塊的工作,PIO2為高電平,模塊工作在從模式。模塊可以有兩種應(yīng)用方式,方式1:從模塊上電即開始工作,用戶可以通過Android設(shè)備查找模塊,模塊設(shè)備名稱為“SPP”,查到設(shè)備后選擇連接,電腦端將提示輸入密碼,此時輸入“0000”,電腦將與模塊建立透明連接。方式2:需要兩個藍(lán)牙模塊,一個設(shè)置為主模式,一個設(shè)置為從模式,分別與兩個MCU連接,上電后主從模塊會自動配對連接,連接成功后主從模塊將建立透明數(shù)據(jù)傳輸,兩個設(shè)備之間可以直接互發(fā)數(shù)據(jù)。
工作狀態(tài)指示:模塊PIO0用來連接LED,指示當(dāng)前工作方式。
主模式:
未連接,LED間隔1秒鐘快速閃爍2次;已連接,LED常亮。
從模式:
未連接,LED快速閃爍;已連接,LED常亮。
連接狀態(tài)指示:模塊PIO1為連接狀態(tài)指示,連接成功PIO1為高電平,連接斷開PIO1為低電平。
波特率設(shè)定表:
3 Android設(shè)備軟件設(shè)計
Android2.2版本以上才能很好的支持藍(lán)牙功能,Android上的應(yīng)用程序一般采用Java語言開發(fā),編程環(huán)境一般采用Eclipse.
Android應(yīng)用程序需要使用藍(lán)牙功能,必須在AndroidManifest.xml中要申請兩個權(quán)限:BLUETOOTH_ADMIN和BLUETOOTH.具體格式如下:
ission.BLUETOOTH_ADMIN“/》me=”android.permission.BLUETOOTH“/》
BLUETOOTH_ADMIN權(quán)限允許Android應(yīng)用程序啟動發(fā)現(xiàn)設(shè)備或者進(jìn)行藍(lán)牙功能的設(shè)置;BLUETOOTH權(quán)限是Android應(yīng)用程序執(zhí)行藍(lán)牙通信必須具有的權(quán)限,例如接受連接和傳送數(shù)據(jù)。大多數(shù)應(yīng)用程序都需要這個權(quán)限,才能查找當(dāng)?shù)氐乃{(lán)牙設(shè)備。
由于需要和下位機(jī)的藍(lán)牙模塊連接,在應(yīng)用程序中需要實現(xiàn)主設(shè)備功能。具體的連接流程是:
(1)在應(yīng)用程序中檢查設(shè)備的藍(lán)牙功能是否開啟,如果未開啟,則打開藍(lán)牙功能;
(2)查找設(shè)備附近等待連接的藍(lán)牙設(shè)備,顯示查找到的藍(lán)牙設(shè)備的物理地址(以前沒有連接過的設(shè)備)或藍(lán)牙設(shè)備的名稱;
?。?)選擇想要連接的藍(lán)牙設(shè)備,如果是第一次連接這個目標(biāo)設(shè)備系統(tǒng)會自動發(fā)起一個配對過程,彈出輸入連接密碼的對話框,輸入“0000”,等待對方校驗密碼,完成配對,然后進(jìn)行連接。
(4)應(yīng)用程序接收到連接成功,就可以通過生成的BluetoothServerSocke和下位機(jī)進(jìn)行數(shù)據(jù)傳輸。需要連接的藍(lán)牙模塊是藍(lán)牙串口,因此應(yīng)用程序中定義的UUID必須符合藍(lán)牙串口的UUID,這樣連接才會被接受。因為accept()調(diào)用是一個阻塞的調(diào)用,應(yīng)用程序所有響應(yīng)在調(diào)用返回之前會被阻塞,因此一定不能在主線程中進(jìn)行調(diào)用,通常是在一個新的線程中做所有的工作從而避免應(yīng)用程序主線程的阻塞。主要代碼如下;
?。?)關(guān)閉server socket,釋放serversocket和它占用的資源,結(jié)束應(yīng)用程序。
4結(jié)束語
本文提出了基于藍(lán)牙與Android設(shè)備的無線控制系統(tǒng)模型,分析了藍(lán)牙網(wǎng)絡(luò)的一般結(jié)構(gòu),采用通用的藍(lán)牙模塊實現(xiàn)了無線終端設(shè)計,給出了Android設(shè)備的藍(lán)牙串行通訊軟件框架。憑借藍(lán)牙的傳輸高效并且快速等特點,該系統(tǒng)具有很好的靈活性,能廣泛應(yīng)用于工業(yè)現(xiàn)場控制等多個領(lǐng)域,尤其是一些需要數(shù)據(jù)傳輸又不能很方便的布設(shè)通訊電纜的場合,具有廣闊的發(fā)展空間。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 低功耗風(fēng)光互補(bǔ)電源控制系統(tǒng)
- 電力拖動自動控制系統(tǒng)之運動控制系統(tǒng)電子版 0次下載
- 基于藍(lán)牙模塊的音樂噴泉控制系統(tǒng) 110次下載
- 基于DSP的煤礦電機(jī)控制系統(tǒng) 7次下載
- LTC2983 為何能夠測量 18 個兩線式 RTD?資料下載
- Android藍(lán)牙開發(fā)的教程免費下載 17次下載
- DDC控制系統(tǒng)和PLC控制系統(tǒng)對比和應(yīng)用 12次下載
- 使用Android客服端和單片機(jī)實現(xiàn)一個遠(yuǎn)程控制系統(tǒng)的程序免費下載
- 如何使用藍(lán)牙進(jìn)行U盤智能控制系統(tǒng)設(shè)計與實現(xiàn) 14次下載
- 基于藍(lán)牙與Android設(shè)備控制系統(tǒng)的架構(gòu)及其下位機(jī)設(shè)計詳解 4次下載
- 基于STM32風(fēng)光互補(bǔ)發(fā)電控制系統(tǒng)設(shè)計 31次下載
- 基于藍(lán)牙技術(shù)及嵌入式系統(tǒng)固件開發(fā)的機(jī)器人控制系統(tǒng) 11次下載
- 關(guān)于藍(lán)牙技術(shù)在工業(yè)的控制系統(tǒng)中的應(yīng)用 12次下載
- 多網(wǎng)絡(luò)和Linux代理的Android無線遠(yuǎn)程控制系統(tǒng) 0次下載
- 基于Android健康服務(wù)終端藍(lán)牙傳輸軟件的設(shè)計 95次下載
- 現(xiàn)場總線控制系統(tǒng)與集散控制系統(tǒng)的對比 765次閱讀
- 步進(jìn)電機(jī)控制系統(tǒng)是什么意思 538次閱讀
- 前饋控制系統(tǒng)與反饋控制系統(tǒng)的區(qū)別 1520次閱讀
- 開環(huán)控制系統(tǒng)與閉環(huán)控制系統(tǒng)的區(qū)別 5564次閱讀
- plc控制系統(tǒng)與傳統(tǒng)繼電器控制區(qū)別 plc控制系統(tǒng)的優(yōu)點 2427次閱讀
- 風(fēng)光互補(bǔ)控制器工作原理 風(fēng)光互補(bǔ)控制器怎么設(shè)置 1659次閱讀
- 藍(lán)牙網(wǎng)絡(luò)照明控制系統(tǒng)的優(yōu)勢 502次閱讀
- 基于WIFI網(wǎng)絡(luò)的車間設(shè)備監(jiān)測與控制系統(tǒng)設(shè)計 548次閱讀
- PLC控制系統(tǒng)設(shè)計的基本原則 1939次閱讀
- DCS控制系統(tǒng)是什么?DCS控制系統(tǒng)的特點 3530次閱讀
- 機(jī)器人控制系統(tǒng)概念!機(jī)器人控制系統(tǒng)的基本要求 9598次閱讀
- 基于Android的智能家居終端控制系統(tǒng) 9758次閱讀
- 基于ZigBee的Android智能移動設(shè)備控制系統(tǒng)設(shè)計 6143次閱讀
- 基于藍(lán)牙與Android設(shè)備的控制系統(tǒng)設(shè)計 933次閱讀
- 多網(wǎng)絡(luò)和Linux代理的Android無線遠(yuǎn)程控制系統(tǒng) 3603次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 11次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5DIY動手組裝LED電子顯示屏
- 0.98 MB | 3次下載 | 免費
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計
- 0.70 MB | 2次下載 | 免費
- 751單片機(jī)PM2.5檢測系統(tǒng)程序
- 0.83 MB | 2次下載 | 免費
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537797次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191186次下載 | 免費
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多