數據緩衝區概述(Data Buffer Overview)
前言大綱
“數據緩衝區”是一個系統,它使 API 客戶端能夠使用 API 將數據記錄到機器人。 這些數據與內部機器人服務記錄的數據相結合,讓用戶更好地了解機器人操作,並為開發人員提供更好的工具來開發和調試他們的新服務。 客戶端能夠查詢機器人數據服務以獲取有關存儲在機器人上的數據的信息,以及從 HTTP 服務器下載數據。 數據獲取服務使用數據緩衝區作為存儲獲取的傳感器數據的機制。
機器人分配 60 GB 用於數據緩衝存儲。 記錄的數據保存在數據頁中的持久存儲中。 在 Spot v2.1 中,所有數據頁都是磁盤上的 BDDF 文件。 當超過 60 GB 的限制時,數據文件將按最舊優先的順序刪除,直到這些文件使用的磁盤空間低於該臨界值。
支持的數據類型
短信Text Messages
操作員評論
事件
事件消息被附加到機器人事件日記中,從而能夠構建機器人或任務時間線。 典型用途包括機器人跌倒或校準事件,但客戶可以添加任何在審查任務或機器人性能時有用的上下文構建事件。 每個事件都記錄有一個“級別”枚舉,指定事件的重要性或關鍵性。 大多數事件將以 LOW、MEDIUM 或 HIGH 級別枚舉,但最重要的事件可能會枚舉為 MISSION_CRITICAL 或 SYSTEM_CRITICAL。 客戶端可以選擇任何合適的級別,但 SYSTEM_CRITICAL 事件准保留用於波士頓動力公司生成的內部事件。 客戶端可以通過 RecordEvents RPC 記錄事件。
信號
Blobs二進位大型物件
Blob 消息使客戶端能夠將任意二進制消息數據記錄到機器人。 例如,這可能包括傳感器數據產品、用戶定義的結構和消息、整個文件等。數據緩衝區本身不解析二進制數據,但要求客戶端在日誌記錄請求中指定 type_id 和 channel通道。 type_id 指定存儲在不透明 blob 中的數據類型,後處理所需。 channel 通道是一系列消息的名稱。 客戶端可以通過 RecordDataBlobs RPC 記錄 blob。 數據採集系統Data Acquisition system 將採集的數據作為 blob 記錄到數據緩衝區中,以備日後檢索。
內部日誌的數據
數據服務
- 查詢包含指定時間範圍內數據的頁面
- 查詢記錄到機器人的事件和評論
- 查詢整體數據緩衝區狀態,包括當前記錄到機器人的數據量
- 刪除機器人上的單個數據頁
資料下載
原始數據下載
- from_sec 或 from_nsec:如果設置,則在指定的紀元時間之後下載數據,分別以秒和納秒為單位。
- to_sec 或 to_nsec:如果設置,則在指定的紀元時間之前下載數據,分別以秒和納秒為單位。
- type:過濾 blob 的 type_id。
- channel:過濾 blob 的通道。
- schema_name:過濾schema和信號消息的模式名稱。
- schema_source:過濾信號消息的schema源。
- grpc_service:按名稱過濾 grpc 服務。
- event_level_min:按級別過濾事件。
數據採集下載Data Acquisition Download
- from_sec 或 from_nsec:如果設置,則在指定的紀元時間之後下載數據,分別以秒和納秒為單位。這些是相互排斥的,並且只能指定一次。
- to_sec 或 to_nsec:如果設置,則在指定的紀元時間之前下載數據,分別以秒和納秒為單位。這些是相互排斥的,並且只能指定一次。
- channel:過濾與記錄的 blob 關聯的通道channel。可以指定零次或多次。
授權
範例
curl -O -J \
-H "Authorization: Bearer $(cat user.token)"
"https://$ROBOT/v1/data-buffer/daq-data/?from_sec=1601524800&to_sec=1601611200"
BDDF (Boston Dynamics Data Format)
參考資料
- Data Buffer Overview
- Blobs : 二進位大型物件,在資料庫管理系統中,將二進位資料儲存為一個單一個體的集合。Blob通常是影像、聲音或多媒體檔案。 它由迪吉多公司的工程師吉姆·史塔基發明。 常作為專有軟體的資料儲存型式,其格式由軟體開發者自訂,且非人類可讀的特性,使其在儲存、流通上達到閉源效果。
- epoch :時代,紀元
留言
張貼留言
Aron阿龍,謝謝您的留言互動!