亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

運單信息自動錄入和狀態(tài)自動同步的算法的制作方法

文檔序號:11134962閱讀:608來源:國知局
運單信息自動錄入和狀態(tài)自動同步的算法的制造方法與工藝

本發(fā)明涉及物流系統(tǒng)技術領域,特別涉及一種運單信息自動錄入和狀態(tài)自動同步的算法。



背景技術:

在物流信息化應用中,國內已有的信息技術主要在錄單,調度,回單等環(huán)節(jié)的軟件工具的開發(fā),只是把這些工作的工具紙筆替換鍵盤和電子存檔,主要還是由人來完成運單的信息錄入和狀態(tài)變換操作,這對物流中的人工操作并未減少,人工錄單的重復工作容易使操作人員產生工作疲勞,且物流信息更新慢。



技術實現要素:

本發(fā)明的目的旨在至少解決所述技術缺陷之一。

為此,本發(fā)明的目的在于提出一種運單信息自動錄入和狀態(tài)自動同步的算法,解決了人工錄單的重復工作的問題,實現了貨物位置的實時跟蹤,完成了運單狀態(tài)的自動同步。

為了實現上述目的,本發(fā)明提供一種運單信息自動錄入和狀態(tài)自動同步的算法,包括以下步驟:

步驟S1,位置數據的采集,通過GPS系統(tǒng)獲取車輛定位數據;

步驟S2,數據預處理,將車輛所在位置的經度、緯度轉化為地圖標準類型的經緯度;

步驟S3:計算車輛所在位置與路線設置中所設置的發(fā)貨點的之間距離;

步驟S4:計算車輛是否在發(fā)貨點的圍欄內;

當車輛在發(fā)貨點的圍欄內,且僅當首次出現在發(fā)貨點的圍欄內時,系統(tǒng)會自動記錄此條信息;

當車輛在發(fā)貨點的圍欄范圍外,且之前系統(tǒng)有記錄此車進入發(fā)貨點的記錄,則判定此車駛出發(fā)貨點的圍欄,系統(tǒng)會自動記錄此條信息;

步驟S5:計算車輛所在位置與路線設置中所設置的收貨點的之間距離;

步驟S6:計算車輛是否在收貨點的圍欄內;

當車輛在收貨點的圍欄內,且僅當首次出現在收貨點的圍欄內時,系統(tǒng)會自動記錄此條信息;

當車輛在收貨點的圍欄范圍外,且之前系統(tǒng)有記錄此車進入收貨點的記錄,則判定此車駛出收貨點的圍欄,系統(tǒng)會自動記錄此條信息;

當系統(tǒng)記錄了車輛駛出收貨點的圍欄時間的數據時,此次監(jiān)聽程序結束;

步驟7:最后系統(tǒng)將車輛由發(fā)貨點出發(fā)到達收貨點的行駛軌跡,展示在地圖上。

進一步的,在步驟S1中,車輛定位數據至少包括:車牌號、設備編號、車輛所在位置的經度和維度、車輛定位時間。

進一步的,在步驟S2中,將車輛所在位置的經度、緯度轉化為地圖標準類型的經緯度的計算算法如下:

a、獲取車輛所在位置的經度、緯度;

b、根據經緯度偏移算法計算地圖標準類型的經緯度;

4、如權利要求1所述的運單信息自動錄入和狀態(tài)自動同步的算法,其特征在于:經緯度偏移算法包括以下步驟:

a、先將原始經緯度(lat、lon)進行緯度轉換:

轉換后緯度dLat=-100.0+2.0*(lon-105.0)+3.0*(lat-35.0)+0.2*(lat-35.0)*(lat-35.0)+0.1*(lon-105.0)*(lat-35.0)+0.2*Math.sqrt(Math.abs(lon-105.0))+(20.0*Math.sin(6.0*(lon-105.0)*pi)+20.0*Math.sin(2.0*(lon-105.0)*pi))*2.0/3.0+(20.0*Math.sin((lat-35.0)*pi)+40.0*Math.sin((lat-35.0)/3.0*pi))*2.0/3.0+(160.0*Math.sin((lat-35.0)/12.0*pi)+320*Math.sin((lat-35.0)*pi/30.0))*2.0/3.0;

其中,pi表示圓周率,a表示衛(wèi)星橢球坐標投影到平面地圖坐標系的投影因子,ee表示橢球的偏心率,lat原始緯度,lon原始經度;

b、將原始經緯度(lat、lon)進行經度轉換;

轉換后經度dLon=300.0+(lon-105.0)+2.0*(lat-35.0)+0.1*(lon-105.0)*(lon-105.0)+0.1*(lon-105.0)*(lat-35.0)+0.1*Math.sqrt(Math.abs(lon-105.0))+(20.0*Math.sin(6.0*(lon-105.0)*pi)+20.0*Math.sin(2.0*(lon-105.0)*pi))*2.0/3.0+(20.0*Math.sin((lon-105.0)*pi)+40.0*Math.sin((lon-105.0)/3.0*pi))*2.0/3.0+(150.0*Math.sin((lon-105.0)/12.0*pi)+300.0*Math.sin((lon-105.0)/30.0*pi))*2.0/3.0;

c、再轉換成GCJ經緯度;

GCJ緯度gLat=(dLat*180.0)/((a*(1-ee))/(magic*sqrtMagic)*pi);

GCJ經度gLon=(dLon*180.0)/(a/sqrtMagic*Math.cos(radLat)*pi);

d、最后將GCJ經緯度轉換為地圖標準類型的經緯度;

地圖標準類型的經度bd_lon=z*Math.cos(theta)+0.0065;

地圖標準類型的緯度bd_lat=z*Math.sin(theta)+0.006;

其中,theta=Math.atan2(gLat,gLon)+0.000003*Math.cos(gLon*x_pi);

z=Math.sqrt(gLon*gLon+gLat*gLat)+0.00002*Math.sin(gLat*x_pi);

x_pi表示圓周率轉換量。

進一步的,在步驟S3中,計算車輛所在位置與路線設置中所設置的發(fā)貨點的之間距離的算法公式如下:

距離distance=Math.round(s*10000)/10000;

其中,

s=2*Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2)+Math.cos(radLat1)*Math.c os(radLat2)*Math.pow(Math.sin(b/2),2)))*EARTH_RADIUS;

r表示地球赤道半徑,pi表示圓周率,EARTH_RADIUS表示赤道半徑;lat1表示為發(fā)貨點的緯度,lat2車輛所在位置的緯度;

經緯度轉換為弧度rad=經度(緯度)*Math.PI/180.0;

基于googleMap算法,計算得到兩點之間的距離a=rad(lat1)-rad(lat2);

進一步的,在步驟S4中,通過車輛所在位置與路線設置中所設置的發(fā)貨點的之間距離distance和發(fā)貨點的圍欄的半徑Ra之間的關系來計算車輛是否在發(fā)貨點的圍欄內;

如果distance大于Ra,則車輛在發(fā)貨點的圍欄范圍外;

如果distance小于等于Ra,則車輛在發(fā)貨點的圍欄內。

進一步的,在步驟S5中,通過車輛所在位置與路線設置中所設置的收貨點的之間距離distance和收貨點的圍欄的半徑Ra之間的關系來計算車輛是否在收貨點的圍欄內;

如果distance大于Ra,則車輛在收貨點的圍欄范圍外;并查詢這條路線有無該車輛進入收貨點的圍欄的記錄,如果有記錄,代表此時該車輛已經駛出收貨點的圍欄,如果沒有記錄,則該車輛并沒有進入到收貨點的圍欄內;

如果distance小于等于Ra,則車輛在收貨點的圍欄內。

進一步的,當車輛在收貨點的圍欄內時,則執(zhí)行以下操作:

a、查詢這條路線有無這輛車駛出發(fā)貨點的圍欄的記錄,如果有記錄,代表此車是已經駛出發(fā)貨點的圍欄并且首次進入收貨點的圍欄;

b、如果是首次進入收貨點的圍欄,則自動新增一條數據,記錄相關信息,并推送信息。

本發(fā)明通過在發(fā)貨點和收貨點處設置電子圍欄,然后由利用算法來分別計算車輛所在位置與發(fā)貨點和收貨點的距離,進而分別與發(fā)貨點和收貨點處設置電子圍欄半徑進行比較,從而判斷車輛是否處于入欄狀態(tài)、出欄狀態(tài),同時自動將該信息記錄上傳,實現物流運單信息自動錄入和狀態(tài)自動同步功能,解決了人工錄單的重復工作的問題,實現了貨物位置的實時跟蹤,完成了運單狀態(tài)的自動同步,真正意義上實現了物流的智能化。

本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。

附圖說明

本發(fā)明的上述和/或附加的方面和優(yōu)點從結合下面附圖對實施例的描述中將變得明顯和容易理解,其中:

圖1為本發(fā)明的流程圖;

圖2為本發(fā)明中將車輛所在位置的經緯度轉化為地圖標準類型的經緯度算法流程圖;

圖3為本發(fā)明中計算車輛所在位置與發(fā)貨點的之間距離的算法流程圖;

圖4為本發(fā)明中整體監(jiān)聽程序流程圖。

具體實施方式

下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。

本發(fā)明提供一種運單信息自動錄入和狀態(tài)自動同步的算法,參考附圖1所示,包括以下步驟:

步驟S1,位置數據的采集,通過GPS系統(tǒng)獲取車輛定位數據;

車輛定位數據至少包括:車牌號、設備編號、車輛所在位置的經度和維度、車輛定位時間,以便于將車輛信息與物流運單信息進行綁定。

步驟S2,數據預處理,將車輛所在位置的經度、緯度轉化為地圖標準類型的經緯度;其算法流程圖參考圖2所示。

將車輛所在位置的經度、緯度轉化為地圖標準類型的經緯度的計算算法如下:

a、獲取車輛所在位置的經度、緯度;

b、根據經緯度偏移算法計算地圖標準類型的經緯度;

其中,經緯度偏移算法包括以下步驟:

a、先將原始經緯度(lat、lon)進行緯度轉換:

轉換后緯度dLat=-100.0+2.0*(lon-105.0)+3.0*(lat-35.0)+0.2*(lat-35.0)*(lat-35.0)+0.1*(lon-105.0)*(lat-35.0)+0.2*Math.sqrt(Math.abs(lon-105.0))+(20.0*Math.sin(6.0*(lon-105.0)*pi)+20.0*Math.sin(2.0*(lon-105.0)*pi))*2.0/3.0+(20.0*Math.sin((lat-35.0)*pi)+40.0*Math.sin((lat-35.0)/3.0*pi))*2.0/3.0+(160.0*Math.sin((lat-35.0)/12.0*pi)+320*Math.sin((lat-35.0)*pi/30.0))*2.0/3.0;

其中,pi表示圓周率,a表示衛(wèi)星橢球坐標投影到平面地圖坐標系的投影因子,ee表示橢球的偏心率,lat原始緯度,lon原始經度;

b、將原始經緯度(lat、lon)進行經度轉換;

轉換后經度dLon=300.0+(lon-105.0)+2.0*(lat-35.0)+0.1*(lon-105.0)*(lon-105.0)+0.1*(lon-105.0)*(lat-35.0)+0.1*Math.sqrt(Math.abs(lon-105.0))+(20.0*Math.sin(6.0*(lon-105.0)*pi)+20.0*Math.sin(2.0*(lon-105.0)*pi))*2.0/3.0+(20.0*Math.sin((lon-105.0)*pi)+40.0*Math.sin((lon-105.0)/3.0*pi))*2.0/3.0+(150.0*Math.sin((lon-105.0)/12.0*pi)+300.0*Math.sin((lon-105.0)/30.0*pi))*2.0/3.0;

c、再轉換成GCJ經緯度;

GCJ緯度gLat=(dLat*180.0)/((a*(1-ee))/(magic*sqrtMagic)*pi);

GCJ經度gLon=(dLon*180.0)/(a/sqrtMagic*Math.cos(radLat)*pi);

d、最后將GCJ經緯度轉換為地圖標準類型的經緯度;

地圖標準類型的經度bd_lon=z*Math.cos(theta)+0.0065;

地圖標準類型的緯度bd_lat=z*Math.sin(theta)+0.006;

其中,theta=Math.atan2(gLat,gLon)+0.000003*Math.cos(gLon*x_pi);

z=Math.sqrt(gLon*gLon+gLat*gLat)+0.00002*Math.sin(gLat*x_pi);

x_pi表示圓周率轉換量。

步驟S3:計算車輛所在位置與路線設置中所設置的發(fā)貨點的之間距離;其算法流程圖如圖3所示。

計算車輛所在位置與路線設置中所設置的發(fā)貨點的之間距離的算法公式如下:

距離distance=Math.round(s*10000)/10000;

其中,

s=2*Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2)+Math.cos(radLat1)*Math.c os(radLat2)*Math.pow(Math.sin(b/2),2)))*EARTH_RADIUS;

r表示地球赤道半徑,pi表示圓周率,EARTH_RADIUS表示赤道半徑;lat1表示為發(fā)貨點的緯度,lat2車輛所在位置的緯度;

經緯度轉換為弧度rad=經度(緯度)*Math.PI/180.0;

基于googleMap算法,計算得到兩點之間的距離a=rad(lat1)-rad(lat2);

googleMap算法采用墨卡托(Mercator)投影,也就是等角圓柱投影,其他圖均是由256*256的小圖塊拼接而成,而且這些圖塊的URL都是不變的。

步驟S4:計算車輛是否在發(fā)貨點的圍欄內;

當車輛在發(fā)貨點的圍欄內,且僅當首次出現在發(fā)貨點的圍欄內時,系統(tǒng)會自動記錄此條信息;

當車輛在發(fā)貨點的圍欄范圍外,且之前系統(tǒng)有記錄此車進入發(fā)貨點的記錄,則判定此車駛出發(fā)貨點的圍欄,系統(tǒng)會自動記錄此條信息;

通過車輛所在位置與路線設置中所設置的發(fā)貨點的之間距離distance和發(fā)貨點的圍欄的半徑Ra之間的關系來計算車輛是否在發(fā)貨點的圍欄內;

如果distance大于Ra,則車輛在發(fā)貨點的圍欄范圍外;

如果distance小于等于Ra,則車輛在發(fā)貨點的圍欄內。

步驟S5:計算車輛所在位置與路線設置中所設置的收貨點的之間距離;

通過車輛所在位置與路線設置中所設置的收貨點的之間距離distance和收貨點的圍欄的半徑Ra之間的關系來計算車輛是否在收貨點的圍欄內;

如果distance大于Ra,則車輛在收貨點的圍欄范圍外;并查詢這條路線有無該車輛進入收貨點的圍欄的記錄,如果有記錄,代表此時該車輛已經駛出收貨點的圍欄,如果沒有記錄,則該車輛并沒有進入到收貨點的圍欄內;

如果distance小于等于Ra,則車輛在收貨點的圍欄內。

其中,當車輛在收貨點的圍欄內時,則執(zhí)行以下操作:

a、查詢這條路線有無這輛車駛出發(fā)貨點的圍欄的記錄,如果有記錄,代表此車是已經駛出發(fā)貨點的圍欄并且首次進入收貨點的圍欄;

b、如果是首次進入收貨點的圍欄,則自動新增一條數據,記錄相關信息,并推送信息。

步驟S6:計算車輛是否在收貨點的圍欄內;

當車輛在收貨點的圍欄內,且僅當首次出現在收貨點的圍欄內時,系統(tǒng)會自動記錄此條信息;

當車輛在收貨點的圍欄范圍外,且之前系統(tǒng)有記錄此車進入收貨點的記錄,則判定此車駛出收貨點的圍欄,系統(tǒng)會自動記錄此條信息;

當系統(tǒng)記錄了車輛駛出收貨點的圍欄時間的數據時,此次監(jiān)聽程序結束;

整體監(jiān)聽程序流程圖如圖4所示。

步驟7:最后系統(tǒng)將車輛由發(fā)貨點出發(fā)到達收貨點的行駛軌跡,展示在地圖上。

工作原理:本發(fā)明在發(fā)貨點和收貨點處設置電子圍欄,并通過GPS系統(tǒng)獲取車輛定位數據,然后利用經緯度偏移算法,計算車輛的地圖標準類型的經緯度定位數據,接著根據經緯度定位數據來分別計算車輛所在位置與發(fā)貨點和收貨點的距離,進而分別與發(fā)貨點和收貨點處設置電子圍欄半徑進行比較并記錄,判斷車輛所在位置是否在發(fā)貨點或收貨點處設置電子圍欄內部,進而判斷車輛是否處于入欄狀態(tài)、出欄狀態(tài),同時自動將該信息記錄上傳,實現物流運單信息自動錄入和狀態(tài)自動同步功能。

本發(fā)明解決了人工錄單的重復工作的問題,實現了貨物位置的實時跟蹤,完成了運單狀態(tài)的自動同步,真正意義上實現了物流的智能化。

盡管上面已經示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領域的普通技術人員在不脫離本發(fā)明的原理和宗旨的情況下在本發(fā)明的范圍內可以對上述實施例進行變化、修改、替換和變型。本發(fā)明的范圍由所附權利要求極其等同限定。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1