《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM9的物流終端定位功能的實現
基于ARM9的物流終端定位功能的實現
陳小鵬,于東海
摘要: 基于ARM9的物流終端定位功能的實現,引言物流的定位方案與技術的選擇對提高現代物流配送管理效率,減少運營成本具有重要的影響。物流終端定位要求較高的定位精度,能提供全天候連續不間斷的定位信息支持,能滿足復雜地形條件的定位需求。本文針
關鍵詞: ARM ARM9 物流 終端定位
Abstract:
Key words :

引言

  物流的定位方案與技術的選擇對提高現代物流配送管理效率,減少運營成本具有重要的影響。物流終端定位要求較高的定位精度,能提供全天候連續不間斷的定位信息支持,能滿足復雜地形條件的定位需求。

  本文針對當前物流行業終端定位功能的需求進行分析,針對當前定位技術現狀,提出相適應的物流終端定位功能實現方案,并在基于嵌入式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),由“*”和兩位十六進制數字及回車換行符組成,檢驗和是“$”和“*”之間所有字符的邏輯異或運算結果,用于檢驗和確認數據的傳輸是否正確。

  對于終端導航而言,“$GPR

  MC”幀格式可以滿足大部分需求,其幀長相對較短,便于信息處理。因此,在本系統中,選取“$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/s

  cfsetospeed(&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模塊的定位精度,實驗顯示本系統能初步滿足物流信息終端對定位功能的需求。

  結束語

  實驗證明:系統定位數據精確、界面友好、系統可擴展性強,較好地完成了物流信息化終端定位功能。本系統可用于物流終端定位導航,也可適用于其它需要定位導航服務的場合,具有較普遍的適用價值和參考價值。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一区二区三区www| 久久精品噜噜噜成人av农村| 亚洲伊人一本大道中文字幕| 亚洲高清网站| 今天的高清视频免费播放成人 | 亚洲精品久久久久| 久久国产视频网| 欧美亚洲一级| 亚洲欧美日韩另类| 亚洲一区二区三区中文字幕 | 亚洲精品网站在线播放gif| 久久黄金**| 欧美影院精品一区| 性欧美video另类hd性玩具| 亚洲欧美激情一区二区| 亚洲视频在线播放| 亚洲一级特黄| 亚洲欧美一区二区三区在线| 午夜老司机精品| 欧美一区国产一区| 久久精品国产69国产精品亚洲| 欧美一级理论片| 欧美主播一区二区三区| 久久成人综合网| 亚洲国产精品毛片| 亚洲激情校园春色| 亚洲美女毛片| 一区二区三区高清不卡| 亚洲视频免费观看| 午夜精品久久久久久久久久久久| 午夜精品久久久久久久99樱桃| 欧美一级久久久| 久久久久久亚洲精品不卡4k岛国| 久久综合九色欧美综合狠狠| 欧美激情1区2区| 国产精品国产精品国产专区不蜜| 国产精品一区二区三区久久| 国内自拍一区| 亚洲伦理在线免费看| 亚洲视频在线一区| 欧美自拍偷拍| 日韩亚洲欧美一区| 亚洲欧美日韩国产| 久久久久久夜精品精品免费| 欧美激情第9页| 国产精品国产三级国产普通话三级 | 欧美日韩一二三四五区| 国产精品久久久久一区二区三区共 | 欧美日韩国产123区| 国产精品美女久久久久av超清| 国产午夜精品全部视频播放| 亚洲国产成人精品女人久久久| 日韩亚洲精品视频| 欧美一级淫片aaaaaaa视频| 亚洲国产美国国产综合一区二区| 一区二区三区欧美日韩| 欧美伊人久久久久久久久影院| 免费看成人av| 国产精品久久久久9999高清| 国内精品久久久久伊人av| 亚洲人成网站精品片在线观看| 亚洲影音先锋| 亚洲另类在线一区| 性久久久久久久久| 欧美成人综合在线| 国产精品系列在线播放| 亚洲国产日韩美| 欧美一区高清| 在线亚洲精品| 久久一区二区三区四区五区| 欧美日韩在线一区| 狠狠干综合网| 亚洲一区二区三区精品在线| 亚洲欧洲精品一区二区三区波多野1战4| 亚洲免费视频一区二区| 免费日韩视频| 国产乱子伦一区二区三区国色天香| 亚洲国产一区视频| 欧美亚洲一区二区在线| 国产精品99久久久久久有的能看| 久久视频国产精品免费视频在线| 欧美视频中文一区二区三区在线观看| 狠狠网亚洲精品| 亚洲午夜av电影| 日韩亚洲综合在线| 久久亚洲精品视频| 国产精品一区一区| 一本色道久久精品| 亚洲麻豆av| 久久婷婷人人澡人人喊人人爽| 国产精品人人做人人爽人人添| 亚洲精品一区中文| 亚洲人成网站影音先锋播放| 久久久久久久久岛国免费| 国产精品国产亚洲精品看不卡15 | 欧美日韩亚洲综合在线| 亚洲国产精品va| 亚洲高清不卡在线| 欧美在线影院在线视频| 欧美日韩一区视频| 亚洲人成77777在线观看网| 美日韩精品视频免费看| 免费日韩精品中文字幕视频在线| 国产欧美一区二区在线观看| 99视频日韩| 99精品福利视频| 免费亚洲网站| 精品9999| 久久xxxx| 久久国产欧美日韩精品| 国产精一区二区三区| 亚洲无毛电影| 亚洲男人影院| 国产精品国产三级国产aⅴ浪潮| 日韩网站在线| 一区二区三区www| 欧美日韩精品国产| 亚洲看片一区| 中国av一区| 欧美日韩国产在线观看| 亚洲精品国精品久久99热一| 亚洲六月丁香色婷婷综合久久| 美日韩精品免费| 在线激情影院一区| 91久久一区二区| 欧美激情视频一区二区三区不卡| 亚洲国产欧美一区| 亚洲免费观看视频| 欧美日韩亚洲一区二区三区在线观看| 亚洲精品国产日韩| 在线亚洲欧美| 国产精品久久激情| 亚洲性线免费观看视频成熟| 午夜精品久久久久久久久久久| 国产精品一区二区久久久久| 亚洲欧美日韩另类精品一区二区三区| 欧美一区二区三区日韩视频| 国产日韩欧美不卡| 欧美在线看片| 欧美3dxxxxhd| 日韩亚洲欧美高清| 午夜天堂精品久久久久| 国产麻豆日韩欧美久久| 欧美在线欧美在线| 欧美电影在线观看完整版| 亚洲欧洲精品一区二区| 亚洲图色在线| 国产欧美另类| 亚洲黄色大片| 欧美破处大片在线视频| 亚洲香蕉网站| 久久久视频精品| 亚洲国产成人av好男人在线观看| 一区二区冒白浆视频| 国产精品久久97| 欧美一区二区久久久| 免费视频一区二区三区在线观看| 亚洲另类自拍| 午夜宅男欧美| 在线播放中文一区| 一区二区三区成人| 久久久久欧美| 亚洲国产成人91精品| 免费不卡中文字幕视频| 亚洲精品视频在线观看免费| 亚洲欧美日韩国产一区| 国产日韩欧美精品| 亚洲精品乱码久久久久久| 欧美丝袜一区二区三区| 欧美一区午夜精品| 欧美国产精品v| 亚洲一区二区三区影院| 麻豆精品精品国产自在97香蕉| 亚洲精品一区二区三区蜜桃久| 欧美亚洲日本一区| 亚洲成色777777女色窝| 亚洲一区中文字幕在线观看| 狠狠色伊人亚洲综合成人| 一区二区三区四区精品| 国产一区二区精品丝袜| 一本久久综合亚洲鲁鲁| 国产视频亚洲精品| 亚洲精品少妇| 国产欧美在线播放| 99国内精品| 国内成+人亚洲+欧美+综合在线| 在线视频欧美一区| 海角社区69精品视频| 亚洲永久免费精品| 亚洲高清av| 久久久国产精品亚洲一区| 亚洲另类在线视频| 麻豆成人综合网| 香蕉久久夜色精品国产| 欧美日韩午夜在线视频| 亚洲高清视频在线| 国产麻豆91精品| 亚洲一区在线免费| 亚洲激情综合| 美女精品在线观看|