电表无线采集系统设计(精选8篇)
电表无线采集系统设计 篇1
随着社会的不断进步,各领域得到了迅速的发展,机械化、自动化已经成为了现代生产生活的主流生产方式,这样就对监控系统有了一个更高更成熟的要求,需要有一套方便可靠的视频采集系统作为监控系统的平台。视频采集系统分为有线视频传输网络和无线视频传输网络,在特殊工作环境越来越占据我们大部分工作的今天,周边的工作环境不允许使用有线网络,并且还带来了高建设、和高维修的费用,所以无线视频信号的采集系统已经变成国际上重点的研究和发展方向。无线视频采集系统可以运用在工厂,用于监控自动化高的生产设备,也可以装载到机器人中完成特殊的任务,比如排爆机器人,降低人员的伤亡。
现在对无线信号的采集和处理主要通过视频采集卡进行采集,有一些公司生产的采集卡提供第三方的软件开发包(SDK)这样便于用户进行第二次开发。在监视计算机方面主要使用VC++,VB等开发软件进行监视界面的开发,但是总体比起来VC++在视频处理上比VB较为成熟,利用VC++中的VFW视频开发包对视频采集卡采集回来的视频信号进行处理。
1 视频信号采集系统组成
该系统的组成大致分为硬件和软件部分,该文对软件部分的设计和开发做着重的介绍,软件部分则利用VC++6.0为软件开发平台。
1.1 硬件部分
硬件部分由无线摄像头、摄像头信号接收器和USB视频采集卡三部分组成。硬件连接如图1所示。
USB视频采集卡工作原理。
该次视频采集系统采用的是EASY CAP的USB视频采集卡,视频采集卡是我们进行视频处理必不可少的硬件设备,无线摄像头发送的和无线信号接收器接收的信号是连续的模拟信号,但是计算机却不会识别模拟信号,计算机只识别0或1这样的二进制码,这样就需要一个像本系统中的USB视频采集卡把无线视频接收器采集到的模拟信号进行模/数转换,把连续的模拟信号转换成离散的数字信号,这样经过转换后的数字信号就可以被计算机编辑、处理和保存了。
在该系统中视频采集软件通过驱动识别USB视频采集卡并对采集回来的信息进行处理,因为视频采集卡采集到的都是一幅幅静态图片,所以要在软件中设置与USB视频采集卡相匹配的采集速率,这样就能对视频信号进行静态图片的抓取和保存,对视频流信号进行保存。具体数/模转换流程如图2。
1.2 软件部分
软件部分主要采用了VC++6.0来编写采集程序。
VC++6.0由微软公司开发,它是一个基于Windows操作系统的可视化集成开发环境,同时也具备C++语言编译器的功能。Visual C++6.0由编辑器、调试器以及程序信息技术向导AppWizard、类向导Class Wizard等开发工具组成。
VFW(Video for windows)是视频开发应用的一种早期技术。Microsoft的Visual C++从4.0版开始就支持Video for Windows(简称VFW)了,这给视频捕获编程带来了很大的方便。VFW(Video for Windows)是微软公司开发的针对于Windows自带的一个数字视频编辑软件开发包。用户不用自己安装VFW,而是Windows系统中自带了这个视频开发包,方便了用户的使用。VFW的中心就是一个A VI文件标准,A VI(Audio Video Interleave)就是一种声音和视频同步组合在一起的一种文件,它是一种有损的压缩形式。
在VFW中为用户提供了一套完整的应用程序接口(API),API可以为用户提供一种与应用程序访问一组例程的能力,而且用户不需要访问源码和了解内部工作的细节。编写程序时可以利用API函数来编写应用程序,这样就可以避免编写无用程序,减小工作量。
VFW的视频捕获主要由AVICap窗口类来完成。AVICap窗口类为应用程序提供了一个基于消息的接口。在该系统中视频的捕获和单帧捕获都是靠AviCap所提供的强大全面的函数和宏实现的,这是微软公司开发的VFW开发包为我们编辑视频采集软件提供的一条捷径,可以使用简单易读的函数和宏就可以达到我们编程需要达到的目的。
AVICap有两种显示视频的格式:(1)预览模式(preview),这是一个使用CPU资源的模式。视频流首先从采集硬件保存到系统内存,之后通过GDI函数将视频信息显示在捕获窗口中。从硬件角度讲,该模式需要使用VGA卡,通过VGA卡显示在监视器上。(2)叠加模式(Overlay)该模式显示视频是通过硬件的叠加,叠加的视频是不需要通过VGA卡的,叠加视频的硬件把自身的输出信号与VGA输出信号合并,最后显示到监视器上的信号是二者的组合信号。
2 VFW视频采集的开发
2.1 开发应用程序的步骤
V C++应用程序开发的一般步骤为:(1)创建一个项目;(2)采用workspace窗口和它的class view,file view,resource view去建立项目中的C++类、文件和资源;(3)将文件从项目中添加或删除;(4)编辑项目的源代码和资源;(5)为项目指定配置(Debug或Release);(6)连遍项目文件;(7)纠正连遍错误;(8)执行并测试生成的可执行文件;(9)测试项目文件;(10)剖视以及代码优化。
2.2 VFW采集开发流程
使用VFW进行视频采集大致分为如下几个部分基本流程。
(1)使用函数capCreatureWindows(…)创建应用程序的视频捕获窗口。(2)使用函数capsetcallbackonstatus(...)函数处理回调函数状态,并用capsCalLbackonerror(…)函数来设置错误信息的回调处理。但是该次系统设计没有使用回调函数。(3)查找USB视频采集卡的驱动并连接。(4)得到USB视频采集卡的驱动信息。(5)判断是否连接正确,并设置采集速率。
2.3 监控系统的建立
使用VFW的宏函数实现视频捕获和预览,应用程序简单、控制灵活。在本系统中,是基于VC++6.0的对话框应用程序框架实现编程开发,很多的应用程序都是基于这种开发方式的。另一部分应用就是基于文档的编程开发,单文档是主流。文档应用程序的最大特点是有标准菜单、客户区域任意调整;缺点是相对比对话框类,开发难度较大。
2.3.1 建立单文档应用程序
该系统是基于VC++6.0的项目建立向导创建一个单文档、无工具栏和状态栏的应用程序,下面是建立单文档应用程序的详细步骤:首先启动VC++6.0,选择“文件”一“新建”一“工程”命令。在工程选择卡中,选择MFC AppWizard(exe)。
工程名称栏中输入工程的名称,位置栏中输入的是工程所保存的文件位置。
下一步需要选择创建应用程序的类型有三类分别为:单文档、多重文档和基本对话框,由于本系统是视频采集界面,所以选择的应用程序为基本对话框应用程序,点击完成就成功的建立了一个基本对话框的应用程序工程。
2.3.2 建立对话框
对话框是监控软件和用户的交互平台,使用者可以在对话框中直接预览由USB视频采集卡采集到VC++中的视频信息,并对其进行抓取截图、录像、暂停和退出等功能,这些功能会以按钮的形势提供给使用者,方便对视频信号进行想要的处理。对话框建立的详细步骤如下:在工作空间下选择“resource view”选项卡打开dialog下拉文件并在dialog文件夹上右键单击选择插入dialog,创建一个新的对话框,此时新建的对话框就出现在右侧工作区中,我们可以对其进行大小的任意改变。
2.3.3 添加图像和按钮控件
对于本次系统的设计,需要对对话框添加“图像”和“按钮”控件,在工具箱中就可以找到并选择加入到对话框中的任意位置,“图像”的作用是显示由USB视频采集卡转换成的数字视频信号,起到一个监视屏的作用,因为代码中已经把窗口的大小作为一个指针,送到窗口创建函数capCreatureWindows()中了,当程序初始化时可以自动识别到窗口的大小并返回一个宽度和高度值,所以图像控件可以随意更改大小,函数中设置窗口X轴坐标和Y轴坐标的数据已经被指针所取代了。“按钮”则为使用者提供对采集回来的视频信息进行处理的功能,按钮有五个各自的功能分别为:播放、截图、录像、暂停和退出。在添加按钮时可以改变其名称,这个名称就是显示在按钮上的名称,起到提示其功能的作用。当添加好按钮时双击按钮就可以进入到按钮代码的编辑,用来响应函数的功能,在修改控件ID后,比如一个按钮控件,假设使ID为BUTTON 1则建立按钮后在窗口类中的对话框类中自动添加了一个名为ONBUTTON1的按钮控件类。这个类则包含了这个按钮所包含的一些属性和信息。
关于窗口类,我们在运行程序的时候可以直接看到窗口对话框,在窗口建立之前系统要知道怎样建立一个窗口,和窗口返回的一些信息要交给谁处理。这样就需要我们创建一个窗口类来定义我们设计的窗口的各种信息,比如窗口的消息、函数的处理、窗口的风格、图标、鼠标、菜单等等。可以使按钮实现各种功能。下图为设计好的对话框。
具体程序代码不再详述。
3 运行调试
代码编辑完成后就要把工程保存,之后就可以编译了,在编译菜单下选择编译选项(也可以直接按F7键,同样可以对源文件进行编译),对源文件进行编译、执行及编译配置等操作,该菜单位于编译器的顶层菜单中。按F5可以调试应用程序,查看程序的运行情况。如果在调试程序时遇到问题,可以使用编译器中的“帮助”菜单调用MSDN帮助文件来解决问题。编译后在工程的文件夹下有个一DEBUG的文件夹中就会生成应用程序图标,双击就会运行应用程序。查看应用程序的运行情况,以及各个功能的实现情况是否正常。
在运行程序后,因为视频信号进入到USB视频采集卡后,采集卡又对信号进行一次硬件压缩,性质类似于对信号进行了编码,而本系统采用的是CapAvi来采集的信号,把压缩过的信号直接显示到了预览窗口中,所以会有信号的不稳定与数据的丢失。
其他的功能正常,程序运行正常。
4 结语
该系统基于VC++6.0利用VFW开发包,对无线视频信号进行采集和处理系统进行了设计。搭建了一个无线视频信号采集的平台。该系统主要的开发部分为软件部分,硬件只需进行驱动的安装和硬件连接即可。通过运行调试,取得了比较好的效果。
参考文献
[1]刘锐宁,梁水,李伟明.Visual C++项目开发案例全程实录[M].北京.清华大学出版社,2011:1-62
[2]任观就,张永林.实时视频图像捕获的实现方法[J].计算机工程,2002,28(8):268-270.
[3]陈珲,张会汀,周杰华.利用VFW实现实时视频捕获及其应用[J].计算机应用.2003,23(8):141-143.
[4]张艳珍,巩玉国,欧宗瑛,等.基于Windwos平台的视频捕获技术研究[J].计算机工程与设计,2002(3):10-12.
电表无线采集系统设计 篇2
关键词:无线传感器网络;动态数据采集;ZigBee;TinyOS
中图分类号:T18文献标识码:A文章编号:1672-3198(2007)12-0272-02
1 引言
无线传感器网络是是一门新兴的信息技术,由一组按需随机分布的集成有传感器、数据处理单元、无线通信模块和能量供应模块的微型传感器节点以自组织方式构成的无线网络, 融合了信息处理技术、微电子技术、计算机技术和无线网络技术,已经引起了世界许多国家的军事部门、工业界和学术界的极大关注。
对于动态数据采集系统中的采集节点来说,其硬件设计主要有三点要求。第一,动态数据采集系统的采集对象往往是目标的温度、湿度、速度等参数,整个系统需要在无人环境下长期正常工作,因此低功耗设计是动态数据采集系统的首要要素;第二,动态数据采集系统处理数率较低、数据传输量少、主要采用无线传输的形式,因此选择无须许可的、合适、低价的通信方式是保证动态数据采集系统正常工作的关键。第三,系统采集的对象主要是人体、动物、车辆等等动态目标,为了实现监控的方便,采集节点还必须要满足体积小、灵活性等特点。
2 无线传感器网络的节点结构
一个典型的无线传感器网络节点设计包括了传感器单元、数据处理单元、无线通信单元和电源管理单元,以及用户接口等一些扩展设计单元,如图1:
3 节点硬件分析
目前,两种典型的无线传感器网络节点研究平台是mica系列和telos系列节点,它们采用目前应用最广泛的TinyOS嵌入式网络操作系统。
3.1 mica系列节点
mica系列节点包括Wec、Renee、mica2、mica2dot、Spec、micaz等,其中一些已经被Crossbow公司产品化。mica系列节点在硬件上由两个部分组成,一个模块是运算和通信平台,另一个模块是传感器平台。两者之间通过51针的自定义接口连接。这种统一的接口使得不同的通信平台和不同的传感器平台之间可以自由的组合。mica系列节点目前很大程度上都是作为研究使用的。为了能够方便地对节点进行程序功能更新,Crossbow公司开发了一系列的开发工具,例如:MIB500、MIB510、MIB600等。
3.2 telos系列节点
telos节点是美国国防部DARPA支持NEST项目的一个部分,与mica系列比较,它的设计结构有很大变动。
(1) 在通信模块选择上,采用TI公司的支持IEEE802.15.4协议的CC2420芯片,这与micaz节点是一致的;250kbps的数据收发速率可以使节点更快的完成事件的处理,快速休眠,节省系统能量。而且CC2420支持ZigBee协议,标准化的通信协议有利于实现节点之间的互通。
(2) 采用TI公司的超低功耗微处理器芯片MSP430。
(3) telos本身就有SHT11温湿度一体化器件,能够作为独立的传感器节点使用。
(4) telos没有mica2那样丰富的外部引脚,只有一个10脚的接口,一方面可以连接简单的传感器板,另一方面可以通过一块适配板与mica2系列部件互联。通过适配板,telos和mica2通过UART可以实现一个2.4GHz的IEEE802.15.4到CC1000的915MHz-ISM频段之间的网关,通过适配板,telos还可以直接控制与mica2连接的传感器板。
(5) 使用USB-COM的桥连接,可以直接通过USB接口供电、编程和控制,进一步简化外部接口。
3.3 本系统节点硬件平台
本系统的硬件设计参考telos平台,是telos平台一次再设计过程。系统设计弱化传感器部分的设计,对无线通信模块选用射频模块电路,设计重点在微处理器模块地电路实现上。同时,为了增加动态数据采集系统应用性,添加了PC接口电路,使得本设计可以作为动态终端节点,亦可以作为服务器的网关。
动态数据采集硬件平台上选用MSP430F149微处理器芯片和FLASH芯片AT45DB041B分别作为处理器单元和存储单元;选用FT232BM芯片完成MSP430的BSL编程电路和MSP430与PC的串行通信接口;选用CC2420射频模块完成无线数据收发;在电源管理上,当设计作为网关时选择USB供电,当作为终端可用干电池供电。硬件原理框图如图2所示,与无线传感器网络节点设计相比,结构上具有一致性,同样具有采集单元、处理和控制单元、无线通信单元和电源管理单元。
3.4 TinyOS嵌入式网络操作系统
TinyOS是加州大学伯克利分校开发的一种开源的嵌入式网络操作系统,基于组件化编程,是针对无线传感器网络设计的一种操作系统。
TinyOS的程序采用模块化设计,程序核心都很小,一般来说核心代码和数据大概在400 Bytes左右,突破了传感器节点存储资源少的限制,这使得TinyOS能很有效的运行在无线传感器网络上并去执行相应的管理工作。
TinyOS的组件有四个相互关联的部分:一组命令处理程序句柄、一组事件处理程序句柄、一个经过封装的私有数据帧和一组简单任务;任务、命令和事件处理程序在帧的上下文中执行并切换帧的状态。为了易于实现模块化,每个组件还声明了自己使用的接口及其要用信号通知的事件,这些声明将用于组件的相互连接。如图3所示为一个支持多跳无线通信的组件集合与这些组件之间的关系,上层组件对下层组件发命令,下层组件对上层组件发信号通知事件的发生,最低层的组件直接和硬件打交道。
TinyOS的组件通常可以分为以下三类:硬件抽象组件、合成组件、高层次的软件組件;硬件抽象组件将物理硬件映射到TinyOS组件模型中,合成硬件组件模拟高级硬件的行为,高层次软件模块完成控制、路由以及数据传输等。
TinyOS使用基于事件的执行方式以满足无线传感器网络需要的高水平运行效率。事件模块在一个较小的空间内允许高效并发处理运行。当事件被触发后,CPU会迅速处理所有与发出信号事件关联的任务;当该事件以及所有关联任务被处理完毕后,将未被使用的CPU循环置于睡眠状态而不是积极寻找下一个活跃的事件。TinyOS这种事件驱动方式使得系统高效地使用CPU资源,保证了能量的高效利用。
4 结语
无线传感器网络是一门新兴的信息技术,本文着眼无线传感器节点硬件平台的设计,完成了硬件模块的划分、芯片的选型、软件系统以及通信方式的选择,设计出了针对动态数据采集系统的无线传感器网络,具有低功耗、扩展性好、灵活性强、成本低等传统数据采集系统难以达到的特性。
参考文献
[1]任丰原,黄海宁,林闯.无线传感器网络[J].软件学报,2003,14(7):45-48.
[2]David Gay,PhilLevis,Rob Von Behren,et al.The nesC Language:A Holistic Approach to Networked Embedded Systems.Proceedings of Programming Language Design and Implementation(PLDI),1996.
[3]Levis P,Madden S,Gay D,et al .The emergence of networking abstractions and techniques in tinyOS.Proceedings of t he First USENIX/ ACM Symposium on Networked Systems Design and Implementation.2004,(11):203-230.
[4]Seungmin Park,Jin Won Kim,Kee-Young Shin,et al.A Nano Operating System for Wireless Sensor Networks.8th International Conference Advanced Communication Technology,ICACT 2006-Proceedings,2006:345-348.
[5]孙利民,李建中,陈渝.无线传感器网络[M].北京:清华大学出版社,2005:1-26.
脑电信号无线采集系统设计 篇3
疲劳驾驶是造成很多恶性交通事故的主要因素,因此人们研究探索通过监测驾驶员的身体和生理状态来识别驾驶员是否疲劳驾驶,如眼动信息、头部运动状态等。近年来,基于脑电信号识别驾驶员警觉度状态已经成为一种研究热点[1,2],而驾驶员可穿戴式脑电信号采集装置是其必要的保障。脑电信号采集系统主要由模/数转换模块、微控制器和数据传输等部分构成。其中微控制器的实现一般有4种方案:如文献[3]中采用单片机把采集到的模拟脑电信号转换为数字信号,并通过RS 232接口传给计算机,该方法一般用于低端的不要求太高数据处理能力的采集中,成本较低;文献[4]采用DSP数字信号处理芯片,将A/D转换后的脑电信号进行DSP预处理(数字滤波),再通过PC的并口与DSP的HPI的口互联,主要利用了其在数据分析中的快速处理能力;文献[5]采用ARM作为处理器,ARM中移入了μC/OS-Ⅱ操作系统,并移植了Hanning滤波器以抑制50 Hz工频干扰,利用ARM对信号进行处理与分析显示;文献[6]采用FPGA,利用其内部丰富的逻辑资源控制A/D采集、FIR滤波、液晶的显示及USB与PC的数据传输。以上文献中的方案都为有线传输,且DSP和FPGA芯片成本高功耗大。文献[7]中采用蓝牙无线传输模块实现了可穿戴脑电信号采集与传输,蓝牙技术目前成本较高,适宜近距离传输。本文针对驾驶员可穿戴式脑电信号采集设备的应用背景,提出基于MSP430单片机和CC2500的脑电信号采集和无线数据传输系统设计方案,在保证系统性能的条件下最大限度地降低功耗。
1 系统硬件设计
1.1 系统框图
该系统主要由3部分组成:数据采集、数据传输和数据处理服务器。其中数据采集与预处理采用业界公认的微功耗控制器MSP430系列单片机;数据传输采用无线收发模块CC2500,其由MSP430单片机通过SPI口控制其初始化和数据的发送与接收;接收的脑电数据由单片机通过UART转USB芯片传输给数据处理服务器做上层处理。具体系统组成如图1所示。
1.2 放大滤波模块
本文的脑电信号放大器原理图如图2所示。本文中的前置放大器采用BB公司的INA118,这是一款专门用于生物信号采集用的集成仪表放大器,具有很高的精度;高通滤波采用传统的阻容滤波,截止频率为0.16 Hz;后级放大电路中的放大器采用通用集成运算放大器AD8606;低通滤波采用八阶Bessel开关电容滤波芯片MAX7405,截止频率设为500 Hz。系统采用3 V的单电源供电,由于极化电压的存在,每级放大倍数不能太高,且后级放大分为相同的两级放大,总放大倍数为38×20×20, 可以将微伏级的脑电信号放大到伏级,满足后级A/D采样中对输入信号幅度的要求。
1.3 单片机控制系统
该系统采用的控制器是德州仪器公司推出的低功耗、高集成度的16位单片机MSP430F169[8,9],供电电压范围为1.8~3.6 V。MSP430F169具有丰富的外设,片内包括3个时钟信号,即1个高频时钟、1个低频时钟和1个DCO,灵活地使用系统时钟可以大大降低系统的功耗,方便系统的设计。此外还有2 KB的RAM、60 KB的FLASH、8通道采样率为200 KS/s的12位A/D转换器、3个内部DMA控制器、硬件乘法器、两个带有捕获计时寄存器的16位定时器、48个可复用I/O引脚和两个通用同步/异步串行通讯口。芯片内带有JTAG调试接口,无需仿真器和编程器,方便设计人员的开发调试。单片机的A/D采样部分使用3片模拟开关4053将8路扩为16路,原理图如图3所示。脑电信号幅度在-100~+100 μV之间,MSP430F169单片机的A/D转换器为12位,考虑到A/D转换后两位会有不稳定的因素,系统的精确度仍能达到0.2 μV,这足以满足后期的警觉度特征提取。
1.4 无线传输模块
无线模块采用TI公司的CC2500[10,11]芯片,它是一款超低功耗、低成本的无线收发模块,工作在2.4 GHz全球开放ISM(工业、科学、医学)频段,满足多信道通信和跳频通信需要,支持多种调制方式,包括FSK,GFSK,OOK和MSK,最高传输速率可达500 Kb/s。工作电压为1.9~3.6 V(与430单片机通过SPI口相连时无需电平转换),外围元件极少,内置硬件CRC和点对多点通信地址控制。主要的工作参数大都可以由设计者通过芯片状态字自行配置,没有复杂的通信协议,同种产品间可自由通信。所以,CC2500是一款低成本射频系统级芯片,具有体积小、功耗少、外围元件少等优点。
CC2500模块通过标准的SPI接口与MSP430单片机相连;SI,SO为CC2500的数据输入/输出端口;SCLK作为数据传输的同步时钟;CSn为片选信号,低电平芯片工作;还有2个通用输出口GDO0和GDO2用来辅助CC2500实现无线通信功能。CC2500模块部分电路如图4所示。
脑电信号频率范围在0.5~100 Hz间,设计采样频率为500 Hz,共16通道,则要求传输速率:16×500×16 b/s=128 Kb/s,远小于CC2500最高传输速率500 Kb/s。
1.5 USB传输模块
USB接口芯片采用的是TI公司的
TUSB3410[12,13],包括通过USB总线与主机通信所需要的全部逻辑电路。内部包含一个8052微控制器、16 KB RAM、I2C引导加载程序的10 KB ROM,4个通用I/O口,具有USB总线供电和自带电源2种供电模式。该芯片符合通用串行总线USB 2.0规范,支持12 Mb/s的数据速率,是一款高性能的USB接口器件。TUSB3410与MSP430F169的连接原理图如图5所示。
本文使用USB总线供电模式,TUSB3410(U2)的USB数据信号经双路USB端口瞬态抵制器SN75240(U3)后连接到标准的USB B型口,以此增强系统ESD抗干扰能力;USB总线提供的5 V电压经TPS77301(U4)3.6 V LDO稳压后为系统供电。
2 系统软件设计
该系统中,程序设计包括单片机程序、USB驱动程序和PC机应用程序。考虑到该脑电信号采集系统的处理器负担不重,主要就是A/D采样、发送端和接收端程序及与上位机的通信,兼顾程序的易读性、可移植性,采用C语言作为编程语言。开发软件使用IAR公司的集成开发环境IAR Embedded Workbench嵌入式工作台以及调试器C-SPY,使用非常方便[14,15]。单片机程序流程如图6所示。
MSP430中ADC12模块采用序列通道单次转换模式,通过定时器A来控制采集数据的时间间隔。通过对转换序列中最后一个通道对应的中断允许位置位,序列通道完成一次转换时将自动产生中断标志,从而进入中断服务子程序,以此来完成多通道的信号采集。在发送端,单片机通过SPI口来初始化CC2500的发射频率、波段、发射功率、地址码、地址位数、数据位数及收发模式等。在一个采用周期内,当ADC采集完16路脑电信号,单片机将ADC采集到的数据通过SPI写入CC2500的发射寄存器,开启CC2500的发射模式,CC2500将自动给要发射的数据加上前导码和校验位,并和地址码一起发送出去,而后单片机进入下一个采样周期。在接收端,单片机同样配置CC2500,然后开启CC2500为接收状态,一旦接收到数据包,GDO0就产生一个中断给单片机,单片机便通过SPI口读取CC2500接收寄存器的数据,并通过UART将数据传到上位机电脑,然后等待接收下一组数据。USB设备驱动程序负责建立上位机电脑与接收端单片机的联系,将从单片机UART口得到的数据通过USB接口传到电脑上。USB的驱动程序可在网上(www.ti.com)下载到。上位机电脑的应用程序是在VC 6.0[16]环境下开发的,主要完成对采集的脑电数据显示,也可以为以后是数据分析处理做准备。
3 结 语
本文以低功耗、低成本的CC2500射频收发芯片为传输模块,结合低功耗、高集成度的MSP430F169单片机作为控制器,设计了一套可穿戴式、低功耗、多通道的实时脑电信号无线采集系统,采集的精度、速度及系统的可靠性能够满足要求。
远程无线数据采集系统的设计 篇4
关键词:远程通信,无线通信,数据采集,Zigbee
本论文主要结合远程无线通信技术, 对远程无线数据采集系统进行设计研究, 以期从中能够找到合理可靠的无线数据采集及远程无线通信系统的设计模式, 并以此和广大同行分享。
1 系统总体设计
为了使本论文所研究的远程无线数据采集系统更具有针对性, 这里选用Zigbee技术作为远程无线通信的核心技术, 具体应用场合是实现对电力塔的环境参数实现远程无线采集与传输。
(1) Zigbee技术概述。
Z ig b ee的基础是I EE E 80 2.15.4, 这是I E E E无线个人区域网 (P e r s o n a l A r e a Network, PAN) 工作组的一项标准, 被称作IEEE802.15.4 (Zigbee) 技术标准。Zigbee主要应用在短距离范围之内并且数据传输率不高的各种电子设备之间。其典型的传输数据类型有周期性数据 (如传感器数据) , 间歇性数据 (如照明控制) 和重复性低反应时间数据 (如鼠标) 。根据Zigbee联盟目前的设想, Zigbee的目标市场主要有PC外设 (鼠标, 键盘, 游戏操控杆) , 消费类电子设备 (TV、VCR、CD、VCD、DVD等设备上的遥控装置) , 家庭内智能控制 (照明, 煤气计量控制及报警等) , 玩具 (电子宠物) , 医护 (监视器和传感器) , 工控 (监视器、传感器和自动控制设备) 等非常广阔的领域。
(2) 系统总体结构与功能设计。
在每个电力塔上安装一个基于Zigbee技术嵌入式无线数据采集模块, 该嵌入式无线数据采集模块可以采集该电力塔周围环境的温度, 风力, 图像等数据, 通过基于Zigbee技术的RF无线收发网络将数据无线发送给下一个电力塔上安装的嵌入式无线数据采集模块, 以中继的方式, 传送给第三个电力塔上的嵌入式无线数据采集模块, 一直传到监控系统的控制主机。这样, 维护人员从后台中心的电脑上就能得到终端采集模块所采集的数据, 能够及时了解所需监控的电力塔周围环境的温度, 风力和电线是否完好的情况, 以达到监护整个电力传输系统的目的。
在本系统中, 无线数据采集模块主要由传感器模块、处理器模块、ZigBee模块和电源模块四部分组成的。传感器模块 (包括数字温度传感器及其驱动接口电路, 摄像头及其接口电路) 负责电力塔区域内温度和图像的采集和数据转换;处理器模块 (微控制器) 负责控制整个传感器节点的操作, 存储和处理本身采集的温度数据图像数据以及其他节点发来的数据;ZigBee模块用于接收和发送无线信号, 与无线传感器网络终端节点进行无线通讯, 主要包括射频和基带两部分, 前者提供数据通信的空中接口, 后者主要提供链路的物理信道和数据分组;电源模块为传感器节点供电, 通常采用微型电池。微控制器作为传感器节点运转的“心脏”, 在上面运行着嵌入式系统软件, 从而对另外三个单元的工作进行控制。
2 基于Zigbee技术的远程无线数据采集系统的实现
2.1 无线数据采集模块的设计实现
由于环境参数一般数据的变化较为缓慢, 所以系统对数据实时性的要求并不是很高, 为减小网络资源利用冲突, 本系统采用轮询的方式进行数据采集。采集模块定时向下位机发送查询包, 下位机转发给各个控制器, 控制器返回相应的传感器数据和设备状态。
系统设计中为避免每次读取数据库中配置信息来获取下位机及设备等的信息, 在内存中建立了树形的数据结构, 可方便的定位到某设备的信息以便执行相应处理。轮询过程中, 模块首先按照树形结构的监控区域轮询该区域内传感器温湿度参数, 计算该区域的平均温湿度值, 作为虚拟的传感器温湿度值存入数据库中。然后模块继续轮询各设备状态, 获取最新的设备状态。
数据采集与控制模块作为后台线程运行, 保证前台与后台的分离。服务器通过以太网与各下位机进行通信, 一般设置下平均每60秒执行一次数据采集, 所以运行过程中服务器与客户端的通信较为频繁。另外, 电力塔环境参数的数据包大小一般都较小, 对带宽的要求也较小。基于以上应用特点, 本系统采用TCP作为传输层协议, 并通过建立sockct来连接服务器和下位机。由于频繁的打开、关闭socket连接会降低系统效率, 而一个应用系统中下位机的数目不会很大, 局域网条件下完全可以胜任所有下位机同时连接的情况, 所以系统采用保持连接的Socket进行通信。服务器启动时根据下位机IP地址等配置信息连接各个下位机, 然后运行过程中时钟保持连接, 遇到意外断开后则通过尝试重连来恢复。上位机保存每个已经建立的套接字并在内存中与相应的下位机的配置信息相对应, 以便在向不同下位机发送指令时能准确找到对应的Socket。
2.2 无线通信传输机制的实现
连接建立的流程是, 主控节点首先广播地址码, 选择特定的终端并发送采集命令, 数据终端返回包括其地址信息的确认帧并执行采集并存储数据;主控节点接收到确认帧后, 提取地址等有用信息进行验证, 若验证通过, 则点对点连接建立;若验证未通过, 则尝试重新建立连接的操作。
连接建立后, 开始进行数据传输。数据传输方式是基于一种“反馈重发协议”的思想:待传输的数据帧按先后顺序附加上帧号, 数据终端收到主控节点的数据请求后每发送一个数据帧, 即等待主控节点的应答:主控节点接收到这一数据帧后, 把实际帧序号与期望帧序号相比较, 并进行纠错码校验, 如果验证通过, 则返回数据确认帧, 并要求数据终端传输下一数据帧;如果验证未通过, 说明数据发送错误, 则返回出错重传帧, 要求主控节点重传该帧;如果收到数据确认帧, 则继续传送下一数据帧, 直到传输结束。如果传送超时或者出错超过三次, 即放弃传送并报告错误。
3 结语
本文主要探讨了基于ZigBee技术实现的远程无线数据采集系统, 给出了系统实现远程无线数据采集和数据传输的实现方案, 并重点分析了数据采集模块和无线传输模块的设计与实现, 对于应用在不方便实现有线网络实施数据采集和传输, 以及远程无线数据传输的应用场合具有重要的参考借鉴意义。更加完善的远程无线数据传输系统还有待于广大通信技术工作人员的共同努力才能够最终实现远程无线通信技术的广泛应用。
参考文献
[1]马明建.数据采集与处理技术[M].西安:西安交通大学出版社, 2005.
立体车库无线数据采集系统的设计 篇5
立体车库作为解决城市停车难的有效手段之一,在其电气控制系统中主要采用以可编程控制器(PLC)为主要核心,其信号之间采用有线通信的方式进行传输。有线通信布线多且比较复杂,在车板移动的过程中,线缆由于被拖拽很容易发生断裂,这样中断了信号之间的传输。又由于数据的无线传输方式适用于不易布线或或环境比较恶劣的情况,其应用也十分广泛,已成功应用于小区门禁系统,抄表系统,水质监测,勘探及生产的监测等多个领域,技术相对成熟。在立体车库中,为了实现信号之间的有效传输,考虑应用无线技术。但到目前为止,在国内外的研究中将无线数据采集技术应用于立体车库中并不多见。因而本文提出了一种基于DSP和nRF905模块的立体车库无线数据采集系统的设计。
1 系统总体结构设计
该立体车库无线数据采集系统框图如图1所示,其由立体车库传感器信号单元、数据采集与无线收发单元、无线收发与中央处理单元组成。其系统采用主从分布式的组成结构,由一台主机(DSP)、多个从机(微控制器)和同等数量的无线收发模块组成。主机作为系统的控制中心,它控制整个系统的运行。从机用来采集现场的数据及向主机发送采集到的数据。无线收发模块则用来实现主机与从机的无线通信。
2 系统硬件设计
2.1 传感器信号
立体车库传感器信号单元包括限位开关、极限开关和光电开关,其输出信号全为数字量。
2.2 数据采集与无线收发单元
立体车库的数据采集与无线收发单元由微控制器和无线收发模块组成。
2.2.1 芯片的选择
1)微控制器的选择。我们选用的是Atmel公司的AT89C51单片机,它是一种低功耗、高性能的、片内含有4KB Flash ROM的8位CMOS单片机,工作电压范围为2.7~6V(实际使用+5V供电,8位数据总线。它有一个可编程的全双工串行通信接口,能同时进行串行发送和接收。通过RXD引脚(串行数据接收端)和TXD引脚(串行数据发送端)与外界进行通信。
2)无线收发模块的选择。我们选用的是挪威Nordic VLSI公司推出的nRF905无线收发一体的芯片,工作电压为1.9~3.6 V,32引脚QFN封装(5 mm×5 mm),工作于433/868/915 MHz三个ISM(工业、科学和医学)频道,频道之间的转换时间小于650μs。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,不需外加声表面滤波器。使用SPI接口与微控制器通信,Shock Burst工作模式,自动处理字头和CRC(循环冗余码校验),配置非常方便。此外,其功耗非常低,以-10dBm的输出功率发射时电流只有11mA,工作于接收模式时的电流为12.5mA,内建空闲模式与关机模式,易于实现节能。
2.2.2 无线收发模块的工作模式
nRF905有两种工作模式和两种节能模式。两种工作模式分别是Shock Burst接收模式和Shock Burst发送模式;两种节能模式分别是关机模式和空闲模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三个引脚决定,(0代表低电平,1代表高电平,X代表高电平或低电平任意状态),详见表1。
2.2.3 硬件电路设计
1)接口电路的设计。此接口电路是指立体车库传感器信号和AT89C51单片机之间的接口。输出信号为4-20mA的传感器,一般输出负载阻抗是200--250欧姆(最大不超过400欧姆),如以200欧姆计算,电压变化范围就是0.8v~4v,而AT89C51单片机的工作电压为+5V,所以传感器和单片机需要进行电平的转换。
2)S P I接口电路的设计。无线收发模块nRF905使用SPI接口与AT89C51单片机进行通信,如图2所示。
2.3 无线收发与中央处理单元
无线收发与中央处理单元由无线收发模块nRF905和数字信号处理器(DSP)组成。
2.3.1 芯片的选择
我们选用的中央处理器是T I公司的TMS320F2812 DSP芯片,其具有面向控制的32位定点,主频150MHz,具有丰富的片上外设,尤其是12位分辨率的A/D转换模块和脉冲输出的PWM模块,以及强大的数据处理能力。
2.3.2 硬件电路设计
此接口电路主要实现无线收发模块nRF905与DSP之间的电平转换。(DSP的工作电压为+3.3V,而nRF905的输出信号为+5V电平)。其由去耦电路、电平转换电路和滤波电路组成,如图3所示。
3 系统软件设计
3.1 无线发送系统程序设计
发送端的单片机将接收机的地址和要发送的数据写完后,就要控制nRF905模块将数据信息发送出去,nRF905模块在发送模式时会自动产生字头和CRC校验码。当发送过程结束后,nRF905模块的数据传输完成管脚会通知单片机数据发送完毕。
下面为典型的nRF905模块数据发送流程:
1)当微控制器要发送数据时,将接收机的地址和发送数据通过SPI接口传输给nRF905模块;
2)微控制器设置TRX_CE和TX_EN管脚同时置为高电平,启动发送端的nRF905模块为发送模式;
3)发送端的nRF905模块发送过程处理:
(1)射频寄存器开启;
(2)数据打包(加字头和CRC校验码);
(3)数据包发送;
(4)当数据包发送结束,将数据发送完成管脚(DR管脚)置为高电平;
4)如果A U T O_R E T R A N被设置为高,nRF905模块将连续地发送数据包,直到TRX_CE被设置为低;
5)TRX_CE被设置为低时,nRF905模块数据包发送过程结束并回到待机模式。
3.2 无线接收系统程序设计
接收端的单片机控制nRF905模块进入接收模式后,当nRF905模块监测到有同一频段的载波信号且接收到相匹配的地址时,就开始数据包接收。当数据包正确接收完毕后,接收端的单片机在nRF905模块处于待机状态时通过SPI接口提取数据包中的有效接收数据。
下面为典型的nRF905模块数据接收流程:
1)微控制器控制TRX_CE为高电平、TX_EN为低电平,nRF905模块进入接收模式;
2)650us后,nRF905模块监测空中的信息,等待接收数据;
3)当nRF905模块检测到与接收频率相同的载波时,设置载波检测管脚(CD管脚)为高电平;
4)当nRF905模块接收到有效的地址时,设置地址匹配管脚(AM管脚)为高电平;
5)当一个正确的数据包接收完毕后,nRF905模块自动去掉数据包的字头、地址和CRC校验码,然后将数据接受完成管脚置为高电平;
6)微控制器将TRX_CE设置为低电平;
7)微控制器通过SPI接口以一定的速率提取数据包中的有效接收数据;
8)当所有的有效数据接收完毕,微控制器控制nRF905模块数据接收完成管脚(DR管脚)和地址匹配管脚(AM管脚)为低电平;
9)nRF905进入待机模式。
4 结束语
本文将DSP芯片和无线收发模块nRF905应用于立体车库的数据采集系统中,在国内外的研究中并不多见。其创新点在于:1)最大程度地避免了车位在运动过程中由于拖拽电缆而造成电缆的损坏的情况,有效地保证了信号之间的传输;2)将DSP芯片取代PLC作为立体车库采集系统的中央处理单元,在采集的速度和精度上较PLC都有很大的提高,从而增强了车位运行的可靠性与稳定性,保证立体车库系统安全运行。鉴于此,笔者认为基于DSP和nRF905模块的立体车库无线数据采集系统将对研究该方向的工程技术人员有很大的借鉴意义。
参考文献
[1]马金祥,何一鸣.基于nRF905模块的AT89S单片机无线收发系统设计[J].通信技术,2009,(02):36-38.
[2]周雪松,田密,马幼捷,等.智能化立体车库存取车优化控制策略的研究[J].制造业自动化,2008,(10):29.
[3]胡国宁.PLC在多层升降横移类立体停车设备设计中的应用[J].制造业自动化,2008,(01):72-73.
[4]杨光松.基于nRF905的无线温度数据采集系统[J].微计算机信息,2008(06):58-60.
[5]马幼捷,张海涛,邵宝福,等.电子智能化立体车库的研究现状与走向[J].电气自动化,2008(05):15.
电表无线采集系统设计 篇6
温度是一种重要的环境参数,与人们的生活环境息息相关。近年来,信息技术的数字化、智能化、微型化的发展为改善传统测温系统的电路复杂、功耗大、不易移动等问题提供了有力的技术保障平台。研制体积小、灵敏度高、组网灵活的无线温度采集系统逐渐成为该领域的研究热点,拥有广阔的应用前景。
1 系统总体设计
1.1 设计思路
根据无线温度采集系统功耗低、准确度高、实时性强的工作特点,通过对WSN技术、Zig Bee技术和无线传输协议的研究,在需求分析的基础上进行总体设计。选用以Zig Bee为代表的IEEE802.15.4协议[1],因其成本低、时延短、自组网、容量大的特点,使得其在应急通信、智能家居等众多领域中具有其他技术难以取代的优势,被广泛地应用于无线传感器网络中[2]。同时结合嵌入式开发系统的特点,分别完成硬件和软件设计,最终进行系统集成,建立一套适用于复杂环境的实时温度采集系统。
1.2 系统组成及工作原理
根据系统需求分析,遵循模块化设计原则,可将系统分为温度感知模块、控制处理及射频收发模块、数据监测显示模块三大部分。系统的工作原理是:温度感知模块完成对环境温度信息的采集,并将采集到的温度数据作为控制处理和射频收发模块的输入;然后通过射频收发模块将数据发送到监测显示模块,数据监测显示模块可对数据进行分析、处理、存储和回放。
2 系统硬件设计
2.1 系统硬件结构框图
本文以TI公司生产的CC2530芯片为核心芯片[3],完成控制处理和射频收发功能;以ADT7301芯片作为温度感知采集模块,对环境信息进行前端采集;通过LCD显示模块显示数据信息。其硬件电路结构图如图1所示。
图2 ADT7301芯片外围引脚图(参见下页)
2.2 温度采集模块
本文选用ADT7301芯片作为温度感知模块,该模块采用6引脚SOT-23和8引脚MSOP封装。它内置一个带隙温度传感器和一个13位ADC,能够以+0.03125℃的分辨率对温度进行监控,数字化精度为0.5℃,工作温度范围为-40℃至+150℃。具有工作电压范围广、电源电流低和与SPI接口兼容等特点,与大多数微控制器接口的连接比较方便[4]。其引脚结构如图2所示。
2.3 控制处理、射频收发模块
本文选用TI公司生产的CC2530芯片为系统的核心模块。CC2530专为IEEE802.15.4、Zig Bee、Zig Bee RF4CE与Smart Energy应用量身定做。拥有高达256k B容量的大型快闪记忆体,CC2530特别适合Zig Bee PRO的应用。它是真正的系统级芯片,集无线通信模块和处理器模块于一体,包括了性能一流的RF收发器、工业标准增强型8051MCU、系统中可编程的闪存、8k B RAM以及许多其他功能强大的特性。特别在低功耗方面性能显著,满足系统的需求。其外围电路如图3所示。
2.4 监测显示模块
显示模块主要选取LCD显示板。其融合了SMT技术、COB技术、TAB技术、COF等技术。
2.5 电源模块
在电源选择时主要考虑采集节点的便携性,本文选用1.5V的普通电池作为电源,选用电源管理芯片LM1117-3.3为节点提供稳定的电压。由于系统功耗低的特点,两节普通电池足以完成系统的长期供电。
3 系统软件设计
系统软件设计是整个系统实现的关键步骤[5,6]。温度传感器节点具有温度信息的采集、A/D转换和数据的无线传输功能。节点加电后,首先完成CC2530芯片和定时器的初始化操作以及中断设置。然后启动ADT7301进行温度信息的采样,调用发送子程序发送数据;如果没有收到接收确认信息,需要再次调用发送子程序重新发送数据;如果收到接收确认信息,则关闭射频,节点进入休眠状态,同时开启定时器,等待下一次温度信息的采样处理和发送。本文所设计的数据的采集和发送程序流程如图4所示。
4 功能测试
4.1 硬件、软件准备
首先连接温度采集端设备,将电池板、CC2530芯片及ADT7301芯片按引脚接口匹配连接,如图5所示。而后连接接收端设备,将CC2530芯片与显示主板及程序烧录芯片连接,用Mini-USB Cable线分别接上终端计算机与烧录芯片的USB接口,如图6所示。
通过终端计算机分别对温度采集模块和接收模块进行程序烧录,计算机软件程序将显示出所连接Zig Bee CPU的型号名称,表示已经连接成功;当在Zig Bee CC2530 LCD显示荧幕上看见*RF Recv Prog*表示已经正确烧录。将电源置于开启状态,工作指示灯闪烁,此时可以在显示模块观察到实时温度信息。
4.2 测试结果
测试结果分两部分,一是在监测显示模块上实时显示温度数据,如图7所示。另一部分可通过计算机屏幕记录下连续温度数据,如图8所示。
实验结果表明:本文设计的无线温度采集系统能够实现对温度的精确采集和数据的无线传输,具有体积小、准确度高、易组装、传输距离远(开阔地可达200m)的特点,具有广阔的应用前景。
5 结束语
本文对基于CC2530无线温度采集系统的理论基础做了介绍,构建了系统的整体框架,并对系统的硬件、软件分别进行了设计,完成了系统性能测试。此系统结合无线传感器网络技术,不仅能够实时采集监测温度数据,同时使系统的实现更加经济、可靠。在工农业生产、环境监测、医疗救护、智能家居领域中具有相当的应用价值[7]。在冷库、粮仓、储罐中进行温度采集监测,可避免造成粮食的腐烂变质;在轴瓦、纺机、空调等狭小空间中测温,能够控制资源消耗、延长机器使用寿命;同时可应用在火灾事故现场、医疗救援、战场侦查等领域,能够及时进行事态分析、抢占时机、减少损耗。
参考文献
[1]高守玮,吴灿阳.ZigBee技术实践教程[M].北京航空航天大学出版社,2009:27-30.
[2]Zhu X J,Ying S D,Ling L.Multimedia sensornetworks design for smart home surveillance[C]//2008 Chinese Control and Decision Conference,2008:431-435.
[3]崔洋,姜宇,钟丽鸿,等.数字远传燃气表的设计与实现[J].传感技术学报,2010,23(2):209-214.
[4]张大踪,杨涛.一种低功耗无线传感器网络节点的设计[J].仪表技术与传感器,2006,10(2):54-57.
[5]赖麒文.单片机C语言软件设计的艺术[M].北京:科学出版社,2002:56-60.
[6]王选.软件设计方法[M].北京:清华大学出版社,1992:5-39.
实验室无线数据采集系统的设计 篇7
随着射频技术、微电子技术及集成电路的发展,无线通信技术应用深入各领域,数据采集领域中引入无线通信技术,可以解决某些如高腐蚀性、现场无法实现明线连接等环境的数据采集问题,克服有线网络布线麻烦和维护困难,提高采集系统的适应性。蓝牙(BLE)4.0作为一种新兴的无线数据通信技术,主要具有以下特点:工作在2.4GHz的ISM频段,极低的运行和待机功耗;使用1Mb/s速率以达到最大限制带宽;AES-128加密等[1,2]。本文基于蓝牙4.0实现实验室无线信息采集。
1 系统硬件设计
1.1 系统构成和工作原理
系统由数据采集器、BLE终端节点、BLE协调器节点、上位机等部件构成,采用BLE4.0的无线数据传输技术,把采集到的数据收集到一个BLE协调器中,并由上位机实现对数据的显示和处理,系统的整体结构如图1所示。其中数据采集终端主要完成电流、温度、湿度等参数的采集;BLE终端节点主要完成从数据采集终端接收数据,并通过无线通信方式发送接收的数据,或者接收BLE协调器节点发送的控制命令进行操控;BLE协调器节点是整个网络的发起者,管理整个网络的规模,存储有BLE网络中各个节点的信息。担当BLE网络中的协调器的角色,主要任务就是组建和维护一个网络,收集BLE网络中各个节点发出的信息,通过RS232接口把数据传到上位机;上位机接收BLE协调器节点传来的信息,并处理和显示数据。
1.2 协调器与终端器节点电路设计
终端节点电路主要有数据采集电路、数据处理单元电路、信号指示电路、无线传输模块接口电路、按键电路、继电器控制电路及供电电路等。原理图如图2所示,数据采集电路要采集的信息含实验室负载电流、环境信息(温度、湿度等)及烟雾浓度信息。系统由霍尔传感器采集负载电流、温度传感器DS18B20采集环境温度信息、湿度传感器DHT11采集环境湿度信息、烟雾传感器采集烟雾浓度信息;数据处理单元电路以STC12C25A60S2为核心进行数据处理,图中R9、C4构成处理器复位电路,由X1、C4、C5决定系统时钟电路,P1、P2为设计无线传输模块与处理器的电路连接端口,实现处理器与无线收发模块CC2540无线数据传输。其中P1.0、P1.4和P1.1口用于指示网络状态;Q1为继电器控制电路,主要用来控制实验室供电和门禁系统。当实验室门禁授权后,处理器给三极管一个低电平信号,继电器吸合,给实验室供电。当实验室内出现异常情况时(如电流过大、有烟雾等),处理器给三极管一高电平,继电器释放,切断实验室供电。协调器节点电路去除数据采集模块,增加RS232串口转换电路,采用MAX223双通道转换芯,MAX223的R1OUT引脚接CC2540的P0.2引脚,T1IN引脚接CC2540的P0.3引脚,通过它实现PC绑定数据、用户数据命令、节点信息及网络信息数据等数据或命令的传输,从而形成节点应用软件平台与协调器节点上位机软件平台之间的接口。在系统中,5V为STC12C5A60S2提供电源,3.3V为CC2540无线数据传输电路提供电源,电源系统由三端线性稳压器U1、U2构成[3,4]。
1.3 无线传输模块电路设计
由于CC2540将8051内核与无线收发模块集成到一个芯片当中,因而简化了电路的设计,省去了对单片机与无线收发芯片之间接口电路的设计[5]。该电路设计原理图如图3所示。该原理图主要包括3.3V电源滤波电路、芯片晶振电路、天线电路、入网指示电路及复位电路6部分。接口电路由CC2540的I/O引出,增加无线模块的通用性;为得到更好的电源性能,电源滤波电路选择了合适的去耦电容对电源进行滤波,该部分电路参考TI公司滤波电容组设计[6,7];CC2540工作需要两个时钟晶振,第一个为32MHz,为无线收发时钟;第二个为32.068KHz,为休眠模式提供时钟。C17和C18为32MHz晶振的负载点电容,电容值取决于负载电容的大小。C17和C18的典型值为12pF[7]。电路中采用非平衡天线加上一个非平衡变压器构成一个天线电路。由上拉电阻和按键组成,实现低电平复位。
2 系统软件设计
软件是功能得以实现的关键,软件设计包含传感器数据的采集、终端节点数据收发、协调器节点数据收发、及上位机数据实时显示与数据管理等。
2.1 协调器与终端器软件设计
协调器与终端器软件的软件设计按模块化的设计思想来实现,采用语言编程,在IAR集成开发环境中完成,主要有信息采集、终端器无线发送、协调器无线收发等软件设计,其流程如图4、图5及图6所示。
图5终端器无线发送软件流程图 (参见下页)
图6协调器软件流程 (参见下页)
2.2 上位机管理界面软件设计
上位机主要实现以下功能:1)通过RS232串口通信完成与外设的通信;2)数据实时显示;3)数据管理的实现。考虑到上位机软件的通用性及可操作性,上位机软件采用方便快捷的LabVIEW编写管理程序。LabVIEW由美国NI公司研制开发,LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式[8,9]。在LabVIEW开发环境下,对采集到的数据进行数据显示等功能,使整个系统的功能更加完善。和其他编程语言一样,在LabVIEW中也存在子程序的概念,在LabVIEW中的子程序被称作子VI。将整个程序划分为若干模块,每个模块用一个或者几个子VI实现,易于程序的编写和维护;子VI可以代码复用。管理界面软件程序框图如图7所示,表1给出了本系统用到的几个通信模块的基本属性的描述。
3 系统测试
系统测试时用3块BLE模块和一个作为协调器节点组建无线网络。用串口调试工具查看当前的组网信息。当节点设置好后,开始先查看终端器发出的信息,图8示出了运行结果,显示当前温度、当前湿度与当前电流。测试表明本系统运行良好,无线网络通信成功。
4 结束语
文中采用射频芯片CC2540和微处理STC12C25A60S2设计了数据信息采集系统,实现了工作频率为2.4GHz的适合BLE协议的无线数据传输。结合硬件电路的特点和系统的功能要求,编写了整个系统软件。本系统操作界面简便、清晰,具有良好的人机操作界面。但节点非法侵入、信息破坏的安全问题及构成较为复杂的网络拓扑结构研究仍有很多新的挑战。
摘要:文章以射频芯片CC2540为核心,构建一个低功耗、低时延的无线数据通信网络,将实验室负载工作电流、温度、湿度等物理量实时传送到上位机。文中给出了系统硬件电路及上、下位机软件设计。测试表明系统数据传输稳定、准确,设计方案有效、可行。
电表无线采集系统设计 篇8
目前基于单片机的数据采集系统存在数据传输接线负杂,可靠性差,数据存储难等方面的问题。本文提出基于单片机的无线数据采集系统,与PC进行通讯,不仅能够实现数据的无线传输,也能将采集数据实时存储到PC机,解决了单片机系统存储器小的缺陷,而且能够进而利用PC机上的LabVIEW软件进行编程实现对信号进行各种处理。
2. 无线数据采集系统设计
无线数据采集系统设计如图1所示,各部分方案如图2。其中终端节点和路由节点采用AT89S52单片机,可以在系统下载程序(ISP),应用简单方便,成本低廉,此外,通过添加A/D转换器可以实现对模拟量数据的采集,没有采集数据的时候可以进入休眠状态,节省功耗[1]。
汇聚节点采用LPC2114进行设计,它是一款采用支持仿真的ARM7TDMI-S内核的微控制器,它带有128kB的高速Flash存储器和64K字节SRAM,具有ISP和IAP功能, 包括了4路10位逐次逼近式A/D转换器,2个标准的UART,通过片内PLL可实现最大为60MHz的CPU操作频率。在本应用中,LPC2114用以实现信号的采集以及和上位机的串口通讯[2]。
无线发送和接收采用Nordic公司的nRF905,其功耗非常低,工作于433/868/915MHz3个ISM频道(可以免费使用);n RF905可以自动完成处理字头和CRT(循环冗余码校验)的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信,配置非常方便[3],与单片机接口简单。
3. 节点程序设计
3.1 终端节点
终端节点完成模拟量的采集、软件滤波和数据发送,以及接受路由节点传来的采集控制信号。该类节点在接收到路由节点的匹配信号后,往路由节点发送数据,数据帧格式如下:
3.2 路由节点
路由节点完成数据的中转,包括向终端节点发送控制命令和从终端节点接受数据,以及根据汇聚节点控制命令向汇聚节点发送数据等。该类节点数据发送的数据帧格式如下:
3.3 汇聚节点
LPC2114主要实现信号的采集以及和上位机的通讯,为了便于程序的使用与维护,本应用采用uC/OS-II操作系统,实时性好,可靠性高,程序采用模块化结构,由一个主程序和若干个任务组成,其程序流程如图3所示。
任务1和串口中断服务子程(ISR)相互协调,实现串口的收发功能。任务2为无线发送和接收模块,当接受上位机命令时,开始发送命令至路由节点,进而由路由节点通知终端节点进行数据采集,然后进入等待,当汇聚节点接受完路由节点传来的数据,立即向上位机发送数据时,往串口中写数据,发送结束时,ISR通过信号量通知Task1已经发射完成。
上位机和汇聚节点之间可以以一定的协议进行通讯,本文采用的通讯数据帧格式如下:
4. 上位机LabVIEW程序设计[4]
上位机LabVIEW的程序设计按功能主要可以分为串口通讯、数据存储、信号处理和显示等三个模块。
4.1 串口通讯模块
由于大多数电脑都有一至两个串行通讯接口,因此,串行通讯非常流行。许多GPIB仪器也都有串行接口。在LabVIEW中,实现串口通讯可以直接通过调用功能模板的VISA中的Seria系列 (包含VISA Configure Serial、VISA Write、VISA Read、VISA Close) 来实现对串行口的访问和控制。采用该方式设计的优点是:每个函数开始接收一个端口号,结束后输出一个其复制的端口号,这样在设计中就不用担心对于一个端口有遗忘或是重复的操作,从而使程序设计更加清晰。
本文所用的串口通讯程序的波特率为19200,无奇偶校验位,8位数据,1位停止位,禁止软硬件握手。同时,由于读出的数据read string是ASCII码,可以通过Extract Numbers转换成为数字形式。串口通讯的框图程序如图4所示。
4.2 数据存储模块
在有些情况下,对信号的在线即时的分析处理和显示并不是能够直接得出准确的结果,这就需要在实验后进行进一步的分析研究。为了能够实现对所采集信号进行离线的分析 (比如采用MATLAB进行分析),需要利用LabVIEW对采集到的信号数据进行存储。
在LabVIEW中进行数据存储时可以采用Write To Spreadsheet File,可以将采集到的信号存储成文本文件 (*.txt)或表单文件 (*.xls),可以方便进行查看和复制。数据存储模块的框图程序如图4所示。
4.3 信号处理和显示模块
采用Sequence Structure (顺序结构)的程序结构时,当将信号采集到PC机上后 (即当停止采集时),自动进入信号处理程序并输出相应图形。
根据不同的需要对信号进行相应的处理,LabVIEW在功能面板中的Analyze下提供了丰富的信号处理函数,比如FFT、加窗、滤波、曲线拟合等等。通过图形化的编程可以实现对信号进行方便的分析和处理。
5. 结论
本文所设计的无线数据采集系统能够实现数据的无线采集,成本低、可靠性高、数据能适时存储等优点,对于信号的处理可以通过修改虚拟仪器程序来灵活改变,可以应用于各种物理量的无线采集和存储。
参考文献
[1]AT89S52数据手册.ATMEL公司.
[2]周立功.ARM微控制器基础和实战 (第二版) [M].北京:北京航空航天大学出版社, 2005年.
[3]nRF905数据手册.Nordic公司.
【电表无线采集系统设计】推荐阅读:
无线数据采集系统05-11
电表管理系统11-25
智能电表设计05-13
关于多用电表教学设计01-01
IC电表管理系统操作步骤12-23
无线采集01-13
无线电子采集07-02
无线采集节点10-27
无线采集技术01-08
无线通信系统设计06-08