7.10 Fault Diagnosis Section
7.10.1 Overview
Section titled “7.10.1 Overview”The robot provides basic fault diagnosis and health monitoring capabilities, and can monitor common anomalies and faults such as joint overheating, sensor failure, sustained high system load, and low battery level.
There are two core concepts in fault diagnosis: Exception and Alert.
Exception refers to a specific fault, while Alert is the user-friendly message shown in the AimMaster client for that exception. For example, the exception “severe IMU message delay” may correspond to the alert “system abnormality”. In most cases, Exception and Alert are one-to-one, meaning one exception corresponds to one alert code. Different alert codes may still share the same alert text.
If you need continuous monitoring of abnormal robot status, query the current alert list periodically (recommended frequency: 0.2 Hz or lower).
The full list of exceptions and alerts can be found in /agibot/software/v0/config/hds/database/exception_info.yaml on ORIN.
7.10.2 Get Current Alert List RPC Interface
Section titled “7.10.2 Get Current Alert List RPC Interface”| Interface Name | pb:/aimdk.protocol.HDSService/GetAlertList |
|---|---|
| Function Summary | Get the current alert list |
| Interface Type | HTTP JSON RPC |
| URL | http://192.168.100.110:50587/rpc/aimdk.protocol.HDSService/GetAlertList |
| Input Parameters | |
| Output Parameters |
|
| Example Script | examples/hds/get_alert_list.sh |
| Notes |
7.10.3 Other Health Diagnosis Interfaces
Section titled “7.10.3 Other Health Diagnosis Interfaces”In addition to GetAlertList, the following interfaces are also available:
GetTotalAlertList: Get all alerts in the system, including historical records.GetAlertCount: Get the number of currently active alerts.GetExceptionEvent: Get exception events in the system.
These interfaces are relatively verbose or inconvenient for routine usage. For basic alert retrieval, GetAlertList is recommended. Example scripts for all open interfaces are under examples/hds, and detailed input/output fields are omitted here.