You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ThingsBoard中基于经纬度查询指定区域内的设备

在ThingsBoard中查询指定区域内的设备

针对你提到的两种区域类型,可通过ThingsBoard的实体遥测过滤器实现设备筛选,具体方案如下:

1. 基于半径+中心点经纬度的查询

利用ThingsBoard内置的distance()地理空间函数,计算设备上报的经纬度与中心点的球面距离(单位:米),筛选距离小于等于指定半径的设备。

筛选表达式格式:

distance(latitude, longitude, <中心点纬度>, <中心点经度>) <= <半径(米)>

示例:

若中心点为北纬39.9042°、东经116.4074°,查询半径5000米内的设备,表达式为:

distance(latitude, longitude, 39.9042, 116.4074) <= 5000

2. 基于矩形区域(左上角+右下角坐标)的查询

通过判断设备经纬度是否落在矩形的坐标范围内实现筛选:纬度需在矩形上下边界之间,经度需在左右边界之间。

筛选表达式格式:

latitude >= <右下角纬度> AND latitude <= <左上角纬度> AND longitude >= <左上角经度> AND longitude <= <右下角经度>

(注:若左上角纬度小于右下角纬度,需交换两者取min/max范围;经度同理)

示例:

若矩形左上角坐标为北纬40.0°、东经116.3°,右下角为北纬39.8°、东经116.5°,表达式为:

latitude >= 39.8 AND latitude <= 40.0 AND longitude >= 116.3 AND longitude <= 116.5

通用操作步骤:

  1. 登录ThingsBoard控制台,进入实体管理页面;
  2. 点击添加过滤器,选择遥测过滤器;
  3. 在表达式输入框中填入对应筛选公式,选择目标设备类型;
  4. 确认条件后,页面将自动展示符合区域要求的设备。

注意:需确保设备已上报过latitude和longitude遥测数据,筛选默认取设备最新遥测值,若需基于历史时间点筛选,可额外添加时间范围条件。

内容的提问来源于stack exchange,提问作者saeid rastak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 16:51:04