thingsboard-client-demo/src/main/java/com/tuoheng/machine/status/DroneState.java

105 lines
2.0 KiB
Java
Raw Normal View History

package com.tuoheng.machine.status;
2025-12-15 18:54:44 +08:00
2025-12-16 13:47:32 +08:00
/**
* 分为准备中 -> 飞行中 -> 返航 三个大状态
*
* 飞行中
* 飞行中 可以变到指点
* 指点操作 可以返航指点 飞行中
* 急停 可以返航指点飞行中
* 到达目的地 (可以指点和返航)
*
* 返航
* 返航中 不可以指点
* 急停 一键起飞和航线飞行都可以指点
* 指点操作 可以返航中急停返航完成
* 返航完成 (不可往回变为返航中和急停)
*
* 指点操作细分为准备指点 指点飞行中 指点完成 指点被取消
*/
2025-12-15 18:54:44 +08:00
public enum DroneState {
2025-12-16 13:47:32 +08:00
/**
* 未知状态服务器重启后的初始状态等待第一次心跳同步
*/
UNKNOWN,
/**
* 离线
*/
OFFLINE,
// ==================== 准备阶段 ====================
/**
* 准备中
*/
PREPARING,
// ==================== 飞行阶段(父状态) ====================
/**
* 飞行中父状态
*/
FLYING_PARENT,
/**
* 飞行中
*/
FLYING,
/**
* 急停飞行阶段
*/
EMERGENCY_STOP,
/**
* 到达目的地
*/
ARRIVED,
// ==================== 返航阶段(父状态) ====================
/**
* 返航父状态
*/
RETURNING_PARENT,
/**
* 返航中
*/
RETURNING,
/**
* 急停返航阶段
*/
RETURN_EMERGENCY_STOP,
/**
* 返航完成
*/
RETURN_COMPLETED,
// ==================== 指点操作(可在飞行和返航阶段使用) ====================
/**
* 指点操作父状态
*/
POINTING_PARENT,
/**
* 准备指点
*/
POINT_PREPARING,
/**
* 指点飞行中
*/
POINT_FLYING,
/**
* 指点完成
*/
POINT_COMPLETED,
/**
* 指点被取消
*/
POINT_CANCELLED
2025-12-15 18:54:44 +08:00
}