652e9cd54
고영탁
Merge
|
1
2
3
4
5
|
#ifndef OVENSTATICS_H
#define OVENSTATICS_H
#include <QObject>
#include <time.h>
|
cefd483e4
고영탁
에러 수정
|
6
|
#include <qmap.h>
|
cf0ca80f6
김태훈
app_oven_control를...
|
7
|
#include "../../app-prime-modbus/include/all_share.h"
|
652e9cd54
고영탁
Merge
|
8
9
|
#include "udphandler.h"
#include "oven.h"
|
14a73498f
김태훈
소스 코드 정리
|
10
|
#include "servicedata.h"
|
20fcaaf68
고영탁
에러 마스크 별도 적용
|
11
|
#include "config.h"
|
652e9cd54
고영탁
Merge
|
12
|
|
20fcaaf68
고영탁
에러 마스크 별도 적용
|
13
14
|
#define MAX_MODEL_COUNT 12
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
15
16
|
#define SYS_STATE_MAX 5
#define DELAY_ERROR_TIME 10 //Secs
|
652e9cd54
고영탁
Merge
|
17
|
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
18
|
#define SYS_ERR_MAX 10
|
652e9cd54
고영탁
Merge
|
19
|
|
29a9d2966
고영탁
에러 전체 활성화
|
20
21
|
#define SYS_ERROR_MASK 0x03ff
#define COMM_ERROR_MASK 0x001f
|
81c6fca05
고영탁
고객사 요청 에러 예외 사항 추가
|
22
|
#define SENSOR_ERROR_MASK 0x0213
|
65aaca7a6
고영탁
GUI V0.3.2
|
23
|
#define STATE_ERROR_MASK 0x0018
|
9e48a5d01
고영탁
에러 체크 해제
|
24
|
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
25
26
27
28
29
30
31
|
#define SYS_ERR_MASK_ERR_CLEAR_COOKING 0x00ff
#define SYS_ERR_MASK_ERR_CLEAR_NONCOOKING 0x00ff
#define SYS_ERR_MASK_COOKING 0x00ff
#define SYS_ERR_MASK_NONCOOKING (SYS_ERR_OVNE_TEMP_ALARM)
#define COMM_ERR_MAX 5
|
7ae804762
고영탁
에러 상황 추가
|
32
|
#define STATE_ERR_MAX 5
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
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
|
#define COMM_ERR_MASK_ERR_CLEAR_COOKING 0x0000
#define COMM_ERR_MASK_ERR_CLEAR_NONCOOKING 0x0000
#define COMM_ERR_MASK_COOKING 0x0000
#define COMM_ERR_MASK_NONCOOKING 0x0000
#define SENSOR_ERR_MAX 10
#define SENSOR_ERR_MASK_ERR_CLEAR 0x0000
#define SENSOR_ERR_MASK_COOKING 0x0000
#define SENSOR_ERR_MASK_NONCOOKING 0x0000
#define MAKE_MASK(MASK) (1<<MASK)
#define LOAD_STATE1_UPPER_BUNNER 0x0001
#define LOAD_STATE1_LOWER_BUNNER 0x0002
#define LOAD_STATE1_STEAM_BUNNER 0x0004
#define LOAD_STATE1_UPPER_FAN 0x0008
#define LOAD_STATE1_LOWER_FAN 0x0010
#define LOAD_STATE1_STEAM_FAN 0x0020
#define LOAD_STATE1_CONVEC_FAN1 0x0040
#define LOAD_STATE1_CONVEC_FAN2 0x0080
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
59
|
/*#define LOAD_STATE2_DV 0x0001
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
#define LOAD_STATE2_CFAN 0x0002
#define LOAD_STATE2_WSV 0x0004
#define LOAD_STATE2_QNV 0x0008
#define LOAD_STATE2_SSV 0x0010
#define LOAD_STATE2_SNV 0x0020
#define LOAD_STATE2_ERRLED 0x0040
#define LOAD_STATE2_ATVLED 0x0080
#define LOAD_STATE2_HL 0x0100
#define LOAD_STATE2_DP 0x0200
#define LOAD_STATE2_SSP 0x0400
#define LOAD_STATE2_UNP 0x0800
#define LOAD_STATE2_HT1 0x1000
#define LOAD_STATE2_HT2 0x2000
#define LOAD_STATE2_HDM 0x4000
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
#define LOAD_STATE2_ST1 0x8000*/
#define LOAD_STATE2_DV 0x0001
#define LOAD_STATE2_CFAN 0x0002
#define LOAD_STATE2_WSV 0x0004
#define LOAD_STATE2_QNV 0x0008
#define LOAD_STATE2_SSV 0x0010
#define LOAD_STATE2_SNV 0x0020
#define LOAD_STATE2_HL 0x0040
#define LOAD_STATE2_DP 0x0080
#define LOAD_STATE2_SSP 0x0100
#define LOAD_STATE2_UNP 0x0200
#define LOAD_STATE2_HDM 0x0400
#define LOAD_STATE2_SGNV 0x0800
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
90
91
92
93
94
|
enum sys_state_type{
SYS_OFF_COOK_OFF=0,
SYS_ON_COOK_OFF=1,
SYS_ON_COOK_ON=2,
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
95
96
|
SYS_ON_WASH=3,
SYS_OFF_COOK_ON=4 //unnormal state
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
};
enum sys_error_id{
SYS_ERR_FIRE_TRIGGER1 =0,
SYS_ERR_FIRE_TRIGGER2 ,
SYS_ERR_FIRE_TRIGGER3 ,
SYS_ERR_OVNE_TEMP_ALARM ,
SYS_ERR_QUN_TEMP_ALARM ,
SYS_ERR_CENTER_TEMP_ALARM ,
SYS_ERR_WALL_TEMP_ALARM ,
SYS_ERR_STAM_TEMP_ALARM ,
SYS_ERR_WATER_LEVEL_FAIL ,
SYS_ERR_WATER_SPLY_FAIL
};
enum comm_err_id{
COMM_ERR_BUNNER1 =0,
COMM_ERR_BUNNER2 ,
COMM_ERR_BUNNER3 ,
COMM_ERR_UPPERFAN ,
|
f8661a150
고영탁
엔지니어 모드 디버깅
|
117
|
COMM_ERR_LOWERFAN
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
118
|
};
|
7ae804762
고영탁
에러 상황 추가
|
119
120
121
122
123
124
125
|
enum state_err_id{
STATE_ERR_BUNNER1 =0,
STATE_ERR_BUNNER2 ,
STATE_ERR_BUNNER3 ,
STATE_ERR_UPPERFAN ,
STATE_ERR_LOWERFAN
};
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
enum sensor_err_id{
SENSOR_ERR_SENSOR_1 =0,
SENSOR_ERR_SENSOR_2 ,
SENSOR_ERR_SENSOR_3 ,
SENSOR_ERR_SENSOR_4 ,
SENSOR_ERR_SENSOR_5 ,
SENSOR_ERR_SENSOR_6 ,
SENSOR_ERR_SENSOR_7 ,
SENSOR_ERR_SENSOR_8 ,
SENSOR_ERR_SENSOR_9 ,
SENSOR_ERR_SENSOR_10
};
enum error_exe_type{
error_type_allnone=0,
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
141
|
error_type_olnystopcmd,
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
142
143
144
145
146
147
148
149
150
|
error_type_onlypop,
error_type_onlyeng,
error_type_onlychk,
error_type_popnonclr,
error_type_engnonclr,
error_type_clrsplit,
error_type_chkclr,
error_type_popclr,
error_type_engclr,
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
151
152
153
|
error_type_chkclrstopcmd,
error_type_popclrstopcmd,
error_type_engclrstopcmd,
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
154
|
};
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
155
156
157
158
159
|
enum error_sound_type{
error_sound_none=0,
error_sound1,
error_sound2
};
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
160
161
162
163
164
165
166
167
|
enum wash_mode_type{
wash_mode_nocleanser=1,
wash_mode_simple,
wash_mode_standard,
wash_mode_strong,
wash_mode_highspeed
};
|
652e9cd54
고영탁
Merge
|
168
|
|
3f5f5d4ce
고영탁
디버깅 요청 사항 적용
|
169
170
171
172
173
|
enum water_level_state{
water_level_normal = 0,
water_level_low,
water_level_high
};
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
174
175
176
177
178
179
180
181
|
typedef union
{
uint32_t d32;
struct
{
uint32_t reserved : 9;
uint32_t door_open : 1;
|
f8661a150
고영탁
엔지니어 모드 디버깅
|
182
|
uint32_t wsv_open : 1;
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
183
184
185
186
187
188
189
190
|
uint32_t dv_open : 1;
uint32_t sgnv_open : 1;
uint32_t water_level : 16;
uint32_t snv_open : 1;
uint32_t qnv_open : 1;
uint32_t ssv_open : 1;
}b;
}realtime_data;
|
cefd483e4
고영탁
에러 수정
|
191
192
193
194
195
|
typedef struct _popup_list_item{
QString strTitle;
QString strDesc;
bool bNeedClear;
}popup_list_item;
|
42410a75c
김태훈
오타 수정
|
196
|
class OvenStatistics : public QObject
|
652e9cd54
고영탁
Merge
|
197
198
199
|
{
Q_OBJECT
public:
|
14a73498f
김태훈
소스 코드 정리
|
200
|
ServiceData* srvdata;
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
201
|
|
538041ab9
김태훈
소스 코드 구조 개선
|
202
|
static OvenStatistics* getInstance(QObject* parent = 0);
|
652e9cd54
고영탁
Merge
|
203
|
static void destroy();
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
204
205
|
bool getNeedErrorClear();
void clearNeedErrorClear();
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
206
207
208
|
realtime_data getPartsRealtimeData(void);
uint8_t getSensorTypeByIdx(uint16_t idx);
type_temp getCurSensorValueByIdx(uint16_t idx);
|
91480de3c
고영탁
센서 실시간 데이터 리셋 기능 추가
|
209
|
void resetSensorHistory(void);
|
652e9cd54
고영탁
Merge
|
210
211
|
private:
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
212
|
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
213
|
const uint32_t sys_err_mask[3][MAX_MODEL_COUNT] = {
|
4a1cc6a99
고영탁
GUI V0.4.2
|
214
215
216
217
218
219
220
221
222
223
224
225
|
{0x03b8, //ele_10
0x03b8, //ele_20
0x03b8, //ele_24
0x03b8, //ele_40
0x03b8, //lpg_10
0x03b8, //lpg_20
0x03b8, //lpg_24
0x03b8, //lpg_40
0x03b8, //lng_10
0x03b8, //lng_20
0x03b8, //lng_24
0x03b8 //lng_40
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
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
|
},// noncooking state
{0x03bd, //ele_10
0x03bf, //ele_20
0x03bd, //ele_24
0x03bf, //ele_40
0x03bd, //lpg_10
0x03bf, //lpg_20
0x03bd, //lpg_24
0x03bf, //lpg_40
0x03bd, //lng_10
0x03bf, //lng_20
0x03bd, //lng_24
0x03bf //lng_40
},//cooking state
{0x03bd, //ele_10
0x03bf, //ele_20
0x03bd, //ele_24
0x03bf, //ele_40
0x03bd, //lpg_10
0x03bf, //lpg_20
0x03bd, //lpg_24
0x03bf, //lpg_40
0x03bd, //lng_10
0x03bf, //lng_20
0x03bd, //lng_24
0x03bf //lng_40
} //washing state
|
b915c1b54
고영탁
팝업 처리 수정
|
253
|
};
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
254
|
const uint32_t comm_err_mask[3][MAX_MODEL_COUNT] = {
|
b915c1b54
고영탁
팝업 처리 수정
|
255
|
{0x000d, //ele_10
|
b69abdac2
고영탁
모델 별 하부 에러 마스크 적용
|
256
|
0x001f, //ele_20
|
b915c1b54
고영탁
팝업 처리 수정
|
257
|
0x000d, //ele_24
|
b69abdac2
고영탁
모델 별 하부 에러 마스크 적용
|
258
|
0x001f, //ele_40
|
b915c1b54
고영탁
팝업 처리 수정
|
259
|
0x000d, //lpg_10
|
b69abdac2
고영탁
모델 별 하부 에러 마스크 적용
|
260
|
0x001f, //lpg_20
|
b915c1b54
고영탁
팝업 처리 수정
|
261
|
0x000d, //lpg_24
|
b69abdac2
고영탁
모델 별 하부 에러 마스크 적용
|
262
|
0x001f, //lpg_40
|
b915c1b54
고영탁
팝업 처리 수정
|
263
|
0x000d, //lng_10
|
b69abdac2
고영탁
모델 별 하부 에러 마스크 적용
|
264
|
0x001f, //lng_20
|
b915c1b54
고영탁
팝업 처리 수정
|
265
|
0x000d, //lng_24
|
b69abdac2
고영탁
모델 별 하부 에러 마스크 적용
|
266
|
0x001f //lng_40
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
267
268
269
270
271
272
273
274
275
276
277
278
279
280
|
}, // noncooking state
{0x000d, //ele_10
0x001f, //ele_20
0x000d, //ele_24
0x001f, //ele_40
0x000d, //lpg_10
0x001f, //lpg_20
0x000d, //lpg_24
0x001f, //lpg_40
0x000d, //lng_10
0x001f, //lng_20
0x000d, //lng_24
0x001f //lng_40
}, //cooking state
|
b915c1b54
고영탁
팝업 처리 수정
|
281
282
283
284
285
286
287
288
289
290
291
292
|
{0x000d, //ele_10
0x001f, //ele_20
0x000d, //ele_24
0x001f, //ele_40
0x000d, //lpg_10
0x001f, //lpg_20
0x000d, //lpg_24
0x001f, //lpg_40
0x000d, //lng_10
0x001f, //lng_20
0x000d, //lng_24
0x001f //lng_40
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
293
294
|
} // washing state
};
|
b915c1b54
고영탁
팝업 처리 수정
|
295
296
297
298
299
300
301
302
303
304
305
306
307
|
// const uint32_t sensor_err_mask[MAX_MODEL_COUNT] = {0x0213, //ele10
// 0x0213, //ele 20
// 0x0213, //ele 24
// 0x0213, //ele 40
// 0x0213, //lpg 10
// 0x0213, //lpg 20
// 0x0213, //lpg 24
// 0x0213, //lpg 40
// 0x0213, //lng 10
// 0x0213, //lng 20
// 0x0213, //lng 24
// 0x0213 //lng40
// };
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
308
309
310
311
312
313
314
315
316
317
318
319
320
|
const uint32_t sensor_err_mask[3][MAX_MODEL_COUNT] = {
{0x03f3, //ele10
0x03f3, //ele 20
0x03f3, //ele 24
0x03f3, //ele 40
0x03f3, //lpg 10
0x03f3, //lpg 20
0x03f3, //lpg 24
0x03f3, //lpg 40
0x03f3, //lng 10
0x03f3, //lng 20
0x03f3, //lng 24
0x03f3 //lng40
|
b915c1b54
고영탁
팝업 처리 수정
|
321
|
}, // end of noncooking state
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
|
{0x03f3, //ele10
0x03f3, //ele 20
0x03f3, //ele 24
0x03f3, //ele 40
0x03f3, //lpg 10
0x03f3, //lpg 20
0x03f3, //lpg 24
0x03f3, //lpg 40
0x03f3, //lng 10
0x03f3, //lng 20
0x03f3, //lng 24
0x03f3 //lng40
}, //cooking state
{0x03f3, //ele10
0x03f3, //ele 20
0x03f3, //ele 24
0x03f3, //ele 40
0x03f3, //lpg 10
0x03f3, //lpg 20
0x03f3, //lpg 24
0x03f3, //lpg 40
0x03f3, //lng 10
0x03f3, //lng 20
0x03f3, //lng 24
0x03f3 //lng40
} // washing state
};
const uint32_t state_err_mask[3][MAX_MODEL_COUNT] = {
{0x0000, //ele 10
0x0000, //ele 20
0x0000, //ele 24
0x0000, //ele 40
0x0000, //lpg 10
0x0000, //lpg 20
0x0000, //lpg 24
0x0000, //lpg 40
0x0000, //lng 10
0x0000, //lng 20
0x0000, //lng 24
0x0000 //lng 40
|
b915c1b54
고영탁
팝업 처리 수정
|
363
|
}, //end of noncooking state
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
|
{0x0000, //ele 10
0x0000, //ele 20
0x0000, //ele 24
0x0000, //ele 40
0x0000, //lpg 10
0x0000, //lpg 20
0x0000, //lpg 24
0x0000, //lpg 40
0x0000, //lng 10
0x0000, //lng 20
0x0000, //lng 24
0x0000 //lng 40
},
{0x0000, //ele 10
0x0000, //ele 20
0x0000, //ele 24
0x0000, //ele 40
0x0000, //lpg 10
0x0000, //lpg 20
0x0000, //lpg 24
0x0000, //lpg 40
0x0000, //lng 10
0x0000, //lng 20
0x0000, //lng 24
0x0000 //lng 40
}//washing state
};
|
20fcaaf68
고영탁
에러 마스크 별도 적용
|
391
|
|
3fd8255a1
고영탁
팝업 관련 동작 정의 수정
|
392
|
const error_exe_type sys_err_type_def[SYS_STATE_MAX][SYS_ERR_MAX]={ //30047
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
393
394
|
{error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,
error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_OFF_COOK_OFF state
|
b915c1b54
고영탁
팝업 처리 수정
|
395
|
{error_type_onlychk,error_type_onlychk,error_type_onlychk,error_type_engclrstopcmd,error_type_engclrstopcmd,
|
4a1cc6a99
고영탁
GUI V0.4.2
|
396
|
error_type_engclrstopcmd,error_type_engclrstopcmd,error_type_engclrstopcmd,error_type_popclr,error_type_popclr}, // SYS_ON_COOK_OFF state
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
397
398
|
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,
error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, // SYS_ON_COOK_ON state
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
399
|
{error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
400
401
|
error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_ON_WASH state
{error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
402
403
|
error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_OFF_COOK_ON state
};
|
3fd8255a1
고영탁
팝업 관련 동작 정의 수정
|
404
|
const error_exe_type comm_err_type_def[SYS_STATE_MAX][COMM_ERR_MAX] ={ //30048
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
405
|
{error_type_popnonclr,error_type_popnonclr,error_type_popnonclr,error_type_engnonclr,error_type_engnonclr}, //SYS_OFF_COO_OFF
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
406
407
|
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_OFF
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_ON
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
408
|
{error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, //SYS_ON_WASH
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
409
410
|
{error_type_popnonclr,error_type_popnonclr,error_type_popnonclr,error_type_engnonclr,error_type_engnonclr}, //SYS_OFF_COO_ON
};
|
3fd8255a1
고영탁
팝업 관련 동작 정의 수정
|
411
412
|
const error_exe_type state_err_type_def[SYS_STATE_MAX][STATE_ERR_MAX] ={ //30057
{error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, //SYS_OFF_COO_OFF
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
413
414
|
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_OFF
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_ON
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
415
|
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_WASH
|
3fd8255a1
고영탁
팝업 관련 동작 정의 수정
|
416
|
{error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, //SYS_OFF_COO_ON
|
7ae804762
고영탁
에러 상황 추가
|
417
|
};
|
3fd8255a1
고영탁
팝업 관련 동작 정의 수정
|
418
|
const error_exe_type sensor_err_type_def[SYS_STATE_MAX][SENSOR_ERR_MAX]={ //30049
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
419
420
|
{error_type_popclr,error_type_popclr,error_type_allnone,error_type_popclr,error_type_popclr,
error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_OFF_COOK_OFF state
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
421
|
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_allnone,error_type_popclrstopcmd,error_type_popclrstopcmd,
|
b915c1b54
고영탁
팝업 처리 수정
|
422
423
424
|
error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, // SYS_ON_COOK_OFF state
{error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_allnone,error_type_popclrstopcmd,error_type_popclrstopcmd,
error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, // SYS_ON_COOK_ON state
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
425
426
|
{error_type_popclr,error_type_popclr,error_type_allnone,error_type_allnone,error_type_popclr,
error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_ON_WASH
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
427
428
429
|
{error_type_engnonclr,error_type_popnonclr,error_type_allnone,error_type_popnonclr,error_type_onlychk,
error_type_popnonclr,error_type_allnone,error_type_allnone,error_type_allnone,error_type_popnonclr}, // SYS_OFF_COOK_ON state same with SYS_OFF_COOK_OFF
};
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
430
431
432
433
434
435
436
437
438
439
440
441
442
443
|
const error_sound_type sys_err_sound_def[SYS_ERR_MAX]={ //30047
error_sound2,error_sound2,error_sound2,error_sound2,error_sound2,
error_sound2,error_sound2,error_sound2,error_sound2,error_sound2};
const error_sound_type comm_err_sound_def[COMM_ERR_MAX] ={ //30048
error_sound1,error_sound1,error_sound1,error_sound1,error_sound1};
const error_sound_type state_err_sound_def[STATE_ERR_MAX] ={ //30057
error_sound1,error_sound1,error_sound1,error_sound1,error_sound1};
const error_sound_type sensor_err_sound_def[SENSOR_ERR_MAX]={ //30049
error_sound1,error_sound1,error_sound1,error_sound1,error_sound1,
error_sound1,error_sound1,error_sound1,error_sound1,error_sound2};
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
444
445
446
447
|
const uint8_t sensorTypeInfo[MAX_LOG_SENSOR] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 1, 2, 0, 1, 1
}; //Type 2 is /10 value;
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
448
|
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
449
|
type_temp curSensorValue[MAX_LOG_SENSOR];
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
450
|
|
42410a75c
김태훈
오타 수정
|
451
|
static OvenStatistics* p_singletonInstance;
|
652e9cd54
고영탁
Merge
|
452
453
|
UdpHandler *udp;
Oven* oven;
|
20fcaaf68
고영탁
에러 마스크 별도 적용
|
454
|
Config* cfg;
|
652e9cd54
고영탁
Merge
|
455
456
|
oven_control_t control;
oven_state_t state;
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
457
|
error_item* m_pLastErrItem;
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
458
|
QMap<uint32_t, QWidget *> m_mapPopupList;
|
cefd483e4
고영탁
에러 수정
|
459
460
|
uint32_t m_nLastPopupidx;
bool m_bPopupShow;
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
461
|
|
652e9cd54
고영탁
Merge
|
462
463
464
465
|
bool curdoorstate;
uint16_t curSysErrorState;
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
466
467
|
uint16_t curCommErrorState;
uint16_t curSensorErrorState;
|
d66410abd
고영탁
에러 팝업 형태 변경
|
468
|
uint16_t curControlErrorState;
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
469
470
|
bool bNeedErrorClear;
bool bDataRefreshed;
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
471
|
realtime_data realdata;
|
cefd483e4
고영탁
에러 수정
|
472
|
|
42410a75c
김태훈
오타 수정
|
473
474
|
explicit OvenStatistics(QObject* parent);
~OvenStatistics();
|
652e9cd54
고영탁
Merge
|
475
|
void processSystemError(uint16_t errflag,time_t ltime);
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
476
477
|
void processCommError(uint16_t errflag,time_t ltime);
void processSensorError(uint16_t errflag, time_t ltime);
|
7ae804762
고영탁
에러 상황 추가
|
478
|
void processStateError(uint16_t errflat, time_t ltime);
|
15e45c49c
고영탁
세척 에러 유형 추가 및 에러 ...
|
479
|
void processErrorItems(error_item *item, error_exe_type errtype, const QString &MsgDesc,const QString &MsgTitle, time_t ltime, error_sound_type errsnd=error_sound1);
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
480
|
|
f345e373f
김태훈
클래스 정의 수정
|
481
482
483
484
485
486
487
488
489
|
public:
bool loadWashState(void){return srvdata->loadWashState();}
bool setWashState(bool bval,bool save=true){return srvdata->setWashState(bval,save);}
uint32_t loadTotalCookingTime(void){return srvdata->loadTotalCookingTime();}
bool setTotalCookingTime(uint32_t val, bool save=true){return srvdata->setTotalCookingTime(val,save);}
bool addTotalCookingTime(uint32_t val, bool save=true){return srvdata->addTotalCookingTime(val,save);}
uint32_t loadTotalCookingCount(void){return srvdata->loadTotalCookingCount();}
bool setTotalCookingCount(uint32_t val,bool save = true){return srvdata->setTotalCookingCount(val,save);}
bool addTotalCookingCount(uint32_t val, bool save = true){return srvdata->addTotalCookingCount(val,save);}
|
6a965b9f1
고영탁
엔지니어 모드 2차 구현
|
490
|
|
652e9cd54
고영탁
Merge
|
491
492
|
public slots:
void onDataChanged();
|
c50beef02
고영탁
에러 처리 루틴 및 에러 처리 ...
|
493
|
void oneSecTimerFired(void);
|
a7e8cc0aa
고영탁
버그 및 동작 개선
|
494
|
void onErrorPopupClosed(int erridx);
|
d1d566994
고영탁
에러 발생 시그널 추가
|
495
496
497
|
signals:
void onErrorFired(int erridx);
|
652e9cd54
고영탁
Merge
|
498
499
500
|
};
#endif // OVENSTATICS_H
|