VehicleData.java
5.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
package com.bsth.entity;
import com.bsth.socket.protocol.Message0201;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.springframework.beans.BeanUtils;
/**
* @author Hill
* 整车数据
*/
public class VehicleData extends Data {
/**
* 车辆状态
* 0x01 车辆启动
* 0x02 车辆熄火
* 0x03 其它
* 0xFE 异常
* 0xFF 无效
*/
private byte vehicleState;
/**
* 充电状态
* 0x01 停车充电
* 0x02 行驶充电
* 0x03 未充电
* 0x04 充电完成
* 0xFE 异常
* 0xFF 无效
*/
private byte chargeState;
/**
* 运行模式
* 0x01 纯电
* 0x02 混动
* 0x03 燃油
* 0xFE 异常
* 0xFF 无效
*/
private byte runMode;
/**
* 车速 0-2200
* 分辨率0.1km/h
* 0xff 0xfe 异常
* 0xff 0xff 无效
*/
private short speed;
/**
* 累计里程 0-9999999
* 分辨率0.1km/h
* 0xff 0xff 0xff 0xfe 异常
* 0xff 0xff 0xff 0xff 无效
*/
private int totalMiles;
/**
* 总电压 0-10000
* 分辨率0.1v
* 0xff 0xfe 异常
* 0xff 0xff 无效
*/
private short totalVoltage;
/**
* 总电流 0-20000
* 分辨率0.1a
* 0xff 0xfe 异常
* 0xff 0xff 无效
*/
private short totalCurrent;
/**
* soc 0-100%
* 分辨率1%
* 0xFE 异常
* 0xFF 无效
*/
private byte soc;
/**
* dc-dc状态
* 0x01 工作
* 0x02 断开
* 0xFE 异常
* 0xFF 无效
*/
private byte dcState;
/**
* 挡位
*/
@JsonIgnore
private byte gear;
/**
* 驱动力
*/
private boolean drivingForce;
/**
* 制动力
*/
private boolean brakingForce;
/**
* 挡位(json)
*/
@JsonProperty("gear")
private byte gear1;
/**
* 绝缘电阻 0-60000
* 分辨率 1k欧
*/
private int insulationResistance;
/**
* 加速踏板行程值 0-100%
* 分辨率1%
* 0xFE 异常
* 0xFF 无效
*/
private byte acceleratorState;
/**
* 制动踏板状态 0-100%
* 分辨率1% 在无具体行程值情况下,用“101”表示制动有效状态
* 0xFE 异常
* 0xFF 无效
*/
private byte brakePedalState;
public VehicleData() {
}
public VehicleData(Message0201 message0201) {
BeanUtils.copyProperties(message0201, this);
this.drivingForce = (gear & 32) == 32 ? true : false;
this.brakingForce = (gear & 16) == 16 ? true : false;
this.gear1 = (byte) (gear & 15);
}
public byte getVehicleState() {
return vehicleState;
}
public void setVehicleState(byte vehicleState) {
this.vehicleState = vehicleState;
}
public byte getChargeState() {
return chargeState;
}
public void setChargeState(byte chargeState) {
this.chargeState = chargeState;
}
public byte getRunMode() {
return runMode;
}
public void setRunMode(byte runMode) {
this.runMode = runMode;
}
public short getSpeed() {
return speed;
}
public void setSpeed(short speed) {
this.speed = speed;
}
public int getTotalMiles() {
return totalMiles;
}
public void setTotalMiles(int totalMiles) {
this.totalMiles = totalMiles;
}
public short getTotalVoltage() {
return totalVoltage;
}
public void setTotalVoltage(short totalVoltage) {
this.totalVoltage = totalVoltage;
}
public short getTotalCurrent() {
return totalCurrent;
}
public void setTotalCurrent(short totalCurrent) {
this.totalCurrent = totalCurrent;
}
public byte getSoc() {
return soc;
}
public void setSoc(byte soc) {
this.soc = soc;
}
public byte getDcState() {
return dcState;
}
public void setDcState(byte dcState) {
this.dcState = dcState;
}
public byte getGear() {
return gear;
}
public void setGear(byte gear) {
this.gear = gear;
}
public boolean isDrivingForce() {
return drivingForce;
}
public void setDrivingForce(boolean drivingForce) {
this.drivingForce = drivingForce;
}
public boolean isBrakingForce() {
return brakingForce;
}
public void setBrakingForce(boolean brakingForce) {
this.brakingForce = brakingForce;
}
public byte getGear1() {
return gear1;
}
public void setGear1(byte gear1) {
this.gear1 = gear1;
}
public int getInsulationResistance() {
return insulationResistance;
}
public void setInsulationResistance(int insulationResistance) {
this.insulationResistance = insulationResistance;
}
public byte getAcceleratorState() {
return acceleratorState;
}
public void setAcceleratorState(byte acceleratorState) {
this.acceleratorState = acceleratorState;
}
public byte getBrakePedalState() {
return brakePedalState;
}
public void setBrakePedalState(byte brakePedalState) {
this.brakePedalState = brakePedalState;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("车辆状态: ").append(vehicleState)
.append(" 充电状态: ").append(chargeState)
.append(" 运行模式: ").append(runMode)
.append(" 车速: ").append(speed)
.append(" 累计里程: ").append(totalMiles)
.append(" 总电压: ").append(totalVoltage)
.append(" 总电流: ").append(totalCurrent)
.append(" soc: ").append(soc)
.append(" dc-dc状态: ").append(dcState)
.append(" 挡位: ").append(gear)
.append(" 绝缘电阻: ").append(insulationResistance)
.append(" 加速踏板行程值: ").append(acceleratorState)
.append(" 制动踏板状态: ").append(brakePedalState);
return sb.toString();
}
@Override
public String getType() {
return "vehicle_data";
}
}