KR20090106033A - Transmitting device, receiving device and transmitter-receiver system in wireless sensor network - Google Patents

Transmitting device, receiving device and transmitter-receiver system in wireless sensor network Download PDF

Info

Publication number
KR20090106033A
KR20090106033A KR1020080031513A KR20080031513A KR20090106033A KR 20090106033 A KR20090106033 A KR 20090106033A KR 1020080031513 A KR1020080031513 A KR 1020080031513A KR 20080031513 A KR20080031513 A KR 20080031513A KR 20090106033 A KR20090106033 A KR 20090106033A
Authority
KR
South Korea
Prior art keywords
preamble
packet
transmitting
ack
node
Prior art date
Application number
KR1020080031513A
Other languages
Korean (ko)
Other versions
KR100931781B1 (en
Inventor
박우길
박세웅
이정준
Original Assignee
엘에스산전 주식회사
재단법인서울대학교산학협력재단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘에스산전 주식회사, 재단법인서울대학교산학협력재단 filed Critical 엘에스산전 주식회사
Priority to KR1020080031513A priority Critical patent/KR100931781B1/en
Publication of KR20090106033A publication Critical patent/KR20090106033A/en
Application granted granted Critical
Publication of KR100931781B1 publication Critical patent/KR100931781B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0203Power saving arrangements in the radio access network or backbone network of wireless communication networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0053Allocation of signaling, i.e. of overhead other than pilot signals
    • H04L5/0055Physical resource allocation for ACK/NACK
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

PURPOSE: A transmission device of a sensor network, a receiving device and a transceiving system are provided to reduce the number of times of transmitting preambles. CONSTITUTION: A transmission device(100) of a sensor network includes a preamble generator and a preamble ack handler. The preamble generator(111) determines the time when a preamble is generated and transmitted to a receiving device and the transmission repetition interval of the preamble by using a prediction error information stored during the previous packet transmission. The preamble ack handler(113) generates data packet when an ack signal is received from the receiving device and then transmits it.

Description

센서 네트워크의 송신 장치, 수신 장치 및 송수신 시스템{TRANSMITTING DEVICE, RECEIVING DEVICE AND TRANSMITTER-RECEIVER SYSTEM IN WIRELESS SENSOR NETWORK}Transmitter, Receiver and Transmit System in Sensor Networks {TRANSMITTING DEVICE, RECEIVING DEVICE AND TRANSMITTER-RECEIVER SYSTEM IN WIRELESS SENSOR NETWORK}

본 발명은 센서 네트워크에 관한 것으로, 특히 저빈도(low duty cycle)의 주기적 데이터 전송을 하는 센서 네트워크에서 전력 소비량을 최소화할 수 있는 센서 네트워크의 송신 장치, 수신 장치 및 송수신 시스템에 관한 것이다.The present invention relates to a sensor network, and more particularly, to a transmitting device, a receiving device, and a transmitting and receiving system of a sensor network capable of minimizing power consumption in a sensor network performing periodic data transmission with low duty cycle.

최근에 무선 센서 네트워크(Wireless Sensor Network)에 대한 연구가 활발히 진행되고 있다. 센서 네트워크란, 사물에 대한 인식 정보 또는 주변의 환경 정보를 감지할 수 있는 센서가 탑재된 센서노드를 통해 무선 센서 네트워크를 구성하고, 다양한 센서를 통해 입력되는 정보를 실시간으로 네트워크를 통해 외부의 네트워크에 연결하여 정보를 처리하고 관리하는 것을 말한다. Recently, research on wireless sensor networks has been actively conducted. The sensor network is composed of a wireless sensor network through a sensor node equipped with a sensor that can detect recognition information about an object or surrounding environment information, and the information input through various sensors in real time through an external network. It refers to the processing and management of information by connecting to it.

궁극적으로 센서 네트워크는 모든 사물에 컴퓨팅 및 통신 기능을 부여하여 언제, 어디서나, 네트워크, 디바이스, 서비스에 관계없이 통신이 가능한 환경을 구현하기 위한 것이다.Ultimately, sensor networks are designed to provide computing and communication functions to all things to enable an environment that can communicate anytime, anywhere, regardless of network, device, or service.

도 1은 센서 네트워크의 일반적인 구성도이다. 센서 네트워크는, 사물에 대한 인식정보 또는 주변의 환경정보를 실시간으로 감지하는 센서와 통신 모듈로 구성되는 센서노드들(10; Sensor Node)들과, 상기 센서노드(10)에서 수집된 정보를 전송받는 싱크노드(20; Sink Node), 상기 싱크노드(20)로부터 전송된 정보를 라우팅 하여 광대역 통신망을 통해 관리서버(40)로 전송하는 게이트웨이(30)를 포함한다.1 is a general configuration diagram of a sensor network. The sensor network transmits sensor nodes 10 including sensor nodes and a communication module that detects recognition information about an object or surrounding environment information in real time, and information collected by the sensor node 10. A sink node 20 includes a gateway 30 for routing information transmitted from the sink node 20 to the management server 40 through a broadband communication network.

상기 센서노드들(10)은 ZigBee, UWB(Ultra Wide Band), 또는 블루투스와 같은 근거리무선통신(WPAN) 방식을 통해 상호 데이터를 송수신하며, 싱크노드(20)는 위성통신, 무선랜, 블루투스, 유선 인터넷과 같은 기존의 인프라로 게이트웨이(30)와 연결될 수 있다.The sensor nodes 10 transmit and receive data to each other through a short range wireless communication (WPAN) method such as ZigBee, Ultra Wide Band (UWB), or Bluetooth, and the sink node 20 is a satellite communication, wireless LAN, Bluetooth, The gateway 30 may be connected to an existing infrastructure such as a wired internet.

이러한 센서 네트워크 환경의 센서 필드에서 패킷은 비교적 단순하다. 즉 하나의 센서 필드에 설치되는 각 소스노드들(11)에는 제한된 숫자의 몇 가지 센서만 설치가 가능하고, 이로 인해 발생되는 데이터 패킷의 길이 또한 몇 가지 종류로 제한된다.In this sensor network environment, the sensor field is relatively simple. That is, only some sensors of a limited number can be installed in each of the source nodes 11 installed in one sensor field, and the length of the data packet generated by this is also limited to several types.

센서 네트워크에서 사용되는 MAC 프로토콜인 IEEE 802.15.4(WPAN; ZigBee)의 경우 비콘 프레임(Beacon Frame), 데이터 프레임(Data Frame), 수신확인 프레임(ACK Frame) 및 MAC 명령어 프레임(MAC command frame)의 4가지 포맷을 가진다. 상기에서 수신 확인 프레임의 경우는 고정 길이이고, 데이터 프레임은 사용되는 센서 종류의 한계로 인하여 비교적 고정 길이를 갖는다. 또한 비콘 프레임과 명령어 프레임의 경우에도 설치되는 센서 필드의 형태가 고정적인 경우가 많아 단순한 몇 가지 형태의 패킷 길이만을 갖는다.In the case of IEEE 802.15.4 (WPAN; ZigBee), a MAC protocol used in the sensor network, the beacon frame, the data frame, the acknowledgment frame, and the MAC command frame It has four formats. In the above case, the acknowledgment frame has a fixed length, and the data frame has a relatively fixed length due to the limitation of the type of sensor used. In addition, the beacon frame and the command frame have a fixed form of the sensor field, which is often fixed, and has only a few simple packet lengths.

도 2는 종래의 센서노드 중 송신노드와 수신노드의 구성을 각각 나타낸 도면이다. 즉, 센서노드들(10)의 MAC(Media Access Control) 프로토콜 구성을 나타낸 것이다. 2 is a diagram showing the configuration of a transmitting node and a receiving node of the conventional sensor node, respectively. That is, the MAC (Media Access Control) protocol configuration of the sensor nodes 10 is shown.

도 1에서 센서노드들(10) 중 데이터를 송신하는 노드를 송신노드(11)라고 하며, 상기 송신노드(11)로부터 데이터를 수신하는 노드를 수신노드(15)라고 한다. 상기 송신노드(11) 중 센서를 구비한 노드를 소스노드라고도 한다.In FIG. 1, a node transmitting data among the sensor nodes 10 is called a transmitting node 11, and a node receiving data from the transmitting node 11 is called a receiving node 15. A node having a sensor among the transmitting nodes 11 is also called a source node.

센서노드의 MAC 프로토콜은 주로 수신모듈과 송신모듈로 구성되는 데, 센서노드 중 소스노드의 경우에는 수신모듈이 불필요하여 송신모듈로만 구성되나, 그 외의 센서노드는 수신모듈과 송신모듈을 포함하여 이루어져 있다. The MAC protocol of a sensor node is mainly composed of a receiving module and a transmitting module. In the case of a source node among sensor nodes, a receiving module is not necessary and consists only of a transmitting module. Other sensor nodes include a receiving module and a transmitting module. have.

상기 송신노드(11)의 송신모듈(12)은 다시 프리앰블 생성기(12-1)와, 프리앰블 ack 핸들러(12-2), 및 패킷 ack 핸들러(12-3)로 구성되고, 수신노드(15)의 수신모듈(16)은 프리앰블 핸들러(16-1)와 패킷 핸들러(16-2)로 구성된다. The transmitting module 12 of the transmitting node 11 is composed of a preamble generator 12-1, a preamble ack handler 12-2, and a packet ack handler 12-3, and a receiving node 15 The receiving module 16 of the preamble handler 16-1 and the packet handler 16-2.

상기에서 송신노드(11)가 전송할 데이터가 생성되면, 송신모듈(12)은 프리앰블 생성기(12-1)에서 수신노드가 깨어난 시점을 알기 위해서 프리앰블을 생성, 전송한다. When data to be transmitted by the transmitting node 11 is generated, the transmitting module 12 generates and transmits a preamble in order to know when the receiving node wakes up in the preamble generator 12-1.

프리앰블 ack 핸들러(12-2)는 프리앰블 생성기(12-1)가 프리앰블을 생성, 전송한 후 그에 대한 ack(acknowledge)가 있는지를 검사하고, 수신노드(15)로부터 ack가 지정된 시간 안에 수신되면 데이터 패킷을 생성하여 전송한다. The preamble ack handler 12-2 checks whether there is an ack (acknowledge) for the preamble generator 12-1 after generating and transmitting the preamble, and if ack is received from the receiving node 15 within a specified time, Create a packet and send it.

패킷 ack 핸들러(12-3)는 프리앰블 ack 핸들러(12-2)가 패킷을 전송 후 일정 시간동안 데이터 패킷 ack가 도착하는지를 검사하고, 수신노드(15)로부터 ack가 도착하면 버퍼에서 패킷을 제거하고 전송 작업은 종료된다.The packet ack handler 12-3 checks whether the data packet ack arrives for a predetermined time after the preamble ack handler 12-2 transmits the packet. When the ack arrives from the receiving node 15, the packet ack handler 12-2 removes the packet from the buffer. The transfer job ends.

수신노드(15)의 프리앰블 핸들러(16-1)는 웨이크업 상태(wakeup)에서 항상 자신을 목적노드로 하는 프리앰블이 존재하는지를 검사하고 존재하면 프리앰블 ack를 생성하여 해당 송신노드(11)로 전송하는 역할을 하고, 패킷 핸들러(16-2)는 송신노드(11)가 전송한 패킷을 받고 그에 대한 ack 패킷을 생성하여 해당 송신노드(11)로 전송하는 역할을 한다.The preamble handler 16-1 of the receiving node 15 always checks whether a preamble having its own destination node exists in the wakeup state and, if present, generates a preamble ack and transmits the preamble ack to the corresponding transmitting node 11. The packet handler 16-2 receives a packet transmitted by the transmitting node 11, generates an ack packet for the packet, and transmits the packet to the corresponding transmitting node 11.

수신노드(15)의 송신모듈의 경우 다른 센서노드 또는 싱크노드로 데이터를 송신하는 역할을 한다.The transmitting module of the receiving node 15 serves to transmit data to other sensor nodes or sink nodes.

도 3은 종래의 송신노드와 수신노드 사이의 데이터 전송 예를 나타낸 도면으로서, 빗금친 부분은 청취(listening) 또는 수신하는 것이나 그 기간을 나타내며, 검은색 부분은 송신하는 것이나 그 기간을 나타낸다.3 is a diagram illustrating an example of data transmission between a conventional transmitting node and a receiving node, in which a hatched portion represents listening or receiving or a period thereof, and a black portion represents transmitting or a period thereof.

도 3에서 알 수 있듯이, 모든 센서노드들은 미리 설정된 웨이크업 시간(wakeup period)을 갖고 주기적으로 슬립(sleep)과 웨이크업(wakeup)을 반복한다.As can be seen in FIG. 3, all the sensor nodes have a predetermined wakeup period and periodically sleep and wakeup.

수신노드(15)가 웨이크업되면 프리앰블 핸들러(16-1)는 일정 청취시간(listen period) 동안 자신을 목적지로 하는 프리앰블이 있는지를 체크한다. 만일 존재하지 않는다면 다시 슬립 상태로 전환된다. When the receiving node 15 wakes up, the preamble handler 16-1 checks whether there is a preamble destined for itself for a predetermined listening period. If it does not exist, it goes back to sleep.

송신노드(11)는 전송할 데이터가 있으면, 해당 수신노드(15)가 웨이크업 상태가 되는 시점을 알 수 없기 때문에 이를 탐색하기 위해서 프리앰블 생성기(12-1) 에서 프리앰블을 보낸다. 이때, 프리앰블에는 해당 수신노드(15)에 대한 주소가 포함되어 있다.If there is data to be transmitted, the transmitting node 11 does not know when the corresponding receiving node 15 is in the wake-up state, and thus the preamble generator 12-1 sends a preamble to search for it. At this time, the preamble includes an address for the corresponding receiving node 15.

수신노드(15)의 프리앰블 핸들러(16-1)는 자신을 목적노드로 하는 프리앰블을 성공적으로 받게 되면 프리앰블에 대한 ack를 생성하여 해당 송신노드(11)로 전송한다. When the preamble handler 16-1 of the receiving node 15 successfully receives a preamble of which the node is the destination node, the preamble handler 16-1 generates an ack for the preamble and transmits the ack to the corresponding transmitting node 11.

프리앰블을 전송한 송신노드(11)는 일정시간동안 프리앰블 ack를 기다리고 만일 도착하지 않으면 다시 프리앰블을 재전송하는데, 이는 웨이크업 기간(wakeup period) 동안 반복된다. 만일 송신노드(11)는 프리앰블 ack를 받게 되면 현재 수신노드(15)가 웨이크업된 상태임을 알게 된 것이므로, 프리앰블 ack 핸들러(12-2)가 실제 데이터 패킷을 전송하게 된다. The transmitting node 11 that transmits the preamble waits for the preamble ack for a predetermined time and if it does not arrive, retransmits the preamble again, which is repeated during the wakeup period. If the transmitting node 11 receives the preamble ack, it knows that the receiving node 15 is in the wake-up state, and thus the preamble ack handler 12-2 transmits the actual data packet.

수신노드(15)는 프리앰블 ack을 전송한 후 일정 시간 동안 데이터 패킷을 기다린다. 만일 수신되지 않으면 수신을 포기하고 다시 슬립 상태로 전환되고, 성공적으로 데이터 패킷이 수신되면 패킷 핸들러(16-2)는 패킷 ack를 생성하여 해당 송신노드(11)로 전송한다. The receiving node 15 waits for a data packet for a predetermined time after transmitting the preamble ack. If it is not received, it abandons the reception and goes back to sleep. If the data packet is successfully received, the packet handler 16-2 generates a packet ack and transmits the packet to the corresponding transmission node 11.

송신노드(11)는 데이터 패킷을 전송한 후 일정 시간 동안 데이터 패킷 ack를 기다리고 성공적으로 수신되면 패킷 전송 프로세스가 완료된다. 만일 실패하면 다시 데이터 패킷을 재전송하게 된다. The transmitting node 11 waits for the data packet ack for a predetermined time after transmitting the data packet, and if the packet is successfully received, the packet transmission process is completed. If it fails, it will retransmit the data packet.

일반적으로, 송신노드(11)와 수신노드(15)는 대략 1초당 30㎲의 시간오차가 있어 송신노드(11)는 수신노드(15)의 웨이크업 시점을 정확히 알 수 없기 때문에 웨이크업 시점을 탐색하기 위해서 평균적으로 웨이크업 기간의 절반만큼의 시 간(wakeup period/2)이 필요하다. 센서노드의 경우 대부분 비동기 방식이므로 시간이 흐를수록 시간오차가 많이 발생하게 된다.In general, since the transmitting node 11 and the receiving node 15 have a time error of approximately 30 ms per second, the transmitting node 11 does not know exactly when the receiving node 15 wakes up. The search requires, on average, half the wakeup period / 2. Since most sensor nodes are asynchronous, more time errors occur over time.

결국, 송신노드의 에너지 소비량은 웨이크업 기간에 비례한다고 할 수 있다. 일반적으로 센서 네트워크의 수명을 최대화하기 위해서는 웨이크업 기간을 늘리는 방법을 사용하게 되는데, 이러한 특성은 오히려 웨이크업 기간이 일정값 이상 늘어나면 송신노드는 수신노드의 웨이크업 시점을 모르기 때문에 프리앰블의 전송 횟수가 늘어날 수밖에 없어 송신노드의 경우 에너지 소모량이 증가하여 전체적으로 센서 네트워크의 수명이 감소하게 되는 문제점 있었다. As a result, the energy consumption of the transmitting node can be said to be proportional to the wakeup period. In general, in order to maximize the lifespan of the sensor network, the wakeup period is extended. This characteristic is that when the wakeup period is increased by more than a predetermined value, the transmitting node does not know the wakeup time of the receiving node. Inevitably, the transmission node has a problem that the lifespan of the sensor network is reduced as the energy consumption increases.

본 발명의 목적은 송신노드가 수신노드의 웨이크업 시점을 비교적 정확하게 파악하여 프리앰블의 전송 횟수를 줄임에 따라 전력 소모를 최소화할 수 있는 센서 네트워크의 송신 장치, 수신 장치 및 송수신 시스템을 제공하는데 있다.An object of the present invention is to provide a transmitting device, a receiving device, and a transmitting / receiving system of a sensor network capable of minimizing power consumption by reducing the number of transmissions of a preamble by relatively accurately identifying a wake-up time of a receiving node.

본 발명의 다른 목적은 수신노드가 패킷이 전송될 일정 영역에서 듀티 사이클을 순간적으로 높임에 따라 송신노드의 전력 소모를 최소화할 수 있는 센서 네트워크의 송신 장치, 수신 장치 및 송수신 시스템을 제공하는데 있다.Another object of the present invention is to provide a transmitting device, a receiving device, and a transmitting / receiving system of a sensor network capable of minimizing power consumption of a transmitting node as the receiving node temporarily increases a duty cycle in a certain area in which a packet is to be transmitted.

본 발명의 또다른 목적은 송신노드들의 데이터 전송 시점들을 특정 송신노드를 기준으로 일정시간 지연시킴에 따라 수신노드의 전력 소모를 최소화함과 아울러 센서 네트워크의 수명을 극대화할 수 있는 센서 네트워크의 송신 장치, 수신 장치 및 송수신 시스템을 제공하는데 있다.It is still another object of the present invention to minimize the power consumption of the receiving node and to maximize the life of the sensor network by delaying the data transmission time points of the transmitting nodes based on a specific transmitting node. To provide a receiving apparatus and a transmission and reception system.

상기 목적을 달성하기 위한 본 발명의 기술적 수단은, 센서 네트워크의 송신 장치에 있어서, 프리앰블을 생성하여 수신장치로 전송하는 시점과, 상기 프리앰블의 전송 반복 구간을 이전의 패킷 전송시에 저장된 예측오차정보를 이용하여 결정하는 프리앰블 생성기; 및 상기 프리앰블 전송에 따라 해당 수신장치로부터 ack(acknowledge)가 있을 경우 데이터 패킷을 생성하여 전송하고, 필요한 경우 패킷을 전송할 일정 시점에 대해서 웨이크업 듀티 사이클을 순간적으로 높이도록 수신장치에게 요청하는 프리앰블 ack 핸들러;를 포함하는 것을 특징으로 한다.The technical means of the present invention for achieving the above object is, in the transmitting device of the sensor network, the time when the preamble is generated and transmitted to the receiving device, and the prediction error information stored at the time of the previous packet transmission repeating interval of the preamble Preamble generator to determine using; And a preamble ack for generating a data packet when there is an acknowledgment from the corresponding receiver according to the preamble transmission, and if necessary, requesting the receiver to increase a wake-up duty cycle for a predetermined time point for transmitting the packet. And a handler.

구체적으로, 상기 프리앰블 ack 핸들러는, 데이터 패킷을 생성할 때 다음 패킷의 전송 시간 정보를 추가하여 데이터 패킷을 생성하는 것을 특징으로 한다. In detail, the preamble ack handler generates a data packet by adding transmission time information of a next packet when generating the data packet.

상기 프리앰블 생성기는 프리앰블 전송 반복 구간

Figure 112008024509147-PAT00001
을 아래 수학식에 의해 획득하며, 상기 프리앰블 전송 반복 구간
Figure 112008024509147-PAT00002
을 수학식
Figure 112008024509147-PAT00003
또는
Figure 112008024509147-PAT00004
에 의해 구해진 값 중 더 작은 값으로 결정하는 것을 특징으로 한다.The preamble generator is a preamble transmission repetition interval
Figure 112008024509147-PAT00001
Is obtained by the following equation, and the preamble transmission repetition interval
Figure 112008024509147-PAT00002
To the equation
Figure 112008024509147-PAT00003
or
Figure 112008024509147-PAT00004
Characterized in that the smaller value is determined from the value obtained by.

수학식Equation

Figure 112008024509147-PAT00005
Figure 112008024509147-PAT00005

상기 수신장치는 송신장치의 웨이크업 듀티 사이클을 높이라는 요청에 따라 자신의 배터리와 메모리를 체크하여 이 요청을 받아들일 수 있는 경우에는 이 값을 기억하고, 요청된 해당 시점에서 웨이크업 듀티 사이클을 높이는 것을 특징으로 한다.The receiver checks its battery and memory in response to a request to increase the wake-up duty cycle of the transmitter and stores this value if it can accept the request. It is characterized by raising.

상기 목적을 달성하기 위한 본 발명의 다른 기술적 수단은, 센서 네트워크의 수신 장치에 있어서, 웨이크업(wakeup)된 상태에서 항상 자신을 목적노드로 하는 프리앰블이 존재하는지를 검사하고, 프리앰블이 존재하면 프리앰블 ack를 생성하여 해당 송신장치로 전송하는 프리앰블 핸들러; 상기 송신장치가 전송한 패킷을 받고 그에 대한 ack 패킷을 생성하여 해당 송신장치로 전송하되, 해당 송신장치에게 프리앰블 전송 시점을 일정시간 지연하도록 요청하는 패킷 핸들러; 및 각 송신장치의 데이터 전송 시점을 계산하되 각 송신장치의 데이터 전송 시점이 일정시간 내에서 이루어지도록 각 송신장치의 데이터 전송 시점에 대한 지연 시간을 계산하여 패킷 핸들러로 제공하는 그룹 스케줄러;를 포함하는 것을 특징으로 한다.Another technical means of the present invention for achieving the above object is, in the receiving device of the sensor network, in the wake-up (wakeup) state always checks whether there is a preamble as a target node, and if the preamble exists preamble ack A preamble handler for generating and transmitting the generated signal to the transmitter; A packet handler for receiving a packet transmitted by the transmitting apparatus, generating an ack packet for the transmitting apparatus, and transmitting the generated ack packet to the transmitting apparatus, requesting the transmitting apparatus to delay a preamble transmission time for a predetermined time; And a group scheduler that calculates a data transmission time point of each transmitting device and calculates a delay time for the data transmission time point of each transmitting device to provide a packet handler so that the data transmission time of each transmitting device is achieved within a predetermined time period. It is characterized by.

구체적으로, 상기 패킷 핸들러는 자신의 배터리와 메모리의 여유 정도에 따라 송신장치들에게 패킷 전송을 일정 시간만큼 지연할 수 있는지를 체크하고, 각 송신장치의 지연시간에 대한 정보는 그룹 스케줄러에 의해 결정되는 것을 특징으로 하며, 상기 그룹 스케줄러는 각 송신장치로부터 마지막으로 수신된 패킷시간을 체크하고, 마지막으로 수신된 패킷시간을 기준으로 각 송신장치들의 지연 시간을 결정하는 것을 특징으로 한다.Specifically, the packet handler checks whether the packet transmission can be delayed to the transmitting apparatuses by a predetermined time according to the amount of spare of the battery and the memory of the packet handler, and the information about the delay time of each transmitting apparatus is determined by the group scheduler. The group scheduler checks a packet time last received from each transmitter, and determines a delay time of each transmitter based on the packet time last received.

상기 목적을 달성하기 위한 본 발명의 또다른 기술적 수단은, 송신장치와 수 신장치를 포함하는 센서노드 및 싱크노드로 이루어진 센서 네트워크에 있어서, 상기 송신장치는, 프리앰블을 생성하여 수신장치로 전송하는 시점과, 상기 프리앰블의 전송 반복 구간을 이전의 패킷 전송시에 저장된 예측오차정보를 이용하여 결정하는 프리앰블 생성기; 및 상기 프리앰블 전송에 따라 해당 수신장치로부터 ack(acknowledge)가 있을 경우 데이터 패킷을 생성하여 전송하고, 필요한 경우 패킷을 전송할 일정 시점에 대해서 웨이크업 듀티 사이클을 순간적으로 높이도록 수신장치에게 요청하는 프리앰블 ack 핸들러;를 포함하고,Another technical means of the present invention for achieving the above object is a sensor network comprising a transmitting device and a sensor node and a sink node including a plurality of extension values, wherein the transmitting device generates a preamble and transmits the preamble to the receiving device. And a preamble generator configured to determine a transmission repetition interval of the preamble by using prediction error information stored in a previous packet transmission. And a preamble ack for generating a data packet when there is an acknowledgment from the corresponding receiver according to the preamble transmission, and if necessary, requesting the receiver to increase a wake-up duty cycle for a predetermined time point for transmitting the packet. A handler;

상기 수신장치는, 웨이크업(wakeup)된 상태에서 항상 자신을 목적노드로 하는 프리앰블이 존재하는지를 검사하고, 프리앰블이 존재하면 프리앰블 ack를 생성하여 해당 송신장치로 전송하는 프리앰블 핸들러; 상기 송신장치가 전송한 패킷을 받고 그에 대한 ack 패킷을 생성하여 해당 송신장치로 전송하되, 해당 송신장치에게 프리앰블 전송 시점을 일정시간 지연하도록 요청하는 패킷 핸들러; 및 각 송신장치의 데이터 전송 시점을 계산하되 각 송신장치의 데이터 전송 시점이 일정시간 내에서 이루어지도록 각 송신장치의 데이터 전송 시점에 대한 지연 시간을 계산하여 패킷 핸들러로 제공하는 그룹 스케줄러;를 포함하는 것을 특징으로 한다.The receiving apparatus includes: a preamble handler which checks whether a preamble having its own destination node always exists in a wake-up state, and generates and transmits a preamble ack to the corresponding transmitting apparatus when the preamble exists; A packet handler for receiving a packet transmitted by the transmitting apparatus, generating an ack packet for the transmitting apparatus, and transmitting the generated ack packet to the transmitting apparatus, requesting the transmitting apparatus to delay a preamble transmission time for a predetermined time; And a group scheduler that calculates a data transmission time point of each transmitting device and calculates a delay time for the data transmission time point of each transmitting device to provide a packet handler so that the data transmission time of each transmitting device is achieved within a predetermined time period. It is characterized by.

이상에서 설명한 바와 같이 본 발명은 송신노드와 수신노드의 에너지 소모량을 균형있게 조절할 수 있어 링크의 수명을 최대화할 수 있고, 이로 인해 센서 네트워크 수명을 최대화할 수 있는 이점이 있다.As described above, the present invention can balance energy consumption of a transmitting node and a receiving node to maximize the life of the link, thereby maximizing the life of the sensor network.

또한, 기존의 송신노드는 웨이크업 기간(wakeup period)에 비례하여 에너지를 소모하게 되지만, 본 발명에서의 송신노드는

Figure 112008024509147-PAT00006
의 값에 비례하여 에너지를 소모하기 때문에 에너지 소모를 최소화할 수 있고, 이 때문에 프리앰블 충돌 확률을 낮추어 네트워크의 수명을 최대화할 수 있음과 아울러 신뢰성있는 데이터 전송이 가능한 이점이 있다.In addition, although the existing transmission node consumes energy in proportion to the wakeup period, the transmission node in the present invention
Figure 112008024509147-PAT00006
Since energy is consumed in proportion to the value of, energy consumption can be minimized. Thus, it is possible to maximize the life of the network by lowering the preamble collision probability and to provide reliable data transmission.

이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대하여 보다 상세하게 설명하고자 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 4는 본 발명에 의한 송신노드와 수신노드의 MAC(Media Access Control) 프로토콜 구성을 나타낸 도면으로서, 센서노드들 중 데이터를 송신하는 노드를 송신노드(100)라고 하며, 상기 송신노드(100)로부터 데이터를 수신하는 노드를 수신노드(200)라고 한다.FIG. 4 is a diagram illustrating a configuration of a MAC and MAP protocol of a transmitting node and a receiving node according to the present invention. A node transmitting data among sensor nodes is called a transmitting node 100. The transmitting node 100 A node that receives data from the node is called a receiving node 200.

센서노드의 MAC 프로토콜은 송신모듈과 수신모듈로 구성되는 데, 센서노드 중 센서를 구비한 소스노드의 경우에는 수신모듈이 불필요하여 송신모듈로만 구성되나, 그 외의 센서노드들(센서노드와 싱크노드 사이에 위치한 중계노드들)은 수신모듈과 송신모듈을 포함하여 이루어져 있다. The MAC protocol of the sensor node is composed of a transmitting module and a receiving module. In the case of a source node having a sensor among the sensor nodes, the receiving module is not necessary and is composed of only the transmitting module, but other sensor nodes (sensor node and sink node). Relay nodes located in between each other includes a receiving module and a transmitting module.

상기 수신노드의 경우 복수의 송신노드가 데이터 전송 경로로 연결될 수 있다.In the case of the receiving node, a plurality of transmitting nodes may be connected to a data transmission path.

도 4에서 송신노드(100)와 수신노드(200)는 송신모듈(110)과 수신모듈(210)에 의해서 매체접근제어가 상호 이루어지므로, 송신노드(100)의 송신모듈(110)과 수신노드(200)의 수신모듈(210)을 중심으로 설명한다.In FIG. 4, since the medium access control is performed by the transmitting module 110 and the receiving node 200 by the transmitting module 110 and the receiving module 210, the transmitting module 110 and the receiving node of the transmitting node 100 are illustrated. It will be described with reference to the receiving module 210 of the (200).

상기 송신노드(100)의 송신모듈(110)은 프리앰블 생성기(111)와, 프리앰블 ack 핸들러(113), 및 패킷 ack 핸들러(115)로 구성되고, 수신노드(200)의 수신모듈(210)은 패킷 핸들러(213)와, 프리앰블 핸들러(211), 및 그룹 스케줄러(215)로 구성된다. The transmitting module 110 of the transmitting node 100 is composed of a preamble generator 111, a preamble ack handler 113, and a packet ack handler 115, the receiving module 210 of the receiving node 200 It consists of a packet handler 213, a preamble handler 211, and a group scheduler 215.

상기 송신노드(100)에서 전송할 데이터가 생성되면, 송신모듈(110)의 프리앰블 생성기(111)는 수신노드(200)가 웨이크업(wakeup) 시점을 알기 위해서 프리앰블을 생성하여 전송한다. 아울러, 본 발명에 의한 프리앰블 생성기(111)는 프리앰블을 생성하여 전송하는 시점과, 상기 프리앰블을 얼마만큼 반복할 것인가를 나타내는 프리앰블 구간 등을 이전의 패킷 전송을 한 경우에 저장된 예측오차정보를 이용하여 결정한다.When data to be transmitted in the transmitting node 100 is generated, the preamble generator 111 of the transmitting module 110 generates and transmits a preamble in order to determine when the receiving node 200 wakes up. In addition, the preamble generator 111 according to the present invention uses the prediction error information stored when the previous packet transmission is performed at the time of generating and transmitting the preamble and the preamble section indicating how much the preamble is to be repeated. Decide

프리앰블 ack 핸들러(113)는 프리앰블 생성기(111)가 프리앰블을 생성, 전송한 후 그에 대한 ack가 있는지를 검사하고, 수신노드(200)로부터 ack(acknowledge)가 지정된 시간 안에 수신되면 데이터 패킷을 생성하여 전송한다. 여기에서 프리앰블 ack 핸들러(113)는 필요한 경우 송신노드(100)의 에너지 소모량을 줄일 수 있도록 패킷을 전송할 일정 영역에 대해서 듀티 사이클(Duty Cycle)을 순간적으로 높이도록 수신노드(200)에게 요청할 수 있다.The preamble ack handler 113 checks whether there is an ack for the preamble generator 111 after generating and transmitting the preamble, and generates a data packet when an ack (acknowledge) is received from the receiving node 200 within a specified time. send. Here, the preamble ack handler 113 may request the receiving node 200 to temporarily increase the duty cycle for a certain area to transmit a packet so as to reduce energy consumption of the transmitting node 100 if necessary. .

패킷 ack 핸들러(115)는 프리앰블 ack 핸들러(113)가 패킷을 전송한 후 일정 시간동안 데이터 패킷 ack가 도착하는지를 검사하고, 수신노드(200)로부터 ack가 도착하면 버퍼에서 패킷을 제거하고 전송 작업은 종료된다.The packet ack handler 115 checks whether the data packet ack arrives for a predetermined time after the preamble ack handler 113 transmits the packet. When the ack arrives from the receiving node 200, the packet ack handler 115 removes the packet from the buffer. It ends.

수신노드(200)의 프리앰블 핸들러(211)는 웨이크업된 상태(wakeup)에서 항상 자신을 목적노드로 하는 프리앰블이 존재하는지를 검사하고, 프리앰블이 존재하면 프리앰블 ack를 생성하여 해당 송신노드(100)로 전송하는 역할을 한다. The preamble handler 211 of the receiving node 200 always checks whether a preamble having its own destination node exists in the wakeup state, and generates a preamble ack to the corresponding transmitting node 100 when the preamble exists. It serves to transmit.

패킷 핸들러(213)는 송신노드(100)가 전송한 패킷을 받고 그에 대한 ack 패킷을 생성하여 해당 송신노드(100)로 전송하는 역할을 한다. 여기에서 패킷 핸들러(213)는 송신노드(100)에게 프리앰블 전송 시점을 일정시간 늦추도록 요청할 수 있으며, 상기 정확한 지연 시간은 그룹 스케줄러(215)의 계산에 따라 결정된다. The packet handler 213 receives the packet transmitted by the transmitting node 100 and generates an ack packet for the transmitting node 100 to transmit the packet to the corresponding transmitting node 100. Here, the packet handler 213 may request the transmitting node 100 to delay the preamble transmission time for a predetermined time, and the exact delay time is determined according to the calculation of the group scheduler 215.

그룹 스케줄러(215)는 수신노드(200)와 연결된 각 송신노드(100)의 데이터 전송 시점을 계산하고 각 송신노드(100)의 데이터 전송 시점이 일정시간 내에서 이루어지도록 각 송신노드(100)의 데이터 전송에 대한 지연 시간을 계산하여 패킷 핸들러(213)로 제공하게 된다. The group scheduler 215 calculates the data transmission time of each transmission node 100 connected to the reception node 200 and the data transmission time of each transmission node 100 is achieved within a predetermined time. The delay time for data transmission is calculated and provided to the packet handler 213.

수신노드(200)의 송신모듈의 경우 다른 센서노드 또는 싱크노드로 데이터를 송신하는 역할을 한다. The transmitting module of the receiving node 200 serves to transmit data to other sensor nodes or sink nodes.

도 5a 내지 도 5c는 본 발명의 각 실시예에 의한 매체접근제어 방법을 설명하기 위해 나타낸 도면이다. 5A to 5C are diagrams for explaining a media access control method according to each embodiment of the present invention.

도 5a는 고정 듀티 사이클로 동작하는 경우 프리앰블 구간의 크기를 결정하여 최소의 프리앰블 구간을 선택하여 제어하는 경우이다.FIG. 5A illustrates a case in which the size of the preamble section is selected to control the minimum preamble section when operating with a fixed duty cycle.

송신노드(100) 및 수신노드(200)를 포함하는 모든 센서노드들은 공통된 웨이 크업 기간(wakeup period)을 갖고 주기적으로 슬립(sleep)과 웨이크업(wakeup)을 반복한다. 수신노드(200)가 웨이크업되면, 수신노드(200)의 프리앰블 핸들러(211)는 일정 청취기간(listen period) 동안 자신을 목적지로 하는 프리앰블이 있는지를 체크한다. 만일 존재하지 않는다면 다시 슬립(sleep) 상태로 전환된다. All sensor nodes, including the transmitting node 100 and the receiving node 200, have a common wakeup period and periodically sleep and wakeup. When the receiving node 200 wakes up, the preamble handler 211 of the receiving node 200 checks whether there is a preamble destined for itself for a predetermined listening period. If it does not exist, it goes back to sleep.

송신노드(100)는 수신노드(200)로 전송할 데이터가 있을 때, 수신노드(200)가 웨이크업 상태가 되는 시점을 정확히 알 수 없기 때문에 이를 탐색하기 위해서 프리앰블 생성기(111)에서 해당 수신노드(200)에 대한 주소가 포함되어 있는 프리앰블을 보낸다. 이때, 프리앰블 생성기(111)는 프리앰블을 전송하는 시점과, 수신노드(200)로부터 프리앰블 ack가 도착하지 않는 경우 얼마만큼 오랜 시간동안 반복할지 즉, 프리앰블 구간의 크기를 결정하여야 한다.When there is data to be transmitted to the receiving node 200, the transmitting node 100 does not know exactly when the receiving node 200 is in a wake-up state, so in order to search for the receiving node 200, the corresponding receiving node (111) Send a preamble containing the address for In this case, the preamble generator 111 should determine the time point at which the preamble is transmitted and how long the preamble period is to be repeated if the preamble ack does not arrive from the receiving node 200, that is, the size of the preamble section.

일반적으로, 프리앰블 구간의 크기는 웨이크업 기간(wakeup period)과 동일하다. 하지만, 본 발명에서는 프리앰블 구간의 크기를 아래 수학식 1에 의해 획득하고, 획득된 프리앰블 구간 동안만 프리앰블을 전송함에 따라 송신노드(100)의 전력 소모를 줄일 수 있다. 수학식 1의 L, d, P에 대한 물리적 의미는 도 6과 같다.In general, the size of the preamble period is the same as the wakeup period. However, in the present invention, the size of the preamble section is obtained by Equation 1 below, and the power consumption of the transmitting node 100 can be reduced by transmitting the preamble only during the obtained preamble section. Physical meanings of L, d, and P in Equation 1 are shown in FIG. 6.

Figure 112008024509147-PAT00007
Figure 112008024509147-PAT00007

즉, 도 6은 송신노드(100)가 수신노드(200)의 웨이크업 시점을 P(예측한 웨이크업 시점)로 예측하고 실제 수신노드(200)는 d(예측 오차값) 이후에 웨이크업된 경우를 나타낸 것이다. L은 프리앰블을 얼마만큼 최대한 반복적으로 전송하는가를 결정하는 값으로 프리앰블을 전송할 수 있는 구간의 크기를 나타내며, 프리앰블 구간이라고 칭한다.That is, FIG. 6 illustrates that the transmitting node 100 predicts a wakeup time of the receiving node 200 as P (predicted wakeup time), and the actual receiving node 200 wakes up after d (prediction error value). The case is shown. L is a value that determines how many times the preamble is repeatedly transmitted, and indicates the size of a section in which the preamble can be transmitted and is called a preamble section.

상기 수학식 1에서 n번째 프리앰블 구간

Figure 112008024509147-PAT00008
은 수학식
Figure 112008024509147-PAT00009
또는
Figure 112008024509147-PAT00010
에 의해서 구해지며, 두 식에 의해 구해진 값 중 더 작은 값을 프리앰블 구간으로 결정하게 된다. Nth preamble section in Equation 1
Figure 112008024509147-PAT00008
Is the equation
Figure 112008024509147-PAT00009
or
Figure 112008024509147-PAT00010
The smaller of the values obtained by the two equations is determined as the preamble interval.

상기 수학식

Figure 112008024509147-PAT00011
에서, θ는 1초당 발생하는 송신노드(100)와 수신노드(200)의 오차시간으로, 만일 θ가 30㎲이면 송신노드(100)와 수신노드(200)의 최대 오차시간은 4θ가 된다. 이는 각 노드는 기준점을 전후로 2θ의 시간오차가 발생할 수 있기 때문이며, 송신노드(100) 및 수신노드(200) 상호 간에는 최대 120㎲(4θ)의 시간 오차가 발생될 수 있음을 의미한다.Equation
Figure 112008024509147-PAT00011
Θ is an error time between the transmitting node 100 and the receiving node 200 that occurs per second. If θ is 30 ms, the maximum error time between the transmitting node 100 and the receiving node 200 becomes 4θ. This is because each node may have a time error of 2θ before and after the reference point, and a time error of up to 120㎲ (4θ) may occur between the transmitting node 100 and the receiving node 200.

상기 수학식

Figure 112008024509147-PAT00012
에서 웨이크업 예측 오차값인 d는 마이너스 값(웨이크업 예측시간이 실제 웨이크업보다 늦은 경우)이 나올 수 있으므로 절대값을 이용하는 것이 바람직하며, 여기에서 예측 오차값(d)은 실제 웨이크업 시점의 전후에 나타날 수 있으므로 2α를 승산하게 된다. 따라서, 이전의 웨이크업 예측 오차정보를 이용하여 프리앰블 구간을 새로 계산하여 결정하게 된다.Equation
Figure 112008024509147-PAT00012
In d, the wakeup prediction error value may have a negative value (when the wakeup prediction time is later than the actual wakeup time). Therefore, it is preferable to use an absolute value, where the prediction error value d is the actual wakeup time. Since it can appear before and after, it multiplies 2α. Therefore, the preamble section is newly calculated and determined using the previous wakeup prediction error information.

송신노드(100)의 프리앰블 생성기(111)는 이와 같은 방식을 통해 프리앰블을 전송하는 시점과, 프리앰블 구간을 결정하여 프리앰블 전송을 제어하게 된다. The preamble generator 111 of the transmitting node 100 controls the preamble transmission by determining a time point and a preamble section in which the preamble is transmitted.

한편, 수신노드(200)의 프리앰블 핸들러(211)가 자신을 목적노드로 하는 프리앰블을 성공적으로 수신하게 되면, 프리앰블 핸들러(211)는 프리앰블에 대한 ack를 생성하여 해당 송신노드(100)로 전송한다. On the other hand, when the preamble handler 211 of the receiving node 200 successfully receives a preamble whose destination node is the preamble handler, the preamble handler 211 generates an ack for the preamble and transmits the ack to the corresponding transmitting node 100. .

하지만, 프리앰블을 전송한 송신노드(100)는 일정 시간동안 프리앰블 ack를 기다리고, 만일 프리앰블 ack가 도착하지 않으면 다시 프리앰블을 재전송한다. 이는 웨이크업 기간이 아닌 상기 수학식 1에서 구해진 프리앰블 구간

Figure 112008024509147-PAT00013
동안 반복된다.However, the transmitting node 100 having transmitted the preamble waits for the preamble ack for a predetermined time, and if the preamble ack does not arrive, retransmits the preamble again. This is not a wake-up period, but the preamble section obtained in Equation 1 above.
Figure 112008024509147-PAT00013
Is repeated.

송신노드(100)의 프리앰블 ack 핸들러(113)가 수신노드(200)로부터 프리앰블 ack를 받게 되면 송신노드(100)는 현재 수신노드(200)가 웨이크업 상태임을 알게 된 것이므로, 프리앰블 ack 핸들러(113)는 실제 데이터 패킷을 전송하게 된다. 수신노드(200)는 프리앰블 ack를 전송한 후 일정 시간동안 데이터 패킷을 기다린다. 만일 수신되지 않으면 수신을 포기하고 다시 슬립 상태로 전환되고, 만일 프리앰블을 받게 되면 다시 프리앰블 ack를 재전송한다. When the preamble ack handler 113 of the transmitting node 100 receives the preamble ack from the receiving node 200, the transmitting node 100 knows that the receiving node 200 is currently in the wakeup state, and thus, the preamble ack handler 113 ) Will send the actual data packet. The receiving node 200 waits for a data packet for a predetermined time after transmitting the preamble ack. If it is not received, it abandons the reception and goes back to sleep. If a preamble is received, it retransmits the preamble ack again.

수신노드(200)는 송신노드(100)로부터 데이터 패킷이 성공적으로 수신되면 패킷 핸들러(213)는 패킷 ack를 생성하여 전송한다.When the receiving node 200 successfully receives the data packet from the transmitting node 100, the packet handler 213 generates and transmits a packet ack.

송신노드(100)는 데이터 패킷을 전송한 후 일정 시간동안 데이터 패킷 ack를 기다리고, 패킷 ack 핸들러(115)를 통해 데이터 패킷 ack가 성공적으로 수신되면 패킷 전송 프로세스가 완료된다. 만일 실패하면 다시 데이터 패킷을 재전송하게 된 다.The transmitting node 100 waits for the data packet ack for a predetermined time after transmitting the data packet, and when the data packet ack is successfully received through the packet ack handler 115, the packet transmission process is completed. If it fails, it retransmits the data packet.

도 5b는 송신노드의 에너지 소모량을 최소화하기 위해서 송신노드가 패킷을 전송할 일정 영역에 대해서 수신노드가 듀티 사이클(duty cycle)을 순간적으로 높이는 경우이다.FIG. 5B illustrates a case in which a receiving node temporarily increases a duty cycle for a certain area in which a transmitting node transmits a packet in order to minimize energy consumption of the transmitting node.

만일, 송신노드(100)는 자신의 배터리에 남아 있는 에너지가 기준값 이하가 된 경우에는 송신노드(100)의 에너지 소모량을 줄이기 위해서 수신노드(200)에게 다음 패킷 전송 시간을 알려주고 그 시간을 포함한 일정 영역 동안에는 듀티 사이클을 순간적으로 높게 해달라고 요청할 수 있다. If the energy remaining in the battery becomes less than the reference value, the transmitting node 100 notifies the receiving node 200 of the next packet transmission time to reduce the energy consumption of the transmitting node 100 and includes a schedule including the time. During the region, you can ask to increase the duty cycle momentarily.

즉, 송신노드(100)의 프리앰블 ack 핸들러(113)는 데이터 패킷을 생성할 때 다음 패킷 전송 시간값과 그 영역의 크기를 추가하여 데이터 패킷을 생성할 수 있으며, 상기 다음 패킷 전송 시간값이 포함된 데이터 패킷을 수신노드(200)의 패킷 핸들러(213)로 전송한다. That is, the preamble ack handler 113 of the transmitting node 100 may generate the data packet by adding the next packet transmission time value and the size of the region when generating the data packet, and includes the next packet transmission time value. The data packet is transmitted to the packet handler 213 of the receiving node 200.

이 패킷을 받은 수신노드(200)의 패킷 핸들러(213)는 자신의 배터리와 메모리를 체크하여 이 요청을 받아들일 수 있는 경우에는 이 값을 기억한 후 그 시점에서 듀티 사이클을 도 5b와 같이 5배 정도로 올려 준다. 만일 요청을 받아들일 수 없는 경우에는 무시한다. 이와 같이 수신노드(200)가 웨이크업 듀티 사이클을 일정 시점에서 순간적으로 높임에 따라 송신노드(100)는 프리앰블 전송 횟수를 줄일 수 있어 에너지 소모량을 최소화할 수 있다.The packet handler 213 of the receiving node 200 receiving the packet checks its battery and memory, and if it can accept this request, it remembers this value and then executes the duty cycle as shown in FIG. Raise it about twice as much. If the request is unacceptable, it is ignored. As such, as the receiving node 200 increases the wake-up duty cycle at a certain instant, the transmitting node 100 may reduce the number of preamble transmissions, thereby minimizing energy consumption.

도 5c는 수신노드의 자원(메모리 또는/및 에너지)을 절약하기 위해서 패킷 전송 시점들을 일정 시간만큼 늦추도록 한 경우를 나타낸 것이다. FIG. 5C illustrates a case in which packet transmission points are delayed by a predetermined time in order to save resources (memory or / and energy) of a receiving node.

수신노드(200)의 패킷 핸들러(213)는 자신의 배터리와 메모리의 여유 정도에 따라 송신노드(100)들에게 패킷 전송을 일정 시간만큼 지연할 수 있는지를 체크한다. The packet handler 213 of the receiving node 200 checks whether the packet transmission can be delayed to the transmitting nodes 100 by a predetermined time according to the margin of the battery and the memory of the receiving node 200.

이때, 각 송신노드(100)의 지연시간에 대한 정보는 수신노드(200)의 그룹 스케줄러(215)에 의해 결정이 된다. 이 지연시간 정보는 패킷 ack에 포함되어 해당 송신노드(100)로 전송이 되며, 송신노드(100)는 지연시간 조건에 따라 요청을 받을 수 있는 경우에는 그 만큼의 시간을 지연하여 프리앰블을 전송하게 된다. At this time, the information on the delay time of each transmitting node 100 is determined by the group scheduler 215 of the receiving node 200. The delay time information is included in the packet ack and transmitted to the corresponding transmission node 100. When the transmission node 100 can receive the request according to the delay time condition, the delay time is delayed by that much time to transmit the preamble. do.

예컨대, 수신노드(200)가 단일 또는 복수의 송신노드(100)로부터 3개의 데이터 패킷을 각각 수신받기 위해서는, 도 5b의 경우 15번의 웨이크업(Wakeup Period)이 필요하다. 하지만, 도 5c와 같이 데이터 패킷 전송시점을 특정 패킷 전송시점으로 지연시킴에 따라 수신노드(200)는 3개의 데이터 패킷을 전송받기 위해 9번의 웨이크업(Wakeup Period)만 있으면 된다.For example, in order for the receiving node 200 to receive three data packets from each of the single or plurality of transmitting nodes 100, 15 wakeup periods are required in the case of FIG. 5B. However, as shown in FIG. 5C, as the data packet transmission time is delayed to a specific packet transmission time, the receiving node 200 needs only nine wake-up periods to receive three data packets.

이는 일정 구간에 많은 패킷 전송이 존재하게 하고, 수신노드(200)는 그 구간에 대해 듀티 사이클을 높임으로써 낮은 데이터 충돌 확률, 빠른 재전송, 스케줄 정보의 사이즈 축소 등의 이점을 얻게 된다. This causes a large number of packet transmissions in a certain section, and the receiving node 200 has advantages such as low data collision probability, fast retransmission, and size reduction of schedule information by increasing the duty cycle for the section.

송신노드(100)가 지연시간 조건 때문에 요청을 받을 수 없는 경우에는 단순히 무시하면 된다. 수신노드(200)가 지연 전송을 요청하는 조건은 다양한 알고리즘으로 구현 가능하다. If the transmitting node 100 cannot receive the request because of the delay time condition, it can simply ignore it. The condition that the receiving node 200 requests the delay transmission may be implemented by various algorithms.

여기서는 가장 단순한 알고리즘으로 설명하기로 한다. 이는 설명을 위한 것이며, 지연시간의 조건 등에 따라 다양한 알고리즘들이 가능하다. This section describes the simplest algorithm. This is for explanation, and various algorithms are possible depending on the conditions of the delay time.

즉, 수신노드(200)에 복수의 송신노드(100)가 접속되어 있을 경우, 수신노드(200)의 그룹 스케줄러(215)는 길이가 H(지연시간 조건 D에 의해 결정됨)인 슬라이딩 윈도우(Sliding Window)를 사용하여 그동안 수신된 패킷들의 수와 송신노드(100)들을 저장한다. 만일 패킷 수가 미리 설정된 G개 이상이 되면 현재 슬라이딩 윈도우에서 마지막으로 수신된 패킷시간(T)을 체크하고, 마지막으로 수신된 패킷시간(T)을 기준으로 송신노드(100)들에게 지연 요청을 전송한다. That is, when a plurality of transmitting nodes 100 are connected to the receiving node 200, the group scheduler 215 of the receiving node 200 has a sliding window whose length is H (determined by the delay time condition D). Window) to store the number of received packets and the transmitting nodes 100. If the number of packets is more than the preset G number, the packet time T last received in the current sliding window is checked, and a delay request is transmitted to the transmitting nodes 100 based on the packet time T last received. do.

송신노드(100)들은 각 패킷이 현재까지 겪은 지연시간 정보와 송신노드(100)와 싱크노드와의 홉 수(송신노드와 싱크노드 사이의 센서노드의 수)를 이용하여 지연시간 조건(D)과 비교하여 조건을 만족할 수 있다면 요청을 받아들여 데이터 패킷을 지연 전송을 하게 된다. The transmitting node 100 uses the delay information that each packet has experienced so far and the number of hops between the transmitting node 100 and the sink node (the number of sensor nodes between the transmitting node and the sink node) and the delay time condition (D). If the condition is satisfied, the request is accepted and the data packet is delayed.

수신노드(200)는 송신노드(100)로 전송 지연을 요청한 후 패킷시간(T)의 이후 매주기마다 듀티 사이클을 일정시간동안 높이게 된다. 상기 일정시간 내에 수신된 패킷이 설정된 G개 보다 작으면 듀티 사이클을 다시 원상태로 복귀한다. The receiving node 200 increases the duty cycle for a predetermined time after every request of the packet time T after requesting a transmission delay to the transmitting node 100. If the received packet is less than the set G within the predetermined time, the duty cycle is returned to its original state.

이와 같이 본 발명에서는 송신노드(100)와 수신노드(200)의 데이터 전송시에 도 5a, 도 5b 및 도 5c와 같은 MAC 방식을 선택적으로 또는 모두 혼용하여 적용함으로써, 송신노드(100)와 수신노드(200)의 에너지 소모량을 균형있게 조절할 수 있어 링크의 수명을 최대화할 수 있고, 이로 인해 센서 네트워크 수명을 최대화할 수 있게 된다.As described above, in the present invention, when the transmitting node 100 and the receiving node 200 transmit data, the MAC method as shown in FIGS. 5A, 5B, and 5C is selectively applied or mixed with each other, thereby receiving the transmitting node 100 and the receiving node. The energy consumption of the node 200 can be balanced to maximize the life of the link, thereby maximizing the sensor network life.

기존의 송신노드(100)는 웨이크업 기간(wakeup period)에 비례하여 에너지를 소모하게 되지만, 본 발명에서의 송신노드는

Figure 112008024509147-PAT00014
의 값에 비례하여 에너지를 소모하기 때문에 에너지 소모를 최소화할 수 있고, 이로 인해 프리앰블 충돌 확률을 낮추어 네트워크의 수명을 최대화할 수 있음과 아울러 신뢰성이 있는 데이터 전송이 가능하게 된다.The existing transmission node 100 consumes energy in proportion to the wakeup period, but the transmission node in the present invention
Figure 112008024509147-PAT00014
Since energy is consumed in proportion to the value of, the energy consumption can be minimized. This can reduce the preamble collision probability, thereby maximizing the life of the network and enabling reliable data transmission.

본 발명에서는 매체접근제어 프로토콜의 구현을 용이하게 하기 위해서 듀티 사이클이 높거나 inter packet time이 짧은 경우에는 지연 전송이나 동적 듀티 사이클의 제어를 수행하지 않을 수도 있다.In the present invention, in order to facilitate the implementation of the medium access control protocol, when the duty cycle is high or the inter packet time is short, delay transmission or dynamic duty cycle control may not be performed.

상기의 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가진 당업자라면 본 발명의 기술적 사상 내에서 다양한 수정, 변경 및 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.Preferred embodiments of the present invention are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes and additions within the spirit of the present invention. Additions should be considered to be within the scope of the following claims.

도 1은 일반적인 센서 네트워크 구성도이다.1 is a diagram illustrating a general sensor network configuration.

도 2는 종래의 센서노드 중 송신노드와 수신노드의 구성을 각각 나타낸 도면이다. 2 is a diagram showing the configuration of a transmitting node and a receiving node of the conventional sensor node, respectively.

도 3은 종래의 송신노드와 수신노드 사이의 데이터 전송 예를 나타낸 도면이다.3 is a diagram illustrating an example of data transmission between a conventional transmitting node and a receiving node.

도 4는 본 발명에 의한 송신노드와 수신노드의 MAC(Media Access Control) 프로토콜 구성을 나타낸 도면이다.4 is a diagram illustrating a configuration of a MAC (Media Access Control) protocol of a transmitting node and a receiving node according to the present invention.

도 5a 내지 도 5c는 본 발명의 각 실시예에 의한 매체접근제어 방법을 설명하기 위해 나타낸 도면이다. 5A to 5C are diagrams for explaining a media access control method according to each embodiment of the present invention.

도 6은 본 발명에서 프리앰블 구간의 계산을 위한 예측오차를 설명하기 위해 나타낸 도면이다.FIG. 6 is a diagram illustrating a prediction error for calculating a preamble interval in the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

100: 송신노드(송신장치) 110: 송신모듈100: transmission node (transmission device) 110: transmission module

111: 프리앰블 생성기 113: 프리앰블 ack 핸들러111: preamble generator 113: preamble ack handler

115: 패킷 ack 핸들러 200: 수신노드(수신장치)115: packet ack handler 200: receiving node (receiving device)

210: 수신모듈 211: 프리앰블 핸들러210: receiving module 211: preamble handler

213: 패킷 핸들러 215: 그룹 스케줄러 213: Packet handler 215: Group scheduler

Claims (8)

프리앰블을 생성하여 수신장치로 전송하는 시점과, 상기 프리앰블의 전송 반복 구간을 이전의 패킷 전송시에 저장된 예측오차정보를 이용하여 결정하는 프리앰블 생성기; 및A preamble generator for generating a preamble and transmitting the preamble to the receiving device and determining the transmission repetition interval of the preamble by using prediction error information stored in a previous packet transmission; And 상기 프리앰블 전송에 따라 해당 수신장치로부터 ack(acknowledge)가 있을 경우 데이터 패킷을 생성하여 전송하고, 필요한 경우 패킷을 전송할 일정 시점에 대해서 웨이크업 듀티 사이클을 순간적으로 높이도록 수신장치에게 요청하는 프리앰블 ack 핸들러;를 포함하는 센서 네트워크의 송신 장치.A preamble ack handler that generates and transmits a data packet when there is an ack (acknowledge) from the corresponding receiver according to the preamble transmission, and requests the receiver to temporarily increase a wake-up duty cycle for a certain time point to transmit the packet if necessary. Transmitter of the sensor network comprising a. 청구항 1에 있어서,The method according to claim 1, 상기 프리앰블 ack 핸들러는, 데이터 패킷을 생성할 때 다음 패킷의 전송 시간 정보를 추가하여 데이터 패킷을 생성하는 것을 특징으로 하는 센서 네트워크의 송신 장치.The preamble ack handler generates a data packet by adding transmission time information of a next packet when generating a data packet. 청구항 1 또는 청구항 2에 있어서,The method according to claim 1 or 2, 상기 프리앰블 생성기는 프리앰블 전송 반복 구간
Figure 112008024509147-PAT00015
을 아래 수학식에 의 해 획득하며, 상기 프리앰블 전송 반복 구간
Figure 112008024509147-PAT00016
을 수학식
Figure 112008024509147-PAT00017
또는
Figure 112008024509147-PAT00018
에 의해 구해진 값 중 더 작은 값으로 결정하는 것을 특징으로 하는 센서 네트워크의 송신 장치.
The preamble generator is a preamble transmission repetition interval
Figure 112008024509147-PAT00015
Is obtained by the following equation, and the preamble transmission repetition interval
Figure 112008024509147-PAT00016
To the equation
Figure 112008024509147-PAT00017
or
Figure 112008024509147-PAT00018
Transmitter of the sensor network, characterized in that determined by the smaller value of the value obtained by.
수학식Equation
Figure 112008024509147-PAT00019
Figure 112008024509147-PAT00019
청구항 1 또는 청구항 2에 있어서, The method according to claim 1 or 2, 상기 수신장치는 송신장치의 웨이크업 듀티 사이클을 높이라는 요청에 따라 자신의 배터리와 메모리를 체크하여 이 요청을 받아들일 수 있는 경우에는 이 값을 기억하고, 요청된 해당 시점에서 웨이크업 듀티 사이클을 높이는 것을 특징으로 하는 센서 네트워크의 송신 장치.The receiver checks its battery and memory in response to a request to increase the wake-up duty cycle of the transmitter and stores this value if it can accept the request. Transmitter of the sensor network, characterized in that the height. 웨이크업(wakeup)된 상태에서 항상 자신을 목적노드로 하는 프리앰블이 존재하는지를 검사하고, 프리앰블이 존재하면 프리앰블 ack를 생성하여 해당 송신장치로 전송하는 프리앰블 핸들러;A preamble handler which checks whether a preamble having its own destination node always exists in a wake-up state, and generates a preamble ack and transmits the preamble ack to the corresponding transmission apparatus if the preamble exists; 상기 송신장치가 전송한 패킷을 받고 그에 대한 ack 패킷을 생성하여 해당 송신장치로 전송하되, 해당 송신장치에게 프리앰블 전송 시점을 일정시간 지연하도록 요청하는 패킷 핸들러; 및 A packet handler for receiving a packet transmitted by the transmitting apparatus, generating an ack packet for the transmitting apparatus, and transmitting the generated ack packet to the transmitting apparatus, requesting the transmitting apparatus to delay a preamble transmission time for a predetermined time; And 각 송신장치의 데이터 전송 시점을 계산하되 각 송신장치의 데이터 전송 시점이 일정시간 내에서 이루어지도록 각 송신장치의 데이터 전송 시점에 대한 지연 시간을 계산하여 패킷 핸들러로 제공하는 그룹 스케줄러;를 포함하는 센서 네트워크의 수신 장치.A group scheduler that calculates a data transmission time of each transmitter but calculates a delay time for the data transmission time of each transmitter to provide a packet handler such that the data transmission time of each transmitter is within a predetermined time period; Receiving device on the network. 청구항 5에 있어서,The method according to claim 5, 상기 패킷 핸들러는 자신의 배터리와 메모리의 여유 정도에 따라 송신장치들에게 패킷 전송을 일정 시간만큼 지연할 수 있는지를 체크하고, 각 송신장치의 지연시간에 대한 정보는 그룹 스케줄러에 의해 결정되는 것을 특징으로 하는 센서 네트워크의 수신 장치.The packet handler checks whether the packet transmission can be delayed to the transmitting apparatuses by a predetermined time according to the amount of battery and memory available, and the information about the delay time of each transmitting apparatus is determined by the group scheduler. The receiving device of the sensor network. 청구항 5 또는 청구항 6에 있어서,The method according to claim 5 or 6, 상기 그룹 스케줄러는 각 송신장치로부터 마지막으로 수신된 패킷시간을 체크하고, 마지막으로 수신된 패킷시간을 기준으로 각 송신장치들의 지연 시간을 결정하는 것을 특징으로 하는 센서 네트워크의 수신 장치.The group scheduler checks the packet time last received from each transmitting device, and determines the delay time of each transmitting device based on the last received packet time. 송신장치와 수신장치를 포함하는 센서노드 및 싱크노드로 이루어진 센서 네트워크에 있어서, In the sensor network comprising a sensor node and a sink node including a transmitter and a receiver, 상기 송신장치는,The transmitting device, 프리앰블을 생성하여 수신장치로 전송하는 시점과, 상기 프리앰블의 전송 반복 구간을 이전의 패킷 전송시에 저장된 예측오차정보를 이용하여 결정하는 프리앰블 생성기; 및 상기 프리앰블 전송에 따라 해당 수신장치로부터 ack(acknowledge)가 있을 경우 데이터 패킷을 생성하여 전송하고, 필요한 경우 패킷을 전송할 일정 시점에 대해서 웨이크업 듀티 사이클을 순간적으로 높이도록 수신장치에게 요청하는 프리앰블 ack 핸들러;를 포함하고,A preamble generator for generating a preamble and transmitting the preamble to the receiving device and determining the transmission repetition interval of the preamble by using prediction error information stored in a previous packet transmission; And a preamble ack for generating a data packet when there is an acknowledgment from the corresponding receiver according to the preamble transmission, and if necessary, requesting the receiver to increase a wake-up duty cycle for a predetermined time point for transmitting the packet. A handler; 상기 수신장치는, The receiving device, 웨이크업(wakeup)된 상태에서 항상 자신을 목적노드로 하는 프리앰블이 존재하는지를 검사하고, 프리앰블이 존재하면 프리앰블 ack를 생성하여 해당 송신장치로 전송하는 프리앰블 핸들러; 상기 송신장치가 전송한 패킷을 받고 그에 대한 ack 패킷을 생성하여 해당 송신장치로 전송하되, 해당 송신장치에게 프리앰블 전송 시점을 일정시간 지연하도록 요청하는 패킷 핸들러; 및 각 송신장치의 데이터 전송 시점을 계산하되 각 송신장치의 데이터 전송 시점이 일정시간 내에서 이루어지도록 각 송신장치의 데이터 전송 시점에 대한 지연 시간을 계산하여 패킷 핸들러로 제공하는 그룹 스케줄러;를 포함하는 것을 특징으로 하는 센서 네트워크의 송수신 시스 템.A preamble handler which checks whether a preamble having its own destination node always exists in a wake-up state, and generates a preamble ack and transmits the preamble ack to the corresponding transmission apparatus if the preamble exists; A packet handler for receiving a packet transmitted by the transmitting apparatus, generating an ack packet for the transmitting apparatus, and transmitting the generated ack packet to the transmitting apparatus, requesting the transmitting apparatus to delay a preamble transmission time for a predetermined time; And a group scheduler that calculates a data transmission time point of each transmitting device and calculates a delay time for the data transmission time point of each transmitting device to provide a packet handler so that the data transmission time of each transmitting device is achieved within a predetermined time period. Transmitting and receiving system of the sensor network, characterized in that.
KR1020080031513A 2008-04-04 2008-04-04 Transmitter, Receiver and Transceiver System in Sensor Network KR100931781B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080031513A KR100931781B1 (en) 2008-04-04 2008-04-04 Transmitter, Receiver and Transceiver System in Sensor Network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080031513A KR100931781B1 (en) 2008-04-04 2008-04-04 Transmitter, Receiver and Transceiver System in Sensor Network

Publications (2)

Publication Number Publication Date
KR20090106033A true KR20090106033A (en) 2009-10-08
KR100931781B1 KR100931781B1 (en) 2009-12-14

Family

ID=41535691

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080031513A KR100931781B1 (en) 2008-04-04 2008-04-04 Transmitter, Receiver and Transceiver System in Sensor Network

Country Status (1)

Country Link
KR (1) KR100931781B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200081178A (en) * 2018-12-27 2020-07-07 경북대학교 산학협력단 LoRa Communication System and Method thereof for enabling reception of a message requesting an update of information

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101295871B1 (en) 2009-11-27 2013-08-12 한국전자통신연구원 Data transmission method in sensor network

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7460624B2 (en) * 2004-03-18 2008-12-02 Motorola, Inc. Method and system of reducing collisions in an asynchronous communication system
KR100587010B1 (en) * 2004-10-08 2006-06-08 삼성전기주식회사 Wakeup method of Zigbee transmission apparatus
US9124357B2 (en) 2006-04-20 2015-09-01 Qualcomm Incorporated Media access control for ultra-wide band communication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200081178A (en) * 2018-12-27 2020-07-07 경북대학교 산학협력단 LoRa Communication System and Method thereof for enabling reception of a message requesting an update of information

Also Published As

Publication number Publication date
KR100931781B1 (en) 2009-12-14

Similar Documents

Publication Publication Date Title
KR102351845B1 (en) A multi-hop networking protocol for wide-area energy harvesting sensor network deployments
US20150036570A1 (en) Method and apparatus for transmission scheduling in wireless sensor network
US7133373B2 (en) Wireless network with improved sharing of high power consumption tasks
US20130329614A1 (en) System and method for intelligent power save notification
Hassan et al. MoT: A deterministic latency MAC protocol for mission-critical IoT applications
Papadopoulos et al. Wireless medium access control under mobility and bursty traffic assumptions in WSNs
Huamei et al. An energy‐efficient MAC protocol based on receiver initiation and multi‐priority backoff for wireless sensor networks
Papadopoulos et al. Enhancing ContikiMAC for bursty traffic in mobile sensor networks
KR100931781B1 (en) Transmitter, Receiver and Transceiver System in Sensor Network
Bhanipati et al. Minimization of collision through retransmission and optimal power allocation in wireless sensor networks (WSNs)
CN110049572B (en) Delay perception transmission scheduling method for underwater acoustic communication wireless self-organizing network
Khater et al. Buffering_Slotted_ALOHA protocol for underwater acoustic sensor networks based on the slot status
CN110944404A (en) Wireless ad hoc network and power two-dimensional random back-off method and system based on satellite communication
KR101557588B1 (en) Apparatus for packet retransmission in wireless sensor network
EP3311535B1 (en) Reducing latency in a mesh network
Cano et al. Taking advantage of overhearing in low power listening wsns: A performance analysis of the lwt-mac protocol
JP4563210B2 (en) Communication control method, communication node, and communication system
US10313991B2 (en) Implicit exchange of channel information for un-slotted channel hopping networks
Aísa et al. The wickpro protocol with the packet delivery ratio metric
JP4851511B2 (en) Routing method and transceiver base station and computer program for executing the method
Doudou et al. Duo-MAC: Energy and time constrained data delivery MAC protocol in wireless sensor networks
Do-Duy et al. Interference-aware relay assignment scheme for multi-hop wireless networks
CN114449457B (en) Data transmission method, node equipment and system based on chain network
Wang et al. Performance analysis of time-critical peer-to-peer communications in ieee 802.15. 4 networks
KR101294366B1 (en) Node apparatus in delay tolerant network and method for transferring message performing the node apparatus, and recording medium storing program for executing method of the same in computer

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120919

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20130916

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141202

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151202

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161205

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20171128

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20181126

Year of fee payment: 10