<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          PHP 解析GPS、JT808協(xié)議的WI-FI定位

          共 1738字,需瀏覽 4分鐘

           ·

          2021-11-07 07:20

          最近公司有個需求就是GPS設(shè)備在室內(nèi)的時候,本身的GPS定位會有很大的偏差,所以需要用到Wi-Fi定位,這樣地圖上顯示的位置不會有偏差。


          首先設(shè)備上報數(shù)據(jù)是這樣的

          7e02000067082037603624001400000000000000000000000000000000000000000000211029064947040200630501010602000030011c310100542b060c839a2af139340c839a2af13434e04007e06ad83914d169a991394614d169a9913846fc0c459f6a00465d0b0101cc01770e0786c7013b547e

          根據(jù)文檔擴(kuò)展協(xié)議補(bǔ)充(這里根據(jù)自己的擴(kuò)展協(xié)議去進(jìn)行下一步)

          74dd3cdc0d5ac37c65bdbfb9ffbf066f.webp

          附加信息ID:0x54、0x5D就是Wi-Fi和基站的數(shù)據(jù)信息


          通過以下代碼得到下面的數(shù)據(jù)

          $num =hexdec($data[$k + 1])-1;$total = $num / 7;$numArray = array_slice($data, $k + 3, $num);$array = implode($numArray);
          0c839a2af139340c839a2af13434e04007e06ad83914d169a991394614d169a9913846fc0c459f6a0046


          再進(jìn)一步解析出mac地址數(shù)據(jù)

          $newarray = str_split($array,14);foreach($newarray as $k=>$vo){    $str = substr($vo,0,12);    $str = implode(':',  str_split($str, 2));    $result.=$str.',-'.hexdec(substr($vo,12,14)).'|';}return  substr($result,0,strlen($result)-1);


          最終得出結(jié)果

          0c:83:9a:2a:f1:39,-52|0c:83:9a:2a:f1:34,-52|e0:40:07:e0:6a:d8,-57|14:d1:69:a9:91:39,-70|14:d1:69:a9:91:38,-70|fc:0c:45:9f:6a:00,-70

          這里要注意,信號強(qiáng)度需要轉(zhuǎn)一下,比如信號強(qiáng)度是0x46,要轉(zhuǎn)成十進(jìn)制70,然后在70前面加個-號,最終算出來的信號強(qiáng)度就是-70dBm,單位是dBm


          拿著這個Mac地址呢,去第三方平臺(比如:高德地圖)申請Wi-Fi轉(zhuǎn)換經(jīng)緯度接口

          $url?=?"https://apilocate.amap.com/position?accesstype=1&imei=這里是手機(jī)號的IMEI卡號&macs=這里填mac地址&output=json&key=這里填自己申請的key";$result?=?$this->curl($url);$result = json_decode($result,true);

          得出經(jīng)緯度等位置信息

          {    "infocode":"10000",    "result":{        "city":"深圳市",        "province":"廣東省",        "poi":"新能源創(chuàng)新產(chǎn)業(yè)園",        "adcode":"440305",        "street":"創(chuàng)盛路",        "desc":"廣東省 深圳市 南山區(qū) S301南坪快速 靠近新能源創(chuàng)新產(chǎn)業(yè)園",        "country":"中國",        "type":"3",        "location":"113.9524951,22.5628781",        "road":"S301南坪快速",        "radius":"29",        "citycode":"0755"    },    "info":"OK",    "status":"1"}


          在地圖上是這樣的

          62c52629e5b316cbc330f7edab95f035.webp


          瀏覽 314
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费做爱视频动漫 | 乱伦电影影音先锋 | 伊人网站在线 | 日韩一区二区三区四区视频 | 欧美日韩爽 |