<div align=center>云晓旭, 赵春宇, 陈大跃<BR> (上海交通大学信息检测技术与仪器系, 上海 200030)<BR> 摘要:Xport 是Lantronix 公司研制的嵌入式设备服务器,它能使串口嵌入式设备快速、方便地增加联网能力。本文介绍了嵌入式设备服务器Xport 的功能和原理,并给出了基于Xport 的远程室温监测系统的实现方案。<BR> 关键词:嵌入式系统; Xport ; 远程监测; TCP/ IP 中图分类号: TP27415 文献标识码: B 文章编号: 100327241 (2004) 0720028203<BR> The Ap plicatio n of Xp ort in Remot e Temp e rat ureS up e rvisio n S ys t emYUN Xiao - xu ,ZHAO Chun - yu , CHEN Da - yue(Department of Information Measurement Technology andInstruments , Shanghai Jiao Tong University , Shanghai 200030 ,China)Abstract :The XPort embedded device server was developed by Lantronix company. It can make embedded device quickly and easily connect to inter2net . The paper introduces the function and principle of Xport and the design of remote temperature monitoring and controlling system based<BR> on Xport is also given.<BR> Key words :Embedded system; Xport ; Remote monitoring system; TCP/ IP<BR> 1 引言<BR> 随着Internet 技术发展的日益成熟,使得基于分组交换技术的通信性能、通信质量和可靠性得到了稳步提高,借助Internet传送各种测量和控制信息,具有快速、方便、可靠的特点,嵌入式系统与Internet 技术结合实现远程控制,已成为目前嵌入式系统研究的新热点。嵌入式系统与internet 相结合,要求嵌入式设备要能够接入internet ,同时还要能够提供网络服务,实现这些服务的关键是满足TCP/ IP 等网络协议。对TCP/ IP 协议的处理通常有两种方法,一种是采用实时操作系统ROTS ,用软件的方式直接处理TCP/ IP协议;另一种方法是采用固化了的TCP/ IP 协议的硬件芯片通过外部硬件电路处理TCP/ IP 协议。这两种方法要求开发人员对实[/align]时操作系统(RTOS) 和TCP/ IP 协议都要十分熟悉,并且软件的实现往往需要高档的微控制器提供更快的速度,更大的存储量,还要配备专门的接口,因此常常使简洁的嵌入式系统变得非常臃<BR> 肿,同时带来的是开发成本和复杂程度的增加,开发周期的延长。此外,当前大量存在的是用8 和16 位的微控制器开发成的嵌入式系统,若在它们有限的系统资源下加入实时操作系统或固化TCP/ IP 等Internet 协议是比较困难的[5 ] 。如果使用Xport进行系统开发,便可以使这些低档的MCU 系统通过串口快速方便地具有联网功能了。<BR> 2 嵌入式设备服务器Xport [1 ]<BR> 美国Lantronix 公司的Xport 嵌入式设备服务器是一种单芯片、专为面向嵌入式系统而设计的网络服务器。它是一种从串口到以太口(RJ45) 的转换设备,开发人员可以不必考虑复杂的网络协议,也不用对自己已经开发好的系统进行全面改动,只需在原应用系统上增加小段接口程序即可实现上网功能,降低了系统开发的复杂程度,并能大大缩短了开发周期。<BR> 2. 1 嵌入式设备网络服务器Xport 系统结构Xport 为嵌入式系统提供了完整的集成方案,其一端是输出<BR> 为3. 3 伏COMS 电平的高速串口,另一端是传输率为10/ 100Mbps自适应以太网口(RJ45) ;内部集成了可靠成熟的操作系统、嵌入式WEB 服务器、完整的TCP/ IP 协议栈,还具有email 报警功能。<BR> Xport 的系统结构图如图1 所示。Xport 利用其一端的串口与底层MCU 的( I/ O 节点相连) ,上层用另一端的以太网接口RJ45 可直接接入Internet ,可以使串行设备具有联网能力,并允许授权用户在internet 上用浏览器对现场进行远程监控。<BR> 图1 Xport 系统结构原理图<BR> Xport 总体上是基于Lantronix 公司自主设计的16 位DSTni -Lx186 CPU ,该CPU 具有2K字节的ROM大于5K字节的SRAM、Watchdaog 以及UART、SPI、Ethernet 网等外围设备接口。Xport 内部还有512K字节的Flash ROM,用户可以存放按自己用途开发的网页和Java 小程序,也可以用来给系统进行软件升级。为了防止电磁干扰,Xport 内部增加了隔离滤波模块,保证数据安全正确的传输,此外Xport 还具有外部重启动功能。<BR> 2. 2 嵌入式设备网络服务Xport 协议架构<BR> Xport 所采用的实时多任务操作系统SuperTask 以及其所支持的Internet 协议都存放在DSTni - Lx186 CPU 的256K 字节SRAM中。SuperTask 是由Lantronix 公司自主开发的实行操作系<BR> 统,它以MultiTask 为内核开放型的操作系统,易于操作修改和维护,同时SuperTask 具有稳定性好,具有远程维护和远程监视的能力和优越的处理性能等特点,加强了网络互联通信、协议和管理等方面的功能。Xport 具有比较完备的网络协议栈,其结构如图2 所示:图2 Xport 的TCP/ IP 协议栈结构<BR> 这些协议按照分层协议栈的方式精心组织,应用层有SN2MP、SMTP、Telnet 、HTTP 协议。HTTP 协议用以实现和浏览器通讯提供各种类型资源,如HTML、图片等;SMTP 协议实现简单邮件传输,用来发送E - mail 告警信息。传输层有TCP、UDP 两种协议可选择,其中TCP 是面向连接的传输协议,它支持出错重传机<BR> 制,为用户提供可靠的数据流,但实时性较差,可以用于对可靠性要求较严格的文件传输,而UDP 是面向无连接的传输协议,它不保证数据传输100 %可靠,但提供了很高的实时性,用户可根据自己的需要选择其一。还有网络层的IP、ICMP 协议通过数据链路层和物理层的Ethernet 进行Internet 数据交互[2 ] 。<BR> 2. 3 Xport 参数设置及地址分配<BR> 每个Xport 都有一个唯一的MAC 地址,接入网络之前必须根据MAC 地址给它分配有效的IP 地址,并且对高速串口所使用的协议、握手信号、E - mail 触发方式等参数进行设置。所有这些参数都可以通过Xport Installer 软件调用内嵌参数网页进行简单直观设置, 其中高速串口支持RS232 协议, 波特率有4800bps、9600bps、19200bps 等11 种可选,其他参数如数据位、奇偶校验位、停止位,都可以在此设置。Xport 还有一个很实用的功能,就是Email 告警,当监控对象发生异常时Xport 就会发E2mail 给主机监控页面,以便管理人员能及时采取措施。Email 触发条件有两种选择,可根据应用任选其一:第一种是当串口收到特定的字符时触发;第二种是当Xport 的三个可编程的引脚电平满足所设定的条件时即可触发。<BR> 3 远程室温监测系统的构成<BR> 远程监测的实质是将前端传感设备信号转化符合TCP/ IP协议的网络信号,使用户通过局域网或Internet 端就能访问到监测数据,并把终端的调节控制命令转化程MCU 所能接受的串口数据,再由MCU 控制执行器产生相应动作从而达到调节控制的目的。在整个系统的构建中按照监测功能和监测参数页面均“分散化”的设计思想,监测系统采用基于嵌入式设备服务器的B/ S系统结构[6 ] ,系统的构成如图3 所示。整个系统分为三层:管理层、中间层和设备层。其中管理层负责整个系统温度历史数据的收集、显示,调节系统监测参数,发送调节控制命令,这些功能由管理层中的数据库服务器和Web 服务器来实现。Web 服务器用来生成整个监控系统页面,并通过与Xport 交互来显示监测到的数据,同时向各监测点发送各种调节控制命令,它相当于一<BR> 个门户站点,远程授权用户可以通过internet 对其进行访问。数据库服务器和WEB 服务器在逻辑上是相互独立的,它们可以存在于同一台机器上,也可以存在于不同机器上。由于它们之间的这种相互独立,一些高级的应用就可以运行而不会影响系统的性能。<BR> 中间层实际上成为管理层与设备层之间的一个连接,它主要作用是协议转换和数据传递,设备层是由温度传感器、执行器以及微控制器(MCU) 组成的底层数据采集控制模块。采样获得的数据由MCU 判断,一旦所测的数据超出安全范围,MCU 立刻触发Xport 的Email 告警功能,通知管理层采取措施。如果在安全范围内,数据则经串口传给Xport ,由嵌入到Xport 中的Java 小程序来访问,通过Socket 连接传到管理层并在监测页面上显示。由管理层通过监测页面发出的调节控制命令也通过Socket 连接传给Xport ,MCU 接到串口发来的数据后控制执行器产生相应的动作,对室温进行调控。<BR> 图3 远程室温监测系统结构图<BR> 这种系统结构有以下优点:<BR> 第一, 采用监测功能与监测参数页面均“分散化”的设计思想构建系统,使整个系统对管理层的依赖性大大降低,提高了系统的安全性和稳定性。<BR> 第二, 在已有的应用系统基础上只需增加一段与Xport 通讯的接口程序,其他无需作大的改动便可以使原系统接入Inter2net ,实现远程网络化监测,大大提高了系统的扩展性。<BR> 第三, 这种结构对MCU 的要求较低,无论是运行速度、硬件配置和存储容量等方面均无非常特殊的要求,降低了系统的开发成本。<BR> 第四, 系统在统一了各层接口的情况下,管理层、中间层和<BR> 设备层三层可以同时进行开发,可以缩短系统的开发周期。<BR> 4 管理层、中间层通讯软件实现<BR> 整个系统基于嵌入式设备服务器的B/ S 系统结构,并且要求监测主页面要实时动态地显示不同监测点的数据并要和Xport 进行动态交互。在软件开发方面,Java 语言具有面向对象与操作平台无关、多线程执行的特点,此外它还具有扩展HTML语言(超文本标记语言) 的功能,这些特点能很好的满足远程室温监测系统的要求[3 ] 。远程室温监测系统管理层与中间层通信的软件结构如图4 所示。本系统中间层的Xport 与管理层的通信软件主要由Xport 初始化设置、数据接受、数据发送、数据处理等模块组成。在程序中加入基于TCP/ IP 协议的用户自定义数据通信协议,这样使终端客户机能与Xport 服务器进行自定义的通信,如发送升温、降温命令、采集参数初始命令等。<BR> 图4 中间层与管理层通信的软件结构图<BR> Xport 初始化完成后,授权用户通过浏览器向WEB 服务器发出HTTP 请求,然后Java 小程序随同HTML 文件下载到客户端,并由客户端的Java 虚拟机来执行,同时Java 小程序和Xport建立Socket 连接,该连接把采集到的数据传给WEB 服务器,同时还传给数据库服务器[4 ] 。在整体数据流动的过程中Xport 起到了从以太网数据流到SPI 数据流的转换作用,MCU 从串口发来的数据存在数据缓冲区,“接受数据”程序一旦查询到缓冲区<BR> 有新的数据传来,便将数据交给“数据处理”程序处理。“数据处理”程序主要是对此数据根据所选的协议帧格式进行打包处理,数据打包后上传到管理层显示。如果室温需要调节时,管理员可通过监测页面下达的调节控制命令,这些命令包经“数据处理”程序对其进行解析,最终由“发送数据”程序传递给MCU 来执行。<BR> 5 结束语<BR> 通过浏览器对现场的环境进行监测是将Internet 引入监测领域的一种新技术。本文所介绍的基于Xport 的网络化远程室温监测方案正是应用这一嵌入式Internet 新技术来构建的,该系统硬软件设计简单、灵活性好、使用方便,可根据需要应用到其他的监测领域,具有一定的推广价值。<BR> 6 参考文献:<BR> [1 ] Lantronix corporation. Xport user manual [ EB/ OL ] . www. lantronix.com . 2003<BR> [2 ] [美]Douglas E. Comer 著林瑶等译. 用TCP/ IP 进行网络互联 . 北京:电子工业出版社, 1998<BR> [3 ] 王克宏主编, 徐剑军, 徐鹏编著. Java 嵌入式技术[M] . 北京:清华大学出版社,1998<BR> [4 ] 廖卫东编著. Java 程序设计[M] . 北京:机械工业出版社,1997<BR> [5 ] 王怀宜编著. 单片机原理及其嵌入式应用教程[M] . 北京:北京希望电子出版社, 2002<BR> [6 ] JOEL P. KANTER 编著, 李杰亮李志译. 全面理解瘦客户/ 服务器计算技术[M] . 北京: 清华大学出版社,1999<BR> 作者简介:云晓旭(1978 - ) ,男,上海交通大学信息检测技术与仪器系硕士研<BR> 究生, 主要从事现场总线和嵌入式设备网络化技术研究。</div></P><P> ps:如果有任何疑问或者需要,请和我联系:020-87579017 联系人:李霖
|