资讯详情

基于嵌入式Web Server的无线数据采集系统

原标题:基于嵌入式Web Server的无线数据采集系统

1

1.1 基于MCF5272芯片

基于MCF嵌入式5272芯片Web Server硬件配置如下:MCF5272(Cold Fire32位处理器,4系列M字节的两片16×1M位数据宽度FLASH、16M字节的两片16×4M位数据宽度SDRAM、两个标准RS-232串口,10/1000标准M自适应快速接口,一个BDM接口、各种状态指示等。 MCF5272微处理器是摩托罗拉迄今为止推出的最高集成度Cold Fire微处理器。 MCF5272微处理器是摩托罗拉迄今为止推出的最高集成度Cold Fire微处理器。这个高集成的Cold Fire微处理器将10/100MB以太网控制器和一个USB模块等通信结合起来,提高了MCF5272集成通信微处理器集成水平。它不仅提供了一套新的通信外围设备,还包括过去Cold Fire广受欢迎的标准产品通用外围设备。

1.2 PTR2000 系列无线

PTR2000 为讯通科技生产的无线数传模块具有接收发射集成、体积小、外围设备少等优点MCU串口或计算机也可以连接RS,非常方便。由于发射功率低,设计设计高,用户无需申请许可证 。其标准DIP引脚间距,更合适。

PTR2000 具有良好的产品特性,工作频率为国际通用数传频段433MHz,FSK调制,抗干扰能力强;DDS PLL频率合成技术具有优异的频率稳定性;有两个频段,适用于需要多通道工作的特殊场合;最高工作率可达20Kbit/s,也可以在较低的速率(如9600bps)下工作。

1.3 系统原理

整个系统由数据采集发射终端和数据接收终端组成。

以51系列为核心的数据采集发射终端,MCU的P1口控制多路选择器,选择8路模拟信号,选定的模拟信号进入高速AD转换器,模数转换。MCU同时控制AD采样频率和起始转换,存储转换结果FIFO存储器。按照规定的通信协议,MCU编码数据,最后通过数传模块PTR2000 发射给远方接收端。为提高数据传输的可靠性,数据发送完毕,MCU将PTR2000 转换为接收状态,接收主机的响应信号或控制字。

ad93cf2848c29716086516bd253fe8d2.png

图1 数据采集端结构框

PTR2000 通过RS-232将接收到的数据发送到MCF5272嵌入式Web Server,MCF5272嵌入式Web Server接收数据后,将PTR2000 然后将数据转换为发射状态CRC循环码验证。若数据正确,则通过UDP/IP协议栈,包装数据,保存到FLASH芯片的可写JFFS在文件系统中同时运行web服务器,等待客户服务端通过网络访问数据;如果是错误的,则向PTR2000 发送重发命令。MCF5272嵌入式Web Server接入以太网口Internet用户可以通过浏览器(例如:IE)远程配置和管理系统(如更改)IP,重新启动系统等。),并且可以调用好函数API直接对FLASH读写操作芯片的几个风扇区域,可以在系统中保存配置信息和采集数据FLASH芯片上。

图2 数据接收端结构框

上位PC机通过RS-232与BDM调试器连接,BDM调试器通过BDM口与Web Server连接,可以对Web Serve初始配置、调试和日常维护。

2 实现系统软件

该系统的软件设计和实现是该系统实现的关键之一。

2.1 系统软件包括嵌入式操作系统和设备驱动程序

嵌入式操作系统是一种支持应用的操作系统软件,在系统实时性、硬件相关性、软件固态化等方面具有突出特点。由于Cold Fire没有系列芯片MMU (内存管理单元Memory Management Unit)处理器,和 uClinux对那些没有MMU因此,该系统是开发的uClinux嵌入式操作系统。

uClinux是Linux嵌入式版本是源代码开放的嵌入式操作系统,其核心二进制图像文件可小于512K。uClinux针对无MMU处理器设计,支持多任务,完整TCP/IP协议栈并支持多种网络协议。uClinux还支持各种文件系统,如ROMFS、NFS和JFFS等。另外,uClinux可移植性很强,用户通过重新配置、编译内核,很方便将其移植到68K、Dragon Ball、Cold Fire、Power PC、ARM等待各种处理器计算平台。当前uClinux提供2.0和2.四两个内核版本。

本系统采用uClinux嵌入式操作系统主要需要解决以下三个问题:

一是实时问题。uClinux不注意实时性问题,不是为了Linux提出了实时性。系统中的数据采集功能对操作系统的实时性有一定的要求。通过给予uClinux打上其它Rt-linux实时补丁可以增强uClinux实时满足系统的实时要求。

第二,JFFS建立文件系统。uClinux系统采用Romfs作为根文件系统,Romfs不支持动态擦写保存。系统中的嵌入式Web Server在运行过程中,需要动态保存一些数据,当系统重新启动时,保存的数据仍然存在。因此,我们需要充分发挥作用Flash在系统运行过程中,统运行过程中动态擦写Flash保存数据。通过建立JFFS可以使用文件系统Flash即将保存数据Flash用作系统硬盘。可以像操作硬盘上的文件一样操作Flash芯片上的文件和数据。可实时保存系统运行的参数Flash系统断电后,芯片中的数据仍然存储在Flash芯片中。为实现Flash上的JFFS我们需要在内核中添加文件系统JFFS文件系统和Flash支持设备,针对具体情况Flash 芯片修改设备驱动程序,生成设备节点JFFS文件系统挂接Flash 设备上。

第三,编制各设备的驱动程序。主要包括串口驱动程序、以太网接口驱动程序、BDM调试接口驱动程序和FLASH芯片驱动程序。

2.2 嵌入式Web Server实现软件系统

嵌入式Web Server软件系统包括五个部分: ①HTTP引擎; ②虚拟文件系统; ③配置模块; ④安全模块; ⑤应用程序接口模块。

图3 嵌入式Web Server软件系统示意图

其中HTTP引擎负责响应用户的要求,通过虚拟文件系统访问静态数据信息,通过应用程序接口获取动态数据信息。

虚拟文件系统嵌入式Web Server虚拟文件系统利用数据结构存储文件大小、修改时间等信息,提供虚拟文件服务。对于存储HTML建立数据结构以保存脚本的指针和脚本调用函数的名称是文件所需的动态信息。通过虚拟文件系统Java、 GIF、 PDF、 HTML以文本和其他文件的形式编译Web独立于特定文件系统的服务器识别代码。

配置模块使系统管理员能够遵循任何标准Web嵌入式设置在浏览器上Web Server在系统启动中定义的配置环境变量包括并发连接数Socket端口、主机名称、根文件路径、缺少初始文件、非活动加班和时区等。

配置模块对标准浏览器的开放使安全问题更加重要,特别是网络设备配置和控制信息访问已成为安全保护的重点。安全模块通过定义服务器上的安全域和定义每个安全域的用户名和密码来保护敏感信息。请求数据也可以通过加密来实现安全保护功能。

实现应用接口模块与嵌入式应用系统的数据交换。在嵌入式Web Server中,应用程序接口与嵌入式操作系统通信,实现对嵌入系统的配置、监视和控制,是嵌入式Web Server软件系统的核心。常见的应用程序接口模块CGI(Common Gateway Interface)、SSI(Server Side Include)和HCPA(HTML-to-C Preprocessor Approach)等3种形式。

采用本系统应用程序接口模块CGI形式。CGI提供嵌入式Web Server执行外部程序的通道,CGI该程序被编译成可执行文件,并在服务器端运行。嵌入式Web Server根据用户要求调用相应的呼叫CGI程序。并由嵌入式Web Server将CGI将程序获得的动态信息包装到页面,并发送到用户浏览器。

3 传输

3.1 通信原理

在该系统中,基于无线数据传输的数据传输决定了其相对较高的不可靠性。为了可靠的通信,在编程过程中设计了相应的通信协议,并使用和CRC验证数据的纠错。

Web Server基于停止等待协议,数据采集终端的数据传输采用半双工方式(stop and wait)将待传输的数据帧按顺序附加帧号,以保证数据的正常传输。数据采集终端首先处于接收状态,Web Server将控制字(A/D数据采集终端发送采样频率和采样方法后,Web Server转换为接收方式,等待终端发送确认帧。数据采集终端接收控制字CRC如果数据,如果数据正确Web Server发送确认帧,清除数据帧号,开始数据采集和数据传输。反之,则向Web ServerR发送重发请求。

数据开始传输,数据采集终端发送N帧数据,发送完成,转换为接收状态,等待Web Server发送确认帧;Web Server接收数据CRC验证,将帧号与自己的帧号进行比较,数据正确,将自己的帧计数器添加到1,通知数据采集终端发送到第一位N 1帧数据。

3.2 通信协议

PTR2000 无信号时,串口输出随机数据。为了保证无线通信的可靠性,必须定义一个简单的通信协议,包装后传输数据。数据帧格式见图4。

图4 数据帧格式

考虑到无线通信和数传的延迟效应MODEM为了建立正确的接收同步,需要在数据帧头添加5byte 填充比特和同步码。整个数据通信需要三种类型的数据帧,即服务器发送的控制帧、数据终端发送的数据帧和发送的确认帧,包括类型码和数据帧字节数之和的16位数据验证CRC循环校准码。

数据终端发送的数据帧设计为48byte,当采用12位的A/D例如,转换器件AD1674时,每一路占用1674时 bit,循环采集8路模拟信号占用16个字节,因此48yte的数据帧可存储3次循环采集的数据,这样设计的目的是为了提高数据传输的速率。当PRT2000+传输速率为19.3Kbit/s时,采用此通信协议对单路信号进行采集,速率可达4Kbit/s,此系统可用于低速的中。

4 结束语

远程无线数据采集与传输的应用范围非常广,涉及行业有电力、水利、公安、交通、石油、安防和金融等。上述设计实现了基于嵌入式Web Server的无线数据采集,主要用于车辆遥测、远程无线抄表、工业数据、非接触RF智能卡、生物信号采集等低速率远程数据采集系统中。本系统的主要特点在于其服务器的设计基于嵌入式技术与WEB技术,而数据采集部分采用技术。

责任编辑:

标签: 嵌入式传感器节点

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台