Chinaunix首页 | 论坛 | 博客
  • 博客访问: 31182
  • 博文数量: 18
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 210
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-31 10:27
文章分类
文章存档

2015年(10)

2014年(8)

我的朋友

分类: 嵌入式

2014-12-24 11:32:25

  监控系统分2种,C/S模式和B/S模式。C/S模式需要在PC安装客户端,在嵌入式系统上还需要安装服务端,这在设计上不仅加大了开发工作量,而且还得配备专用电脑,但有时候在工业现场上是没有办法做到的。而B/S模式则显得其灵活性和成本低廉性。首先在B/S模式下面我们只需要开发单个WEB应用,客户端和服务端程序都不需要。其次还可以用具备浏览器的终端设备来随时随地浏览察看和控制后端设备。另外还可以省下其他监控硬件设备,有效降低了成本,增强整套系统市场竞争力。


  综合考虑本系统采用B/S方式。监控系统以ARM11微处理器(SC6410)为硬件核心,嵌入式Linux为软件核心的综合平台方案。在此平台上设计了基于Linux嵌入式Web太阳能监控系统。此监控系统以Ajax为网页前端通讯方式,Cgi进程、Php进程、485进程为后端数据处理方式。监控系统只存设备上运行,在和设备联网的任何地方,仪通过浏览器就可以直接监控太阳能设备,打破了距离的限制,提高了软件的保密性。


  1监控系统的硬件结构


  监控系统硬件分为核心板和底板2个部分。核心板使用S3C6410处理器,外扩128MBSDRAM和256MBFLASH外部存储器。底板采用的是RS485采集接口,3线RS232串口,SD卡存储接口以及以太网控制器和RJ45组成的以太网接口


  RS485通讯接口按照协议把太阳能设备参数读取并发送主控芯片(S3C6410)。主控芯片接受485采集数据并存放Sqlite3数据库。经程序处理、分析后的数据在网页上以动态曲线和表格形式显示,除此之外实现网页上发送指令修改太阳能设备参数。该监控系统完成参数以表格和曲线等多种形式的展示以及太阳能设备参数的配置,极大方便了客户,提高了客户使用友好性。


  2监控系统运行环境移植


  2.1嵌入式CGI的C库移植


  2.1.1下载cgic205.tar.gz


  下载地址:


  2.1.2解压


  解压压缩文件到/home/cgic/目录


  #tar-czvfcgic205.tar.gz


  #cdcgic205


  2.1.3编译


  修改其makefile里面的编译参数


  CC=arm-linux-gcc


  AR=arm-linux-ar


  RANLIB=arm-linux-ranlib.


  #make


  拷贝libcgic.a库到设备/usr/lib/目录下。


  2.2嵌入式数据库Sqlite3移植


  2.2.1下载sqlite3-autoconf-3070900.tar.gz


  下载地址:


  2.2.2解压


  解压压缩文件到/home/sqlite3/目录


  #tar-czvfsqlite3-autoconf-3070900.tar.gz


  #cdsqlite3-autoconf-3070900


  2.2.3编译


  #./configure


  --host=arm-linux-


  --prefix=/opt/sqlite3/install3.7.4


  --disable--tc


  #make


  #makeinstall


  拷贝/opt/sqlite3/install3.7.4目录下lib和bin文件到设备上对应目录。


  2.3WEB服务器Appweb软件移植


  2.3.1下载Appweb3.3.0.tar.gz


  下载地:


  2.3.2解压


  解压文件到/home/appweb/目录


  #tar-czvfappweb3.3.0.tar.gz


  #cdappweb3.3.0


  2.3.3编译


  #./configure


  --prefix=/home/my


  --target=arm-sc6410-linux


  --build=i686-pc-linux


  --enable-log


  --static


  --port=80


  --with-php=/home/cgi-php;


  #makeTRACE=1


  #makeROOT_DIR=/home/myinstall


  在/home/cgi-php目录里面要有编译好的php5动态库,编译的Appweb服务器才会支持php功能。


  拷贝home/my目录里面的文件到设备对应目录,同时拷贝php动态库到/usr/lib目录,至此监控系统运行环境移植完毕。


  2.3.4验证Appweb服务器


  编写以下代码并保存为文件test.php,放至设备/www/目录下


  在PC机浏览器地址上输入设备地址:192.168.0.80/test.php.如果浏览器网页中显示"okphp",就证明嵌入式Appweb带php开发功能且支持Sqlite3数据库软件运行环境已经移植完毕。现在Web服务器能支持Cgi和Php这两项功能,而类似boa,shttpd等嵌入式Web只是支持Cgi,在后台的处理上功能比较弱,不能完成较复杂的数据处理。


  3监控系统软件的设计与实现


  监控系统软件基于Linux操作系统,主要分为Cgi模块、Php模块、485进程模块。Cgi模块主要是要负责密码验证、修改、以及发送消息给485扫描进程进行对太阳能设备参数进行配置。Php模块主要负责从数据库中提取出数据分析、处理后送给前台。485进程模块主要是自定义通讯协议,扫描在线太阳能逆变器来获取其基本属性参数并且经过处理后存放在设备sqlite3数据库里,一切图形显示和图表显示以及参数修改等数据全部是从数据库中取得。


  3.1监控系统软件设计技术


  3.1.1软件通讯技术


  软件通讯方式是Ajax,她是结合了Java技术、XML以及JavaScriDt等编程技术,可以让开发人员构建基于Java技术的Web应用,并打破了使用页面重载的惯例。用户可以创建接近本地桌面应用的直接、更丰富、更动态的Web用户界面。


  3.1.2软件Javascipt基础库


  整个系统软件前端软件开发主要是基于Jayascipt的库JQuery.她简化了前端开发的工作,提供了丰富的函数接口。


  3.1.3软件曲线显示插件技术


  系统曲线显示部分主要是由Flot插件来完成的。Flot是一个非常强大的利用js来画出图表的jquery插件,并且支持几乎所有主流浏览器,包括IE6+.在本系统中主要采用此插件来完成历史和实时曲线的绘制。
推荐阅读:http://www.dlteacher.com/blog/user1/39356/archives/2014/181376.html
阅读(424) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~