历史上的今天
返回首页

历史上的今天

今天是:2025年02月17日(星期一)

正在发生

2018年02月17日 | 基于Linux和ARM9的物流信息化终端平台上对终端定位功能实现

2018-02-17 来源:eefocus

  前 言

  物流的定位方案与技术的选择对提高现代物流配送管理效率,减少运营成本具有重要的影响。物流终端定位要求较高的定位精度,能提供全天候连续不间断的定位信息支持,能满足复杂地形条件的定位需求。

 

  本文针对当前物流行业终端定位功能的需求进行分析,针对当前定位技术现状,提出相适应的物流终端定位功能实现方案,并在基于嵌入式Linux和ARM9硬件核心的物流信息化终端平台上对终端定位功能进行了初步的实现。

  系统实现方案

  移动定位技术的现状分析目前,移动定位技术已经非常成熟,较广的应用主要可以分为两大类,一类是GPS等利用卫星进行后方交汇的定位技术;另一类是利用移动通信网技术提供位置服务的定位技术。常用的有:基于Cell-ID的定位技术;基于AFLT(Advanced Forward Link TrilateratiON)的定位技术;GPS定位技术;GPS辅助定位技术(A-GPS)等。

  GPS是当前在物流信息化中研究最广泛的定位技术之一,但是,当GPS终端在建筑密集的地方或在隧道等定位信号难以接收的地理位置时,往往不易获取有效的定位信息。而且,GPS定位功能无法满足仓储等高精度定位需求的场合,还需要进行相应的补充与完善。

  本系统实现方案

  基于现有网络建设的总体情况及物流管理过程中对定位数据的需求分析,并综合考虑各种定位技术的发展现状及技术成熟度、实现成本等因素,拟在物流配送网络中采用GPS辅助定位系统(GPS+Cell-ID+RFID+图形道路匹配相结合)的定位技术。其主要考虑如下:

  1)充分利用现有硬件资源。GPS、GSM、RFID模块为本物流信息终端课题已拟定的硬件平台,除GPS专为定位功能服务外,GSM和RFID模块同时具有通信和标签信息采集的功能。在不扩充硬件资源的前提下,最大限度地提高定位功能的服务质量。

  2)Cell-ID定位。确保终端在GPS定位失去信号的情况下,保持最低限度的定位信息的提供。Cell-ID方式在城市及人口密集区域能提供相对高的精度,与GPS在城市高层建筑、林荫道、地下隧道等遮蔽情况下性能的降低有较好的互补。由于GSM相对于CDMA具有更小的小区半径,因此具有相对高的Cell-ID定位精度。在本方案中拟采用GSM的CELLID定位方式。

  3)RFID定位。通过读取用于标识地理坐标的标签数据来获取定位信息。其定位精度仅取决于标签存储定位信息的精确性,理论上可以达到任意高精度。可用于仓库、码头等需要高精度定位信息的场所,来提供定位信息和其它辅助功能。

  4)图形道路匹配。当前物流运输主要是利用汽车等运输工具在固定的路线上进行,当路线基本确定的情况下,可通过图形道路匹配对定位信息进行适当纠正。但是,这一般适用于道路不太密集的区域或路线固定的情况,可在本方案中作为可选功能模块提供,适用于铁路、高速公路等道路信息明确的场合,尤其适用于铁路运输。

  软硬件系统设计原理

  系统硬件开发板CPU采用的是三星公司的内部集成ARM920T处理器核的S3C2410芯片。GPS模块提供卫星定位信号;GSM/GPRS模块提供通信与CELLID定位信息获取;RFIDS模块提供标签信息采集和RFID定位功能。终端通过GSM/GPRS通信网络与物流信息控制中心建立联系,提交相关数据采集信息和接收物流信息控制中心指令。

  系统软件采用嵌入式Linux操作系统,移植QT/Embedded 3.3.4和SQLITE数据库,采用QT嵌入式编程实现相应功能。

 

  软件系统设计

  本文的软件系统设计主要以S3C2410平台为核心,将从GPS模块、GSM/GPRS模块、RFID模块提取的定位信息进行相应分析处理,完成物流信息终端导航定位功能。

  宿主机开发环境建立由于目标平台资源所限,需要搭建交叉编译环境,本系统开发过程中采用的平台如下:

  宿主机:RED HAT 9.0; QT/Embedded 3.3.4;SQLITE 2.8.16;cross-2.95.3.tar.bz2目标机:Linux Kernel 2.4.18;QT/Embedded 3.3.4;SQLITE 2.8.16 为了正确交叉编译QT/Embedded,需要确保UUID、ZLIB、JPEG、GIF、PNG、SQLITE等QT中所需要的头文件 、库文件在交叉编译前正确安装,并移植相应的库文件至目标机中。在交叉编译QT/Embedded 3.3.4前正确设置环境变量,本系统QT/Embedded 3.3.4交叉编译选项为:./configure -embedded arm -shared -debug -no-cups -thread -plugin-sql-sqlite -no-ipv6 -qt-mouse-Linuxtp,可根据实际情况进行相应裁减。

  软件关键技术分析

  1)GPS定位信息提取

  目前常用的GPS-OEM模块均支持NMEA-0183的数据格式。NMEA-0183是以语句来发送数据的,每条语句都相对独立并有完整意义。语句包含若干由ASCII文本字符组成的字段, 每条语句都以“$”开头,以回车换行结束,数据包含在字段中,字段之间由逗号分 隔。每条语句的第一个字段表明语句的意义,在标准语句中,“$”后的两位字符为“talkerID”,表示发送数据的设备,如GP表示GPS;接着的三位字符为“sentenceID”,表示了该语句的类型,如GGA,RMC等。语句中每个字段的含义随语句类型而定,语句的最后一个字段是检验和(checksum),由“*”和两位十六进制数字及回车换行符组成,检验和是“$”和“*”之间所有字符的逻辑异或运算结果,用于检验和确认数据的传输是否正确。

  对于终端导航而言,“$GPRMC”帧格式可以满足大部分需求,其帧长相对较短,便于信息处理。因此,在本系统中,选取“$GPRMC”帧进行定位信息提取。系统通过RS232串口从GPS-OEM模块中接收定位数据,从接收数据中的“$GPRMC”帧提取时间、经纬度、速度、方位角等定位导航信息。其程序模块主体结构如下:

  ……

  //判断是否为$GPRMC帧头,并进行标记

  if(Data[i]=='$' && Data[i+3]=='R')……

  //判断是否为帧尾,帧尾以换行字符表示,数值为10 '\n'

  if(Data[i]==10 && SectionID==13)

  { ……id_check=m*16+n; //得到检验数据的INT型

  if(chk_result!=id_check) //比较异或运算结果与检验数据是否一致

  …… i f( Data[i]=='*' && SectionID==12 ) //异或运算结果

  ……

  //对$至*之间的字符进行异或运算,得到结果chk_result

  for( ; Data[n]!='*"; n++) chk_result^=Data[n];//判断逗号,区分识别数据,并判别*号,区分校验数据

  if(Data[i]==','||(Data[i]=='*' && SectionID==12) )SectionID++;

  else

  { switch(SectionID){ case 1: //提取时间m_STime[a++]=Data[i];break;case 2: //接收判别有效性数据A为有效,V为无效……case 3: //提取纬度……//提取经度、速度、方位角、校验数据等其它信息。

  2)Linux串口通信编程

  嵌入式Linux操作系统使用接口标准POSIX的termios接口来控制串口的行为。在Linux系统中,串口等设备被当作文件进行处理,其程序模块主体实现如下:

  int fd="open"("/dev/ttyS1",O_RDWRIO_NOCTTY);//打开串口

  ……new_options.c_cflag &=~PARENB;//无奇偶校验

  new_options.c_cflag &=~CSIZE;//不隐藏数据位

  new_options.c_cflag &=~CSTOP8;//无停止位

  new_options.c_cflag |=CS8;//8位数据位

  cfsetispeed(&new_options,B4800);//设置波特率

  4800bit/scfsetospeed(&new_options,B4800);

  tcflush(fd,TCIOFLUSH);

  tcsetattr(fd,TCSANOW,&new_options);//设置新的设备方式完成串口设置后,就可以使用read( )、write( )函数对串口进行操作。需注意的是,串口默认是阻塞型的,当没有数据到达时,将会阻塞挂起,这时可以通过多线程编程、串口超时设定或使用select轮询等方式进行调整控制。本系统主要采用多线程编程实现对串口阻塞的调控,使用的是QT的Qthread类,也可以直接使用Linux自身的多线程函数进行操作。

  3)QT/Embedded编程

  Qt/Embedded是着名的Qt库开发商TrolLTEch正在进行的基于framebuffer的面向嵌入式系统的Qt版本。因其面向对象、跨平台和界面设计方便美观而得到广泛应用。

  本设计采用QT/Embedded 3.3.4版本,它支持SQLITE数据库驱动,便于数据库操作与编程。设计主要使用了QTE的画布模块、SQL模块和网络模块。画布模块中,QCANvas库是一个高度优化的二维绘图库,与其它画布模块结合使用,能很方便地实现导航地图的显示、缩放、漫游以及鹰眼等功能。而SQL模块和网络模块能很方便地实现数据库编程和网络通信功能,极大地缩短了程序的开发周期,提高了开发效率。

  初步实现定位误差主要取决于GPS-OEM模块的定位精度,实验显示本系统能初步满足物流信息终端对定位功能的需求。

  结束语

  实验证明:系统定位数据精确、界面友好、系统可扩展性强,较好地完成了物流信息化终端定位功能。本系统可用于物流终端定位导航,也可适用于其它需要定位导航服务的场合,具有较普遍的适用价值和参考价值。


推荐阅读

史海拾趣

Ho Chien Electronics Group Inc公司的发展小趣事

Ho Chien Electronics Group Inc公司发展故事

故事一:创立与全球化布局

Ho Chien Electronics Group Inc.(以下简称“Ho Chien”)创立于1974年,其全球总部位于美国波士顿。自成立以来,Ho Chien迅速在全球范围内扩展其业务,先后在中国、新加坡、德国、巴西、加拿大和墨西哥等地设立了超过40个分部。这一布局不仅加强了公司的市场渗透力,还为其提供了丰富的资源支持,助力其在电子行业细分市场中稳步前行。Ho Chien特别专注于互连与机电产品领域,通过为原始设备制造商和合约制造商提供高质量的产品和服务,逐步在行业内建立了良好的声誉。

故事二:亚太市场的拓展

2012年12月,Ho Chien正式启动其亚太业务,并将亚太区总部设在香港。为了更好地服务亚太地区的客户,Ho Chien不仅设立了销售部,还构建了区域配送中心和增值服务中心。经过数年的努力,Ho Chien亚太区已开设24个分部和3处仓库,极大地提升了其在该地区的运营效率和服务质量。这一举措不仅加深了Ho Chien在亚太市场的影响力,还为其未来的全球扩张奠定了坚实的基础。

故事三:产品线的丰富与拓展

Ho Chien致力于为电子行业各细分市场的客户提供全面支持,其产品线涵盖了25个不同元器件类别。主要分销产品包括互连器件、继电器、风扇、开关、散热解决方案、套管和线束产品、晶体与振荡器、紧固件与五金件以及传感器等。随着市场的不断变化和技术的飞速发展,Ho Chien不断调整和优化其产品线,以满足客户日益增长的需求。这一策略不仅帮助Ho Chien保持了其在行业内的竞争力,还为其带来了稳定的收入来源。

故事四:创新与研发

作为电子行业的领军企业之一,Ho Chien深知创新对于公司发展的重要性。因此,公司不断加大在研发方面的投入,致力于新技术、新产品的开发和应用。通过引进先进的研发设备和优秀人才,Ho Chien在多个领域取得了重大突破,并成功推出了一系列具有自主知识产权的产品。这些创新成果不仅提升了Ho Chien的品牌价值,还为其在全球市场上的拓展提供了有力支持。

故事五:人才培养与企业文化

在快速发展的过程中,Ho Chien深刻认识到人才对于公司持续发展的关键作用。因此,公司始终坚持“以员工为中心”的管理思想,努力为员工创造宽松的工作氛围和良好的发展机会。Ho Chien不仅提供优厚的福利待遇和丰富的培训资源,还鼓励员工积极发挥自己的才华和潜能。在这种企业文化的影响下,Ho Chien汇聚了一大批优秀的专业人才和管理精英,为公司的快速发展提供了强有力的智力支持。同时,这种积极向上的企业文化也进一步提升了Ho Chien的品牌形象和社会影响力。

AD Semiconductor公司的发展小趣事

AD Semiconductor是一家专注于模拟和数字混合信号集成电路的设计、生产和销售的公司。以下是该公司发展的五个相关故事:

  1. 公司成立与初期发展: AD Semiconductor成立于1990年,总部位于美国马萨诸塞州。公司的创始人具有丰富的集成电路设计和制造经验,致力于开发高性能、高可靠性的模拟和数字混合信号芯片。初期,公司主要专注于功率管理、数据转换和信号处理等领域。

  2. 技术创新与产品推出: AD Semiconductor在技术创新方面取得了多项突破,不断推出具有领先性能的芯片产品。公司的产品涵盖了模拟转换器、运算放大器、数据采集系统、功率管理器等多个系列,广泛应用于通信、工业控制、汽车电子等领域。

  3. 市场拓展与国际化发展: 随着产品线的不断完善和市场认可度的提升,AD Semiconductor逐步拓展了国内外市场。公司在美国、中国、欧洲等地设立了销售和技术支持中心,与全球各地的客户建立了合作关系。通过与国际合作伙伴的合作,AD Semiconductor的产品远销至全球各地,赢得了广泛的市场认可。

  4. 并购与战略合作: 为了加强自身的技术实力和市场地位,AD Semiconductor进行了一系列的并购和战略合作。其中最重要的是2015年,AD Semiconductor收购了一家专注于RF和微波集成电路设计的公司,进一步拓展了在无线通信领域的业务布局。

  5. 持续创新与未来展望: AD Semiconductor致力于持续创新,不断推出符合市场需求的新产品和解决方案。公司将继续加强技术研发投入,提升产品性能和稳定性,以满足客户在不断变化的市场需求。未来,AD Semiconductor将继续致力于成为模拟和数字混合信号领域的领先企业,并为全球客户提供更加优质的产品和服务。

台湾唯圣(GW)公司的发展小趣事
如晶体管、场效应管等,用于控制电流的产生和变化。
Barkston Plastics Engineering Ltd.公司的发展小趣事

随着电子行业的快速发展,Barkston Plastics Engineering Ltd.意识到单一产品线的局限性,于是开始扩展其产品线,涵盖更多种类的塑料电子元件。同时,公司积极寻求与行业内其他企业的战略合作,通过技术共享和市场资源互补,共同开拓更广阔的市场。这一战略转型不仅提升了Barkston的市场竞争力,也为其后续发展奠定了坚实的基础。

Alpha Industries公司的发展小趣事

随着互联网技术的普及,电子商务成为了越来越多消费者的首选购物方式。Alpha Industries抓住这一机遇,积极拓展电子商务平台。公司在各大电商平台上开设官方旗舰店,并通过社交媒体进行品牌推广。此外,Alpha Industries还开发了自己的官方网站和移动应用,为消费者提供更加便捷的购物体验。电子商务平台的拓展使得Alpha Industries的产品能够更好地触达消费者,进一步提升了品牌知名度和市场占有率。

Friedrich Lütze GmbH公司的发展小趣事

在激烈的市场竞争中, Friedrich Lütze GmbH 深知品牌建设的重要性。公司不断加大品牌宣传力度,通过参加国内外知名展会、举办技术研讨会等方式,提升品牌知名度和影响力。同时,公司注重客户服务体验,建立了完善的售后服务体系,为客户提供及时、专业的技术支持和解决方案。这些举措有效提升了公司在市场上的竞争力和客户满意度。

问答坊 | AI 解惑

一个牛人对模拟电路的理解(转)

复旦攻读微电子专业模拟芯片设计方向研究生开始到现在五年工作经验,已经整整八年了,其间聆听过很多国内外专家的指点。最近,应朋友之邀,写一点心得体会和大家共享。 我记得本科刚毕业时,由于本人打算研究传感器的,后来阴差阳错进了复旦逸夫 ...…

查看全部问答>

有没有无线倒车摄像头,内置锂电的

来自EEWORLD合作群:499581  群主:wangkj…

查看全部问答>

一个函数的问题!!

WriteCodecRegister函数出现在音频初始化的地方 但我不知道这个函数的具体初始化什么东西, 我查过api没有这个函数。。。 请问有人知道不?…

查看全部问答>

winCE中的应用程序工具栏位置可以改的么

做TCPMP(多媒体播放器)的界面修改 想把里面的工具栏,移到下边来 工具栏是用commandbar_create创建的 能不能将默认显示在菜单栏下面的工具栏,改成显示在播放器底部 就像暴风影音那样…

查看全部问答>

nfs 挂载问题??

哪位高手能解决?小弟nfs挂载有问题 mount: wrong fs type, bad option, bad superblock on 192.168.66.206:/hh123       missing codepage or other error       In some cases useful info is found ...…

查看全部问答>

VB.NET

我用的是VB.NET+SQL2000+SQLCE2.0 在用PPC访问服务器上的数据库时,在模拟器上跳出的问题是SQL Server不存在或访问被拒绝,在设备上(Symbol MC50)上是PlatformNotSupportedException。 但是我用rda访问时都是正常的。怎么回事呢。 程序: Dim c ...…

查看全部问答>

串口读数据出现误码?

做了一个读写串口的程序。 存在如下问题 在串口打开后,建立串口收数据线程,监控串口传来的数据。每当收到数据后再进行处理。 现在的问题是当用到ClearCommError(ceSeries->m_hComm,&dwReadErrors,&cmState);的时候cmState获得接收到数据的长度 ...…

查看全部问答>

gsm modem 的怎样选择啊?

求教高人啊,我所在单位有短信需求发送需求啊,量比较大,一个月几万条记录,问怎样采购GSM MODEM啊,口碑、服务好一些的啊,有二次开发包的最好啊,小弟刚接触这方面,不懂,有知道的回回啊,发者有分啊…

查看全部问答>

MAX232接法求助

连接电路完全按照器件资料完成的 连接完成后,接入电脑串口和单片机串口,结果发现接收数据不对,将接入单片机的两根数据线拔出后串口助手仍然有数据接收,主要是00和FF,但貌似没什么规律(有时候一个00后面就一个FF,有时候n个00后才出现一个FF ...…

查看全部问答>

msp430做频率计

刚学MSP430没几天,想自己做一个数字频率计,原理是什么,如何设置寄存器,谢谢!…

查看全部问答>