当前位置:首页 > 测试测量 > 测试测量
[导读]摘要:在智能传感器的基础上结合了CGI和Java Applet技术,在μC/OS-II操作系统下将μIP协议嵌入到传感器的ROM中。利用传感器内嵌的Web服务器,用户可以通过浏览器对远程数据进行监测。该系统解决了因距离影响被

摘要:在智能传感器的基础上结合了CGI和Java Applet技术,在μC/OS-II操作系统下将μIP协议嵌入到传感器的ROM中。利用传感器内嵌的Web服务器,用户可以通过浏览器对远程数据进行监测。该系统解决了因距离影响被监测区域数据的获取问题,实现了真正意义上的网络化监测。
关键词:Web网络传感器;远程数据采集;Java Applet;CGI

引言
    随着网络技术和嵌入式技术的发展,将嵌入式系统与Internet相结合对系统进行数据、图像监控和管理,成为重要研究方向之一。嵌入式Web网络传感器技术是传感器、嵌入式、分布式信息处理和Internet等相关技术交叉结合的技术,它是在智能传感器的基础上把TCP/IP协议作为一种嵌入式应用,嵌入现成智能服务器的ROM中,利用传感器内建的Web服务器,用户可以通过浏览器采集远程监控对象的信息。

1 Web网络传感器数据采集系统工作原理
    用户通过浏览器访问Web服务器上的数据,将远程采集到的数据实时显示到Internet网页上。用户需要实时看到数据的变化,而HTML网页通常只能是静态的数据,为此在Web服务器上应用动态网页技术是必要的。动态网页的实现技术有CGI和HTML脚本嵌入技术(如ASr、PHP、JSP等),由于网络传感器嵌入式系统采用的是单片机来实现,其资源有限,为此采用CGI技术来实现动态网页。
1.1 CGI原理
    CGI(Common Gateway Interface,公共网关接口)提供给Web服务器一个外部程序的通道,实现处理器与浏览器之间的通信。CGI是一种接口规范,可以处理客户端(一般是浏览器)输入的数据,完成浏览器和服务器之间的交互操作。CGI是运行在Web服务器上的程序,由浏览器的输入触发,是服务器和系统中其他程序的桥梁。CGI程序属于一个外部程序,是运行在服务器端的一个可执行文件。
    CGI程序的工作原理示意图如图1所示。


    客户端的Web浏览器浏览到某个主页后,利用一定的方式提交数据,并通过HTTP协议向Web服务器发出请求。服务器端的HTTP Daemon(守护进程)将描述的主页信息通过标准输入(STDIN)和环境变量(environment variable)传递给主页指定的CGI程序,并启动此应用程序进行处理(包括对数据库的处理)。处理结果通过标准输出(STDOUT)返回给HTTP Daemon,再通过HTTP协议返回给客户端的浏览器,由浏览器负责解释执行,将最终的结果显示给用户。


1.2 基于CGI的数据采集流程
    CGI的数据采集流程如图2所示。当用CGI实现远程传感器温度数据采集时,CGI程序可以通过直接访问硬件或调用驱动程序的方式获得数据。当数据采集完毕后,CGI程序将数据组织成HTTP流并发送到Web服务器上,由Web服务器负责送到客户端。

2 实时数据采集技术
2.1 连续数据采集的实现方法
    由于HTTP是基于请求/响应模式的,客户端和服务端进行一次交互时,开始于客户提出的一个请求,并在服务器给出响应后结束。而一次交互只能得到一组数据,那么如何实现连续的数据采集呢? 一般有两种方法:即客户端牵引和建立TCP连接。
    客户端牵引就是在网页中插入定时刷新功能,它的数量级为s,可以使用户看到数据的变化,但不能满足强实时性的要求,而且其中会漏掉一些中间的数据。
    建立TCP连接就是通过在网页中嵌入ActiveX控件或Java Applet小程序来增强客户机的功能。其中,ActiveX控件只能在windows环境下运行,而Java Applet通用性强,可以实现跨平台操作。所以本系统采用Java Applet来进行远程数据的实时采集。
2.2 Java Applet
    Applet是用Java编写的,含有可视化内容的,并被嵌入Web页面中用来产生特殊页面效果的小程序,经常被用于增加网页多媒体效果,并使网页产生互动功能。
    当用户访问带有Java Applet的网页时,Applet被下载到用户计算机上执行,但前提是用户使用的是支持Java的网络浏览器。由于Applet是在用户计算机上执行的,因此它的执行速度是不受网络宽带或者MODEM存取速度的限制,用户可以更好地查看网页上Applet产生的多媒体效果。
    Applet必须将HTML的<applet>和</applet>一对标记或者<object></object>嵌入到Web网页中,使用浏览器才能运行。在IE中用<obje-ct>标签取代<applet>标签,在Netscape 4使用<embed>标签取代<applet>,但是<object>和<embed>都必须遵循Java Plug-in中的格式。

3 实时数据采集的具体实现
3.1 硬件实现
    嵌入式Web网络传感器的数据采集系统的硬件结构如图3所示。

    ADuC832是ADI公司推出的混合信号单片微控制器,是真正意义上完整的数据采集系统芯片,是集数据转换电路、微控制器、闪存于一体的数据采集系统。它的主要特性有:8通道模拟I/O,247 ksps、12位ADC,2个12位(单调的)电压输出DAC片内温度传感器;62 KB片内闪速/电擦除程序存储器,4 KB片内闪速/电擦除数据存储器,2 304字节的片内数据RAM。
    主芯片通过74LS138译码器来进行片选外部数据存储器KM62256,或者网卡控制器RTL8019AS。通过74HC573地址锁存器进行当前地址的锁存,使得输出端的状态不会随输入端的状态变化而变化,仅在有锁存信号时输入的状态被保存到输出,直到下一个锁存信号到来时才改变,也是为了实现地址的复用。
    在主电路上主要设计了一个信号输入接口,用来接工业现场的4~20 mA信号的变送器;设计了一个RJ45的网口接口,通过网口可以直接接到Internet上,进行现场数据的上传和共享;还设计了RS485接口和RS232接口,作为工业现场特殊情况下的数据接入和处理。
    现场传感器将采集的4~20 mA信号传送给信号调理板,将其信号转换为0~2.5 V的电压信号,然后通过ADuC832转换为数字量,再通过程序转换为相应的温度值,实时地将温度值显示在嵌有Java Applet的网页上。
3.2 软件实现
3.2.1 操作系统和协议栈的选用
    在嵌入式Web服务器上,选用μC/OS-II作为嵌入式实时操作系统。它是一个可移植、可固化、可裁剪、抢占式的实时操作系统,比传统的前后台程序可靠性更高,效率更高。
    TCP/IP是个协议簇,是诸多开放的协议的集合,但是单片机是个小型的微处理器,内部资源有限,因此必须要对协议进行裁剪。本系统采用精简的小型TCP/IP协议栈——μIP协议栈。μIP协议代码中包括了一些基本的通信协议:ARP协议、IP协议、ICMP协议和TCP协议,UDP协议、HTTP协议、Telnet协议、SMTP协议等。其中,ARP、IP、ICMP、TCP这4个协议就能实现网络连接和通信的最基本的功能,同时还能实现CGI技术。其应用层就是HTTP协议,采集数据嵌入在Web服务器网页中以网页的形式发布到Internet。
    对于μC/OS-II和μIP的移植,详见参考文献。整个系统的软件结构如图4所示。


3.2.2 Java Applet嵌入网页的实现
    应用Applet实现嵌入式Web传感器实时监控程序RealtimeMonitor.java,主要结构如下:
  
    其中,192.168.11.30是嵌入式Web服务器的IP地址,data.txt是传感器经处理器处理后的数据,“wly.sleep(1000);”表示设置采集的时间间隔为1s。
    通过JDK软件包,使用命令javac RealtimeMonitor.java将Java程序编译成RealtimeMonitor.class,然后使用“<appletcode=Real-timeMonitor width=400 height=600></applet>”嵌入到HTML网页中。
    最后,在已加载μC/OS-II和μIP程序的Web服务器上添加嵌入Applet的Monitotor.html网页,将Monitor.html网页的文本转换成十六进制代码,放置在μIP的fsdata.c文件中并嵌入到处理的ROM中,通过Keil将所有程序编译生成HEX文件,下载到嵌入式Web处理器里。
    打开浏览器输入IP地址192.168.11.30,访问嵌入式Web服务器上的采集数据。网络传感器实时数据采集结果如图5所示。



结语
    本文介绍了Web服务器的工作原理,将CGI和Java Applet技术内嵌在嵌入式服务器上,通过客户端的浏览器可以实现嵌入式Web网络传感器的实时数据采集,节约了诸多的硬件资源和人力资源,使得对远程数据自动采集变得更加具有通用性,同时可以适合任何内建嵌入式Web网络传感器,具有一定的现实意义。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭