>
首页 » 技术文章 » 蓝牙无线数据采集模块的设计

蓝牙无线数据采集模块的设计

作者:■ 西北工业大学电子信息学院 张玉真 马建仓  时间:2005-04-26 20:39  来源:本站原创

摘 要:本文介绍了由ADmC812和蓝牙芯片ROK101008构建的无线数据采集模块,给出了该模块的总体方案、硬件电路和软件设计。该模块可以实现8路数据的采集与无线传输,并能实现2路PID控制。
关键词:蓝牙技术;数据采集;无线传输

引言
蓝牙技术是近年来发展迅速的短距离无线通信技术,利用蓝牙技术构建无线数据采集模块,可以减少系统间的电缆连接,具有携带方便、应用灵活等优点。本文介绍了利用蓝牙芯片和数据采集芯片研制成的蓝牙无线数据采集模块,对模块的总体方案、硬件电路和软件设计等内容作了详细的介绍。蓝牙无线数据采集模块与数据分析系统调试结果说明该模块性能达到了设计要求。

无线数据采集模块方案
无线数采及分析系统的总体方案如图1所示,PC机通过挂接在USB口的蓝牙芯片发送指令信息(通道选择、采样频率、采样长度等)给数据采集模块,数据采集模块接收指令信息,采集数据并以无线方式传输给PC机,PC机接收数据后显示,并进行各种处理。
蓝牙无线数据采集模块是无线数据采集及分析系统的重要组成部分,该模块由数据采集单元、无线传输单元、系统软件几大部分构成。数据采集模块由电池供电,安装在现场,可脱离系统按指令自动完成数据的采集。
在图1中,输入信号是传感器放大器送来的模拟信号,此信号经信号调理电路隔离放大及极性转换后送入数据采集芯片ADmC812,再经过 A/D转换(高速数据采集时数据可缓存在外部RAM AT29LV256中),然后封装成数据包,由蓝牙芯片的天线发送。电源管理模块利用电池为信号调理电路、数据采集芯片、蓝牙芯片提供长期稳定的电源。

数据采集模块硬件设计
在硬件电路的设计中,最重要的是所用元器件的选型,特别是主要元器件的选型。无线数据采集模块中主要的元器件有两个:一是数据采集芯片,另一个是无线传输模块。
无线数传模块选型
爱立信的蓝牙模块ROK 101008和ROK101007(含USB接口)是两款使用非常广泛的产品,它们集成了射频单元和基带控制器,提供多种HCI(主机控制器接口)传输层接口,并提供用于试验的接口电路板和天线,在使用上非常方便。由于本文设计的蓝牙无线数据采集模块使用串口通信,而ROK101008可以完成无线数采模块所需要的功能,所以采用了ROK101008蓝牙模块。
数据采集芯片选型
ADmC812的优点是集成了一个完全可编程、自校准、高精度的模拟数据采集系统,它的体积小、成本低,通过采用闪速/电擦除存储器,辅之以内含的加载器和调试软件,解决了以ROM为基础的芯片产品的灵活性差、存储困难等问题,也使系统的设计、编程、调试更加简便。另外,它的空闲和掉电方式对于电池供电的测控设备来说都是至关重要的性能。
无线数据采集模块原理框图
无线数据采集模块硬件如图2所示。为了用电池满足ADmC812、ROK 101008、7HC573、AT29LV256芯片3.3V供电,以及信号调理电路 5V供电要求,采用可以输出3.3V和5V电压的稳压模块MAX756和输出-5V电压的ICL7660。由于ADmC812只能实现单极性模数转换,因此以差分放大器IN105进行双极性到单极性转换,并实现隔离和放大作用。另外,以差分放大器OP291实现两路D/A输出信号单极性到双极性转换及隔离作用。极性转换电路原理如图3所示。

数据采集模块软件设计及调试
数据采集模块的软件主要包括两部分:数据采集和蓝牙通信。该软件是在Windows环境下用C51编写的,用Keil编译成HEX格式的文件,然后用ADI公司提供的程序下载软件Wsd通过RS-232串口和接口电路下载到ADmC812。数据采集模块的调试包括软件调试和硬件调试,软件调试可以在Keil软件环境下完成,硬件调试不需要专门的开发工具,只要在网上下载一个普通的串口调试工具ComTools就可以观察程序的运行情况。
数据采集模块软件流程
数据采集模块的软件主要有初始化程序(包括串口、蓝牙、状态寄存器、定时器和看门狗)、接收采集参数程序、A/D转换及数据存储程序、数据发送程序等部分组成。其流程如图4所示。
所实现的软件是基于实际工程应用的,数据采集模块的单片机接收上位机的指令,按照上位机设置的参数(采样频率、采集通道数及通道号、采集模式、采集点数等)进行数据采集,然后把采集的数据发送 给上位机进行数据显示和分析处理。
所研制的数据采集模块还可实现PID控制,其程序主要包括:接收控制参数(通道选择、比例系数、积分系数、微分系数、采样频率等)、采样(A/D转换)、PID运算、D/A转换以及数据发送等。
蓝牙通信
两个蓝牙设备进行数据通信是通过HCI分组实现的。HCI分组有命令分组、事件分组和数据分组。图5是蓝牙通信示意图。ACL (Asynchronous ConnectionLess)数据通信流程一般有6个步骤:蓝牙模块自身初始化、HCI流量控制设置、查询、建立连接、进行数据传输和断开连接。其中蓝牙初始化和HCI流量控制设置部分程序主体如下:
Init_bluetooth( )
{
Reset(); /*复位蓝牙主机控制器、链路管理器和射频部分*/
Read_Buffer_Size(); /*读取主机发往主机控制器数据分组的最大长度和允许的数量*/
Set_Event_Filt(); /*制定事件过滤器,主机通过事件过滤器来过滤所需事件*/
Write_Scan_Enable(); /*控制蓝牙设备是否周期性地扫描其他蓝牙设备的寻呼扫描或查询请求*/
Write_Connection_Accept_ Timeout(); /*设置超链接时间*/
Write_Page_Timeout(); /*确定本地链路管理器等代远端设备基带寻呼响应的超时时间*/
Set_Host_Controller_to_Host_ Flow_Control();
/*开启和关闭主机到主机控制器方向的流量控制*/
Host_Buffer_Size(); /*主机通知主机控制器可以发往主机的数据分组最大长度和缓冲区所能同时缓存的最大分组数量*/
}
初始化程序主要是单片机对蓝牙发送一系列命令分组。单片机每向蓝牙发送一个HCI命令分组就要接收蓝牙返回的事件分组,判断命令执行的情况。若返回事件分组不正确就要重新初始化蓝牙,直到完全正确。蓝牙芯片初始化完成后,打开流量控制,对数据流量进行配置,包括数据分组的长度等。此后,主设备查询周围的蓝牙设备,找到之后即可向其发出建立连接指令,建立ACL连接。建立连接成功后,两个蓝牙设备可以相互发送ACL数据分组,其格式为0x 01 02 01 20 数据总长(两个字节) 数据。每发送5个数据分组将返回一个完成事件分组,用于流量控制。通信完成后,主设备和从设备都可以发出断开连接命令Disconnect。

结语
试验结果表明:该无线数据采集模块可以实现8路不同模式(连续模式、点检模式等)数据采集、2路PID控制等功能,数据采集速率最高可达150kHz,数据传输速率最高可达721kbps,具有较强的实用性。■

参考文献
1. 刘书明,冯小平.数据采集系统芯片ADmC812原理与应用.西安电子科技大学出版社,2000
2. 马建仓,罗亚军,赵玉亭.蓝牙核心技术及应用.科学出版社,2003

相关推荐

基于Web的MCF5249数据采集系统的设计

Web  MCF5249  数据采集  2011-08-18

探地雷达信号的数据采集与显示研究

数据采集  探地雷达  2011-08-18

多路跟踪滤波同步数据采集系统的研究

AD73360L  数据采集  2011-08-01

为铁路谐波干扰的研究搭建一个数据采集和监控系统

数据采集  2011-07-25

基于LabVIEW的外置串口采集控制卡的研制

LabVIEW  数据采集  2011-06-20

NI协办首届全国虚拟仪器设计大赛圆满落幕

在线研讨会
焦点