Desmond-Dong commited on
Commit
84b1511
·
1 Parent(s): 4519d30

update folder

Browse files
Files changed (1) hide show
  1. ENTITIES.md +0 -488
ENTITIES.md DELETED
@@ -1,488 +0,0 @@
1
- # Reachy Mini Home Assistant 实体使用指南
2
-
3
- 本文档介绍如何在 Home Assistant 中使用 Reachy Mini 暴露的 ESPHome 实体来控制机器人。
4
-
5
- ## 概述
6
-
7
- Reachy Mini HA Voice 应用通过 ESPHome 协议向 Home Assistant 暴露了多个实体,允许你完全控制机器人的运动、电机状态和系统信息。
8
-
9
- ## 实体列表
10
-
11
- ### 📊 Phase 1: 基础状态与音量控制
12
-
13
- #### 1. Daemon State (文本传感器)
14
- - **实体 ID**: `sensor.reachy_mini_daemon_state`
15
- - **类型**: 只读文本传感器
16
- - **说明**: 显示 Reachy Mini Daemon 的当前状态
17
- - **可能的值**:
18
- - `not_initialized` - 未初始化
19
- - `starting` - 启动中
20
- - `running` - 运行中
21
- - `stopping` - 停止中
22
- - `stopped` - 已停止
23
- - `error` - 错误状态
24
- - `not_available` - 机器人不可用(独立模式)
25
-
26
- #### 2. Backend Ready (二进制传感器)
27
- - **实体 ID**: `binary_sensor.reachy_mini_backend_ready`
28
- - **类型**: 只读布尔传感器
29
- - **说明**: 指示后端服务是否就绪
30
- - **值**: `on` (就绪) / `off` (未就绪)
31
-
32
- #### 3. Error Message (文本传感器)
33
- - **实体 ID**: `sensor.reachy_mini_error_message`
34
- - **类型**: 只读文本传感器
35
- - **说明**: 显示当前的错误信息(如果有)
36
-
37
- #### 4. Speaker Volume (数字控制)
38
- - **实体 ID**: `number.reachy_mini_speaker_volume`
39
- - **类型**: 可读写数字控制
40
- - **范围**: 0-100%
41
- - **说明**: 控制扬声器音量
42
- - **使用示例**:
43
- ```yaml
44
- # 设置音量为 80%
45
- service: number.set_value
46
- target:
47
- entity_id: number.reachy_mini_speaker_volume
48
- data:
49
- value: 80
50
- ```
51
-
52
- ---
53
-
54
- ### ⚙️ Phase 2: 电机控制
55
-
56
- #### 5. Motors Enabled (开关)
57
- - **实体 ID**: `switch.reachy_mini_motors_enabled`
58
- - **类型**: 可读写开关
59
- - **说明**: 启用或禁用所有电机的扭矩
60
- - **使用示例**:
61
- ```yaml
62
- # 启用电机
63
- service: switch.turn_on
64
- target:
65
- entity_id: switch.reachy_mini_motors_enabled
66
-
67
- # 禁用电机
68
- service: switch.turn_off
69
- target:
70
- entity_id: switch.reachy_mini_motors_enabled
71
- ```
72
-
73
- #### 6. Motor Mode (选择器)
74
- - **实体 ID**: `select.reachy_mini_motor_mode`
75
- - **类型**: 可读写选择器
76
- - **选项**:
77
- - `enabled` - 电机启用,位置控制
78
- - `disabled` - 电机禁用,无扭矩
79
- - `gravity_compensation` - 重力补偿模式
80
- - **使用示例**:
81
- ```yaml
82
- # 设置为重力补偿模式
83
- service: select.select_option
84
- target:
85
- entity_id: select.reachy_mini_motor_mode
86
- data:
87
- option: gravity_compensation
88
- ```
89
-
90
- #### 7. Wake Up (按钮)
91
- - **实体 ID**: `button.reachy_mini_wake_up`
92
- - **类型**: 按钮
93
- - **说明**: 执行唤醒动画
94
- - **使用示例**:
95
- ```yaml
96
- service: button.press
97
- target:
98
- entity_id: button.reachy_mini_wake_up
99
- ```
100
-
101
- #### 8. Go to Sleep (按钮)
102
- - **实体 ID**: `button.reachy_mini_go_to_sleep`
103
- - **类型**: 按钮
104
- - **说明**: 执行睡眠动画
105
- - **使用示例**:
106
- ```yaml
107
- service: button.press
108
- target:
109
- entity_id: button.reachy_mini_go_to_sleep
110
- ```
111
-
112
- ---
113
-
114
- ### 🎯 Phase 3: 姿态控制
115
-
116
- #### 头部位置控制 (X, Y, Z)
117
-
118
- ##### 9. Head X Position (数字控制)
119
- - **实体 ID**: `number.reachy_mini_head_x`
120
- - **范围**: -50mm ~ +50mm
121
- - **说明**: 控制头部在 X 轴的位置
122
-
123
- ##### 10. Head Y Position (数字控制)
124
- - **实体 ID**: `number.reachy_mini_head_y`
125
- - **范围**: -50mm ~ +50mm
126
- - **说明**: 控制头部在 Y 轴的位置
127
-
128
- ##### 11. Head Z Position (数字控制)
129
- - **实体 ID**: `number.reachy_mini_head_z`
130
- - **范围**: -50mm ~ +50mm
131
- - **说明**: 控制头部在 Z 轴的位置
132
-
133
- **使用示例**:
134
- ```yaml
135
- # 移动头部到指定位置
136
- service: number.set_value
137
- target:
138
- entity_id:
139
- - number.reachy_mini_head_x
140
- - number.reachy_mini_head_y
141
- - number.reachy_mini_head_z
142
- data:
143
- value: 10 # 每个轴移动 10mm
144
- ```
145
-
146
- #### 头部角度控制 (Roll, Pitch, Yaw)
147
-
148
- ##### 12. Head Roll (数字控制)
149
- - **实体 ID**: `number.reachy_mini_head_roll`
150
- - **范围**: -40° ~ +40°
151
- - **说明**: 控制头部翻滚角(左右倾斜)
152
-
153
- ##### 13. Head Pitch (数字控制)
154
- - **实体 ID**: `number.reachy_mini_head_pitch`
155
- - **范围**: -40° ~ +40°
156
- - **说明**: 控制头部俯仰角(上下点头)
157
-
158
- ##### 14. Head Yaw (数字控制)
159
- - **实体 ID**: `number.reachy_mini_head_yaw`
160
- - **范围**: -180° ~ +180°
161
- - **说明**: 控制头部偏航角(左右转头)
162
-
163
- **使用示例**:
164
- ```yaml
165
- # 让机器人点头(pitch = -20°)
166
- service: number.set_value
167
- target:
168
- entity_id: number.reachy_mini_head_pitch
169
- data:
170
- value: -20
171
-
172
- # 让机器人摇头(yaw 左右摆动)
173
- service: number.set_value
174
- target:
175
- entity_id: number.reachy_mini_head_yaw
176
- data:
177
- value: 30
178
- ```
179
-
180
- #### 身体控制
181
-
182
- ##### 15. Body Yaw (数字控制)
183
- - **实体 ID**: `number.reachy_mini_body_yaw`
184
- - **范围**: -160° ~ +160°
185
- - **说明**: 控制身体的偏航角(旋转)
186
-
187
- **使用示例**:
188
- ```yaml
189
- # 旋转身体 45 度
190
- service: number.set_value
191
- target:
192
- entity_id: number.reachy_mini_body_yaw
193
- data:
194
- value: 45
195
- ```
196
-
197
- #### 天线控制
198
-
199
- ##### 16. Left Antenna (数字控制)
200
- - **实体 ID**: `number.reachy_mini_antenna_left`
201
- - **范围**: -90° ~ +90°
202
- - **说明**: 控制左天线角度
203
-
204
- ##### 17. Right Antenna (数字控制)
205
- - **实体 ID**: `number.reachy_mini_antenna_right`
206
- - **范围**: -90° ~ +90°
207
- - **说明**: 控制右天线角度
208
-
209
- **使用示例**:
210
- ```yaml
211
- # 让天线竖起来表示兴奋
212
- service: number.set_value
213
- target:
214
- entity_id:
215
- - number.reachy_mini_antenna_left
216
- - number.reachy_mini_antenna_right
217
- data:
218
- value: 45
219
- ```
220
-
221
- ---
222
-
223
- ## 自动化示例
224
-
225
- ### 示例 1: 早晨唤醒机器人
226
-
227
- ```yaml
228
- automation:
229
- - alias: "早晨唤醒 Reachy Mini"
230
- trigger:
231
- - platform: time
232
- at: "08:00:00"
233
- action:
234
- - service: button.press
235
- target:
236
- entity_id: button.reachy_mini_wake_up
237
- - service: number.set_value
238
- target:
239
- entity_id: number.reachy_mini_speaker_volume
240
- data:
241
- value: 70
242
- ```
243
-
244
- ### 示例 2: 晚上让机器人睡觉
245
-
246
- ```yaml
247
- automation:
248
- - alias: "晚上 Reachy Mini 睡觉"
249
- trigger:
250
- - platform: time
251
- at: "22:00:00"
252
- action:
253
- - service: button.press
254
- target:
255
- entity_id: button.reachy_mini_go_to_sleep
256
- - service: switch.turn_off
257
- target:
258
- entity_id: switch.reachy_mini_motors_enabled
259
- ```
260
-
261
- ### 示例 3: 有人回家时打招呼
262
-
263
- ```yaml
264
- automation:
265
- - alias: "Reachy Mini 打招呼"
266
- trigger:
267
- - platform: state
268
- entity_id: binary_sensor.front_door
269
- to: "on"
270
- condition:
271
- - condition: state
272
- entity_id: binary_sensor.reachy_mini_backend_ready
273
- state: "on"
274
- action:
275
- # 点头
276
- - service: number.set_value
277
- target:
278
- entity_id: number.reachy_mini_head_pitch
279
- data:
280
- value: -20
281
- - delay: "00:00:01"
282
- - service: number.set_value
283
- target:
284
- entity_id: number.reachy_mini_head_pitch
285
- data:
286
- value: 0
287
- # 天线摆动
288
- - service: number.set_value
289
- target:
290
- entity_id:
291
- - number.reachy_mini_antenna_left
292
- - number.reachy_mini_antenna_right
293
- data:
294
- value: 45
295
- - delay: "00:00:01"
296
- - service: number.set_value
297
- target:
298
- entity_id:
299
- - number.reachy_mini_antenna_left
300
- - number.reachy_mini_antenna_right
301
- data:
302
- value: 0
303
- ```
304
-
305
- ### 示例 4: 根据后端状态显示通知
306
-
307
- ```yaml
308
- automation:
309
- - alias: "Reachy Mini 错误通知"
310
- trigger:
311
- - platform: state
312
- entity_id: sensor.reachy_mini_daemon_state
313
- to: "error"
314
- action:
315
- - service: notify.mobile_app
316
- data:
317
- title: "Reachy Mini 错误"
318
- message: "{{ states('sensor.reachy_mini_error_message') }}"
319
- ```
320
-
321
- ### 示例 5: 创建自定义动作序列
322
-
323
- ```yaml
324
- script:
325
- reachy_mini_dance:
326
- alias: "Reachy Mini 跳舞"
327
- sequence:
328
- # 启用电机
329
- - service: switch.turn_on
330
- target:
331
- entity_id: switch.reachy_mini_motors_enabled
332
- # 左右摇头
333
- - repeat:
334
- count: 3
335
- sequence:
336
- - service: number.set_value
337
- target:
338
- entity_id: number.reachy_mini_head_yaw
339
- data:
340
- value: 30
341
- - delay: "00:00:00.5"
342
- - service: number.set_value
343
- target:
344
- entity_id: number.reachy_mini_head_yaw
345
- data:
346
- value: -30
347
- - delay: "00:00:00.5"
348
- # 回到中心
349
- - service: number.set_value
350
- target:
351
- entity_id: number.reachy_mini_head_yaw
352
- data:
353
- value: 0
354
- # 天线摆动
355
- - service: number.set_value
356
- target:
357
- entity_id:
358
- - number.reachy_mini_antenna_left
359
- - number.reachy_mini_antenna_right
360
- data:
361
- value: 60
362
- - delay: "00:00:01"
363
- - service: number.set_value
364
- target:
365
- entity_id:
366
- - number.reachy_mini_antenna_left
367
- - number.reachy_mini_antenna_right
368
- data:
369
- value: 0
370
- ```
371
-
372
- ---
373
-
374
- ## Lovelace 仪表板示例
375
-
376
- ### 基础控制卡片
377
-
378
- ```yaml
379
- type: vertical-stack
380
- cards:
381
- - type: entities
382
- title: Reachy Mini 状态
383
- entities:
384
- - entity: sensor.reachy_mini_daemon_state
385
- name: Daemon 状态
386
- - entity: binary_sensor.reachy_mini_backend_ready
387
- name: 后端就绪
388
- - entity: sensor.reachy_mini_error_message
389
- name: 错误信息
390
-
391
- - type: entities
392
- title: 电机控制
393
- entities:
394
- - entity: switch.reachy_mini_motors_enabled
395
- name: 电机开关
396
- - entity: select.reachy_mini_motor_mode
397
- name: 电机模式
398
- - entity: button.reachy_mini_wake_up
399
- name: 唤醒
400
- - entity: button.reachy_mini_go_to_sleep
401
- name: 睡眠
402
-
403
- - type: entities
404
- title: 音量控制
405
- entities:
406
- - entity: number.reachy_mini_speaker_volume
407
- name: 扬声器音量
408
- ```
409
-
410
- ### 头部控制卡片
411
-
412
- ```yaml
413
- type: vertical-stack
414
- cards:
415
- - type: entities
416
- title: 头部位置 (mm)
417
- entities:
418
- - entity: number.reachy_mini_head_x
419
- name: X 轴
420
- - entity: number.reachy_mini_head_y
421
- name: Y 轴
422
- - entity: number.reachy_mini_head_z
423
- name: Z 轴
424
-
425
- - type: entities
426
- title: 头部角度 (°)
427
- entities:
428
- - entity: number.reachy_mini_head_roll
429
- name: 翻滚 (Roll)
430
- - entity: number.reachy_mini_head_pitch
431
- name: 俯仰 (Pitch)
432
- - entity: number.reachy_mini_head_yaw
433
- name: 偏航 (Yaw)
434
-
435
- - type: entities
436
- title: 身体与天线
437
- entities:
438
- - entity: number.reachy_mini_body_yaw
439
- name: 身体偏航
440
- - entity: number.reachy_mini_antenna_left
441
- name: 左天线
442
- - entity: number.reachy_mini_antenna_right
443
- name: 右天线
444
- ```
445
-
446
- ---
447
-
448
- ## 注意事项
449
-
450
- 1. **电机安全**: 在控制姿态之前,确保电机已启用 (`switch.reachy_mini_motors_enabled` 为 `on`)
451
-
452
- 2. **角度限制**: 所有角度控制都有安全限制,超出范围的值会被自动限制在有效范围内
453
-
454
- 3. **独立模式**: 如果机器人不可用(独立模式),控制命令不会产生错误,但也不会执行任何动作
455
-
456
- 4. **平滑运动**: 快速连续的控制命令可能导致不平滑的运动,建议在命令之间添加适当的延迟
457
-
458
- 5. **状态更新**: 实体状态会实时更新,但某些传感器可能有轻微延迟
459
-
460
- ---
461
-
462
- ## 故障排除
463
-
464
- ### 问题: 实体不显示在 Home Assistant 中
465
- **解决方案**:
466
- - 确认 Reachy Mini HA Voice 应用正在运行
467
- - 检查 ESPHome 集成是否正确配置
468
- - 重启 Home Assistant 或重新加载 ESPHome 集成
469
-
470
- ### 问题: 控制命令无响应
471
- **解决方案**:
472
- - 检查 `binary_sensor.reachy_mini_backend_ready` 是否为 `on`
473
- - 查看 `sensor.reachy_mini_error_message` 是否有错误信息
474
- - 确认电机已启用(对于运动控制)
475
-
476
- ### 问题: Daemon 状态显示 "error"
477
- **解决方案**:
478
- - 查看 `sensor.reachy_mini_error_message` 获取详细错误信息
479
- - 检查 Reachy Mini 硬件连接
480
- - 重启 Reachy Mini HA Voice 应用
481
-
482
- ---
483
-
484
- ## 更多信息
485
-
486
- - [项目 GitHub](https://github.com/yourusername/reachy_mini_ha_voice)
487
- - [Reachy Mini SDK 文档](https://github.com/pollen-robotics/reachy_mini)
488
- - [Home Assistant ESPHome 集成](https://www.home-assistant.io/integrations/esphome/)