收藏 分销(赏)

BS模式嵌入式远程检测系统实验.doc

上传人:綻放 文档编号:8915097 上传时间:2025-03-07 格式:DOC 页数:3 大小:1.54MB 下载积分:8 金币
下载 相关 举报
BS模式嵌入式远程检测系统实验.doc_第1页
第1页 / 共3页
BS模式嵌入式远程检测系统实验.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
B/S 模式的嵌入式远程检测系统实验 实验简介 感测技术和计算机技术应用结合的发展趋势是嵌入式和远程应用, 这种嵌入式应用由过 去的 51 系列单片机逐渐发展成被 ARM 等嵌入式系统所取代,远程应用有 C/S 和 B/S 两种模 式,由于 ARM 嵌入式系统性能优异,具有完备的功能,能运行 Linux 等开源可裁剪的实时操 作系统,方便架构 web 应用。因此传统的检测系统应用技术必将面临挑战,检测系统软件的 网络应用,过去人们之所以主要使用 C/S 模式,是因为 B/S 模式网页信息传送冗余度大,使 实时性很差,而 AJAX 技术很好的弥补了 B/S 模式这个缺点,因此过去的 C/S 模式的主体地 位必将被 B/S 模式所取代。 把检测系统中的嵌入式小型计算机作为一台接入网络中的计算机, 它既是一个检测仪表 设备,又是一个 WEB 服务器,因此可以通过浏览器远程操作该仪表,从而实现 B/S 模式的检 测系统。 1 系统的结构与组成 1.1 检测系统原理 图 1 中液位变送器输出 2-20mA 电流接入 DDC 远程模块 7017,7017 数字化后通过 485 总 线接入嵌入式系统 ARM7,完成数据采集、数据处理。与远程用户通过浏览器基于 HTTP 协议 进行交互。 。 图 1:检测系统结构框图 1.2 应用软件设计 采用 B/S 模式开发的应用程序的关键问题是如何提高检测的实时性,常规的 web 应用是 采用网页刷新机制,强制用户进入提交/等待/重新显示,用户的动作总是与服务器的"思考 时间"同步,客户端每次刷新数据都要求服务器端传送整页数据,而一页数据中只有极少数 据是需要更新的实时数据,因此网络传送大量冗余信息,严重影响实时性。AJAX(异步 JavaScript + XML)技术,是一种新的 WEB 开发理念,它集 JavaScript、CSS、DOM、 XMLHttpRequest 技术于一体,将浏览器端的 JavaScript、DHTML 与服务器异步通信有机融 合。 提供与服务器异步通信的能力, 使用户从请求/响应的循环中解脱出来。 使用 JavaScript 和 DHTML 立即更新 UI,并向服务器发出异步请求,以执行所需要的更新。当请求返回时, 使用 JavaScript 和 CSS 来相应地更新 UI,网络只需要传送极少的已经更新了的数据,而不 是刷新整个页面。大大减少了传输的数据量,提高了检测的实时性。在设计过程中,WEB 如 何实时的取得检测数据成为成功关键,在此,利用 Linux 特有的文件类型 FIFO(命名管道) 来和 WEB 应用程序通信,FIFO 一端写入数据,另一端就读出数据,通信方便。检测模块把 实时数据按一定的方式写入管道,另一端 WEB 服务程序(用 C 写的 CGI 程序)读出数据后发 送给 AJAX 客户端脚本和 Flash 图表,AJAX 就操作 DOM 实现无刷新的动态更新 WEB 页面数 据,Flash 得到数据后解析出绘制图表的坐标值,然后绘制出动态曲线图。这就实现了在 WEB 里显示实时数据和动态曲线图。 系统应用软件由嵌入式计算机中的测量控制模块、WEB 服务模块和客户端脚本程序共同 构成,如图 2 所示为系统软件结构图。 图 2:软件结构框图 1.3.1 测量模块 测量控制模块是基于 linux 系统 C 语言实现数据采集、标度变换.系统初始化后从串口 读取当前液位值进行标度变换,判断有无 WEB 数据请求,若有则把请求的数据写入 FIFO 送 给 WEB 服务模块,下一步,系统进入定时等待(400 毫秒) ,定时到则立即进入下一次数据 采集、运算。 这一过程就实现了液位高度的采集、变换、实时传送数据给 WEB 服务模块。 测量控制模块软件流程如图 3 所示。 图 3:测量模块软件流程图 1.3.2 WEB 服务模块 WEB 服务模块是基于 Linux + boa 架构的嵌入式 Web Server,用 C 编写的 CGI 程序。它 接受并处理 AJAX 发来的请求并通过 FIFO 管道与检测模块交换数据,实现实时数据获取、控 制参数修改。一方面从 FIFO 管道中读取来自测量控制模块的实时数据,再送给客户端 AJAX 脚本和 Flash 进行实时数据的显示和动态图表的绘制; 另一方面接受从客户端提交的控制参 数然后返回给测量控制模块进行相应控制。 这一过程就完成了用 WEB 浏览器进行测量控制的 任务,从而实现了 B/S 模式的检测系统。如图 4 所示为 WEB 服务模块软件流程图。 图 4:WEB 服务模块软件流程图 1.3.3 AJAX + CGI 动态显示测量数据 AJAX (JavaScript、XML、DHTML)可以定时向服务器发送 XML 请求(异步 XML 请求) 同时在不刷新页面的情况下利用 DOM 技术动态的更新页面数据。在此,WEB 客户端用 Ajax 脚本定时请求 WEB 服务模块的 CGI 程序,CGI 程序处理请求并返回数据,当 AJAX 获得数据 后,就操作 DOM 更新页面显示实时测量数据。由于可变数据量非常小,网络只需传输 WEB 页面需要更新的少量数据,这就提高了传输速度,从而实现了实时数据的显示。WEB 客户端 则使用通用的浏览器,当用户修改参数、给定值或显示实时数据时,只需要打开标准 WEB 浏览器就完成了系统的操作和显示,这就实现了 B/S 模式的测量。 AJAX 脚本工作流程图如图 5 所示: 图 5:AJAX 脚本和 Flash 工作流程图 1.3.4 Flash + CGI 绘制实时曲线 Flash 能定时自动请求并读取数据文件这一特性使它与 XML 结合能动态更新内部数据, XML(The Extensible Markup Language) 样只要通过 WEB 服务程序(CGI)更新了 XML 。这 文件的数据,Flash 的内部数据就能得到更新。 在此 CGI 把测量控制模块采集的数据(如液位值)以预先规定的 XML 文件格式动态生成 XML 送给 Flash。Flash 读取了这个 XML 文件后就解析文件,从标记<pv></pv>有解析出当前 液位,从标记<sv></sv>中解析出设定液位。有了这两个值,Flash 用脚本操作 Flash 元件 间断的在预定的坐标上打点,就样就绘制出动态曲线图。 本次测试中的 XML 文件格式为: <?xml version="1.0" encoding="UTF-8" ?> <data>
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服