1 硬件结构
本系统选用SAMSUNG 公司的S3C44B0X 处理器,该处理器是一款ARM7 系列的处理器,工作频率66MHz,片上集成8KB cache、存储控制器、LCD控制器、4通道DMA、2通道UART 、1 通道I 2C、1 通道I2S、5 通道PWM 定时器、1 通道内部定时器、看门狗、8 通道10 位ADC、71 个通用IO 口(复用)、8 通道外中断源、RTC 和片上时钟产生器。重要的是,这块芯片含有非常丰富的片上资源,几乎所有常用的芯片级总线结构都有对应的硬件控制器,在做外围扩展时非常方便;66MHz 的工作主频对应的信号上升时间在2ns 左右,对应的集总模型尺寸分界点为60cm,而实际设计中最大板子的尺寸为17cm×11cm, 因此不用过多的考虑分布效应的影响,减少了设计的难度。图1 是检验检疫监管信息系统的总体硬件结构图。
其中,FLASH采用的是SST 公司的SST27SF010 片子,因为系统的需要并不是很高,1M对于系统与Boot Loader 的装载已经能完全能满足需要了。系统初始化及Boot Loader 存储在FLASH 中,系统开机从0x000000 地址开始执行,动态存储设备选用的是现代公司的57V 系列的HY57V641620。考虑到系统不需要很大动态存储空间,所以选用的是8M 大小的片子。本系统USB 模块采用SL811HS 芯片,它有两种工作模式HOST/SLAVE。模式的改变是由该芯片27 脚M/S 的电平值决定,可以通过软件设置来改变。当置M/S 脚为低电平时,它是HOST 模式,可以直接控制打印机;当置M/S 脚为高电平时,它是SLAVE 模式,可以下载PC 的最新资料,同时可对充电电池充电。系统通过USB 接口连接RFID 读写器模块,读写器模块选用TRF7960 型号的USB 接口RFID 读写器模块,模块的参数如表1 所示,通过读写模块,实现对电子标签信息的读写功能,同时配置GRPS 或CDMA 模块,可以将有变化的数据及时上传到服务器中,确保RFID 标签的数据与数据库服务器中的数据同步更新。
2 软件平台
2.1 嵌入式操作系统uClinux
uClinux 的系统构架与标准Linux 的架构是完全一致的,它集成了标准Linux 操作系统的稳定性、强大网络功能和出色的文件系统等主要优点。但是由于没有MMU,无法使用处理器的虚拟内存管理技术,因此,uClinux 采用实存储器管理策略,通过地址总线对物理内存进行直接访问。
2.2 µCLinux 内核功能设计
GPRS/CDMA 的网络连接是无线数据终端的基础功能,它是通过PPP(点对点协定)协议来完成的。PPP 是在串行连接的数据链路实现IP 以及其他网络协议的一种机制。嵌入式Linux 的网络体系结构继承了Linux 网络系统具有稳定、高效和功能齐全的优点,同时按照应用的需要进行了适当的移植和配置就能满足要求,在完成相关内核修改后,需要重新编译内核。为实现联网功能,需要增加µCLinux 内核的对NAT 和PPP 的支持,同时需要编写联网拨号脚本文件,调试GPRS/CDMA 联网, 完成系统利用成熟GPRS/CDMA 技术的网络连接。
3 系统实现
通过对完善增加ARM-Linux 内核的功能后,ARM-Linux 内核已经具有了PPP 和NAT 功能, 同时通过编写联网拨号脚本,完成与GPRS/CDMA 网络连接之后,需要根据设备的具体应用需求开发相关的应用程序。
3.1 NAT 配置
嵌入式Linux 是一种开发源代码、软实时、多任务的嵌入式操作系统,通常它是在标准的Linux 的基础上针对嵌入式系统进行裁减和优化后形成的,而且裁减和优化后的Linux 体积更小,性能更加稳定,因此在许多实际应用中都使用网络地址转化技术(NAT)这种最为简单、常用的方式。
NAT 技术本质上是通过修改IP 包的源地址或目的地址来实现。如果一个节点执行了NAT, 它会修改通过它转发的IP 包的源地址或者目的地址,并且节点会记住它是怎样修改了这个包,因此当相应的应答包从另一个方向到达时,它就知道如何反向修改应答包。其中,修改IP 包的源地址常被称为IP 伪装技术,当内部网络节点作为客户端,需要发起对Internet 的访问时,就可以采用这种方式。
3.2 系统结构设计
本系统组成简单,无需复杂布线,主要有系统服务器,客户端管理,无线手持终端PDA,放行监控闸口等组成。系统结构网络图如图2 所示。
系统实现的整个业务流程如图3 所示,对于合格放行的出境动物,依据放行数量集中制作电子耳标发放给企业并实施耳标的安装(为方便对放行监控闸口对数据的采集,规定所有电子耳标必须安装在动物的右耳朵上),加施完毕后须用电子标签手持设备扫描佩戴的电子标签,以确保电子标签加施操作正确无误。如果在加施过程中电子耳标发生损坏,则需要通过电子耳标手持读写器重新生成电子耳标,以替换损坏耳标,同时将新耳标的有关信息通过自带的无线网络传回监管信息数据库。佩戴电子耳标的出境动物在准备装车出场时,必须通过供港澳动物电子耳标监装专用通道,由预安装好的固定读卡器读取放行数据,并通过网络将有关数据传回到监管信息网络系统,进行自动核销,并按有关数据进行统计汇总,及时了解有关放行情况,实现远程监装。手持设备可以在各个环节对电子耳标数据进行抽查检验,如遇到所戴标签与放行数据库中数据不相符时,及时追查,确保检疫合格的产品出口。
3.3 软件设计
PDA 软件平台由以下部分组成:系统引导程序、嵌入式操作系统内核、文件系统。系统引导程序通常也称为Boot Loader, 代码量虽少,但是作用非常大,负责系统初始化工作,然后将系统控制权交给操作系统。嵌入式操作系统内核是嵌入式系统加电运行后的管理平台,负责实时性任务和多任务的管理。S3c44b0x 是一款没有MMU 的处理器,因此采用μCLinux 作为本系统的操作系统内核。μCLinux是Linux 的一个分支,专为无MMU 的处理器设计,它继承了Linux 强大的网络功能和多任务管理功能,并对内存管理和进程管理进行了改写,满足无MMU 处理器的开发要求。文件系统是嵌入式系统软件平台占用存储量最大的一部分,也是与用户开发最相关的一部分。它存储了系统配置文件、系统程序、用户应用程序和必需的驱动程序。
3.4 系统管理软件
系统管理软件由系统管理、电子标签管理、放行监控统计三大子系统组成。其中系统管理是对系统平台运行环境的设置,主要有人员、权限的设定;电子标签管理是对电子标签的数据生成、修改,以及对应数据的变更的管理,接受远程通过GPRS/CDMA 无线网络通信的数据更新和管理,并生成合格放行数据供放行监控统计系统使用。放行监控统计子系统是对通过从放行监控闸口采集的数据与监管信息系统中的放行数据进行对碰,并将对碰结果进行分类,供分析使用,当接收到未经放行的数据时会自动报警,提示相关人员该次电子监装需人工干预。
4 结束语
本系统是一个典型的嵌入式系统应用例子,在ARM7 的嵌入式Linux 平台上,详细介绍了基于RFID 的监管信息系统的实现,利用嵌入式Linux 系统下的网络通信设计, 通过对Linux 的内核进行了修改和重新编译后,增加了相应的NAT 和PPP 功能,实现远程数据交换。本文作者创新点是充分利用了ARM 丰富的硬件资源简化了系统结构,并通过对嵌入式Linux 系统核心编译增加对NAT 和PPP 的支持,并利用先进RFID 技术实现远程电子标签的管理,整个系统的结构简化,实现简单,在其他嵌入式设备上的无线应用方面有一定的应用价值和指导意义。