基于 TCP/IP 的串口数据流传输的实现
2004-07-07 毛期俭
[摘要] 现有的许多具有串口管理功能的设备不能进行联网的管理和数据存取,我们可以利用先进的 TCP/IP
技术和管理方式对这些设备进行技术改造。本文主要对基于 TCP/IP 的串口数据流做了阐述,并提出了基于
硬件与软件相结合实现的串口服务器的系统整体解决方案,对硬件系统的总体、组成框架和应用架构做了
阐述。
随着 Internet 的广泛普及,“让全部设备连接网络”已经成为全世界企业的共识。为了能跟上网络自动化的潮
流,不至于失去竞争优势,必须建立高品位的数据采集、生产监控、即时成本管理的联网系统。利用基于
TCP/IP 的串口数据流传输的实现来控制管理的设备硬件,无需投资大量的人力、物力来进行管理、更换或
者升级。
串口服务器就使得基于 TCP/IP 的串口数据流传输成为了可能,它能将多个串口设备连接并能将串口数据流
进行选择和处理,把现有的 RS 232 接口的数据转化成 IP 端口的数据,然后进行 IP 化的管理,IP 化的数据
存取,这样就能将传统的串行数据送上流行的 IP 通道,而无需过早淘汰原有的设备,从而提高了现有设备
的利用率,节约了投资,还可在既有的网络基础上简化布线复杂度。串口服务器完成的是一个面向连接的 RS
232 链路和面向无连接以太网之间的通信数据的存储控制,系统对各种数据进行处理,处理来自串口设备
的串口数据流,并进行格式转换,使之成为可以在以太网中传播的数据帧;对来自以太网的数据帧进行判
断,并转换成串行数据送达响应的串口设备。
1、 硬件系统
硬件系统是实现整个系统功能的基础,是整个设计实现的关键。
整个串口服务器的关键在于串口数据包与 TCP/IP 数据报之间的转换以及双方数据因为速率不同而存在的
速率匹配问题,在对串口服务器的实现过程中,也必须着重考虑所做的设计和所选择的器件是否能够完成
这些功能。
1.1 硬件系统组成模块
在制定设计方案和选定器件时遇到的技术难点是如何利用处理器对串口数据信息进行 TCP/IP 协议处理,使
之变成可以在互联网上传输的 IP 数据包。目前解决这个问题很多时候采用 32 位 MCU + RTOS 方案,这种
方案是采用 32 位高档单片机,在 RTOS(实时多任务操作系统)的平台上进行软件开发,在嵌入式系统中
实现 TCP/IP 的协议处理。它的缺点是:单片机价格较高,开发周期较长;需要购买昂贵的 RTOS 开发软件,
对开发人员的开发能力要求较高。
借鉴上述方案的优缺点,我们决定把串口服务器的硬件部分分为几个模块设计,这就是主处理模块、串口
数据处理模块和以太网接口及控制模块等几大模块来共同完成串口服务器的功能。
在器件的选择上,选用 Intel 公司的 801086 芯片作为主处理模块的处理器芯片,它是一种非常适合于嵌入
式应用的高性能、高集成度的 16 位微处理器,功耗低。由于考虑到串口数据速率较低而以太网的数据传输