KR102091970B1 - Method and apparatus for modulating and demodulating optical camera communication signal - Google Patents

Method and apparatus for modulating and demodulating optical camera communication signal Download PDF

Info

Publication number
KR102091970B1
KR102091970B1 KR1020190046191A KR20190046191A KR102091970B1 KR 102091970 B1 KR102091970 B1 KR 102091970B1 KR 1020190046191 A KR1020190046191 A KR 1020190046191A KR 20190046191 A KR20190046191 A KR 20190046191A KR 102091970 B1 KR102091970 B1 KR 102091970B1
Authority
KR
South Korea
Prior art keywords
data signal
symbol
occ
group
symbols
Prior art date
Application number
KR1020190046191A
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 국민대학교산학협력단
Application granted granted Critical
Publication of KR102091970B1 publication Critical patent/KR102091970B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • H04L1/206Arrangements for detecting or preventing errors in the information received using signal quality detector for modulated signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/11Arrangements specific to free-space transmission, i.e. transmission through air or vacuum

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Quality & Reliability (AREA)
  • Optical Communication System (AREA)

Abstract

According to the present invention, an operation method of an optical camera communication (OCC) device supporting OCC comprises the steps of: obtaining a binary data signal; converting the binary data signal into a global phase shift signal having an integer value from 0 to (M-1); generating a data signal group from the global phase shift signal based on a preset symbol group mapping diagram; generating a pulse wave signal by modulating the data signal group; and flashing each of a plurality of light sources included in the OCC device according to the pulse wave signal.

Description

광학 카메라 통신 신호의 변조 및 복조 방법 및 장치{METHOD AND APPARATUS FOR MODULATING AND DEMODULATING OPTICAL CAMERA COMMUNICATION SIGNAL}METHOD AND APPARATUS FOR MODULATING AND DEMODULATING OPTICAL CAMERA COMMUNICATION SIGNAL}

본 발명은 광학 카메라 통신(optical camera system, OCC)을 이용하여 신호를 송수신하는 방법에 관한 것으로, 보다 구체적으로 OCC 신호를 변조하여 송신하는 방법 및 수신한 OCC 신호를 복조하는 방법에 관한 것이다. The present invention relates to a method of transmitting and receiving a signal using an optical camera communication (optical camera system, OCC), and more particularly, to a method of modulating and transmitting an OCC signal and a method of demodulating the received OCC signal.

최근 가시광 파장에 통신기능을 부가하여 무선 통신을 가능하게 하는 기술인 가시광 통신(Visible Light Communication; VLC) 기술이 활발히 연구되고 있으며, IEEE 802.15.7 국제표준규격도 완료되어 상용화를 위한 비즈니스 모델 발굴을 추진하고 있다. 그러나 IEEE 802.15.7은 주로 광 검출기(Photo Diode; PD)를 이용한 데이터 전송에 국한되어 있어 VLC 동글 등의 전용 통신장치를 사용해야 하는 문제점이 있다. 이에 따라 광검출기보다는 주로 카메라와 같은 이미지 센서를 이용하고, 가시광선뿐만 아니라 적외선 및 자외선 파장까지 포함하는 광학 무선 통신(Optical Camera Communications; OCC)의 국제표준화가 IEEE 802.15.7m OWC TG(Task Group)에서 진행되고 있다. OCC는 다양한 분야에 활용될 수 있으며, 특히 차량 간(vehicle to vehicle, V2V) 통신 및 차량 및 사물(vehicle to everything, V2X) 간 통신에 활용될 수 있다. Recently, Visible Light Communication (VLC) technology, a technology that enables wireless communication by adding a communication function to visible light wavelengths, is being actively researched, and the IEEE 802.15.7 international standard is also completed to promote the discovery of a business model for commercialization. have. However, IEEE 802.15.7 is mainly limited to data transmission using a photodiode (PD), and there is a problem in that a dedicated communication device such as a VLC dongle is required. As a result, IEEE 802.15.7m OWC TG (Task Group) is an international standardization of optical wireless communication (OCC) that mainly uses an image sensor such as a camera rather than a photodetector and includes infrared and ultraviolet wavelengths as well as visible light. In progress. OCC can be used in various fields, and in particular, it can be used for vehicle-to-vehicle (V2V) communication and vehicle-to-vehicle (V2X) communication.

다만, 송신 노드의 광원과 수신 노드의 이미지 센서의 상태 및 송신 노드의 광원과 수신 노드의 이미지 센서 간의 환경적 요인 등에 따라 두 광원의 샘플링 시간에 차이가 생길 수 있으므로, 이는 곧 두 광원의 점멸 위상차의 변동으로 이어지고, 복조 결과 오류가 발생할 있다. 본 발명의 일 실시예에서는 이러한 오류를 감소시키기 위해 송신 노드의 데이터 변조 방법 및 수신 노드의 데이터 복조 방법이 필요할 수 있다. However, since the sampling time of the two light sources may differ depending on the state of the light source of the transmitting node and the image sensor of the receiving node and the environmental factors between the light source of the transmitting node and the image sensor of the receiving node, this may result in a blinking phase difference between the two light sources. Lead to fluctuations, and errors may occur as a result of demodulation In an embodiment of the present invention, a data modulation method of a transmitting node and a data demodulation method of a receiving node may be required to reduce such errors.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 OCC(optical camera communication) 프로토콜에 의한 신호를 변조하는 방법 및 변조된 OCC 신호를 복조함에 있어, 인공 신경망(artificial neural network)을 활용하여 OCC 신호의 오류를 정정하는 방법을 제공하는 것이다.The object of the present invention for solving the above problems is to modulate the signal by the OCC (optical camera communication) protocol and in demodulating the modulated OCC signal, by utilizing an artificial neural network (artificial neural network) of the OCC signal It provides a way to correct errors.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 OCC(optical camera communication)를 지원하는 OCC 디바이스의 동작 방법에 있어서, 이진 데이터 신호를 획득하는 단계; 상기 이진 데이터 신호를 0부터 (M-1)까지의 정수 값을 갖는 전역 위상 천이(global phase shift) 신호로 변환하는 단계; 미리 설정된 심볼 그룹 매핑 다이어그램을 기초로 상기 전역 위상 천이 신호로부터 데이터 신호 그룹을 생성하는 단계; 상기 데이터 신호 그룹을 변조하여 펄스파 신호를 생성하는 단계; 및 상기 펄스파 신호에 따라 상기 OCC 디바이스에 포함된 복수개의 광원들 각각을 점멸시키는 단계를 포함할 수 있다. An operation method of an OCC device supporting optical camera communication (OCC) according to an embodiment of the present invention for achieving the above object, the method comprising: obtaining a binary data signal; Converting the binary data signal into a global phase shift signal having an integer value from 0 to (M-1); Generating a data signal group from the global phase shift signal based on a preset symbol group mapping diagram; Generating a pulse wave signal by modulating the data signal group; And flashing each of the plurality of light sources included in the OCC device according to the pulse wave signal.

여기서, 상기 전역 위상 천이 신호로 변환하는 단계는, 상기 이진 데이터 신호를 k비트씩 그룹화하여 0부터

Figure 112019040616449-pat00001
까지의 정수 값을 갖는 상기 전역 위상 천이 신호로 변환하는 것을 특징으로 할 수 있다. Here, in the step of converting the global phase shift signal, the binary data signals are grouped by k bits, starting from 0.
Figure 112019040616449-pat00001
It may be characterized in that the conversion to the global phase shift signal having an integer value up to.

여기서, 상기 심볼 그룹 매핑 다이어그램은, 복수의 심볼들 간의 연결 관계를 도시하고, 상기 복수의 심볼들이 연결된 서브 트라이앵글들을 포함하는 것을 특징으로 할 수 있다. Here, the symbol group mapping diagram may show a connection relationship between a plurality of symbols, and may include sub triangles to which the plurality of symbols are connected.

여기서, 상기 미리 설정된 심볼 그룹 매핑 다이어그램을 기초로 데이터 신호 그룹을 생성하는 단계는, 상기 심볼 그룹 매핑 다이어그램에 포함된 상기 서브 트라이앵글들 중, 상기 전역 위상 천이 신호의 값을 포함하는 하나의 서브 트라이앵글을 결정하는 단계; 상기 하나의 서브 트라이앵글에 포함된 복수의 심볼들을 미리 설정된 방법에 따라 조합하는 단계를 더 포함하는 OCC 디바이스의 동작 방법. Here, the step of generating a data signal group based on the preset symbol group mapping diagram includes: among the sub triangles included in the symbol group mapping diagram, one sub triangle including a value of the global phase shift signal. Determining; And combining a plurality of symbols included in the one sub triangle according to a preset method.

여기서, 상기 미리 설정된 심볼 그룹 매핑 다이어그램을 기초로 데이터 신호 그룹을 생성하는 단계는, 상기 심볼 그룹 매핑 다이어그램에 배치된 미리 설정된 제1 심볼 및 상기 제1 심볼로부터 가장 큰 해밍 거리 값을 갖는 제2 심볼 중 하나의 심볼을 추가하는 단계; 및 상기 심볼 그룹 매핑 다이어그램 상에서 서브 트라이앵글을 생성하지 않는 미리 설정된 복수개의 심볼 중 하나의 심볼을 추가하는 단계를 더 포함할 수 있다. Here, the step of generating a data signal group based on the preset symbol group mapping diagram includes: a first symbol disposed in the symbol group mapping diagram and a second symbol having a largest Hamming distance value from the first symbol Adding one of the symbols; And adding one symbol among a plurality of preset symbols that do not generate a sub-triangle on the symbol group mapping diagram.

상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 OCC(optical camera communication)를 지원하는 OCC 디바이스의 동작 방법에 있어서, OCC를 신호를 송신하는 OCC 신호 송신 디바이스에 포함된 복수개의 광원들의 점멸 상태를 검출하는 단계; 상기 광원들의 점멸 상태 정보를 데이터 신호 그룹으로 변환하는 단계; 미리 설정된 심볼 그룹 매핑 다이어그램으로부터 생성된 심볼 그룹 매핑 테이블을 기초로 상기 데이터 신호 그룹으로부터 전역 위상 천이 신호를 획득하는 단계; 및 상기 전역 위상 천이 신호를 변환하여 이진 데이터를 획득하는 단계를 포함할 수 있다. In an operation method of an OCC device supporting optical camera communication (OCC) according to another embodiment of the present invention for achieving the above object, a flashing state of a plurality of light sources included in an OCC signal transmission device for transmitting an OCC signal Detecting; Converting the blinking state information of the light sources into a data signal group; Obtaining a global phase shift signal from the data signal group based on a symbol group mapping table generated from a preset symbol group mapping diagram; And converting the global phase shift signal to obtain binary data.

여기서, 상기 광원들의 점멸 상태를 데이터 신호 그룹으로 변환하는 단계 이후, 상기 데이터 신호 그룹에 포함된 심볼들을 그레이 코딩(gray coding) 방식으로 변환하여, 인접한 심볼 간의 거리가 해밍 거리(hamming distance)를 반영하도록 상기 데이터 신호 그룹을 데이터 전처리하는 단계를 더 포함할 수 있다. Here, after the step of converting the blinking state of the light sources into a data signal group, the symbols included in the data signal group are converted into a gray coding method, so that a distance between adjacent symbols reflects a hamming distance. In order to do so, the data signal group may be further pre-processed.

여기서, 상기 심볼 그룹 매핑 다이어그램은, 복수의 심볼들 간의 연결 관계를 도시하고, 상기 복수의 심볼들이 연결된 서브 트라이앵글들을 포함하는 것을 특징으로 할 수 있다. Here, the symbol group mapping diagram may show a connection relationship between a plurality of symbols, and may include sub triangles to which the plurality of symbols are connected.

여기서, 상기 심볼 그룹 매핑 테이블에 포함된 심볼 그룹은, 미리 설정된 방법에 따른 상기 서브 트라이앵글에 포함된 심볼들의 조합인 것을 특징으로 할 수 있다. Here, the symbol group included in the symbol group mapping table may be a combination of symbols included in the sub triangle according to a preset method.

여기서, 상기 심볼 그룹 매핑 테이블에 포함된 심볼 그룹은, 상기 심볼 그룹 매핑 다이어그램에 배치된 미리 설정된 제1 심볼 및 상기 제1 심볼로부터 가장 큰 해밍 거리 값을 갖는 제2 심볼 중 하나의 심볼; 및 상기 심볼 그룹 매핑 다이어그램 상에서 서브 트라이앵글을 생성하지 않는 미리 설정된 복수개의 심볼 중 하나의 심볼을 더 포함하는 것을 특징으로 할 수 있다. Here, the symbol group included in the symbol group mapping table includes: a symbol of one of a preset first symbol arranged in the symbol group mapping diagram and a second symbol having a largest Hamming distance value from the first symbol; And one symbol among a plurality of preset symbols that do not generate a sub-triangle on the symbol group mapping diagram.

여기서, 상기 데이터 신호 그룹으로부터 전역 위상 천이 신호를 획득하는 단계는, 상기 데이터 신호 그룹이 상기 매핑 테이블에 포함되어 있는지 여부를 판단하는 단계; 및 상기 데이터 신호 그룹이 상기 매핑 테이블에 포함되어 있지 않은 경우, 상기 데이터 신호 그룹과 상기 매핑 테이블에 포함된 심볼 그룹간의 해밍 거리를 기초로 상기 데이터 신호 그룹의 오류를 정정하여 오류가 정정된 데이터 신호 그룹을 생성하는 단계를 포함하며, 상기 오류를 정정하는 단계는, 상기 OCC 디바이스의 인공 신경망(artificial neural network)에 의해 수행되는 것을 특징으로 할 수 있다. Here, obtaining a global phase shift signal from the data signal group may include: determining whether the data signal group is included in the mapping table; And when the data signal group is not included in the mapping table, an error-corrected data signal is corrected by correcting an error in the data signal group based on a hamming distance between the data signal group and a symbol group included in the mapping table. And generating a group, and correcting the error may be performed by an artificial neural network of the OCC device.

여기서, 상기 오류를 정정하는 단계 이후, 상기 OCC 신호 송신 디바이스가 송신한 데이터 신호 그룹과 상기 오류가 정정된 데이터 신호 그룹 간의 오류 정보를 산출하는 단계; 및 상기 오류 정보를 역전파(back-propagation)하여 상기 인공 신경망의 가중 벡터(weight vector)를 업데이트하는 단계를 더 포함할 수 있다. Here, after the step of correcting the error, calculating error information between the data signal group transmitted by the OCC signal transmission device and the error-corrected data signal group; And updating the weight vector of the artificial neural network by back-propagating the error information.

본 발명에 따른 OCC(optical camera communication)를 지원하는 노드는 미리 설정된 심볼 그룹 매핑 다이어그램에 기초하여 데이터 심볼 및 추가적인 심볼을 더 포함하는 데이터 신호 그룹을 수신 노드로 전송함으로써 수신 노드의 신호의 복조율을 향상시킬 수 있다. A node supporting optical camera communication (OCC) according to the present invention transmits a data signal group further including a data symbol and an additional symbol to a receiving node based on a preset symbol group mapping diagram. Can be improved.

본 발명에 따른 OCC를 지원하는 노드는 인공 신경망(artificial neural network)를 이용하여 송신 노드로부터 수신한 데이터 신호의 오차를 보정하여 OCC 신호의 수신 정확도를 향상시킬 수 있다. A node supporting OCC according to the present invention can improve the reception accuracy of an OCC signal by correcting an error of a data signal received from a transmitting node using an artificial neural network.

도 1은 OCC(optical camera communication) 시스템의 구성의 일 실시예를 도시한 개념도이다.
도 2는 OCC 송신 노드의 신호 송신 동작의 일 실시예를 도시한 흐름도이다.
도 3은 심볼 매핑 다이어그램의 제1 실시예를 도시한 개념도이다.
도 4는 심볼 매핑 다이어그램의 제2 실시예를 도시한 개념도이다.
도 5는 OCC 수신 노드의 신호 수신 동작의 일 실시예를 도시한 흐름도이다.
도 6은 OCC 수신 노드의 오류 정정 동작의 일 실시예를 도시한 흐름도이다.
도 7은 사전 부호화 매핑을 위한 심볼 간의 배치의 일 실시예를 도시한 다이어그램이다.
도 8은 OCC 수신 노드에 포함된 인공 신경망(artificial neural network)의 일 실시예를 도시한 개념도이다.
1 is a conceptual diagram showing an embodiment of the configuration of an optical camera communication (OCC) system.
2 is a flowchart illustrating an embodiment of a signal transmission operation of an OCC transmission node.
3 is a conceptual diagram illustrating a first embodiment of a symbol mapping diagram.
4 is a conceptual diagram illustrating a second embodiment of a symbol mapping diagram.
5 is a flowchart illustrating an embodiment of a signal reception operation of an OCC receiving node.
6 is a flowchart illustrating an embodiment of an error correction operation of an OCC receiving node.
7 is a diagram illustrating an embodiment of arrangement between symbols for pre-coding mapping.
8 is a conceptual diagram illustrating an embodiment of an artificial neural network included in an OCC receiving node.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The present invention can be applied to various changes and can have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from other components. For example, the first component may be referred to as a second component without departing from the scope of the present invention, and similarly, the second component may be referred to as a first component. The term and / or includes a combination of a plurality of related described items or any one of a plurality of related described items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When an element is said to be "connected" or "connected" to another component, it is understood that other components may be directly connected to or connected to the other component, but other components may exist in the middle. It should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that no other component exists in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "include" or "have" are intended to indicate the presence of features, numbers, steps, actions, components, parts or combinations thereof described herein, one or more other features. It should be understood that the existence or addition possibilities of fields or numbers, steps, operations, components, parts or combinations thereof are not excluded in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined in the present application. Does not.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the overall understanding in describing the present invention, the same reference numerals are used for the same components in the drawings, and duplicate descriptions for the same components are omitted.

도 1은 OCC(optical camera communication) 시스템의 구성의 일 실시예를 도시한 개념도이다. 1 is a conceptual diagram showing an embodiment of the configuration of an optical camera communication (OCC) system.

도 1을 참조하면, 본 발명의 일 실시예에 의한 OCC 시스템은 광학 무선 송신 장치(110)와 광학 무선 수신 장치(120)을 포함할 수 있다. 광학 무선 송신 장치(110)는 변조기(111)와 송신기(112)를 포함할 수 있다. 송신기(112)는 적어도 하나 이상의 광원들(112-1, 112-2)을 포함할 수 있으며, 광원(112-1, 112-2)은 LED일 수 있다. 광학 무선 수신 장치(120)는 수신기(121)와 복조기(123)를 포함할 수 있으며, 광원 검출기(122)를 더 포함할 수 있다. 수신기(121)는 카메라와 같은 이미지 센서(121-1)를 포함할 수 있다. Referring to FIG. 1, the OCC system according to an embodiment of the present invention may include an optical wireless transmitting device 110 and an optical wireless receiving device 120. The optical wireless transmission apparatus 110 may include a modulator 111 and a transmitter 112. The transmitter 112 may include at least one or more light sources 112-1 and 112-2, and the light sources 112-1 and 112-2 may be LEDs. The optical wireless reception device 120 may include a receiver 121 and a demodulator 123, and may further include a light source detector 122. The receiver 121 may include an image sensor 121-1 such as a camera.

변조기(111)는 전송하고자 하는 비트 열(bit sequence)인 이진 데이터 신호 D[i]를 입력받을 수 있고, 변조된 펄스 파형을 갖는 이진 데이터 신호 S1(t) 및 S2(t)를 생성할 수 있다. S1 및 S2는 연속 신호일 수도 있고 이산 신호일 수 있다.The modulator 111 may receive a binary data signal D [i], which is a bit sequence to be transmitted, and generate binary data signals S1 (t) and S2 (t) having a modulated pulse waveform. have. S1 and S2 may be continuous signals or discrete signals.

송신기(112)는 이진 데이터 신호 S1(t) 및 S2(t)에 따라 복수개의 광원들(112-1, 112-2) 각각을 점멸시킴으로써 데이터를 송신할 수 있다. 여기서 점멸이라 함은 반드시 광원(112-1, 112-2)이 완전히 켜지고 완전히 꺼지는 방식만을 나타내는 것이 아니라, 광원(112-1, 112-2)의 밝기 변화를 이용해 이진값 0과 1 두 가지 상태를 나타내는 모든 방식을 포함할 수 있다. 광원(112-1, 112-2)의 점멸 주파수가 일정값(예: 200Hz) 이상이면 사람은 광원(112-1, 112-2)의 점멸을 느끼지 못할 수 있다. The transmitter 112 may transmit data by flashing each of the plurality of light sources 112-1 and 112-2 according to the binary data signals S1 (t) and S2 (t). Here, the blinking does not necessarily indicate a method in which the light sources 112-1 and 112-2 are completely turned on and off, but two states of binary values 0 and 1 are used by changing the brightness of the light sources 112-1 and 112-2. It may include any way to represent. If the flashing frequencies of the light sources 112-1 and 112-2 are greater than or equal to a certain value (eg, 200 Hz), a person may not be able to feel the flashing of the light sources 112-1 and 112-2.

수신기(121)는 이미지 센서(121-1)가 광원(112-1, 112-2)들을 연속적으로 촬영(샘플링)한 이미지 열(image sequence)을 수신할 수 있다. 광원 검출기(122)는 수신한 이미지에서 광원(112-1, 112-2)들의 위치를 검출할 수 있다. 복조기(123)은 광원(112-1, 112-2)들의 점멸 상태로부터 데이터 신호를 복조할 수 있다.The receiver 121 may receive an image sequence in which the image sensors 121-1 continuously photograph (sample) the light sources 112-1 and 112-2. The light source detector 122 may detect the positions of the light sources 112-1 and 112-2 in the received image. The demodulator 123 can demodulate the data signal from the flashing states of the light sources 112-1 and 112-2.

도 2는 OCC 송신 노드의 신호 송신 동작의 일 실시예를 도시한 흐름도이다. 2 is a flowchart illustrating an embodiment of a signal transmission operation of an OCC transmission node.

도 2를 참조하면, OCC 송신 노드(110)는 이진 데이터 신호(D[i])를 획득할 수 있다. 그리고 OCC 송신 노드(110)의 변조기(111)는 획득한 이진 데이터 신호를 미리 설정된 복수개의 비트 단위로 그룹화하여 0부터

Figure 112019040616449-pat00002
까지의 정수 값을 갖는 전역 위상 천이 신호로 변환할 수 있다(S210). OCC 송신 노드(110)의 변조기(111)는 송신하는 신호의 변조 방식에 따라 이진 데이터 신호를 전역 위상 천이 신호로 변환할 수 있다. OCC 송신 노드의 변조기는 M-ASK(M-amplitude shift keying), M-FSK(M-frequency shift keying), M-PSK(M-phase shift keying), DSM-PSK(dimmable spatial M-phase shift keying) 등의 변조 방식에 따라 이진 데이터 신호를 변조할 수 있다. 예를 들어, M=8 이고, k=3일 경우, OCC 송신 노드(110)의 변조기(111)는 표 1에 따라 이진 데이터 신호를 전역 위상 천이 신호로 변환할 수 있다(S210). Referring to FIG. 2, the OCC transmitting node 110 may acquire a binary data signal D [i]. In addition, the modulator 111 of the OCC transmitting node 110 groups the obtained binary data signal into a plurality of preset bit units, and starts from 0.
Figure 112019040616449-pat00002
It can be converted into a global phase shift signal having an integer value up to (S210). The modulator 111 of the OCC transmission node 110 may convert a binary data signal into a global phase shift signal according to a modulation method of a transmitted signal. The modulators of the OCC transmitting node are M-amplitude shift keying (M-ASK), M-frequency shift keying (M-FSK), M-phase shift keying (M-PSK), and dimmable spatial M-phase shift keying (DSM-PSK). ) Can modulate the binary data signal according to a modulation method. For example, when M = 8 and k = 3, the modulator 111 of the OCC transmission node 110 may convert a binary data signal into a global phase shift signal according to Table 1 (S210).

Figure 112019040616449-pat00003
Figure 112019040616449-pat00003

OCC 송신 노드(110)의 변조기(111)는 표 1에 따라 이진 데이터 신호를 전역 위상 천이 신호로 변환할 수 있으며, 변환 결과 획득한 각각의 전역 위상 천이 신호는 OCC 송신 노드(110)가 송신하는 데이터 신호 그룹의 그룹 ID를 지시할 수 있다. The modulator 111 of the OCC transmission node 110 may convert a binary data signal into a global phase shift signal according to Table 1, and each global phase shift signal obtained as a result of the conversion is transmitted by the OCC transmission node 110 The group ID of the data signal group can be indicated.

OCC 송신 노드(110)의 변조기(111)는 획득한 그룹 ID에 기초하여 복수의 심볼을 포함하는 데이터 신호 그룹을 생성할 수 있다(S220). 구체적으로, OCC 송신 노드(110)의 변조기(111)는 미리 설정된 심볼 매핑 다이어그램에 기초하여 데이터 신호 그룹을 생성할 수 있다(S220). 심볼 매핑 다이어그램은 OCC 송신 노드(110)가 송신하는 신호의 변조 방식에 따라 정의될 수 있다. The modulator 111 of the OCC transmitting node 110 may generate a data signal group including a plurality of symbols based on the obtained group ID (S220). Specifically, the modulator 111 of the OCC transmission node 110 may generate a data signal group based on a preset symbol mapping diagram (S220). The symbol mapping diagram may be defined according to a modulation method of a signal transmitted by the OCC transmitting node 110.

도 3은 심볼 매핑 다이어그램의 제1 실시예를 도시한 개념도이다. 3 is a conceptual diagram illustrating a first embodiment of a symbol mapping diagram.

도 3을 참조하면, 도 3의 다이어그램은 8-PSK 변조 방식에 의한 8개의 심볼들이 배치된 다이어그램일 수 있다. 그리고 도 3의 다이어그램은 8-PSK 변조 방식에 의한 8개의 심볼들 간의 연결 관계를 도시할 수 있으며, 3개의 심볼들이 연결되는 서브 트라이앵글(sub-triangle)들을 포함할 수 있다. 예를 들어, 도 3의 다이어그램은 (0-7-5), (7-5-4), (7-4-6), (5-4-2), (6-3-4), (4-1-2), (4-3-1), (3-0-1) 및 (0-6-2)의 조합인 9개의 서브 트라이앵글들을 포함할 수 있다.Referring to FIG. 3, the diagram of FIG. 3 may be a diagram in which 8 symbols are arranged by an 8-PSK modulation scheme. In addition, the diagram of FIG. 3 may show a connection relationship between 8 symbols by an 8-PSK modulation scheme, and may include sub-triangles to which 3 symbols are connected. For example, the diagram of FIG. 3 is (0-7-5), (7-5-4), (7-4-6), (5-4-2), (6-3-4), ( 4-1-2), (4-3-1), (3-0-1) and (0-6-2) may include 9 sub triangles.

8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 OCC 송신 노드는 미리 설정된 도 3의 심볼 매핑 다이어그램을 기초로 전역 위상 천이 신호의 값에 따라 도 3의 서브 트라이앵글 중 하나의 서브 트라이앵글을 결정할 수 있다. 예를 들어 전역 위상 천이 신호의 값이 1인 경우, OCC 송신 노드는 1을 포함하는 서브 트라이앵글 중 하나의 서브 트라이앵글(예를 들어, (4-3-1) 서브 트라이앵글)를 결정할 수 있다. The modulator 111 of the OCC transmitting node 110 that transmits the signal modulated by the 8-PSK method is the OCC transmitting node according to the value of the global phase shift signal based on the preset symbol mapping diagram of FIG. 3. One of the sub triangles may determine a sub triangle. For example, when the value of the global phase shift signal is 1, the OCC transmitting node may determine one sub triangle (eg, (4-3-1) sub triangle) among sub triangles including 1.

8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 서브 트라이앵글에 포함된 심볼들을 미리 설정된 방식에 따라 조합하여 데이터 신호 그룹을 생성할 수 있다(S220). OCC 송신 노드는 서브 트라이앵글(예를 들어, (4-3-1) 서브 트라이앵글)에 포함된 심볼들을 반시계방향으로 조합하여 데이터 신호 그룹(예를 들어, "134" 데이터 신호 그룹 등)을 생성할 수 있다(S220). 도 3의 심볼 매핑 다이어그램에 따라 생성될 수 있는 데이터 신호 그룹들은 표 2와 같을 수 있다. The modulator 111 of the OCC transmission node 110 that transmits the signal modulated by the 8-PSK method may generate a data signal group by combining symbols included in the sub-triangle according to a preset method (S220). The OCC transmitting node combines the symbols included in the sub triangle (eg, (4-3-1) sub triangle) counterclockwise to generate a data signal group (eg, “134” data signal group, etc.). It can be done (S220). Data signal groups that can be generated according to the symbol mapping diagram of FIG. 3 may be as shown in Table 2.

Figure 112019040616449-pat00004
Figure 112019040616449-pat00004

도 3의 심볼 매핑 다이어그램에 따라 생성될 수 있는 데이터 신호 그룹들은 데이터 신호 그룹 간의 해밍 거리(hamming distance)가 미리 설정된 임계 값을 초과하도록 생성될 수 있다. 도 3의 심볼 매핑 다이어그램에 따라 생성된 데이터 신호 그룹 간의 해밍 거리는 수학식 1에 의해 산출될 수 있다. Data signal groups that can be generated according to the symbol mapping diagram of FIG. 3 may be generated such that a hamming distance between data signal groups exceeds a preset threshold. The Hamming distance between the data signal groups generated according to the symbol mapping diagram of FIG. 3 may be calculated by Equation 1.

Figure 112019040616449-pat00005
Figure 112019040616449-pat00005

수학식 1은 데이터 신호 그룹에 포함된 첫 번째 내지 세 번째 심볼 간의 해밍 거리의 총합을 지시할 수 있다. 심볼 간의 해밍 거리는 도 3에 도시된 심볼 간의 해밍 거리일 수 있다. 도 3의 심볼 매핑 다이어그램에 따라 생성되는 데이터 신호 그룹들의 최소 해밍 거리는 3일 수 있다. Equation 1 may indicate the sum of Hamming distances between the first to third symbols included in the data signal group. The hamming distance between symbols may be a hamming distance between symbols shown in FIG. 3. The minimum hamming distance of the data signal groups generated according to the symbol mapping diagram of FIG. 3 may be 3.

8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 도 3의 심볼 매핑 다이어그램을 기초로 전역 천이 신호로부터 표 2에 기재된 데이터 신호 그룹 중 하나의 데이터 신호 그룹을 생성할 수 있다. 8-PSK 변조 방식에 의한 신호를 전송하는 경우, OCC 송신 노드(110)의 변조기(111)는 세 개의 심볼을 포함하는 데이터 신호 그룹을 생성할 수 있다(S220). The modulator 111 of the OCC transmission node 110 that transmits a signal modulated by the 8-PSK scheme is a data signal group of one of the data signal groups shown in Table 2 from the global transition signals based on the symbol mapping diagram of FIG. 3. You can create When transmitting the signal by the 8-PSK modulation method, the modulator 111 of the OCC transmission node 110 may generate a data signal group including three symbols (S220).

도 4는 심볼 매핑 다이어그램의 제2 실시예를 도시한 개념도이다. 4 is a conceptual diagram illustrating a second embodiment of a symbol mapping diagram.

도 4를 참조하면, 도 4의 다이어그램은 DS8-PSK 변조 방식에 의한 8개의 심볼들이 배치된 다이어그램일 수 있다. 그리고 도 4의 다이어그램은 DS8-PSK 변조 방식에 의한 8개의 심볼들 간의 연결 관계를 도시할 수 있으며, 3개의 심볼들이 연결되는 서브 트라이앵글들을 포함할 수 있다. 예를 들어, 도 4의 다이어그램은 (1-2-3), (3-4-5), (5-6-7), (7-0-1)의 조합인 4개의 서브 트라이앵글들을 포함할 수 있다.Referring to FIG. 4, the diagram of FIG. 4 may be a diagram in which 8 symbols are arranged by a DS8-PSK modulation scheme. In addition, the diagram of FIG. 4 may show a connection relationship between 8 symbols by the DS8-PSK modulation method, and may include sub triangles to which 3 symbols are connected. For example, the diagram of FIG. 4 will include four sub triangles that are a combination of (1-2-3), (3-4-5), (5-6-7), and (7-0-1). You can.

DS8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 미리 설정된 도 4의 심볼 매핑 다이어그램을 기초로 도 4의 서브 트라이앵글 중 하나의 서브 트라이앵글을 결정할 수 있다. 예를 들어 위상 천이 신호의 값이 1인 경우, OCC 송신 노드(110)의 변조기(111)는 심볼 1을 포함하는 서브 트라이앵글(예를 들어, (1-2-3) 서브 트라이앵글)을 결정할 수 있다. The modulator 111 of the OCC transmission node 110 that transmits a signal modulated by the DS8-PSK scheme may determine one sub-triangle of the sub-triangle of FIG. 4 based on a preset symbol mapping diagram of FIG. 4. For example, when the value of the phase shift signal is 1, the modulator 111 of the OCC transmitting node 110 may determine a sub triangle (eg, (1-2-3) sub triangle) including symbol 1 have.

DS8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 서브 트라이앵글에 포함된 심볼들을 미리 설정된 방식에 따라 조합하여 3 개의 심볼을 포함하는 3-심볼 그룹(3-symbol group)을 생성할 수 있다. OCC 송신 노드(110)의 변조기(111)는 서브 트라이앵글(예를 들어, (1-2-3) 서브 트라이앵글)에 포함된 심볼들을 반시계방향으로 조합하여 3-심볼 그룹(예를 들어, "123" 3-심볼 그룹)을 생성할 수 있다. 도 4의 심볼 매핑 다이어그램에 따라 생성될 수 있는 3-심볼 그룹들은 표 3과 같을 수 있다. 표 3을 참고하면, OCC 송신 노드(110)의 변조기(111)는 도 4의 심볼 매핑 다이어그램에 따라 12개의 3-심볼 그룹들을 생성할 수 있다. The modulator 111 of the OCC transmission node 110 that transmits a signal modulated by the DS8-PSK method combines the symbols included in the sub-triangle according to a preset method, and includes a 3-symbol group (3 symbols) (3) -symbol group). The modulator 111 of the OCC transmitting node 110 combines symbols included in the sub-triangle (eg, (1-2-3) sub-triangle) counterclockwise to form a three-symbol group (eg, " 123 "3-symbol group). The 3-symbol groups that can be generated according to the symbol mapping diagram of FIG. 4 may be as shown in Table 3. Referring to Table 3, the modulator 111 of the OCC transmission node 110 may generate 12 three-symbol groups according to the symbol mapping diagram of FIG. 4.

Figure 112019040616449-pat00006
Figure 112019040616449-pat00006

DS8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 3-심볼 그룹에 네 번째 심볼을 더 추가하여 4-심볼 그룹을 생성할 수 있다. 네 번째 심볼은 미리 설정된 서로 다른 두 개의 심볼들 중 하나의 심볼일 수 있다. 미리 설정된 서로 다른 두 개의 심볼은 도 4의 심볼 매핑 다이어그램 상에서 가장 큰 해밍 거리 값을 가질 수 있다. 예를 들어 서로 다른 두 개의 심볼 중 하나의 심볼은 0일 수 있으며, 다른 하나의 심볼은 4일 수 있다. 도 4의 심볼 매핑 다이어그램에 따른 4-심볼 그룹은 표 4와 같을 수 있다. The modulator 111 of the OCC transmitting node 110 that transmits a signal modulated by the DS8-PSK method may generate a 4-symbol group by adding a fourth symbol to the 3-symbol group. The fourth symbol may be one of two different preset symbols. The two different preset symbols may have the largest Hamming distance value on the symbol mapping diagram of FIG. 4. For example, one symbol of two different symbols may be 0, and the other symbol may be 4. The 4-symbol group according to the symbol mapping diagram of FIG. 4 may be as shown in Table 4.

Figure 112019040616449-pat00007
Figure 112019040616449-pat00007

표 4를 참고하면, 4-심볼 그룹들은 표 3의 3-심볼 그룹에 심볼 0 또는 심볼 4가 더 추가된 심볼일 수 있다. 예를 들어, OCC 송신 노드(110)의 변조기(111)는 3-심볼 그룹(예를 들어, 3-심볼 그룹 123)에 심볼 0 또는 심볼 4를 부가하여 2개의 4-심볼 그룹들(예를 들어, 4-심볼 그룹 1234 또는 1230)을 생성할 수 있다. OCC 송신 노드(110)의 변조기(111)는 도 4의 심볼 매핑 다이어그램에 따라 24개의 4-심볼 그룹들을 생성할 수 있다.Referring to Table 4, 4-symbol groups may be symbols in which symbol 0 or symbol 4 is further added to the 3-symbol group in Table 3. For example, the modulator 111 of the OCC transmitting node 110 adds symbol 0 or symbol 4 to a 3-symbol group (eg, 3-symbol group 123), and thus, two 4-symbol groups (eg, For example, a 4-symbol group 1234 or 1230) can be created. The modulator 111 of the OCC transmitting node 110 may generate 24 4-symbol groups according to the symbol mapping diagram of FIG. 4.

DS8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 4-심볼 그룹에 다섯 번째 심볼을 더 추가하여 데이터 신호 그룹을 생성할 수 있다(S220). 다섯 번째 심볼은 미리 설정된 서로 다른 두 개의 심볼 집합들 중 하나의 심볼일 수 있다. 예를 들어, 미리 설정된 서로 다른 두 개의 심볼 집합들은 심볼 매핑 다이어그램 상의 세 개의 심볼들을 포함할 수 있으며, 심볼 집합에 포함된 세 개의 심볼들은 도 4의 심볼 매핑 다이어그램 상 서브 트라이앵글을 형성할 수 없는 심볼들일 수 있다. 예를 들어, 서로 다른 두 개의 심볼 집합들 중 하나의 심볼 집합은 (0-3-6)일 수 있고, 다른 하나의 심볼 집합은 (2-4-7)일 수 있다. 도 4의 심볼 매핑 다이어그램에 따라 생성되는 데이터 신호 그룹은 표 5와 같을 수 있다.The modulator 111 of the OCC transmission node 110 that transmits a signal modulated by the DS8-PSK method may generate a data signal group by adding a fifth symbol to the 4-symbol group (S220). The fifth symbol may be one of two preset sets of different symbols. For example, two different sets of preset symbols may include three symbols on the symbol mapping diagram, and the three symbols included in the symbol set cannot form a sub-triangle on the symbol mapping diagram of FIG. 4. Can be For example, one symbol set of two different symbol sets may be (0-3-6), and the other symbol set may be (2-4-7). The data signal group generated according to the symbol mapping diagram of FIG. 4 may be as shown in Table 5.

Figure 112019040616449-pat00008
Figure 112019040616449-pat00008

표 5를 참고하면, 데이터 신호 그룹들은 표 4의 4-심볼 그룹에 미리 설정된 서로 다른 두 개의 심볼 집합들 중 하나의 심볼을 더 포함할 수 있다. 예를 들어, OCC 송신 노드(110)의 변조기(111)는 하나의 4-심볼 그룹에 다섯 번째 심볼을 부가하여 하나의 데이터 신호 그룹을 생성할 수 있다. OCC 송신 노드(110)의 변조기(111)는 도 4의 심볼 매핑 다이어그램에 따라 24개의 데이터 신호 그룹들을 생성할 수 있다.Referring to Table 5, data signal groups may further include one of two different symbol sets preset in the 4-symbol group of Table 4. For example, the modulator 111 of the OCC transmitting node 110 may generate one data signal group by adding a fifth symbol to one 4-symbol group. The modulator 111 of the OCC transmitting node 110 may generate 24 data signal groups according to the symbol mapping diagram of FIG. 4.

도 4의 심볼 매핑 다이어그램에 따라 생성될 수 있는 데이터 신호 그룹들은 데이터 신호 그룹 간의 해밍 거리가 미리 설정된 임계 값을 초과하도록 생성될 수 있다. 도 4의 심볼 매핑 다이어그램에 따라 생성된 데이터 신호 그룹 간의 해밍 거리는 수학식 2에 의해 산출될 수 있다. Data signal groups that can be generated according to the symbol mapping diagram of FIG. 4 may be generated such that a hamming distance between the data signal groups exceeds a preset threshold. The Hamming distance between data signal groups generated according to the symbol mapping diagram of FIG. 4 may be calculated by Equation (2).

Figure 112019040616449-pat00009
Figure 112019040616449-pat00009

수학식 2는 데이터 신호 그룹에 포함된 첫 번째 내지 다섯 번째 심볼 간의 해밍 거리의 총합을 지시할 수 있다. 심볼 간의 해밍 거리는 도 4에 도시된 심볼 간의 해밍 거리일 수 있다. 도 4의 심볼 매핑 다이어그램에 따라 생성되는 데이터 신호 그룹들의 최소 해밍 거리는 6일 수 있다. Equation 2 may indicate the sum of Hamming distances between the first to fifth symbols included in the data signal group. The hamming distance between symbols may be a hamming distance between symbols shown in FIG. 4. The minimum hamming distance of the data signal groups generated according to the symbol mapping diagram of FIG. 4 may be 6.

DS8-PSK 방식에 의해 변조된 신호를 송신하는 OCC 송신 노드(110)의 변조기(111)는 도 4의 심볼 매핑 다이어그램을 기초로 전역 천이 신호로부터 표 5에 기재된 데이터 신호 그룹 중 하나의 데이터 신호 그룹을 생성할 수 있다(S220). DS8-PSK 변조 방식에 의한 신호를 전송하는 경우, OCC 송신 노드(110)의 변조기(111)는 다섯 개의 심볼을 포함하는 데이터 신호 그룹을 생성할 수 있다(S220). The modulator 111 of the OCC transmission node 110 that transmits a signal modulated by the DS8-PSK method is a data signal group of one of the data signal groups shown in Table 5 from the global transition signal based on the symbol mapping diagram of FIG. 4. It can be generated (S220). When transmitting a signal by the DS8-PSK modulation method, the modulator 111 of the OCC transmission node 110 may generate a data signal group including five symbols (S220).

다시 도 2를 참조하면, OCC 송신 노드(110)의 변조기(111)는 도 3 또는 도 4에 기초하여 데이터 신호 그룹을 생성할 수 있으며(S220), 데이터 신호 그룹을 변조하여 복수개의 펄스파 신호들을 생성할 수 있다(S230). OCC 송신 노드(110)의 변조기(111)는 복수개의 펄스파 신호들을 OCC 송신 노드(110)의 송신기(112)로 전달할 수 있다. Referring back to FIG. 2, the modulator 111 of the OCC transmission node 110 may generate a data signal group based on FIG. 3 or FIG. 4 (S220), and modulate the data signal group to generate a plurality of pulse wave signals. You can create them (S230). The modulator 111 of the OCC transmitting node 110 may transmit a plurality of pulse wave signals to the transmitter 112 of the OCC transmitting node 110.

OCC 송신 노드(110)의 송신기(112)는 OCC 송신 노드(110)의 변조기(111)로부터 펄스파 신호들을 획득할 수 있다. 그리고 OCC 송신 노드(110)의 송신기(112)는 생성한 복수개의 펄스파 신호들에 따라서 송신기(112)에 포함된 광원들(예를 들어, LED 등) 각각을 점멸시켜 신호를 송신할 수 있다(S240). The transmitter 112 of the OCC transmitting node 110 may acquire pulse wave signals from the modulator 111 of the OCC transmitting node 110. In addition, the transmitter 112 of the OCC transmission node 110 may transmit a signal by flashing each of the light sources (for example, LED, etc.) included in the transmitter 112 according to the generated plurality of pulse wave signals. (S240).

도 5는 OCC 수신 노드의 신호 수신 동작의 일 실시예를 도시한 흐름도이다. 5 is a flowchart illustrating an embodiment of a signal reception operation of an OCC receiving node.

도 5를 참조하면, OCC 수신 노드(120)의 수신기(121)는 OCC 송신 노드(110)의 송신기(112)에 포함된 복수개의 광원들의 점멸 상태를 검출할 수 있다. 구체적으로 OCC 수신 노드(120)의 수신기(121)에 포함되는 이미지 센서(예를 들어, 카메라 등)는 연속적으로 이미지들을 촬영하여, OCC 수신 노드(120)의 복조기(123)로 이미지들을 전달할 수 있다. OCC 수신 노드(120)의 복조기(123)는 이미지 센서로부터 획득한 이미지들을 기초로 OCC 송신 노드에 포함된 광원(예를 들어, LED 등)의 점멸 상태를 검출할 수 있다(S510). 그리고 OCC 수신 노드(120)의 복조기(123)는 OCC 송신 노드(110)의 송신기(112)에 포함된 광원의 점멸 상태를 기초로 복수개의 심볼들(M-PSK 심볼 또는 DSM-PSK 심볼 등)을 획득할 수 있다(S520). OCC 수신 노드(120)의 복조기(123)는 획득한 심볼들의 오류를 정정할 수 있다(S530). Referring to FIG. 5, the receiver 121 of the OCC receiving node 120 may detect a flashing state of a plurality of light sources included in the transmitter 112 of the OCC transmitting node 110. Specifically, an image sensor (for example, a camera, etc.) included in the receiver 121 of the OCC receiving node 120 can continuously capture images and deliver images to the demodulator 123 of the OCC receiving node 120. have. The demodulator 123 of the OCC receiving node 120 may detect a flashing state of a light source (eg, LED, etc.) included in the OCC transmitting node based on the images acquired from the image sensor (S510). And the demodulator 123 of the OCC receiving node 120 is a plurality of symbols (M-PSK symbol or DSM-PSK symbol, etc.) based on the flashing state of the light source included in the transmitter 112 of the OCC transmitting node 110 It can be obtained (S520). The demodulator 123 of the OCC receiving node 120 may correct errors of the acquired symbols (S530).

도 6은 OCC 수신 노드의 오류 정정 동작의 일 실시예를 도시한 흐름도이다. 6 is a flowchart illustrating an embodiment of an error correction operation of an OCC receiving node.

도 6을 참조하면, OCC 수신 노드(120)의 복조기(123)는 복수개의 심볼들을 조합하여 데이터 신호 그룹을 획득할 수 있다. 데이터 신호 그룹에 포함된 심볼들의 개수는 OCC 송신 노드(110)에 의해 전송된 신호의 변조 방식에 따라서 결정될 수 있다. Referring to FIG. 6, the demodulator 123 of the OCC receiving node 120 may combine a plurality of symbols to obtain a data signal group. The number of symbols included in the data signal group may be determined according to the modulation scheme of the signal transmitted by the OCC transmission node 110.

OCC 송신 노드(110)가 8-PSK 변조 방식에 의해 변조된 신호를 전송한 경우, OCC 수신 노드(120)의 복조기(123)는 세 개의 심볼들을 조합하여 데이터 신호 그룹을 생성할 수 있다(S531). OCC 송신 노드(110)가 DS8-PSK 변조 방식에 의해 변조된 신호를 전송한 경우, OCC 수신 노드(120)의 복조기(123)는 다섯 개의 심볼들을 조합하여 데이터 신호 그룹을 획득할 수 있다(S531). When the OCC transmitting node 110 transmits a signal modulated by the 8-PSK modulation method, the demodulator 123 of the OCC receiving node 120 may combine three symbols to generate a data signal group (S531) ). When the OCC transmitting node 110 transmits a signal modulated by the DS8-PSK modulation method, the demodulator 123 of the OCC receiving node 120 may combine five symbols to obtain a data signal group (S531) ).

OCC 수신 노드(120)의 복조기(123)는 데이터 신호 그룹으로부터 심볼의 오류를 정정하기 이전에 데이터 전처리(pre-processing)를 수행할 수 있다(S532). OCC 수신 노드(120)의 복조기(123)는 심볼들 간의 해밍거리를 반영하도록 심볼을 변조할 수 있다.The demodulator 123 of the OCC receiving node 120 may perform data pre-processing before correcting the error of the symbol from the data signal group (S532). The demodulator 123 of the OCC receiving node 120 may modulate the symbol to reflect the hamming distance between the symbols.

도 7은 사전 부호화 매핑을 위한 심볼 간의 배치의 일 실시예를 도시한 다이어그램이다. 7 is a diagram illustrating an embodiment of arrangement between symbols for pre-coding mapping.

도 7을 참조하면, 도 7의 다이어그램은 8-PSK(또는 DS8-PSK)의 심볼들이 배치된 성상도(constellation diagram)일 수 있다. 구체적으로 도 7의 다이어그램은 하나의 원주에 8-PSK(또는 DS8-PSK)의 8개의 심볼들이 일정한 간격으로 배치된 다이어그램일 수 있다. 다이어그램에 배치되는 각각의 심볼들은 4개의 비트를 포함할 수 있다. 각각의 심볼들은 그레이 코딩(gray-coding) 기법에 의해 변조될 수 있으며, 변조된 각각의 심볼들의 해밍 거리는 1일 수 있다. Referring to FIG. 7, the diagram of FIG. 7 may be a constellation diagram in which 8-PSK (or DS8-PSK) symbols are arranged. Specifically, the diagram of FIG. 7 may be a diagram in which 8 symbols of 8-PSK (or DS8-PSK) are arranged at regular intervals on one circumference. Each symbol arranged in the diagram may include 4 bits. Each symbol may be modulated by a gray-coding technique, and the hamming distance of each modulated symbol may be 1.

OCC 수신 노드(120)의 복조기(123)는 미리 설정된 심볼 간의 배치 정보를 기초로 데이터 신호 그룹에 포함된 심볼들의 데이터 전처리 동작을 수행할 수 있다. 구체적으로 OCC 수신 노드(120)의 복조기(123)는 데이터 전처리 동작을 수행하여 도 7에 따라 그레이 코딩된 심볼들을 포함하는 데이터 신호 그룹을 획득할 수 있다(S532). The demodulator 123 of the OCC receiving node 120 may perform a data preprocessing operation of symbols included in the data signal group based on pre-set arrangement information between symbols. Specifically, the demodulator 123 of the OCC receiving node 120 may perform a data pre-processing operation to obtain a data signal group including gray-coded symbols according to FIG. 7 (S532).

다시 도 6을 참조하면, OCC 수신 노드(120)의 복조기(123)는 전처리된 데이터 신호 그룹을 획득할 수 있으며(S532), 전처리된 데이터 신호 그룹의 오류 여부를 판단할 수 있다. Referring back to FIG. 6, the demodulator 123 of the OCC receiving node 120 may acquire a preprocessed data signal group (S532) and determine whether an error in the preprocessed data signal group is performed.

8-PSK 방식에 의해 변조된 신호를 수신한 OCC 수신 노드(120)의 복조기(123)는 데이터 신호 그룹이 표 2에 포함되어 있는지 여부를 판단할 수 있다. 데이터 신호 그룹이 표 2에 포함되지 않은 경우, OCC 수신 노드(120)의 복조기(123)는 데이터 신호 그룹에 오류가 있다고 판단할 수 있다. 또한 DS8-PSK 방식에 의해 변조된 신호를 수신한 OCC 수신 노드(120)의 복조기(123)는 데이터 신호 그룹이 표 4에 포함되어 있는지 여부를 판단할 수 있다. 데이터 신호 그룹이 표 5에 포함되지 않은 경우, OCC 수신 노드(120)의 복조기(123)는 데이터 신호 그룹에 오류가 있다고 판단할 수 있다. The demodulator 123 of the OCC receiving node 120 receiving the signal modulated by the 8-PSK method may determine whether the data signal group is included in Table 2. If the data signal group is not included in Table 2, the demodulator 123 of the OCC receiving node 120 may determine that there is an error in the data signal group. In addition, the demodulator 123 of the OCC receiving node 120 receiving the signal modulated by the DS8-PSK method can determine whether the data signal group is included in Table 4. If the data signal group is not included in Table 5, the demodulator 123 of the OCC receiving node 120 may determine that there is an error in the data signal group.

데이터 신호 그룹에 오류가 있다고 판단한 OCC 수신 노드(120)는 수신한 데이터 신호 그룹의 오류를 정정할 수 있다(S533). S533의 오류 정정 동작은 OCC 수신 노드(120)에 포함된 인공 신경망(artificial neural network)에 의해 수행되는 오류 정정(artificial intelligent error correction, AIEC) 동작일 수 있다. The OCC receiving node 120, which determines that there is an error in the data signal group, may correct the error in the received data signal group (S533). The error correction operation of S533 may be an artificial intelligent error correction (AIEC) operation performed by an artificial neural network included in the OCC receiving node 120.

도 8은 OCC 수신 노드에 포함된 인공 신경망의 일 실시예를 도시한 개념도이다. 8 is a conceptual diagram illustrating an embodiment of an artificial neural network included in an OCC receiving node.

도 8을 참조하면, OCC 수신 노드(120)의 인공 신경망은 복수개의 계층(layer)들을 포함할 수 있으며, 각각의 계층들은 복수개의 인공 노드(artificial node)들을 포함할 수 있다. 그리고 OCC 수신 노드(120)의 인공 신경망은 복수의 적응적 가중 벡터(adaptive weight vector)들을 포함할 수 있으며, 인공 신경망의 각각의 계층들에 포함된 인공 노드들은 가중 벡터에 의해 연결될 수 있다. OCC 수신 노드의 인공 신경망은 미리 설정된 파라미터에 따라 복수개의 계층들 및 인공 노드들을 포함할 수 있으며, OCC 수신 노드(120)가 수신한 데이터 신호 그룹의 오류를 정정할 수 있다. Referring to FIG. 8, the artificial neural network of the OCC receiving node 120 may include a plurality of layers, and each layer may include a plurality of artificial nodes. In addition, the artificial neural network of the OCC receiving node 120 may include a plurality of adaptive weight vectors, and artificial nodes included in respective layers of the artificial neural network may be connected by a weight vector. The artificial neural network of the OCC receiving node may include a plurality of layers and artificial nodes according to a preset parameter, and may correct errors in the data signal group received by the OCC receiving node 120.

예를 들어, 수신 노드(120)가 8-PSK 방식에 의해 변조된 데이터 신호 그룹을 수신한 경우, OCC 수신 노드(120)는 표 6의 파라미터들을 기초로 설정된 인공 신경망을 이용하여 데이터 신호 그룹의 오류를 정정할 수 있다. For example, when the receiving node 120 receives a group of data signals modulated by the 8-PSK method, the OCC receiving node 120 uses the artificial neural network set based on the parameters in Table 6 to determine the group of data signals. The error can be corrected.

Figure 112019040616449-pat00010
Figure 112019040616449-pat00010

표 6을 참조하면, OCC 수신 노드(120)의 인공 신경망은 4개의 계층을 포함할 수 있으며, 구체적으로 입력 계층(input layer), 출력 계층(output layer) 및 히든 계층(hidden layer)을 포함할 수 있다. 입력 계층은 전처리된 데이터 신호 그룹에 포함된 비트들이 입력되는 계층일 수 있다. 입력 계층은 12 개의 인공 노드들 포함할 수 있으며, 입력 계층의 각각의 인공 노드들은 데이터 전처리 결과 획득되는 심볼들을 구성하는 비트들이 입력되는 인공 노드일 수 있다. Referring to Table 6, the artificial neural network of the OCC receiving node 120 may include four layers, specifically, an input layer, an output layer, and a hidden layer. You can. The input layer may be a layer into which bits included in the preprocessed data signal group are input. The input layer may include 12 artificial nodes, and each artificial node of the input layer may be an artificial node into which bits constituting symbols obtained as a result of data preprocessing are input.

그리고 출력 계층은 입력 계층에 입력된 데이터 신호 그룹으로부터 오류가 정정된 데이터 신호 그룹을 출력하는 계층일 수 있다. 출력 계층은 27개의 인공 노드들을 포함할 수 있으며, 출력 계층에 포함되는 각각의 인공 노드들은 표 2에 정의된 데이터 신호 그룹을 지시할 수 있다. In addition, the output layer may be a layer that outputs a data signal group in which errors are corrected from a data signal group input to the input layer. The output layer may include 27 artificial nodes, and each artificial node included in the output layer may indicate a data signal group defined in Table 2.

그리고 4개의 계층들 중 2개의 계층들은 히든 계층일 수 있다. 히든 계층들은 271개의 인공 노드를 포함할 수 있다. 히든 계층은 가중 벡터를 통해 입력 계층과 연결될 수 있으며, 또는 히든 계층은 가중 벡터를 통해 출력 계층과 연결될 수 있다. OCC 수신 노드(120)의 인공 신경망은 데이터 전처리 결과 생성한 데이터 신호 그룹의 비트를 입력 값으로 하여, 인공 신경망의 가중 벡터들에 따라서 오류가 정정된 데이터 신호 그룹을 획득할 수 있다. And two of the four layers may be a hidden layer. Hidden layers may include 271 artificial nodes. The hidden layer can be connected to the input layer through a weighted vector, or the hidden layer can be connected to an output layer through a weighted vector. The artificial neural network of the OCC receiving node 120 may obtain a data signal group in which errors are corrected according to weighting vectors of the artificial neural network, using the bits of the data signal group generated as a result of data pre-processing as input values.

예를 들어, DS8-PSK 방식에 의해 변조된 데이터 신호 그룹을 수신한 경우, OCC 수신 노드(120)는 표 7의 파라미터들에 기초하여 설정된 인공 신경망을 이용하여 데이터 신호 그룹의 오류를 정정할 수 있다. For example, when a data signal group modulated by the DS8-PSK method is received, the OCC receiving node 120 can correct an error in the data signal group using an artificial neural network set based on the parameters in Table 7. have.

Figure 112019040616449-pat00011
Figure 112019040616449-pat00011

표 7을 참조하면, OCC 수신 노드(120)의 인공 신경망은 4개의 계층을 포함할 수 있다. 제1 계층은 전처리된 데이터 신호 그룹이 입력되는 계층일 수 있다. 제1 계층은 20 개의 인공 노드들을 포함할 수 있으며, 각각의 인공 노드들은 데이터 전처리 결과 획득되는 비트들이 입력되는 인공 노드일 수 있다. Referring to Table 7, the artificial neural network of the OCC receiving node 120 may include four layers. The first layer may be a layer into which a pre-processed data signal group is input. The first layer may include 20 artificial nodes, and each artificial node may be an artificial node into which bits obtained as a result of data preprocessing are input.

그리고 제2 계층은 제1 계층에서 입력된 데이터 신호 그룹으로부터 오류가 정정된 데이터 신호 그룹을 출력하는 계층일 수 있다. 제2 계층은 24개의 인공 노드들을 포함할 수 있으며, 제2 계층에 포함되는 각각의 인공 노드들은 표 5에 정의된 데이터 신호 그룹을 지시할 수 있다. In addition, the second layer may be a layer that outputs a data signal group in which errors are corrected from the data signal group input in the first layer. The second layer may include 24 artificial nodes, and each artificial node included in the second layer may indicate a data signal group defined in Table 5.

4개의 계층들 중 2개의 계층들은 히든 계층(hidden layer)일 수 있다. 그리고 각각의 히든 계층들은 241개의 인공 노드를 포함할 수 있다. 히든 계층은 가중 벡터를 통해 입력 계층과 연결될 수 있으며, 또는 히든 계층은 가중 벡터를 통해 출력 계층과 연결될 수 있다. OCC 수신 노드(120)의 인공 신경망은 데이터 전처리 결과 생성한 데이터 신호 그룹의 비트를 입력 값으로 하여, 인공 신경망의 가중 벡터들에 따라서 오류가 정정된 데이터 신호 그룹을 획득할 수 있다. Two of the four layers may be a hidden layer. And each hidden layer may include 241 artificial nodes. The hidden layer can be connected to the input layer through a weighted vector, or the hidden layer can be connected to an output layer through a weighted vector. The artificial neural network of the OCC receiving node 120 may obtain a data signal group in which errors are corrected according to weighting vectors of the artificial neural network, using the bits of the data signal group generated as a result of data pre-processing as input values.

OCC 수신 노드(120)는 인공 신경망의 가중 벡터들을 업데이트하는 학습(learning) 동작을 수행할 수 있다. 학습 동작은 OCC 수신 노드(120)에 포함된 다층 퍼셉트론(multi-layer perceptron) 분류기에 의해 수행될 수 있다. The OCC receiving node 120 may perform a learning operation to update the weighted vectors of the artificial neural network. The learning operation may be performed by a multi-layer perceptron classifier included in the OCC receiving node 120.

OCC 수신 노드(120)는 다층 퍼셉트론 분류기를 더 포함할 수 있다. 다층 퍼셉트론 분류기는 미리 설정된 학습 알고리즘을 통해 인공 신경망을 훈련(training)할 수 있다. 학습 알고리즘은 교사 학습 알고리즘(supervised learning algorithm), 비교사 학습 알고리즘(non-supervised learning algorithm)과 같은 학습 알고리즘을 포함할 수 있다. The OCC receiving node 120 may further include a multi-layer perceptron classifier. The multilayer perceptron classifier can train an artificial neural network through a preset learning algorithm. The learning algorithm may include learning algorithms such as a supervised learning algorithm and a non-supervised learning algorithm.

OCC의 수신 노드(120)의 인공 신경망은 피드 포워드(feed-forward) 동작을 수행하여 데이터 신호 그룹의 오류를 정정함으로써, 오류가 정정된 데이터 신호 그룹을 생성할 수 있다. OCC 수신 노드(120)의 다층 퍼셉트론 분류기는 인공 신경망을 통해 오류를 정정한 데이터 신호 그룹과 OCC 송신 노드(110)가 전송한 데이터 신호 그룹 사이의 오차 정보를 산출할 수 있다. OCC의 수신 노드(120)의 다층 퍼셉트론 분류기는 산출된 오차 정보를 역전파(back-propagation)하여 인공 신경망의 계층간의 가중 벡터들을 수정하는 학습 동작을 수행할 수 있다. OCC의 수신 노드(120)의 다층 퍼셉트론 분류기는 표 8에서 정의하는 파라미터들에 기초하여 학습 동작을 수행할 수 있다. The artificial neural network of the receiving node 120 of the OCC may perform a feed-forward operation to correct an error in the data signal group, thereby generating an error-corrected data signal group. The multilayer perceptron classifier of the OCC receiving node 120 may calculate error information between a data signal group corrected for an error through an artificial neural network and a data signal group transmitted by the OCC transmitting node 110. The multi-layer perceptron classifier of the receiving node 120 of the OCC may perform a learning operation to correct weighted vectors between layers of the artificial neural network by back-propagating the calculated error information. The multi-layer perceptron classifier of the receiving node 120 of the OCC can perform a learning operation based on the parameters defined in Table 8.

Figure 112019040616449-pat00012
Figure 112019040616449-pat00012

OCC 수신 노드(120)의 다층 퍼셉트론 분류기는 미리 설정된 최적화 알고리즘을 통해 인공 신경망의 계층간의 가중 벡터들을 수정할 수 있다. 최적화 알고리즘은 경사 하강법 등을 포함할 수 있으며, 표 8을 참조하면 아담 최적화(adam-optimizer) 알고리즘을 더 포함할 수 있다. OCC 수신 노드(120)의 다층 퍼셉트론 분류기는 미리 설정된 이폭(epoch)의 수(표 8을 참조하면 500회)만큼 학습 동작을 반복하여 수행할 수 있다. The multi-layer perceptron classifier of the OCC receiving node 120 can modify weight vectors between layers of the artificial neural network through a preset optimization algorithm. The optimization algorithm may include a gradient descent method and the like, and referring to Table 8, an Adam-optimizer algorithm may be further included. The multi-layer perceptron classifier of the OCC receiving node 120 may repeatedly perform a learning operation as many as a preset number of epochs (500 times in Table 8).

다시 도 6을 참조하면, OCC 수신 노드(120)의 복조기(123)은 오류가 정정된 데이터 신호 그룹으로부터 그룹 ID 및 전역 위상 천이 신호를 획득할 수 있다(S534). 전역 위상 천이 신호는

Figure 112019040616449-pat00013
까지의 정수 값을 갖는 신호일 수 있다. Referring back to FIG. 6, the demodulator 123 of the OCC receiving node 120 may obtain a group ID and a global phase shift signal from a data signal group in which errors are corrected (S534). The global phase shift signal
Figure 112019040616449-pat00013
It may be a signal having an integer value of.

OCC 수신 노드(120)의 복조기(123)는 획득한 그룹 ID 및 전역 위상 천이 신호를 변환하여 이진 데이터 신호(D[i])를 획득할 수 있다(S540). 예를 들어, M=8 이고, k=3일 경우, OCC 수신 노드(120)의 변조기(123)는 표 1에 따라 그룹 ID 및 전역 위상 천이 신호로부터 이진 데이터 신호(D[i])를 획득할 수 있다(S540).The demodulator 123 of the OCC receiving node 120 may obtain the binary data signal D [i] by converting the acquired group ID and global phase shift signal (S540). For example, when M = 8 and k = 3, the modulator 123 of the OCC receiving node 120 obtains the binary data signal D [i] from the group ID and global phase shift signal according to Table 1 It can be done (S540).

발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the invention are implemented in the form of program instructions that can be executed through various computer means and can be recorded on a computer readable medium. Computer-readable media may include program instructions, data files, data structures, or the like alone or in combination. The program instructions recorded on the computer-readable medium may be specially designed and configured for the present invention or may be known and usable by those skilled in computer software.

컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media include hardware devices specifically configured to store and execute program instructions, such as roms, rams, flash memories, and the like. Examples of program instructions include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine code such as that produced by a compiler. The above-described hardware device may be configured to operate with at least one software module to perform the operation of the present invention, and vice versa.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although described with reference to the above embodiments, those skilled in the art understand that various modifications and changes can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. Will be able to.

Claims (12)

OCC(optical camera communication)를 지원하는 OCC 디바이스의 동작 방법에 있어서,
이진 데이터 신호를 획득하는 단계;
상기 이진 데이터 신호를 0부터 (M-1)까지의 정수 값을 갖는 전역 위상 천이(global phase shift) 신호로 변환하는 단계;
미리 설정된 심볼 그룹 매핑 다이어그램을 기초로 상기 전역 위상 천이 신호로부터 데이터 신호 그룹을 생성하는 단계;
상기 데이터 신호 그룹을 변조하여 펄스파 신호를 생성하는 단계; 및
상기 펄스파 신호에 따라 상기 OCC 디바이스에 포함된 복수개의 광원들 각각을 점멸시키는 단계를 포함하고,
상기 심볼 그룹 매핑 다이어그램은,
복수의 심볼들 간의 연결 관계를 도시하고,
상기 복수의 심볼들이 연결된 서브 트라이앵글들을 포함하는 것을 특징으로 하는 OCC 디바이스의 동작 방법.
In the operation method of the OCC device supporting OCC (optical camera communication),
Obtaining a binary data signal;
Converting the binary data signal into a global phase shift signal having an integer value from 0 to (M-1);
Generating a data signal group from the global phase shift signal based on a preset symbol group mapping diagram;
Generating a pulse wave signal by modulating the data signal group; And
And blinking each of a plurality of light sources included in the OCC device according to the pulse wave signal,
The symbol group mapping diagram,
Shows a connection relationship between a plurality of symbols,
A method of operating an OCC device, characterized in that it comprises sub triangles to which the plurality of symbols are connected.
청구항 1에 있어,
상기 전역 위상 천이 신호로 변환하는 단계는,
상기 이진 데이터 신호를 k비트씩 그룹화하여 0부터
Figure 112019040616449-pat00014
까지의 정수 값을 갖는 상기 전역 위상 천이 신호로 변환하는 것을 특징으로 하는 OCC 디바이스의 동작 방법.
The method according to claim 1,
The step of converting the global phase shift signal,
The binary data signals are grouped by k bits, starting from 0
Figure 112019040616449-pat00014
And converting the global phase shift signal having an integer value up to OCC.
삭제delete 청구항 1에 있어,
상기 미리 설정된 심볼 그룹 매핑 다이어그램을 기초로 데이터 신호 그룹을 생성하는 단계는,
상기 심볼 그룹 매핑 다이어그램에 포함된 상기 서브 트라이앵글들 중, 상기 전역 위상 천이 신호의 값을 포함하는 하나의 서브 트라이앵글을 결정하는 단계; 및
상기 하나의 서브 트라이앵글에 포함된 복수의 심볼들을 미리 설정된 방법에 따라 조합하는 단계를 더 포함하는 OCC 디바이스의 동작 방법.
The method according to claim 1,
Generating a data signal group based on the preset symbol group mapping diagram,
Determining, among the sub triangles included in the symbol group mapping diagram, one sub triangle including a value of the global phase shift signal; And
And combining a plurality of symbols included in the one sub triangle according to a preset method.
청구항 4에 있어,
상기 미리 설정된 심볼 그룹 매핑 다이어그램을 기초로 데이터 신호 그룹을 생성하는 단계는,
상기 심볼 그룹 매핑 다이어그램에 배치된 미리 설정된 제1 심볼 및 상기 제1 심볼로부터 가장 큰 해밍 거리 값을 갖는 제2 심볼 중 하나의 심볼을 추가하는 단계; 및
상기 심볼 그룹 매핑 다이어그램 상에서 서브 트라이앵글을 생성하지 않는 미리 설정된 복수개의 심볼 중 하나의 심볼을 추가하는 단계를 더 포함하는 OCC 디바이스의 동작 방법.
The method according to claim 4,
Generating a data signal group based on the preset symbol group mapping diagram,
Adding one of the first symbol, which is arranged in the symbol group mapping diagram, and the second symbol having the largest Hamming distance value from the first symbol; And
And adding one symbol among a plurality of preset symbols that do not generate a sub-triangle on the symbol group mapping diagram.
OCC(optical camera communication)를 지원하는 OCC 디바이스의 동작 방법에 있어서,
OCC 신호를 송신하는 OCC 신호 송신 디바이스에 포함된 복수개의 광원들의 점멸 상태를 검출하는 단계;
상기 광원들의 점멸 상태 정보를 데이터 신호 그룹으로 변환하는 단계;
미리 설정된 심볼 그룹 매핑 다이어그램으로부터 생성된 심볼 그룹 매핑 테이블을 기초로 상기 데이터 신호 그룹으로부터 전역 위상 천이 신호를 획득하는 단계; 및
상기 전역 위상 천이 신호를 변환하여 이진 데이터를 획득하는 단계를 포함하고,
상기 심볼 그룹 매핑 다이어그램은,
복수의 심볼들 간의 연결 관계를 도시하고,
상기 복수의 심볼들이 연결된 서브 트라이앵글들을 포함하는 것을 특징으로 하는 OCC 디바이스의 동작 방법.
In the operation method of the OCC device supporting OCC (optical camera communication),
Detecting a flashing state of a plurality of light sources included in the OCC signal transmission device for transmitting the OCC signal;
Converting the blinking state information of the light sources into a data signal group;
Obtaining a global phase shift signal from the data signal group based on a symbol group mapping table generated from a preset symbol group mapping diagram; And
Converting the global phase shift signal to obtain binary data,
The symbol group mapping diagram,
Shows a connection relationship between a plurality of symbols,
A method of operating an OCC device, characterized in that it comprises sub triangles to which the plurality of symbols are connected.
청구항 6에 있어,
상기 광원들의 점멸 상태를 데이터 신호 그룹으로 변환하는 단계 이후,
상기 데이터 신호 그룹에 포함된 심볼들을 그레이 코딩(gray coding) 방식으로 변환하여, 인접한 심볼 간의 거리가 해밍 거리(hamming distance)를 반영하도록 상기 데이터 신호 그룹을 데이터 전처리하는 단계를 더 포함하는 OCC 디바이스의 동작 방법.
The method according to claim 6,
After the step of converting the blinking state of the light source into a data signal group,
And converting the symbols included in the data signal group into a gray coding method to preprocess the data signal group such that the distance between adjacent symbols reflects a hamming distance. How it works.
삭제delete 청구항 6에 있어,
상기 심볼 그룹 매핑 테이블에 포함된 심볼 그룹은,
미리 설정된 방법에 따른 상기 서브 트라이앵글에 포함된 심볼들의 조합인 것을 특징으로 하는 OCC 디바이스의 동작 방법.
The method according to claim 6,
The symbol group included in the symbol group mapping table,
Method of operation of the OCC device, characterized in that a combination of symbols included in the sub-triangle according to a preset method.
청구항 9에 있어,
상기 심볼 그룹 매핑 테이블에 포함된 심볼 그룹은,
상기 심볼 그룹 매핑 다이어그램에 배치된 미리 설정된 제1 심볼 및 상기 제1 심볼로부터 가장 큰 해밍 거리 값을 갖는 제2 심볼 중 하나의 심볼; 및
상기 심볼 그룹 매핑 다이어그램 상에서 서브 트라이앵글을 생성하지 않는 미리 설정된 복수개의 심볼 중 하나의 심볼을 더 포함하는 것을 특징으로 하는 OCC 디바이스의 동작 방법.
The method according to claim 9,
The symbol group included in the symbol group mapping table,
A symbol of one of a preset first symbol disposed in the symbol group mapping diagram and a second symbol having a largest Hamming distance value from the first symbol; And
And a symbol among a plurality of preset symbols that do not generate a sub-triangle on the symbol group mapping diagram.
청구항 7에 있어,
상기 데이터 신호 그룹으로부터 전역 위상 천이 신호를 획득하는 단계는,
상기 데이터 신호 그룹이 상기 매핑 테이블에 포함되어 있는지 여부를 판단하는 단계; 및
상기 데이터 신호 그룹이 상기 매핑 테이블에 포함되어 있지 않은 경우, 상기 데이터 신호 그룹과 상기 매핑 테이블에 포함된 심볼 그룹간의 해밍 거리를 기초로 상기 데이터 신호 그룹의 오류를 정정하여 오류가 정정된 데이터 신호 그룹을 생성하는 단계를 포함하며,
상기 오류를 정정하는 단계는,
상기 OCC 디바이스의 인공 신경망(artificial neural network)에 의해 수행되는 것을 특징으로 하는 OCC 디바이스의 동작 방법.
The method according to claim 7,
Acquiring a global phase shift signal from the data signal group,
Determining whether the data signal group is included in the mapping table; And
When the data signal group is not included in the mapping table, an error-corrected data signal group is corrected by correcting an error of the data signal group based on a hamming distance between the data signal group and a symbol group included in the mapping table It includes the steps of generating,
Correcting the error,
Method of operation of the OCC device, characterized in that is performed by an artificial neural network (artificial neural network) of the OCC device.
청구항 11에 있어,
상기 오류를 정정하는 단계 이후,
상기 OCC 신호 송신 디바이스가 송신한 데이터 신호 그룹과 상기 오류가 정정된 데이터 신호 그룹 간의 오류 정보를 산출하는 단계; 및
상기 오류 정보를 역전파(back-propagation)하여 상기 인공 신경망의 가중 벡터(weight vector)를 업데이트하는 단계를 더 포함하는 OCC 디바이스의 동작 방법.
The method according to claim 11,
After the step of correcting the error,
Calculating error information between the data signal group transmitted by the OCC signal transmission device and the data signal group in which the error is corrected; And
And back-propagating the error information to update the weight vector of the artificial neural network.
KR1020190046191A 2018-12-27 2019-04-19 Method and apparatus for modulating and demodulating optical camera communication signal KR102091970B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180171281 2018-12-27
KR20180171281 2018-12-27

Publications (1)

Publication Number Publication Date
KR102091970B1 true KR102091970B1 (en) 2020-03-20

Family

ID=69958073

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190046191A KR102091970B1 (en) 2018-12-27 2019-04-19 Method and apparatus for modulating and demodulating optical camera communication signal

Country Status (1)

Country Link
KR (1) KR102091970B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100111628A (en) * 2009-04-07 2010-10-15 한국전자통신연구원 Method of block-coded group modulation, and transmitter using the same
KR20180100212A (en) * 2016-01-12 2018-09-07 국민대학교산학협력단 DSM-PSK optical wireless transmission method and apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100111628A (en) * 2009-04-07 2010-10-15 한국전자통신연구원 Method of block-coded group modulation, and transmitter using the same
KR20180100212A (en) * 2016-01-12 2018-09-07 국민대학교산학협력단 DSM-PSK optical wireless transmission method and apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Y. Jang, T. Nguyen, IEEE P802.15-16-0239-00-007a, "Kookmin PHY 4 modes - hybrid modulation schemes and cameras ISC modes" (IEEE 802.15 documents 서버공개일 2016.03.14.)* *

Similar Documents

Publication Publication Date Title
EP3418821B1 (en) Method and device for configuring a data transmission system
KR102092496B1 (en) S2-PSK optical wireless communication method and apparatus
KR102136496B1 (en) Method and apparatus for modulating and demodulating optical camera communication signal
US20200356835A1 (en) Sensor-Action Fusion System for Optimising Sensor Measurement Collection from Multiple Sensors
US20210264255A1 (en) Gradient feedback framework for joint transceiver neural network training
Afzal et al. Battery-free wireless imaging of underwater environments
CN110392407A (en) The mesh network based on light of self-organizing
AU2021200302B2 (en) Method for sharing models among autonomous vehicles based on blockchain
US10980085B2 (en) Split predictions for IoT devices
Akram et al. Design and analysis of an optical camera communication system for underwater applications
GB2594608A (en) Demodulating modulated signals with artificial neural networks
WO2023109699A1 (en) Multi-agent communication learning method
KR102345777B1 (en) Method and apparatus for determining location of a vehicle based on optical camera communication
Teli et al. Performance evaluation of neural network assisted motion detection schemes implemented within indoor optical camera based communications
KR102041011B1 (en) Method and apparatus for SM-PSK optical wireless communication
US20230049550A1 (en) Making an Enabled Capability
KR102091970B1 (en) Method and apparatus for modulating and demodulating optical camera communication signal
CN114330722A (en) Inference implementation method, network, electronic device and storage medium
US20180232574A1 (en) Systems and Methods for Transmitting and Receiving Data Using Machine Learning Classification
Al‐Makhlasawy et al. Modulation classification in the presence of adjacent channel interference using convolutional neural networks
CN117813913A (en) Method and system for source coding using neural networks
CN109362066B (en) Real-time behavior recognition system based on low-power-consumption wide-area Internet of things and capsule network and working method thereof
US20200252131A1 (en) Roi-based optical wireless communication method and device
CN110121055B (en) Method and apparatus for object recognition
KR102063418B1 (en) Method and apparatus for modulating and demodulating in communication system

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant