传统的信息交互系统大多基于PC-Internet平台,采用Web方式来完成信息交互的功能。但由于PC机体积较大、成本偏高,因此采用PC机作为信息交互系统的终端并不能很好地满足便携性和性价比的要求。而嵌入式系统与普通的PC机系统相比,具有体积小、成本低、软硬件均可根据不同的应用进行定制等优点。随着嵌入式技术的飞速发展,将嵌入式设备应用于信息交互系统的终端已成为一种趋势。本文提出了一种基于嵌入式信息终端的信息交互系统设计方案,并在此方案基础上实现了1个多功能信息交互系统。
1 系统功能设计
本系统采用Client-Server结构,包含两大功能模块:嵌入式信息终端模块和PC服务器模块。信息终端以基于XScale PXA270处理器的Liod平台为基础,移植了Linux操作系统和Qtopia图形界面;PC服务器使用Windows操作系统,两者通过802.11无线局域网连接。系统结构如图1所示。
其中,嵌入式信息终端主要作为信息交互系统的信息发布和接收终端使用。用户可以通过嵌入式浏览器浏览以Web形式发布在网络上的信息资源,同时也能通过触摸屏来获取更多需要的信息。此外,本系统还根据不同领域用户的需要设计并扩展了外接无线局域网卡、GSM通信模块、VGA视频显示模块、环境参数采集模块、安防监控报警模块和无线射频识别模块。PC服务器作为信息交互系统的后台管理模块主要负责对信息进行数据处理。PC服务器的数据库存储着供用户交互的信息,同时也管理着信息终端上由用户发布的信息,通过设计服务程序,为信息终端提供信息发布服务和信息管理服务。
2 系统硬件实现
嵌入式信息终端硬件主要由基于XScale PXA270的Liod开发板和各硬件扩展模块组成。
2.1 Liod开发板特点
Liod开发板以Intel XScale PXA270微处理器为核心,其主频高达520 MHz,支持Intel Wireless MMX 及Speed Step技术,核心板加底板设计,提供了完善的功能接口,包括:IDE接口(传输速率>30 Mb/s)、32 MB Nand Flash、64 MB SDRAM、VGA out接口(但未焊接VGA芯片)、锂电池接口、图形加速器2 700 G支持等。同时提供了160×2 pin核心板扩展接口及110 pin底板扩展接口,便于在Liod平台基础上进行二次开发。
2.2 GSM扩展模块
为了实现用户手机与信息终端进行信息交互,系统需要在Liod平台的串口上扩展GSM通信模块来实现手机短信方式的信息交互。目前国内使用较多的GSM模块有Falcom的A2D系列、西门子的TC35系列、爱立信的DM 10/DM 20系列等,其中西门子的TC35系列性价比高、稳定性好,故选用西门子TC35i进行GSM扩展模块设计。
TC35i共有40个引脚,通过ZIF连接器分别与电源电路、启动与关机电路、数据通信电路、语音通信电路、SIM卡电路、指示灯电路等连接。在本系统中为减小体积,直接采用主板供电的方式,在1-10脚增设了稳压整流电路,省去了电池和充电电路。启动电路则由自动和手动上电复位电路组成。数据通信电路主要完成短信收发、与平台通信、软件流控制等功能,其数据接口采用串行异步收发,符合RS-232接口电路标准,工作在CMOS电平(2.65 V)下。本模块以MAXIM公司的MAX232CPE芯片为核心,实现了电平转换及串口通信功能,并注意了它的电磁兼容(EMC)设计。其电路原理框图如图2所示。
2.3 综合信息采集模块
本系统采用C8051F007单片机进行该模块的设计。C8051F007有8个I/O口,均容许5 V电压,并可通过配置交叉开关得到UART,I2C/SMBus、SPI等总线,每种串行总线都完全用硬件实现,都能向CIP-51产生中断,因此很少需要CPU的干预。该模块可扩展多个烟感探头和双鉴探头,可将传感器输出的开关信号作上拉和保护处理送入I/O。由于该模块要与Liod平台和无线射频识别模块进行通信,因此还使用了UART串口和I2C/SMBus总线。通过对交叉开关进行配置,充分利用了所有的端口。C8051F007有4路12位的 ADC,模块扩展的温湿度传感器所输出的模拟信号经信号调理和保护电路后输入其端口。本模块扩展了温湿度传感器、烟感探头、双鉴探头和无线射频识别模块。其电路原理框图如图3所示。
2.4 无线射频识别模块
在设计无线射频识别模块时,需要考虑该模块的工作频率、作用距离、安全要求和存储容量。符合ISO14443协议的射频系统是应用比较多的一种。CRX14就是符合ISO14443标准的专用于无线射频技术的低成本、单片射频处理芯片。它发送的数据用ASK方式调制,接收到的数据则是将终端负载变量信号解调所得。CRX14与终端间的数据传输速率为106 kb/s。本模块即采用CRX14实现了1个较为完整的低成本射频读卡器方案。
从CRX14的RFOUT端发出的信号,经过以PZT2222为核心的高频放大电路,再通过精心设计的阻容匹配网络,传到射频天线发射到有效区域。发射出去的射频信号,经含有射频标签的卡片后返回,同样被天线接收,并送至接收电路的检波电路,再经过滞环比较器,最后送入RFIN端口,同时将数据存入内部寄存器,供I2C总线读取。其硬件设计难点是天线的设计和调试,及阻容匹配网络的计算。PCB设计上也要十分注意EMC设计。
3 系统软件实现
3.1 系统软件选型
为了便于系统管理员对整个系统进行快捷的信息管理,系统服务器端硬件选择普通的PC机,使用Windows操作系统,并选用SQL Server 2000作为整个服务器端的后台数据库。
信息终端的软件主要包括嵌入式操作系统、图形界面和嵌入式数据库。嵌入式操作系统是一种支持嵌入式系统应用的操作系统,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议等。嵌入式操作系统占用空间小,其特点主要体现在可裁剪性、实时性和可靠性等方面。本系统信息终端选用Linux操作系统、Qtopia图形界面和SQLite嵌入式数据库。
3.2 服务器端软件设计
服务器端软件开发采用Visual C#.net 2005,数据库采用SQL Server 2000。服务器端软件主要是为Web信息发布页面提供显示数据,并对信息进行管理。围绕服务器端的主要功能,还需要具体设计和实现以下2个辅助程序模块:
(1)SQL Server 2000数据表结构
标准数据库SQL Server 2000安装在PC服务器上,为信息浏览时的网站页面提供显示数据,并接受数据库管理客户端对数据的输入、修改、删除等管理。
(2)数据库管理客户端
数据库管理客户端为系统管理员提供了界面友好的数据库管理界面,协助管理员管理SQL Server 2000和扩展的嵌入式数据库SQLite,本设计编写了数据库管理客户端应用程序,系统管理员可通过管理客户端管理数据,同时为信息发布的Web页面提供显示数据。该程序的实现主要包括3个方面:数据的输入、数据库操作的实现、2个数据库的协调同步。
3.3 信息终端软件设计
信息终端选用Linux操作系统,其应用软件设计主要围绕GSM短信交互功能展开,同时实现了各扩展功能参数在终端网页上特定区域内显示的功能。其主要程序模块分别为:
(1)扩展SQLite数据库
本系统将轻型开源数据库SQLite 3.5.5移植到Liod开发板上,并为其设定网络数据库操作协议,将SQLite扩展成为单连接的异步通讯网络数据库。本数据库存储的数据用于短信交互,它为向系统发送短信查询详细浏览信息的用户提供数据,并接受数据库管理客户端对数据的管理。
(2)终端信息浏览模块
该系统实现在信息终端上显示PC服务器上发布的Web页面。在Liod平台上移植Linux操作系统和Qtopia图形界面后,使用 Konqueror浏览器浏览服务器上发布的Web页面。Linux的移植主要包括:BootLoader、Linux内核和嵌入式文件系统。Linux 内核使用Linux-2.4.21,文件系统包括基本文件系统和Qtopia。
(3)手机短信交互模块
该模块主要实现用户通过手机短信方式与信息终端进行信息交互。系统通过TC35i实现短信收发后,对用户短信进行解析,并查询SQLite数据库中与用户短信匹配的信息,再以短信的形式回复用户。也可将短信上传的信息发送至PC数据库,更新信息发布页面。
3.4 系统软件流程
本文设计并实现了一个嵌入式多功能信息交互系统。在实现了动态信息发布和信息交互这两个主要功能的基础上,根据该系统应用的不同场合扩展了环境参数采集、安防监控报警、无线射频识别和电视信号接收等功能,为不同领域用户的使用提供了方便。