物聯網平臺二維數據可視化服務支持設備定位,目前支持的定位方式有設備屬性上報位置(Geolocation)、控制臺設置經緯度和云端推理經緯度三種。本文主要介紹使用設備屬性上報位置(Geolocation)方法為設備定位,即確定設備經緯度。
若設備具有GPS模組,則直接上報經緯度,此時使用設備屬性上報位置(Geolocation)方法定位設備,具體操作請見下文。
操作步驟
- 在物聯網平臺控制臺,創建一個產品。詳情請參見創建產品。
說明 若已為設備創建所屬的產品,則無需重新創建。
- 左側導航欄選擇設備管理 > 產品,在設備所屬產品的右側操作欄中單擊查看。
- 參考單個添加物模型,在產品詳情頁面,選擇功能定義頁簽,為產品添加標準功能。
在系統彈出的添加標準功能對話框中,選擇其他類型的功能,搜索地理位置。
- 在搜索結果列表中單擊需要的地理位置功能,則功能會添加到已選功能列表下,然后單擊確定。
如果您不想按標準屬性添加地理位置,可以在產品詳情頁面功能定義頁簽自定義功能區域框中添加如下配置。說明 建議您選擇標準功能,為設備所屬產品添加地理位置屬性。
表 1. 參數說明 功能名稱 標識符 數據類型 JSON對象參數標識符 參數數據類型 參數解釋 地理位置 GeoLocation struct(結構體) Longitude double 自定義設置,用于上報地理位置中的經度。 Latitude double 自定義設置,用于上報地理位置中的緯度。 Altitude double 自定義設置,用于上報地理位置中的高度。 CoordinateSystem enum - 1:WGS_84
- 2:GCJ_02
自定義一個坐標系統,為了描述或確定位置,必須建立坐標系統,坐標只有存在于某個坐標系統才有實際的意義與具體的位置。以下是兩種不同類型的坐標類型: - WGS_84:國際經緯度坐標標準。
- GCJ_02:由國測局制定,是對地理位置進行首次加密后的一種坐標類型。
說明- 自定義設置以上JSON對象時,經度、緯度和坐標系統必須定義,高度可以根據實際情況進行添加或刪除。經度、緯度子參數的屬性名L必須大寫,坐標系統的C必須大寫。
- 如果以上四個參數您都定義了,則上報數據里時就必須包含這四個參數的數據。
- 設備會通過標準的設備協議上報位置到云端。
設備上報協議:
- TOPIC:
/sys/{productKey}/{deviceName}/thing/event/property/post
- REPLY TOPIC:
/sys/{productKey}/{deviceName}/thing/event/property/post_reply
請求示例如下所示。
{ "id" : "123", "version":"1.0", "params" : { "GeoLocation" : { "value":{ "Longitude":39.9935723, "Latitude":39.9935723, "Altitude":39.9935723, "CoordinateSystem":2 } } }, "method":"thing.event.property.post" }
關于上報設備信息的詳細說明請參見設備屬性、事件、服務。
- TOPIC: