# Patent

## Title
Self-construction system of wireless sensor network and method for self-construction of wireless sensor network using the same

## Abstract

Disclosed is a self-construction system of a wireless sensor network, and a method for self-construction of a wireless sensor network using the same. Also disclosed is a method for self-construction of a cluster tree structure-based wireless sensor network (WSN). The present invention can connect devices distributed densely in a wide area to a network while maintaining the advantages of a conventional tree-structured network, such as the reduction of time required for network construction, traffic by the exchange of control command messages, and a load for a routing path search, and thus can provide a WSN having an improved self-construction performance.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is the U.S. national phase of International Application No. PCT/KR2012/000484 filed Jan. 19, 2012, and claims priority to Korean Patent Application No. 10-2011-0015589 filed Feb. 22, 2011, the disclosures of which are hereby incorporated by reference in their entirety.
TECHNICAL FIELD
The present invention relates to a self-construction system of a wireless sensor network, and a method for self-construction of a wireless sensor network using the same, and more particularly, to a system for self-construction of a large-scale, high-density wireless sensor network in a cluster tree structure and a method for self-construction of a large-scale, high-density wireless network using the same.
BACKGROUND ART
In recent years, since a micro electro mechanical system (MEMS) based sensor technique, a low-power analog and digital electronic technique, a low-power RF design technique, and the like have been rapidly developed, a network technique using comparatively low-cost, low-power type wireless sensors have been actively developed.
Since self-construction in wireless sensor networks (hereinafter, referred to as WSN) as a very important technique for construction of a large-scale network comprising a large number of sub systems can be generally used for improving network extensibility and dynamically adapting to a change in environmental condition, it plays a very important role in a communication system.
Cluster-based self-construction in the WSN segments an entire network by the cluster unit to present a networkbased structure for easy control and uses a hierarchical approach that divides an entire WSN into cluster classes, and respective sensor nodes form one cluster around one cluster head and segment the entire network by the cluster unit. A cluster head of each cluster serves to route data which are acquired, collected, and merged in each cluster, to a cluster head of another cluster or a base station.
The process of self-construction of the WSN generally comprises three steps, that is, a network structure determination step of determining the construction of the network, a network connection step of connecting devices and extending the network according to the determined network structure, and a data transmission step in which the connected devices transmit and receive signals to and from each other. When the devices of the WSN access to the network, they are granted with their own unique addresses to recognize each other by the address, data transmission and reception between intra-cluster devices comprising one parent device and a plurality of child devices are performed within the same superframe duration, and devices which are far from each other transmit and receive data through multi-hops due to limitation of a transmission distance of the device. Therefore, a unique address is allocated to each device for self-construction of a large-scale WSN, the superframe duration used by each cluster is independently allocated in order to prevent cluster-to-cluster interference, and it is essential to search for a routing path for multi-hop transmission.
A balanced-tree based WSN self-construction process of Zigbee which is a representative WSN system can be described in what follows. First, the network structure determination step makes a coordinator that controls the entire network construct a balanced-tree based network according to a maximum network depth, the maximum number of child devices, the maximum number of child routers, and the like. Thereafter, in the network connection step, each device determines all routers within a communication range as a parent candidate group, and selects a router in which a network depth is smallest among the routers as a parent, and as a result, a full function device requests subscription as a router and a reduced function device requests subscription as an end device. The router assigned as the parent determines whether to accept the device that requests the subscription by itself in consideration of the maximum number of child devices and the maximum number of child routers and thereafter, directly allocates addresses to the devices exploiting a balanced-tree structure, establishing the parent and child relationship. In this case, to determine the balanced-tree structure, each parent device transmits a beacon signal containing parameters including the maximum network depth, the maximum number of child devices, the maximum number of child routers, allowing the child devices to share the balanced-tree structure.
When a specific device cannot make a subscription to any of all neighboring routers, it recognizes network subscription failure and becomes an orphan device, and when the full function device cannot make subscription to the network as a router, it re-tries to make subscription to the network as an end device.
Finally, devices connected to the network can transmit data by means of hierarchical routing associated with the balanced-tree structure in the data transmission step.
Zigbee can make self-construction of a balanced-tree based WSN while providing advantages of using reduced time and traffic for exchange of control command messages in the network construction, and requiring no additional search for routing path in a tree based hierarchical routing, but it may have problems in that the network depth is limited due to a characteristic of a balanced-tree in which the size of the tree structure is exponentially increased according to the network depth and the number of useless addresses is increased as the formed WSN is enlarged because the balanced-tree structure is determined without considering operating environments. Further, since the full function device that can the router or the end device requests subscription as a router until subscription of the full function device is rejected by all neighboring parent candidates, the routers are concentrated at the vicinity of the coordinator, and as a result, it is difficult to extend the network far even though the network depth is increased. Moreover, since a channel is saturated and thus the clusters cannot have an independent superframe when the density of devices is high due to a constraint condition in which an entire network uses a single channel, connectivity of the network is significantly degraded due to cluster-to-cluster interference.
DISCLOSURE
Technical Problem
The present invention is contrived to solve the problems of the related art and to solve a problem in which a network depth is limited due to a characteristic in which the size of a tree structure is exponentially increased according to the network depth in a balanced-tree based WSN and a problem in which the number of useless addresses of a WSN formed by determining the balanced-tree structure without considering an operating environment of a network is increased.
Further, the present invention may alleviate a problem that the full function devices may be heavily located near the coordinator, which may hamper the network expansion even with the increase of the network depth, since a full function devices which can be a router or an end device tries to make subscription as a router until it cannot make subscription to any of all parent candidates.
Moreover, the present invention may alleviate a problem that the network connectivity is significantly degraded due to the interference among clusters, since a channel is fully utilized and thus clusters cannot have their superframe independent of each other when the network density is high and the entire network uses a single channel.
Technical Solution
In order to achieve the objects, a method for self-construction of a cluster tree structure based wireless sensor network (WSN) includes: (A) a network structure determination step of calculating, by a coordinator, which is one of parent devices, a minimum network depth for covering up the entire area of the WSN and the number of devices located within a communication range, and calculating the maximum number of child router devices and the maximum number of child end devices according to a network depth in each tree step to determine a network structure; (B) a network construction step of selecting, by the parent device in each tree step, the device as a child device with address allocation in response to a subscription request of a device as a child device, and allocating a superframe duration to a child router device among the child devices; and (C) a data transmission step of searching for, by a router device having data packets, a routing path by means of address comparison between its own address and a final destination address of the packet, and transmitting the packet according to the routing path.
Preferably, step (A) may include: (A-1) calculating an average communication range and calculating the minimum network depth based on the average communication range; (A-2) calculating the number of devices located within the average communication range based on the average communication range and the minimum network depth; (A-3) determining a maximum network depth and the number of tree steps; and (A-4) calculating the maximum number of child router devices and the maximum number of child end devices according to the network depth in each tree step.
More preferably, in step (A-3), the maximum network depth may be set as the minimum network depth and the number of tree steps may be input from a user or set to a previously determined value, and in step (A-4), a tree threshold depth may be determined for each tree step, and a structure for each tree step may be determined by calculating the maximum number of child router devices and the maximum number of child end devices in each tree step in consideration of the maximum network depth and the tree threshold depth.
Preferably, step (B) may include (B-1) selecting, by a child device, a parent candidate group, selecting a parent device in consideration of a network depth and a transmission link quality (LQ) of parent devices in the parent device candidate group, and requesting subscription to the selected parent device as a child device; (B-2) selecting, by the selected parent device, a child device that requests subscription in consideration of the number of its child devices and allowing the selected child device to subscribe as its child device; (B-3) allocating, by the selected parent device, an address to the selected child device; and (B-4) allocating, by the selected parent device, a superframe duration to child router devices among its child devices with allocated address.
Herein, when the child device is selected as a child router device, step (B-1) may further include estimating, by the child device, the transmission link quality (LQ) from reception characteristics of a received beacon signal and initializing a parent device candidate group comprising routers whose transmission link quality (LQ) is larger than a threshold value; determining the parent device candidate group in consideration of the network depth of parent devices in the parent candidate group; selecting a parent device which has the lowest transmission link quality (LQ) in the parent device candidate set; and transmitting to the selected parent device a subscription request message including the number of parent devices in the parent device candidate group.
Further, when the child device is selected as the child router device, step (B-2) may further include initializing, by the selected parent device, its child router candidate group comprising devices that request subscription as its child router; selecting a child router device which has the highest transmission link quality (LQ) among child router devices in the child router candidate group when the selected parent device is the coordinator, and selecting a child router device which has the smallest number of the parent devices in the parent candidate group among child router devices in the child router candidate group when the selected parent device is the router; adding the selected child router device to its child router group in subscription; and confirming the subscription of the selected child router device in consideration of the number of child routers in the child router group and the maximum allowable number of child routers.
Herein, when the child device is selected as a child end device, step (B-1) may further include estimating, by the child device, the transmission link quality (LQ) based on reception characteristics of a received beacon signal and initializing a parent device candidate group comprising routers whose estimated transmission link quality (LQ) is larger than a threshold value; determining parent devices belonging to the parent device candidate group in consideration of their network depth; selecting a parent device which has the largest transmission link quality (LQ) in the parent device candidate group; and transmitting a subscription request message to the selected parent device.
Further, when the child device is selected as the child end device, in step (B-2), the selected parent device may confirm the subscription of child end devices in a first-come-first-service manner in consideration of the maximum allowable number of child end devices which is equal to the difference between the maximum allowable number of child devices and the maximum allowable number of child router devices.
In addition, when a device requesting subscription as a child router device is rejected by all of the parent devices in the parent candidate group as a result of performing step (B-2), it performs step (B-1) as a child end device again.
Preferably, step (B-3) may include calculating, by the selected parent device, the maximum allowable number of child devices to be subscribed in its lower hierarchical tree steps; allocating its child router devices their address each of which is separated at a space of the maximum allowable number of their descendent child devices; and allocating the address to its child end devices by increasing one by one from the largest address that its child routers use.
Preferably, step (B-4) may include (B-4-a1) estimating, by the selected parent device and the child router device, the availability of a channel selected by the selected parent device by means of channel sensing; (B-4-a2) generating, by the selected parent device, information on candidate superframe duration available in the estimated channel; (B-4-a3) transmitting, by the selected parent device, the information on candidate superframe duration to the child router device; (B-4-a4) determining, by the child router device, a superframe duration among candidate superframe durations in consideration of the received information on candidate superframe duration and available superframe duration estimated by itself; (B-4-a5) transmitting, by the child router device, information on the determined superframe duration to the selected parent device; and (B-4-a6) determining the superframe duration to be used by the selected parent device and the child router device.
Further, step (B-4-a4) may include comparing, by the child router device, the received information on candidate superframe duration and its estimated available superframe duration, and transmitting to the selected parent device a failure message on the selection of superframe duration when no superframe duration is available; and repeating, by the selected parent device, step (B-4-a1) through channel sensing on a different channel when the failure message is received.
In addition, step (B-4) may include (B-4-b1) estimating, by the selected parent device and the child router device, the availability of a channel selected by the selected parent device by means of channel sensing; (B-4-b2) generating, by the child router device, information on candidate superframe duration available in the estimated channel; (B-4-b3) transmitting, by the child router device, the information on candidate superframe duration to the selected parent device; (B-4-b4) determining, by the selected parent device, a superframe duration among candidate superframe durations in consideration of the received information on candidate superframe duration and available superframe duration estimated by itself; (B-4-b5) transmitting, by the selected parent device, the determined superframe duration information to the child router device; and (B-4-b6) determining the superframe duration to be used by the selected parent device and the child router device.
Furthermore, step (B-4-b4) may include comparing, by the selected parent device, the received information on candidate superframe duration and available superframe duration estimated by itself, and transmitting to the child router device a failure message on the selection of superframe duration when no superframe duration is available; and repeating, by the selected parent device, step (B-4-a1) through channel sensing on a different channel when the failure message is received.
Preferably, step (C) may include: receiving, by the router device having the packet, the packet when the address of the router device having the packet is the same as the final destination address of the packet;
transmitting the packet to its child devices when the final destination address of the packet is larger than its address and smaller than its address plus its maximum allowable number of child devices; and
returning the packet to its parent device when the final destination address of the packet is smaller than its address or larger than its address plus its maximum allowable number of child devices.
In addition, a system for self-construction of a cluster tree structure based wireless sensor network (WSN) includes: a coordinator calculating an average communication range of the WSN and the number of devices located within the average communication range and calculating the maximum allowable number of child routers and child devices in each tree step based on the average communication range and the number of devices within the average communication range to determine a multi-step tree network structure; parent devices selecting their child devices through a subscription request from devices belonging to a lower tree step, and allocating selecting its child devices to their selected child devices addresses; and child devices making network access with address allocation by means of subscription to a parent device belonging to an upper tree step through a subscription request process.
Preferably, the coordinator may include: an operating environment estimating unit calculating an average communication range and the number of devices located within the average communication range; and a multi-step balanced-tree structure optimizing unit calculating a maximum network depth, and the maximum allowable number of child routers and the maximum allowable number of child devices in each tree step.
Further, the parent device may include: a child router selecting unit determining its child router devices among devices that request network subscription as a child router and managing its child router devices; a child end device selecting unit determining its child end devices among devices that request network subscription as a child end device and managing its child router devices; and a multi-step tree based address allocating unit allocating an address to a selected child device, transmitting the allocated address to the selected child devices, and allocating a superframe duration to its child router devices.
In addition, the child devices include child router devices and child end devices,
the child router device may include a router parent selecting unit that selects a parent device candidate group, selects a parent device in the parent device candidate group, and requests network subscription to the selected parent device, and the child end device includes an end device parent selecting unit that selects a parent device candidate group, selects the parent device from the parent device candidate group, and requests network subscription to the selected parent device.
Preferably, the coordinator, the parent device, and the child router device may include a multi-step tree based hierarchical routing unit that searches for a routing path for transmitting a packet as router devices.
Advantageous Effects
According to the present invention, an operating environment estimating unit of a coordinator estimates a minimum network depth and the number of devices located within a communication range, and a multi-step tree structure determining unit optimizes a multi-step tree in accordance with an actual device installation environment based thereon to design a network structure capable of connecting all devices while minimizing a routing delay.
Further, according to the present invention, routers are guided to be prevented from being concentrated on a specific direction and be evenly distributed in a wide area to maximize network connectivity and transmission performance.
In addition, the network connectivity of an end device is improved and a transmission link quality (LQ) between the parent router and the child end device after network connection is ensured through an end device parent selecting unit of a child end device and a child end device selecting unit of a parent device according to the present invention to thereby improve device-to-device data transmission performance.
In a multi-step tree based address allocating process according to the present invention, each parent device calculates the maximum number of devices to be subscribed to its own lower hierarchy tree step based on the multi-step tree structure factor determined in the network structure determining process and determines its own available address based on the maximum number of devices to assure independency of an address while the parent device directly allocates the address without separate message exchange.
Further, in the present invention, each of the parent device and the child router device searches for the channel state and thereafter, the child router device finally selects the superframe duration with respect to the superframe duration candidate information presented by the parent device or the parent device finally selects the superframe duration with respect to the superframe duration candidate information presented by the child router device, and as a result, the channel available state information of the parent device and the channel available state information of the child router device are efficiently combined to allocate the superframe duration, and unlike the existing Zigbee using a single channel, since the child router device uses a different channel from the parent device to allocate the superframe duration and operate its own cluster, each cluster ensures an independent superframe duration to connect the network without cluster-to-cluster interference even under an environment in which the devices are distributed with high density.
In addition, in the present invention, since a routing path of a packet is determined based on a multi-step tree determined according to the network structure determining process, a plurality of devices installed in the wide area with high density may be rapidly self-constructed while minimizing the message exchange, a burden of searching for the routing path, and the routing delay.
As such, according to the present invention, numeral devices selected with high density in the wide area are connected to the network while the message exchange caused during the process of self-construction of the WSN to thereby effectively improve large-scale WSN self-construction performance.



DESCRIPTION OF DRAWINGS
FIG. 1 illustrates a schematic flowchart of a method for self-construction of a wireless sensor network according to the present invention.
FIGS. 2A-2B illustrate a concept of a cluster tree structure based WSN according to the present invention.
FIGS. 3A-3B illustrate an exemplary embodiment of structures of a channel and a superframe of the WSN according to the present invention.
FIG. 4 illustrates an average distance between a communication range and a device located therein in an exemplary embodiment of a WSN system according to the present invention.
FIG. 5 illustrates an exemplary embodiment of a schematic configuration of a coordinator of a system for self-construction of a wireless sensor network according to the present invention.
FIG. 6 illustrates a flowchart of an exemplary embodiment of a process of determining a network structure by a coordinator according to the present invention.
FIG. 7 illustrates an exemplary embodiment of a WSN construction based on a multi-step tree structure.
FIGS. 8A-8C illustrate a WSN having various physical structures for a WSN having a logical structure of FIG. 7.
FIGS. 9A-9C illustrate a flowchart estimating a minimum network depth and the number of devices according to the present invention with respect to the respective structures for the exemplary embodiment of FIG. 8.
FIG. 10 illustrates a flowchart of an exemplary embodiment of a process for configuring a multi-step tree according to the present invention.
FIG. 11 illustrates a schematic configuration of an exemplary embodiment of a parent device and a child device according to the present invention.
FIG. 12 illustrates a flowchart of an exemplary embodiment of a process in which a sensor device that intends to subscribe to a router is connected to the parent device according to the present invention.
FIG. 13 illustrates a flowchart of an exemplary embodiment of a process in which the parent device selects a child router according to the present invention.
FIG. 14 illustrates an exemplary embodiment of a process in which the sensor device that intends to subscribe to an end device selects the parent device according to the present invention.
FIG. 15 illustrates a flowchart of a process in which the parent device allocates an address according to the present invention.
FIG. 16 illustrates a flowchart of an exemplary embodiment of a process of allocating a superframe duration of the child router according to the present invention.
FIG. 17 illustrates a flowchart of another exemplary embodiment of the process of allocating the superframe duration of the child router according to the present invention.
FIG. 18 illustrates an exemplary embodiment of a device that performs data transmission process according to the present invention.
FIG. 19 illustrates a flowchart of an exemplary embodiment of a process for hierarchically searching for a routing path based on a multi-step tree structure according to the present invention.



BEST MODE
The present invention relates to a system for self-construction of a large-scale, high-density wireless sensor network in a cluster tree structure and a method for self-construction of a large-scale, high-density wireless sensor network using the same.
FIG. 1 illustrates a schematic flowchart of a method for self-construction of a wireless sensor network according to the present invention.
The method for self-construction of a wireless sensor network according to the present invention will be schematically described with reference to FIG. 1. First, a network structure is determined (S100) and a network is connected based on the determined structure (S200), and in a process of connecting the network (S200), a parent device and a child device are selected from respective devices included in the network (S210) and addresses are allocated to the respective selected devices (S230) and thereafter, it is judged whether the selected child device is a router (S250) and when the selected child device is the router, a superframe duration is allocated to the child router device (S270). When such a process ends, data is transmitted within the connected network (S300).
MODE FOR INVENTION
The present invention, operational advantages of the present invention, and objects achieved by executing the present invention will be, hereinafter, described by exemplifying exemplary embodiments of the present invention and referring to the exemplified exemplary embodiments.
First, terms used in the present application are just used to describe a specific exemplary embodiment and do not intend to limit the present invention and a singular expression may include a plural expression as long as it is not apparently contextually different. In this application, terms such as ‘include’ or ‘have’ are used to designate presence of features, figures, steps, operations, elements, parts, or combinations thereof disclosed in the specification and it should be understood that presence or addition possibilities of one or more other features or figures, steps, operations, elements, parts, or combinations thereof are not excluded in advance.
In describing the present invention, when it is determined that the detailed description of the known configuration or function related to the present invention may obscure the gist of the present invention, the detailed description thereof will be omitted.
FIG. 2 illustrates a concept of a cluster tree structure based WSN according to the present invention.
FIG. 2(a) illustrates a physical network structure of a cluster tree structure based WSN and FIG. 2(b) illustrates a logical network structure of the cluster tree structure based WSN.
The present invention is applied to a cluster tree based WSN system in which the respective devices connected to the network are connected to each other with the relationship between a parent device and a child device, one parent device and a plurality of child devices constitute one cluster A, and a plurality of clusters are connected with the parent-child relationship among the routers, so that an entire network is constructed in a tree structure as illustrated in FIG. 2(a) and when this is described in terms of a logical network structure, the present invention may be applied to the cluster tree structure based WSN system having a plurality of hierarchical structures as illustrated in FIG. 1(b).
When a construction of the tree structure based WSN system is described in detail with reference to FIG. 2(b), one device 200 that belongs to the corresponding WSN system becomes a child device with respect to a device 100 located in an upper hierarchy tree step than a tree step to which the one device 200 belongs and to which the subscribes to which the device 200 subscribes and a parent device with respect to a device 300 that is located at a lower hierarchy tree step than a tree step to which the device 200 belongs, and which subscribes to the device 200.
FIG. 3 illustrates an exemplary embodiment of structures of a channel and a superframe of the WSN according to the present invention. It is assumed that the cluster transmits and receives data during an active period in a superframe duration that starts from a beacon signal transmitted by the parent device and stops transmitting the data before transmitting a subsequent beacon signal after the superframe ends, that is, during an inactive period as illustrated in FIG. 3(a).
Further, it is assumed that the WSN system may use Nch channels which are not duplicated and each channel may provide NSF non-duplicated superframe durations within one beacon signal interval as illustrated in FIG. 3(b).
In such a case, when NFFD full function devices and NRFD reduced-functioning devices having a communication range (transmission range) of rd are arbitrarily mixedly installed in a space having an area of S, the density ρ of devices per area may be calculated by [Equation 1] below.




  
    
      
        ρ
        =
        
          
            
              N
              FFD
            
            +
            
              N
              RFD
            
          
          S
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          1
        
        ]
      
    
  




FIG. 4 illustrates an average distance between a communication range and a device located therein in an exemplary embodiment of a WSN system according to the present invention and as illustrated in FIG. 4, the communication range of each device is rd, but the devices are arbitrarily distributed, so that an average distance among the respective connected devices may be rd/√{square root over (2)}. Therefore, an average transmission range of the WSN calculated from the coordinator may be expressed like [Equation 2] below according to a network depth D.




  
    
      
        
          
            r
            n
          
          ⁡
          
            (
            D
            )
          
        
        =
        
          
            r
            d
          
          +
          
            
              
                (
                
                  D
                  -
                  1
                
                )
              
              ⁢
              
                r
                d
              
            
            
              2
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          2
        
        ]
      
    
  




Hereinafter, a system for self-construction of a wireless sensor network according to the present invention and a method for self-construction of a wireless sensor network using the same according to the present invention will be described in more detail with reference to exemplary embodiments of the present invention.
First, a coordinator according to the present invention for determining the network structure (S100) and a process of determining a network structure by using the same according to the present invention will be described.
FIG. 5 illustrates an exemplary embodiment of a schematic configuration of a coordinator of a system for self-construction of a wireless sensor network according to the present invention. FIG. 6 illustrates a flowchart of an exemplary embodiment of a process of determining a network structure by a coordinator according to the present invention.
In the exemplary embodiment of the present invention, a coordinator 100 performs the process of determining the network structure (S100), and as illustrated in FIG. 5, the coordinator 100 according to the present invention schematically includes an operating environment estimating unit 110 and a multi-step balanced-tree optimizing unit 120. The process of determining the network structure through the coordinator 100 having the aforementioned configuration is described in more detail with reference to FIG. 6. First, the operating environment estimating unit 110 of the coordinator 100 calculates the average communication range rn(D) of the WSN according to the network depth based on [Equation 2] above, calculates a minimum network depth Dmin in required for covering up the entire area of the WSN based on the information such as the communication range rd, the average communication range rn(D), a density of devices per area ρ, an area S, and the like (S120), and estimates the number of devices Nd(D) located within the average communication range rn(D) of the WSN at the network depth D (≦Dmin) (S140).
Thereafter, the multi-step balanced-tree optimizing unit 120 of the coordinator 100 determines a maximum network depth Lm so as to minimize a routing delay while covering up the entire area by using the and Dmin and Nd(D) (S160) and determines the number of tree steps nstep, and the maximum number of child router devices Rm(D) and the maximum number of child devices Cm(D) according to the D (≦Lm) so as to minimize a difference between the Nd(D) and the number of devices which may be connected in the tree structure at the network depth D (S180) to thereby construct a multi-step tree capable of maximizing connectivity.
FIG. 7 illustrates an exemplary embodiment of a WSN construction based on a multi-step tree structure.
In the case of a WSN logical construction based on the multi-step tree structure illustrated in FIG. 7, the coordinator first calculates the average communication range rn(D) through [Equation 2] above based on the communication range of each device rd, and may estimate a minimum network depth Dmin required for covering up the entire area of a WSN to be constructed and the number of devices Nd(D) located within the average communication range of WSN rn(D) at a network depth D (≦Dmin) as described below by using the information such as rd, rn(D), ρ, S, and the like.
The exemplary embodiment of FIG. 7 will be described by converting the exemplary embodiment having the logical structure of FIG. 7 into an exemplary embodiment having various physical structures as illustrated in FIG. 8 in order to more easily describe the process of self-construction of the WSN by the method for self-construction of the WSN according to the present invention.
FIG. 8 illustrates a WSN having various physical structures for the WSN having the logical structure of FIG. 7, and FIG. 8(a) illustrates a case in which a space where the WSN is constructed is circular and the coordinator is located at the center of the space, FIG. 8(b) illustrates a case in which the space where the WSN is constructed is quadrangular and the coordinator is located at the center of the space, and FIG. 8(c) illustrates a case in which the space where the WSN is constructed is quadrangular and the coordinator is located at a corner of the space.
The coordinator 100 estimates the minimum network depth and the number of devices for the respective structures in the WSN operating environment of the exemplary embodiment with respect to the physical structure of the WSN of FIG. 8, and FIG. 9 illustrates a flowchart for estimating the minimum network depth and the number of devices according to the present invention with respect to the respective structures for the exemplary embodiment of FIG. 8.
FIG. 9(a) illustrates a process of estimating the minimum network depth Dmin and the number of devices Nd(D) in the case in which the space is circular and the coordinator is located at the center, which is illustrated in FIG. 8(a), and the operating environment estimating unit 110 of the coordinator 100 calculates a range of the circular space, R according to [Equation 3] below (S110a) and estimates Dmin as described in [Equation 4] below (S120a).




  
    
      
        R
        =
        
          
            S
            π
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          3
        
        ]
      
    
  
  
    
      
        
          
            
              
                D
                min
              
              =
              
              ⁢
              
                min
                ⁢
                
                  {
                  
                    d
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      R
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    
                      
                        2
                      
                      ⁢
                      R
                    
                    
                      r
                      d
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          4
        
        ]
      
    
  




Herein, ┌x┐ represents a minimum value among integers which are equal to or larger than x. Nd(D) may be estimated as described in [Equation 5] below based thereon (S140a).




  
    
      
        
          
            N
            d
          
          ⁡
          
            (
            D
            )
          
        
        =
        
          {
          
            
              
                
                  
                    ρπ
                    ⁢
                    
                      
                    
                    ⁢
                    
                      
                        r
                        n
                        2
                      
                      ⁡
                      
                        (
                        D
                        )
                      
                    
                  
                  ,
                
              
              
                
                  
                    for
                    ⁢
                    
                      
                    
                    ⁢
                    D
                  
                  <
                  
                    D
                    min
                  
                
              
            
            
              
                
                  
                    ρ
                    ⁢
                    
                      
                    
                    ⁢
                    S
                  
                  ,
                
              
              
                
                  
                    for
                    ⁢
                    
                      
                    
                    ⁢
                    D
                  
                  ≥
                  
                    D
                    min
                  
                
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          5
        
        ]
      
    
  




As a next example, FIG. 9(b) illustrates the process of estimating the minimum network depth Dmin and the number of devices Nd(D) in the case in which the space is quadrangular and the coordinator is located at the center, which is illustrated in FIG. 8(b), and the operating environment estimating unit 110 of the coordinator 100 calculates Dmin according to [Equation 6] below (S120b).




  
    
      
        
          
            
              
                D
                min
              
              =
              
              ⁢
              
                min
                ⁢
                
                  {
                  
                    D
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      
                        
                          
                            
                              a
                              2
                            
                            +
                            
                              b
                              
                                ′
                                2
                              
                            
                          
                        
                        2
                      
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    
                      
                        
                          a
                          2
                        
                        +
                        
                          b
                          2
                        
                      
                    
                    
                      
                        2
                      
                      ⁢
                      
                        r
                        d
                      
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          6
        
        ]
      
    
  




Herein, a and b represent a short-side length and a long-side length of a rectangular space, respectively. As illustrated in FIG. 8(b), extension of the communication range when rn(D) exceeds a rectangular wall is limited in the quadrangular space. In this case, when the minimum network depth in which rn(D) exceeds a wall close to the coordinator, that is, a wall distant from the coordinator by a/2 is Da and the minimum network depth in which rn(D) exceeds a wall far from the coordinator, that is, a wall distant from the coordinator by b/2 is Db, the coordinator may calculate Da and Db through [Equation 7] and [Equation 8] below (S130b), respectively.




  
    
      
        
          
            
              
                D
                a
              
              =
              
                min
                ⁢
                
                  {
                  
                    D
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      
                        a
                        2
                      
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    a
                    
                      
                        2
                      
                      ⁢
                      
                        r
                        d
                      
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          7
        
        ]
      
    
  
  
    
      
        
          
            
              
                D
                b
              
              =
              
                min
                ⁢
                
                  {
                  
                    D
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      
                        b
                        2
                      
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    b
                    
                      
                        2
                      
                      ⁢
                      
                        r
                        d
                      
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          8
        
        ]
      
    
  




The coordinator may estimate Nd(D) according to [Equation 9] below based on the calculated Da and Db (S140b).



  
    
      
    
    ⁢
    
      [
      
        Equation
        ⁢
        
          
        
        ⁢
        9
      
      ]
    
  




  
    
      
        N
        d
      
      ⁡
      
        (
        D
        )
      
    
    =
    
      {
      
        
          
            
              
                ρ
                ⁢
                
                  
                
                ⁢
                π
                ⁢
                
                  
                
                ⁢
                
                  
                    r
                    n
                    2
                  
                  ⁡
                  
                    (
                    D
                    )
                  
                
              
              ,
            
          
          
            
              
                for
                ⁢
                
                  
                
                ⁢
                D
              
              <
              
                D
                a
              
            
          
        
        
          
            
              
                ρ
                ⁢
                
                  {
                  
                    
                      a
                      ⁢
                      
                        
                          
                            
                              r
                              n
                              2
                            
                            ⁡
                            
                              (
                              D
                              )
                            
                          
                          -
                          
                            
                              a
                              2
                            
                            4
                          
                        
                      
                    
                    +
                    
                      
                        
                          r
                          n
                          2
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ⁡
                      
                        [
                        
                          
                            
                              
                                π
                                -
                                
                                  2
                                  ⁢
                                  
                                    
                                  
                                  ⁢
                                  
                                    cos
                                    
                                      -
                                      1
                                    
                                  
                                
                              
                            
                          
                          
                            
                              
                                (
                                
                                  a
                                  
                                    2
                                    ⁢
                                    
                                      
                                    
                                    ⁢
                                    
                                      
                                        r
                                        n
                                      
                                      ⁡
                                      
                                        (
                                        D
                                        )
                                      
                                    
                                  
                                
                                )
                              
                            
                          
                        
                        ]
                      
                    
                  
                  }
                
              
              ,
            
          
          
            
              
                for
                ⁢
                
                  
                
                ⁢
                
                  D
                  a
                
              
              ≤
              D
              <
              
                D
                b
              
            
          
        
        
          
            
              
                ρ
                ⁢
                
                  {
                  
                    
                      
                        
                          
                            a
                            ⁢
                            
                              
                                
                                  
                                    r
                                    n
                                    2
                                  
                                  ⁡
                                  
                                    (
                                    D
                                    )
                                  
                                
                                -
                                
                                  
                                    a
                                    2
                                  
                                  4
                                
                              
                            
                          
                          +
                          
                            b
                            ⁢
                            
                              
                                
                                  
                                    r
                                    n
                                    2
                                  
                                  ⁡
                                  
                                    (
                                    D
                                    )
                                  
                                
                                -
                                
                                  
                                    b
                                    2
                                  
                                  4
                                
                              
                            
                          
                          +
                        
                      
                    
                    
                      
                        
                          
                            
                              r
                              n
                              2
                            
                            ⁡
                            
                              (
                              D
                              )
                            
                          
                          ⁡
                          
                            [
                            
                              
                                
                                  
                                    π
                                    -
                                    
                                      2
                                      ⁢
                                      
                                        
                                      
                                      ⁢
                                      
                                        cos
                                        
                                          -
                                          1
                                        
                                      
                                      ⁢
                                      
                                        (
                                        
                                          
                                            ar
                                            d
                                          
                                          
                                            2
                                            ⁢
                                            
                                              
                                            
                                            ⁢
                                            
                                              
                                                r
                                                n
                                              
                                              ⁡
                                              
                                                (
                                                D
                                                )
                                              
                                            
                                          
                                        
                                        )
                                      
                                    
                                    -
                                  
                                
                              
                              
                                
                                  
                                    2
                                    ⁢
                                    
                                      
                                    
                                    ⁢
                                    
                                      
                                        cos
                                        
                                          -
                                          1
                                        
                                      
                                      ⁡
                                      
                                        (
                                        
                                          
                                            br
                                            d
                                          
                                          
                                            2
                                            ⁢
                                            
                                              
                                            
                                            ⁢
                                            
                                              
                                                r
                                                n
                                              
                                              ⁡
                                              
                                                (
                                                D
                                                )
                                              
                                            
                                          
                                        
                                        )
                                      
                                    
                                  
                                
                              
                            
                            ]
                          
                        
                      
                    
                  
                  }
                
              
              ,
            
          
          
            
              
                for
                ⁢
                
                  
                
                ⁢
                
                  D
                  b
                
              
              ≤
              D
              <
              
                D
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  n
                
              
            
          
        
        
          
            
              
                ρ
                ⁢
                
                  
                
                ⁢
                S
              
              ,
            
          
          
            
              
                for
                ⁢
                
                  
                
                ⁢
                D
              
              ≥
              
                D
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  n
                
              
            
          
        
      
    
  



As the last example, FIG. 9(c) illustrates the process of estimating the minimum network depth Dmin and the number of devices Nd(D) in the case in which the space is quadrangular and the coordinator is located at the corner, which is illustrated in FIG. 8(c), and in this case, the operating environment estimating unit 110 of the coordinator 100 estimates Dmin as described in [Equation 10] below (S120c), and calculates the minimum depth Da that satisfies rn(D)>a and the minimum depth Db that satisfies rn(D)>b as described in [Equation 11] and [Equation 12] below, respectively (S130c), and thereafter, the operating environment estimating unit 110 of the coordinator 100 may estimate Nd(D) as described in [Equation 13] below based on the calculated Da and Db (S140c).




  
    
      
        
          
            
              
                D
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  n
                
              
              =
              
              ⁢
              
                min
                ⁢
                
                  {
                  
                    D
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      
                        
                          
                            a
                            2
                          
                          +
                          
                            b
                            2
                          
                        
                      
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    
                      
                        2
                        ⁢
                        
                          (
                          
                            
                              a
                              2
                            
                            +
                            
                              b
                              2
                            
                          
                          )
                        
                      
                    
                    
                      r
                      d
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          10
        
        ]
      
    
  
  
    
      
        
          
            
              
                D
                a
              
              =
              
              ⁢
              
                min
                ⁢
                
                  {
                  
                    D
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      a
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    
                      
                        2
                      
                      ⁢
                      a
                    
                    
                      r
                      d
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          11
        
        ]
      
    
  
  
    
      
        
          
            
              
                D
                b
              
              =
              
              ⁢
              
                min
                ⁢
                
                  {
                  
                    D
                    ❘
                    
                      
                        
                          r
                          n
                        
                        ⁡
                        
                          (
                          D
                          )
                        
                      
                      ≥
                      b
                    
                  
                  }
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                ⌈
                
                  1
                  -
                  
                    2
                  
                  +
                  
                    
                      
                        2
                      
                      ⁢
                      b
                    
                    
                      r
                      d
                    
                  
                
                ⌉
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          12
        
        ]
      
    
  
  
    
      
        
          
            N
            d
          
          ⁡
          
            (
            D
            )
          
        
        =
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          13
        
        ]
      
    
  
  
    
      
        {
        
          
            
              
                
                  ρ
                  ⁢
                  
                    
                  
                  ⁢
                  π
                  ⁢
                  
                    
                  
                  ⁢
                  
                    
                      r
                      n
                      2
                    
                    ⁡
                    
                      (
                      D
                      )
                    
                  
                
                ,
              
            
            
              
                
                  for
                  ⁢
                  
                    
                  
                  ⁢
                  D
                
                <
                
                  D
                  a
                
              
            
          
          
            
              
                
                  ρ
                  ⁢
                  
                    {
                    
                      
                        
                          
                            
                              2
                              ⁢
                              a
                              ⁢
                              
                                
                                  
                                    
                                      r
                                      n
                                      2
                                    
                                    ⁡
                                    
                                      (
                                      D
                                      )
                                    
                                  
                                  -
                                  
                                    a
                                    2
                                  
                                
                              
                            
                            +
                          
                        
                      
                      
                        
                          
                            
                              
                                r
                                n
                                2
                              
                              ⁡
                              
                                (
                                D
                                )
                              
                            
                            ⁡
                            
                              [
                              
                                
                                  
                                    
                                      π
                                      -
                                      
                                        2
                                        ⁢
                                        
                                          
                                        
                                        ⁢
                                        
                                          cos
                                          
                                            -
                                            1
                                          
                                        
                                      
                                    
                                  
                                
                                
                                  
                                    
                                      (
                                      
                                        a
                                        
                                          
                                            
                                          
                                          ⁢
                                          
                                            
                                              r
                                              n
                                            
                                            ⁡
                                            
                                              (
                                              D
                                              )
                                            
                                          
                                        
                                      
                                      )
                                    
                                  
                                
                              
                              ]
                            
                          
                        
                      
                    
                    }
                  
                
                ,
              
            
            
              
                
                  for
                  ⁢
                  
                    
                  
                  ⁢
                  
                    D
                    a
                  
                
                ≤
                D
                <
                
                  D
                  b
                
              
            
          
          
            
              
                
                  ρ
                  ⁢
                  
                    {
                    
                      
                        
                          
                            
                              2
                              ⁢
                              a
                              ⁢
                              
                                
                                  
                                    
                                      r
                                      n
                                      2
                                    
                                    ⁡
                                    
                                      (
                                      D
                                      )
                                    
                                  
                                  -
                                  
                                    a
                                    2
                                  
                                
                              
                            
                            +
                            
                              2
                              ⁢
                              b
                              ⁢
                              
                                
                                  
                                    
                                      r
                                      n
                                      2
                                    
                                    ⁡
                                    
                                      (
                                      D
                                      )
                                    
                                  
                                  -
                                  
                                    b
                                    2
                                  
                                
                              
                            
                            +
                          
                        
                      
                      
                        
                          
                            
                              
                                r
                                n
                                2
                              
                              ⁡
                              
                                (
                                D
                                )
                              
                            
                            ⁡
                            
                              [
                              
                                
                                  
                                    
                                      π
                                      -
                                      
                                        2
                                        ⁢
                                        
                                          
                                        
                                        ⁢
                                        
                                          cos
                                          
                                            -
                                            1
                                          
                                        
                                        ⁢
                                        
                                          (
                                          
                                            
                                              ar
                                              d
                                            
                                            
                                              
                                                
                                              
                                              ⁢
                                              
                                                
                                                  r
                                                  n
                                                
                                                ⁡
                                                
                                                  (
                                                  D
                                                  )
                                                
                                              
                                            
                                          
                                          )
                                        
                                      
                                      -
                                    
                                  
                                
                                
                                  
                                    
                                      2
                                      ⁢
                                      
                                        
                                      
                                      ⁢
                                      
                                        
                                          cos
                                          
                                            -
                                            1
                                          
                                        
                                        ⁡
                                        
                                          (
                                          
                                            
                                              br
                                              d
                                            
                                            
                                              
                                                
                                              
                                              ⁢
                                              
                                                
                                                  r
                                                  n
                                                
                                                ⁡
                                                
                                                  (
                                                  D
                                                  )
                                                
                                              
                                            
                                          
                                          )
                                        
                                      
                                    
                                  
                                
                              
                              ]
                            
                          
                        
                      
                    
                    }
                  
                
                ,
              
            
            
              
                
                  for
                  ⁢
                  
                    
                  
                  ⁢
                  
                    D
                    b
                  
                
                ≤
                D
                <
                
                  D
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    i
                    ⁢
                    
                      
                    
                    ⁢
                    n
                  
                
              
            
          
          
            
              
                
                  ρ
                  ⁢
                  
                    
                  
                  ⁢
                  S
                
                ,
              
            
            
              
                
                  for
                  ⁢
                  
                    
                  
                  ⁢
                  D
                
                ≥
                
                  D
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    i
                    ⁢
                    
                      
                    
                    ⁢
                    n
                  
                
              
            
          
        
      
    
    
      
        
      
    
  




In the network structure determination process (S100) according to the exemplary embodiment of the present invention, the multi-step balanced-tree optimizing unit 120 of the coordinator 100 determines a maximum network depth Lm so as to minimize a routing delay while covering up the entire area by using Dmin estimated by the operating environment estimating unit 110 of the coordinator 100 and optimizes the maximum number of child devices and the maximum number of child router devices according to the number of tree steps nstep (≦Nstep) and the network depth so as to minimize a difference between the Nd(D) and the number of devices which may be connected in the tree structure at the network depth D by using the Nd(D) to thereby construct a multi-step tree suitable for device distribution, and FIG. 10 illustrates a flowchart of the process of configuring the multi-step tree.
In the multi-step tree structure, as the number of tree steps increases, the tree structure and actual device distribution are the same as each other, but a large amount of memory is used to store tree structure information, and as a result, the multi-step tree structure is not suitable for implementing the WSN. Therefore, a case of performing the multi-step tree structure determining process after determining the maximum number of tree steps Nstep as 3 is considered in the flowchart of the exemplary embodiment according to the present invention in FIG. 10. However, limiting the maximum number of tree steps Nstep to 3 is one exemplary embodiment according to the present invention and actually, in the present invention, the maximum number of tree steps Nstep may be determined without being limited thereto.
The process of configuring the multi-step tree according to the present invention is described with reference to FIG. 10. First, the multi-step balanced-tree optimizing unit 120 of the coordinator 100 sets the maximum network depth Lm as Dmin so as to connect the entire area while minimizing the routing delay (S160).
In addition, in a case in which Lm is equal to or smaller than a threshold value l (S181), that is, a case in which a large network depth is not required, it is judged that all devices may be connected by one-step tree and nstep=1 (S182b) and thereafter, Rm(D) and Cm(D) are determined according to [Equation 14], [Equation 15], and [Equation 16] below, respectively (S183b) to construct the one-step tree and terminate the tree optimizing process. However, actually, it is difficult for the one-step tree to support the large network depth due to a characteristic of the balanced-tree structure in which a required address space according to the network depth is exponentially increased with a value of Rm(D).




  
    
      
        
          R
          m
        
        =
        
          max
          ⁢
          
            {
            
              
                R
                ❘
                
                  R
                  ≤
                  
                    R
                    
                      m
                      ,
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        ax
                      
                    
                  
                
              
              ,
              
                
                  G
                  ⁡
                  
                    (
                    
                      
                        
                          L
                          m
                        
                        +
                        1
                      
                      ,
                      R
                    
                    )
                  
                
                <
                
                  N
                  FFD
                
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          14
        
        ]
      
    
  
  
    
      
        
          C
          m
        
        =
        
          min
          ⁢
          
            {
            
              
                C
                
                  m
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    ax
                  
                
              
              ,
              
                ⌊
                
                  
                    
                      2
                      B
                    
                    -
                    1
                  
                  
                    G
                    ⁡
                    
                      (
                      
                        
                          L
                          m
                        
                        ,
                        
                          R
                          m
                        
                      
                      )
                    
                  
                
                ⌋
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          15
        
        ]
      
    
  
  
    
      
        
          
            (
            
              
                
                  R
                  m
                
                ⁡
                
                  (
                  D
                  )
                
              
              ,
              
                
                  C
                  m
                
                ⁡
                
                  (
                  D
                  )
                
              
            
            )
          
          =
          
            (
            
              
                R
                m
              
              ,
              
                C
                m
              
            
            )
          
        
        ,
        
          
            for
            ⁢
            
              
            
            ⁢
            0
          
          ≤
          D
          <
          
            L
            m
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          16
        
        ]
      
    
  




Herein, Rm,max and Cm,max represent maximum values of Rm(D) and Cm(D), respectively, B represents the number of bits used for address allocation, └x┘ represents a maximum value among integers which are equal to or smaller than x, and G(x,y) represents a function described in [Equation 17] below.




  
    
      
        
          G
          ⁡
          
            (
            
              x
              ,
              y
            
            )
          
        
        =
        
          {
          
            
              
                
                  
                    x
                    -
                    1
                  
                  ,
                
              
              
                
                  
                    for
                    ⁢
                    
                      
                    
                    ⁢
                    x
                  
                  =
                  1
                
              
            
            
              
                
                  
                    
                      
                        y
                        
                          x
                          -
                          1
                        
                      
                      -
                      1
                    
                    
                      y
                      -
                      1
                    
                  
                  ,
                
              
              
                otherwise
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          17
        
        ]
      
    
  




However, if Lm>l (S181), it is judged that it is difficult to connect all of the devices by the one-step tree and configuring a multi-step tree of two steps or more starts, and first, a one-step tree threshold depth D1 is determined as l (S182a) and Rm(D) and Cm(D) are determined according to [Equation 18], [Equation 19], and [Equation 20] below (S183a) and configuring the one-step tree ends.




  
    
      
        
          R
          
            m
            ⁢
            
              
            
            ⁢
            1
          
        
        =
        
          max
          ⁢
          
            {
            
              
                
                  
                    
                      R
                      ❘
                      
                        R
                        ≤
                        
                          R
                          
                            m
                            ,
                            
                              m
                              ⁢
                              
                                
                              
                              ⁢
                              ax
                            
                          
                        
                      
                    
                    ,
                    
                      1
                      +
                      
                        RG
                        ⁡
                        
                          (
                          
                            
                              D
                              1
                            
                            ,
                            R
                          
                          )
                        
                      
                      +
                    
                  
                
              
              
                
                  
                    
                      
                        R
                        
                          D
                          1
                        
                      
                      ⁢
                      
                        G
                        ⁡
                        
                          (
                          
                            
                              
                                L
                                m
                              
                              -
                              
                                D
                                1
                              
                            
                            ,
                            R
                          
                          )
                        
                      
                    
                    <
                    
                      N
                      FFD
                    
                  
                
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          18
        
        ]
      
    
  
  
    
      
        
          C
          
            m
            ⁢
            
              
            
            ⁢
            1
          
        
        =
        
          min
          ⁢
          
            {
            
              
                C
                
                  m
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    ax
                  
                
              
              ,
              
                ⌈
                
                  
                    
                      
                        N
                        d
                      
                      ⁡
                      
                        (
                        
                          
                            D
                            1
                          
                          -
                          1
                        
                        )
                      
                    
                    -
                    1
                  
                  
                    G
                    ⁡
                    
                      (
                      
                        
                          D
                          1
                        
                        ,
                        
                          R
                          
                            m
                            ⁢
                            
                              
                            
                            ⁢
                            1
                          
                        
                      
                      )
                    
                  
                
                ⌉
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          19
        
        ]
      
    
  
  
    
      
        
          
            (
            
              
                
                  R
                  m
                
                ⁡
                
                  (
                  D
                  )
                
              
              ,
              
                
                  C
                  m
                
                ⁡
                
                  (
                  D
                  )
                
              
            
            )
          
          =
          
            (
            
              
                R
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  1
                
              
              ,
              
                C
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  1
                
              
            
            )
          
        
        ,
        
          
            for
            ⁢
            
              
            
            ⁢
            0
          
          ≤
          D
          <
          
            D
            1
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          20
        
        ]
      
    
  




Thereafter, a two-step tree threshold depth D2 is determined according to [Equation 21] below in order to construct the two-step tree (S184).




  
    
      
        
          D
          2
        
        =
        
          1
          +
          
            arg
            ⁢
            
              
            
            ⁢
            
              
                max
                
                  
                    D
                    1
                  
                  <
                  D
                  <
                  
                    L
                    m
                  
                
              
              ⁢
              
                {
                
                  
                    
                      
                        N
                        d
                      
                      ⁡
                      
                        (
                        D
                        )
                      
                    
                    -
                    1
                    -
                    
                      
                        C
                        
                          m
                          ⁢
                          
                            
                          
                          ⁢
                          1
                        
                      
                      ⁢
                      
                        G
                        ⁡
                        
                          (
                          
                            
                              D
                              1
                            
                            ,
                            
                              R
                              
                                m
                                ⁢
                                
                                  
                                
                                ⁢
                                1
                              
                            
                          
                          )
                        
                      
                    
                  
                  
                    D
                    -
                    
                      D
                      1
                    
                  
                
                }
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          21
        
        ]
      
    
  




In addition, when the calculated two-step tree threshold depth D2 is D2=Lm−1 (S185), nstep=2 (S186b) and thereafter, Rm2=1 and Rm(D) and Cm(D) are determined according to [Equation 22] and [Equation 23] below (S187b) to construct the two-step tree.




  
    
      
        
          C
          
            m
            ⁢
            
              
            
            ⁢
            2
          
        
        =
        
          min
          ⁢
          
            {
            
              
                C
                
                  m
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    ax
                  
                
              
              ,
              
                ⌈
                
                  
                    
                      2
                      B
                    
                    -
                    1
                    -
                    
                      
                        C
                        
                          m
                          ⁢
                          
                            
                          
                          ⁢
                          1
                        
                      
                      ⁢
                      
                        G
                        ⁡
                        
                          (
                          
                            
                              D
                              1
                            
                            ,
                            
                              R
                              
                                m
                                ⁢
                                
                                  
                                
                                ⁢
                                1
                              
                            
                          
                          )
                        
                      
                    
                  
                  
                    
                      R
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        1
                      
                      
                        D
                        1
                      
                    
                    ⁢
                    
                      G
                      ⁡
                      
                        (
                        
                          
                            
                              L
                              m
                            
                            -
                            
                              D
                              1
                            
                          
                          ,
                          
                            R
                            
                              m
                              ⁢
                              
                                
                              
                              ⁢
                              2
                            
                          
                        
                        )
                      
                    
                  
                
                ⌉
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          22
        
        ]
      
    
  
  
    
      
        
          
            (
            
              
                
                  R
                  m
                
                ⁡
                
                  (
                  D
                  )
                
              
              ,
              
                
                  C
                  m
                
                ⁡
                
                  (
                  D
                  )
                
              
            
            )
          
          =
          
            (
            
              
                R
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  2
                
              
              ,
              
                C
                
                  m
                  ⁢
                  
                    
                  
                  ⁢
                  2
                
              
            
            )
          
        
        ,
        
          
            for
            ⁢
            
              
            
            ⁢
            
              D
              1
            
          
          ≤
          D
          <
          
            L
            m
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          23
        
        ]
      
    
  




However, if D2<Lm−1 (S174), nstep=3 (S186a) and thereafter, Rm2=1 and Cm2 is calculated by [Equation 24] below and Rm(D) and Cm(D) are determined according to [Equation 23] above (S187a) to construct the two-step tree.




  
    
      
        
          C
          
            m
            ⁢
            
              
            
            ⁢
            2
          
        
        =
        
          min
          ⁢
          
            {
            
              
                C
                
                  m
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    ax
                  
                
              
              ,
              
                ⌈
                
                  
                    
                      
                        N
                        d
                      
                      ⁡
                      
                        (
                        
                          
                            D
                            2
                          
                          -
                          1
                        
                        )
                      
                    
                    -
                    1
                    -
                    
                      
                        C
                        
                          m
                          ⁢
                          
                            
                          
                          ⁢
                          1
                        
                      
                      ⁢
                      
                        G
                        ⁡
                        
                          (
                          
                            
                              D
                              1
                            
                            ,
                            
                              R
                              
                                m
                                ⁢
                                
                                  
                                
                                ⁢
                                1
                              
                            
                          
                          )
                        
                      
                    
                  
                  
                    
                      R
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        1
                      
                      
                        D
                        1
                      
                    
                    ⁢
                    
                      G
                      ⁡
                      
                        (
                        
                          
                            
                              D
                              2
                            
                            -
                            
                              D
                              1
                            
                          
                          ,
                          
                            R
                            
                              m
                              ⁢
                              
                                
                              
                              ⁢
                              2
                            
                          
                        
                        )
                      
                    
                  
                
                ⌉
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          24
        
        ]
      
    
  




Thereafter, Rm3=1, and Rm(D) and Cm (D) are determined according to [Equation 25] and [Equation 26] below (S188) to construct a three-step tree and terminate the tree optimizing process.




  
    
      
        
          C
          
            m
            ⁢
            
              
            
            ⁢
            3
          
        
        =
        
          min
          ⁢
          
            {
            
              
                C
                
                  m
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    ax
                  
                
              
              ,
              
                ⌊
                
                  
                    
                      
                        
                          
                            2
                            B
                          
                          -
                          1
                          -
                          
                            
                              C
                              
                                m
                                ⁢
                                
                                  
                                
                                ⁢
                                1
                              
                            
                            ⁢
                            
                              G
                              ⁡
                              
                                (
                                
                                  
                                    D
                                    1
                                  
                                  ,
                                  
                                    R
                                    
                                      m
                                      ⁢
                                      
                                        
                                      
                                      ⁢
                                      1
                                    
                                  
                                
                                )
                              
                            
                          
                          -
                        
                      
                    
                    
                      
                        
                          
                            R
                            
                              m
                              ⁢
                              
                                
                              
                              ⁢
                              1
                            
                            
                              D
                              1
                            
                          
                          ⁢
                          
                            C
                            
                              m
                              ⁢
                              
                                
                              
                              ⁢
                              2
                            
                          
                          ⁢
                          
                            G
                            ⁡
                            
                              (
                              
                                
                                  
                                    D
                                    2
                                  
                                  -
                                  
                                    D
                                    1
                                  
                                
                                ,
                                
                                  R
                                  
                                    m
                                    ⁢
                                    
                                      
                                    
                                    ⁢
                                    2
                                  
                                
                              
                              )
                            
                          
                        
                      
                    
                  
                  
                    
                      R
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        1
                      
                      
                        D
                        1
                      
                    
                    ⁢
                    
                      R
                      
                        m
                        ⁢
                        
                          
                        
                        ⁢
                        2
                      
                      
                        
                          D
                          2
                        
                        -
                        
                          D
                          1
                        
                      
                    
                    ⁢
                    
                      G
                      ⁡
                      
                        (
                        
                          
                            
                              L
                              m
                            
                            -
                            
                              D
                              2
                            
                          
                          ,
                          
                            R
                            
                              m
                              ⁢
                              
                                
                              
                              ⁢
                              3
                            
                          
                        
                        )
                      
                    
                  
                
                ⌋
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          25
        
        ]
      
    
  
  
    
      
        
          
        
        ⁢
        
          
            
              (
              
                
                  
                    R
                    m
                  
                  ⁡
                  
                    (
                    D
                    )
                  
                
                ,
                
                  
                    C
                    m
                  
                  ⁡
                  
                    (
                    D
                    )
                  
                
              
              )
            
            =
            
              (
              
                
                  R
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    3
                  
                
                ,
                
                  C
                  
                    m
                    ⁢
                    3
                  
                
              
              )
            
          
          ,
          
            
              for
              ⁢
              
                
              
              ⁢
              
                D
                1
              
            
            ≤
            D
            <
            
              L
              m
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          26
        
        ]
      
    
  




As such, the operating environment estimating unit 110 of the coordinator 100 according to the present invention estimates the Dmin and Nd(D), and the multi-step tree optimizing unit 120 optimizes the multi-step tree in accordance with an actual device installation environment to design a network structure capable of connecting all of the devices while minimizing the routing delay.
Hereinafter, the network connection process (S200) will be described in more detail in FIG. 4 according to the exemplary embodiment of the present invention.
FIG. 11 illustrates a schematic configuration of an exemplary embodiment of a parent device and a child device according to the present invention.
As illustrated in FIG. 11, a parent device 200 includes a child router selecting unit 210, a multi-step tree based address allocating unit 220, and a child end device selecting unit 230, and a child device 300 is generally divided into a child router device 300a which is a sensor device that intends to subscribe to a router and a child end device 300b which is a sensor device that intends to subscribe to an end device, the sensor device 300a that intends to subscribe to the router includes a router parent selecting unit 310a, and the sensor device 300b that intends to subscribe to the end device includes an end device parent selecting unit 310b. 
The process of the network connection of the parent device and the child device (S200) will be described in more detail by referring back to FIG. 4. In the process of selecting a parent and a child (S210), first, the device 300a that intends to subscribe to the router among the child devices 300 selects a parent candidate group by using the network depth by the router parent selecting unit 310a, selects the parent device from the parent candidate group by using the network depth and channel status information such as a transmission link quality (link quality: LQ) and requests a subscription, and the selected parent device 200 selects the child router device by considering the number of parent candidates of devices that request the subscription by the child router selecting unit 210.
In addition, a device 300b that intends to subscribe to the end device among the child devices 300 selects the parent by using the network depth and the channel status information such as the transmission link quality (LQ) by the end device parent selecting unit 310b and thereafter, requests the subscription, and the selected parent device 300 selects a child end device in the order of arrival in the child end device selecting unit 230.
Preferably, in the exemplary embodiment of the present invention, the full function device first attempts to subscribe to the router and thereafter, when the full function device fails, the full function device may attempt to subscribe in the end device again and the reduced-functioning device may network-subscribe to only the end device.
Thereafter, the parent device 200 allocates an address of the child device through the multi-step tree based address allocating unit 220 (S230) and transmits the allocated address information to the child device 300.
In addition, it is judged whether the child device 300 is the router (S250) and when the child device 300 is the router, a superframe duration of a cluster to be afterwards constructed by a child router device is determined by using multiple channels (S270) and when the child device 300 is the end device, the network connection process (S200) ends immediately.
Herein, a process in which the router parent selecting unit 310a of the sensor device 300a that intends to subscribe to the router selects the parent candidate group by using the network depth and selects the parent device from the parent candidate group by using the network depth and the channel status information such as the transmission link quality (LQ) is illustrated in a flowchart of FIG. 12.
The process in which the sensor device 300a that intends to subscribe to the router is connected to the parent device 200 according to the present invention will be described with reference to FIG. 12. The router parent selecting unit 310a of the sensor device k 300a that intends to subscribe to the router first estimates the transmission link quality (LQ) based on a receiving characteristic of beacon signals received through Nch channels and initializes the parent candidate group Pk to routers in which the estimated transmission link quality (LQ) is larger than a threshold value δ for acquiring desired transmission performance as described in [Equation 27] below (S211a).

Pk={RεR|γ(k,R)>δ}  [Equation 27]

Herein, R represents a set of all routers which are network-connected and γ(d1,d2) represents the LQ between both devices d1 and d2.
In addition, pi is defined as an i-th parent candidate of Pk, Dnet(d) is defined as the network depth of the device d, |Pk| is defined as the number of elements of Pk, and Dd,min and Dd,max are defined as described in [Equation 28] and [Equation 29] below.




  
    
      
        
          D
          
            d
            ,
            
              m
              ⁢
              
                
              
              ⁢
              i
              ⁢
              
                
              
              ⁢
              n
            
          
        
        =
        
          
            min
            
              d
              ∈
              d
            
          
          ⁢
          
            {
            
              
                D
                net
              
              ⁡
              
                (
                d
                )
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          28
        
        ]
      
    
  
  
    
      
        
          D
          
            d
            ,
            
              m
              ⁢
              
                
              
              ⁢
              ax
            
          
        
        =
        
          
            max
            
              d
              ∈
              d
            
          
          ⁢
          
            {
            
              
                D
                net
              
              ⁡
              
                (
                d
                )
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          29
        
        ]
      
    
  




If DPk,min<DPk,max<Lm−2 (S212a), i=1 (S213a) and the parent candidate group is selected, and it is compared whether Dnet(pi) and DPk,max are the same as each other (S214a) and if Dnet(pi)<DPk,max, i and |Pk| are immediately compared with each other (S217a) and if Dnet(pi)=DPk,max, the corresponding parent candidate is removed from the parent candidate group by setting pi as is Pk←Pk-{pi} (S215a) and thereafter, i is decreased by 1 (S216a) and i and |Pk| are compared with each other (S217a).
i and |Pk| are compared with each other (S217a) and if i<|Pk|, i is increased by 1 (S218a) and thereafter, it is compared whether Dnet(pi) and DPk,max are the same as each other again (S214a) and if i≧|Pk|, the parent candidate group selecting process ends.
If the parent candidate group selecting process ends or DPk,min<DPk,max<Lm−2 (S212a) is not established and DPk,max≧Lm−2 or DPk,max≦DPk,min, the router parent selecting unit 310a determines a set of parent candidates in which the network depth is minimum, {circumflex over (P)}k in the selected parent candidate group according to [Equation 30] below and selects a parent candidate in which the transmission link quality (LQ) is smallest in {circumflex over (P)}k as the parent device Pk according to [Equation 31] below.




  
    
      
        
          
            P
            ^
          
          k
        
        =
        
          {
          
            
              
                p
                ∈
                
                  P
                  k
                
              
              ❘
              
                
                  D
                  net
                
                ⁡
                
                  (
                  p
                  )
                
              
            
            =
            
              D
              
                P
                
                  k
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    i
                    ⁢
                    
                      
                    
                    ⁢
                    n
                  
                
              
            
          
          }
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          30
        
        ]
      
    
  
  
    
      
        
          P
          k
        
        =
        
          
            
              arg
              ⁢
              
                
              
              ⁢
              min
            
            
              
                p
                ^
              
              ∈
              
                
                  P
                  ^
                
                k
              
            
          
          ⁢
          
            {
            
              γ
              ⁡
              
                (
                
                  
                    p
                    ^
                  
                  ,
                  k
                
                )
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          31
        
        ]
      
    
  




The sensor device k that intends to subscribe to the router transmits a subscription request message including the number of parent candidates, |Pk| to the parent device Pk 200 after the parent selecting process ends.
The router parent selecting unit 310a of the child device 300 according to the present invention prevents each device from selecting a device farther from the coordinator than each device as a parent device by using the network depth information to prevent the waste of the network depth and selects a device far from each device as the parent by considering the transmission link quality (LQ), and the like, thereby efficiently extending the WSN average communication range and the size of the network.
The parent device 200 selected by the router parent selecting unit 310a of the sensor device 300a that intends to subscribe to the router selects the child router device through the child router selecting unit 210. FIG. 13 is a flowchart illustrating a process in which the parent device selects the child router device.
A process in which the parent device 200 selects the child router device 300a by considering the transmission link quality (LQ) of the child router or the number of parent candidates through the child router selecting unit 210 will be described below with reference to FIG. 13. When the parent device 200 is represented by P and a child router candidate group and a child router group of the P are represented by CPR and ĈPR, respectively, the child router selecting unit 210 first initializes CPR to devices that request network-subscription to the child router selecting unit 210 according to [Equation 32] below (S221a).

CPR={cεCPR|P=Pc}  [Equation 32]

Thereafter, i=|ĈPR|+1 is established (S222a) and it is judged whether the P is the coordinator (S223a) and when the P is the coordinator, a child router candidate in which the transmission link quality (LQ) is largest is selected as an i-th child router ĉi according to [Equation 33] below (S224a) and when the P is the router, a child router candidate in which the number of parent candidates is smallest is selected as the i-th child router ĉi as described in [Equation 34] below (S225a).




  
    
      
        
          
            c
            ^
          
          i
        
        =
        
          
            
              arg
              ⁢
              
                
              
              ⁢
              max
            
            
              c
              ∈
              
                
                  C
                  P
                  R
                
                -
                
                  
                    C
                    ^
                  
                  P
                  R
                
              
            
          
          ⁢
          
            {
            
              γ
              ⁡
              
                (
                
                  P
                  ,
                  c
                
                )
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          33
        
        ]
      
    
  
  
    
      
        
          
            c
            ^
          
          i
        
        =
        
          
            
              arg
              ⁢
              
                
              
              ⁢
              min
            
            
              c
              ∈
              
                
                  C
                  P
                  R
                
                -
                
                  
                    C
                    ^
                  
                  P
                  R
                
              
            
          
          ⁢
          
            {
            
              
              
                P
                c
              
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          34
        
        ]
      
    
  




The child router information ĉi selected through such a process is added to ĈPR (S226a) and |ĈPR| and min{Rm(Dnet(P)),|CPR|} are compared with each other (S227a), and if |ĈPR|<min{Rm(Dnet(P)),|CPR|}, i←i+1 (S228a) and it is judged whether the P is the coordinator again (S223a) and if |ĈPR|≧min{Rm(Dnet(P)),|CPR|}, the child router group is confirmed as described in [Equation 35] below (S229a).

ĈPR={ĉ1,ĉ2,K,ĉ|ĈPR|}  [Equation 35]

When subscription of a device that intends to subscribe to the router is rejected by all parent candidates, the device reattempts to subscribe in the end device.
In the present invention, the coordinator or the child router selecting unit of the parent device is guided to be prevented from being concentrated on a specific direction and be evenly distributed in a wide area to maximize network connectivity and transmission performance.
Meanwhile, the sensor device 300b that intends to subscribe to the end device selects the parent device 200 by considering the network depth and the transmission link quality (LQ) through the end device parent selecting unit 310b and this case will be described with reference to FIG. 14.
FIG. 14 illustrates a process in which the sensor device that intends to subscribe to the end device selects the parent device, and when the sensor device 300b that intends to subscribe to the end device is represented by k′, the end device parent selecting unit 310b of the k′ first estimates the transmission link quality (LQ) based on a receiving characteristic of beacon signals received through Nch channels and initializes the parent candidate group Pk′ to routers in which the estimated transmission link quality (LQ) is larger than δ as described in [Equation 36] below (S211b).

Pk′={RεR|γ(k′,R)>δ}  [Equation 36]

Thereafter, the set {circumflex over (P)}k′ of the parent candidates in which the network depth is minimum in the parent candidate group is determined according to [Equation 37] below and the parent candidate in which the transmission link quality (LQ) is largest in the {circumflex over (P)}k′ is selected as the parent Pk′ as described in [Equation 38] below (S219b) and thereafter, the parent selecting process ends.




  
    
      
        
          
            P
            ^
          
          k
        
        =
        
          {
          
            
              
                p
                ∈
                
                  P
                  k
                
              
              ❘
              
                
                  D
                  net
                
                ⁡
                
                  (
                  p
                  )
                
              
            
            =
            
              D
              
                P
                
                  k
                  ,
                  
                    m
                    ⁢
                    
                      
                    
                    ⁢
                    i
                    ⁢
                    
                      
                    
                    ⁢
                    n
                  
                
              
            
          
          }
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          37
        
        ]
      
    
  
  
    
      
        
          P
          
            k
            ′
          
        
        =
        
          
            
              arg
              ⁢
              
                
              
              ⁢
              max
            
            
              
                p
                ^
              
              ∈
              
                
                  P
                  ^
                
                
                  k
                  ′
                
              
            
          
          ⁢
          
            {
            
              γ
              ⁡
              
                (
                
                  
                    p
                    ^
                  
                  ,
                  n
                
                )
              
            
            }
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          38
        
        ]
      
    
  




The child end device selecting unit 230 of the parent device Pk′ 200 selected through the end device parent selecting unit 310b selects the k′ as the child end device to add the k′ to ĈPk′ED when the number of child end devices, |ĈPk′ED| in a child end device group ĈPk′ED is smaller than Cm(Dnet(Pk′))−Rm(Dnet(Pk′)), a value acquired by subtracting the maximum number of child routers, Rm(Dnet(Pk′)) from the maximum number of child devices, Cm(Dnet(Pk′)). That is, the child end device selecting unit 230 of the Pk′ selects the child end device within a limit of the maximum number of child end devices Cm(Dnet(Pk′))−Rm(Dnet(Pk′)) in the order of arrival.
As such, the network connectivity of the end device is improved and the transmission link quality (LQ) between the parent router and the child end device is ensured after network connection through the end device parent selecting unit 310b of the sensor device 300b that intends to subscribe to the end device and the child end device selecting unit 230 of the parent device 200 according to the present invention to thereby improve device-to-device data transmission performance.
When the process of selecting the parent and the child (S210) ends, the multi-step tree based address allocating unit 220 of the parent device 200 may allocate the address to the child device 300 selected by the child router selecting unit 210 or the child end device selecting unit 230. FIG. 15 illustrates a flowchart for a process in which the parent device allocates an address according to the present invention.
Referring to FIG. 15, when the parent device 200 is represented by P, the P calculates the maximum number of devices, Cskip(Dnet(P)) for a lower hierarchy of P in the multi-step tree structure in which the P may be connected to the networkbased on a multi-step tree structure factor according to [Equation 39] below (S231).




  
    
      
        
          
            C
            skip
          
          ⁡
          
            (
            
              
                D
                net
              
              ⁡
              
                (
                P
                )
              
            
            )
          
        
        =
        
          {
          
            
              
                
                  
                    
                      
                        1
                        +
                        
                          
                            C
                            m
                          
                          ⁢
                          
                            (
                            
                              
                                D
                                net
                              
                              ⁡
                              
                                (
                                P
                                )
                              
                            
                            )
                          
                        
                        +
                      
                    
                  
                  
                    
                      
                        
                          
                            
                              R
                              m
                            
                            ⁡
                            
                              (
                              
                                
                                  D
                                  net
                                
                                ⁡
                                
                                  (
                                  P
                                  )
                                
                              
                              )
                            
                          
                          ⁢
                          
                            
                              C
                              skip
                            
                            ⁡
                            
                              (
                              
                                
                                  
                                    D
                                    net
                                  
                                  ⁡
                                  
                                    (
                                    P
                                    )
                                  
                                
                                +
                                1
                              
                              )
                            
                          
                        
                        ,
                      
                    
                  
                
              
              
                
                  
                    for
                    ⁢
                    
                      
                    
                    ⁢
                    0
                  
                  ≤
                  
                    
                      D
                      net
                    
                    ⁡
                    
                      (
                      P
                      )
                    
                  
                  ≤
                  
                    
                      L
                      m
                    
                    -
                    1
                  
                
              
            
            
              
                
                  0
                  ,
                
              
              
                
                  
                    for
                    ⁢
                    
                      
                    
                    ⁢
                    
                      
                        D
                        net
                      
                      ⁡
                      
                        (
                        P
                        )
                      
                    
                  
                  =
                  
                    L
                    m
                  
                
              
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          39
        
        ]
      
    
  




Thereafter, it is judged whether the child device 300 is the router (S233) and when the child device is the router, router addresses (total Rm(Dnet(P))) are allocated at an interval of Cskip(Dnet(P)) as described in [Equation 40] by considering the number of devices which may be connected to a lower hierarch tree step of the child router device (S235).

AR,n=AP+(n−1)×Cskip(Dnet(P))+1, for 1≦n≦Rm(Dnet(P))  [Equation 40]

Herein, AP represents an address of the parent device and AR,n represents an address of an n-th child router device.
It is judged whether the child device 300 is the router (S233) and when the child device is the end device, child end device addresses (total Cm(Dnet(P))−Rm(Dnet(P))) are allocated at an interval of 1 as described in [Equation 41] below (S237).

AED,n=AP+Rm(d)×Cskip(Dnet(P))+n, for 1≦n≦Cm(Dnet(P))−Rm(Dnet(P))  [Equation 41]

Herein, AED,n represents an address of an n-th child end device.
In the multi-step tree based address allocating process according to the present invention, each parent device calculates Cskip(Dnet(P)) based on the multi-step tree structure factor determined in the network structure determining process (S100) and determines its own available address therethrough to assure independency of the address while the parent device directly allocates the address without separate message exchange.
Meanwhile, a process (S270) will be described, in which it is judged whether the child device is the router in FIG. 4 (S250) and when the child device is the router, the multiple channels are used and channel available state information of the parent device and the child router device is combined to allocate the superframe duration of the cluster to be afterwards constructed by the child router device.
FIG. 16 illustrates a flowchart of an exemplary embodiment for the process of allocating the superframe duration of the child router device in the present invention, and the process of allocating the superframe duration of the child router device will be described below with reference to FIG. 16. First, the parent device 200 and the child router device 300a transmit and receive address allocation information and thereafter, search for a channel of the parent device 200 during an inactivated period to estimate an available state of the channel (S271 and S272).
Thereafter, the parent device 200 prepares candidate information available as the superframe duration by using channel available state information estimated by the parent device 200 and for example, when duration Nos. 2, 5, and 7 among eight durations are vacant, the corresponding candidate information becomes 01001010 and the parent device 200 transmits the prepared candidate information available as the superframe duration to the child router device 300a (S273a). In addition, when the child router device 300a receives the superframe duration candidate information, the child router device 300a compares the superframe duration candidate information with the channel available state information estimated by the child router device 300a to determine one among the available durations as the superframe duration (S274a), and transmits the determined superframe duration information to the parent device 200 (S275a), and the parent device 200 and the child router device 300a complete allocation of the superframe duration (S280).
When the channel is saturated and thus, the superframe duration is not found during the superframe duration determining process (S274a), the child router device 300a transmits failure information to the parent device 200 (S275a) and in this case, the parent device 200 and the child router device 300a are switched over to a multi-channel operating mode so as for the child router device 300a to use the superframe duration in a different channel from the parent device 200.
The parent device 200 selects a different channel in the multi-channel operating mode (S278) and for example, when there is search information for the different channel previously, the parent device 200 selects a channel in which interference is smallest and when there is no information, the parent device 200 selects the channel arbitrarily or sequentially from channel No. 1. In addition, the parent device 200 transmits the channel change information to the child router device 300a (S279), estimates the available state of the channel again (S271), and repeats the superframe duration allocating process (S270) of searching for the channel first of all.
Meanwhile, the child router device 300a that receives the channel change information from the parent device 200 (S279) and receives the selected different channel information estimates the available state of the channel again (S272) and repeats the superframe duration allocating process (S270) of searching for the selected different channel first of all.
When the allocation of the superframe duration ends through the process, the child router device 300a transmits its own beacon signal in the superframe duration and selects new devices as the child device to construct the cluster.
FIG. 17 illustrates a flowchart of another exemplary embodiment for the process of allocating the superframe duration of the child router device in the present invention, and the process of allocating the superframe duration of the child router device will be described below with reference to FIG. 17. First, each of the parent device 200 and the child router device 300a transmits and receives the address allocation information and thereafter, searches for the channel of the parent device 200 during the inactivated period to estimate the available state of the channel similarly to the exemplary embodiment of FIG. 16 (S271 and S272).
Thereafter, in the exemplary embodiment illustrated in FIG. 17, the child router device 300a prepares candidate information available as the superframe duration by using channel available state information estimated by the child router device 300a differently from the exemplary embodiment of FIG. 16. In addition, the child router device 300a transmits the candidate information available as the superframe duration to the parent device 200 (S273b).
The parent device 200 that receives the superframe duration candidate information compares the superframe duration candidate information with the channel available state information estimated by the parent device 200 to determine one among the available durations as the superframe duration (S274b), and transmits the determined superframe duration information to the child router device 300a (S275b), and the parent device 200 and the child router device 300a complete the allocation of the superframe duration (S280).
When the channel is saturated and thus, the superframe duration is not found during the superframe duration determining process (S274b), the parent device 200 transmits failure information to the child router device 300a (S275b) and in this case, the parent device 200 and the child router device 300a are switched over to the multi-channel operating mode so as for the child router device 300a to use the superframe duration in the different channel from the parent device 200.
The parent device 200 selects a different channel in the multi-channel operating mode (S278) and for example, when there is search information for the different channel previously, the parent device 200 selects a channel in which interference is smallest and when there is no information, the parent device 200 selects the channel arbitrarily or sequentially from channel No. 1. In addition, the parent device 200 transmits the channel change information to the child router device 300a (S279), estimates the available state of the channel again (S271), and repeats the superframe duration allocating process (S270) of searching for the channel first of all.
Meanwhile, the child router device 300a that receives the channel change information from the parent device 200 (S279) and receives the selected different channel information estimates the available state of the channel again (S272) and repeats the superframe duration allocating process (S270) of searching for the selected different channel first of all.
When the allocation of the superframe duration ends through the process, the child router device 300a transmits its own beacon signal in the superframe duration and selects new devices as the child device to construct the cluster.
As described above, in the exemplary embodiment for the superframe duration allocating process illustrated in FIGS. 16 and 17, each of the parent device and the child router device searches for the channel state and thereafter, the child router device finally selects the superframe duration with respect to the superframe duration candidate information presented by the parent device or the parent device finally selects the superframe duration with respect to the superframe duration candidate information presented by the child router device, and as a result, the channel available state information of the parent device and the channel available state information of the child router device are efficiently combined to allocate the superframe duration. Further, unlike the existing Zigbee using a single channel, since the child router device uses a different channel from the parent device to allocate the superframe duration and operate its own cluster, each cluster ensures an independent superframe duration to connect the network without cluster-to-cluster interference even under an environment in which the devices are distributed with high density.
Hereinafter, an operating principle of the data transmitting process (S200) in FIG. 4 according to the exemplary embodiment of the present invention will be described.
FIG. 18 illustrates an exemplary embodiment of a device that performs the data transmitting process according to the present invention, and in the present invention, the data transmitting process (S300) is performed by a multi-step tree based hierarchical routing unit 410 of a router 400.
A process in which the multi-step tree based hierarchical routing unit 410 hierarchically searches for a routing path based on the multi-step tree structure determined through the aforementioned process is illustrated in FIG. 19.
First, a router that has a packet at present is defined as Now, a next destination device of the packet is defined as Next, and a final destination device of the packet is defined as Final.
An address ANow of the router that has the packet at present and an address AFinal of the final destination of the packet are compared with each other and if AFinal=ANow (S310), the router that has the packet at present by itself receives the packet (S320) and if AFinal≠ANow, the router starts searching for the routing path and if AFinal<ANow or AFinal≧ANow+Cskip(Dnet(Now)−1) (S330), the router judges that the Final device which is the final destination of the packet does not belong to a lower hierarchy than that of the router in the multi-step tree structure, establishes ANext=AP, and transmits the packet to its parent device P, that is, an upper hierarchy of the multi-step tree structure (S340). If ANow<AFinal<ANow+Cskip(Dnet(Now)−1)<, the router Now that has the packet at present judges that the Final device which is the final destination of the packet belongs to the lower hierarchy than that of the router in the multi-step tree structure and determines an address of an appropriate child device as ANext as described in [Equation 42] below and thereafter, transmits the packet (S350).

ANext=max{A|ANow<A<min{ANow+Cskip(Dnet(Now)−1),AFinal}}  [Equation 42]

Since the multi-step tree based hierarchical routing unit 410 determines the routing path of the packet based on the multi-step tree determined according to the network structure determining process (S100), there is no burden of searching for a separate routing path and a plurality of devices installed in the wide area with high density may be rapidly self-constructed while minimizing the message exchange and the routing delay.
As such, according to the present invention, a large number of devices selected with high density in the wide area are connected to the network while minimizing the message exchange caused during the process of self-construction of the WSN to thereby effectively improve large-scale WSN self-construction performance.
While the spirit of the present invention has been just described in the above exemplary embodiments of the present invention, those skilled in the art may change, modify, and substitute the exemplary embodiments of the present invention in various ways without departing from the essential characteristic of the present invention. Accordingly, the disclosed exemplary embodiments should be construed as not limiting but describing the technical spirit of the present invention, but the technical spirit of the present invention is not limited by the exemplary embodiments. The protection scope of the present invention should be interpreted based on the following appended claims and it should be appreciated that all technical spirits included within a range equivalent thereto are included in the appended claims of the present invention.

## Claims

1. A method for self-construction of a cluster tree structure based wireless sensor network (WSN), comprising:
(A) a network structure determination step of calculating, by a coordinator, which is one of parent devices, a minimum network depth for covering up the entire area of the WSN and the number of devices located within a communication range, and calculating a maximum number of child router devices and a maximum number of child end devices according to a network depth at each tree step to determine a network structure;
(B) a network construction step of selecting, by the parent device at each tree step, the device as a child device with address allocation in response to a subscription request of a device as a child device, and allocating a superframe duration to a child router device among the child devices; and
(C) a data transmission step of searching for, by a router device having data packets, a routing path by means of address comparison between its own address and a final destination address of the packet, and transmitting the packet according to the routing path,
wherein step (A) includes:
(A-1) calculating an average communication range and calculating the minimum network depth based on the average communication range;
(A-2) calculating the number of devices located within the average communication range based on the average communication range and the minimum network depth;
(A-3) determining a maximum network depth and the number of tree steps; and
(A-4) calculating the maximum number of child router devices and the maximum number of child end devices according to the network depth at each tree step.

2. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 1, wherein
in step (A-3), the maximum network depth is set as the minimum network depth and the number of tree steps is input from a user or set to a previously determined value, and
in step (A-4), a tree threshold depth is determined for each tree step, and a structure for each tree step is determined by calculating the maximum number of child router devices and the maximum number of child end devices at each tree step in consideration of the maximum network depth and the tree threshold depth.

3. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 1, wherein step (B) includes:
(B-1) selecting, by a child device, a parent candidate group, selecting a parent device in consideration of a network depth and a transmission link quality (LQ) of parent devices in the parent device candidate group, and requesting subscription to the selected parent device as a child device;
(B-2) selecting, by the selected parent device, a child device that requests subscription in consideration of the number of its child devices and allowing the selected child device to subscribe as its child device;
(B-3) allocating, by the selected parent device, an address to the selected child device; and
(B-4) allocating, by the selected parent device, a superframe duration to its child router devices with address allocation.

4. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 3, wherein when the child device is selected as a child router device, step (B-1) includes:
estimating, by the child device, the transmission link quality (LQ) from reception characteristics of a received beacon signal and initializing a parent device candidate group comprising routers whose transmission link quality (LQ) is larger than a threshold value;
determining a parent device candidate group in consideration of the network depth of parent devices in the parent device candidate group;
selecting a parent device which has the lowest transmission link quality (LQ) in the parent device candidate group; and
transmitting to the selected parent device a subscription request message including the number of parent devices in the parent device candidate group.

5. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 4, wherein step (B-2) includes:
initializing, by the selected parent device, its child router candidate group comprising devices that request subscription as one of its child routers;
selecting a child router device which has the highest transmission link quality (LQ) among child router devices in the child router candidate group when the selected parent device is the coordinator, and selecting a child router device which has the smallest number of the parent devices in the parent device candidate group among child router devices in the child router candidate group when the selected parent device is the router;
adding the selected child router device to its child router group; and
confirming the subscription of the selected child router device in consideration of the number of child routers in its child router group and the maximum allowable number of child routers.

6. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 3, wherein when the child device is selected as a child end device, step (B-1) includes:
estimating, by the child device, the transmission link quality (LQ) based on reception characteristics of a received beacon signal and initializing a parent device candidate group comprising routers whose estimated transmission link quality (LQ) is larger than a threshold value;
determining parent devices belonging to the parent device candidate group in consideration of their network depth;
selecting a parent device which has the largest transmission link quality (LQ) in the parent device candidate group; and
transmitting a subscription request message to the selected parent device.

7. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 6, wherein in step (B-2),
the selected parent device confirms the subscription of devices as its child end devices in a first-come-first-service manner in consideration of the maximum allowable number of child end devices which is equal to the difference between the maximum allowable number of its child devices and the maximum allowable number of its child router devices.

8. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 5, wherein, when a device requesting subscription as a child router device is rejected by all of the parent devices in the parent device candidate group as a result of performing step (B-2), it performs step (B-1) as a child end device again.

9. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 3, wherein step (B-3) includes:
Calculating, by the selected parent device, the maximum number of its child devices allowable at its lower hierarchical tree steps;
allocating its child router devices their address each of which is separated by a space of the maximum allowable number of their descendent child devices; and
allocating the address to its child end devices by increasing one by one from the largest address that its child routers use.

10. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 3, wherein step (B-4) includes:
(B-4-a1) estimating, by the selected parent device and its child router device, the availability of a channel selected by the selected parent device by means of channel sensing;
(B-4-a2) generating, by the selected parent device, information on candidate superframe duration available in the estimated channel;
(B-4-a3) transmitting, by the selected parent device, the information on candidate superframe duration to its child router device;
(B-4-a4) determining, by the child router device, a superframe duration among candidate superframe durations in consideration of the received information on candidate superframe duration and available superframe duration estimated by itself;
(B-4-a5) transmitting, by the child router device, information on the determined superframe duration to the selected parent device; and
(B-4-a6) settling the superframe duration to be used by the selected parent device and its child router device.

11. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 10, wherein step (B-4-a4) includes:
comparing, by the child router device, the received information on candidate superframe duration and its estimated available superframe duration, and transmitting to the selected parent device a failure message on the selection of superframe duration when no superframe duration is available; and
repeating, by the selected parent device, step (B-4-a1) by means of channel sensing on a different channel when the failure message is received.

12. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 3, wherein step (B-4) includes:
(B-4-b1) estimating, by the selected parent device and its child router device, the availability of a channel selected by the selected parent device by means of channel sensing;
(B-4-b2) generating, by the child router device, information on candidate superframe duration available in the estimated channel;
(B-4-b3) transmitting, by the child router device, the information on candidate superframe duration to the selected parent device;
(B-4-b4) determining, by the selected parent device, a superframe duration among candidate superframe durations in consideration of the received information on candidate superframe duration and available superframe duration estimated by itself;
(B-4-b5) transmitting, by the selected parent device, the determined superframe duration information to the child router device; and
(B-4-b6) settling the superframe duration to be used by the selected parent device and the child router device.

13. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 12, wherein step (B-4-b4) includes:
comparing, by the selected parent device, the received information on candidate superframe duration and available superframe duration estimated by itself, and transmitting to the child router device a failure message on the selection of superframe duration when no superframe duration is available; and
repeating, by the selected parent device, step (B-4-a1) by means of channel sensing on a different channel when the failure message is received.

14. The method for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 1, wherein step (C) includes:
receiving, by the router device having a packet, the packet when its address is the same as the final destination address of the packet;
transmitting the packet to its child devices when the final destination address of the packet is larger than its address and smaller than its address plus its maximum allowable number of its child devices; and
returning the packet to its parent device when the final destination address of the packet is smaller than its address or larger than its address plus its maximum allowable number of its child devices.

15. A system for self-construction of a cluster tree structure based wireless sensor network (WSN), comprising:
a coordinator calculating an average communication range of the WSN and the number of devices located within the average communication range and calculating the maximum allowable number of child routers and child devices at each tree step based on the average communication range and the number of devices within the average communication range to determine a multi-step tree network structure;
parent devices selecting their child devices through a subscription request from devices belonging to a lower hierarchical tree step, and allocating their selected child devices to their own child devices addresses; and
child devices having their own addresses allocated by a parent device belonging to an higher hierarchical tree step through a subscription request process,
wherein the child devices include child router devices and child end devices,
the child router device includes a router parent selecting unit that selects a parent device candidate group, selects a parent device in the parent device candidate group, and requests subscription to the selected parent device, and
the child end device includes an end device parent selecting unit that selects a parent device candidate group, selects the parent device from the parent device candidate group, and requests subscription to the selected parent device.

16. The system for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 15, wherein the coordinator includes:
an operating environment estimating unit calculating an average communication range and the number of devices located within the average communication range; and
a multi-step balanced-tree structure optimizing unit calculating a maximum network depth, and the maximum allowable number of child routers and the maximum allowable number of child devices at each tree step.

17. The system for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 15, wherein the parent device includes:
a child router selecting unit determining its child router devices among devices that request subscription as a child router and managing its child router devices;
a child end device selecting unit determining its child end devices among devices that request subscription as a child end device and managing its child router devices; and
a multi-step tree based address allocating unit allocating an address to each of its selected child devices, transmitting the allocated address to its selected child devices, and allocating a superframe duration to each of its child router devices.

18. The system for self-construction of a cluster tree structure based wireless sensor network (WSN) of claim 15, wherein the coordinator, the parent device, and the child router device include a multi-step tree based hierarchical routing unit that searches for a routing path for transmitting packets as a router device.