package com.cmvr.edge.client.model.arm;

import com.cmvr.edge.client.model.EdgeCommonVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 机械臂关节空间运动VO
 *
 * @author cmvr-iot
 * @since 2026-07-01
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("机械臂关节空间运动参数")
public class EdgeArmMoveJVO extends EdgeCommonVO {

    @ApiModelProperty(value = "目标关节位置数组（6个关节角度，单位：弧度）", required = true)
    private double[] target;

    @ApiModelProperty("运动速度（单位：m/s）")
    private Double velocity;

    @ApiModelProperty("加速度（单位：m/s²）")
    private Double acceleration;

    @ApiModelProperty("融合半径（单位：m）")
    private Double blendRadius;

    @ApiModelProperty("关节速度限制数组")
    private double[] jointVelocityLimits;

    @ApiModelProperty("是否异步执行")
    private Boolean asynchronous;
}
