chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

LuatOS exgnss擴(kuò)展庫實(shí)戰(zhàn)進(jìn)階:GNSS功能開發(fā)全流程!

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-11-14 15:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

GNSS功能開發(fā)涉及多環(huán)節(jié)協(xié)同,LuatOS exgnss擴(kuò)展庫是其中的關(guān)鍵樞紐。本文以全流程探秘形式,從硬件準(zhǔn)備、固件燒錄到代碼實(shí)現(xiàn),詳解exgnss庫的setup配置、模式生命周期管理及定位數(shù)據(jù)處理,融入?yún)f(xié)程調(diào)度與消息機(jī)制,為進(jìn)階開發(fā)者提供深度洞察,提升開發(fā)效率與系統(tǒng)性能。

一、GNSS 概述

GPS 最先來自美國,1978 年,美國發(fā)射了第一顆 GPS 衛(wèi)星,發(fā)明和實(shí)踐了衛(wèi)星定位技術(shù)。衛(wèi)星定位技術(shù)原理是,覆蓋全球的多顆定位衛(wèi)星連續(xù)發(fā)射一定頻率的無線電信號,移動終端上集成便攜式衛(wèi)星信號接收機(jī),接收機(jī)接收衛(wèi)星信號并測量衛(wèi)星到終端接收機(jī)之間的距離,最終由移動終端利用多顆衛(wèi)星位置和與這些衛(wèi)星的距離計(jì)算出移動終端的具體位置。后來出現(xiàn)了歐洲的 Galileo、俄羅斯的 GLONASS、中國的北斗等,所以如今的 GPS 實(shí)質(zhì)上是作為一個衛(wèi)星定位技術(shù)體系 GNSS 的代名詞,而不是單只美國的 GPS 系統(tǒng)。

GNSS 提供的服務(wù)包括定位、授時和導(dǎo)航。定位服務(wù)就是 GNSS 終端獲得其位置的服務(wù),授時服務(wù)就是 GNSS 終端獲得正確時間的服務(wù),導(dǎo)航服務(wù)是計(jì)算 GNSS 終端速度和運(yùn)動方向的服務(wù)。GNSS 不限制終端數(shù),在 GNSS 衛(wèi)星信號不被阻擋的情況下,在地球上任何地點(diǎn)、任何時間,任何 GNSS 終端都可以得到正確的位置和時間。定位只需要一個條件,那就是能夠接收到足夠多的衛(wèi)星信號。因此在室內(nèi)通常無法定位。

Air8000 作為集成了 4G、Wi-Fi、BLE、GNSS(全球?qū)Ш叫l(wèi)星系統(tǒng))等多功能的高性能工業(yè)引擎,其內(nèi)置的 GNSS 模塊能夠提供穩(wěn)定、準(zhǔn)確的定位服務(wù)。

二、演示功能概述

使用 Air8000 開發(fā)板,single 示例主要是展示 exgnss 庫的三種應(yīng)用模式,

exgnss.DEFAULT 模式

exgnss.TIMERORSUC 模式

exgnss.TIMER 模式

主要操作為:

1、打開三種應(yīng)用模式

2、等待 40 秒關(guān)閉操作 TIMER 模式

3、然后查詢?nèi)N應(yīng)用模式是否處于激活模式

4、等待 10 秒關(guān)閉全部應(yīng)用模式,再次查詢?nèi)N模式是否處于激活模式

5、然后獲取最后一次的定位經(jīng)緯度數(shù)據(jù)打印

6、定位成功之后使用 exgnss 庫獲取 gnss 的 rmc 數(shù)據(jù)

combination 示例主要展示幾種不同的應(yīng)用場景:

第一種場景是:正常模式,第一步先是通過 tcp_client_main 文件連接服務(wù)器,然后第二步模塊會配置 GNSS 參數(shù),開啟 GNSS 應(yīng)用,第三步會開啟一個 60s 的定時器,定時器每 60s 會打開一個 60sTIMERRORSUC 應(yīng)用,第四步定位成功之后關(guān)閉 GNSS,然后獲取 rmc 獲取經(jīng)緯度數(shù)據(jù),發(fā)送經(jīng)緯度數(shù)據(jù)到服務(wù)器上。

第二種場景是:低功耗模式,第一步先是通過 tcp_client_main 文件連接服務(wù)器,然后第二步模塊會配置 GNSS 參數(shù),開啟 GNSS 應(yīng)用,第三步會開啟一個 60s 的定時器,定時器每 60s 會進(jìn)入正常模式,打開一個 60sTIMERRORSUC 應(yīng)用,第四步定位成功之后關(guān)閉 GNSS,然后獲取 rmc 獲取經(jīng)緯度數(shù)據(jù),發(fā)送經(jīng)緯度數(shù)據(jù)到服務(wù)器上,進(jìn)入低功耗模式。

第三種場景是:PSM+ 模式,喚醒之后第一步是配置 GNSS 參數(shù),開啟 GNSS 應(yīng)用,第二步定位成功之后關(guān)閉 GNSS,然后獲取 rmc 獲取經(jīng)緯度數(shù)據(jù),拼接喚醒信息和經(jīng)緯度信息,連接服務(wù)器,然后把數(shù)據(jù)發(fā)送數(shù)據(jù)到服務(wù)器上,配置休眠喚醒定時器 ,進(jìn)入飛行模式,然后進(jìn)入 PSM+ 模式。

第四種場景是:三軸加速度的應(yīng)用場景,第一步先是通過 tcp_client_main 文件連接服務(wù)器,第二步配置 GNSS 參數(shù),打開內(nèi)部加速傳感器,設(shè)置防抖和中斷模式,關(guān)于中斷觸發(fā)提供了兩種方案,有效震動模式和持續(xù)震動檢測模式,第三步檢測到有效震動或者持續(xù)震動后,打開 GNSS,每隔 5s 獲取 rmc 獲取經(jīng)緯度數(shù)據(jù),發(fā)送經(jīng)緯度數(shù)據(jù)到服務(wù)器上。

三、準(zhǔn)備硬件環(huán)境

本篇教程用 Air8000 開發(fā)板來開發(fā)調(diào)試。

1. Air8000 開發(fā)板

2. GNSS 天線

四、準(zhǔn)備軟件環(huán)境

1. 燒錄工具Luatools;

2. 內(nèi)核固件文件(底層 core 固件文件):LuatOS-SoC_V2014_Air8000;此頁面有新版本固件的話選用最新版本固件,本次操作用的是 101 號固件,可以根據(jù)自己的需求選擇自己需要的固件。

3. LuatOS 需要的腳本和資源文件:https://gitee.com/openLuat/LuatOS/tree/master/module/Air8000/demo/gnss

4. lib 腳本文件:使用 Luatools 燒錄時,勾選 添加默認(rèn) lib 選項(xiàng),使用默認(rèn) lib 腳本文件,如果沒有下載最新的 lib,可以在 luatos 庫里面下載最新的 lib 使用:https://gitee.com/openLuat/LuatOS/tree/master/script/libs;

準(zhǔn)備好軟件環(huán)境之后,接下來查看如何燒錄項(xiàng)目文件到 Air8000 開發(fā)板中,將本篇文章中演示使用的項(xiàng)目文件燒錄到 Air8000 開發(fā)板中。

五、GNSS 軟硬件參考

5.1 API 接口介紹

本教程使用 api 接口為:

https://docs.openluat.com/osapi/ext/exgnss/

5.2 GNSS 硬件設(shè)計(jì)

GNSS 在硬件設(shè)計(jì)中天線部分是比較關(guān)鍵的,可以參考這篇文章:Air8000 GNSS 硬件設(shè)計(jì)指導(dǎo);https://docs.openluat.com/air8000/luatos/hardware/design/gnssant/

在開發(fā)板上,內(nèi)置了 3.3V LDO, 用于有源天線供電。因此可以使用外部有源天線直接連接 GNSS 連接器。

注意:目前有源天線供電僅支持 3.3V 有源天線,請注意連接的有源天線的供電范圍。

六、代碼示例介紹

本文主要提供 2 個 demo 目錄,single 和 combination,其中 single 只是對 exgnss 庫的三種 GNSS 應(yīng)用的展示,combination 主要是提供了四種應(yīng)用場景

noraml:正常功耗模式定位

lowpower:低功耗模式

psm:PSM+ 模式

vibration:三軸加速度傳感器觸發(fā)定位

6.1 exgnss 的三種應(yīng)用的用法

6.1.1 exgnss 的應(yīng)用說明

關(guān)于 exgnss 庫的三種應(yīng)用說明:

wKgZO2kWxmeAULGyAAU3ON4H0Jk584.png

關(guān)于應(yīng)用需要注意的是:使用 exgnss.close()關(guān)閉的只是對應(yīng)的應(yīng)用,所有應(yīng)用關(guān)閉,gnss 也會關(guān)閉,這樣做的好處是可以處理不同場景下的不同邏輯,比如服務(wù)器下發(fā)一條定位指令,定位成功之后關(guān)掉,這個時候又下發(fā)了一個指令需要長開啟定位,這樣兩種指令就會沖突,需要代碼去處理到底是不是要關(guān)掉 gnss,這個時候應(yīng)用的好處就體現(xiàn)出來了,開啟 exgnss.TIMERORSUC 第一個應(yīng)用,定位成功之后關(guān)掉對應(yīng)的應(yīng)用,同時開啟 exgnss.DEFAULT 第二個應(yīng)用,gnss 就會常開,在應(yīng)用 1 結(jié)束之后,只會對應(yīng)用進(jìn)行自動關(guān)閉,不會影響到第二個應(yīng)用,gnss 還會處于常開狀態(tài)。

關(guān)于 agps 輔助定位的邏輯:agps 俗稱輔助定位,其邏輯是把星歷文件發(fā)送給 gnss 芯片,同時發(fā)送時間和用基站定位獲取的大概位置,然后芯片解析處理,達(dá)到快速定位的效果。

exgnss 擴(kuò)展庫的輔助定位功能,我們處理方式是每個小時都會去更新星歷,原因是北斗是 1h 一更新,gps 是 4h 一更新,所以取最小值,我們選擇了一小時一更新

對于輔助定位需要注意的是,因?yàn)檩o助定位屬于強(qiáng)行把星歷文件灌給 gnss 芯片,雖然可以達(dá)到快速定位的效果,但是 gnss 芯片實(shí)際解析星歷需要時間,exgnss 庫默認(rèn)開啟了一個 20s 的 gnss 應(yīng)用,做這個操作是因?yàn)?,假設(shè)開啟輔助定位,定位到之后立馬關(guān)掉 gnss 電源,會導(dǎo)致 gnss 星歷解析不完全,這樣會影響下次定位為冷啟動,冷啟動時間大概需要 35s。如果不需要這個邏輯,可以接受冷啟動,或者每次都使用輔助定位,可以通過 exgnss.setup()的 auto_open=false 配置添加到配置表里面。

6.1.2 代碼講解

main.lua

主要是為了加載了 exgnss 擴(kuò)展庫,加載 gnss 代碼

wKgZO2kWxwOAansGAAecWG-PxYI458.png

gnss.lua

主要操作為:

1.開啟協(xié)程,運(yùn)行 gnss_fnc 函數(shù),通過 exgnss.setup(gnssotps)配置 gnss 的參數(shù),通過 exgnss.open 開啟三種不同的應(yīng)用

2.等待 40 秒使用 exgnss.close 關(guān)閉 TIMER 模式,使用 exgnss.close 需要兩個參數(shù),第一個是 exgnss 應(yīng)用模式,第二個是 tag 標(biāo)簽

3.然后利用 exgnss.is_active 查詢?nèi)N應(yīng)用模式是否處于激活模式,查詢應(yīng)用是否處于激活狀態(tài)同樣需要兩個參數(shù),第一個是 exgnss 應(yīng)用模式,第二個是 tag 標(biāo)簽

4.等待 10 秒使用 exgnss.close_all 關(guān)閉全部應(yīng)用模式,再次查詢?nèi)N模式是否處于激活模式

5.然后使用 xgnss.last_loc 獲取最后一次的定位經(jīng)緯度數(shù)據(jù)打印

6.定位成功之后使用 subscribe 訂閱"GNSS_STATE"消息,根據(jù)獲取到的值判斷是否定位成功,定位成功用 exgnss.rmc 獲取 rmc 數(shù)據(jù)

wKgZPGkWyeaAZi4zABMM_8H7bdM553.png

6.1.3 效果展示

wKgZO2kWykCAVwWdAAYXFx_LEwc955.pngwKgZO2kWylGAAompAARU9Jn_REg361.pngwKgZO2kWymGAdfilAAY2sWDW25o601.pngwKgZPGkWyu-AOyxQAAUXQsyWjZA076.pngwKgZPGkWywSAJaodAAVg1-ezr6E006.png

利用糾偏網(wǎng)站進(jìn)行糾偏:合宙所有的 GNSS 功能的坐標(biāo)系均使用國際標(biāo)準(zhǔn) WGS-84 坐標(biāo)系,所以開發(fā)者在國內(nèi)常見地圖定位時,會發(fā)現(xiàn)與實(shí)際情況有幾十米的誤差。這并非模塊問題, 而是國內(nèi)地圖采用了非標(biāo)坐標(biāo)系所致。 國內(nèi)常見地圖如高德地圖使用 GCJ-02 坐標(biāo)系, 百度地圖使用 BD-09 坐標(biāo)系,故此開發(fā)者需要對模塊輸出的經(jīng)緯度進(jìn)行加偏處理,才能在國內(nèi)的地圖上實(shí)現(xiàn)精確定位。

以下是糾偏網(wǎng)站:

http://old.openluat.com/GPS-Offset.html

wKgZO2kWyzuAfphSAAVQsV0ckQg215.png

6.2 正常功耗模式下的 GNSS 應(yīng)用

main.lua

主要是支持 4 個場景的切換,每次只能打開一個用于測試,選擇對應(yīng)的功能進(jìn)行測試

wKgZPGkWy--AQkvUAAoSM1U5XP0536.png


6.2.1 代碼講解

normal.lua

normal 主要操作:

1.開啟協(xié)程,運(yùn)行 gnss_fnc 函數(shù),通過 exgnss.setup(gnssotps)配置 gnss 的參數(shù),然后 require tcp_client_main 文件,連接服務(wù)器

2.通過 exgnss.open 開啟 exgnss.TIMERORSUC 應(yīng)用模式,設(shè)置的 tag 為 normal,定位時間為 60s,回調(diào)函數(shù)為 normal_cb,這個模式定位成功之后會關(guān)掉 GNSS,然后觸發(fā)回調(diào)函數(shù),回調(diào)函數(shù)的操作為,通過 exgnss.rmc(0)接口獲取 rmc 數(shù)據(jù),然后把經(jīng)緯度拼接成 json 字符串的形式,通過 sys.publish 函數(shù),把數(shù)據(jù)傳給 tcp_client_sender.lua 文件里面處理。

3.用 sys.timerLoopStart()起一個 60s 觸發(fā)一次的打開 GNSS 定位的定時器,回調(diào)函數(shù)為 normal_open,回調(diào)函數(shù)內(nèi)容和上面開啟 exgnss.TIMERORSUC 應(yīng)用模式一致


wKgZPGkWzF2AT0YXAAhi776ioOk178.png

6.2.2 效果展示

wKgZPGkWzIyAMGNkAAYctlIFBCY268.pngwKgZO2kWzKCAbQQmAAY-cAQCVmw320.pngwKgZO2kWzLOAFRaDAAZhuYO65h8610.png


測試服務(wù)器收到消息:

wKgZO2kWzOSAM_bTAAFTkaktIQg987.png

利用糾偏網(wǎng)站進(jìn)行糾偏:所有的 GNSS 功能的坐標(biāo)系均使用國際標(biāo)準(zhǔn)WGS-84坐標(biāo)系,所以開發(fā)者在國內(nèi)常見地圖定位時,會發(fā)現(xiàn)與實(shí)際情況有幾十米的誤差。這并非模塊問題, 而是國內(nèi)地圖采用了非標(biāo)坐標(biāo)系所致。 國內(nèi)常見地圖如高德地圖使用GCJ-02坐標(biāo)系, 百度地圖使用BD-09坐標(biāo)系,故此開發(fā)者需要對模塊輸出的經(jīng)緯度進(jìn)行加偏處理,才能在國內(nèi)的地圖上實(shí)現(xiàn)精確定位。

以下是糾偏網(wǎng)站:

http://old.openluat.com/GPS-Offset.html

wKgZPGkWzRKAEn-zAASQe7Y9g6Q847.png

6.3 低功耗模式下的 GNSS 應(yīng)用

6.3.1 代碼講解

lowpower.lua

normal 主要操作:

1.開啟協(xié)程,運(yùn)行 gnss_fnc 函數(shù),通過 exgnss.setup(gnssotps)配置 gnss 的參數(shù),然后 require tcp_client_main 文件,連接服務(wù)器。

2.通過 exgnss.open 開啟 exgnss.TIMERORSUC 應(yīng)用模式,設(shè)置的 tag 為 lowpower,定位時間為 60s,回調(diào)函數(shù)為 lowpower_cb,這個模式定位成功之后會關(guān)掉 GNSS,然后觸發(fā)回調(diào)函數(shù),回調(diào)函數(shù)的操作為,通過 exgnss.rmc(0)接口獲取 rmc 數(shù)據(jù),然后把經(jīng)緯度拼接成 json 字符串的形式,通過 sys.publish 函數(shù),把數(shù)據(jù)傳給 tcp_client_sender.lua 文件里面處理,然后調(diào)用 pm.power(pm.WORK_MODE, 1)--進(jìn)入低功耗模式,pm.power(pm.WORK_MODE,1,1)--wifi 進(jìn)入低功耗模式。這兩個函數(shù)主要是為了讓模塊和 wifi 模塊進(jìn)入低功耗模式。

3.用 sys.timerLoopStart()起一個 60s 觸發(fā)一次的打開 GNSS 定位的定時器,回調(diào)函數(shù)為 lower_open,回調(diào)函數(shù)內(nèi)容主要是調(diào)用 pm.power(pm.WORK_MODE, 0)進(jìn)入正常模式,然后和上面開啟 exgnss.TIMERORSUC 應(yīng)用模式一致,

然后關(guān)閉 USB,節(jié)省功耗

wKgZPGkWzVeAPy-GAAkZUFQ7AwU766.png

6.3.2 效果展示

wKgZPGkWzZuAUodPAAMRNOoTqGU508.png

wKgZO2kWzayASxKjAAFYd49QZys681.png


利用糾偏網(wǎng)站進(jìn)行糾偏:我們所有的 GNSS 功能的坐標(biāo)系均使用國際標(biāo)準(zhǔn)WGS-84坐標(biāo)系,所以開發(fā)者在國內(nèi)常見地圖定位時,會發(fā)現(xiàn)與實(shí)際情況有幾十米的誤差。這并非模塊問題, 而是國內(nèi)地圖采用了非標(biāo)坐標(biāo)系所致。 國內(nèi)常見地圖如高德地圖使用GCJ-02坐標(biāo)系, 百度地圖使用BD-09坐標(biāo)系,故此開發(fā)者需要對模塊輸出的經(jīng)緯度進(jìn)行加偏處理,才能在國內(nèi)的地圖上實(shí)現(xiàn)精確定位。

以下是糾偏網(wǎng)站:

http://old.openluat.com/GPS-Offset.html

wKgZO2kWzeKAH4JWAAPrAZ91Atk652.png


6.4 PSM+ 模式下的 GNSS 應(yīng)用

6.4.1 代碼講解

psm.lua

psm 主要操作:

1.開啟協(xié)程,運(yùn)行 gnss_fnc 函數(shù),通過 exgnss.setup(gnssotps)配置 gnss 的參數(shù)。

2.通過 exgnss.open 開啟 exgnss.TIMERORSUC 應(yīng)用模式,設(shè)置的 tag 為 psm,定位時間為 60s,回調(diào)函數(shù)為 psm_cb,這個模式定位成功之后會關(guān)掉 GNSS,然后觸發(fā)回調(diào)函數(shù),回調(diào)函數(shù)的操作為,通過 exgnss.rmc(0)接口獲取 rmc 數(shù)據(jù),獲取經(jīng)緯度并賦值變量,然后使用 sysplus.taskInitEx 開啟 TCP 短連接協(xié)程,連接服務(wù)器發(fā)送經(jīng)緯度消息和喚醒消息內(nèi)容。

3.發(fā)送完畢之后設(shè)置定時器,然后進(jìn)入飛行模式,進(jìn)入 psm+ 模式

wKgZO2kWzhKAKBBcABJEArWkeSs331.png

6.4.2 效果展示

wKgZO2kWzkeAWALJAALrATzgjYc450.png

wKgZPGkWzmaAe-PVAAEXwSm_kjA650.png

利用糾偏網(wǎng)站進(jìn)行糾偏:我們所有的 GNSS 功能的坐標(biāo)系均使用國際標(biāo)準(zhǔn)WGS-84坐標(biāo)系,所以開發(fā)者在國內(nèi)常見地圖定位時,會發(fā)現(xiàn)與實(shí)際情況有幾十米的誤差。這并非模塊問題, 而是國內(nèi)地圖采用了非標(biāo)坐標(biāo)系所致。 國內(nèi)常見地圖如高德地圖使用GCJ-02坐標(biāo)系, 百度地圖使用BD-09坐標(biāo)系,故此開發(fā)者需要對模塊輸出的經(jīng)緯度進(jìn)行加偏處理,才能在國內(nèi)的地圖上實(shí)現(xiàn)精確定位。

以下是糾偏網(wǎng)站:

http://old.openluat.com/GPS-Offset.html

wKgZPGkWzpCAOYa1AAPr1lR72GI333.png

6.5 運(yùn)動檢測定位模式下的 GNSS 應(yīng)用

6.5.1 代碼講解

vibration.lua

vibration 主要操作:

1.開啟協(xié)程,運(yùn)行 gnss_fnc 函數(shù),通過 exgnss.setup(gnssotps)配置 gnss 的參數(shù),然后 require tcp_client_main 文件,連接服務(wù)器,require exvib 擴(kuò)展庫,

2.設(shè)置三軸加速度傳感器為微小震動模式 exvib.open(1),關(guān)于 exvib 的三種模式:

wKgZPGkWzsCAKvqMAADaA8IDwNg560.png

3.8000 內(nèi)置的三軸加速度傳感器的中斷觸發(fā)腳為 gpio.WAKEUP2,設(shè)置 gpio 防抖為 100ms,然后設(shè)置中斷觸發(fā)

4.代碼里面提供了兩種觸發(fā)方式:

第一種是持續(xù)震動模式:

加速度傳感器震動之后觸發(fā)中斷,中斷觸發(fā)之后使用 exgnss.open 打開定時器,設(shè)置 exgnss.DEFAULT 模式,這種模式是一直開啟 GNSS,直到調(diào)用關(guān)閉接口關(guān)閉才會關(guān)掉,定位成功之后每 5s 上傳一次經(jīng)緯度數(shù)據(jù),

假設(shè) 10s 內(nèi)沒有再觸發(fā)震動,則關(guān)閉 gnss,等待下一次震動觸發(fā)

第二種方式是有效震動模式:

震動觸發(fā)之后計(jì)算為一次觸發(fā),如果 10s 內(nèi)觸發(fā) 5 次有效震動,則開啟后續(xù)邏輯,如果 10s 內(nèi)沒有觸發(fā) 5 次,

則判定為無效震動,等待下一次觸發(fā),如果是有效震動就使用 exgnss.open 打開定時器,設(shè)置 exgnss.DEFAULT 模式,進(jìn)行定位,

定位成功之后每 5s 上傳一次經(jīng)緯度數(shù)據(jù)到服務(wù)器,有效震動觸發(fā)之后有 30 分鐘的等待時間,在此期間,如果觸發(fā)有效震動則

不去進(jìn)行后續(xù)邏輯處理,30 分鐘時間到了之后,等待下一次有效震動

這兩種模式通過打開不同的注釋來執(zhí)行

wKgZO2kWzwWAWwobABbaaCoVnuc614.png

6.5.2 效果展示

有效中斷模式:

wKgZO2kWzyyAQJH3AAQCvnCBUs4767.pngwKgZO2kWzzqAVfRHAAPjU0R0DTY207.pngwKgZPGkWz02AQs55AAH2he2ZQ5o042.png

有效震動模式:

wKgZPGkWz3SAHDEZAASxVdJMQ90532.pngwKgZPGkWz4eAB2TIAAOR1bFKj7A446.pngwKgZPGkWz52APjU1AANJ8u_-b8U407.png


利用糾偏網(wǎng)站進(jìn)行糾偏:所有的 GNSS 功能的坐標(biāo)系均使用國際標(biāo)準(zhǔn)WGS-84坐標(biāo)系,所以開發(fā)者在國內(nèi)常見地圖定位時,會發(fā)現(xiàn)與實(shí)際情況有幾十米的誤差。這并非模塊問題, 而是國內(nèi)地圖采用了非標(biāo)坐標(biāo)系所致。 國內(nèi)常見地圖如高德地圖使用GCJ-02坐標(biāo)系, 百度地圖使用BD-09坐標(biāo)系,故此開發(fā)者需要對模塊輸出的經(jīng)緯度進(jìn)行加偏處理,才能在國內(nèi)的地圖上實(shí)現(xiàn)精確定位。

以下是糾偏網(wǎng)站:

http://old.openluat.com/GPS

wKgZO2kWz8SAIHdAAAPr-EjOrhE358.png

6.6 TCP 部分代碼

TCP 部分代碼為通用格式內(nèi)容,里面有對注釋的描述,在 GNSS 篇章就不過多對 TCP 的代碼做講解了,如果有需要可以看 TCP 章節(jié)

tcp_client_main.lua

wKgZPGkWz_WACCZsABGFP_Jcrgs284.png

tcp_client_reveiver.lua

wKgZPGkW0CaABRjZAAm6q27NTJU970.png

tcp_client_sender.lua

wKgZPGkW0F6ANkJwAA_7tdgsqZE495.png

將定位成功后的經(jīng)緯度復(fù)制到https://www.openluat.com/GPS-Offset.html??梢圆榭次恢眯畔⒑妥鴺?biāo)系轉(zhuǎn)換后的經(jīng)緯度。

wKgZO2kW0LiAI4mkAAUI9GmuI_w261.png

七、總結(jié)

本教程詳細(xì)介紹了如何使用 exgnss 擴(kuò)展庫搭配 Air8000 的 GNSS 功能,包括硬件連接、軟件配置、代碼編寫等步驟。通過本教程的學(xué)習(xí),讀者應(yīng)該能夠掌握 exgnss 擴(kuò)展庫功能的基本使用方法,并能夠根據(jù)實(shí)際需求進(jìn)行擴(kuò)展和應(yīng)用。

八、注意事項(xiàng)與常見問題

8.1、GNSS 定位經(jīng)緯度不準(zhǔn)確

1、坐標(biāo)沒有糾偏,參考:http://www.openluat.com/GPS-Offset.html進(jìn)行糾偏處理

2、周圍有比較高的障礙物,會導(dǎo)致定位誤差

3、在開闊地帶,正常情況下定位精度只能做到 5 米

4、不能在室內(nèi)測試,必須到室外測試;如果只能在室內(nèi)測試,可以淘寶搜索“GNSS 信號轉(zhuǎn)發(fā)器”

8.2、Air8000 獲取到的經(jīng)緯度數(shù)據(jù)是基于什么坐標(biāo)系

使用國際標(biāo)準(zhǔn) WGS-84 坐標(biāo)系,需要自己進(jìn)行坐標(biāo)系轉(zhuǎn)換各 GNSS 坐標(biāo)系說明以及轉(zhuǎn)換方法。

8.3、GPS 天線如何設(shè)計(jì)

參考:https://docs.openluat.com/air8000/luatos/hardware/design/gnssant/

8.4、可視衛(wèi)星、可用衛(wèi)星有什么區(qū)別

可視衛(wèi)星是當(dāng)前區(qū)域,接收條件良好情況下,應(yīng)該可以收到衛(wèi)星信號的衛(wèi)星。

可用衛(wèi)星是當(dāng)前已經(jīng)收到信號并正在使用參與定位的衛(wèi)星。

8.5、 GGA 和 RMC 應(yīng)該用哪個

視具體情況而定,建議用 gga,信息相對更全面。

8.6、如何解讀 NMEA 報(bào)文每個字段的含義

參考:NMEA-0183 協(xié)議簡介

8.7、車載使用時需要天線引出到車頂上嗎

1、擋風(fēng)玻璃如果沒有貼膜或者貼了不含金屬材料的膜,可以放在擋風(fēng)玻璃下,但是 GNSS 信號會有一定衰減,在萬不得已的情況下,可以放在擋風(fēng)玻璃下,最好再實(shí)際測試確認(rèn)一下。 2、擋風(fēng)玻璃如果貼了含有金屬材料的膜,則不能放在擋風(fēng)玻璃下,必須將天線到車頂。

8.8、如何輸出原始 NMEA 數(shù)據(jù)

可以通過 exgnss.setup()接口的 bind 參數(shù)進(jìn)行綁定。

wKgZPGkW0WeABRAfAAOwsKKgbGU632.png

今天的內(nèi)容就分享到這里了~


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • GNSS
    +關(guān)注

    關(guān)注

    9

    文章

    1010

    瀏覽量

    51380
  • LuatOS
    +關(guān)注

    關(guān)注

    0

    文章

    171

    瀏覽量

    2748
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    解鎖LuatOS-log棧工程師的日志管理實(shí)戰(zhàn)課!

    針對開發(fā)者設(shè)計(jì)的實(shí)戰(zhàn)教程,本文聚焦LuatOS平臺log的高效使用,從基礎(chǔ)配置到高級調(diào)試策略,手把手教你搭建可
    的頭像 發(fā)表于 05-12 15:23 ?1635次閱讀
    解鎖<b class='flag-5'>LuatOS</b>-log<b class='flag-5'>庫</b>:<b class='flag-5'>全</b>棧工程師的日志管理<b class='flag-5'>實(shí)戰(zhàn)</b>課!

    開發(fā)進(jìn)階指南:LuatOS-log從入門到實(shí)戰(zhàn)

    本文將帶你深入探索LuatOS系統(tǒng)中l(wèi)og的核心原理與實(shí)戰(zhàn)技巧,通過代碼示例解析日志管理、錯誤追蹤及性能優(yōu)化的最佳實(shí)踐,助力棧工程師構(gòu)建更穩(wěn)健的物聯(lián)網(wǎng)應(yīng)用。 今天,我們一起來認(rèn)識
    的頭像 發(fā)表于 05-15 16:12 ?3003次閱讀
    <b class='flag-5'>全</b>棧<b class='flag-5'>開發(fā)進(jìn)階</b>指南:<b class='flag-5'>LuatOS</b>-log<b class='flag-5'>庫</b>從入門到<b class='flag-5'>實(shí)戰(zhàn)</b>!

    Air8000 LuatOS exgnss擴(kuò)展應(yīng)用秘籍:定位開發(fā)避坑指南!

    LuatOS exgnss擴(kuò)展的使用中,開發(fā)者常因坐標(biāo)系誤區(qū)或模式管理不當(dāng)踩坑。本秘籍結(jié)合實(shí)戰(zhàn)
    的頭像 發(fā)表于 11-14 15:26 ?1999次閱讀
    Air8000 <b class='flag-5'>LuatOS</b> <b class='flag-5'>exgnss</b><b class='flag-5'>擴(kuò)展</b><b class='flag-5'>庫</b>應(yīng)用秘籍:定位<b class='flag-5'>開發(fā)</b>避坑指南!

    IN100 MP Tool 擴(kuò)展功能開發(fā)

    擴(kuò)展功能
    橙群微電子
    發(fā)布于 :2023年02月21日 12:12:14

    快速入門——LuatOS:sys多任務(wù)管理實(shí)戰(zhàn)攻略!

    在嵌入式開發(fā)中,多任務(wù)管理是提升系統(tǒng)效率的關(guān)鍵。本教程專為快速入門設(shè)計(jì),聚焦LuatOS的sys,通過實(shí)戰(zhàn)案例帶你快速掌握多任務(wù)創(chuàng)建、調(diào)度與同步技巧。無論你是零基礎(chǔ)新手還是希望快速提
    的頭像 發(fā)表于 05-29 14:36 ?993次閱讀
    快速入門——<b class='flag-5'>LuatOS</b>:sys<b class='flag-5'>庫</b>多任務(wù)管理<b class='flag-5'>實(shí)戰(zhàn)</b>攻略!

    SFUD驅(qū)動實(shí)戰(zhàn)手冊:串行SPI Flash開發(fā)流程解析

    針對嵌入式系統(tǒng)中SPI Flash的多樣化需求,SFUD提供了靈活且通用的解決方案。本文將從環(huán)境配置、初始化、基本操作到高級特性,完整展示SFUD的應(yīng)用流程,并通過具體示例幫助
    的頭像 發(fā)表于 07-29 13:19 ?847次閱讀
    SFUD驅(qū)動<b class='flag-5'>庫</b><b class='flag-5'>實(shí)戰(zhàn)</b>手冊:串行SPI Flash<b class='flag-5'>開發(fā)</b><b class='flag-5'>全</b><b class='flag-5'>流程</b>解析

    告別代碼迷宮!exgnss擴(kuò)展GNSS定位開發(fā)秒變簡單

    還在為GNSS定位的復(fù)雜代碼頭疼?exgnss擴(kuò)展為你掃清障礙!它提供簡潔的接口和高效的工具鏈,從信號捕獲到坐標(biāo)解析一氣呵成,開發(fā)效率直線
    的頭像 發(fā)表于 09-10 17:23 ?911次閱讀
    告別代碼迷宮!<b class='flag-5'>exgnss</b><b class='flag-5'>擴(kuò)展</b><b class='flag-5'>庫</b>讓<b class='flag-5'>GNSS</b>定位<b class='flag-5'>開發(fā)</b>秒變簡單

    簡化定位,從exgnss擴(kuò)展開始:GNSS開發(fā)從此“輕裝上陣”

    面對GNSS定位開發(fā)的重重挑戰(zhàn),exgnss擴(kuò)展為你減負(fù)!它整合了核心算法與硬件適配,開發(fā)者無
    的頭像 發(fā)表于 09-16 17:43 ?927次閱讀
    簡化定位,從<b class='flag-5'>exgnss</b><b class='flag-5'>擴(kuò)展</b><b class='flag-5'>庫</b>開始:<b class='flag-5'>GNSS</b><b class='flag-5'>開發(fā)</b>從此“輕裝上陣”

    LuatOS AGPS 輔助定位開發(fā)實(shí)戰(zhàn)教程

    為解決傳統(tǒng) GPS 定位慢、功耗高的痛點(diǎn),AGPS 技術(shù)通過輔助數(shù)據(jù)注入提升效率。本教程以 LuatOS 開發(fā)環(huán)境為基礎(chǔ),循序漸進(jìn)地講解 AGPS 輔助定位的開發(fā)流程,包括 AGPS
    的頭像 發(fā)表于 10-31 17:34 ?1342次閱讀
    <b class='flag-5'>LuatOS</b> AGPS 輔助定位<b class='flag-5'>開發(fā)</b><b class='flag-5'>實(shí)戰(zhàn)</b>教程

    Air8000-LuatOS exvib擴(kuò)展使用流程實(shí)戰(zhàn)驅(qū)動的操作解析

    在振動傳感領(lǐng)域,Air8000-LuatOS的exvib擴(kuò)展具備顯著優(yōu)勢。本文以實(shí)戰(zhàn)驅(qū)動,詳細(xì)解析其
    的頭像 發(fā)表于 11-04 18:28 ?1237次閱讀
    Air8000-<b class='flag-5'>LuatOS</b> exvib<b class='flag-5'>擴(kuò)展</b><b class='flag-5'>庫</b>使用<b class='flag-5'>全</b><b class='flag-5'>流程</b>:<b class='flag-5'>實(shí)戰(zhàn)</b>驅(qū)動的操作解析

    Air8000-LuatOS exvib擴(kuò)展實(shí)操指南:流程技術(shù)細(xì)節(jié)深度解讀

    掌握exvib擴(kuò)展的使用,是提升Air8000-LuatOS項(xiàng)目開發(fā)效率的關(guān)鍵。本文以流程實(shí)
    的頭像 發(fā)表于 11-01 20:09 ?391次閱讀
    Air8000-<b class='flag-5'>LuatOS</b> exvib<b class='flag-5'>擴(kuò)展</b><b class='flag-5'>庫</b>實(shí)操指南:<b class='flag-5'>全</b><b class='flag-5'>流程</b>技術(shù)細(xì)節(jié)深度解讀

    新手必備:LuatOS MCU核心功能測試與實(shí)踐指南

    新手如何快速掌握MCU芯片級開發(fā)?本文通過LuatOS的MCU核心,全面演示時鐘頻率獲取、唯一ID讀取、高精度計(jì)時、IO復(fù)用配置等核心功能的測試
    的頭像 發(fā)表于 11-12 14:26 ?458次閱讀
    新手必備:<b class='flag-5'>LuatOS</b> MCU核心<b class='flag-5'>庫</b><b class='flag-5'>功能</b>測試與實(shí)踐指南

    LuatOS MCU核心全接觸:新手操作與功能測試攻略!

    開啟芯片級開發(fā)實(shí)戰(zhàn)。 一、MCU核心庫函數(shù)功能 MCU核心LuatOS中封裝MCU一些特殊操作的核心模塊,提供了對MCU底層
    的頭像 發(fā)表于 11-12 14:30 ?388次閱讀
    <b class='flag-5'>LuatOS</b> MCU核心<b class='flag-5'>庫</b>全接觸:新手操作與<b class='flag-5'>功能</b>測試攻略!

    AirCloud平臺+excloud擴(kuò)展:核心功能實(shí)戰(zhàn)應(yīng)用!

    擴(kuò)展的負(fù)載均衡模塊優(yōu)化流量處理,或是利用安全擴(kuò)展功能強(qiáng)化平臺防護(hù)。所有示例均以實(shí)戰(zhàn)落地為核心,拆解操作細(xì)節(jié)與配置邏輯,讓用戶直觀感受二者協(xié)
    的頭像 發(fā)表于 12-24 17:17 ?746次閱讀
    AirCloud平臺+excloud<b class='flag-5'>擴(kuò)展</b><b class='flag-5'>庫</b>:核心<b class='flag-5'>功能</b><b class='flag-5'>實(shí)戰(zhàn)</b>應(yīng)用!

    LuatOS:485 總線硬件設(shè)計(jì)要點(diǎn)與 exmodbus 開發(fā)實(shí)戰(zhàn)

    與 UART 的關(guān)聯(lián)、電平匹配處理及不同防護(hù)等級的 TVS 器件選型,同時介紹 LuatOS 輕量化的 exmodbus 擴(kuò)展,并給出該實(shí)現(xiàn) Modbus RTU 主站通信的代碼示
    的頭像 發(fā)表于 03-19 17:57 ?216次閱讀
    <b class='flag-5'>LuatOS</b>:485 總線硬件設(shè)計(jì)要點(diǎn)與 exmodbus <b class='flag-5'>庫</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實(shí)戰(zhàn)</b>