Arduino硬件平台下的微环境监测系统设计及应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Arduino硬件平台下的微环境监测系统设计及应用作者/何晓冬,苏州幼儿师范高等专科学校
文章摘要:进入21世纪之后,科技得到了飞速的发展,不管是国内还是国外,科技的进步都为人们带来了很大的便利,同时硬件也变得 更加的专业和先进,使用的范围也在不断地扩大。
监测系统不管在工业领域还是农业领域或者是其他的领域,都有非常大的实用价值,能够提升整个工作的效率,也能够为行业的发展带来不可忽视的促进作用,所以对监测系统的关注和研究一直都是我国重要的工作之一。
随着科技的发展,尤其是互联网的出现,对监测系统的设计和研究有了新的角度和突破,经过不懈的努力,监测系统的研究可以说取得了划 时代的进步和发展。
Arduino属于一个开源电子型平台,具有很强的灵活性和易学习性,比较方便操作,所以一经问世就受到了大家的追 捧,迅速风靡起来,整个Arduino主要由两部分构成,一部分是不同型号的Arduino板,属于硬件的范畴,而另一部分则是软件的范围,即ArduinolDE。
微环境指的是细胞单位范畴的事情,具体代表由细胞间质和体液组成的细胞生存的液体环境,在生物医疗领域是一个非常普 遍的专业名词[1]。
在Arduino硬件平台下,研究微环境的监测系统有非常大的现实应用的意义,不管是在农业领域还是医学领域,微环境 下监测系统的设计都是非常有必要的,可以投入很大的资金和人力资源。
本文讨论的主题就是基于Arduino的硬件平台,研究微环境下检 测系统的设计和应用问题。
关键词:Arduino的硬件平台;Zigbee数据中心;微环境;监测系统
微环境下监测系统的设计除了要使用Arduino的硬件 平台,还需要借助Zigbee的数据中心以及无线传感器网络 等新型的技术,这些新技术的使用都是得益于科技的进步和 发展,也只有这些新兴的技术能够为微观环境下监测系统的 研究和设计带来坚实的保障。
随着互联网的发明和投入使用,不管是社会上还是生活中,都产生了大量的数据,这些数据 稂莠参半,有的毫无用处甚至还会对工作产生很大的危害,但是有的却是工作中不可或缺的存在,所以对数据的管理有 很大的必要性,这也是数据中心产生的原因,并且随着越来 越大的社会需要,数据中心的规模和数量都得到了很大的提 升,并且对运行的环境也有了更高的要求,Zigbee数据中 心凭借着自身灵活和简单的自组网方式,在自动控制领域和 物联网中得到了相当可观的应用。
监测系统的设计需要用到 很多的数据,尤其是微环境下的检测系统,由于应用的单位 比较小,所以要求使用的数据需要更加的精确,不同的数据 中心在微环境的监测中有不同的方法和技术,相应的也会产 生不同的设计结果和应用的范围,为了使设计出的微环境监 测系统具有更高的使用价值,本文在Arduino的硬件平台 和Zigbee数据中心的基础上来进行设计和研究,下面就开 始具体的分析介绍。
l.Arduino的硬件平台的简介
Arduino通俗来讲,其实质是一个微电脑,主要功能是 传授互动的设计以及智能产品的设计,它的发明和大多数 的科技_样,也是为了满足人们的使用,意大利_家高校的 老师Massimo Banzi是Arduino的设计者,设计的契机也 只是为了满足学生的使用,因为当时市面上的微控制器大 多比较昂贵,很多学生支付不起,所以,为了能够保证学 生的正常使用,Massimo Banzi和西班牙晶片工程师David Cuartielles—起研究了 Arduino,Arduino和其他的商品不 同,它最大的特点就是开放性,其他人在合法的情况下都可以使用,可以对Arduino进行重新的设计和修改甚至销售,这种程度的商品不管是当时还是现在都是非常罕见的,但是 在开放的同时,也有一定的规定,那就是新的设计和改编 也必须保证和Arduino_样的开放性,这是Arduino的设 计理念,还要保持Arduino的名字不改变,所以现在市面 上出现了多种型号的控制器,图1就是比较常见的Arduino 型号—
—ArduinoUno P]。
图lArduinoUno
Arduino分为硬件和软件两个部分,具体为Arduino 板和Arduino IDE,在simple I/O界面板上构建而成,使用 的是C语言或Ja v a的开发环境,适用性比较大,主要的功 能是通过传感器来感知周围的环境,还能够使用电机和灯光 来反馈甚至影响环境,所以用Arduino硬件平台来设计微 环境下的监测系统是有一定的现实依据的。
除了开放性,Arduino还拥有其他比较显著的特点,比如廉价性,这和 Arduino设计之初的目的有很大的关系,也是Arduino发 展迅速的原因之_,同时为了满足更多的客户,Arduino还 设计的有不同规格的传感器和控制器;其次,Arduino还具 有跨平台的特征,它能够在各种现在主流的平台上使用,比如 Microsoft Windows、Linux、MacOSX等,应用的范围
I1
7
<=□
远程管理接口
J L
—
微环境监
测数据库
开发工具 及开发环
java
C#+SQL
数据库
IAR8.10单片C 语言
第三方监控系统
其他应用系统
数据中心监控平台
m m m
n
接口1 接口2
接口
数据采集控用户管理
异常报警管数据管理
无线组网管无线链路管节点配置管传感器驱动数据加密
非常的广泛;除此之外,Arduino 的编程界面比较注重视觉 化,同时编程的方式也比较简单,很受初学者和设计人员的 喜爱,在年轻人中享有很高的声誉,在此基础上,Arduino 平台还设计了特殊的控制语言,控制语言比较具有人性化, 是在C 语言的基础上开发的,用户可以进行调控,实现特 定的功能。
2.微环境系统检测的设计
■ 2.1Arduino 硬件平台下微环境监测系统的总设计 2.1.1总设计的重要点
在Arduino 的硬件平台上,还需要使用Zigbee 数据中 心,上述我们已经介绍过Zigbee 数据中心的重要性,这里 就不再累述,结合Zigbee 数据中心和Arduino 硬件平台的 技术,我们开始具体的介绍微环境监测系统总设计的几个要 点。
整个系统的设计需要一个起保护作用的柜机,在柜机的 内部安装的有各种不同功耗的设备,这些设备在使用中会产 生一定的热量,从而影响监测的环境,所以监测系统的设计 一般都是划分为不同的小格,在微小的空间里做具体的监测, 但是划分为不同的小格,会加大整个系统的负担,所以在总 体的设计中要着重注意以下几个问题,首先是系统的分层设 计,要注意均衡各层次的任务和功能,能够保证数据的采集 和交换、传递和储存等,这些都要在总体设计的时候考虑到, 为了实现系统对于数据的吞吐性能;其次还要注重数据的准 确性和采集的及时性,因此必须选择那些精度比较高、性能 比较好的Zigbee 芯片和传感器;还要关注监测环境的传感 器部署模型,这是因为环境数据实际上就是监测空间中的连 续变化量,所以选择矩阵式的分布比单点式的分布要更加的 合理;最后还要注意各个层次之间的扩展性,来实现系统的 安全性和开放性[3]。
图2微环境监测系统的总设计
18 |电子制作2016年9月
2.1.2监测系统的总体设计
为了方便介绍,我们以图文结合的方式来进行,图2即 为微环境监测系统的总体设计。
由图2我们可以清晰的看到,在Zigbee 数据中心和
Arduino 硬件平台上设计出的监测系统总共分为三个层次,
从下往上,分别是网络层、采集层和服务层,整体的构建非 常的简介易懂,层次分明。
下面我们来介绍各个层次的主要 组成,首先是网络层,主要是在Zigbee 的协议栈上,由无 线传感网络来构成,也可以说,无线传感网络是监测系统网 络层的主要组成部分,再将无线传感器进行细致的分解,分 别是由Zigbee 芯片以及不同的传感器组成的,主要负责监 测数据的传输;采集层顾名思义是对监测数据的采集和管理, 在监测系统中属于比较重要的一层,也就是我们经常说的上 位机层,在采集层_般使用的是C S 技术架构,因为C S 架 构的性能能够很大程度上保证系统的稳定性和实时性;最上 面的是服务层,服务层在监测系统中起着不可忽视的作用, 它的存在是在保证自己层次稳定运行的前提下,为其他的系 统提供各种服务,可以保证整个监测系统的正常工作。
三个 不同的层级选择的开放环境和开放系统是不一样的,是针对 自己层次的功能和任务选择适合自己的系统,其中服务层选 择的是java 开发工具和Apache HTTP Server 架构,而网 络层选择的是C /C ++编译器和IAR Systems ,这样选择的 依据是网络层的设计目标,即在Zigbee 协议栈上建立一个 供整体系统的使用的网络系统;采集层这个上位层选择的是 效率很高的开发程序一C #,来保证采集系统的正常高效的 工作;最后介绍下数据库,整个监测系统的设计少不了数据 库,数据库是对系统中产生数据的收集和管理,起着不可或 缺的作用,在微环境监测系统的设计中,数据库采用的是
SQLServer 系统,来保证数据库的安全稳定运行[4]。
■ 2.2Arduino 硬件平台下微环境监测系统的硬件设计
2.2.1Zigbee 节点和协调器的设计
微环境的监测系统的设计分为两个部分,一个是硬件 的设计,一个是软件的设计,我们首先先来介绍系统的硬 件设计,也是分为了两大部分,一个是协调器和Zigbee 节
点;另一个则是微环境传感器。
监测系统的硬件设计主要 要考虑的是下机位的效能和性能,这是硬件设计的重中之 重,所以Zigbee 的节点和协调器的设计要根据实际的具 体要求,来组成各种不同的形状,比如网状、星形以及树
形等,这些都是比较常见的形状,可以根据具体的要求来 进行选择。
Zigbee 的节点和协调器的设计主要需要克服 的问题是系统中的电磁干扰,所以节点和协调器选用的是
CC 2530F 256+CC 2591的硬件方案,这样可以缩小无线网络
服
务层一采集层
的距离以及提高系统的抗干扰能力,使得搜集到的数据有更 大的准确性。
2.2.2微环境传感器的设计
为了方便介绍,本文首先列出了集体的表格,这样可以 方便读者的理解,传感器的具体设计如表1所示。
表1传感器设计的列表
型号类型数量方式采集精度
D S18B20温度传感器4X4数字9位(芯片自身)
S T H10温湿度传感器2X1数字8位(芯片自身)
M S5100烟雾传感器2X1模拟7位(C C2530A D C)
A C S712E L C T R-30电流传感器1X1模拟7位(C C2530A D C)
霍尔式风杯风速传感器1X1脉冲16位(C C2530计数)
微环境的监测系统中,传感器有着很大的作用,不管是 数量上还是质量上的变化,对监测系统都能够造成重大的影 响,所以对传感器的选择需要进行均衡的实验。
根据以往的 经验,并不是说精度越高的传感器对系统就会有更大的好处,精度过高不仅会提升系统的投资成本,也会造成系统运行的 负担,所以,在能保证系统正常运行的情况下,传感器要尽 量选择那些精度比较低的,但是也不能过低,从而为系统带 来运行的障碍,应该把握好一个度,表1列取了几个传感器,
图3软件设计中数据的流程图可以根据具体的实际要求来选择,低功率的数字传感器模块 可以将环境的模拟量直接转化为数值,从而减少系统的开销。
■2.3Arduino硬件平台下微环境监测系统的软件设计
2.3.1系统软件设计的主要流程
软件部分是微环境监测系统的核心部分,对于系统软件 部分的设计需要考虑很多的因素,为了设计出性能和效能都 比较高的系统软件,我们首先来了解软件系统中上位机的程 序的主要功能,对于本地用户来说,上位机程序实现了环境 监控的交互操作,非常的简单方便,其次,上位机和下位机 构成了一个完整的C S构架系统,这样就能够进行独立得运 行,实现各种工作,比如对系统节点的管理、系统用户的管 理,还有其他很多动能上位机都可以进行独立的实现,相应 的也减少了下位机的压力,提高了整个监测系统的工作效率。
监测系统软件部分设计的主要流程就是由终端用户通过中心 监控平台发出数据的请求开始,直到下位机将数据运行的结 构返回远程管理接口终止,这才是一个完整的软件系统的流 程,下面我们作图表示,如图3。
2.3.2通信协议
软件系统中,上位机和下位机之间的通讯是一个非常重 要的方面,需要投入很大的资源和精力来投入设计,这是因 为协议的格式直接决定了数据之间交换的效率,所以在设计 的时候可以考虑使用固定的长度指令的格式,来保证系统的 中通信的安全性和效率性。
固定长度的指令编码具有非常卓 越的价值,比如解码非常简单并且很少出错,同时占用的内 存也比较小,所以在系统软件的设计中可以优先考虑这种指 令。
指令的选择还要受到传感器数量和种类的影响,这是因 为系统硬件的设计不仅要考虑系统的稳定性还需要考虑系统 的扩展性,这样就会造成指令长短的变化,如果指令过长,就会降低指令的传输效率和解析效率,从而造成系统运行效 率降低。
一般情况下,上位机和下位机之间的通讯数据格式 被固定为80个字节,为了表达的清晰,我们将指令格式的 结构以表格的形式展现出来。
表2指令格式表
项目内存字节数顺序备注
指令头“&H E D”40开始标志
指令类型指令集34指令集目标物理地址节点长地址87如果无责置0目标网络地址节点短地址215
数据包传感器返回数据5317如果无责置0连接质量节点信号强度170
备用待扩展471
校验位奇偶校验175
结束位“&E N D”476结束标志
I1
9
3. 微环境系统检测的调试
在完成监测系统的硬件软件的设计之后,接下来需要做 的事情就是对微环境监测系统的调试,调试工作对系统的正 常运行起着重要的监测作用,一般来说,对于整个系统的测 试采用的是仿真的形式,这样做可以准确明显得观察出系统 设计存在的问题,以便得以及时的改正。
调试工作具体指的 是对已经设计好的硬件和软件进行运行的监测,观察设计出 的系统能够达到预期的功能,对此使用比较广泛的工具是 AVRStudio,这是一个功能比较综合的开发环境,具体的功 能有项目的管理、程序的调试、程序的编译和下载等,功能 比较齐全。
具体的使用程序是首先启动ICCAVR,接着建设 一个新的工程项目,再经过选择,翻译和总结等具体的程序 最后将烧录器和节点上的JTAG进行连接,来完成对监测系 统的调试,如果出现问题需要及时的改进,调试工作的结束 才是微环境监测系统设计的最后一步。
4. 结束语
微环境的监测系统在如今的社会上已经具有很大的实用(上接第16页)
工作模式,会造成与最终实际运行的工作模式相悖,而且系 统的运作也不能够顺利进行,具体的系统存储过程需要在 ROM_BOOT中加载boot loader启动才能够完成,所以要 强调改变原来的空间设备大小,将一些优化过的系统进行科 学化的安装,从而完成系统存储器设计。
该项研究问题的解 决对于我国的北斗基带芯片中的ARM控制单元设计来讲是 一次重要的实践性探索。
■ 1.5片上其它资源设计
片上资源主要有通用异步收发器(UART)、看门狗定 时器(WDT)、实时时钟模块(RTC)、串行外设接口(SPI)、通用输入输出控制器(GPIO)等。
UART是调试接口,在 软件设计和数据处理的过程中使用UART进行调试,同时在 芯片设计后期PVT解算等一系列的基带处理结果也需要通 过UART输出到PC终端显示出来。
RTC主要用于时间同步,每隔_定时间会从卫星上加载最新的时间数据。
WDT用于 监测总线活动,防止软件跑死等突发情况。
S P I主要是用于 ARM7系统与各种外围设备以串行方式进行通信来交换信 息。
GPIO是APB总线和10端口的桥梁,通过编程,GPIO 可以控制16个10引出端为输入或输出。
2.北斗基带芯片中的ARM控制单元设计系统 集成与验证
北斗基带芯片中的ARM控制单元设计验证工作贯穿整价值,并且随着科技的进步和知识的发展,系统的设计也有 了新的支撑和坚实的保障,需要集中各方面的资源和力量,来设计出一个高性能、高效率的监测系统,提高国家经济效 益和社会效益。
参考文献
氺[1]时野坪.基于Wi-F i的农业微环境监测系统的设计[J].电子科 学技术,2013,09(3):11.
氺[2]施云波,王萌萌,南慧杰,时野坪.基于无线传感器网络 的农业微环境监测系统的设计[J].黑龙江大学自然科学学报,2013,02:254-258.
*[3]田辉,张潇潇,李悦明.基于Zigbee的数据中心微环境监测 系统的设计与研究[J].电子科学技术,2016,03:338-342.
氺[4]刘仲玺.基于Arduino硬件平台的微环境监测系统设计[J].
安徽冶金科技职业学院学报,2016,01:23-26.
个设计流程。
据统计数据,北斗基带芯片中的ARM控制单 元设计中功能缺陷超过60%,可见北斗基带芯片中的ARM 控制单元设计验证工作重点应在功能验证上。
本北斗基带芯 片中的ARM控制单元设计系统的设计阶段主要采用软硬件 协同验证,主要分为如下几个步骤:
第_步,系统集成前IP级验证。
第二步,系统集成后IP级验证。
第三步,系统集成后的系统级验证,这一阶段验证系统 需要其他IP核协同验证,才能最接近最真实的情况。
3.结束语
北斗基带芯片中的ARM控制单元设计,对于当前科 技发展来讲是一次重要的探索。
为了有效的控制单元在Vitex5LX110 FPGA原型平台上验证并实现,我们主要结合 -定的实践操作来优化系统,从而使之快速的发展,同时可 以为后续数据处理软件开发做进一步准备。
参考文献
氺[1]孙洪亮.基于FPGA的G P S芯片验证与实现研究[D].长春:长春理工大学,2008 (04)
氺[2]王彬,任艳颖.数字1C系统设计[M].西安:西安电子科技大 学出版社,2005 (01)
20 |电子制作2016年9月。