An Environment Control System for a Smart Living Space
3.3 An Intelligent Light Control System for a Smart Living SpaceSpace
3.3.6 Prototyping Results
We have developed a prototype to verify our designs. Fig. 3.14 shows the system architecture.
Users carry a badge with a built-in light sensor. The user’s preference can be configured via the badge. The control host can make decisions and send them to lighting devices. We test our system in a room of size8 ×6 m2with whole lighting devices deployed in a grid manner. Some demo videos of our work can be found at http://hscc.cs.nctu.edu.tw/iLight/.
Below, we introduce each device, and then give our testing results.
3.3.6.1 User Badge and Light Sensor
The user badge has a wireless module Jennic (JN5139) [26], a light sensor (TSL230) [35], a TFT LCD panel (ILI9221) [60], and some input buttons. JN5139 is a single-chip microprocessor with an IEEE 802.15.4 [23] module. Fig. 3.15(a) illustrates the front and back views of the user badge. The outlook of a badge is like a bookmark. Users can specify their preferences via our graphic user interface (GUI) and buttons.
3.3.6.2 Whole Lighting Device
We use LEDs as light sources and deploy them on the ceiling. As shown in Fig. 3.15(b), each whole lighting device has a4 × 4 LED module and a thermal pad is attached on its back for heat dissipation. We adopt pulse width modulation of digital input/output (DIO) to control the luminous intensity of light sources. Each LED has20 levels of illumination, ranging from 0%
to 100% luminous intensity. Fig. 3.15(c) shows our prototype.
3.3.6.3 iLamp
Fig. 3.15(d) shows the iLamp, which is composed of a robot arm, four sets of LEDs, and a JN5139 module. The robot arm consists of six Dynamical AX-12 actuators [5] as the lamp
0 Average energy consumption (candela) 5
Number of users Average energy consumption (candela) 5
Number of users Average energy consumption (candela) 10
Number of users Average energy consumption (candela) 10
Number of users
Figure 3.11: Comparison under the binary satisfaction model: (a) network scenarioS1 and pool RP 1, (b) network scenario S1 and pool RP 2, (c) network scenario S2 and pool RP 1, and (d) network scenarioS2 and pool RP 2.
0
Figure 3.12: Requirement pools: (a)RP 3 and (b) RP 4.
holder. Each AX-12 actuator can rotate from 0◦ to 300◦ at an accuracy of 0.33◦. LEDs are similar to those used in whole lighting devices and with20 levels of illuminations.
3.3.6.4 Control Host
Implemented by JAVA, the control host is the core of our system. It is composed of three components, including the User Status Tracker, Decision Handler, and Device Controller. By applying Java thread programming techniques, tasks are handled concurrently.
• User Status Tracker: This component checks current illuminations of all users periodi-cally and, when needed, updates users’ requirements. If it finds that a user’s requirement is not satisfied or is updated, the Decision Handler will be triggered.
• Decision Handler: This component realizes our control algorithms. It is triggered by the User Status Tracker. The linear and non-linear programming are resolved by the MATLAB Builder for Java [42]. The results are sent to the Device Controller to adjust lighting devices
• Device Controller: This is the interface between the control host and actuators. Com-mands are sent via RS232.
3.3.6.5 Performance Verification
We first verify the correctness of Eq. (3.2) through some tests. In Fig. 3.16(a), we fixh and ΔCjX and varyl from 30 to 230 cm. We measure the received illumination ΔLi,j (in dash lines) and derive the ideal illumination (in solid line). The distance error between ideal and real values are calculated (in bars). As can be seen, the distance error is bounded by10 cm. In Fig. 3.16(b),
0 Average energy consumption (candela) 5
Number of users Average energy consumption (candela) 5
Number of users Average energy consumption (candela) 10
Number of users Average energy consumption (candela) 10
Number of users
Figure 3.13: Comparison under the continuous satisfaction model: (a) network scenarioS1 and poolRP 3, (b) network scenario S1 and pool RP 4, (c) network scenario S2 and pool RP 3, and (d) network scenarioS2 and pool RP 4.
RS232
Figure 3.14: Hardware and software system architecture of our prototype.
iLamp
Figure 3.15: (a) Front and back views of user badge, which looks like a bookmark, (b) whole lighting device, (c) testing environment, and (d) iLamp.
0
Δ L (lux) Distance error (cm)
Distance (cm)
Δ L (lux) Distance error (cm)
Δ C (candela) Ideal candela
Real candela Distance error
(a) (b)
Figure 3.16: Verification of Eq. (3.2): (a) fixingh and ΔCjX and varyingl. (b) fixing h and l and varyingΔCjX.
we fixh and l and vary ΔCjX from 40 to 400. We measure ΔLi,j and calculate the distance error. Again, the gaps between the real distance and the derived distance are quite small.
Next, we verify our results in a real environment. We place 20 whole lighting devices in a 8 × 6 m2 room in a grid-like manner. We adopt the same performance indices introduced in Section 3.3.5. In Fig. 3.17, we compare the simulation and implementation results where there are 1 to 5 users. Each user may randomly select a requirement from requirement pools RP 1 and RP 2 for the binary satisfaction model or RP 3 and RP 4 for continuous satisfaction model. In all performance indices (average energy consumption, GAP, and satisfaction), the difference between simulation and implementation results are very close. The results indicate the correctness of our approaches. We further validate our results under different weather con-ditions, which may reflect to different nature light scenarios. Fig. 3.18 shows the results by using the measured natural light as the index. We fix the number of users to three and randomly select their lighting requirements. There still exists high consistency between simulation and implementation results in most cases. Also, when the average natural light increases, the gap in energy consumption tends to become smaller.
For iLamp, we place a book on the desk and attach the light sensor on the book. We try to move the book (i.e, move the light sensor) from time to time. In this experiments, theΔC is set to12.25 candela. The average time for executing the algorithm of iLamp are about 3 seconds.
(The steps 1 and 2 take about one second, and steps 3 and 4 take about two seconds.) This experiment shows that the amount of error of the angle pointing toward the light sensor is less than15◦.