//package com.mobai.domian; // // //import lombok.AllArgsConstructor; //import lombok.Builder; //import lombok.Data; //import lombok.NoArgsConstructor; // //import java.math.BigDecimal; // // // ///** // * 报文解析 // * @author Mobai // * @Classname VehicleData // * @Description 车辆模拟数据对象 // * @Date 2021/8/5 // */ //@Data //@Builder //@NoArgsConstructor //@AllArgsConstructor //public class VehicleData { // /** // * VIN // */ // private String vin; // /** // * 行驶路线 // */ // private String drivingRoute; // // /** // * 经度 // */ // private String longitude; // // /** // * 维度 // */ // private String latitude; // // /** // * 速度 // */ // private String speed; // // /** // * 里程 // */ // private BigDecimal mileage; // // /** // * 总电压 // */ // private String voltage; // // /** // * 总电流 // */ // private String current; // // /** // * 绝缘电阻 // */ // private String resistance; // // /** // * 档位 // */ // private String gear = "P"; // // /** // * 加速踏板行程值 // */ // private String accelerationPedal; // // /** // * 制动踏板行程值 // */ // private String brakePedal; // // /** // * 燃料消耗率 // */ // private String fuelConsumptionRate; // // /** // * 电机控制器温度 // */ // private String motorControllerTemperature; // // /** // * 电机转速 // */ // private String motorSpeed; // // /** // * 电机转矩 // */ // private String motorTorque; // // /** // * 电机温度 // */ // private String motorTemperature; // // /** // * 电机电压 // */ // private String motorVoltage; // // /** // * 电机电流 // */ // private String motorCurrent; // // /** // * 动力电池剩余电量SOC // */ // private BigDecimal remainingBattery; // // /** // * 电池总容量 // */ // private BigDecimal batteryLevel; // // /** // * 当前状态允许的最大反馈功率 // */ // private String maximumFeedbackPower; // // /** // * 当前状态允许最大放电功率 // */ // private String maximumDischargePower; // // /** // * BMS自检计数器 // */ // private String selfCheckCounter; // // /** // * 动力电池充放电电流 // */ // private String totalBatteryCurrent; // // /** // * 动力电池负载端总电压V3 // */ // private String totalBatteryVoltage; // // /** // * 单次最大电压 // */ // private String singleBatteryMaxVoltage; // // /** // * 单体电池最低电压 // */ // private String singleBatteryMinVoltage; // // /** // * 单体电池最高温度 // */ // private String singleBatteryMaxTemperature; // // /** // * 单体电池最低温度 // */ // private String singleBatteryMinTemperature; // // /** // * 动力电池可用容量 // */ // private String availableBatteryCapacity; // // /** // * 车辆状态 // */ // private int vehicleStatus = 1; // // /** // * 充电状态 // */ // private int chargingStatus = 1; // // /** // * 运行状态 // */ // private int operatingStatus = 1; // // /** // * SOC // */ // private int socStatus = 1; // // /** // * 可充电储能装置工作状态 // */ // private int chargingEnergyStorageStatus = 1; // // /** // * 驱动电机状态 // */ // private int driveMotorStatus = 1; // // /** // * 定位是否有效 // */ // private int positionStatus = 1; // // /** // * EAS(汽车防盗系统)状态 // */ // private int easStatus = 1; // // /** // * PTC(电动加热器)状态 // */ // private int ptcStatus = 1; // // /** // * EPS(电动助力系统)状态 // */ // private int epsStatus = 1; // // /** // * ABS(防抱死)状态 // */ // private int absStatus = 1; // // /** // * MCU(电机/逆变器)状态 // */ // private int mcuStatus = 1; // // /** // * 动力电池加热状态 // */ // private int heatingStatus = 1; // // /** // * 动力电池当前状态 // */ // private int batteryStatus = 1; // // /** // * 动力电池保温状态 // */ // private int batteryInsulationStatus = 1; // // /** // * DCDC(电力交换系统)状态 // */ // private int dcdcStatus = 1; // // /** // * CHG(充电机)状态 // */ // private int chgStatus = 1; // // /** // * 车辆状态 报文 // */ // private String vehicleStatusMsg; // /** // * 智能硬件 报文 // */ // private String smartHardwareMsg; // /** // * 电池报文 // */ // private String batteryMsg; // // public String getMsg(){ // //第一位VIN // return vin + // // 当前时间戳 // System.currentTimeMillis() + // //第二位经度 longitude latitude // getValue(longitude, 11) + // //第三位维度 longitude latitude // getValue(latitude, 10) + // //车速 // getValue(speed, 6) + // //总里程 // getValue(mileage == null ? "" : mileage.toString(), 11) + // // 总电压 // getValue(voltage, 6) + // //总电流 // getValue(current, 5) + // //绝缘电阻 79 - 87 // getValue(resistance, 9) + // //档位 // (gear == null ? "D" : gear) + // // 加速踏板行程值 // getValue(accelerationPedal, 2) + // // 制动踏板行程值 // getValue(brakePedal, 2) + // // 燃料消耗率 // getValue(fuelConsumptionRate, 5) + // //电机控制器温度 // getValue(motorControllerTemperature, 6) + // //电机转速 // getValue(motorSpeed, 5) + // //点击转矩 // getValue(motorTorque, 4) + // //电机温度 // getValue(motorTemperature, 6) + // //电机电压 // getValue(motorVoltage, 5) + // //电机电流 // getValue(motorCurrent, 8) + // //动力电池剩余电量SOC // getValue(remainingBattery == null ? "" : remainingBattery.toString(), 6) + // //当前状态允许的最大反馈功率 // getValue(maximumFeedbackPower, 6) + // //当前状态允许最大放电功率 // getValue(maximumDischargePower, 6) + // //BMS自检计数器 // getValue(selfCheckCounter, 2) + // //动力电池充放电电流 // getValue(totalBatteryCurrent, 5) + // //动力电池负载端总电压V3 // getValue(totalBatteryVoltage, 6) + // //单次最大电压 // getValue(singleBatteryMaxVoltage, 4) + // //单体电池最低电压 // getValue(singleBatteryMinVoltage, 4) + // //单体电池最高温度 // getValue(singleBatteryMaxTemperature, 6) + // //单体电池最低温度 // getValue(singleBatteryMinTemperature, 6) + // //动力电池可用容量 // getValue(availableBatteryCapacity, 6) + // //车辆状态 // vehicleStatus + // //充电状态 // chargingStatus + // //运行状态 // operatingStatus + // //SOC // socStatus + // //可充电储能装置工作状态 // chargingEnergyStorageStatus + // //驱动电机状态 // driveMotorStatus + // //定位是否有效 // positionStatus + // //EAS // easStatus + // //PTC // ptcStatus + // //EPS // epsStatus + // //ABS // absStatus + // //MCU // mcuStatus + // //动力电池加热状态 // heatingStatus + // //动力电池当前状态 // batteryStatus + // //动力电池保温状态 // batteryInsulationStatus + // //DCDC // dcdcStatus + // //CHG // chgStatus; // } // // public String getValue(String val , int valLength){ // if(val == null){ // val = ""; // } // int length = val.length(); // if (length > valLength){ // return val.substring( 0 , valLength); // } // val = val + "0".repeat(valLength - length); // return val; // } // // /** // * 汽车对象构造企业VIN // * @param vehicle 汽车对象 // * @return 汽车数据对象 // */ // public static VehicleData vehicleBuild (Vehicle vehicle) { // return VehicleData.builder() // .vin(vehicle.getVin()) // .gear("P") // .remainingBattery(vehicle.getRemainingBattery()) // .batteryLevel(vehicle.getBatteryLevel()) // .mileage(vehicle.getTotalMileage()) // .vehicleStatus(1) // .chargingStatus(1) // .operatingStatus(1) // .socStatus(1) // .chargingEnergyStorageStatus(1) // .driveMotorStatus(1) // .positionStatus(1) // .easStatus(1) // .ptcStatus(1) // .epsStatus(1) // .absStatus(1) // .mcuStatus(1) // .heatingStatus(1) // .batteryStatus(1) // .batteryInsulationStatus(1) // .dcdcStatus(1) // .chgStatus(1) // .build(); // } // // /** // * 模拟基础项 // */ // public void imitateBase(){ // // 总电压 // this.voltage = genValue(110, 750); // // 总电流 // this.current = genValue(3, 50); // // 绝缘电阻 // this.resistance = genValue(0,30000); // // 加速踏板行程值 // this.accelerationPedal = genValue(0, 10); // // 制动踏板行程值 // this.brakePedal = genValue(0, 10); // } // // // /** // * 模拟电机数据 // */ // public void imitateMotor(){ // // 电机控制器温度 // this.motorControllerTemperature = genValue(0, 100); // // 电机转速 // this.motorSpeed = genValue(0, 99999); // // 电机转矩 // this.motorTorque = genValue(0, 1000); // // 电机温度 // this.motorTemperature = genValue(0, 150); // // 电机电压 // this.motorVoltage = genValue(110, 300); // // 电机电流 // this.motorCurrent = genValue(0, 15000); // } // // /** // * 模拟电池包数据 // */ // public void imitateBatteryPack(){ // // 当前状态允许的最大反馈功率 // this.maximumFeedbackPower = genValue(0, 100); // // 当前状态允许最大放电功率 // this.maximumDischargePower = genValue(0, 100); // // BMS自检计数器 // this.selfCheckCounter = genValue(0, 15); // // 动力电池充放电电流 // this.totalBatteryCurrent = genValue(0, 15); // // 动力电池负载端总电压V3 // this.totalBatteryVoltage = genValue(220, 750); // // 单体电池最高电压 // this.singleBatteryMaxVoltage = genValue(3, 5); // // 单体电池最低电压 // this.singleBatteryMinVoltage = genValue(3, 5); // // 单体电池最高温度 // this.singleBatteryMaxTemperature = genValue(0, 100); // // 单体电池最低温度 // this.singleBatteryMinTemperature = genValue(0, 100); // // 动力电池可用容量 // this.availableBatteryCapacity = genValue(0,100 ); // } // /** // 车辆状态 // vehicleStatus; // 充电状态 // chargingStatus; // 运行状态 // operatingStatus; // SOC // socStatus; // 可充电储能装置工作状态 // chargingEnergyStorageStatus; // 驱动电机状态 // driveMotorStatus; // 定位是否有效 // positionStatus; // */ // // /** // EAS(汽车防盗系统)状态 // easStatus; // PTC(电动加热器)状态 // ptcStatus; // EPS(电动助力系统)状态 // epsStatus; // ABS(防抱死)状态 // absStatus; // MCU(电机/逆变器)状态 // mcuStatus; // */ // // /** // 动力电池加热状态 // heatingStatus; // 动力电池当前状态 // batteryStatus; // 动力电池保温状态 // batteryInsulationStatus; // DCDC(电力交换系统)状态 // dcdcStatus; // CHG(充电机)状态 // chgStatus; // */ //}