一种基于蓝牙的无线传感网测控小车设计
2016-10-13龚成莹
龚成莹
一种基于蓝牙的无线传感网测控小车设计
龚成莹
(兰州工业学院电信学院,甘肃兰州730050)
针对无线传感测控数据与移动互联网相结合的需求,设计并实现了一种基于蓝牙和Android智能终端的无线传感网测控小车。利用由CC2530组成的无线传感网进行节点数据的采集和通信,IAP15F2K61S2单片机控制的测控小车进行数据的汇聚和转发,在Android终端上实现数据的存储和显示。实验结果表明,该方案能够对传感数据、物联网和移动互联网进行有效融合。
无线传感网;蓝牙;智能小车;Android
引用格式:龚成莹.一种基于蓝牙的无线传感网测控小车设计[J].无线电工程,2016,46(5):72-74,94.
0 引言
随着检测技术、无线传感网及移动互联网技术的相互渗透,产生了多种技术相融合的网络化测控系统,将无线传感网与智能小车以及Android智能终端相结合,对传感数据的感知、数据传输、数据处理、数据存储和数据显示进行有效整合,这在工业生产、环境监控、智能交通、智能家居和公共卫生等多个领域有着广泛应用。同时,作为一款开源系统,Android不仅在移动互联网领域占据了大半市场,在物联网和嵌入式领域也得到了广泛应用[1-2]。
本文针对检测数据与移动互联网相结合的需求,融合利用无线传感网、Android智能系统和单片机嵌入式技术,利用蓝牙通讯,设计了一种多用途的智能测控小车。
1 系统设计
系统结构如图1所示。系统由无线传感网测控节点、测控小车和Android测控终端3部分组成,其中无线传感节点负责对环境状态进行数据采集,数据由无线传感网络进行传输;测控小车由Android终端进行控制,对无线传感网节点数据进行汇聚,在测控小车上挂载无线传感网网关节点,通过串口与无线传感网交换数据;测控小车与Android终端之间使用蓝牙方式通讯。
图1 系统结构
2 无线传感节点
采用无线传感器网技术,主要是针对短距离、低功耗和低速的数据传输。传感节点负责采集在不同方位布点的节点信息,包括节点温度、湿度和光照等状态信息,数据节点之间通过特定无线传输芯片进行连接和转发。无线传感网络具有自组织和自维护特征,即当某些节点发生问题时,不会影响网络其他传感器节点的数据传输,可以在不增加单个节点成本同时进行大规模的布设[3]。
采用基于CC2530的Zigbee协议组建无线传感网络[4],利用各网络节点采集节点温度、湿度等状态,数据经由路由节点传送到网关节点,将网关与测控小车控制器相连,通过串口与单片机进行通讯。
3 测控小车
测控小车在Android控制端的控制下完成无线传感网数据的汇聚和传输功能,具有循迹、避障、测距、测温、电机驱动和串口通讯等功能,最终通过蓝牙方式将传感数据上传至Android控制终端。
3.1 模块设计
测控小车包括:电源驱动、循迹、超声波测距、红外避障、测温、显示、WSN网关节点和蓝牙串口等模块,如图2所示。其中,主控芯片采用STC公司生产的单时钟周期的单片机IAP15F2K61S2,具有高速、低功耗和超强抗干扰功能强的特点,其内部集成3路PWM、2路串口和8路高速10位A/D转换,非常适于在电机控制和强干扰场合应用[5]。
图2 测控小车
3.2 双串口应用
双串口控制流程如图3所示。
图3 双串口控制流程
利用IAP15F2K61S2的双串口特点,实现测控小车同时与传感节点和Android控制端进行通信的功能,串口2的默认端口是RxD2/P1.2(可通过寄存器设置到P4.2)和TxD2/P1.3(可通过寄存器设置到P4.3)[6]。程序控制使用中断方式,当串口1收到无线传感网网关节点的数据后,对数据进行校验,若通过校验,则将数据存入缓冲区;主程序定时读取缓冲区数据,按照约定的协议格式封装成数据帧,通过串口2向 Android上位端发送数据帧。反之,当Android端向测控小车发送指令时,IAP15F2K61S2执行类似的反方向操作。
3.3 蓝牙通讯
测控小车与Android控制端采用蓝牙方式进行数据通讯,由于IAP15F2K61S2单片机本身没有蓝牙通讯的功能,这里采用第3方的蓝牙串口模块将单片机的串行口扩展到蓝牙无线信道[7]。
根据设计需求,选择济南华茂科技的蓝牙数传模块HM-10,HM-10支持蓝牙4.0,具有低功耗的特点,其串口收发没有字节限制,在空旷环境下与iphone4S可以实现100 m的远距通讯。HM-10采用TI CC2540芯片,配置256K空间,支持AT指令,用户可以根据需要更改角色(主、从模式)以及串口波特率、设备名和配对密码等参数,使用灵活[8]。
HM-10模块具有丰富的外设接口,除了UART_ TX、UART_RX接口外,还有USB和PIO接口,这里选择UART接口,IAP15F2K61S2的串口2与HM-10 的UART接口交叉相连,这样无需了解蓝牙底层协议,测控小车即可与Android终端通讯了。
3.4 通讯协议
Android端向测控小车发送数据协议格式如表1所示。
表1 Android向小车发送数据格式
数据帧由5个字节构成,前2个字节是固定值,即包头,第3个字节是主指令,后2个字节是副指令,副指令是属于主指令的功能指令,主指令功能包括:
①停止:“0x01”,副指令为“0x00”,“0x00”;
②前进:“0x02”,副指令为小车速度,即PWM设置值;
③后退:“0x03”,副指令为小车速度,即PWM设置值;
④左转:“0x04”,副指令为小车速度,即PWM设置值;
⑤右转:“0x05”,副指令为小车速度,即PWM设置值;
⑥自动循迹:“0x05”,副指令为小车速度,即PWM设置值。
测控小车向Android端发送的指令协议格式如表2所示,长度根据传感节点的数量而定,包括:包头、包尾、小车状态、测距值和各传感节点状态值等字段。
表2 小车向Android发送数据格式
4 Android测控端
Android控制端由运行在Android移动设备上的APP应用程序来实现,该APP利用蓝牙串口协议SPP与测控小车进行无线通讯[9],实现对测控小车的控制,包括:方向的手动控制、重力感应、避障和自动寻迹;同时,Android移动设备能够实时地接收、存储和显示测控小车发送来的传感节点数据。
Android应用对蓝牙串口数据输入、输出处理流程如图4所示。
图4 数据输入、输出处理流程
Android应用程序以Client的角色主动连接蓝牙模块HM-10,Android的蓝牙串口服务(SPP)具有其唯一的UUID和MAC地址。在主线程中用Bluetooth Adapter适配器对象注册Broadcast Receiver广播接收者来获取蓝牙状态并实现设备的搜索和配对;在与HM-10配对后,建立Android服务组件在后台监听蓝牙数据,验证接收到的数据后,对数据帧进行解封,根据约定的协议,将数据存入本机的SQLite数据库[10],同时显示在Activity界面上。以同样的方法向测控小车发送指令,实现全双工串行通讯。
5 实验测试
在Android 2.3以上的系统中运行测控小车的APP应用程序,程序界面如图5所示。实验室环境下,在小车以外布设3个CC2530网络节点,在小车车身上安装1个协调器节点。结果表明,使用此方案可以对测控小车进行流畅的控制,小车可以手动和自动运行,测控小车能够在运动状态下保障节点数据的正确汇聚和传输,节点状态界面每隔1 s刷新显示无线传感网络中各监测节点采集到的数据。
图5 Android端测控界面
6 结束语
利用无线传感网节点实现环境状态的采集,构建可以自组网、多跳、便于扩展的传感数据通讯网络;采用基于IAP15F2K61S2单片机的测控小车作为数据汇聚网关,实现小车控制、循迹、测距和双串口通讯等功能;通过蓝牙通讯方式完成Android系统对测控小车的控制、测控数据交换和存储显示。文中提出的方案适用于工业控制、消防安全和探测等工作环境,具有一定的应用价值。
[1] 冯艳红,何加铭,杨任尔,等.基于Android蓝牙技术的健康服务系统设计[J].无线电通信技术,2014,40 (1):61-64.
[2] 汤莉莉,马 仟,黄 伟.语音无线遥控智能小车设计[J].无线电工程,2014,44(12):66-69.
[3] 马正华,宋 磊,焦竹青,等.基于无线传感网的蔬菜工厂智能监控系统设计[J].自动化与仪表,2013(11):20-24.
[4] 黄家露,杨 方,张衍林.基于CC2430的温室无线传感器节点设计与应用[J].华中农业大学学报,2013,32 (5):119-123.
[5] 韦建新.超小型减摇鳍变参PID电控系统的实现与分析[J].船舶工程,2012,34(s2):284-286.
[6] 汤莉莉,黄 伟,王春波,等.基于Cortex-M3单片机的WiFi物联网小车的设计[J].无线电工程,2014,44 (4):58-61.
[7] 王筱珍,关艳如.基于Modbus协议的Android端工厂化养殖移动监测软件[J].测控技术,2014,33(1):115-117.
[8] 马丹萍,李 勇,梁勤欧.无线遥控智能小车的运动模拟及轨迹绘制[J].浙江师范大学学报(自然科学版),2015,38(1):116-120.
[9] 刘哲源,王 丽,师五喜.基于安卓平台的血压检测系统[J].单片机与嵌入式系统应用,2013(11):67-69.
[10]王 浩,邵高平,胡泽明.基于SQLite的战场态势信息快速存取研究[J].计算机工程与设计,2013,34(8):2 743-2 749.
Design of Measurement and Control Car for WSN Based on Bluetooth
GONG Cheng-ying
(College of Electronics and Information Engineering,Lanzhou Institute of Technology,Lanzhou Gansu 730050,China)
For the demands of test data combined with the mobile Internet,a car for wireless sensor network measurement and control based on Bluetooth and Android is designed and implemented.In this system,the information of environment status is acquired and transmitted by wireless sensor network which consists of CC2530,the WSN data is gathered and forwarded by IAP15F2K61S2 MCU,and finally data is stored and displayed using Android smart terminal.The test shows that this system can effectively integrate the sensor data,IoT and mobile Internet.
wireless sensor network;Bluetooth;smart car;Android
TP277
A
1003-3106(2016)05-0072-03
10.3969/j.issn.1003-3106.2016.05.19
2016-01-06
甘肃省高等学校研究生导师科研计划资助项目(2014A-124);兰州工业学院青年科技创新计划项目(14K-008)。
龚成莹 女,(1979—),硕士,副教授。主要研究方向:信号与信息处理。