KR20140079524A - Method for time synchronization of sensor network - Google Patents

Method for time synchronization of sensor network Download PDF

Info

Publication number
KR20140079524A
KR20140079524A KR1020120146697A KR20120146697A KR20140079524A KR 20140079524 A KR20140079524 A KR 20140079524A KR 1020120146697 A KR1020120146697 A KR 1020120146697A KR 20120146697 A KR20120146697 A KR 20120146697A KR 20140079524 A KR20140079524 A KR 20140079524A
Authority
KR
South Korea
Prior art keywords
time
tcs
time synchronization
sensor node
timesync
Prior art date
Application number
KR1020120146697A
Other languages
Korean (ko)
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 KR1020120146697A priority Critical patent/KR20140079524A/en
Publication of KR20140079524A publication Critical patent/KR20140079524A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

Provided is a visual synchronization method of a sensor node repeating operation and a slip according to a fixed period to operate in a low power environment. The present invention provides stable visual information for the sensor node operated in an outer environment by revising a clock skew generated due to different oscillators of each sensor node.

Description

센서 네트워크의 시각 동기화 방법 {Method for time synchronization of sensor network}[0001] The present invention relates to a time synchronization method for a sensor network,

본 발명은 듀티 사이클(duty cycle) 기반의 저전력 기능을 사용하는 센서 네트워크에 포함된 센서 노드의 시각 동기화 방법에 관한 것이다.The present invention relates to a time synchronization method of a sensor node included in a sensor network using a duty cycle based low power function.

센서 네트워크의 각 센서 노드에서는 여러 이벤트에 정확하게 대응하기 위해 시각 동기화(time synchronization)를 수행한다. 즉, 각 센서 노드가 데이터를 센싱하고 유지 보수하기 위하여 시각 동기화가 필요하다. 동기화의 기준이 되는 디바이스(device), 각 디바이스 간 설정 시각의 차이(offset), 각 디바이스 간 통신에 따른 지연 시간(delay), 그리고 각 디바이스의 진동자 간 차이에 따른 시각 차이(clock crew)는 시각 동기화에서 사용되는 주요 파라미터이다.Each sensor node in the sensor network performs time synchronization to accurately respond to various events. In other words, each sensor node needs time synchronization to sense and maintain data. A clock, which is a reference for synchronization, is a set time difference between devices, a delay due to communication between devices, and a clock crew according to the difference between oscillators of each device. This is the main parameter used in synchronization.

각 디바이스 간 통신에 따른 지연시간의 경우, 각 센서 노드가 모두 동일한 하드웨어이면 상수값으로 결정될 수 있다. 하지만, 각 디바이스 간 설정 시각은 동기화된 이후라도 각 디바이스의 진동자와 각 디바이스의 설치 환경에 따른 차이 때문에 변동될 수 있다. 각 디바이스의 진동자 간 차이를 해결하기 위하여 진동자의 온도를 보정할 수 있는 온도 보상 수정 진동자(temperature compensated crystal oscillator, TCXO) 또는 오븐 컨트롤 수정 진동자(oven controlled crystal oscillator, OCXO)와 같은 진동자를 사용할 수 있지만, 센서 노드에서 사용하기에는 고가이고 전력소모도 크다. 즉, 센서 노드에서 주로 사용되는 수정 진동자는 저가이고 전력 소모도 적기 때문에 별도의 온도 보정 기능을 갖추기 어렵다. 따라서, 센서 노드가 온도 변화가 큰 실외 환경에 설치될 때는 수정 진동자에서 발생하는 클럭 안정성이 보장될 수 없다.In the case of delay time due to communication between devices, a constant value can be determined if each sensor node has the same hardware. However, the setting time between the devices may be changed due to the difference between the vibrator of each device and the installation environment of each device even after synchronization. In order to solve the difference between the oscillators of each device, it is possible to use a vibrator such as a temperature compensated crystal oscillator (TCXO) or an oven controlled crystal oscillator (OCXO) which can correct the temperature of the oscillator , It is expensive to use in the sensor node and consumes a large amount of power. In other words, the quartz oscillator, which is mainly used in the sensor node, is inexpensive and consumes less power, so it is difficult to provide a separate temperature compensation function. Therefore, when the sensor node is installed in an outdoor environment with a large temperature change, the clock stability generated in the quartz crystal can not be guaranteed.

종래, 분산 센서 네트워크 시스템에서는 위와 같은 문제점을 해결하기 위하여 다양한 네트워크 시간 프로토콜(networkd time protocol, NTP)을 이용하여 시각 동기화를 수행했다. NTP에는 참조 브로드캐스트 동기화(reference broadcast synchronization, RBS), 타이밍 동기 프로토콜(timing-sync protocol for sensor network, TPSN), 그리고 플러딩 타임 동기화 프로토콜(flooding time synchronization protocol, FTSP) 등이 사용될 수 있다.Conventionally, in a distributed sensor network system, time synchronization has been performed using various network time protocol (NTP) to solve the above problems. The NTP may include reference broadcast synchronization (RBS), timing-sync protocol for sensor network (TPSN), and flooding time synchronization protocol (FTSP).

RBS 방법(DJ. Elson, L. Girod, D. Estrin, “Fine-grained network time synchronization using reference broadcasts” ACM Operating Systems Review, 36(SI):147-163, 2002.)은 송신 시각과 액세스 시각에 의한 오차를 줄이기 위하여, 각 센서 노드가 네트워크로 패킷을 전송할 때 타임 스탬프(time stamp)를 이용하는 방법으로 수신자 간 시각 동기를 수행한다. RBS 방법에서는, 참조 전송자(송신기)에서 전송한 참조 패킷을 수신한 주변의 노드(수신기)는 수신 시각을 서로 교환하여 비교하고 편차율을 계산함으로써 시각을 동기화 할 수 있다. 이 방법은 노드의 개수가 증가하면 브로드캐스트 메시지가 빈번하게 교환되어 각 노드에서는 많은 전력을 소비할 수 밖에 없고, 각 센서 노드는 모든 이웃 센서 노드의 정보를 가지고 있어야 하므로 별도의 저장 공간이 요구되는 문제점이 있다.The RBS method (DJ. Elson, L. Girod, and D. Estrin, "Fine-grained network time synchronization using reference broadcasts" ACM Operating Systems Review, 36 (SI): 147-163, In order to reduce the error caused by each sensor node, time synchronization between receivers is performed by using a time stamp when each sensor node transmits a packet to the network. In the RBS method, neighboring nodes (receivers) receiving the reference packet transmitted from the reference sender (transmitter) can synchronize the time by exchanging the reception times with each other and calculating the deviation rate. In this method, when the number of nodes increases, broadcast messages are exchanged frequently and each node consumes a lot of power. Since each sensor node has information of all neighboring sensor nodes, a separate storage space is required There is a problem.

TPSN 방법(S. Ganeriwal, R. Kumar, M.B. Srivastava, "Timing-sync Protocol for Sensor Networks," Proceedings of the 1st International Conference on Embedded Networked Sensor Systems, pp. 138-149, 2003)은 센서 노드의 레벨을 결정하여 계층 구조를 생성하는 레벨 탐색 단계 및 단순 네트워크 시간 프로토콜(simple network time protocol, SNTP) 수행 단계를 포함한다. TPSN 방법에서는 센서 네트워크의 각 노드에 레벨을 부여하여 계층적인 토폴로지를 형성(레벨 0인 루트 노드를 중심으로 트리구조 형성)하고, 하위 레벨의 노드가 상위 레벨의 노드를 향해 시각 동기화를 수행한다. TPSN 방법은 RBS 방법에 비해서 동기화 속도가 2배 빠른지만, 노드의 추가 등으로 토폴로지가 변한 경우에는 처리 능력이 떨어진다는 문제점이 있다.The TPSN method (S. Ganeriwal, R. Kumar, MB Srivastava, "Timing-sync Protocol for Sensor Networks," Proceedings of the 1st International Conference on Embedded Networked Sensor Systems, pp. 138-149, And a step of performing a simple network time protocol (SNTP) step of generating a hierarchical structure. In the TPSN method, a level is assigned to each node of the sensor network to form a hierarchical topology (a tree structure is formed around a root node at level 0), and a lower level node performs time synchronization toward a higher level node. The TPSN method has a problem that the synchronization speed is twice as fast as that of the RBS method but the processing capability is degraded when the topology is changed due to addition of nodes.

FTSP 방법(M. Marooti, B. Kusy, B. Simon, AA. Leedeczi, "The Flooding time synchronization protocol" Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems, pp. 39-49, 2004)은 브로드캐스트된 전역 참조 시간을 수신한 각 센서 노드가 중복하여 브로드캐스트 메시지를 수신하고, 클럭 오차를 선형 연산을 통하여 감소시키는 방법으로 루트 노드와 시각 동기화 한다. FTSP 방법은 주기적으로 동기 메시지를 플러딩함으로써 노드의 결함 또는 통신 두절로 인해 토폴로지가 변하더라도 동적으로 대응할 수 있는 다이나믹 토폴로지(dynamic topology)를 지원할 수 있다. 그러나, FTSP 방법은 선형 연산으로 동기화를 수행하기 위해서는 각 노드는 일정 개수 이상의 참조 메시지를 수신하여야 비로소 동기화를 시작할 수 있다는 문제점이 있다.The FTSP method (M. Marooti, B. Kusy, B. Simon, AA Leedeczi, "The Flooding time synchronization protocol", Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems, pp. 39-49, Each sensor node receiving the global reference time receives the broadcast message in an overlapping manner and synchronizes the time with the root node by reducing the clock error through linear operation. The FTSP method can support a dynamic topology that can dynamically respond even if the topology changes due to node failure or communication disruption by periodically flooding the synchronization message. However, the FTSP method has a problem in that, in order to perform synchronization by linear operation, each node can start synchronization only after receiving a certain number of reference messages.

하지만, 센서 노드가 duty cycle에 따라서 동작과 슬립을 반복할 때는 위와 같은 시각 동기화 방법이 활용되기 어렵다.However, when the sensor node repeats operation and sleep according to the duty cycle, it is difficult to use the above-mentioned time synchronization method.

따라서, 본 발명의 실시 예에서는, 저전력 환경에서 동작하기 위해 일정한 주기에 따라 동작과 슬립을 반복하는 센서 노드의 시각 동기화 방법을 제공한다.Therefore, in the embodiment of the present invention, there is provided a time synchronization method of a sensor node that repeats operation and sleep in a predetermined period to operate in a low power environment.

본 발명의 실시예에 따르면, 미리 설정된 주기에 따라 동작(wake-up)과 슬립(sleep)을 반복하는 센서 노드의 시각 동기화 방법이 제공된다. 상기 센서 노드의 시각 동기화 방법은, 상기 동작 기간 동안 싱크 노드로부터 브로드캐스팅된 시각 동기화 브로드캐스트 패킷을 수신하는 단계, 그리고 상기 패킷에 포함된 시각 동기화 기관값(timesync org), 시각 동기화 레벨값(timesync level), 시각 동기화 현행 시퀀스(timesync current sequence, 앞으로 'TCS'라 함), 시각 동기화 종료 시퀀스(timesync end sequence, 앞으로 'TES'라 함), 그리고 시각 스탬프를 통하여 시각 동기화 하는 단계를 포함하며, 상기 시각 동기화 하는 단계는, 상기 TCS와 로컬 TCS가 다르고 상기 TCS와 상기 TES가 다를 경우, 시각 스탬프TCS _1을 시각 스탬프로 저장하고, 로컬 시각 스탬프 TCS _ 1를 자신의 시각 스탬프로 저장하는 단계를 포함한다.According to an embodiment of the present invention, there is provided a time synchronization method of a sensor node that repeats an operation (wake-up) and a sleep (sleep) according to a preset period. The time synchronization method of the sensor node comprises the steps of: receiving a time synchronization broadcast packet broadcasted from a sink node during the operation period; receiving a time synchronization agency value (timesync org) synchronizing the time synchronization through a time synchronization sequence, a time synchronization sequence, a time synchronization sequence (TCS), a timesync end sequence (TES), and a time stamp, synchronizing said time is different from the TCS and the local store the TCS when said TCS and the TES differ, the time stamp to the time stamp TCS _1, and the local time stamp Storing the TCS _ 1 as their time stamps.

이와 같이 본 발명의 한 실시 예에 따르면, 저전력 환경에서 동작하기 위해 일정한 주기에 따라 동작과 슬립을 반복하는 센서 노드를 시각 동기화 할 수 있다. 또한, 각 센서 노드의 진동자 간 차이로 발생되는 clock skew까지 보정할 수 있어서, 실외 환경에서 운용되는 센서 노드에게 안정적인 시각 정보를 제공할 수 있다.As described above, according to the embodiment of the present invention, it is possible to synchronize the sensor node repeating the operation and the sleep during a certain period in order to operate in a low power environment. Also, it is possible to compensate the clock skew caused by the difference between the vibrators of each sensor node, so that stable visual information can be provided to the sensor node operating in the outdoor environment.

도 1은 서로 다른 진동자를 이용하는 디바이스 간 시각 차이를 나타내는 도면이다.
도 2는 서로 다른 진동자를 이용하는 디바이스 간 offset 및 delay을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 멀티 홉 센서 네트워크를 나타낸 도면이다.
도 4는 본 발명의 실시예에 따른 멀티 홉 센서 네트워크의 센서 노드의 duty cycle을 나타낸 도면이다.
도 5는 본 발명의 실시예에 따른 복수의 센서 노드의 duty cycle을 나타낸 도면이다.
도 6은 본 발명의 실시예에 따른 시각 동기화 방법을 나타낸 도면이다.
도 7은 본 발명의 실시예에 따른 시각 동기화 브로드캐스트 패킷을 나타낸 도면이다.
도 8은 본 발명의 실시예에 따른 센서 노드 간 clock skew를 보정하기 위한 방법을 나타내는 흐름도이다.
도 9는 본 발명의 실시예에 따른 초기 시각 동기화 과정을 나타낸 흐름도이다.
도 10은 본 발명의 실시예에 따른 일반 시각 동기화 과정을 나타낸 흐름도이다.
도 11은 본 발명의 실시예에 따른 offset 및 delay 보상 과정을 나타낸 흐름도이다.
1 is a diagram showing a time difference between devices using different vibrators.
2 is a diagram showing offset and delay between devices using different oscillators.
3 illustrates a multi-hop sensor network according to an embodiment of the present invention.
4 is a diagram illustrating a duty cycle of a sensor node of a multi-hop sensor network according to an exemplary embodiment of the present invention.
5 is a diagram illustrating a duty cycle of a plurality of sensor nodes according to an embodiment of the present invention.
6 is a diagram illustrating a time synchronization method according to an embodiment of the present invention.
7 is a diagram illustrating a time synchronization broadcast packet according to an embodiment of the present invention.
8 is a flowchart illustrating a method for correcting a clock skew between sensor nodes according to an embodiment of the present invention.
9 is a flowchart illustrating an initial time synchronization process according to an embodiment of the present invention.
10 is a flowchart illustrating a general time synchronization process according to an embodiment of the present invention.
11 is a flowchart illustrating an offset and delay compensation process according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈", "블록" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise. Also, the terms " part, "" module," " module, "and " block" refer to units that process at least one function or operation, Lt; / RTI >

도 1은 서로 다른 진동자를 이용하는 디바이스 간 clock skew를 나타내는 도면이다. 1 is a diagram showing a clock skew between devices using different oscillators.

도 1을 참조하면, 송신기에서 시각 T1에 송신한 신호는 시각 T1'에 수신기로 도달하고, 송신기에서 시각 T2에 송신한 신호는 시각 T2'에 수신기로 도달한다. 이때, 송신기와 수신기의 진동자 차이에 의한 clock skew는 수학식 1과 같이 계산될 수 있다.Referring to FIG. 1, a signal transmitted from a transmitter at a time T 1 reaches a receiver at a time T 1 ', and a signal transmitted from a transmitter at a time T 2 reaches a receiver at a time T 2 '. At this time, the clock skew due to the difference in oscillator between the transmitter and the receiver can be calculated as shown in Equation (1).

Figure pat00001
Figure pat00001

도 2는 서로 다른 진동자를 이용하는 디바이스 간 offset 및 delay을 나타내는 도면이다.2 is a diagram showing offset and delay between devices using different oscillators.

도 2를 참조하면, 송신기에서 시각 T1에 송신한 신호는 시각 T2에 수신기로 도달하고, 수신기에서 시각 T3에 송신한 신호는 시각 T4에 송신기로 도달한다. 즉, 도 2에서는 디바이스 간 offset 및 delay를 계산하기 위해서 핸드 쉐이킹(hand shaking) 방식을 이용하고 있다. 이때, offset는 수학식 2와 같이 계산되고, delay는 수학식 3과 같이 계산될 수 있다.2, the signal transmitted by the transmitter at time T 1 of the signal reaching the receiver at time T 2, and transmits the time T 3 from the receiver and reach the transmitter at time T 4. That is, in FIG. 2, a hand shaking method is used to calculate the offset and delay between devices. At this time, offset can be calculated as shown in Equation (2), and delay can be calculated as Equation (3).

Figure pat00002
Figure pat00002

Figure pat00003
Figure pat00003

도 3은 본 발명의 실시예에 따른 멀티 홉 센서 네트워크를 나타낸 도면이고, 도 4는 본 발명의 실시예에 따른 멀티 홉 센서 네트워크의 센서 노드의 duty cycle을 나타낸 도면이며, 도 5는 본 발명의 실시예에 따른 복수의 센서 노드의 duty cycle을 나타낸 도면이다.FIG. 3 is a diagram illustrating a multi-hop sensor network according to an embodiment of the present invention. FIG. 4 is a diagram illustrating a duty cycle of a sensor node of a multi-hop sensor network according to an exemplary embodiment of the present invention. FIG. 5 is a diagram illustrating duty cycles of a plurality of sensor nodes according to an embodiment.

도 3을 참조하면, 본 발명의 실시예가 적용되는 센서 네트워크는 센서 네트워크의 게이트 웨이 역할을 수행하는 싱크 노드(sink node) 및 센서 노드(A, B, C, D, E)를 포함한다. Referring to FIG. 3, the sensor network to which the embodiment of the present invention is applied includes a sink node and sensor nodes A, B, C, D, and E that serve as a gateway of the sensor network.

그리고 도 4를 참조하면, 센서 노드는 duty cycle마다 깨어나서(wake up) 활성화 기간(active period) 동안 동작한다. 이후, 활성화 기간이 경과한 후 다음 duty cycle까지 슬립(sleep) 한다. 도 5를 참조하면, 각 센서 노드(A, B, C, D, E)는 같은 duty cycle에 따르고, 서로 다른 시각에 깨어날 수 있다.Referring to FIG. 4, the sensor node wakes up every duty cycle and operates during an active period. Then, after the activation period elapses, it sleeps until the next duty cycle. Referring to FIG. 5, each of the sensor nodes A, B, C, D, and E may follow the same duty cycle and wake up at different times.

도 6은 본 발명의 실시예에 따른 시각 동기화 방법을 나타낸 도면이고, 도 7은 본 발명의 실시예에 따른 시각 동기화 브로드캐스트 패킷을 나타낸 도면이다.FIG. 6 is a diagram illustrating a time synchronization method according to an embodiment of the present invention, and FIG. 7 is a diagram illustrating a time synchronization broadcast packet according to an embodiment of the present invention.

도 6을 참조하면, 싱크 노드는 시각 동기화를 위한 시각 동기화 브로드캐스트 패킷을 브로드캐스트 한다. 이때, 싱크 노드는 duty cycle 전체에 걸쳐서 도 7과 같은 시각 동기화 브로드캐스트 패킷을 브로드캐스트 한다. Referring to FIG. 6, the sink node broadcasts a time synchronization broadcast packet for time synchronization. At this time, the sink node broadcasts the time synchronization broadcast packet as shown in FIG. 7 over the entire duty cycle.

이후, 각 센서 노드 (A, B, C, D, E)는 활성화 기간 동안 시각 동기화 브로드캐스트 패킷을 수신한다. 이때, 각 센서 노드는 활성화 기간 동안 하나의 시각 동기화 브로드캐스트 패킷을 수신하면 이후로는 더 이상 패킷을 수신하지 않는다.Each sensor node A, B, C, D, and E receives a time synchronization broadcast packet during the activation period. At this time, when each sensor node receives one time synchronization broadcast packet during the activation period, it does not receive the packet any more.

도 7을 참조하면, 시각 동기화 브로드캐스트 패킷은 소스 주소(source address), 목적지 주소(destination address), 브로드캐스트 반경(broadcast radius), 시각 동기화 기관값(timesync org), 시각 동기화 레벨값(timesync level), 시각 동기화 현행 시퀀스(timesync current sequence, 앞으로 'TCS'라 함), 시각 동기화 종료 시퀀스(timesync end sequence, 앞으로 'TCS'라 함), 그리고 시각 스탬프(time stamp)를 포함할 수 있다.Referring to FIG. 7, the time synchronization broadcast packet includes a source address, a destination address, a broadcast radius, a timesync org, a timesync level ), A timesync current sequence (hereinafter referred to as TCS), a timesync end sequence (hereinafter referred to as TCS), and a time stamp.

source address는 시각 동기화 브로드캐스트 패킷을 브로드캐스트하는 노드의 주소이고, destination address는 시각 동기화 브로드캐스트 패킷이 브로드캐스트되고 있음을 알리는 0xFFFF를 포함한다. Broadcast radius는 '0'으로 설정되어 수신된 시각 동기화 브로드캐스트 패킷을 다시 브로드캐스트 하지 않도록 한다.The source address is the address of the node broadcasting the time synchronization broadcast packet, and the destination address includes 0xFFFF indicating that the time synchronization broadcast packet is being broadcast. Broadcast radius is set to '0' to prevent broadcast of the received time synchronization broadcast packet again.

timesync org에는 시각 동기화 브로드캐스트 패킷으로 시각 동기화를 완료한 노드가 어떤 노드와 시각 동기화를 수행했는지 히스토리를 표시한다. timesync level에는 싱크 노드로부터 몇 단계를 거쳐 시각 동기화를 수행했는지 표시한다. The time synchronization org shows a history of the node that has synchronized the time synchronization with the broadcast synchronization packet. The timesync level shows how many steps have been taken from the sink node to perform the time synchronization.

TCS는 시각 동기화 브로드캐스트 패킷을 수신한 센서 노드가 이후 도달하는 시각 동기화 브로드캐스트 패킷을 무시하기 위한 시퀀스(sequence)이다. 즉, 싱크 노드가 시각 동기화 브로드캐스트 패킷을 브로드캐스트 할 때의 duty cycle을 나타낸 시퀀스로서, 시각 동기화 브로드캐스트 패킷을 수신하는 센서 노드는 TCS를 통해 이미 수신한 시각 동기화 브로드캐스트 패킷인지 아닌지 판단할 수 있다.The TCS is a sequence for ignoring time synchronization broadcast packets arriving after a sensor node receiving a time synchronization broadcast packet. That is, it is a sequence indicating a duty cycle when the sink node broadcasts the time synchronization broadcast packet. The sensor node receiving the time synchronization broadcast packet can determine whether it is a time synchronization broadcast packet already received through the TCS have.

TES는 시각 동기화 브로드캐스트 패킷이 전송되는 센서 노드(싱크 노드 포함됨)의 duty cycle의 총 개수를 나타낸 시퀀스이다. 그러므로, TCS가 TES와 같다는 것은 해당 시각 동기화 브로드캐스트 패킷이 그 패킷을 전송한 센서 노드의 마지막 duty cycle에서 전송되었음을 의미한다. 즉, 이 경우 시각 동기화 브로드캐스트 패킷을 수신한 센서 노드는 더 이상 시각 동기화 브로드캐스트 패킷을 브로드캐스트 할 수 없다. 그리고 time stamp는 시각 동기화용 시간 정보를 포함한다.The TES is a sequence of the total number of duty cycles of the sensor node (including the sink node) to which the time synchronization broadcast packet is transmitted. Therefore, TCS is equal to TES, which means that the corresponding time synchronization broadcast packet was transmitted in the last duty cycle of the sensor node that transmitted the packet. That is, in this case, the sensor node receiving the time synchronization broadcast packet can no longer broadcast the time synchronization broadcast packet. The time stamp includes time information for time synchronization.

도 8은 본 발명의 실시예에 따른 센서 노드 간 clock skew를 보정하기 위한 방법을 나타내는 흐름도이다.8 is a flowchart illustrating a method for correcting a clock skew between sensor nodes according to an embodiment of the present invention.

도 8을 참조하면, 최초 센서 노드는 데이터 수신 대기하고 있다(S801). 센서 노드에서 데이터를 수신하면(S802), 센서 노드에서는 그 데이터가 시각 동기화 브로드캐스트 패킷(timesync broadcast packet)인지 판단한다(S803). 시각 동기화 브로드캐스트 패킷이 아니라면 통상의 데이터 처리 과정(normal data process)을 수행한다(S804).Referring to FIG. 8, the first sensor node waits for data reception (S801). Upon receiving the data from the sensor node (S802), the sensor node determines whether the data is a timesync broadcast packet (S803). If it is not a time synchronization broadcast packet, a normal data process is performed (S804).

하지만, 시각 동기화 브로드캐스트 패킷이라면, 이미 시각이 동기화 되었는지 판단한다(S805). 아직 시각이 동기화 되지 않았다면 초기 시각 동기화 과정(initial timesync process)을 수행한다(S806). However, if it is a time synchronization broadcast packet, it is determined whether the time has already been synchronized (S805). If the time has not yet been synchronized, an initial timesync process is performed (S806).

이미 시각이 동기화된 경우라면, 센서 노드는 수신된 시각 동기화 브로드캐스트 패킷의 timesync org 값이 자신의 주소인지 판단한다(S807). If the time has already been synchronized, the sensor node determines whether the timesync org value of the received time synchronization broadcast packet is its own address (S807).

자신의 주소가 아니라면, 일반 시각 동기화 과정(timesync process)을 수행한다(S808). 하지만 자신의 주소라면, offset 및 delay 보상 과정(offset & delay compensation process)을 수행한다(S809).If the address is not its own address, a normal time synchronization process is performed (S808). However, if the address is its own address, an offset and delay compensation process is performed (S809).

이후, 초기 시각 동기화 과정, 일반 시각 동기화 과정, 그리고 offset 및 delay 보상 과정에 대해서 알아본다.Next, the initial time synchronization process, the general time synchronization process, and the offset and delay compensation process will be described.

도 9는 본 발명의 실시예에 따른 초기 시각 동기화 과정을 나타낸 흐름도이다.9 is a flowchart illustrating an initial time synchronization process according to an embodiment of the present invention.

도 8 및 도 9를 참조하면, 아직 시각 동기화 되지 않은 센서 노드는 timesync org를 센서 노드의 로컬(local) timesync org에 저장하고, timesync level 값을 '1' 증가시킨 후 센서 노드의 로컬 timesync level에 저장한다(S901).8 and 9, a sensor node that has not yet synchronized time stores a timesync org in a local timesync org of the sensor node, increments the timesync level value by '1', and updates the local timesync level of the sensor node (S901).

이후, 센서 노드의 TCS와 수신한 패킷의 TCS를 비교하고(S902), 양쪽의 TCS가 동일하다면 해당 패킷은 무시되므로 데이터 수신을 대기한다(S903). 하지만, 양쪽의 TCS가 다르다면, 패킷의 TCS가 패킷의 TES와 동일한지 판단한다(S904).Thereafter, the TCS of the sensor node is compared with the TCS of the received packet (S902). If both TCSs are the same, the corresponding packet is ignored (S903). However, if both TCSs are different, it is determined whether the TCS of the packet is the same as the TES of the packet (S904).

패킷의 TCS가 패킷의 TES와 동일하지 않다면, 시각 동기화 과정을 시작하고, timesync level 값을 '1' 증가시킨 후 센서 노드의 로컬 timesync level에 저장한다(S905). 이후, 센서 노드의 로컬 TCS에 TCS를 저장하고, TSTCS _1을 time stamp값으로 저장하며, 센서 노드의 L_TSTCS _1을 자신의 time stamp값으로 저장한 후(S906) 데이터 수신을 대기한다(S903).If the TCS of the packet is not the same as the TES of the packet, the time synchronization process is started, and the timesync level value is incremented by '1' and then stored in the local timesync level of the sensor node (S905). Later, and stores the TCS to the local TCS of the sensor node, and stores the TS TCS _1 the time stamp value, waits for the L_TS TCS _1 of sensor nodes own time stamp and then stored as a value (S906) data received (S903 ).

패킷의 TCS가 패킷의 TES와 동일하다면, 시각 동기화 과정이 시작되었는지 판단하고(S907), 아직 시작되지 않았다면 데이터 수신을 대기한다(S903).If the TCS of the packet is the same as the TES of the packet, it is determined whether the time synchronization process is started (S907). If not, the data reception is waited (S903).

하지만, 시각 동기화 과정이 시작되었다면, 센서 노드의 로컬 TCS에 TCS를 저장하고, TSTCS _n을 time stamp값으로 저장하며, 센서 노드의 L_TSTCS _n을 자신의 time stamp값으로 저장한 후(S908), 아래 수학식 4를 계산한다(S909).However, if the time synchronization process is started, and stores the TCS to the local TCS of the sensor node, and stores the TS TCS _n a time stamp value, and then stores the L_TS TCS _n of the sensor node to the own time stamp value (S908) , The following Equation 4 is calculated (S909).

Figure pat00004
Figure pat00004

이후, 센서 노드는 TSTCS _n을 자신의 time stamp값으로 설정하고, 수학식 4에서 계산된 값을 이용하여 clock skew를 보정한다(S910).Thereafter, the sensor node corrects the clock skew by setting the TS TCS _n with their time stamp values, and using the value calculated from Equation 4 (S910).

이후, 센서 노드는 시각 동기화 완료 플래그를 'on'으로 변경하고, 시각 동기화 과정을 종료한 뒤, 로컬 TCS를 '0'으로 하고(S911) 데이터 수신을 대기한다(S903).Thereafter, the sensor node changes the time synchronization completion flag to 'on', terminates the time synchronization process, sets the local TCS to '0' (S911), and waits for data reception (S903).

도 10은 본 발명의 실시예에 따른 일반 시각 동기화 과정을 나타낸 흐름도이다.10 is a flowchart illustrating a general time synchronization process according to an embodiment of the present invention.

도 8 및 10을 참조하면, 이미 시각 동기화된 적이 있는 센서 노드가 판단한 결과 시각 동기화 브로드캐스트 패킷의 timesync org 값이 자신의 주소가 아니라면,패킷의 timesync level과 local timesync level을 비교한다(S1001). Referring to FIGS. 8 and 10, if the time synchronization broadcast packet of the time synchronized broadcast packet is not the address of itself, the sensor node that has already synchronized the time synchronizes the time synchronization level of the packet with the local synchronization level (S1001).

local timesync level이 timesync level 보다 크다면, 데이터 수신을 대기하지만(S1002), local timesync level이 timesync level 보다 크지 않다면, 센서 노드는 timesync org를 로컬 timesync org에 저장하고, timesync level 값을 '1' 증가시킨 후 로컬 timesync level에 저장한다(S1003).If the local timesync level is greater than the timesync level, the sensor node waits for data reception (S1002). If the local timesync level is not greater than the timesync level, the sensor node stores the timesync org in the local timesync org, And stores it in the local timesync level (S1003).

이후, 로컬 TCS가 시각 동기화 브로드캐스트 패킷의 TCS와 같은지 판단하여(S1004), 같다면, 이미 수신했던 패킷이므로 데이터 수신을 대기한다(S1002). Then, it is determined whether the local TCS is the same as the TCS of the time synchronization broadcast packet (S1004).

하지만, 로컬 TCS가 시각 동기화 브로드캐스트 패킷의 TCS와 다르다면, 패킷의 TCS 및 TES가 서로 같은지 확인한다(S1005). However, if the local TCS is different from the TCS of the time synchronization broadcast packet, it is checked whether the TCS and the TES of the packet are the same (S1005).

TCS 및 TES가 서로 다르다면, 시각 동기화 과정을 시작하고, timesync level 값을 '1' 증가시킨 후 센서 노드의 로컬 timesync level에 저장한다(S1006). If the TCS and the TES are different from each other, the time synchronization process is started, and the timesync level value is incremented by '1' and then stored in the local timesync level of the sensor node (S1006).

이후, 센서 노드의 로컬 TCS에 패킷의 TCS를 저장하고, TSTCS _1을 timestamp로 저장하며, 센서 노드의 L_TSTCS _n을 자신의 time stamp값으로 저장한 후(S1007), 데이터 수신을 대기한다(S1002).And after storing the TCS of the packet to the local TCS of the sensor node, it stores the TS TCS _1 a timestamp, and save the L_TS TCS _n of the sensor node to the own time stamp value (S1007), and waits to receive data ( S1002).

하지만, TCS 및 TES가 동일하다면, 시각 동기화 과정이 시작되었는지 판단하고(S1008), 아직 시작되지 않았다면 데이터 수신을 대기한다(S1002).However, if the TCS and the TES are the same, it is determined whether the time synchronization process is started (S1008). If not, the data reception is waited (S1002).

하지만, 시각 동기화 과정이 시작되었다면, 센서 노드의 로컬 TCS에 TCS를 저장하고, TSTCS _n을 time stamp값으로 저장하며, 센서 노드의 L_TSTCS _n을 자신의 time stamp값으로 저장한 후(S1009), 수학식 4를 계산한다(S1010).However, if the time synchronization process is started, and stores the TCS to the local TCS of the sensor node, and stores the TS TCS _n a time stamp value, and then stores the L_TS TCS _n of sensor nodes to their time stamp values (S1009) , And calculates Equation 4 (S1010).

이후, 센서 노드는 TSTCS _n을 자신의 time stamp값으로 설정하고, 수학식 4에서 계산된 값을 이용하여 clock skew를 보정한다(S1011).Thereafter, the sensor node corrects the clock skew by setting the TS TCS _n with their time stamp values, and using the value calculated from Equation 4 (S1011).

이후, 센서 노드는 시각 동기화 완료 플래그를 'on'으로 변경하고, 시각 동기화 과정을 종료한 뒤, 로컬 TCS를 '0'으로 설정한 후(S1012), 데이터 수신을 대기한다(S1002).Thereafter, the sensor node changes the time synchronization completion flag to 'on', sets the local TCS to '0' after terminating the time synchronization process (S1012), and waits for data reception (S1002).

도 11은 본 발명의 실시예에 따른 offset 및 delay 보상 과정을 나타낸 흐름도이다. 11 is a flowchart illustrating an offset and delay compensation process according to an embodiment of the present invention.

싱크 노드로부터 시각 동기화 브로드캐스트 패킷을 수신한 센서 노드A는 싱크 노드로부터 time stamp를 첫 번째로 수신한 시점에 자신의 time stamp를 싱크 노드의 time stamp로 변경한다. 이후, 두 번째로 수신한 time stamp와 두 번째로 time stamp를 수신한 시점의 자신(센서 노드A)의 time stamp를 비교하여 수학식 1에 따라서 clock skew를 계산한다. 다른 센서 노드 각각에서도 센서 노드A와 같은 방법을 통해 clock skew를 계산한다.Upon receipt of the time synchronization broadcast packet from the sink node, the sensor node A changes its time stamp to the time stamp of the sink node at the first reception of the time stamp from the sink node. Then, the time stamp of the second received time stamp is compared with the time stamp of the second received time stamp (sensor node A), and the clock skew is calculated according to Equation (1). In each of the other sensor nodes, the clock skew is calculated in the same manner as the sensor node A.

이후, 싱크 노드와 시각 동기화가 완료된 센서 노드A는 미리 설정된 시간이 경과한 뒤 시각 동기화 브로드캐스트 패킷을 브로드캐스트 한다. 이때, 센서 노드(A, B, C, D, E)는 모두 싱크 노드와 시각 동기화했으므로, 센서 노드B, C, D, 및 E에서는 센서 노드A가 전송하는 패킷은 무시한다. Then, the sensor node A that has completed the time synchronization with the sink node broadcasts the time synchronization broadcast packet after a predetermined time has elapsed. In this case, since the sensor nodes A, B, C, D, and E all synchronize with the sink node, the sensor node B, C, D, and E ignore the packet transmitted by the sensor node A.

반면, 싱크 노드는 센서 노드A로부터 수신한 시각 동기화 브로드캐스트 패킷의 timesync org을 확인하여 센서 노드A가 자신과 시각 동기화되었음을 확인하고, 수학식 2 및 3을 통하여 센서 노드A와의 offset 및 delay를 계산하여 센서 노드A로 전송한다.On the other hand, the sink node checks the timesync org of the time synchronization broadcast packet received from the sensor node A, confirms that the sensor node A synchronizes with itself, calculates the offset and delay with respect to the sensor node A through Equations 2 and 3 And transmits it to the sensor node A.

도 11을 참조하면, 센서 노드A는 시각 동기화 브로드캐스트 패킷의 TCS 및 TES가 서로 같은지 확인하여(S1101) 같지 않다면, 데이터 수신을 대기한다(S1102). Referring to FIG. 11, the sensor node A determines whether the TCS and the TES of the time synchronization broadcast packet are equal to each other (S1101). If not, the sensor node A waits for data reception (S1102).

하지만, 패킷의 TCS 및 TES가 서로 같다면, 로컬 TCS와 패킷의 TCS가 서로 같은지 확인한다(S1103). 로컬 TCS와 패킷의 TCS서로 같다면 데이터 수신을 대기하고(S1102), 로컬 TCS와 패킷의 TCS이 서로 다르다면, 로컬 TCS에 패킷의 TCS값을 저장한다(S1104).However, if the TCS and the TES of the packet are equal to each other, it is checked whether the local TCS and the TCS of the packet are the same (S1103). If the local TCS and the TCS of the packet are the same, the data reception is waited (S1102). If the local TCS and the TCS of the packet are different from each other, the TCS value of the packet is stored in the local TCS (S1104).

이후, 센서 노드는 시각 동기화 브로드캐스트 패킷의 time stamp를 T3로 저장하고, 시각 동기화 브로드캐스트 패킷이 수신된 시점을 나타내는 자신의 time stamp를 T4로 저장하여(S1105) 수학식 5에 따라 offset 및 delay를 계산한다(S1106).Then, the sensor node stores the time stamp of the time synchronization broadcast packet as T 3 , stores its time stamp indicating the time when the time synchronization broadcast packet is received as T 4 (S 1105) And delay (S1106).

Figure pat00005
Figure pat00005

Figure pat00006
Figure pat00006

이후, 센서 노드는 시각 동기화 브로드캐스트 패킷을 송신한 노드를 목적지로 하여, 계산된 offset 및 delay 값을 전송한다(S1107). 이때, 계산된 offset 및 delay 값은 동기화 보정 패킷에 포함되어 전송될 수 있다.Thereafter, the sensor node transmits the calculated offset and delay values to the node that has transmitted the time synchronization broadcast packet as a destination (S1107). At this time, the calculated offset and delay values may be included in the synchronization correction packet and transmitted.

위에서 설명한 바와 같이 본 발명의 실시예에 따르면, 저전력 환경에서 동작하기 위해 일정한 주기에 따라 깨어나는 센서 노드를 시각 동기화 할 수 있다. 또한, 각 센서 노드의 진동자 간 차이로 발생되는 clock skew까지 보정할 수 있어서, 실외 환경에서 운용되는 센서 노드에게 안정적인 시각 정보를 제공할 수 있다.As described above, according to the embodiment of the present invention, it is possible to synchronize a sensor node that wakes up according to a certain period to operate in a low power environment. Also, it is possible to compensate the clock skew caused by the difference between the vibrators of each sensor node, so that stable visual information can be provided to the sensor node operating in the outdoor environment.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

Claims (1)

미리 설정된 주기에 따라 동작(wake-up)과 슬립(sleep)을 반복하는 센서 노드의 시각 동기화 방법으로서,
상기 동작 기간 동안 싱크 노드로부터 브로드캐스팅된 시각 동기화 브로드캐스트 패킷을 수신하는 단계, 그리고
상기 패킷에 포함된 시각 동기화 기관값(timesync org), 시각 동기화 레벨값(timesync level), 시각 동기화 현행 시퀀스(timesync current sequence, 앞으로 'TCS'라 함), 시각 동기화 종료 시퀀스(timesync end sequence, 앞으로 'TES'라 함), 그리고 시각 스탬프를 통하여 시각 동기화 하는 단계
를 포함하며,
상기 시각 동기화 하는 단계는, 상기 TCS와 로컬 TCS가 다르고 상기 TCS와 상기 TES가 다를 경우, 시각 스탬프TCS _1을 시각 스탬프로 저장하고, 로컬 시각 스탬프 TCS _ 1를 자신의 시각 스탬프로 저장하는 단계
를 포함하는 시각 동기화 방법.
1. A time synchronization method of a sensor node that repeats operations (wake-up) and sleep (sleep) according to a preset cycle,
Receiving a time synchronization broadcast packet broadcasted from a sink node during the operation period, and
A time synchronization organization value (timesync org), a timesync level, a timesync current sequence (hereinafter, referred to as 'TCS'), a timesync end sequence &Quot; TES "), and synchronizing the time through the time stamp
/ RTI >
Synchronizing said time is different from the TCS and the local store the TCS when said TCS and the TES differ, the time stamp to the time stamp TCS _1, and the local time stamp Storing TCS _ 1 as their time stamps
/ RTI >
KR1020120146697A 2012-12-14 2012-12-14 Method for time synchronization of sensor network KR20140079524A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120146697A KR20140079524A (en) 2012-12-14 2012-12-14 Method for time synchronization of sensor network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120146697A KR20140079524A (en) 2012-12-14 2012-12-14 Method for time synchronization of sensor network

Publications (1)

Publication Number Publication Date
KR20140079524A true KR20140079524A (en) 2014-06-27

Family

ID=51130566

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120146697A KR20140079524A (en) 2012-12-14 2012-12-14 Method for time synchronization of sensor network

Country Status (1)

Country Link
KR (1) KR20140079524A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104735774A (en) * 2015-03-23 2015-06-24 京信通信技术(广州)有限公司 Radio resource synchronization method and device based on networking
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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104735774A (en) * 2015-03-23 2015-06-24 京信通信技术(广州)有限公司 Radio resource synchronization method and device based on networking
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

Similar Documents

Publication Publication Date Title
Hasan et al. Time synchronization in vehicular ad-hoc networks: A survey on theory and practice
Lenzen et al. PulseSync: An efficient and scalable clock synchronization protocol
Lasassmeh et al. Time synchronization in wireless sensor networks: A survey
Schenato et al. Average timesynch: A consensus-based protocol for clock synchronization in wireless sensor networks
JP3993508B2 (en) Wireless access network system, wireless communication method, synchronization server, and node device
Maggs et al. Consensus clock synchronization for wireless sensor networks
US20090086764A1 (en) System and method for time synchronization on network
Schmid et al. Temperature compensated time synchronization
RU2669012C2 (en) Method of synchronization in the data collection system
JP5930685B2 (en) Time synchronization apparatus, radio terminal and time synchronization system
Kaur et al. A survey of time synchronization protocols for wireless sensor networks
Pallier et al. Energy-efficient GPS synchronization for wireless nodes
Gong et al. Temperature compensated Kalman distributed clock synchronization
KR20140079524A (en) Method for time synchronization of sensor network
Kiani et al. Energy efficiency in wireless sensor and actor networks by distributed time sychnronization algorithm
JP2015188159A (en) Slave node, time synchronization method, and computer program
Martirosyan et al. Preserving temporal relationships of events for wireless sensor actor networks
Nayyer et al. A comparative study of time synchronization protocols in wireless sensor network
Fontanelli et al. Master-less time synchronization for wireless sensor networks with generic topology
KR101042007B1 (en) Routing method for extending lifetime of sensor networks
Gong et al. CESP: A power efficient, accurate coefficient exchange synchronization protocol
KR20100066269A (en) Global time synchronization method in sensor node
KR100999903B1 (en) Time Synchronizing Method in Wireless Sensor Networks
Wang et al. A reliable time synchronization protocol for wireless sensor networks
Khan et al. Issues towards Efficient Time Synchronization in Wireless Sensor Networks

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination