久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 物聯網與傳感器 > 設計應用 > 基于藍牙的智能門鎖控制系統設計

基于藍牙的智能門鎖控制系統設計

作者:常國權 翟雁 時間:2015-05-14 來源:電子產品世界 收藏
編者按:設計并實現了一種基于OMAP3730的低成本高清屏媒系統,能夠充分發揮可編程C64+DSP的強大計算功能, 利用硬件實現常用視頻格式的高清硬解碼播放,利用軟件兼顧不常有視頻格式的解碼播放,同時針對屏媒系統的特點利用DSP實現轉屏,達到在橫屏和豎屏上的自適應播放的效果。

3 系統軟件設計

本文引用地址:http://cqxgywz.com/article/273270.htm

  系統軟件設計主要包括門鎖控制系統軟件設計和智能移動設備客戶端軟件設計兩部分,門鎖控制系統軟件在Keil C開發環境中用C語言編寫,智能移動設備客戶端軟件主要在Android開發環境下用Java語言編寫。

  門鎖控制系統上電以后,STC15從EEPROM中讀取系統的參數信息并完成系統的初始化工作,這包括初始化串口模塊的工作方式、初始化門鎖狀態、初始化ADC、初始化IO口等操作,STC15通過串口把配對地址、驗證密碼等參數信息發給藍牙串口模塊,并把藍牙串口模塊設置為從模式,等待主設備掃描、地址配對等,而門鎖狀態則是通過限位開關進行檢測的。完成系統初始化操作之后,STC15檢測按鍵按下標志位KeyFlag是否為1,如果為1并且按鍵沒有被屏蔽,則執行相應的開鎖、閉鎖操作。按鍵K1和K2是在中斷中進行檢測的,當有K1或K2按下時KeyFlag為1,如果按鍵沒有被軟件屏蔽,則程序在執行完相應的開鎖、閉鎖操作后把KeyFlag的值清零。ValidFlag是按鍵屏蔽標志位,ValidFlag=1時將會屏蔽K1、K2的開鎖、閉鎖操作,這就保證了即使在屋內要通過按鍵開鎖也有一定的安全條件限制。

  當有智能移動藍牙設備作為主設備通過密碼驗證后,雙方以3DES加密方式進行數據通訊。數據接收采用串口中斷方式,數據包包括數據長度,命令字、數據和一個字節的校驗碼,當串口中斷服務子程序接收到長度和校驗都符合要求的數據后把CMDValid標志位設置為1,然后在主函數中進行3DES解密,并從解密后的數據中分離出命令碼,根據命令碼執行相應的操作,如開鎖、閉鎖、參數設置等。下位機軟件設計流程圖如圖5所示。

  基于Android系統客戶端軟件設計是采用Android系統提供的藍牙API實現的,主要用到了以下幾個類:BluetoothAdapter類、BluetoothDevice類、Bluetoothsocket類、Blueboothserversocket類、Bluetoothclass類。Android系統提供的藍牙API可以實現藍牙設備之間的通信,兩個藍牙設備的通信主要包括了四個步驟:設置藍牙設備、尋找局域網內可能或者匹配的設備、連接設備和設備之間的數據傳輸[7] 。通過調用靜態方法getDefaultAdapter()獲取藍牙適配器BluetoothAdapter就可以啟動藍牙功能,使用BluetoothAdapter類里的方法來實現掃描查找藍牙設備,這需要注冊一個BroadcastReceiver來接受設備掃描到的信息,當點擊查詢到的藍牙設備時,就能獲取到該藍牙的MAC地址,通過MAC地址就能實現藍牙設備之間的連接[8,9 ]。藍牙設備的連接如下:

  BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);

  BluetoothSocket socket = device.createRfcommSocketToServiceRecord(uuid); //固定的uuid

  socket.connect();

  藍牙設備連接成功后就可以實現發送和接收數據,通過流的方式將數據發送到藍牙串口模塊,STC15單片機在中斷服務子程序中讀取到完整的數據包后,分離出命令碼,根據命令碼執行相應的操作,實現對門鎖系統的控制或設置。

  OutputStream os = socket.getOutputStream(); //向藍牙串口模塊發送數據

  InptuStream is = socket.getInptuStream(); //從藍牙串口模塊接收數據

  打開Android系統客戶端先要輸入賬號和密碼,登陸成功后才能進入主控界面,用戶可以修改密碼,該密碼是保存在手機文件中的。進入主控頁面點擊“手機連接藍牙門鎖”就會搜尋在附近能檢測到的藍牙設備,如果藍牙門鎖在Android客戶端能接收到的范圍內就能發現這個藍牙設備,點擊該設備會提示輸入藍牙的配對密碼,密碼輸入正確就可以實現藍牙模塊和手機客戶端的連接及數據通訊了。基于Android系統客戶端軟件測試界面如圖6所示。


4 結論

  以單片機和藍牙串口模塊為核心,并擴展繼電器、電機、鎖閂電流監測模塊等設計的無線智能門鎖控制系統無需機械鑰匙,非接觸、無磨損,通過智能手機等智能藍牙設備可以實現對門鎖的開鎖、閉鎖、報警提示、參數設置等人機交互操作,并采用密碼驗證、數據加密等方式保證系統的安全性。經過實踐證明,該系統安全性高、操作簡便、成本低廉,并具有很高的實用價值。

參考文獻:

  [1]周文超.基于單片機的藍牙智能門鎖設計與實現[J].信息技術,2013(7)

  [2]National Semiconductor Corporation.LM2576 Series SIMPLE SWITCHER 3A Step-Down Voltage Regulator[P].2004

  [3]宏晶科技公司.系列單片機器件手冊[P].2014

  [4]徐愛鈞.STC15增強型8051單片機C語言編程與應用[M].北京:電子工業出版社,2014,10

  [5]上海移摩通訊技術有限公司.藍牙串口模塊FBT-06使用手冊.[DB/OL] http://www. modiatek. com /

  [6]Allegro MicroSystems, Inc.ACS712ELC, Fully Integrated, Hall Effect-Based Linear Current Sensor with 2.1 kVRMS Voltage Isolation and a Low-Resistance Current Conductor [P].2008

  [7]毋建軍.Android應用開發案例教程[M].北京:清華大學出版社,2013

  [8]劉乃琦.Java應用開發與實踐[M].北京:人民郵電出版社,2012

  [9]張碩.基于Android的藍牙多點文件傳輸系統[D].內蒙古:內蒙古大學,2013

光耦相關文章:光耦原理


穩壓二極管相關文章:穩壓二極管的作用


c語言相關文章:c語言教程


霍爾傳感器相關文章:霍爾傳感器工作原理


蜂鳴器相關文章:蜂鳴器原理
霍爾傳感器相關文章:霍爾傳感器原理

上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉