嵌入式Web技术在智能温室监控系统中的应用
智能温室监控系统是近年来发展起来的节约型设施农业技术,通过计算机综合控制,在充分利用自然资源的基础上,调节温度、湿度、光照强度等环境因素来获得作物生长的最佳条件,从而达到提高作物产量、改善品质、增加经济效益的目的。嵌入式系统与Intemet技术的结合是当今发展的趋势,如何将嵌入式产品与Internet连接起来实现室内设备的统一监控与管理,通过Internet实现对设备行为的访问与交互是目前研究的热点。本文提出一种基于嵌入式Web技术的智能温室监控系统设计方案,系统以嵌入式处理器作为上位机,通过构建嵌入式Web服务器,借助CGI(Common Gateway Interface)技术控制中心与嵌入式Web服务器端之间的动态数据交互,来满足嵌入式设备直接与Internet联网的要求,使管理者可以不受空间限制,通过Internet利用Web浏览器完成对设备的远程访问、监控和维护等操作。
1 系统总体设计
本设计基于ARM9开发平台,构建嵌入式开发环境,裁剪移植Linux操作系统。系统采用嵌入式Web服务器对设备进行功能配置,利用温度、湿度、光照强度传感器采集数据,采用嵌入式数据库对监测数据进行分析和存储。系统通过控制程序协调温室参数,并对控制参数进行监测,从而为温室中的作物提供最佳的生长环境。
嵌入式网络监控系统分客户端主机和现场嵌入Web服务器智能监控设备两部分,监控系统的结构如图1所示。
客户端主机通过浏览器与Web服务器交互式处理数据,从而实现对网络智能设备的远程监控。其中嵌入式Web服务器和监控端位于温室现场,监控端完成对温室环境参数(温度、湿度、等数据)的采集,并将采集结果存入数据库,通过CGI技术,管理人员通过网络便可了解温室内环境情况。系统采用Boa作为嵌入式Web服务器,负责监控、接收和分析用户请求,传送静态页面和调用后台CGI(Common Gate Interface)程序。
2 系统硬件设计
为了保证系统的实用性和可扩展性,系统选用Samsung公司的S3C2440A作为CPU处理器,S3C2440A带有丰富的外围接口,是一款高性价比的ARM核SoC芯片,工作频率最高可达400 MHz。系统硬件结构如图2所示。
系统配置有内存大小为64 M的SDRAM和128 M的Nand Flash。外接320x240的LCD触摸屏,实现本地用户人机接口,进行设备管理,通过USB接口连接摄像头,完成温室环境的图像采集;通过DM9000外扩以太网接口实现与无线局域网设备的连接和Interact的连接。另外,系统还扩展有RS485接口,可用于系统的扩展,通过布线连接相应的设备。
3 系统软件设计
整个系统软件结构如图3所示,数据采集程序通过数据采集设备(传感器、摄像头等)按照用户预先设定的参数周期性的下发查询命令,将采集到的结果写入SQLite数据库,监控人员使用浏览器通过Web服务器(Boa)管理和维护系统。
网络服务程序由嵌入式Web服务器和CGI脚本程序两部分组成:服务器通过监听80端口,监听来自网络的用户请求,如有用户请求,则启动相应的CGI脚本程序,将请求信息转化为服务器可以识别的数据格式,从SQLite数据库中读出所需的信息,再由CGI程序将信息转化为Web浏览器能够识别的格式,作为HTTP应答消息回送客户端显示。CGI脚本程序完成的功能主要包括:配置、查询设备相关信息及查询设备告警信息等。
3.1 嵌入式Linux操作系统
用于嵌入式系统中的操作系统很多,如Linux,Vxworks,Windows CE等。相比而言,Linux兼容POSIX1003.1标准,支持多线程、多任务系统且具有源码公开、完全免费和广泛的移植性等特点,使用更加灵活。同时具有强大而稳定的网络功能和完善的开发工具,支持TCP/IP协议栈,可提供FTP、TELNET等服务,同时还可以通过应用程序向其他系统提供服务。因此,选择Linux 2.6.32作为嵌入式操作系统。
3.2 交叉编译Boa
本系统采用尽可能简单的嵌入式Web服务器,即Boa,能够实现HTTP1.1协议的基本内容,支持CGI,支持认证,是一个单任务的HTTP服务器,Boa体积小,只有几十kB。交叉编译工具使用的是arm-linux-gcc4.3.2。
1)下载Boa源码包boa-0.94.13targz,解压后,在boa-0.94.13\src目录下运行#/configure命令生成Makefile文件。
2)修改Makefile文件,其中:CROSS_COMPILE=/usr/local/arm/4.3.2/bin/arm-linux-。
3)运行#make命令,生成可执行程序boa,运行#/usr/loeal/arm/4.3. 2/bin/arm-linux-strip boa命令删除调试信息。
3.3 嵌入式数据库的移植
Sqlite数据库对嵌入式来说是一个很好的数据库引擎,可有力
- 嵌入式系统在电源设计中的运用(09-20)
- 一种小型智能化UPS系统的嵌入式设计方案(09-16)
- 基于无线传感器网络的嵌入式远程测控系统研究(10-17)
- 嵌入式工业以太网控制器的设计和应用(10-17)
- 基于4G通信的嵌入式数据通信系统设计(10-10)
- 嵌入式CPU卡在医用便携式监护仪中的应用及设计(09-23)