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
|
const uint32_t sensor_err_mask[3][MAX_MODEL_COUNT] = {
|
e7183cdbf
고영탁
에러 비트 수정
|
309
310
311
312
313
314
315
316
317
318
319
320
|
{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
|
b915c1b54
고영탁
팝업 처리 수정
|
321
|
}, // end of noncooking state
|
e7183cdbf
고영탁
에러 비트 수정
|
322
323
324
325
326
327
328
329
330
331
332
333
|
{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
고영탁
세척 에러 유형 추가 및 에러 ...
|
334
|
}, //cooking state
|
e7183cdbf
고영탁
에러 비트 수정
|
335
336
337
338
339
340
341
342
343
344
345
346
|
{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
고영탁
세척 에러 유형 추가 및 에러 ...
|
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
|
} // 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
|