package cn.iocoder.yudao.module.system.api.robot.dto;

import lombok.Data;

/**
 * 车身控制器状态,详情如下表
 */
@Data
public class RobotHwStatesDTO {
    //控制器状态
    private String controllerState;
    //转向电机角度，0 为正前方，逆时针正方向，顺时针负
    private String steerAngle;
    //转向电机驱动器错误码
    private String steerErrorCode;
    //行走电机转速，m/s
    private String walkMotorVel;
    //行走电机电流
    private String walkMotorCurrent;
    //行走电机温度
    private String walkMotorTemperature;
    //行走电机电源单元状态
    private String walkMotorPowerUnitState;
    //行走电机主接触器状态
    private String walkMotorMainContactorState;
    //行走电机电子制动状态
    private String walkMotorElectricBrakeState;
    //行走电机锁定开关状态
    private String walkMotorLockSwitchState;
    //行走电机驱动器错误码
    private String walkMotorErrorCode;
    //货叉高度
    private String forkHeight;
    //电池的剩余容量
    private String batSoc;
    //电池电流
    private String batCurrent;
    //电池电压
    private String batVoltage;
    //电池温度
    private String batTemperature;
    //解析后的电池故障码
    private String batErrorCode;
    //充电接触器闭合 false 为开，true 为闭合
    private String chargeRelayClosed;
    //bms 状态：电池充电中，false 为放电，true 为充电
    private String batCharging;
    //货物到位传感器触发状态：被按下则 true，否则 false
    private String cargoDetected;
    //叉尖传感器触发状态：物体接近触发为 true，否则为 false
    private String forkTipSensorState;
    //急停按键状态：按下为 true，松开为 false
    private String estopButtonState;
    //启动按键状态：按下为 true，松开为 false
    private String startButtonState;
    //复位按键状态：按下为 true，松开为 false
    private String resetButtonState;
    //手动模式拨杆状态：true 表示在手动状态，false 为自动
    private String manualSwitchState;
    //转向电机零位传感器状态，true 为触发，false 为未触发
    private String steerSensorState;
    //碰撞传感器触发状态：触发为 true，否则为 false
    private String bumperSensorState;
    //灯条状态代码
    private String ledState;
}
