zy上云api


属性上报

<p>以下是无人机属性上报的详细文档描述:</p> <h3>1. 功能描述</h3> <p>无人机通过 WebSocket 向服务器上报其当前的属性信息,例如电池电量、飞行高度、GPS 坐标等。这些属性信息将根据物模型定义的格式进行上报。</p> <h3>2. 无人机属性上报的消息结构</h3> <p>以下是无人机属性上报的消息结构示例,采用 JSON 格式:</p> <pre><code class="language-json">{ &amp;quot;bid&amp;quot;: &amp;quot;17472895486572366&amp;quot;, // 响应某次指令的标识符(业务ID) &amp;quot;data&amp;quot;: { &amp;quot;properties&amp;quot;: { &amp;quot;alt&amp;quot;: 0.0, // 相对高度 (单位: 米) &amp;quot;asl&amp;quot;: 0.0, // 海拔高度 (单位: 米) &amp;quot;armed&amp;quot;: false, // 是否已解锁(飞控是否已解锁) &amp;quot;battery_current&amp;quot;: 0.0, // 当前电流 (单位: 安) &amp;quot;battery_remaining&amp;quot;: 0, // 电池剩余百分比 (单位: %) &amp;quot;battery_voltage&amp;quot;: 0.0, // 当前电压 (单位: 伏) &amp;quot;cloud_status&amp;quot;: false, // 是否连接至云端 &amp;quot;fly_distance&amp;quot;: 0.0, // 飞行距离 (单位: 米) &amp;quot;fly_time&amp;quot;: 0, // 飞行时间 (单位: 毫秒) &amp;quot;front_avoid_distance&amp;quot;: 0.0, // 前方避障距离 (单位: 米) &amp;quot;front_avoid_switch&amp;quot;: false, // 前方避障是否启用 &amp;quot;gimbal_mode&amp;quot;: 2, // 云台控制模式 (0: Free, 1: FPV, 2: Yaw Follow 等) &amp;quot;gimbal_pitch&amp;quot;: 0.0, // 云台 Pitch 角度 (单位: 度) &amp;quot;gimbal_roll&amp;quot;: 0.0, // 云台 Roll 角度 (单位: 度) &amp;quot;gimbal_yaw&amp;quot;: 0.0, // 云台 Yaw 角度 (单位: 度) &amp;quot;gohome_altitude&amp;quot;: 0.0, // 返航高度设置值 (单位: 米) &amp;quot;hfov&amp;quot;: 0.0, // 水平视场角 (单位: 度) &amp;quot;home_latitude&amp;quot;: 0.0, // 返航点纬度 &amp;quot;home_longitude&amp;quot;: 0.0, // 返航点经度 &amp;quot;horizontal_speed&amp;quot;: 0.0, // 水平速度 (单位: 米/秒) &amp;quot;landed_state&amp;quot;: false, // 是否处于降落状态 &amp;quot;latitude&amp;quot;: 0.0, // 当前纬度 &amp;quot;lens_type&amp;quot;: 0, // 镜头类型 (0: 普通, 1: 红外, 2: 变焦等) &amp;quot;longitude&amp;quot;: 0.0, // 当前经度 &amp;quot;lost_action&amp;quot;: 0, // 失联动作 (0: 悬停, 1: 降落, 2: 返航) &amp;quot;main_current&amp;quot;: 0.0, // 主电机电流 (单位: 安) &amp;quot;main_power&amp;quot;: 0.0, // 主电机功率 (单位: 瓦) &amp;quot;main_rpm&amp;quot;: 0, // 主电机转速 (单位: RPM) &amp;quot;main_temp&amp;quot;: 0.0, // 主电机温度 (单位: ℃) &amp;quot;flight_mode&amp;quot;: 1, // 飞行状态 &amp;quot;params&amp;quot;: { &amp;quot;avoid_enable&amp;quot;: false, // 是否启用避障功能 &amp;quot;avoid_margin&amp;quot;: 0.0, // 避障边距 (单位: 米) &amp;quot;batt2_fs_low_act&amp;quot;: 0, // 电池2低电压触发动作 &amp;quot;batt2_low_volt&amp;quot;: 0.0, // 电池2低电压阈值 &amp;quot;batt_fs_low_act&amp;quot;: 0, // 电池低电触发动作 &amp;quot;batt_low_volt&amp;quot;: 0.0, // 电池低电压阈值 &amp;quot;fence_enable&amp;quot;: false, // 是否启用围栏限制 &amp;quot;fence_radius&amp;quot;: 0.0, // 围栏半径 (单位: 米) &amp;quot;fs_gcs_enable&amp;quot;: false, // 是否启用 GCS 通信丢失 failsafe &amp;quot;fs_options&amp;quot;: 0, // failsafe 配置选项 &amp;quot;gps_bds_status&amp;quot;: false, // GPS/北斗是否正常 &amp;quot;gps_type&amp;quot;: 0, // GPS 类型 (0: 无, 1: GPS, 2: 北斗等) &amp;quot;product_id&amp;quot;: 0, // 产品型号 ID &amp;quot;prx_type&amp;quot;: 0, // 避障雷达类型 &amp;quot;psc_posxy_p&amp;quot;: 0.0, // 位置控制 PID 参数 P &amp;quot;rtl_alt&amp;quot;: 0.0, // 返航高度 (单位: 米) &amp;quot;rtl_alt_final&amp;quot;: 0.0, // 最终返航高度 (单位: 米) &amp;quot;sta_xy_amax&amp;quot;: 0.0, // XY 最大加速度 (单位: m/s²) &amp;quot;sta_xy_vmax&amp;quot;: 0.0, // XY 最大速度 (单位: m/s) &amp;quot;wpnav_accel&amp;quot;: 0.0, // 航点加速度 (单位: m/s²) &amp;quot;wpnav_speed&amp;quot;: 0.0, // 航点飞行速度 (单位: m/s) &amp;quot;wpnav_speed_dn&amp;quot;: 0.0, // 下降速度 (单位: m/s) &amp;quot;wpnav_speed_up&amp;quot;: 0.0 // 上升速度 (单位: m/s) }, &amp;quot;imu1&amp;quot;: { &amp;quot;accel_norm&amp;quot;: 1001.0, // IMU1 加速度模值 (单位: m/s²) &amp;quot;gyro_norm&amp;quot;: 3.464101552963257, // IMU1 陀螺仪模值 (单位: rad/s) &amp;quot;mag_norm&amp;quot;: 453.83477783203125 // IMU1 磁力计模值 (单位: μT) }, &amp;quot;imu2&amp;quot;: { &amp;quot;accel_norm&amp;quot;: 1001.0, // IMU2 加速度模值 (单位: m/s²) &amp;quot;gyro_norm&amp;quot;: 3.464101552963257, // IMU2 陀螺仪模值 (单位: rad/s) &amp;quot;mag_norm&amp;quot;: 453.83477783203125 // IMU2 磁力计模值 (单位: μT) }, &amp;quot;imu3&amp;quot;: { &amp;quot;accel_norm&amp;quot;: 1001.0, // IMU3 加速度模值 (单位: m/s²) &amp;quot;gyro_norm&amp;quot;: 3.464101552963257, // IMU3 陀螺仪模值 (单位: rad/s) &amp;quot;mag_norm&amp;quot;: 453.83477783203125 // IMU3 磁力计模值 (单位: μT) }, &amp;quot;compass_variance&amp;quot;: 0.0, // 磁罗盘方差 &amp;quot;ekf_variance&amp;quot;: 0.0, // EKF 方差 &amp;quot;vibration&amp;quot;: 0.0, // 振动值 &amp;quot;pitch&amp;quot;: 0.0, // 飞行器 Pitch 姿态角 (单位: 度) &amp;quot;roll&amp;quot;: 0.0, // 飞行器 Roll 姿态角 (单位: 度) &amp;quot;satellites_visible&amp;quot;: 0, // 当前可见卫星数量 &amp;quot;signal_strength&amp;quot;: 0, // 信号强度 (0–5) &amp;quot;sn&amp;quot;: &amp;quot;000000&amp;quot;, // 飞行器序列号 &amp;quot;tail_current&amp;quot;: 0.0, // 尾电机电流 (单位: 安) &amp;quot;tail_power&amp;quot;: 0.0, // 尾电机功率 (单位: 瓦) &amp;quot;tail_rpm&amp;quot;: 0, // 尾电机转速 (单位: RPM) &amp;quot;tail_temp&amp;quot;: 0.0, // 尾电机温度 (单位: ℃) &amp;quot;vertical_speed&amp;quot;: 0.0, // 垂直速度 (单位: 米/秒) &amp;quot;vfov&amp;quot;: 0.0, // 垂直视场角 (单位: 度) &amp;quot;video_source&amp;quot;: 2, // 当前视频源 (0: FPV, 1: 云台, 2: 其他) &amp;quot;yaw&amp;quot;: 0.0, // 飞行器航向角 Yaw (单位: 度) &amp;quot;zoom_factor&amp;quot;: 0.0 // 当前变焦倍数 } }, &amp;quot;method&amp;quot;: &amp;quot;reportProperties&amp;quot;, // 上报类型:属性上报 &amp;quot;tid&amp;quot;: &amp;quot;1747289548657-6957&amp;quot;, // 请求的唯一事务 ID &amp;quot;timestamp&amp;quot;: 1747289548657 // 时间戳(单位: 毫秒) }</code></pre> <p>以下是 flight_mode 枚举的详细定义说明:</p> <table> <thead> <tr> <th>枚举值 (Value)</th> <th>枚举名称 (Enum Name)</th> <th>描述 (Description)</th> </tr> </thead> <tbody> <tr> <td>0</td> <td>NotConnected</td> <td>飞行器未连接</td> </tr> <tr> <td>1</td> <td>Standby</td> <td>起飞准备完成</td> </tr> <tr> <td>2</td> <td>Manual</td> <td>手动飞行</td> </tr> <tr> <td>3</td> <td>AltitudeHold</td> <td>高度保持</td> </tr> <tr> <td>4</td> <td>PositionHold</td> <td>定点悬停</td> </tr> <tr> <td>5</td> <td>AutoMission</td> <td>航线飞行</td> </tr> <tr> <td>6</td> <td>RTL</td> <td>返航</td> </tr> <tr> <td>7</td> <td>Land</td> <td>降落</td> </tr> <tr> <td>8</td> <td>Failsafe</td> <td>失联</td> </tr> <tr> <td>17</td> <td>Brake</td> <td>急停</td> </tr> <tr> <td>99</td> <td>Unknown</td> <td>未知模式</td> </tr> </tbody> </table>

页面列表

ITEM_HTML