基于通用蓝牙模块的多路传感器数据传输系统

2013-02-13 09:57王红亮吴志宏王金陵
电视技术 2013年19期
关键词:接收端上位串口

王红亮,吴志宏,王金陵

(中北大学a.仪器科学与动态测试教育部重点实验室;b.电子测试技术国家重点实验室,山西 太原030051)

责任编辑:魏雨博

蓝牙技术作为一种无线通信技术,可替代在便携或固定电子设备间使用的连线,它是为了实现以无线传输替代移动设备使用的电缆而产生的,传输范围一般从10 cm到10 m左右,如果增加传输功率,最远传输范围可达100 m左右。蓝牙工作在全球开放的2.4 GHz ISM(工业、科学和医疗)频段,能够实现单点对单点和单点对多点的实时数据或语音传输,采用了快速跳频及前向纠错方案,以保证链路稳定和传输可靠性。蓝牙技术具备成本低、功耗低、体积小等技术特性,适用于一些不方便进行电缆布线的工业测控场合[1]。

为了以相同成本和安全性完成一般电缆的功能,从而使移动用户摆脱电缆束缚,本文设计了一套基于蓝牙通用模块的多路传感器数据传输系统,应用于布线难的工业应用场合[2]。本设计利用传感器采集多路数据通过蓝牙模块发送到上位机,同时为了方便利用上位机实时监测传感器数据,设计的软件使上位机能实时显示数据曲线[3]。

1 硬件电路设计

1.1 硬件系统总体结构

在不方便布线的工业应用场合,采用蓝牙技术可以很好地解决布线问题。利用蓝牙技术传输数据的主要优势是:支持多种设备传输并可穿过实体墙壁或公文包等,能够全方向传输[4]。由于工作在ISM频段的无线电设备有很多种,如家用微波炉、无线局域网等产品,为了很好地抵抗来自这些设备的干扰,蓝牙采用了跳频(Frequency Hopping)技术来扩展频谱(Spread Spectrum),即将2.402~2.480 GHz频段分成79个频点,相邻频点间隔1 MHz,蓝牙设备在某个频点发送数据之后,再跳到另一个频点发送,而频点的排列顺序则是伪随机的,每秒钟频率改变1 600次,每个频率持续625μs[5]。与其他短距离无线通信技术相比,蓝牙跳频更快、数据分组更短,使得基于蓝牙技术的数据传输系统更加稳定可靠。本系统的系统框图如图1所示。

图1 整体系统框图

本系统由数据接收端和数据发送端两部分组成,数据接收端和发送端通过蓝牙模块进行无线数据传输。其中数据发送端的主要功能是接收传感器所采集的数据,经过单片机处理后通过蓝牙模块发送到接收端。接收端通过串口与上位机相连,接收到数据后传输到上位机中,上位机接收串口的数据进行处理并显示传感器数据的实时曲线。

1.2 硬件电路器件

本设计的硬件电路选用MSP430F149作为控制器,选用通用蓝牙模块GC-02作为数据传输介质,选用DS18B20作为传感器模块。

德州仪器(TI)推出的MSP430微处理器是一种基于精简指令集(RISC)的16位混合信号处理器,专为满足超低功耗需求而精心设计。MSP430微处理器将智能外设、易用性、低成本以及业界最低功耗等优异特性完美结合在一起。此处使用MSP430F149作为系统控制单元,对传感器采集的信息进行处理,配合蓝牙模块的工作模式,实时将多路传感器采集到的数据信息传输给蓝牙模块。本文选用具有线路简单,易于识别,读取容易、小型轻便等优点的DS18B20作为数据发送端的温度传感器。它具有独特的单线接口方式,故在使用中不需要任何外围器件,与CPU连接时仅需要单线就可实现DS18B20与微处理器的双向通信。

蓝牙系统一般由天线单元、链路控制(固件)单元、链路管理(软件)单元和蓝牙软件(协议栈)单元4个功能单元组成。GC-02蓝牙模块的结构中采用了CSR公司的AUDIO-Flash蓝牙芯片,自带高效板载天线,最适合工业数据、语音传输,是高质量的CLASS2蓝牙模块。其主要特点是:串口数据传输,最大波特率1.3 Mbit/s,工业级无线数据采集,一对一自动建链,透明串口上传数据至PC、笔记本、PDA、智能手机等。

1.3 发送端硬件设计

发送端由3部分组成:传感器DS18B20、单片机MSP430F149、蓝牙模块GC-02。核心部件是单片机和蓝牙模块,二者之间通过串口写入指令实现数据通信。发送模块上电后,首先单片机通过串口向蓝牙模块写入参数配置命令,配置蓝牙模块的工作模式和工作参数,由于系统中存在多路传感器,单片机需要对采集到的数据进行处理以区分不同传感器的信息。最后单片机通过串口将处理过的数据发送到发送端蓝牙模块中。由于DS18B20采用单总线协议,即在一根数据线就可实现数据的双向传输,但是对单片机而言,必须利用软件来模拟单总线的协议时序从而完成对DS18B20芯片的访问。因此只需对时序定义即可实现对传感器模块所采集的数据信息的接收处理。发送端的硬件电路连接图如图2所示。

1.4 接收端硬件设计

图2 发送端硬件连接图

接收端由2部分组成:蓝牙模块GC-02、串口芯片MAX232。蓝牙模块可以通过串口与上位机通信,上位机通过串口软件向蓝牙模块写入参数配置命令,配置蓝牙模块的工作模式和工作参数。当接收端接收到发送端的数据时,通过串口传输到上位机。接收端蓝牙模块和发送端蓝牙模块配对连接后可以进行双向透明串口传输。当蓝牙模块与远端蓝牙设备建立串口链路,蓝牙模块的PIO5会输出约200 ms间隔的脉冲信号,此时PIO5端口的外接指示灯会快速闪烁,接收端硬件电路连接图如图3所示。

图3 接收端硬件电路连接图

2 软件设计

2.1 单片机程序设计

单片机程序设计主要包括单片机配置蓝牙模块命令程序和单片机读取传感器数据程序。

2.1.1 配置蓝牙模块命令程序

预装SPPV1.03串口通信固件的蓝牙模块,可通过串口AT指令方式进行参数配置,使蓝牙模块工作于从模式、主模式或配置两个蓝牙模块为一对一透明串口模式。蓝牙模块上电后处于正常待机状态,在与远端蓝牙设备未建立蓝牙串口链路时,可通过蓝牙模块的UART串口输入“AT模式进入指令”和“AT模式进入口令”,进入参数配置模式;如果蓝牙模块已经与远端蓝牙设备建立串口链路,蓝牙模块的PIO5会输出约200 ms间隔的脉冲信号,此时外接指示灯会快速闪烁,此时无法进入参数配置模式;如果蓝牙模块已进入参数配置模式,不再与远端蓝牙设备进行任何通信。

在系统工作前应先对蓝牙模块工作模式进行设定,发送端设为从端设备,接收端设为主端设备。设置蓝牙模块为从端设备的流程为:设置蓝牙设备为从模式,设置配对PIN码,设置设备名称,关闭串口提示信息,设置波特率。工作在从模式下的蓝牙模块始终处于待机模式,由主端发起查找、配对和连接。发送模块上电后,单片机通过串口向蓝牙模块写入参数配置命令,设定蓝牙模块的工作模式。

2.1.2 传感器数据读取程序

系统中利用了多路传感器,需要通过单片机接收各路数据。由于本文通过一根数据线实现数据的双向传输,因此,对读写的数据位有严格的时序要求。由于DS18B20严格的通信协议从而保证各路数据传输的完整性与正确性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是以主机为主设备,单总线器件作为系统的从设备。而每一次数据的传输都是从主机启动写时序开始。如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。命令和数据的传输都是低位在先,高位在后。单片机在读取DS18B20的数据后将这些数据通过串口发给蓝牙模块,蓝牙模块在与接收端建立连接的情况下会与接收端进行透明串口通信,接收端会接收到这些数据并交给上位机处理。

2.2 接收端蓝牙模块配置程序设计

接收端蓝牙模块通过串口与上位机连接,上位机可通过串口软件对蓝牙模块的工作模式和工作参数进行配置,此处将接收端蓝牙模块设置为主端蓝牙设备。设蓝牙模块为主端蓝牙设备的流程为:设置蓝牙设备为主模式,设置配对PIN码,设置设备名称,关闭串口提示信息,设置波特率,绑定从端地址。工作在主模式下的蓝牙模块始终处于主模式,自动查找、配对和连接绑定的从端设备,一旦连接成功,即可进行双向透明串口传输。

2.3 上位机软件设计

本文采用MATLAB软件编写串口数据的接收程序,程序中建立串口通信并根据串口的数据生成波形的流程图如图4所示。

程序开始运行后首先为应用程序创建串口对象,然后连接打开串口,打开串口后就可以对串口属性进行设置。在能够有效地进行串口通信前,必须设置正确的串口通信参数。判断串口是否收到数据,如果收到数据程序进入中断开始画波形,如果没有收到数据则继续进行判断。

3 测试结果

图4 上位机软件流程图

将接收端蓝牙模块通过串口与上位机连接,运行上位机,通过上位机测试系统软件显示传感器采集的信息,得到的波形如图5所示。图中横轴代表时间(单位:s),纵轴代表传感器采集的温度(单位:℃),虚线代表的是未经任何处理时,该传感器在一定的时间范围内采集到的温度情况,实线代表的是用手指触摸该传感器采集到的外部温度数据图。由图5的实线可以看出当手指接触外部传感器时采集到的温度不断上升,拿开手指时,温度值直线下降,这说明当外部环境改变时,该传感器可迅速检测出该信息的变化,而且上位机能够及时显示出传感器采集的温度的变化情况。

图5 上位机软件测试图

由此可见,采用这种模式建立的传输系统反应灵敏、稳定可靠、通信效率高。本设计能够及时、准确地对外界温度进行采集并通过上位机显示,电路能够实现信号的实时传输,达到了实时监测外界信息的目的。

4 结论

本系统采用MSP430F149单片机作为处理器,通用蓝牙模块GC-02作为传输介质,实现了实时多点通信的通信网络系统,能够实现实时接收并处理传感器所采集的信息。利用蓝牙技术的低成本、低功耗、体积小等显著的优点,实现对现代工业中的具有综合功能的智能仪表的实时监测和控制,实现现场通信网络与控制系统的集成,也可以很好地完成多路大量信号的准确、快速、实时的采集与预处理功能。上位机软件的加入使操作人员可以在PC机上实现更加直观的监控和操作。本网络可以应用于制造自动化最底层的现场设备或现场仪表互连的通信网络,大大简化了这些网络安装布线的复杂性,在不方便布线的工业应用场合具有很高的应用价值。

[1]栾昌海,王盟.基于蓝牙的多路无线测试系统的研究与实现[J].微计算机信息,2007,23(11):265-266.

[2]童世华.无线智能家居室内终端的设计与实现[J].电视技术,2012,36(10):27-30.

[3]任小洪,傅成华,胡科.基于蓝牙技术的无线数据采集系统设计[J].测控技术,2009,28(1):16-19.

[4]周华兰,唐明浩.蓝牙技术在无线分布式测控系统中的应用[J].电子技术,2003(4):28-30.

[5]张群,杨絮,张正言,等.蓝牙模块串口通信的设计与实现[J].实验室研究与探索,2012,31(3):79-82.

猜你喜欢
接收端上位串口
基于扰动观察法的光通信接收端优化策略
顶管接收端脱壳及混凝土浇筑关键技术
基于多接收线圈的无线电能传输系统优化研究
浅谈AB PLC串口跟RFID传感器的通讯应用
酸槽内钢带位置测量传感器
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索