這個簡單的設備可以跟蹤您孩子的微型車或您配偶的汽車的位置。這涉及通過GPS 定位使用信號。Pytrack 使得創建用于控制對象和車輛的設備變得非常簡單。
快速瀏覽 Pytrack
這是一個通過 GPS 接收器和三軸加速度計豐富 Pycom 系統的設備(參見圖 1)。結果,它允許我們定位我們的位置并確定它的方向。以大型集成電路為代表的 GPS 接收器、12 位三軸加速度計、帶串行訪問的USB 端口和 LiPo 電池充電器都在板上。還有一個用于存儲數據的 SD 卡插槽。即使在“睡眠”模式下,系統消耗的功率也非常少,僅消耗 8 uA。該卡尺寸僅為 55mm x 35mm x 10mm,重 11 克。它可以在 -40 到 +85 攝氏度的溫度范圍內運行。
全球定位系統或全球導航衛星系統?
Pytrack能夠檢測到整個GNSS衛星網絡。這些是屬于不同國家的全球導航衛星系統 (GNSS),而 GPS 僅提供美國衛星。因此,Pytrak 支持俄羅斯的 GLONASS 系統、歐盟的伽利略系統和歐洲航天局 ESA。還支持僅限日本的 QZSS 系統。Pytrack 有一個 GPS(帶有 GLONASS),可以輸出經度、緯度、速度和其他有關當前位置的信息。讓我們看看如何使用 Pytrack 的集成 GPS 模塊來確定用戶在地球上的位置。很可能,必須更新卡固件,并且必須安裝庫。事實上,Pytrack 確實有一個“固件更新模式”,它要求您在按住集成按鈕的同時連接到系統。模式:
- 在“正常”模式下,該卡被操作系統視為串行端口,并由 Windows 自動安裝在設備管理端口(COM 和 LPT)中;
- 在“固件更新”模式下,設備無法自動安裝。您必須通過手動過程安裝設備驅動程序才能將固件更新發送到卡。
程序員可以使用 Pytrack API 與開發板通信。現在讓我們看看 Pytrack 的每個傳感器可用的各種方法和類的詳細信息。對于三軸加速度計(LIS2HH12)的管理,系統使用以下廠商:
LIS2HH12 類(pytrack = 無,sda = 'P22',scl = 'P21')
它創建一個 LIS2HH12 對象并返回與圍繞 3 個軸的加速度和振蕩相關的值。必須將 Pytrack 或 I2C 對象傳遞給制造商才能正確執行操作。可用的方法如下:
此方法從 LIS2HH12 模塊讀取加速度并返回一個包含 3 個加速度值 (G) 的元組。
LIS2HH12.roll()
此方法讀取 LIS2HH12 模塊的當前旋轉并返回其在 -180 和 180 之間的度數,以浮點值表示。
LIS2HH12.pitch()
此方法讀取 LIS2HH12 模塊的當前傾斜度并返回以度數表示的浮點值,范圍從 -90 到 90。當卡片傾斜度超出此范圍時,值會再次重復(取模值)。該系統采用以下制造商進行 GPS(帶 GLONASS)管理,以及接收經度、緯度、速度和其他信息:
L76GNSS 類(pytrack = 無,sda = 'P22',scl = 'P21',超時 = 無)
它創建一個 L76GNSS 對象,該對象返回經度和緯度值。必須向構造函數傳遞 Pytrack 或 I2C 對象才能正確執行操作。超時必須設置以秒為單位的時間段,在此期間系統搜索 GPS 信號。如果在超時到期之前沒有找到連接,該方法將返回值“none”。可用的方法如下:
L76GNSS.坐標(調試 = 假)
該方法從 L76GNSS 讀取經度和緯度,并返回一個包含經度和緯度的元組。將 debug 設置為True,GPS 輸出更加詳細。請注意,每周都會向庫中添加新功能。使用 Pytrack,您可以接收有關設備位置的數據。在以下示例中,我們將了解系統如何將數據保存到 SD 卡。
記住位置
因此,使用 Pytrack,可以收集有關設備位置的數據,從而跟蹤所遵循的路徑(參見圖 2中的示例)。以下示例將說明在 SD 卡上配置和保存檢測到的信息的指南。也可以將項目集成到網絡中,以便將結果轉發到云端。以下源代碼清單通過“sd”對象準備大容量存儲器。存檔文件包含在“/sd”文件夾中,其名稱為“test.txt”。初步但不是強制性的,程序使用 readlines() 方法在控制臺上顯示此存檔的內容。實際代碼包含在執行以下操作的無限“while”循環中:
- L76GNSS使用coordinates()方法從L76GNSS中讀取經緯度,返回一個包含當前位置經緯度的元組;
- 它以“追加”模式打開文件“/sd/test.txt”。每條添加的記錄都將附加到文件的內容中,允許您創建更大的存檔,而不會刪除以前的信息;
- 經度和緯度坐標物理存儲在檔案中,在每行末尾添加“ \ ”字符以轉到下一行;
- 它關閉文件。在寫入操作結束時必須始終遵循此規則;
- 應用程序設置了 10 秒的等待暫停,顯然,用戶可以根據應用程序所需的檢測分辨率進行修改。
因此,即使在錄制操作之后,也可以使用連接到 PC 的 SD 卡讀卡器適配器查閱存檔文件。
進口機
導入數學
進口網絡
導入 操作系統
進口時間
導入 utime
導入gc
導入pycom
從機器導入 RTC
從機器導入 SD
從 L76GNSS 導入 L76GNSS
從 pytrack 導入 Pytrack
從網絡導入WLAN
時間.睡眠(2)
gc .enable()
py = Pytrack()
時間.睡眠(1)
l76 = L76GNSS(py,超時=30,緩沖區=512)
# 加載 SD 卡
sd = SD()
os.mount (sd, '/sd')
os.listdir ('/sd')
# 讀取 SD 卡
print ('從文件中讀取:')
f =打開('/sd/test.txt', 'r')
打印(f.readlines())
f.close()
打印(“從文件中讀取。”)
時間.睡眠(1)
而(真):
坐標 = l76.coordinates()
print(“{} – {}”.format (coord, gc.mem_free()))
f = open('/sd/test.txt' , 'a') # 追加
f.write(“{}”.format(coord [1]) )
f.write(' ')
f.write(“{}”.format(coord [0]) )
f.write(',\ n')
f.close ()
print ('睡眠 10 秒。')
時間.sleep(10)
當然,可以通過進一步的可能性來豐富源列表,以獲取所有類型的統計數據和分析,以使其完美地適應您的需求。例如,可以計算從登記的位置點行駛的道路公里數,記住計算地球表面兩點之間距離的公式如下:
通過取兩個連續點并應用上述公式來計算行進距離非常簡單,該公式使用勾股定理。請記住,由于地球的曲率,結果必須乘以變形系數,等于 0.9996。請記住,距離的計算單位是度,而不是公里。
如何使用日志文件
要注冊當前位置,您必須先等待幾分鐘,讓 Pytrack 與衛星正確同步。因此,最好在開放區域而不是在房屋或建筑物內進行測量。因此,日志文件會按照軟件設置指定的時間間隔創建。最終地圖的分辨率越高,間隔時間越短。有許多方法可以分析旅行期間收集的數據。最有效的方法之一是使用免費的 GpsPrune 軟件,該軟件接受包含旅程坐標的日志文件作為輸入,并在交互式地圖上顯示相關信息,如圖 3所示. 您可以執行任何數據查詢操作,并通過位置記錄文件獲取您需要的所有信息。
以下是管理 GPX 文件并允許您分析 PC 上走過的道路的免費桌面軟件的簡短列表:
- 全球定位系統;
- GPX_編輯器;
- GpsTrackEditor;
結論
Pytrack返回的經緯度可以直接復制粘貼到谷歌地圖搜索框中,在地圖上顯示一個占位符,表示當前位置。
審核編輯:湯梓紅
-
gps
+關注
關注
22文章
2895瀏覽量
166242 -
定位系統
+關注
關注
10文章
584瀏覽量
36482 -
衛星系統
+關注
關注
0文章
73瀏覽量
17416
發布評論請先 登錄
相關推薦
評論