8c2952457
김태훈
응용 프로그램 추가
|
1
|
#include "ovencontroller.h"
|
6eb13ba2e
김태훈
예열 팝업 동작 보완 및 동작 ...
|
2
3
|
OvenController::OvenController(QObject *parent, Oven *oven) : OvenInterface(parent),
oven(oven)
|
8c2952457
김태훈
응용 프로그램 추가
|
4
|
{
|
6f96c947a
김태훈
GUI 0.1.4
|
5
6
|
bzero(&control, sizeof(control));
bzero(&state, sizeof(state));
|
8c2952457
김태훈
응용 프로그램 추가
|
7
8
9
10
11
12
13
14
15
16
|
}
void OvenController::setUdpHandler(UdpHandler *udp)
{
this->udp = udp;
connect(udp, SIGNAL(changed()), this, SLOT(onDataChanged()));
}
void OvenController::onDataChanged()
{
|
d66d7f5b4
김태훈
GUI 버전 0.1.2
|
17
|
bool opened = state.door_state != 0;
|
8c2952457
김태훈
응용 프로그램 추가
|
18
19
|
udp->fillControl(control);
udp->fillData(state);
|
d66d7f5b4
김태훈
GUI 버전 0.1.2
|
20
21
22
23
24
25
26
27
28
29
30
|
if (opened)
{
if (state.door_state == 0)
emit doorClosed();
}
else
{
if (state.door_state != 0)
emit doorOpened();
}
|
6eb13ba2e
김태훈
예열 팝업 동작 보완 및 동작 ...
|
31
32
33
34
|
oven->setCurrentHumidity(currentHumidity());
oven->setCurrentTemp(currentTemp());
oven->setCurrentInterTemp(currentInterTemp());
|
8c2952457
김태훈
응용 프로그램 추가
|
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
}
int OvenController::currentTemp()
{
return state.curr_heat;
}
int OvenController::currentHumidity()
{
return state.curr_humidity;
}
int OvenController::currentInterTemp()
{
|
eeffffb47
김태훈
중심 온도 측정 기준 변경
|
50
|
return qMin(qMin(state.sensor6, state.sensor7), qMin(state.sensor8, state.sensor9));
|
8c2952457
김태훈
응용 프로그램 추가
|
51
52
53
54
|
}
bool OvenController::door()
{
|
d66d7f5b4
김태훈
GUI 버전 0.1.2
|
55
|
return state.door_state != 0;
|
8c2952457
김태훈
응용 프로그램 추가
|
56
|
}
|
dedc5eee3
김태훈
프로토콜 변경 반영
|
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
void OvenController::setMode(Define::Mode mode)
{
int m;
switch (mode)
{
case Define::SteamMode:
m = 2;
break;
case Define::DryMode:
m = 0;
break;
case Define::CombiMode:
m = 1;
break;
default:
return;
}
qDebug() << "Set Mode" << m;
udp->set(TG_COOK_MODE, m);
}
|
8c2952457
김태훈
응용 프로그램 추가
|
78
79
|
void OvenController::setHumidity(int percentage)
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
80
|
qDebug() << "Set Humidity" << percentage;
|
8c2952457
김태훈
응용 프로그램 추가
|
81
82
83
84
85
|
udp->set(TG_HUMIDITY, percentage);
}
void OvenController::setTemp(int celsius)
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
86
|
qDebug() << "Set Temperature" << celsius;
|
8c2952457
김태훈
응용 프로그램 추가
|
87
88
|
udp->set(TG_HEAT, celsius);
}
|
43d009fb5
김태훈
오븐 제어 인터페이스에 시간 설...
|
89
90
|
void OvenController::setTime(int secs)
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
91
|
qDebug() << "Set Time" << secs;
|
43d009fb5
김태훈
오븐 제어 인터페이스에 시간 설...
|
92
93
|
udp->set(TG_TIME, secs);
}
|
8c2952457
김태훈
응용 프로그램 추가
|
94
95
|
void OvenController::setInterTemp(int celsius)
{
|
751979413
김태훈
중심 온도 기능 비활성화가 제대...
|
96
97
98
99
100
101
102
103
104
105
|
if (celsius > 0)
{
qDebug() << "Set Core Temperature" << celsius << "+5";
udp->set(TG_INNER_TEMP, celsius + 5);
}
else
{
qDebug() << "Set Core Temperature 0";
udp->set(TG_INNER_TEMP, 0);
}
|
8c2952457
김태훈
응용 프로그램 추가
|
106
107
108
109
|
}
void OvenController::setFan(int rpm)
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
110
|
qDebug() << "Set Fan RPM" << rpm;
|
8c2952457
김태훈
응용 프로그램 추가
|
111
112
113
114
115
|
udp->set(TG_CONV_RPM, rpm);
}
void OvenController::startCooking()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
116
|
qDebug() << "Start Cooking";
|
8c2952457
김태훈
응용 프로그램 추가
|
117
|
udp->set(TG_OVEN_MODE, 1);
|
366850165
김태훈
연동 시험 결과 반영
|
118
|
udp->set(TG_TIME, 1440);
|
8c2952457
김태훈
응용 프로그램 추가
|
119
120
121
122
123
|
udp->turnOn(TG_COOKING);
}
void OvenController::stopCooking()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
124
|
qDebug() << "Stop Cooking";
|
8c2952457
김태훈
응용 프로그램 추가
|
125
126
127
128
129
|
udp->turnOff(TG_COOKING);
}
void OvenController::startPreheating()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
130
|
qDebug() << "Start Preheating";
|
6eb13ba2e
김태훈
예열 팝업 동작 보완 및 동작 ...
|
131
|
udp->set(TG_OVEN_MODE, 1);
|
99b8066f4
김태훈
V0.1.1
|
132
|
udp->set(TG_TIME, 1440);
|
8c2952457
김태훈
응용 프로그램 추가
|
133
134
135
136
137
|
udp->turnOn(TG_PREHEAT);
}
void OvenController::stopPreheating()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
138
|
qDebug() << "Stop Preheating";
|
8c2952457
김태훈
응용 프로그램 추가
|
139
140
141
142
143
|
udp->turnOff(TG_PREHEAT);
}
void OvenController::startCooldown()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
144
|
qDebug() << "Start Cooldown";
|
8c2952457
김태훈
응용 프로그램 추가
|
145
146
147
148
149
|
udp->turnOn(TG_COOLDOWN);
}
void OvenController::stopCooldown()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
150
|
qDebug() << "Stop Cooldown";
|
8c2952457
김태훈
응용 프로그램 추가
|
151
152
153
154
155
|
udp->turnOff(TG_COOLDOWN);
}
void OvenController::startHumidification()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
156
|
qDebug() << "Start Humidification";
|
8c2952457
김태훈
응용 프로그램 추가
|
157
158
159
160
161
|
udp->turnOn(TG_INNERWATER);
}
void OvenController::stopHumidification()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
162
|
qDebug() << "Stop Humidification";
|
8c2952457
김태훈
응용 프로그램 추가
|
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
|
udp->turnOff(TG_INNERWATER);
}
void OvenController::startWashing()
{
}
void OvenController::stopWashing()
{
}
void OvenController::openDamper()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
178
|
qDebug() << "Open Damper";
|
6eb13ba2e
김태훈
예열 팝업 동작 보완 및 동작 ...
|
179
|
udp->turnOn(TG_OUTHUMIDITY);
|
8c2952457
김태훈
응용 프로그램 추가
|
180
181
182
183
|
}
void OvenController::closeDamper()
{
|
bc13b09fb
김태훈
디버깅 메시지 추가
|
184
|
qDebug() << "Close Damper";
|
6eb13ba2e
김태훈
예열 팝업 동작 보완 및 동작 ...
|
185
|
udp->turnOff(TG_OUTHUMIDITY);
|
8c2952457
김태훈
응용 프로그램 추가
|
186
|
}
|