@@ -52,30 +52,31 @@ FILE *sd_fp;
52
52
Values vals{};
53
53
ValuesRow current_row{};
54
54
int row_idx = 0 ;
55
+ int this_tick = 0 ;
55
56
56
57
57
58
// Default DASH parameters
58
- Layouts::StandardLayoutParams params = {
59
- .faults = Faults{false , false , false },
60
- .speed = 0 ,
61
- .soc = 100 ,
62
- .acc_temp = 20 ,
63
- .ctrl_tmp = 20 ,
64
- .mtr_tmp = 20 ,
65
- .mtr_volt = 110 ,
66
- .glv = 12 ,
67
- .steering_angle = 11 ,
68
- .brake_balance = 50 ,
69
- .brake_f = 0 ,
70
- .brake_r = 0 ,
71
- .throttle_demand = 0 ,
72
- .brake_demand = 0 ,
73
- .time = chrono::milliseconds (0 ),
74
- .delta_time_seconds = 0.01 ,
75
- .rtds = false ,
76
- .rpm = 0
77
- };
78
-
59
+ // Layouts::StandardLayoutParams params = {
60
+ // .faults = Faults{false, false, false},
61
+ // .speed = 0,
62
+ // .soc = 100,
63
+ // .acc_temp = 20,
64
+ // .ctrl_tmp = 20,
65
+ // .mtr_tmp = 20,
66
+ // .mtr_volt = 110,
67
+ // .glv = 12,
68
+ // .steering_angle = 11,
69
+ // .brake_balance = 50,
70
+ // .brake_f = 0,
71
+ // .brake_r = 0,
72
+ // .throttle_demand = 0,
73
+ // .brake_demand = 0,
74
+ // .time = chrono::milliseconds(0),
75
+ // .delta_time_seconds = 0.01,
76
+ // .rtds = false,
77
+ // .rpm = 0
78
+ // };
79
+ //
79
80
80
81
81
82
Layouts eve (PC_12, PC_11, PC_10, PD_2, PB_7, PC_13, EvePresets::CFA800480E3);
@@ -102,38 +103,50 @@ void update_dash() {
102
103
const VehicleState vsm_state = vsm.getState ();
103
104
// int8_t total_temp = 0;
104
105
uint8_t max_temp = 0 ;
106
+
105
107
for (auto [TEMPS_CELL0, TEMPS_CELL1, TEMPS_CELL2, TEMPS_CELL3, TEMPS_CELL4,TEMPS_CELL5] : vsm_state.accSegTemps ) {
106
108
// total_temp += (TEMPS_CELL0 + TEMPS_CELL1 + TEMPS_CELL2 + TEMPS_CELL3 + TEMPS_CELL4 + TEMPS_CELL5);
107
109
max_temp = max ( TEMPS_CELL0, max (TEMPS_CELL1, max (TEMPS_CELL2, max (TEMPS_CELL3, max (TEMPS_CELL4, TEMPS_CELL5)))));
108
110
}
109
- params = {
110
- .faults =
111
- Faults{false , static_cast <bool >(!vsm_state.accStatus .PRECHARGE_DONE ),
112
- static_cast <bool >(!vsm_state.accStatus .SHUTDOWN_STATE )},
113
- .speed = static_cast <uint8_t >(vsm_state.smeTrqSpd .SPEED * 112 / 7500 ),
114
- .soc = vsm_state.accPower .SOC ,
115
- .acc_temp = max_temp,
116
- .ctrl_tmp = vsm_state.smeTemp .CONTROLLER_TEMP ,
117
- .mtr_tmp = vsm_state.smeTemp .MOTOR_TEMP ,
118
- .mtr_volt = static_cast <float >(vsm_state.accPower .PACK_VOLTAGE / 100.0 ),
119
- .glv = static_cast <float >(vsm_state.pdbPowerA .GLV_VOLTAGE ),
120
- .steering_angle = vsm_state.steering_sensor ,
121
- .brake_balance = vsm_state.brake_sensor_f / (vsm_state.brake_sensor_f + vsm_state.brake_sensor_r ),
122
- .brake_f = vsm_state.brake_sensor_f ,
123
- .brake_r = vsm_state.brake_sensor_r ,
124
- .throttle_demand = vsm_state.smeThrottleDemand .TORQUE_DEMAND / 32768 .0f , // 0-1
125
- // 0 - 1
126
- .brake_val = static_cast <float >(((vsm_state.etcStatus .BRAKE_SENSE_VOLTAGE / 32768.0 )*3.3 - 0.33 ) / (1.65 - 0.33 )),
127
- // psi
128
- .brake_psi = static_cast <float >((vsm_state.etcStatus .BRAKE_SENSE_VOLTAGE / 32768.0 ) - 0.1 ) * 2500 ,
129
- .time = chrono::milliseconds (0 ),
130
- .delta_time_seconds = 0.01 ,
131
- .rtds = static_cast <bool >(vsm_state.etcStatus .RTD ),
132
- .rpm = vsm_state.smeTrqSpd .SPEED ,
133
- };
134
- printf (" %f %f\n " , params.brake_f , params.brake_r );
135
- // params.speed++;
136
- eve.drawStandardLayout2 (params);
111
+ // params = {
112
+ // .faults =
113
+ // Faults{false, static_cast<bool>(!vsm_state.accStatus.PRECHARGE_DONE),
114
+ // static_cast<bool>(!vsm_state.accStatus.SHUTDOWN_STATE)},
115
+ // .speed = static_cast<uint8_t>(vsm_state.smeTrqSpd.SPEED * 112 / 7500),
116
+ // .soc = vsm_state.accPower.SOC,
117
+ // .acc_temp = max_temp,
118
+ // .ctrl_tmp = vsm_state.smeTemp.CONTROLLER_TEMP,
119
+ // .mtr_tmp = vsm_state.smeTemp.MOTOR_TEMP,
120
+ // .mtr_volt = static_cast<float>(vsm_state.accPower.PACK_VOLTAGE / 100.0),
121
+ // .glv = static_cast<float>(vsm_state.pdbPowerA.GLV_VOLTAGE),
122
+ // .steering_angle = vsm_state.steering_sensor,
123
+ // .brake_balance = vsm_state.brake_sensor_f / (vsm_state.brake_sensor_f + vsm_state.brake_sensor_r),
124
+ // .brake_f = vsm_state.brake_sensor_f,
125
+ // .brake_r = vsm_state.brake_sensor_r,
126
+ // .throttle_demand = vsm_state.smeThrottleDemand.TORQUE_DEMAND / 32768.0f, // 0-1
127
+ // // 0 - 1
128
+ // .brake_val = static_cast<float>(((vsm_state.etcStatus.BRAKE_SENSE_VOLTAGE / 32768.0)*3.3 - 0.33) / (1.65 - 0.33)),
129
+ // // psi
130
+ // .brake_psi = static_cast<float>((vsm_state.etcStatus.BRAKE_SENSE_VOLTAGE / 32768.0) - 0.1) * 2500,
131
+ // .time = chrono::milliseconds(0),
132
+ // .delta_time_seconds = 0.01,
133
+ // .rtds = static_cast<bool>(vsm_state.etcStatus.RTD),
134
+ // .rpm = vsm_state.smeTrqSpd.SPEED,
135
+ // };
136
+ // printf("%f %f\n", params.brake_f, params.brake_r);
137
+ // // params.speed++;
138
+ // eve.drawStandardLayout2(params);
139
+ eve.drawLayout3 (
140
+ Faults{false , static_cast <bool >(!vsm_state.accStatus .PRECHARGE_DONE ), static_cast <bool >(!vsm_state.accStatus .SHUTDOWN_STATE )},
141
+ static_cast <float >(vsm_state.accPower .PACK_VOLTAGE / 100.0 ),
142
+ max_temp,
143
+ vsm_state.smeTemp .CONTROLLER_TEMP ,
144
+ vsm_state.smeTemp .MOTOR_TEMP ,
145
+ vsm_state.accPower .SOC ,
146
+ static_cast <float >(vsm_state.pdbPowerA .GLV_VOLTAGE ),
147
+ static_cast <bool >(vsm_state.etcStatus .RTD ),
148
+ this_tick++
149
+ );
137
150
}
138
151
139
152
void error_quit (std::string msg) {
0 commit comments