现在正在研究这个ESPresense的多节点定位,不知道它是否支持在一个房间内布设多个节点以提高定位精准度?如果支持的话,那布设在同一房间内的多个节点要怎么命名呢?
比如这个,我在客厅的3个角落各布设了1个节点,然后厨房里也布设了一个:
上面的四个字母数字命名的节点都是我刷好的ESP32,然后根据文档的说明,在节点的ROOM里填写好了各自所在的房间:
结果就像上一张图显示的那样,同一个房间的节点只显示一个,你点“visit”就会随机进入其中的一个节点……
然后MQTT里显示就变成了这样:
名称全变成一样的了,“区域”倒是显示它们各自的名字。
然后随便点开一个,就会发现它们的状态基本上就是在断开和恢复连接之间反复横跳……
接下来就不知道该如何设置了……
另外就是,ESPresense这个集成提供了平面图显示,然而问题是根据它的说明,我在https://espresense.com/Floorplan-Creator/上简单地画了客厅和厨房两个房间并且转换成YAML之后,进入到加载项里面发现没有显示任何房间(顺便说一下这里似乎是支持在一个房间内布设多个ESP32节点的,只是不知道如何定义某个节点位于哪个房间的哪个位置):
以下是YAML的部分内容:
# How long before device considered stale
timeout: 30
# How long before device is considered away
away_timeout: 120
optimization:
enabled: true
interval_secs: 3600
limits:
absorption_min: 2.5
absorption_max: 3.5
tx_ref_rssi_min: -70
tx_ref_rssi_max: -50
rx_adj_rssi_min: -15
rx_adj_rssi_max: 20
weighting:
algorithm: gaussian
props:
sigma: 0.10
# Floors w/ the points to draw it in meters
floors:
- id: first
name: First Floor
# Bounds (x,y,z) of map in meters
bounds: [[0, 0, 0], [17, 18, 1.5]]
rooms:
- name: Livingroom
points:
- [ 0, 3.81]
- [ 5.81, 3.81]
- [ 5.81, 0]
- [ 0, 0]
- [ 0, 3.81]
- name: kitchen
points:
- [ 5.81, 2.99]
- [ 10.41, 2.99]
- [ 10.41, 0.01]
- [ 5.81, 0.01]
- [ 5.81, 2.99]
nodes:
- name: Livingroom-undefined
point: [0.36,0.28, 0]
floors: ["first"]
- name: Livingroom-undefined
point: [0.82,3.67, 0]
floors: ["first"]
- name: Livingroom-undefined
point: [4.4,0.27, 0]
floors: ["first"]
- name: kitchen-undefined
point: [9.85,0.31, 0]
floors: ["first"]
# Devices to track
devices:
- name: "*" # Track all named devices
- id: "tile:*" # Track all tiles
- id: "irk:*" # Track all IRKs
- id: "watch:*"
- id: "phone:*"
- id: "wallet:*"
- id: "keys:*"
- id: "therm:*"
- id: "iBeacon:*"
当然这里显示的也是“kitchen-undefined”这样的节点名称,但是并不知道接下来要如何定义它们,比如它们实际上是位于哪个房间之类的……
另外根据最后追踪设备的设置,这里应该是会追踪所发现的所有设备(因为都是*),然而事实上它们没追踪任何设备:
而且官方文档里在这里就停住了,也没有说明应该如何定义设备……
不知道有玩ESPresense的大神没,敬请赐教……
|