Ieeepro techno solutions ieee embedded project - multi channel remote controller
- 1. IEEE Transactions on Consumer Electronics, Vol. 55, No. 4, NOVEMBER 2009
Contributed Paper
Manuscript received September 16, 2009 0098 3063/09/$20.00 © 2009 IEEE
2184
A Multi-Channel Remote Controller
For Home and Office Appliances
Hamit Erdem and Armagan Üner
Abstract- This paper presents the design and
implementation of a multi-channel remote controller (MCRC)
for home and office appliances. The aim of this work is to
integrate several existing remote controller channels in a
common platform. The proposed controller supports access to
controlled environment via Web Page, Smart-Phone (SP),
PDA, GSM network and telephone lines. The suggested
controller is more reliable than conventional ones especially
during emergency condition such as main server failure and
interruption in GSM or internet network. The suggested
system enables easy and flexible access to controlled devices.
The hardware part of the controller contains a home server
which is built upon PC and auxiliary microcontrollers. The
feasibility of this architecture has been demonstrated with a
prototype implementation and presented in details1
.
Index Terms — Multi-channel, Remote Control, GSM, DTMF,
Internet, Microcontroller, Mobile Networks.
I. INTRODUCTION
The idea of using communication channels in remote control
(RC) for home and office appliances is not new. With the
rapid development in mobile network and embedded control
technologies, it has created new opportunities in RC area.
Many prior studies describe the use of a phone as a RC device
for household appliances. In such a system which uses Dual-
Tone Multi-Frequency (DTMF) signals, the telephone keypad
has been used as an input device for RC [1-4]. The following
applications of RC are based on using Web page and internet
connection [5-8]. In this method, a remote user controls
devices via internet connected PC. The GSM network has
been used also used for RC in other works [9-12]. Prior
studies show that all of the RC channels have not been used
together in the same application. Combining more
communication channels in RC appliances will enhance
accessing chance to controlled environment in various
conditions. On the other hand, in previous studies, the local
controller is a single PC server or a digital circuitry. Using
only one main local controller will create a weakness in case
of main controller failure [11] [13]. For example, when PC is
main controller, the remote user can not access the controlled
devices and also can not use more communication channel due
to PC malfunction. In this situation, an auxiliary independent
controller that also cooperates with the PC can solve the
problem and provides an alternative access possibility for
remote user. Two independent control units will support
1
Hamit Erdem is with the Baskent University, Ankara, 06800, Turkey (email:
herdem@baskent.edu.tr).
Email of Arman Üner is (e-mail: armaganuner@gmail.com)
accessing through alternative communication channels and
also provide a more reliable access opportunity for remote
user during emergency conditions. Briefly, a new and robust
remote controller can be developed with considering of the
following issues.
• Using all of the available communication channels.
• Using a PC as the main server and another PC
independent controller as an emergency controller.
A MCRC is designed and implemented with the above
rationale. The main purpose of developing a MCRC is to
enhance options for remote user. The designed system
combines the advantages of past works on a common platform
by using of more communication channels and adding an
auxiliary controller. The channels and related control devices
in MCRC can be classified in three main categories:
• Internet based (PDA, SP, Web page)
• GSM Network based (GSM modem and PC)
• Telephone lines based ( DTMF and microcontroller)
In the proposed controller, the first preferred RC channel is
internet. The second preferred one is GSM in case of internet
failure. The last channel is considered for the worst case,
namely without internet or GSM access. In this condition the
user can access the controlled environment via telephone lines
by using DTMF based control circuit. The DTMF based
circuit works independent from main PC which provides
access to controlled devices when there is a problem with PC
or PC based remote access channels. The local controllers
share the RC data which includes user password and the
current status of the controlled devices. An effective
information sharing algorithm is considered for
communication between controllers in MCRC. Regarding the
advantages and weakness of previously studied systems, a
prototype model is designed and implemented. The designed
system is analyzed in details.
The rest of the paper is organized as follows. Section II
describes the overview and development of MCRC. Section
III presents the hardware implementing the home server. The
last section describes the software architecture of MCRC.
II. OVERVIEW OF MCRC
This section presents main features of MCRC and the design
requirements. MCRC must support the advantages of all prior
RC studies and also provides new advantages for user. User
requirements and design considerations of MCRC are given in
Table 1. The main advantages of the MCRC are the user
accessibility in any condition by using more communication
channel and adding a PC independent auxiliary controller
which is considered as an emergency controller. The
accessibility of MCRC can be defined in the following
condition. Internet is the first preferred RC channel in MCRC.
- 2. H. Erdem and A. Üner: A Multi-Channel Remote Controller For Home and Office Appliances 2185
The second RC option is using GSM receiver which provides
accessing to the system via short message service. The first
and second channels connect user to controlled device via PC,
but the third channel uses telephone lines and DTMF signals
for control via a local microcontroller. The third channel is
considered for emergency condition, which are network
interruption and PC malfunction. These conditions are shown
in Table 2. Although telephone lines based control can be used
by other control devices, it is considered only for using in
emergency condition. Table 3 classifies communication
channels and control devices in MCRC, and Fig.1 shows
relation of channels and local controllers. As shown in figure,
three different colored connection lines indicate each RC
channel. The black line indicates internet based RC; the red
line is for GSM based RC and the blue one shows control
possibility via DTMF channel. The RC system is secured with
a common password. The user password and load status
information are common data which is continuously shared
through all channels. In designed system, 8 led’s are
considered as load.
TABLE 1. USER AND DESIGN CONSIDERATIONS
User Requirements Design Considerations
• User friendly
• Common password
• Feedback signals
• Accessibility in any condition
• Information sharing between
channels
• Common database
• Secure and robust system
• Hardware independent
• PC independent access
possibility
• Support communications
standards
TABLE 2. EMERGENCY CONDITION
Emergency condition Control device Local controller
GSM/Internet interruption Telephone set μ..controller
PC malfunction PDA, SP, Mobile Phone
Telephone set
μ..controller
TABLE 3. FUNCTIONALITY OF MCRC
Internet SP, PDA, Web page PC
GSM Mobile phones and networks PC
Tel. lines Mobile and desktop telephone Microcontroller
Fig. 1. Overview of MCRC
As shown in Fig. 1, a PC server controls appliances through
internet and GSM network, and an independent
microcontroller provides control appliances through telephone
lines. A second microcontroller which is called load driver
controller (LDC) sends commands to loads and keeps the
common data. The LDC works as a reference memory and
shares the last data with other controllers. By this way, remote
user can access the last changes. Data sharing between
controllers is one of the main issues in design of MCRC.
Serial communication which is preferred in microcontroller
based applications is utilized in designed system.
Acknowledgment signal is the essential parts of any RC. In
MCRC, various acknowledgment signals in form of text, SMS
or voice are sent through related channel. For example, in
DTMF based control, main controller selects and sends the
previously recorded message in voice memory via telephone
lines.
A. RC Channels
1. Internet Based RC
Internet based RC is the first and preferred channel in
MCRC. This channel supports connection via a Web page,
PDA and SP. A Web server in local control unit receives the
request from remote client. For Web page based control a Web
page is constructed. The other mobile clients (PDA and SP)
must firstly connect to internet network. The Internet-based
approach requires a home server and Internet connection.
2. GSM Based RC
The GSM is the second preferred RC channel in MCRC.
The communication between the user and the controlled
location is established by the SMS (Short Message Service)
protocol. A GSM modem is connected to the home automation
server. The communication between the home automation
server and the GSM modem is carried out by the AT
(Attention) commands. Sending and receiving SMS messages
are all performed in the PDU (Protocol Description Unit)
mode.
TABLE 4. STEPS OF RC AND COMMUNICATION FOR EACH MODE
Internet based
Web Page Mobile Clients (PDA/ SP)
-Connect to main server.
-Login and password.
-Check or change of password
-View the last status of devices.
-Apply on/off commands.
-Record the last changes in
database.
- Return feedback message.
-Connect to the internet.
-User login by Web Services.
- Get device status.
-Change device status.
-Send data to main server.
-Record the last changes in
database.
-Return feedback message.
GSM networks based DTMF based
Connect to local GSM modem.
-Create a control message.
-Send SMS message.
-Server reads and interprets the
message
-Send command to driver.
-Record in database.
-Send feedback (SMS message)
-Ring dials, counts and controller
Connects to line.
-Password check/change options.
-Send DTMF commands.
–Controller interprets command
and sends to driver.
-Record the last changes.
-Communicate with voice chip and
Select the related message and
sent to user
- 3. IEEE Transactions on Consumer Electronics, Vol. 55, No. 4, NOVEMBER 20092186
3. DTFM Based RC
DTMF and Telephone lines are selected as an emergency
RC channel in MCRC. A DTMF decoder in local unit is the
essential part of this method. The four bit digital output of the
DTMF decoder can be used by a PC, microprocessor based
system and a discrete digital controller. All communication
data and commands are coded in DTMF standard signals. The
local controller detects command and sends to loads. Table 4
shows the of communication and control steps of each
channel.
III. LOCAL CONTROL UNIT OF MCRC
The local control unit of MCRC contains a PC and two
microcontrollers. The PC works as main server in
communication over the first two channels. The first
microcontroller works in DTMF based control circuit as main
controller, and the second one is used as LDC. The duties of
control unit are receiving commands from user, detecting and
interpreting this command, sending the result to devices and
informing the user by feedback signals. As shown in Fig. 2,
the control unit is composed of five main sections which are as
follows.
I. Main server (PC) and modem
II. DTMF base controller. (Main controller)
III. Line interface and DTMF decoder circuit.
IV. Voice record and playback circuit.
V. LDC and reference memory.
The main objectives of PC in MCRC are as follow.
• Receiving commands from Web or mobile client
• Updating the database.
• Sending feedback messages to user
• Communication with LDC for data change.
Main microcontroller (DTMF circuit) is responsible for
connecting the user to controlled device via DTMF channel.
The jobs of this controller in MCRC are as follow.
• Ring counting and line connection control
• Receiving and interpreting commands
• Sending the control commands to LDC.
• Control of voice memory in playback/record modes
and sending feedback messages to user.
• Recording the last changes in memory.
• Communicating with LDC for data exchange
The second microcontroller, LDC interfaces with loads and
acts as reference memory to save the load status knowledge
and user password. Each controller records the last changes in
its memory and then sends to LDC. By this way, each
controller can receive the last change from LDC. In normal
operating mode, user controls device through PC and LDC. In
emergency condition, DTMF based controller gives service to
user. In PC based remote control, the prerecorded feedback
text and SMS message is sent to user. A voice record/playback
chip is used for recording feedback messages in
microcontroller based control. Voice recorder is a single chip
which records and playbacks voice with onboard non-volatile
memory. This chip supports voice record up to 60 second. The
microcontroller compatible chip is capable of receiving voice
directly from microphone and sending the output directly to
the speaker or telephone lines. A hardware circuit is designed
and implemented according to Fig. 2. The circuits of main
controller, LDC and voice memory devices are shown in
figures 3 to 5. As shown in Fig. 2, line interface and line
isolation is one of the main sections in local controller. The
detail of this circuit is presented in [3]. Fig. 6 shows the
hardware of microcontroller based control units. The main
elements of this unit are as follows.
• Line isolation transformer and opto-isolater.
• DTMF decoder.
• Main controller.
• Second microcontroller as LDC.
• Voice recorder circuit.
• Keypad, Microphone and Speaker.
• Serial interface circuit.
Fig. 2. Microcontroller based local controller
Fig. 3. Schematic diagram of main controller in DTFM circuit
Main
Microcontroller
Tel. Line
PC
LDC
Line
Isolator/
Ring
Detector
DTMF
Decod.Line
Isolator/
Interface
Voice
Playback/
Record
Chip
Control
Address
Speaker
Select
Connect
Feedback
Message
Mic.
Feedback
circuit
Load
I
II
III
IV
V
Internet
GSM
- 4. H. Erdem and A. Üner: A Multi-Channel Remote Controller For Home and Office Appliances 2187
Voice
chip
LDCController
Microphone
SCI Chip
Load
DTMF Dec.
PC
Main
controller
Start
Turn off devices
response
Send F0 via TX
Read RX
User is in line
recieve last changes
from PC
Input == E0
Send password,
load states to
PC
NO
response
Send 0F via TX
Read RX
Input == 0E
Send password,
load states to
M .controller
YES
NO
YES
User is in line
recieve last changes
from controller
NO
YES
YES
NO
Fig. 4. Schematic diagram of voice memory circuit
Fig. 5. Schematic diagram of LDC circuit
Fig. 6. Microcontroller based control circuit
A. Communication between Controllers
An essential part of MCRC is effective communication
between controllers. Serial communication is selected for
communication between local controllers. PC and main
controller communicates continuously with LDC are
connected in parallel via TX and RX lines. LDC works as
master controller and manages communication between
controllers. The flowchart of serial communication between
the controllers is shown in Fig. 7. Since the slave controllers
are connected in parallel, separate identification codes are
utilized for selection of each slave. Each slave sends two
different codes as response to the master request. The first
response code informs the master that controller is active and
ready for service. The second code indicates that a remote user
is connected to the system. Details of these codes are given in
Table 5. The LDC communicates sequentially with controllers
and updates the last user information and load status. As
shown in the flowchart, LDC first checks PC, and then checks
main controller. Based on received response code, LDC sends
the latest data to these controllers or receives new data from
slaves. Master continues this polling algorithm during normal
conditions. While polling, if the master does not receive the
first byte (F0: system ID) from PC, it assumes that there is a
malfunction in PC or a failure in communication channels
through PC and then tries with other channel. If PC sends E0,
LDC interprets code as if remote user was connected to
system. In this situation, latest data may be change and LDC
must receive these data. The exchanged data between
controllers includes two parts in byte. The first byte is
password and the second byte is load status information.
Fig. 7. Flowchart of serial communication in MCRC
PC
- 5. IEEE Transactions on Consumer Electronics, Vol. 55, No. 4, NOVEMBER 20092188
TABLE 5. ID CODES IN SERIAL COMMUNICATION
Mode PC Microcontroller
Controller is active F0 0F
Remote user is connected E0 0E
B. Software Architecture in PC
The main part of the MCRC software resides on PC and the
rest of the code runs on microcontrollers. All software
components work independently and share common data. The
software of MCRC in PC must be hardware independent and
flexible for modifications. According to these considerations,
N-Tier application architecture is used in development of PC
software [14]. As shown in Fig. 8, the layers of this
architecture are user interface, functional process logic
(business rules), and data storage and data access. This
architecture is developed and maintained as independent
modules.
C. .Net Platform in MCRC
In some prior studies in mobile networks based applications,
JAVA programming language is used. Although JAVA is
platform independent, it is not capable to build cross language
programming. In this application, .NET Framework and .NET
Compact Framework are selected for programming of
different modules of MCRC in PC. .NET platform is capable
of working with cross language in same application, and
different devices can be used in the same project for a
common purpose. .NET Compact framework is enhanced
.NET framework version which is preferred in developing of
mobile projects in RC [11].
D. System Modules
System modules which are expanded in software architect
are explained in this section. These modules are as follows.
• Mobile Client
One of the main modules in MCRC is mobile client module
(PDA / Mobile phone). A mobile program is running on
mobile client, and a Web server is used for mobile client
connection. Mobile clients connect to the system with their
username and password. Web service receives mobile client
request and check it in database user information table.
Following the authorization, Web server sends devices status
data to mobile client so that user can view/change devices
status.
Fig. 8. General architecture of software
• GSM Module
GSM short message service supports message
communication between devices, capable of sending and
receiving short messages. In MCRC, a GSM modem connects
remote user to main server. Short message protocol data unit
with 7 bit alphabet (160 characters) is defined at ETSI
organization document. Communication with cell phone can
be made by using AT (Attention) command through GSM
modem. In order to control devices with short message
service, the incoming messages are read with GSM modem
application program interface. Sending and receiving SMS
messages are all performed in the PDU (Protocol Description
Unit) mode.
• Database
In MCRC, a database has been utilized for storing password
and device status information in PC. User information and
device status are stored at this database tables. Remote clients
check or change user information and device status over these
database tables. The screen shots of mobile client, Web page
and main server are shown in figures 9-11. Each figure shows
load status and user identification options.
• Server Modules
In MCRC system a server machine collects information
from clients. For that reason, an XML Web service and Web
site is running in internet information services at server. Web
service sends the collected information and client requests to
database. A listener program is watching changes of the
system, and always communicates with the database and the
serial port. When a change was made on database, it sends
new values to LDC, and also listens to the communication port
for incoming changes from LDC.
Fig. 9. Mobile client (login and device status screen shot)
Fig. 10. Web site (login and device status change screen shot)
- 6. H. Erdem and A. Üner: A Multi-Channel Remote Controller For Home and Office Appliances 2189
Fig. 11. Home server screen shot
IV. CONCLUSIONS
A MCRC for home and office automation was designed and
implemented on prototype circuit. MCRC provides remote
user access in any condition when one of the communication
channels is available only. Using common platform, common
password, PC independent auxiliary controller and an
effective data sharing algorithm are the main advantages of
MCRC. From the point of cost, the preferred RC channel is
directly access via Web, and from the point of security, the
preferred channel is GSM based access. With the addition of
sensing elements like Web-cam, temperature and motion
sensors, the designed system will work as an effective RC and
monitoring system. It is possible to expand voice feedback
system in DTMF based control and record additional
messages for emergency condition like main source
interruption, alert of motion detection sensor and other
emergency condition alarms. Combining of MCRC with
internal automation system will provide new options for user.
It must be noted that the application of MCRC is not restricted
to home and office appliances; it can also be used for RC
control of many industrial devices.
REFERENCES
[1] K. Yamamoto, S. Shinohara, and H. Yokota, " New home telephone
system using Japanese Home Bus System standard" IEEE Transactions
on Consumer Electronics, vol. 35, pp. 687-697, 1989.
[2] E. M. C. Wong, “A phone-based remote controller for home and office
automation,” IEEE Trans. Consumer Electron., vol. 40, no. 1, pp. 28- 34,
Feb. 1994.
[3] I. Coskun, H. Ardam, “A remote controller for home and office
appliances by telephone,” IEEE Trans. Consumer Electron., vol. 44, no.
4, pp.1291-1297. Nov. 1998.
[4] B. Koyuncu, “PC Remote Control of Appliances by Using Telephone
Lines,", IEEE Transactions on Consumer Electronics, vol. 41, pp. 201-
209, 1995.
[5] A. R. Al-Ali and M. AL-Rousan, “Java-based home automation
system,” IEEE Trans.Consumer Electron., vol. 50, no. 2, pp. 498-504.
May 2004.
[6] N. S. Liang, L. C. Fu, and C. L. Wu, “An integrated, flexible, and
Internet-based control architecture for home automation system in the
Internet era,” ICRA’02.IEEE International Conference on Robotics and
Automation, Washington.DC, 2002.
[7] R. J. C. Nunes and J. C. M. Delgado, “An Internet application for home
automation,” MELECON 2000, vol. 1, pp. 298-301, Cyprus, 2000.
[8] K. Tan, T. Lee and C. Yee Soh, “Internet-Based Monitoring of
Distrubuted Control Systems-An Undergraduate Experiment”, IEEE
Transactions on Education, Vol. 45, No.2, May 2002.
[9] A. Alheraish, “Design and Implementation of Home Automation
System”, IEEE Transactions on Consumer Electronics, vol. 50, no. 4,
pp. 1087-1092, Nov. 2004.
[10] H. Kanma, N. Wakabayashi, R. Kanazawa, H. Ito, “Home Appliance
Control System over Bluetooth with a Cellular Phone,” IEEE
Transactions on Consumer Electronics, vol. 49, no. 4, pp. 1049-1053,
Nov. 2003.
[11] Yuksekkaya, B.; Kayalar, A.A.; Tosun, M.B.; Ozcan, M.K.; Alkar,
A.Z.;” A GSM, internet and speech controlled wireless interactive home
automation system”, IEEE Transactions on Consumer Electronics,
Volume 52, Issue 3, . pp.837 - 843, Aug 2006.
[12] Van Der Werff, M.; Gui, X.; Xu, W.L.,”A mobile-based home
automation system”, 2nd International Conference on mobile
technology application, New Zealand, Nov.2005.
[13] Chia-Hung Lien, Ying-Wen Bai, Ming-Bo Lin,” Remote-
Controllable Power Outlet System for Home Power Management”, IEEE
Trans. Consumer Electron. vol. 53, pp. 1634 - 1641, Nov 2007.
[14] N. Veeramani, “Smart Clients versus Web Forms”, Computer. Vol. 39,
Issue 8, pp. 93 - 95, Aug. 2006
Hamit ERDEM (H.ardam) has received his MSc
(1997) and Ph.D. (2002) degrees in Technical
Education Faculty of Gazi University. Currently, he is
assistant professor in Baskent University. His
research interests include digital control of power
electronic systems, applications of microcontroller
based embedded systems and intelligent control.
Armagan ÜNER has received his B.S. degree in
Computer Engineering Department of Çankaya
University, Ankara, Turkey in 2004. He completed
M.S. study in Computer Engineering Department of
Başkent University, Turkey in 2007. He has several
work experience in .NET platform. He is Interested
with mobile, web and windows projects.