基于Edison的联网测控系统的设计
XX
(XX XXXXXX,510641)
摘要:设计了一个基于Intel公司Edison
威廉希尔官方网站
板、Seeed公司Grove套件和路由器的联网测控系统,该系统以网页作为交互界面,Intel公司Edison威廉希尔官方网站
板、Seeed公司Grove套件作为硬件基础,利用Arduino IDE和HTML语言编写相关程序,能够实现从远程对威廉希尔官方网站
板及其挂载的配件进行控制。该系统具有远程、支持设备广泛、实时性强的特点。
关键词:Arduino;Edison;传感器;物联网
0.引言
物联网是指通过各种信息传感设备,实时采集任何需要监控、连接、互动的物体或过程等各种需要的信息,与互联网结合形成的一个巨大网络。其目的是实现物与物、物与人,所有的物品与网络的连接,方便识别、管理和控制。根据国际电信联盟(ITU)的定义,物联网主要解决物品与物品(Thing to Thing,T2T),人与物品 (Human to Thing,H2T),人与人(Human toHuman,H2H)之间的互连。但是与传统互联网不同的是,H2T是指人利用通用装置与物品之间的连接,从而使得物品连接更加的简化,而H2H是指人之间不依赖于PC而进行的互连。因为互联网并没有考虑到对于任何物品连接的问题,故我们使用物联网来解决这个传统意义上的问题。物联网顾名思义就是连接物品的网络。
随着目前国际上对于物联网的应用越来越广泛,一批智能硬件也随之兴起,Intel公司的Edison就是其中之一。本文利用Intel公司的Edison威廉希尔官方网站
板作为基础,制作一个联网测控系统,可以根据需要挂载不同的传感器以测试各式参数,能够应用在工业测控、智能家居等领域。
1.整体硬件构成
本方案的硬件组成包括一块Intel公司的Edison威廉希尔官方网站
板,一个路由器,一套Seeed公司Grove套件和一台上位机,上位机可以采用PC、
手机、平板电脑等。Edison相当于整个系统的核心部分,充当下位机;路由器可以用于实现Edison与上位机之间的
通信,路由器与Edison采用WiFi通信;Seeed公司Grove套件包含各式传感器和LED、马达等,用于测试相关参数和执行Edison发出的命令;上位机用于实现人与系统之间的交互,上位机与路由器之间可以选择使用有线或者无线连接。Arduino IDE用于实现程序的编辑,HTML用于实现网页的开发,HTML语言可以嵌入在Arduino IDE中。
整个控制流程如图一所示:
图一。控制流程
2.硬件介绍
2.1 Intel Edison
“Edison”是 Intel公司于2014年9月发布的物联网微型开发环境,搭载了一颗22nm Atom 500MHz双核心处理器(Silvermont架构),整合Quark 100MHz微控制器,1GB LPDDR3内存,4GB eMMC闪存,支持802.11n和蓝牙4.0。Intel公司为Edison核心模块配备了一个具备Arduino UNO R3接口的扩展板用于实现功能扩展。
2.2 Seeed Grove
“Grove”套件是Seeed公司推出的一款基于Arduino的扩展板,包括了若干种传感器,还有LCD显示屏,微型马达等,能够用于执行相关的测控指令。
图二。Intel Edison与Seeed Grove连接
3.程序流程
针对不同的应用环境,需要的传感器和执行
元件也是不同的,这里以温度传感器为例,简要介绍一下如何实现测试某个参数,以LED灯为例介绍一下如何实现控制某个执行元件。
首先要基于网络进行交互,就需要将Edison当做一个服务器来使用,同时服务器上面还要运行一个网页。
制作网页就要利用HTML语言。HTML语言本身只是一些文本,如果只是需要一个简单网页的话可以使用txt来进行编辑HTML代码,如果需要复杂网页,显示较多内容的话则需要利用相关软件比如FrontPage来进行制作,生成HTML代码。这里以简单网页作为例子。
对于一个已经生成的HTML文件,需要将其嵌入Arduino IDE代码中以实现在Edison中运行。在Arduino IDE中使用“server.println”命令来进行编辑,即对于每一行独立的HTML代码,在Arduino IDE中使用“server.println(相关HTML代码)”来执行运行网页。
完成网页代码后就要对相关参数进行测量与控制。测量参数的方法是首先找到相关传感器的头文件(.h文件),这个通常能够从传感器供应商处得到,然后再程序的开头加入头文件,使能传感器对应连接的Arduino接口,然后将相关参数代入HTML代码中即可实现在网页中显示相关的测量参数,如果需要再进一步显示相关的变化图则需要使用FrontPage来编写代码。
控制某个元件的时候同样需要相关的头文件,然后使能相关元件连接的Arduino接口,然后需要编写相关控制代码。以LED灯的亮与灭为例,需要再代码中加入一个超链接,需要点亮LED时就用超链接指向到后面加个/on的网页中,需要灭掉LED时就用超链接指向到后面加个/off的网页中然后再Arduino的控制代码中加入监听的相关语句。如果监听到有指向到/on的网页时则点亮LED,如果监听到有指向到/off的网页时则灭掉LED。其他的控制方法与之相似。
最后要加入相关的Wifi代码使Edison能够与路由器之间进行通信,这样就完成了Edison上面的开发。
完成了Edison上面的开发后还需要对路由器进行相关设置,首先路由器要给Edison分配一个端口(默认是8080),然后通过这个端口加上IP地址就能够实现局域网内访问Edison,如果需要在广域网中访问Edison则需要路由器支持虚拟服务器的功能(图三)。
图三。网页效果
4.结论
本文提出一种基于Edison的联网测控系统的设计,系统能够支持通过相关传感器测试某个参数与进行某个元件的控制。采用Arduino IDE进行相关程序的编写,将程序下载到威廉希尔官方网站
板后即可将威廉希尔官方网站
板作为一台微型服务器来使用。整个系统开发调试简单方便,能够支持物联网的开发,作用范围广。
参考文献(略)