2025-07-21 15:10:39 +08:00
|
|
|
|
// 机器人的具体动作,可以定义为枚举或联合类型
|
2025-07-22 11:16:39 +08:00
|
|
|
|
export type RobotAction =
|
|
|
|
|
| 'PICKUP'
|
|
|
|
|
| 'DROPOFF'
|
|
|
|
|
| 'TRANSPORT'
|
|
|
|
|
| 'WAIT'
|
|
|
|
|
| 'CHARGE'
|
|
|
|
|
| 'CLEAN';
|
2025-07-21 15:10:39 +08:00
|
|
|
|
|
|
|
|
|
// 任务的状态
|
|
|
|
|
export type TaskStatus = 'IDLE' | 'RUNNING' | 'COMPLETED' | 'ERROR';
|
|
|
|
|
|
2025-07-22 15:10:57 +08:00
|
|
|
|
// 参数选项接口
|
|
|
|
|
export interface ParameterOption {
|
|
|
|
|
label: string;
|
|
|
|
|
value: string;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 动态参数配置接口
|
|
|
|
|
export interface DynamicParameter {
|
|
|
|
|
label: string;
|
|
|
|
|
type: 'Simple' | 'Select' | 'MultiSelect' | 'Text' | 'Number';
|
|
|
|
|
value: string | string[] | number;
|
|
|
|
|
required: boolean;
|
|
|
|
|
options?: ParameterOption[];
|
|
|
|
|
placeholder?: string;
|
|
|
|
|
min?: number;
|
|
|
|
|
max?: number;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 任务参数 - 支持动态配置
|
2025-07-21 15:10:39 +08:00
|
|
|
|
export interface TaskParameters {
|
2025-07-22 15:10:57 +08:00
|
|
|
|
startLocation: DynamicParameter; // 起点
|
|
|
|
|
endLocation: DynamicParameter; // 终点
|
|
|
|
|
waypoint?: DynamicParameter; // 途经点 (可选)
|
|
|
|
|
robotAction: DynamicParameter; // 机器人动作
|
|
|
|
|
payload: DynamicParameter; // 载荷,比如 '空料架' 或具体的物料ID
|
|
|
|
|
locationBay?: DynamicParameter; // 库位 (可选)
|
|
|
|
|
[key: string]: DynamicParameter | undefined; // 支持扩展参数
|
2025-07-21 15:10:39 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 核心任务对象
|
|
|
|
|
export interface Task {
|
|
|
|
|
id: string; // 唯一ID,例如使用 uuid
|
|
|
|
|
name: string; // 任务名称, e.g., "炉前缓存区到热处理上料交接区运输"
|
|
|
|
|
status: TaskStatus; // 任务当前状态
|
|
|
|
|
parameters: TaskParameters; // 任务的具体执行参数
|
|
|
|
|
createdAt: string; // 创建时间
|
|
|
|
|
}
|