Home network message specification based on power line communication and its application D.S. Kim*, K.J.Myung*, W.H.Kwon* and H.J.Shin** * School of Electrical Engineering, Seoul National University, Seoul, 151-742, Korea Phone: +82-2-873-2279, Fax: +82-2-878-8933, E-mail: dskim@asri.snu.ac.kr ** DVN Team, DM Lab. LG Electronics Inc. hjshin@lge.co.kr Abstract: In this paper, a home network message specification based on Power Line Communication (PLC) is proposed. As a case study, the home network message specification for white goods is proposed. It is designed for the various home appliances from the lightning to white goods using power line communication based on the web browsing protocol. The proposed home network system is composed of the home network message specification, the middle ware interface and the embedded system based on the PLC. Keywords: Home Network Message Specification, Power Line Communication, Home Appliances Introduction Homes contain a number of complex electronic products and electrical subsystems. The major problem with subsystems in homes today is that they do not communicate with each other and do not share a common interface and information. To be successful in the home network/home automation, it must meet the several requirements: the network plug and play, the selfconfiguration, the IP address assignment for home appliance, the low cost cabling and the energy management, and etc [1]. All home appliances are used by end-users, and network initialization and configuration are technical and professional works. So, the network plug-and-play and the auto-configuration technology have been required. In addition to, the user-oriented application technology, the interoperability between various applications and API in proper modeling and description, are considerable. For satisfying these demands, European Home Systems (EHS) Specification have defined the way of electronic and electric devices in and around a home can interact and communicate with each other by European Home System Association (EHSA) [2]. The specification of Energy Conservation & Health Care Network (ECHONET) also has defined middle-ware methodology and full protocol stack to facilitate the development of applications [3]. As a case of white good's specification, the Lonworks protocol specification has defined the parts of the refrigerator function profiles. But, it stands on the basis of services of the appliances. So it is not the specification of appliances but the definition of the display module of the refrigerator [4]. In the CEbus (Consumer Electronic bus) protocol, the context contains the node control object and is present in all CEbus compliant (or HomePnP) products [5]. As a middle-ware technologies of home network, Universal Plug and Play (UPnP)[6] have been developed by Microsoft Cooperation, Jini have been developed by Sun Microsystems. For the interconnection with Internet, all white goods and audio/video appliances demand IP assignments respectively. So, recent studies have been intensified on software and hardware architecture for home network systems, in particular, the internetworking architecture between Internet and home network protocols as like CEbus [8-11]. The low cost wiring (no rewiring) and energy management is hot issue in home network/home automation area. The realizations of an easy-touse, low-cost network system are important factors for the implementing home network. By these reasons, the PLC, the phone line communication and the wireless communication have been developed recently [12, 13, 14]. Among of them, the wireless communication of course provides a solution to this problem connectivity anywhere [14]. Unfortunately, at the present time, there are several competing standards for home wireless networks and for many consumers the cost is currently still 111 prohibitive. As another method, Electrical outlets and the set of power lines provide an intriguing solution - they are ubiquitous throughout the home. To reduce cabling cost and easy installation in home environment, the home automation based on PLC has been developed [15,16]. From now, there are no results about user oriented home network message specification for white goods and IP enabled the home network system using PLC. Prior results are mainly focused on the gateway system and the interconnection between heterogeneous protocols as like CEbus, X-10, IEEE1394, ATM [17,18,19]. In this paper, the Home Network Message Specification (HNMS) based on the PLC is proposed. As a case study, the message specification of white goods is described. The developed home network system on the PLC is to allow the home appliance to communicate using XML based browsing technology [5] and Java based technology. It should be able to give priority to specific devices. A home networking infrastructure to ties up all devices together. This infrastructure must be capable of carrying data, voice and audio/video throughout home. The system must work with both low bandwidth and high bandwidth device. The energy management must work with the connected home appliance using power line communication. Home Network on PLC based Embedded System(HOPES) The proposed home network architecture provides the ability to fully integrate and manage all subsystem within a home and specifies a set of APIs allowing developer to develop the application for the home network. This paper is organized as follows. In the next section, the design consideration of the proposed home network system is described. Section 3 gives overviews of the HNMS of white goods. Section 4 explains the implemented test-bed. Finally, the conclusion is presented in Section 5. Design Consideration The options in the home from a transport media perspective fall into three categories: "partially wired" (cable TV coax, phone-line twisted pair, and data grade cabling such as CAT5), wireless, and "existing wires" or power line. Among of them, power line communication technology is a powerful technology that meets many requirements of home networks, especially in the cost and future functionality as like energy management, etc [20, 21,22]. For this reason, the proposed system is considered to building TCP/IP based network by using the existing AC power lines already installed in any residence. Fig.1 Structure of HOPES in Home The HOPES architecture brings the power of client-server computing to home network tools. By using the services provided by the HOPES architecture, power line nodes can be monitored and controlled through home network. The HNMS provides network services; it maintains the network database, enables and coordinates multiple points of access to its services and data. White goods such as washing machines and Heating Ventilating and Air conditioning (HVAC) equipment have been required to connected to Internet, each device for customer service and energy management. In Fig. 1, the home server has a Virtual Device Service (VDS) same as the service which is provided by controlled device. The home server has all VDS which is supported by every devices connected in the home networks. By using the It should support a wide range of the information in the related VDS, the home server home appliance from bandwidth consuming can respond to the outdoor requests to each multimedia data to delay sensitive security device. device. 112 Virtual Device Service (VDS): an abstract representation of a specific set of resources and functionality at a real home digital device. Device Specific Attribute (DSA): an attribute mapping of the VDS to the physical and device specific functional aspects of the real home digital device typedef struct VDS_info { Home Network Message Specification LS_State_changes_allowed,In general LS_No_state_changes_allowed, LS_Limited_services_permit, } Logical_status; The structure of VDS model is showed in Fig. 2. For the device modeling, modeling group can be divided by user interface, database and control module. User interface module is made for the convenience of end users. It is composed of the device information, the GUI data, and etc. Data base module is the data of domain and file management. Visible_string vendor_name; Visible_string model_name; Logical_status vds_logical_status; Physical_status vds_physical_status; Resource_list list_of_action_service; Resource_list list_of_data_base; Resource_list list_of_variable_access_lists; }VDS_info; typedef enum Logical_status{ typedef enum Physical_status{ PS_Operational, PS_Partially_operational, PS_Inoperable, PS_Needs_PowerOn; } Physical_status; The alarm model maps to the action service object of HNMS using action notification service. Specification of White Goods Fig.2 HNMS VDS Model From Table.1 to Table.3, variable access objects for each white goods are described. For the function profiles of white goods, products of 7 home appliance company were investigated and analyzed. Table.1 shows the variable access object of the air conditioner. They are composed of variable name and data type. It will be classified into service and device. The variables object may be used to represent each detail device and control variables for the developer. They support services and functions for the end user. The control variable, action set, and program invocation are included by control module. Each module has several objects and they include the related variables and functions. Table.2 shows the variables access object of micro-oven. The variable object may be used to represent each detail device and control for the manufacturer as like Air conditioner. Information Object: one or more data elements that are referred to device information elements that are referred to together by a single name or description. Data Base Object: an abstract object that represents a subset of the capabilities of a VDS. Action Service Object: an abstract object representing a dynamic element that most closely corresponds to an execution thread in a multitasking environment, composed of a set of Domains. Table.3 shows the variables of the washing machine. They are also classified into service and device. The variables object may be used to represent each detail device and control for the washing machine manufacturer. They support variables for using the service and function for the end user. In addition to the introduced examples, the refrigerator, lightening, TV, audio so are analyzed and documented also. The syntax notation of VDS Information object is defined as follows. It is composed of the product information and the physical and logical status of the device. typedef struct DB_info { Visible_string data_base_name; DB_State state; }DB_info; typedef struct MO_DB_Data { kindof_MO_Select Select; unsigned int Temperature; int Humidity; 113 Name Type Type Description enum {idle, cold_air, clean_air, hot_air } R/W AC_Status enum AC_RoomTemperature Int R AC_TargetTemperatureSet Int W AC_TargetTemperature R Int R AC_AirFource enum enum{low, medium, high } AC_AirFourceSet enum enum{low, medium, high } W AC_AirUDDirection Int int(-90 ~ +90) R AC_AirUDDirectionSet Int int(-90 ~ +90) W AC_AirLFDirection struct struct { bool auto; int LFdegree; } R AC_AirLFDirectionSet struct struct { bool auto; int LFdegree; } W R AC_Reservation TimeSet Time W AC_ReservationTime Time R AC_CurrentTimeSet Time W AC_CurrentTime Time R ............. .... Name Type WM_MaterialSet WM_Material struct { WM_WaterSupplySet Struct bool Hot_Water; //on, off bool { Cold_Water;//on, struct off } Hot_Water; //on, WM_WaterSupply Struct bool off bool Cold_Water; //on, WM_WaterHeightSet Float off } WM_WaterHeight Float WM_WashingMethod Enum enum { auto, manual } Set WM_WashingMethod Enum enum { auto, manual } struct { WM_ReservationSet Struct bool Reservation; time Time; WM_method method;} struct { WM_Reservation Struct bool Reservation; time Time; WM_CurrentTimeSet Time WM_method method;} WM_CurrentTime ..... Category enum On/Off R/W MO_Status enum Run, Stop R/W MO_Door enum open, close R/W MO_Temperature float R MO_TemperatureSet float W MO_Start boolean On W MO_Protection enum On/Off R/W MO_Warming enum On/Off R/W MO_WarmingTempera float ture MO_EndingAlarm enum On/Off R/W On/Off R/W MO_EconomicPower enum On/Off R/W MO_Menu_Select enum worm, cook, W grill MO_Timer time R MO_TimerSet time W Time .... ... R/W R W R W R W R W R W R W R WM_WashingRemain Time gSet WM_WashingRemain Time g WM_AutoWashing Bool R/W MO_Power Type Description enum {idle, washing, Enum rinsing, drying, pumping} Enum enum {very_soft, soft, hard, very_hard} enum {very_soft, soft, Enum hard, very_hard} WM_Status Table.1 Variable Objects of Air Conditioner Name Type W R W ... Table .3 Variable Object of Washing Machine time Time; }MO_DB_Data; ........ ........ ........ Table .2 Variable Object of Micro Oven typedef enum kindof_MO_ { Warming, Cook, grill } kindof_MO_Select; typedef struct AS_info { Visible_string action_service_name; AS_Statestate; Resource_list list_of_data_base_names; Visible_string start_argument; }AS_info The following syntax notations are the examples of Data Base object and Action Service object. They are composed of structure name and element. In case of the DB object, the AS object, all appliance have a similar syntax notation. As an example, the described syntax notation of the structure shows the DB object, AS object of the Micro Oven. They are composed of the structure name and elements. 114 device user in Step 4. Implementations Test-bed using XML based browsing technology As a middleware, XML based home network middleware is applied to our test-bed. UPnP enables the browser to be extended to control devices, and because UPnP devices are controlled with explicit protocols, the browser must somehow learn how to talk to UPnP devices. This learning process is driven entirely from the device itself and is accomplished entirely by uploading an XML document that describes the capabilities of the device. a ) Step 1: Discovery and Identification b) Step 2: Send and Request of Device Description Fig .3 Main Home Browser Any device can transfer bulk data (e.g. files) or control data streams from any device on the network, to any device on the network, under the control of any device on the network. Control Point sends Discovery Request to a newly plugged device and the device responds in Step 1. When devices plugged into the network, the device automatically must configure itself. The device then announces its presence to other devices already on the network using a simple discovery protocol based on the Internet. HTTP protocol and is immediately ready to share its services with any device that requests them. User Control Point requests UPnP description document and the device sends it in Step 2. User Control Points can retrieve a Description Document by issuing an HTTP GET on a Description URL. This URL is returned in the location header of either an SSDP announcement. An HTTP GET is used to retrieve sub-elements of a Description Document that are expressed as URLs. User Control Point requests additional information, such as sends device user interface in Step 4. device icons, the name and SCPD in Step3. When user selects device icon, the presentation server of the controlled device sends 115 c) Step 3:Additional Information(Icon, Name) c) Step 4:Send Device User Interface d) Step 5: Device Control Fig. 4: XML based Browsing Scheme in Test-bed Test-bed using JAVA technology As a second solution, Java based technology is applied for implementation of test-bed. The web server is used for the monitoring and controlling of the remote controlled device using Power Line communication. As a PLC adaptor is connected to PC by serial communication. The implemented test-bed had flow as like Fig.5. The Messages are transferred through Java applet in web browser. In Fig.5.(a), CEbus devices are tested by ActiveX technology. In this case, the applied method is similar to the prior test methodology except discovery process. a) Message Flow of Java based Test-bed b) Block Diagram of Server-Client Model Fig. 5: Java based PLC Test-bed The example of simple codes for the home gateway system is as follows. In first, the PLC modem is initialized by the function with dialog box. And then, the thread is produced for services process. When it is connected from the client, the message are transferred from the client. The messages from the client are interpreted in PLCPrintf( ) function, and then it sends proper packets to the PLC modem(CEcom). m_cebus.InitializeCECom(); listen(server_fd, 5); … while(1) msg_size = recv(client_fd, buf, 2, 0); buf[msg_size] = ''; if (flag == 1) PLCPrintf(hDlg,buf); flag = 0; else flag = 1; m_cebus.XMitPwrLine(cecom_data); Test-bed using PDA For the extending of application areas, the PDA (personal device assistant) based on the home automation is developed. In case of accessing the home network, the user Interface program of the Java applet is downloaded to the client, and then user control the home appliance using the PDA. Fig.6 represents the display panel of the PDA for the home automation. 116 proposed. By using the developed message specification, the home network test-bed based on the PLC is implemented. The proposed message specification is designed for the home appliances as like white goods in home environment. TCP/IP network by using the existing AC power lines will be adopted in any residences. The developed system will be used in Internet applications that are delivered over high-speed Internet connections such as DSL or cable. In future, the HNMS will be extended to continuously for the acceptance of reference specification of the home network system. The priority based event scheduling, the home security and the energy management, the traffic modeling of the home network using PLC will be developed . a) Example of Room Control References b) Example of Monitoring Fig. 6:Home Automation Program using PDA Fig.6.a) shows about the example of home automation for the energy management. Fig.6.b) represents about the example of the monitoring S/W. Fig.7 represents the message flow between the PDA and the home gateway which is connected to the power line modem. Fig .7: Message Flow between PDA and Home Gateway Conclusions In this paper, the HNMS for whites goods is [1]J.A. DiGirolamo, "HOME NETWORKS FROM TOASTERS TO HDTV", International Conference on Consumer Electronics, pp.82-83, Jun. 1996 [2]Home System specification Version 1.3 Reference, EHS, March, 1997 [3]ECHONET specification Version 1.0, ECHONET forum, Feburary, 2000 [4]Lonmark 1.0, Lonwork , Feburary, 2000 [5]EIA Home Automation System (CEBus) Standard IS-60. "Common Application Language Specifications," EIA, Part 8, Jun. 29th 1992. [6] Universal Plug and Play Device Architecture Reference Specification Version 1.0, Microsoft Corporation, June. 2000 [7] P. M. Cocoran, Papai F. and Zoldi A. "User Interface Technologies for Home Appliances and Networks," IEEE Transactions on Consumer Electronics, Vol. 44, No. 3, pp.679-685, Aug. 1998 [8] A. Cucos and P. M. Cocoran, ''Real Time ATM for Remote Access to Home Automation and Digital A/V networks ," IEEE Transactions on Consumer Electronics, Vol. 44, No. 3, pp.482-488, Aug. 1998. [9] J. Desbonnet and P. M. Corcoran, "System Architecture and Implementation of A CEBus/INTERNET Gateway," IEEE Transactions on Consumer Electronics, Vol. 43, No. 4, pp.1057-1062, Nov. 1998. [10] P.M. Cocoran and Desbonnet, "Browser Style Interface to a Home Automation Network", IEEE Transactions on Consumer Electronics, Vol. 43, No. 4, pp.1063-1069, Nov. 1997 [11] P.M. Corcoran, "Mapping Home-Network 117 Appliances to TCP/IP Sockets Using A ThreeTiered Home Gateway Architecture," IEEE Transactions on Consumer Electronics, Vol. 44, No. 3, pp.729-736, Aug. 1998. [12 Gunter Leeb, Ratko Posta, Gerhard H. Schildt, ''A configuration tool for homenet", IEEE Transaction on Consumer Electronics, Vol.42, pp.387 -394, Aug. 1996 [13] S. Koutroubinas, T. Antonakopoulos, V. Makios, "A new efficient access protocol for integrating multimedia services in the home environment ", IEEE Transactions on Consumer Electronics, Vol. 45, No. 3, pp.481 -487, Aug. 1999 [14] A. Chandra, V. Gummalla, J.O. Limb, ``An access protocol for a wireless home network", International conference on Wireless Communications and Networking Conference, Vol. 3, pp.1392-1396, 1999 [15] David L. Waring, Kenneth J. Kerpez and Steven G. Ungar, "A newly emerging customer premises paradigm for delivery of network-based services", International Journal of Computer Networks, vol.31, No.4, pp.411-424, 1999 [16] J.Newbury, W.Miller, ``Potential communication services using power line carriers and broadband integrated services digital network", IEEE Transactions on Power Delivery, Vol.14, No.4, pp.1197 -1201, 1999 [17] T. Pfeifer, ``Internet-Intranet-Infranet: a modular integrating architecture", IEEE Workshop on Future Trends of Distributed Computing Systems, pp.81 -86, 1999 [18] J.G. Rusnak, ``Anywhere in the Home", Fourth International Workshop on Community Networking, pp.19 -24, 1997 [19] S. Ramanathan, R. Gusella, ``home network controller for providing broadband access to residential subscribers", IEEE Transactions on Consumer Electronics, Vol. 41, No. 3, pp. 859868, Aug. 1995 [20] Shuang Deng, A.R. Bugos, P.M. Hill, ``Design and evaluation of an Ethernet-based residential network", IEEE Transactions on Selected Areas in Communications, Vol. 14, No. 6, pp. 1138-1150, Aug. 1996 [21] M. Nael, ``Design issues for usability of residential multifunction terminals", IEEE Transactions on Selected Areas in Communications, Vol. 9, No. 4, pp. 518-523, May. 1991 [22] V. Balabanian, L. Casey, N. Greene, ``Digital storage of media-command and control protocol applied to ATM", IEEE Transactions on Selected Areas in Communications, Vol. 14, No. 6, pp.1162-1172, Aug. 1996 118