嵌入式数字轨道地图数据管理平台的研究与设计

2010-05-11 13:25陈德旺魏天磊
铁路计算机应用 2010年7期
关键词:经纬度内核数据管理

陈德旺,魏天磊,侯 赞

(北京交通大学 轨道交通控制与安全国家重点实验室,北京 100044)

目前,很多国家在研究数字轨道地图技术,欧洲一些国家以及美国已经在应用GPS技术生成数字轨道地图数据库方面进行了一系列研究,并根据各个地区的不同情况提出了不同的数字轨道地图的设计方法[1~2]。

我国青藏铁路采用的ITCS列车控制系统包括车载地图数据库,该数据库含有线路描述数据、列车运行数据和通信数据等内容,利用数据库中保存的这些数据,产生虚拟信号机,减少地面设备,实现车站无人值守[4]。

在轨道信息管理平台方面,数字地图可以通过多种平台实现。嵌入式系统具有实时性和准确性的特点,是列车控制系统中设备的重要实现平台。将数字地图的大量轨道位置信息存储在嵌入式系统中,利用嵌入式数据库进行管理,相比于其他实现方式,有体积小、重量轻、成本低和稳定性好等优点,可以实时有效地提供列车定位信息。因此以嵌入式系统作为数字轨道地图的实现平台,将嵌入式技术和应用于轨道交通的数字地图技术进行结合是基于通信的列车控制系统(CBTC)发展的趋势,嵌入式技术可以为CBTC提供良好的技术支持。

1 数字轨道地图的设计与生成

1.1 数字轨道地图设计

数字轨道地图的内容包括3个部分:轨道线路数据、铁路专用数据和地形环境数据。而数字轨道地图的生成则分为5个步骤:线路测绘、数据处理、数据库创建、编译、数据验证[4]。如图1。

图1 数字轨道地图生成流程

1.2 轨道位置信息数据的测量及处理

本文利用NovAtel卫星定位接收机测量弯道数据。接收机通过设置可以得到NMEA0183的定位数据,在众多格式的信息中,通过对GPGGA格式的信息进行截取,就可以获得经纬度等信息。以在北京交通大学主体育场内通过NovAtel卫星定位接收机接收到一些数据为例,在这些数据中,要提取的就是数据中间的纬度和经度信息,并且要通过数据处理把这些经纬度信息转换为平面坐标,以便生成数字轨道地图。

经纬度信息提取出来之后,存在经纬度数据格式问题,有度、度分、度秒3种,本实验获取的GPGGA数据中经纬度属于[度.分.分]格式。如“39度57.0811分”。将本实验中数据转换为[度.度]格式。转换完毕后,得到经纬度纯度数数据。表1为前15个数据点经纬度(纯度数)。

表1 前15个数据点经纬度(纯度数)

数字轨道地图的生成依赖于轨道位置信息数据,通过卫星定位测绘技术获取。而GPS定位数据是基于WGS-84大地坐标系的数据[5]。要把地球表面上的物体和现象绘制到平面图纸上,就必须解决球面与平面之间的矛盾。本文数据处理采用高斯—克吕格投影。原理是将依椭圆柱横切于地球托球体上,以椭圆柱面与椭球表面的切线为中心经线,然后根据一定的约束条件,将中央经线两侧规定范围内的点投影到椭圆柱面上,从而得到点的高斯投影,如图2。

设投影带的主子午线经度为L0,地表P点的经纬度为(L, B),其高斯平面坐标为(x, y),则有高斯投影正算公式如下:

,a和b分别为地球椭球体的长短半轴。

公式(3)中,X为子午线弧长,公式中的参数值如下:

c0=636 744 9.145 823 4,c1=320 09.818 530 6,c2=133.959 889 7,c3=0.697 548 3,c4=0.003 934 1。

利用高斯投影计算公式,在MATLAB中编程进行数据转换,结果如表2。

表2 数据转换结果

经过MATLAB下编程的转换,获得了全部轨道位置信息数据的平面坐标。并用MATLAB做图,将轨道位置信息数据依次相连,即可获得轨道线路的数字轨道地图。

2 嵌入式数字轨道地图数据管理平台的设计

生成数字轨道地图后,地图的轨道位置信息数据需要合适的平台进行管理。数据管理软硬件平台整体架构如图3。

2.1 硬件架构

图3 软硬件平台架构

计算机作为开发平台和主机,通过串口与嵌入式开发平台S3C44B0的串口相连,将交叉编译得到的操作系统和数据库系统传送给嵌入式系统。嵌入式系统作为终端接收主机PC端传送过来的数据并进行控制,通过串口给予主机计算机反馈,在主机PC端通过超级终端可以进行监测和控制。

2.2 软件平台

PC端建立Linux的交叉编译环境cygw in,在Linux环境下将嵌入式实时操作系统uClinux和嵌入式数据库SQLite进行编译,生成嵌入式系统可以识别的二进制文件(镜像文件),利用嵌入式系统的armboot将其载入嵌入式开发板运行。

3 嵌入式操作系统μClinux的移植

μClinux是一款免费开源的操作系统,适用于多种嵌入式系统平台。

3.1 下载μClinux源码

到http://www.μClinux.org/网站下载μClinux源码。本文用的是μClinux20031103.tgz版本,将获得的源码压缩包μClinux20031103.tgz解压,并在目录下生成μClinux-dist的文件夹,这个文件夹就是要进行编译的μClinux操作系统文件夹。

3.2 编译操作系统内核

生成操作系统文件后,进行操作系统内核的编译。内核是操作系统的内部核心程序,它向外部提供对计算机设备的核心管理调用。而编译内核的目的主要是改变内核的默认选项,编译内核有3个指令可以使用,可以用其中的任意一个进行编译。3个指令如下:

(1)#make con fig(基于文本的最为传统的配置界面,不推荐使用)。

(2)#make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)。

(3)#make xconfig(基于图形窗口模式的配置界面,Xw indow下推荐使用)。

本文采用make menuconfig命令进行编译。当内核的编译工作完成之后,会在/μClinux-dist/images目录下看到3个文件:linux-bootram.bin,linuxbootrom.bin和rom fs.img。linux-bootram.bin和linux-bootrom.bin是要得到的可以烧写在嵌入式系统中运行的文件,linux-bootram.bin可以烧写到嵌入式系统的SDRAM里运行,linux-bootrom.bin可以烧写在flash里运行。经过以上步骤,就获得了编译好的镜像文件并且将其烧写到嵌入式系统里运行。

当命令行出现之后,操作系统已经启动。在命令行中,可以用熟悉的ls等命令查看嵌入式系统中μClinux的情况并进行操作。这样,操作系统μClinux就在S3C44B0的嵌入式平台上移植完毕。

4 嵌入式数据库SQLite的移植

本文使用的是SQLite-2.8.15.tar.gz版本,到Linux下的vi编辑器来对μClinux和SQLite进行编辑,编辑以下3个文件对内核设置进行修改:μ Cli-nux-dist/user/Makefile ;μClinux-dist/config/Configure.help; μClinux-dist/config/config.in。

在对SQLite的修改中,修改或添加以下4个文件,可以完成SQLite在μClinux下的编译:

SQLite/main.mk (修改);

SQLite/Makefile (添加);

SQLite/src/os.c (修改);

SQLite/src/shell.c (修改)。

修改的具体步骤本文不再赘述,通过对SQLite数据库匹配于嵌入式系统S3C44B0和操作系统μClinux的修改,即可进行编译。编译过程中,在make menuconfig的user app lication部分可以看到μClinux内核中刚添加的Database→菜单,如图4,进入并选择SQLite,保存退出后按原先的步骤重新编译内核。

对SQLite的修改完成后,uClinux中已经加入了嵌入式数据库SQLite,再次编译,在μClinuxdist/images下面就有编译生成的rom fs文件系统了,这个就是需要的包含有SQLite的rom fs,可以烧写在嵌入式系统上运行。在板子上也可以对数据库进行“select * from”操作。经过如上过程,即完成了SQLite的移植[7]。通过以上编译和移植的过程,实现了ARM 7+μClinux+SQLite的嵌入式数字轨道地图数据管理平台。

5 结束语

本论文分析数字轨道地图的作用和组成部分,给出GPS数据的测量和处理方法,并实现了数字轨道地图的嵌入式数据管理平台的软硬件设计。通过嵌入式操作系统μC linux和嵌入式数据库SQLite在基于ARM 7的嵌入式开发板S3C44B0上的移植,完成软硬件平台搭建,利用ARM 7+μClinux+SQLite的组合建立数字轨道地图的嵌入式数据管理平台,为数字轨道地图的实现提供了重要的基础。嵌入式数字轨道地图数据管理平台体积小、成本低、运行速度快,具有重要应用价值。在此平台基础上,可为深入开展精确而且可靠的列车卫星定位算法等研究提供有力的技术支持。

[1]D J Horgan. Verification and validation: the West Coast Mainline railway upgrade programme[J]. Journal of Rail and Rapid Transit,2005(1):11-20.

[2]胡 浪. LOCOPROL:低运量线路的低成本高效信号系统方案[J]. 世界轨道交通,2006(7):48-49.

[3]李 凯. 青藏铁路ITCS信号控制系统方案[J]. 中国铁路,2005(7):31-36.

[4]刘大杰,施一民. 全球定位系统的原理与数据处理[M]. 上海:同济大学出版社,1998,8.

[5]杨国林. GPS 技术在导航电子地图中的应用研究[J]. 高校理科研究,2006(3):69-70.

[6]周 媛. 基于S3C2510A和uCl inux的嵌入式系统研究与开发[D]. 北京:北京交通大学,2007,6.

[7]胡菲菲. SQLite在嵌入式电子地图中的应用[J]. 工程地质计算机应用,2008(2):31-36.

猜你喜欢
经纬度内核数据管理
多内核操作系统综述①
企业级BOM数据管理概要
定制化汽车制造的数据管理分析
海洋环境数据管理优化与实践
强化『高新』内核 打造农业『硅谷』
CTCS-2级报文数据管理需求分析和实现
基于嵌入式Linux内核的自恢复设计
Linux内核mmap保护机制研究
基于经纬度范围的多点任务打包算法
自制中学实验操作型经纬测量仪