《一种基于蓝牙技术的嵌入式防盗系统设计_袁晓峰.docx》由会员分享,可在线阅读,更多相关《一种基于蓝牙技术的嵌入式防盗系统设计_袁晓峰.docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、DOI: 10.16652/j .issn. 1004-373x.2014.04.035 2014年 2月 15曰 现代电子技术 Feb. 2014 第 37 卷第 4 期 Modern Electronics Technique Vol. 37 No. 4 一种基于蓝牙技术的嵌入式防盗系统设计 袁晓峰,赵越,李岩,高德远,高武 (西北工业大学计算机学院,陕西西安 710072) 摘要:为了保护贵重物品的安全,设计出一款基于超低功耗单片机 MSP430和蓝牙技术的防盗系统。防盗器的控制 端是基于安卓智能手机开发的应用软件,操作便捷,智能手机用户即是防盗器的潜在用户。手机通过读取防盗器蓝牙的 R
2、SSI值,可以判断手机与防盗器的距离,从而根据距离实现防盗功能。实验表明,防盗器设计方案可以实现主动报警和防盗 功能,且软件所测的距离在 5 m的范围内精度达到 1 m以内,具有良好的实用性。 关键词:防盗器; MSP430;蓝牙技术;安卓系统;接收信号强度 中图分类号: TN926-34; TP39 文献标识码 : A 文章编号: 1004-373X(2014)04-0045-04 Design of anti-theft system based on Bluetooth technology YUAN Xiaofeng, ZHAO Yue, LI Yan,GAODeyuan, GAO W
3、u (School of Computer, Northwestern Polytechnical University, Xian 710072, China) Abstract: In order to protect the security of valuables, an anti-theft system based on ultra-low power MSP430 and Bluetooth technology was designed. The burglar alarm is controlled by application software developed for
4、 Android smartphone. It? s easy to operate. Smartphone users are the potential users of burglar alarm. The smartphone APP can judge the distance between the cellphone and burglar alarm by reading the RSSI values of the burglar alarm Bluetooth. The results obtained in a lot of experiments show that t
5、he burglar alarm can realize the functions of initiative alarm and anti-theft. The software measuring accuracy is 1 m in the range of 5 m. The design scheme has better practicability. Keywords: burglar alarm; MSP430; Bluetooth technology; Android system; RSSI 0 引言 随着现代生活节奏的加快,贵重物品经常会丢失或 被遗忘。利用嵌入式计算机
6、技术和电子技术设计的防 盗器,可以帮助人们有效地保护贵重物品。防盗器因其 特殊的应用场景,应该具备小体积、低功耗、大电量等特 点。传统的电子防盗器多分为主机和子机,需要通过主 机控制子机来实现防盗功能 “ 1,无疑增加了操作难度和 制作成本。近年来智能手机的用户数量呈爆炸式增长, 将智能手机应用于物联网领域,可以节约成本,而且产 品将拥有大量的潜在用户 本文设计出可以利用智能手机软件进行控制的防 盗器,防盗器与智能手机之间通过蓝牙进行无线连接。 我们只需要在智能手机安装控制软件 APP并 建立蓝牙 连接,即可轻松控制防盗器实现主动报警、断开连接报 收稿日期 =2013-11-15 基金项目:国
7、家自然科学基金项目:高性能 PET前端电子 微系统结构研究 ( 61101190) 警、超出安全距离报警、更改防盗器名称以及蓝牙连接 密码等功能。当监测到贵重物品可能丢失时,手机和防 盗器均会立即发出报警声音,具有很强的实用性和良好 的市场前景。 1 总体设计方案 防盗器系统包括硬件系统和软件系统两部分。防 盗器的硬件实物体积轻巧,与需要保护的贵重物品放在 一起来实现防盗功能。软件系统包括单片机嵌人式软 件和智能手机应用软件两部分。单片机代码的主要功 能是监测蓝牙连接状况和接收手机发送的指令 ,从而控 制外围电路进行相应操作。智能手机控制软件则是基 于 Android系统开发的一款应用 APP
8、,手机通过控制软 件可以与防盗器建立蓝牙连接、发送响铃和修改名称等 指令、设置安全距离等。图 1展示了防盗器与智能手机 之间的通信原理。 为了提高贵重物品的安全系数,防盗器在两种情况 下可以报警 , 一 种是蓝牙连接断开后,另一种是智能手 机和防盗器之间的距离超过控制软件设置的安全距 离。智能手机通过不断检查 Android系统的蓝牙设备是 否读取错误来实现蓝牙连接状态的检测。防盗器中的 单片机通过向蓝牙发送 “ AT” 指令来检测蓝牙连接状 态:当蓝牙连接时,手机会收到单片机发送的字符 ;若蓝 牙断开,防盗器的蓝牙模块则会向单片机返回 “0 K” 字 符,单片机检测到“0 K” 字符后得知蓝
9、牙连接断开,从而 发出报警响铃。 防盜器 智能手 # 图 1防盗器与智能手机的连接 智能手机的控制软件可以通过 RSSI(Received Signal Strength Indicator) 来 判断手 机与防 盗器的 距离。 RSSI是接收信号的 强度指 7K,智能手机通过 Android系 统的 intent.getExtra(BluetoothDevice.EXTRA_RSSI)获取 蓝牙信号 RSSI值的变化。当控制软件监测到手机与防 盗器的距离超出所设置的安全距离时,立即进行报警并 向防盗器发送报警指令,使得防盗及时响铃报警。手机 接收到的信号强度 /与传输距离 r的关系如式 (
10、1)所 示: P R =A- 1 7 ? l g r( 1) 式 中 为 距 离 1 m时手机接收到防盗器的 RSSI值 ;71为 传播因子,与所处的环境有关 2 硬件系统设计 防盗器的硬件系统采用小体积、低功耗的商用现成 芯片 ( COTS)搭建而成,硬件系统功能模块如图 2所示。 图 2 防盗器硬件系统功能模块 控制模块核心为超低功耗单片机 MSP430G2553。 MSP430系列单片机是 TI公司推出的 16位精简指令集 混合处理器,大量实验和产品应用证明, MSP430相较其 他系列的单片机具有卓越的低功耗的性能 m,可以大大 节省防盗器的电量。单片机根据防盗器系统状态以及 智能手机
11、发送的指令,对防盗器的功能模块发送控制信 号,从而实现相应操作。 蓝牙模块是米用 CSR(Cambridge Silicon Radio)公 司的蓝牙芯片,支持 AT指令集,通过串口与单片机进行 数据通信。蓝牙模块与手机的蓝牙建立连接后,为智能 手机和防盗器提供无线通路,可传输数据和控制指令。 电源模块为防盗器系统的各个模块提供所需的电 源,主要包括小体积的锂电池和 L D 0芯片。锂电池的 使用,使防盗器具有充电功能,无需频繁更换电池,从而 更加实用。LD0芯片则将锂电池的输出电压转换为稳 定的 3.3 V,保证芯片正常工作。 指示模块由多个 LED灯组成,分别指示防盗器电 源的开关、蓝牙通
12、路连接的状态以及工作模式等。 报警模块可以是蜂鸣器或音乐芯片等。单片机接 收到手机发来的响铃指令或检测到蓝牙连接断开后,可 以控制报警模块进行响铃报警。 用户通过按键,可以控制防盗器的电源开关和单片 机的复位功能 _。 此外, LCD显示模块可以和用户更好的交互,必要 时可以实现这部分的功能。由于 LCD显示模块需要占 用大量面积,与防盗器小体积的目标相悖,本设计没有 采用显示模块,而是通过智能手机的控制软件进行可视 化操作。 所制作的防盗器实物如图 3所示。 (a防盗器正面 ( b)防盗器背面 图 3 防盗器硬件系统 3 软件系统设计 3.1 嵌入式软件设计 防盗器的单片机需要实现的主要功能
13、为接收手机 发送的指令并判断所要执行的操作、控制响铃的开关以 及修改蓝牙模块的名称和密码等 15。单片机代码的主要 功能函数及作用如下: CLOCK_INIT(); UART_INIT (); LINK STATUS。 ; MODIFY_NAME() CHANGE_PW(); /设置单片机运行的系统时钟 /初始化单片机与蓝牙模块之间的 串口,配置波特率为 9 600 b/s /判断蓝牙的连接状态 /修改防盗器的名称 /修改蓝牙的连接密码 在防盗功能中,单片机 MSP430在上电后的运行流 程如图 4所示。 图 4单片机代码流程图 单片机接收到手机软件所发送操作指令误命令的 概率与指令码集的最小
14、码距有关。假设指令码集的大 小为 “ 个指令码 ) ,码距为么指令码长度为 L,则指令 码集的误命令概率为 ( -l)Pf(l-PJw ,其中八为信道 误码率 16。从上式可以看出,在码集大小和指令码长 度 L相同时,指令码集的最小码距越大,发生误命令的 概率越低。因此手机发送的蓝牙指令集应尽可能选择 最小码距较大的指令集。 本文定义操作指令为 8 b, 需要 6条指令,所以最小 码距为 4的操作指令及其对应操作定义如表 1所示 m。 表 1 指令定义 指令 操作定义 0x00 响铃报警 0x35 停止响铃报警 0x53 修改防盗器名称 0x66 修改蓝牙连接密码 0x96 设置防盗模式标志位
15、 0xA3 清除防盗模式标志位 3.2安卓应用软件设计 智能手机端应用软件是基于 Android开源平台开发 的蓝牙控制软件。利用 Android平台提供的 UI管理机 制和蓝牙设备管理接口,可以轻松方便地实现智能手机 蓝牙适配器与防盗器蓝牙模块之间的通信以及接收信 号强度 ( RSSI)测量气 安卓控制软件的功能模块如图 5所示。 图 5安卓应用软件模块结构 其中,主界面模块显示软件的功能按钮和当前防盗 器的状态,在后台接收其他模块返间的蓝牙操作请求, 并通过与蓝牙设备服务模块进行交互来实现这些操作。 蓝牙设备服务模块通过调用 Android系统 API来处 理各种前台发出的蓝牙设备操作请求
16、。 设备列表模块负责显示手机蓝牙已配对的设备列 表 ( Paired Device List)和新发现的设备列表 ( Discovered Device List) ,并且负责管理后台刷新线程 , 通过不 断刷新设备列表来寻找新的设备。 设备功能菜单模块显示设备相关的功能操作 (如修 改名称、响铃报警等),并将用户选择的功能转换为后台 命令传送至主界面模块,进而完成相应的操作。 环境设置模块通过较为直观的方式,采集环境嘈杂 度和安全距离两个数值,为测距函数提供参数。 防 盗器安卓控制软件的核心为蓝牙设备服务模块, 主要负责手机蓝牙的打开与关闭、蓝牙扫描的启动与中 止、扫描结果的获取、蓝牙连接的
17、创建与断开以及蓝牙 设备的距离检测等功能。 蓝牙设备服务模块作为监控系统蓝牙设备的模块, 具有以下四种状态 8:就绪状态、侦听状态、连接请求状 态和已连接状态。功能模块的状态转化关系见图 6。 图 6蓝牙设备服务模块的状态转换 如图 6所示,当软件启动时,该模块自动初始化为 就绪状态,并将利用 BluetoothAdapter.getDefaultAdapt- er()函数获取手机默认的蓝牙适配器 (Bluetooth Adapter), 并检查其是否可用 。若 手机蓝牙适配器可用 ,模块 将转换为侦听状态,启动 Accept Thread线程来侦听防 盗器蓝牙设备 ( Bluetooth D
18、evice)的连接请求 。 、 若 侦听 状态下得到其他蓝牙设备的连接请求,则侦听线程的 listenUsingRfconimWithServiceRecor()函数将被唤醒, 并尝试建立蓝牙 Socket连接 w,此时模块将转换为已连 接状态。而当模块在侦听状态下得到前台模块 ( 如主界 面模块等)发出的连接防盗器蓝牙设备的请求时,模块 会转换为请求连接状态。在此状态转换时,会终止 Accept Thread 线程并启动 Connect Thread, Connect Thread 线程则会调用安卓系统 AH中对应蓝牙设备类的 creat- eRfcommSocketToServiceRec
19、ord()方法来尝试与防盗器 蓝牙建立 Socket连接。若在请求连接时,得到了防盗器 的响应,并成功创建了蓝牙连接,则该模块将转换为已 连接状态。当转换为已连接状态时,模块将终止其他一 切线程,并创建 Connected Thread线程来维护连接。同 时,通过该线程提供与防盗器蓝牙设备消息的输入和输 出操作。 蓝牙设备服务模块在提供了模式转换的同时,封装 了一些常用的操作,来使前台模块更容易与该后台模块 进行交互。下面是前台模块常用到的操作: start (); /启动 /重置服务 getState (); /获取模块状态 connectDevice (); /连接指定设备 stop ()
20、; /停止服务 write (); /向设备写入字符 read (); /从设备读取字符 connectionFailed (); /当连接请求失败时的操作 connectionLost (); /当已建立的连接断开时的操作 基于 Android系统设计的应用软件功能界面截图如 图 7所示。 图 7软件功能界面 4 系统测试 打开控制软件,与防盗器建立蓝牙连接后,发送响 铃指令,防盗器主动报警 ;停止响铃指令则可使防盗器 停止报警。手机软件对防盗器进行追踪,可实现蓝牙连 接断开后报警和超出安全距离后报警的功能,有效防止 贵重物品的遗失。此外,点击软件 “ 修改名称 ” 和 “ 修改 密码 ”
21、按钮,并输人新的名称密码,即可成功修改防盗器 的名称和蓝牙连接密码。 在空旷的环境下,对安卓应用软件的测距功能进行 了测试。软件除了可以手动设置外界环境参数,还具有 学习4和值的功能,从而提高所测距离的精度。根据 式 ( 1),在手机和防盗器距离 1 m时测得 4值,然后根据 距离 2 m时的RSSI值计算出值,则距离 / 与防盗器的 RSSI值 /关系如式 (2)所示: 剛 ) (2) 手机软件所测得防盗器的距离与实际距离的对比 如表 2所 7K。 表 2 手机与防盗器距离 m 距离 测量距离 /m 实验 1 实验 2 实验 3 3 3.18 2.75 2.74 4 3.99 3.77 3.
22、19 5 5.27 5.57 5.92 7 9.49 8.5 7.53 10 12.32 12.02 10.03 由表 2的数据可以看出,控制软件在 5 m以内的范 围内所测数据精度较高,在 1 m以内;当距离大于 5 m 时,软件所算出的距离精度较差,但蓝牙连接断开后报 警的功能可以弥补精度的不足。 5 结论 本文设计的防盗系统,体积小巧,通过智能手机控 制即可实现防盗功能,操作方便。所设计的安卓应用软 件操作界面简洁,功能完善, 5 m以内的测距精度可达 1 m以内。后续可将本设计继续优化,将防盗器做的更 小;同时也可增加 GPS、 GSM等模块,实现可定位的小孩 防丢器等更强功能的作品。
23、此外,开发基于其他操作系 统的控制软件,可以使个人计算机和其他智能系统的手 机控制防盗器,从而有更好的市场前景。 参考文献 1 张立霞,周立余,冯新 .基于 AVR和 RFID的电子防丢防盗器 设计 J.现代电子技术, 2013, 36( 15): 91-94. 2 王贺 .谈物联网于智能手机应用系统设计环节 J.河南科技, 2013(4) : 23-24, 3 方震,赵湛,郭鹏,等 .基于 RSSI测距分析 J.传感技术学报, 2007,20(11): 2526-2530, (下转第 52页) 速区域。 测试结果表明:系统能实时处理标清视频流,但对 高清视频还需进一步优化。 第二段视频主要测
24、试系统的车型识别能力,测试数 据如图 5所示。 表 1 输 入 视 频 测 试 后 结 果 图 5多车并行时能够准确区分 第二段视频夹杂较多无关目标,如行人、抖动的树 枝横向行驶的车辆等,其中双白线之间区域为本场景的 称重测速区域。 通过测试,可以看出无关目标能被全部排除,体现 了车辆筛选很好的鲁棒性。 视频中共通过 9辆汽车,所 有车辆均本正确识别车型。 3 结语 通过测试数据可以看出,本系统提出的车型识别算 法能适应不同场景和一定的环境变化,具有较高的效率 和鲁棒性。随着计算机及其他数字信号处理 ( DSP)设 备的信息处理能力不断提高,应用实时视频处理技术促 进智能交通的能力将更大更稳定
25、。若本系统能真正应 用在智能交通系统上,有望对遏制道路超载超速现象做 出贡献。 参考文献 1 LIENHART Rainer, MAYDT Jochen. An extended set of Haar- like features for rapid object detection J. IEEE ICIP, 2002 (1): 900-903. 2 徐卫星,王兰英,李秀娟 .一 种基于 OpenCV实现的三帧差分运 动目标检测算法研究 J.计算机与数字工程 , 2011( 11): 141- 144. 3 BRADSKI G R. Computer vision face trackin
26、g for use in a perceptual user interface EB/OL. 2010-12-02. http: / www.wen- 4 张波,鲁新光,邓铁六,等 .动态车辆称重物理模型与提高动态 称重准确度研究 J.计量学报, 2009( 5 ) :426-430. 5 唐双发 .基于 OpenCV的车辆视频检测技术研究 D.武汉:华中 科技大学 ,2009. 6 詹群峰 .基于 OpenCV的视频道路车辆检测与跟踪 D.厦门:厦 门大学 , 2009. 7 郭旭,张丽杰 .运动目标检测视频监控软件的设计与实现 J. 计算机技术与发展, 2010,20(8 ):200-
27、207. 8 周品 ,李晓东 .Matlab数字图像处理 M.北京:清华大学出版社, 2012. 9 陈胜勇,刘盛 .基于 OpenCV的计算机视觉技术实现 M.北京: 科学出版社, 2008. 10 刘瑞祯,于仕琪 .OpenCV教程基础篇 M.北京:北京航空航天 大学出版社, 2007. 11 范伊红,彭海云,张元 .基于 SVM的车型识别系统的设计与实 现J.微计算机信息, 2007, 23( 5):296-297. 12 李庆忠,陈显华,王立红 .一种视频运动目标的检测与识别方 法 J.模式识别与人工智能, 2006,19(2):238-243. 13 美 REINDERS J,豪雪军
28、 .Intel Threading Building Blocks 编 程指南 M.北京 :机械工业出版社, 2009. 14 刘慧英,王小波 .基于 OpenCV的车辆轮廓检测 J.科学技术与 工程, 2010,10(12) :2987_2991. (上接第 48页) 4 Texas Instruments. MSP430x2xx family users guide EB/OL. 2013-07-10. http:/. 5 沈建华,杨艳琴,翟骁曙 .MSP430系列 16位超低功耗单片机原 理与应用 M.北京:清华大学出版社, 2004. 6 谭维炽 .关于遥控指令错误概率的计算 J.遥测
29、遥控, 2003(4): 63-65. 7 Anon. Android Bluetooth connection : service discovery failed EB/OL. 2012 - 08 - 23. http:/ topics/connectivity/bluetooth. 8 郑昊 .基于 Arduino/Android的蓝牙通信系统设计与实现 D. 武汉:湖北大学, 2012. 9 范晨灿 .基于蓝牙 4.0传输的 Android手机心电监护系统 D.杭 州:浙江大学, 2013. 10 于敏芳,曾连连,张明哲 .最小码距为 4比特、长度为 12比特 的复合正交码集的生成方法 J.遥测遥控, 2013(3) :9-11. 作者简介:袁晓峰( 1988 ),男,山西运城人,硕士研究生。研究方向为嵌入式系统软硬件设计。 分辨率 帧率 /(帧 /s) 16 23 30 432x240 无延迟,正确识别 无延迟, 正确识别 出现延迟, 正确识别 856x480 无延迟,正确识别 出现延迟, 正确识别 出现延迟, 正确识别 1 920x1 080 出现延迟,正确识别 延迟严重, 正确识别 延迟严重, 正确识别
限制150内