KR102305668B1 - 데이터 통신을 수행하는 방법 및 그 전자 장치 - Google Patents

데이터 통신을 수행하는 방법 및 그 전자 장치 Download PDF

Info

Publication number
KR102305668B1
KR102305668B1 KR1020190178849A KR20190178849A KR102305668B1 KR 102305668 B1 KR102305668 B1 KR 102305668B1 KR 1020190178849 A KR1020190178849 A KR 1020190178849A KR 20190178849 A KR20190178849 A KR 20190178849A KR 102305668 B1 KR102305668 B1 KR 102305668B1
Authority
KR
South Korea
Prior art keywords
communication module
power supply
volatile memory
electronic device
microcontroller
Prior art date
Application number
KR1020190178849A
Other languages
English (en)
Other versions
KR20210085613A (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 KR1020190178849A priority Critical patent/KR102305668B1/ko
Publication of KR20210085613A publication Critical patent/KR20210085613A/ko
Application granted granted Critical
Publication of KR102305668B1 publication Critical patent/KR102305668B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/10Current supply arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Abstract

본 발명의 다양한 실시 예들은 데이터 통신을 수행하는 방법 및 그 전자 장치에 관한 것으로서, 전자 장치는, 통신 모듈, 비휘발성 메모리, 및 상기 통신 모듈 및 상기 비휘발성 메모리와 연결된 마이크로 컨트롤러를 포함하고, 상기 마이크로 컨트롤러는, 지정된 사이클(cycle) 동안 지정된 시간마다 통신 모듈의 진행 상태와 연관된 상황 정보를 상기 비휘발성 메모리에 저장하고, 상기 지정된 사이클 동안 상기 통신 모듈로 공급된 전원의 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별하고, 상기 지정된 사이클 이후의 사이클에서, 상기 최소 전원공급 지속시간 및 상기 평균 전원공급 지속시간에 기반하여 상기 통신 모듈의 상황 정보를 상기 비휘발성 메모리에 저장하며, 하나의 사이클은, 데이터를 송신하기 위해 상기 통신 모듈이 부팅된 시점부터 상기 통신 모듈이 종료된 시점까지의 구간을 나타낼 수 있다. 다른 실시 예들도 가능하다.

Description

데이터 통신을 수행하는 방법 및 그 전자 장치{METHOD FOR PERFORMING DATA COMMUNICATION AND ELECTRONIC DEVICE THEREOF}
본 발명의 다양한 실시 예들은 데이터 통신을 수행하는 방법 및 그 전자 장치에 관한 것이다.
차세대 이동 통신의 새로운 서비스로 각광받고 있는 사물 인터넷(internet of things, IoT)은 통신 사업자와 단말 제조사를 중심으로 큰 관심을 받고 있다. 이에 따라, 3GPP(3rd generation partnership project)와 같은 표준 단체는 IoT를 위한 통신 기술을 표준화(standization)하고 있다. 예를 들어, 3GPP의 릴리즈-13(release-13)은 eMTC(enhanced machine type communication) 및 NB-IoT(narrow band IoT)를 표준화하였다. 이 외, 로라(LoRa), 시그폭스(sigFox) 등 다양한 IoT 통신 기술이 제안된 바 있다
본 발명의 배경기술은 대한민국 공개특허 제2018-0085214호(2018.07.26. 공개, 사물 인터넷 통신 방법 및 그 전자 장치)에 개시되어 있다.
사물 인터넷을 위한 통신 모듈이 작동하는 동안 전원이 불규칙한 주기로 통신 모듈로 공급되는 경우, 통신 모듈의 초기화 등의 에러 요소가 발생할 수 있다. 따라서, 사물 인터넷을 위한 통신 모듈이 작동하는 동안 전원이 불규칙한 주기로 통신 모듈로 공급되는 상태에서 통신 모듈에 발생될 수 있는 에러 요소를 방지하기 위한 방안(solution)이 요구될 수 있다.
본 발명의 다양한 실시 예들은, 사물 인터넷을 위한 통신 모듈이 작동하는 동안 전원이 불규칙한 주기로 통신 모듈로 공급되는 상태에서 통신 모듈의 초기화를 방지하는 방법 및 그 전자 장치에 관하여 개시한다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 통신 모듈, 비휘발성 메모리, 및 상기 통신 모듈 및 상기 비휘발성 메모리와 연결된 마이크로 컨트롤러를 포함하고, 상기 마이크로 컨트롤러는, 지정된 사이클(cycle) 동안 지정된 시간마다 통신 모듈의 진행 상태와 연관된 상황 정보를 상기 비휘발성 메모리에 저장하고, 상기 지정된 사이클 동안 상기 통신 모듈로 공급된 전원의 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별하고, 상기 지정된 사이클 이후의 사이클에서, 상기 최소 전원공급 지속시간 및 상기 평균 전원공급 지속시간에 기반하여 상기 통신 모듈의 상황 정보를 상기 비휘발성 메모리에 저장하며, 하나의 사이클은, 데이터를 송신하기 위해 상기 통신 모듈이 부팅된 시점부터 상기 통신 모듈이 종료된 시점까지의 구간을 나타낼 수 있다.
다양한 실시 예들에 따르면, 상기 마이크로 컨트롤러는, 상기 통신 모듈의 전원 공급이 중단된 이후 상기 통신 모듈의 전원이 재공급되는 경우, 상기 비휘발성 메모리에 저장된 상기 상황 정보에 기반하여 전원 공급이 중단되기 이전에 상기 통신 모듈의 진행 상태를 식별하고, 상기 식별된 진행 상태에 기반하여, 상기 통신 모듈의 동작을 이어서 수행할 수 있다.
상기 마이크로 컨트롤러는, 지정된 횟수의 사이클(cycle) 동안 제 1 시간 간격으로 상기 통신 모듈의 동작진행 상태와 연관된 상황 정보를 상기 비휘발성 메모리에 저장하고, 상기 지정된 횟수의 사이클 동안 상기 통신 모듈로 전원이 공급된 시간을 카운트하여 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별하고, 상기 지정된 횟수의 사이클 이후의 사이클에서, 상기 최소 전원공급 지속시간 및 상기 평균 전원공급 지속시간을 주기로 상기 통신 모듈의 상황 정보를 상기 비휘발성 메모리에 저장하며, 상기 사이클은, 데이터를 송신하기 위해 상기 통신 모듈이 부팅된 시점부터 지정된 동작이 완료되거나 또는 전원공급이 중단되어 상기 통신 모듈이 종료된 시점까지의 구간을 하나의 사이클로 설정한다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 통신 모듈, 비휘발성 메모리, 및 상기 통신 모듈 및 상기 비휘발성 메모리와 연결된 마이크로 컨트롤러를 포함하고, 상기 마이크로 컨트롤러는, 상기 통신 모듈에 전원이 공급되는 동안, 데이터 통신을 위해 상기 통신 모듈로 명령어를 송신하고, 상기 통신 모듈이 상기 명령어를 수행하면, 상기 명령어에 대응하는 상기 통신 모듈의 진행 상태와 연관된 상황 정보를 상기 비휘발성 메모리에 저장할 수 있다.
다양한 실시 예들에 따르면, 상기 마이크로 컨트롤러는, 상기 통신 모듈의 전원 공급이 중단된 이후 상기 통신 모듈의 전원이 재공급되는 경우, 상기 비휘발성 메모리에 저장된 상기 상황 정보에 기반하여 전원 공급이 중단되기 이전에 상기 통신 모듈의 진행 상태를 식별하고, 상기 식별된 진행 상태에 기반하여, 상기 통신 모듈의 동작을 이어서 수행할 수 있다.
다양한 실시 예들에 따르면, 상기 통신 모듈은, 면허대역(licensed)의 통신을 지원할 수 있다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 통신 모듈, 비휘발성 메모리, 및 상기 통신 모듈 및 상기 비휘발성 메모리와 연결된 마이크로 컨트롤러를 포함하고, 상기 마이크로 컨트롤러는, 첫 번째 사이클(cycle) 동안, 데이터 통신을 위해 상기 통신 모듈로 송신되는 복수의 명령어들에 따른 상황 정보를 상기 비휘발성 메모리에 저장하고, 상기 첫 번째 사이클 이후, 상기 복수의 명령어들에 따른 상황 정보에 상기 통신 모듈의 진행 상태와 연관된 정보를 추가하며, 하나의 사이클은, 데이터를 송신하기 위해 상기 통신 모듈이 부팅된 시점부터 상기 통신 모듈이 종료된 시점까지의 구간을 나타낼 수 있다.
다양한 실시 예들에 따르면, 상기 마이크로 컨트롤러는, 상기 통신 모듈의 전원 공급이 중단된 이후 상기 통신 모듈의 전원이 재공급되는 경우, 상기 비휘발성 메모리에 저장된 상기 상황 정보로부터 상기 통신 모듈의 진행 상태와 연관된 정보를 식별하고, 상기 통신 모듈의 진행 상태와 연관된 정보에 기반하여, 상기 통신 모듈의 동작을 이어서 수행할 수 있다.
다양한 실시 예들에 따르면, 상기 통신 모듈은, 면허대역(licensed)의 통신을 지원할 수 있다.
본 발명의 다양한 실시 예들은, 사물 인터넷을 위한 통신 모듈이 작동하는 동안 통신 모듈의 진행 상황에 대한 정보를 저장함으로써, 사물 인터넷을 위한 통신 모듈이 작동하는 동안 전원이 불규칙한 주기로 통신 모듈로 공급되더라도 통신 모듈의 초기화를 방지하는 방지할 수 있다.
도 1은 다양한 실시 예들에 따른 전자 장치의 블록도이다.
도 2는 다양한 실시 예들에 따른 전자 장치로 공급되는 전원을 설명하기 위한 예시도이다.
도 3은 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 일 예를 설명하기 위한 예시도이다.
도 4는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 다른 예를 설명하기 위한 예시도이다.
도 5는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 또 다른 예를 설명하기 위한 예시도이다.
도 6는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 일 예를 설명하기 위한 흐름도이다.
도 7은 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 다른 예를 설명하기 위한 흐름도이다.
도 8는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 또 다른 예를 설명하기 위한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 데이터 통신을 수행하는 방법 및 그 전자 장치를 설명한다.
실시 예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째", 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들어, 하드웨어적 또는 소프트웨어적으로 "~에 적합한", "~하는 능력을 가지는", "~하도록 변경된", "~하도록 만들어진", "~를 할 수 있는", 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들어, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 application processor)를 의미할 수 있다.
도 1은 다양한 실시 예들에 따른 전자 장치의 블록도이다. 도 2는 다양한 실시 예들에 따른 전자 장치로 공급되는 전원을 설명하기 위한 예시도이다. 도 3은 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 일 예를 설명하기 위한 예시도이다. 도 4는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 다른 예를 설명하기 위한 예시도이다. 도 5는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 또 다른 예를 설명하기 위한 예시도이다.
도 1 내지 도 5를 참조하면, 전자 장치(100)는 마이크로 컨트롤러(micro controller unit(MCU))(120), 비휘발성 메모리(130), 및 통신 모듈(140)을 포함할 수 있다. 다만, 이에 제한되지 않는다. 예를 들어 전자 장치(100)는 입력 장치, 출력 장치, 및 센서 모듈 중 적어도 일부를 더 포함할 수도 있다.
다양한 실시 예들에 따르면, 마이크로 컨트롤러(120)는 프로세서 및 휘발성 메모리를 포함할 수 있다. 일 실시 예에 따르면, 프로세서는, 소프트웨어(또는 프로그램)를 실행하여 프로세서에 연결된 전자 장치의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시 예에 따르면, 프로세서는 다른 구성요소(예: 통신 모듈(140))로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드하고, 휘발성 메모리에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다. 일 실시 예에 따르면, 휘발성 메모리는, 전자 장치(100)의 적어도 하나의 구성요소(예: 프로세서)에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다.
다양한 실시 예들에 따르면, 마이크로 컨트롤러(120)는 통신 모듈(140)로 공급되는 전원에 기반하여 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 도 2의 (a)와 같이, 지속적으로 통신 모듈(140)로 전원이 공급되는 경우, 통신 모듈(140)이 안정적으로 동작할 수 있다. 하지만, 도 2의 (b)와 같이 규칙적인 주기로 통신 모듈(140)로 전원이 공급되거나, 또는 도 2의 (c)와 같이 불규칙한 주기로 통신 모듈(140)로 전원이 공급되는 경우, 통신 모듈(140)이 초기화되는 현상(예: 통신을 위한 작업을 처음부터 다시 시작하는 현상)이 방생할 수 있다. 통신 모듈(140)이 초기화되는 경우, 통신을 복구하기 위한 시간 및 전력이 발생할 수 있다. 이에 따라, 마이크로 컨트롤러(120)는 도 2의 (b)와 같이 규칙적인 주기로 통신 모듈(140)로 전원이 공급되거나, 또는 도 2의 (c)와 같이 불규칙한 주기로 통신 모듈(140)로 전원이 공급되는 경우에도 통신 모듈(140)이 초기화되는 현상을 방지하기 위해, 통신 모듈(140)에 전원이 공급되는 동안 통신 모듈(140)의 상황 정보(context information)를 비휘발성 메모리(130)에 저장할 수 있다.
다양한 실시 예들에 따르면, 마이크로 컨트롤러(120)는 전원이 공급되는 시간에 기반하여 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)이 지정된 사이클(cycle) 동안, 지정된 시간마다 통신 모듈(140)의 진행 상황에 대한 정보를 포함하는 상황 정보를 비휘발성 메모리(130)에 저장하고, 지정된 사이클 동안 통신 모듈(140)로 공급된 전원의 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별하고, 지정된 사이클 이후의 사이클부터 최소 전원공급 지속시간 및 평균 전원공급 지속시간에 기반하여 통신 모듈(140)의 진행 상황에 대한 정보를 포함하는 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 구체적으로, 지정된 사이클(예: 3회) 동안, 1초마다 통신 모듈(1140)의 상황 정보를 비휘발성 메모리(130)에 저장하고, 도 3과 같이, 지정된 사이클 동안 단속적으로 전원이 공급(T1 내지 T4)된 경우, 지정된 사이클 내에서 최소 전원공급 지속시간(T-min) 및 평균 전원공급 지속시간(T-avg)이 각각 2초 및 5초임을 식별하고, 지정된 사이클 이후, 전원이 공급(예: T5, T6, 및 T7)되면, 전원이 공급된 시점부터 2초가 경과한 시점과 5초가 경과한 시점에 각각 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 이후, 마이크로 컨트롤러(120)는 통신 모듈(140)의 전원 공급이 불규칙하게 중단되더라도, 비휘발성 메모리(130)에 저장된 상황 정보를 이용하여 전원이 중단되기 이전의 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)의 초기화를 방지할 수 있다. 일 실시 예에 따르면, 하나의 사이클은, 데이터를 송신하기 위해 통신 모듈(140)이 부팅된 시점부터 통신 모듈(140)이 종료된 시점(또는 소켓 종료 시점)까지의 구간을 나타낼 수 있다.
다양한 실시 예들에 따르면, 마이크로 컨트롤러(120)는 통신 모듈(140)로 송신되는 명령어에 기반하여 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)로 송신하는 명령어를 비휘발성 메모리(130)에 저장하고, 통신 모듈(140)이 송신한 명령어에 대한 수행을 완료하면, 통신 모듈(140)의 진행 상황에 대한 정보를 포함하는 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 구체적으로, 마이크로 컨트롤러(120)는 도 4와 같이, 모듈 부팅 명령어를 통신 모듈(140)로 송신한 이후, 통신 모듈(140)이 모듈 부팅 명령어에 대한 수행을 완료하면(또는 USIM 확인 명령어를 통신 모듈(140)로 송신하는 시점에) 통신 모듈(140)의 제1 상황 정보(Context1)를 비휘발성 메모리(130)에 저장하고, USIM 확인 명령어를 통신 모듈(140)로 송신한 이후, 통신 모듈(140)이 USIM 확인 명령어에 대한 수행을 완료하면(또는 네트워크망 등록 명령어를 송신하는 시점에) 통신 모듈(140)의 제2 상황 정보(Context2)를 비휘발성 메모리(130)에 저장할 수 있다. 이후, 마이크로 컨트롤러(120)는 통신 모듈(140)의 전원 공급이 불규칙하게 중단되더라도, 비휘발성 메모리(130)에 저장된 상황 정보를 이용하여 전원이 중단되기 이전의 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)의 초기화를 방지할 수 있다. 예를 들어, 도 4와 같이, 통신 모듈(140)이 제3 네트워크망 등록 명령어를 수행하는 도중 통신 모듈(140)의 전원 공급이 중단된 이후 통신 모듈(140)에 전원이 다시 공급된 경우, 마이크로 컨트롤러(120)는 제2 상황 정보에 기반하여 통신 모듈(140)이 USIM 확인 명령어에 대한 수행을 완료했음을 인지하고, 제3 네트워크망 등록 명령어를 통신 모듈(140)로 송신함으로써, 통신 모듈(140)의 초기화를 방지할 수 있다.
다양한 실시 예들에 따르면, 마이크로 컨트롤러(120)는 통신 모듈(140)로 송신되는 명령어에 기반하여 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 첫 번째 사이클 동안, 통신 모듈(140)로 송신된 각각의 명령어에 대응하는 상황 정보에 진행 상태 비트(예: 1비트)를 추가하여 비휘발성 메모리(130)에 저장하고, 이후의 사이클에서, 각각의 명령어에 대응하는 상황 정보 중 현재 통신 모듈(140)로 송신한 명령어에 대응하는 상황 정보의 진행 상태 비트를 '1'로 갱신(다른 명령어에 대응하는 상황 정보의 진행 상태 비트는 '0'으로 갱신 또는 유지)할 수 있다. 구체적으로, 마이크로 컨트롤러(120)는 도 5와 같이, 첫 번째 사이클 동안 비휘발성 메모리(130)에 통신 모듈(140)로 송신된 각각의 명령어에 대응하는 상황 정보에 진행상태 표시 비트를 추가하여 저장하고, 이후의 사이클에서, 통신 모듈(140)로 송신한 명령어에 대응하는 상황 정보의 진행 상태 비트를 '1'로 갱신(다른 명령어에 대응하는 상황 정보의 진행 상태 비트는 '0'으로 갱신 또는 유지)할 수 있다. 이후, 마이크로 컨트롤러(120)는 통신 모듈(140)의 전원 공급이 불규칙하게 중단되더라도, 비휘발성 메모리(130)에 저장된 상황 정보를 이용하여 전원이 중단되기 이전의 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)의 초기화를 방지할 수 있다. 예를 들어, 도 5와 같이, 진행상태 비트가 추가된 상황 정보가 비휘발성 메모리(130)에 저장된 이후, 통신 모듈(140)의 전원 공급이 중단된 이후 통신 모듈(140)에 전원이 다시 공급되면, 마이크로 컨트롤러(120)는 상황 정보에 추가된 진행상태 비트값에 기반하여 통신 모듈(140)의 진행 상태를 식별하고, 식별된 통신 모듈(140)의 진행 상태에 기반하여, 전원 공급이 중단되기 이전에 통신 모듈(140)이 수행한 동작을 이어서 수행함으로써, 통신 모듈(140)의 초기화를 방지할 수 있다.
다양한 실시 예들에 따르면, 통신 모듈(140)은 LPWAN(예: NB-IoT 네트워크)을 지원할 수 있다. 예를 들어, 통신 모듈(140)은 미리 정해진(pre-determined) 주파수 대역(band)을 통해 네트워크와 데이터를 송수신할 수 있다. 미리 정해진 주파수 대역은 다른 셀룰러(cellular) 네트워크(예: LTE(long term evolution), UMTS(universal mobile telecommunication system), 또는 GSM(global system for mobile communications))에서 이용되는 주파수 대역의 일부로써 이용되거나(이하, ‘인밴드(In-Band)’로 지칭될 수 있다), 다른 셀룰러 네트워크에서 이용되는 보호 대역(guard band)을 포함하거나, 또는 다른 셀룰러 네트워크에서 이용되는 주파수 대역과 전용의(dedicated) 주파수 대역으로써 이용될 수 있다(이하, ‘스탠드얼론(standalone)’으로 지칭될 수 있다). 다른 예를 들어, 비용 절감 및 배터리 소모 절약을 위하여 통신 모듈(140)은 제한된 대역폭(bandwidth)을 통해 네트워크와 통신할 수 있다. 제한된 대역폭은 다른 셀룰러 네트워크에서 이용되는 대역폭보다 좁고(narrow), 예를 들어, 20 MHz, 1.4 MHz, 또는 180KHz일 수 있다.
다양한 실시 예들에 따르면, 통신 모듈(140)은 Cat-M(category-machine), 협대역-사물인터넷(narrowband-IoT(NB-IoT)), 또는 EC-GSM(extended coverage GSM for IoT)과 같은 다양한 통신 규격에 따라 네트워크(예: 셀룰러 네트워크, LPWAN)에 접속할 수 있다. 예를 들어, LPWAN은 NB-IoT 네트워크, Cat-M 네트워크, 또는 EC-GSM 네트워크 중 적어도 하나를 포함할 수 있다. 예를 들어, Cat-M은 Cat-M1 또는 LTE-M으로 참조될 수 있다. 예를 들어, NB-IoT는 Cat-M2로 참조될 수 있다.
상술한 바와 같이, 전자 장치(100)는 통신 모듈(140)의 진행 상태와 연관된 상황 정보를 비휘발성 메모리(130)에 저장하고, 이를 이용하여 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)로 전원이 불규칙하게 공급되는 상태에서도 통신 모듈(140)의 초기화가 발생하는 것을 방지할 수 있다. 더하여, 전자 장치(100)는 통신 모듈(140)의 초기화가 발생되는 것을 방지함으로써, 통신 모듈(140)의 초기화에 따른 시간 및 전력을 절약할 수 있다.
도 6는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 일 예를 설명하기 위한 흐름도이다.
도 6을 참조하면, 동작 601에서, 전자 장치(예: 도 1의 전자 장치(100)의 마이크로 컨트롤러(120)는 지정된 시간마다 통신 모듈(140)의 진행 상태와 연관된 상황 정보를 비휘발성 메모리(예: 도 1의 비휘발성 메모리(130))에 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 지정된 사이클(예: 3회) 동안, 1초마다 통신 모듈(1140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 일 실시 예에 따르면, 하나의 사이클은, 데이터를 송신하기 위해 통신 모듈(140)이 부팅된 시점부터 통신 모듈(140)이 종료된 시점(또는 소켓 종료 시점)까지의 구간을 나타낼 수 있다.
동작 603에서, 마이크로 컨트롤러(120)는 지정된 조건을 만족함을 식별한 것에 응답하여 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)이 지정된 사이클의 동작을 완료하면, 지정된 사이클 동안 통신 모듈(140)로 공급된 전원의 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별할 수 있다.
동작 605에서, 마이크로 컨트롤러(120)는 최소 전원공급 지속시간 및 평균 전원공급 지속시간이 식별되면, 최소 전원공급 지속시간 및 평균 전원공급 지속시간에 기반하여 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 지정된 사이클 이후의 사이클에서 통신 모듈(140)로 전원이 공급되면, 최소 전원공급 지속시간 및 평균 전원공급 지속시간 각각에서 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다.
동작 607에서, 마이크로 컨트롤러(120)는 상황 정보에 기반하여 통신 모듈(140)의 진행 상황을 복구할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)의 전원 공급이 중단된 이후, 통신 모듈(140)로 전원이 재공급되는 경우, 통신 모듈(140)의 전원 공급이 중단되기 이전에 비휘발성 메모리(130)에 저장된 상황 정보에 기반하여 전원 공급이 중단되기 이전에 통신 모듈(140)의 진행 상태를 식별하고, 식별된 진행 상태에 기반하여 통신 모듈(140)의 동작을 이어서 수행할 수 있다.
상술한 바와 같이, 전자 장치(100)는 통신 모듈(140)의 진행 상태와 연관된 상황 정보를 비휘발성 메모리(130)에 저장하고, 이를 이용하여 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)로 전원이 불규칙하게 공급되는 상태에서도 통신 모듈(140)의 초기화가 발생하는 것을 방지할 수 있다. 더하여, 전자 장치(100)는 통신 모듈(140)의 초기화가 발생되는 것을 방지함으로써, 통신 모듈(140)의 초기화에 따른 시간 및 전력을 절약할 수 있다.
도 7은 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 다른 예를 설명하기위한 흐름도이다.
동작 701에서, 전자 장치(예: 도 1의 전자 장치(100))의 마이크로 컨트롤러(예: 도 1의 마이크로 컨트롤러(120))는 통신 모듈(예: 도 1의 통신 모듈(140))로 송신되는 명령어에 대한 완료됨을 식별한 것에 응답하여 통신 모듈(140)의 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)로 송신하는 명령어를 비휘발성 메모리(130)에 저장하고, 통신 모듈(140)이 명령어에 대한 수행을 완료하면, 통신 모듈(140)의 진행 상황에 대한 정보를 포함하는 상황 정보를 비휘발성 메모리(130)에 저장할 수 있다.
동작 703에서, 마이크로 컨트롤러(120)는 상황 정보에 기반하여 통신 모듈(140)의 진행 상황을 복구할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)의 전원 공급이 중단된 이후, 통신 모듈(140)로 전원이 재공급되는 경우, 통신 모듈(140)의 전원 공급이 중단되기 이전에 비휘발성 메모리(130)에 저장된 상황 정보에 기반하여 전원 공급이 중단되기 이전에 통신 모듈(140)의 진행 상태를 식별하고, 식별된 진행 상태에 기반하여 통신 모듈(140)의 동작을 이어서 수행할 수 있다.
상술한 바와 같이, 전자 장치(100)는 통신 모듈(140)의 진행 상태와 연관된 상황 정보를 비휘발성 메모리(130)에 저장하고, 이를 이용하여 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)로 전원이 불규칙하게 공급되는 상태에서도 통신 모듈(140)의 초기화가 발생하는 것을 방지할 수 있다. 더하여, 전자 장치(100)는 통신 모듈(140)의 초기화가 발생되는 것을 방지함으로써, 통신 모듈(140)의 초기화에 따른 시간 및 전력을 절약할 수 있다.
도 8는 다양한 실시 예들에 따른 전자 장치에서 통신 모듈의 초기화를 방지하는 방법의 또 다른 예를 설명하기 위한 흐름도이다.
도 8을 참조하면, 동작 801에서, 전자 장치(예: 도 1의 전자 장치(100))의 마이크로 컨트롤러(예: 도 1의 마이크로 컨트롤러(120))는 통신 모듈(예: 도 1의 통신 모듈(140))로 송신되는 각 명령어에 따른 상황 정보를 저장할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 첫 번째 사이클 동안, 통신 모듈(140)로 송신된 각각의 명령어에 대응하는 상황 정보에 진행 상태 비트(예: 1비트)를 추가하여 비휘발성 메모리(130)에 저장할 수 있다.
동작 803에서, 마이크로 컨트롤러(120)는 통신 모듈(140)의 진행 상태를 비휘발성 메모리(130)에 저장된 상황 정보에 추가할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 첫 번째 사이클 동안, 통신 모듈(140)로 송신된 각각의 명령어에 대응하는 상황 정보에 진행 상태 비트(예: 1비트)가 추가되어 비휘발성 메모리(130)에 저장되면, 이후의 사이클에서 각각의 명령어에 대응하는 상황 정보 중 현재 통신 모듈(140)로 송신한 명령어에 대응하는 상황 정보의 진행 상태 비트를 '1'로 갱신하고, 다른 명령어에 대응하는 상황 정보의 진행 상태 비트는 '0'으로 갱신(또는 유지)할 수 있다.
동작 805에서, 마이크로 컨트롤러(120)는 진행 상황 정보에 기반하여 통신 모듈의 진행 상황을 복구할 수 있다. 예를 들어, 마이크로 컨트롤러(120)는 통신 모듈(140)의 전원 공급이 중단된 이후, 통신 모듈(140)로 전원이 재공급되는 경우, 비휘발성 메모리(130)에 저장된 진행 상황 정보 중 진행 상태 비트가 '1'인 상황 정보를 식별하고, 식별된 상황 정보에 기반하여 전원 공급이 중단되기 이전에 통신 모듈(140)의 진행 상태를 식별하고, 식별된 진행 상태에 기반하여 통신 모듈(140)의 동작을 이어서 수행할 수 있다.
상술한 바와 같이, 전자 장치(100)는 통신 모듈(140)의 진행 상태와 연관된 상황 정보를 비휘발성 메모리(130)에 저장하고, 이를 이용하여 통신 모듈(140)의 동작을 이어서 수행함으로써, 통신 모듈(140)로 전원이 불규칙하게 공급되는 상태에서도 통신 모듈(140)의 초기화가 발생하는 것을 방지할 수 있다. 더하여, 전자 장치(100)는 통신 모듈(140)의 초기화가 발생되는 것을 방지함으로써, 통신 모듈(140)의 초기화에 따른 시간 및 전력을 절약할 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 도 1의 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)에 저장된 하나 이상의 인스트럭션들(instructions)을 포함하는 소프트웨어로서 구현될 수 있다. 예를 들면, 기기(예: 도 1의 전자 장치(101))의 프로세서(예: 도 1의 마이크로 컨트롤러(120) 내의 프로세서)는, 저장 매체로부터 저장된 하나 이상의 인스트럭션들 중 적어도 하나의 인스트럭션을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 호출된 적어도 하나의 인스트럭션에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 할 수 있다. 하나 이상의 인스트럭션들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
다양한 실시 예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시 예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
101 : 전자 장치
120 : 프로세서
130 : 비휘발성 메모리
140 : 통신 모듈

Claims (9)

  1. 통신 모듈;
    비휘발성 메모리; 및
    상기 통신 모듈 및 상기 비휘발성 메모리와 연결된 마이크로 컨트롤러를 포함하고,
    상기 마이크로 컨트롤러는,
    지정된 횟수의 사이클(cycle) 동안 제 1 시간 간격으로 상기 통신 모듈의 동작진행 상태와 연관된 상황 정보를 상기 비휘발성 메모리에 저장하고,
    상기 지정된 횟수의 사이클 동안 상기 통신 모듈로 전원이 공급된 시간을 카운트하여 최소 전원공급 지속시간 및 평균 전원공급 지속시간을 식별하고,
    상기 지정된 횟수의 사이클 이후의 사이클에서, 상기 최소 전원공급 지속시간 및 상기 평균 전원공급 지속시간을 주기로 상기 통신 모듈의 상황 정보를 상기 비휘발성 메모리에 저장하며,
    상기 사이클은, 데이터를 송신하기 위해 상기 통신 모듈이 부팅된 시점부터 전원공급이 중단되어 상기 통신 모듈이 종료된 시점까지의 구간을 하나의 사이클로 설정하는 전자 장치.
  2. 제1항에 있어서,
    상기 마이크로 컨트롤러는,
    상기 통신 모듈의 전원 공급이 중단된 이후 상기 통신 모듈의 전원이 재공급되는 경우, 상기 비휘발성 메모리에 저장된 상기 상황 정보에 기반하여 전원 공급이 중단되기 이전에 상기 통신 모듈의 진행 상태를 식별하고,
    상기 식별된 진행 상태에 기반하여, 상기 통신 모듈의 동작을 이어서 수행하는 전자 장치.
  3. 제1항에 있어서,
    상기 통신 모듈은, 면허대역(licensed)의 통신을 지원하는 전자 장치.
  4. 제1항에 있어서,
    상기 마이크로 컨트롤러는,
    상기 통신 모듈에 전원이 공급되는 동안, 데이터 통신을 위해 상기 통신 모듈로 명령어를 송신하고,
    상기 통신 모듈이 상기 명령어를 수행하면, 상기 명령어에 대응하는 상기 상황 정보에 진행 상태 비트를 추가하여 상기 비휘발성 메모리에 저장하는 전자 장치.
  5. 제4항에 있어서,
    상기 마이크로 컨트롤러는,
    상기 통신 모듈의 전원 공급이 중단된 이후 상기 통신 모듈의 전원이 재공급되는 경우, 상기 비휘발성 메모리에 저장된 상기 상황 정보와 상기 진행 상태 비트에 기반하여 전원 공급이 중단되기 이전에 상기 명령어에 대한 상기 통신 모듈의 진행 상태를 식별하고, 상기 통신 모듈의 동작을 이어서 수행하는 전자 장치.
  6. 삭제
  7. 제4항에 있어서,
    상기 마이크로 컨트롤러는,
    제 1 사이클(cycle) 동안, 데이터 통신을 위해 상기 통신 모듈로 송신되는 복수의 명령어들에 대하여 각각의 명령어에 연관된 상기 상황 정보에 상기 진행 상태 비트를 추가하여 상기 비휘발성 메모리에 저장하고,
    상기 제 1 사이클 이후, 상기 복수의 명령어들에 연관된 상기 상황 정보의 상기 진행 상태 비트를 갱신하여 상기 통신 모듈의 진행 상태와 연관된 정보를 저장하는 전자 장치.
  8. 삭제
  9. 삭제
KR1020190178849A 2019-12-31 2019-12-31 데이터 통신을 수행하는 방법 및 그 전자 장치 KR102305668B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190178849A KR102305668B1 (ko) 2019-12-31 2019-12-31 데이터 통신을 수행하는 방법 및 그 전자 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190178849A KR102305668B1 (ko) 2019-12-31 2019-12-31 데이터 통신을 수행하는 방법 및 그 전자 장치

Publications (2)

Publication Number Publication Date
KR20210085613A KR20210085613A (ko) 2021-07-08
KR102305668B1 true KR102305668B1 (ko) 2021-09-29

Family

ID=76893753

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190178849A KR102305668B1 (ko) 2019-12-31 2019-12-31 데이터 통신을 수행하는 방법 및 그 전자 장치

Country Status (1)

Country Link
KR (1) KR102305668B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040091032A1 (en) * 2002-11-08 2004-05-13 Ceceli Duchi Monitoring system for a communications network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040091032A1 (en) * 2002-11-08 2004-05-13 Ceceli Duchi Monitoring system for a communications network

Also Published As

Publication number Publication date
KR20210085613A (ko) 2021-07-08

Similar Documents

Publication Publication Date Title
US11310730B2 (en) Method of connecting to network for home appliance, home appliance, and method of connecting to network for home appliance system
CN110621011B (zh) 一种基于蓝牙设备端的ota固件升级方法及系统
RU2009132388A (ru) Согласование загрузки между несколькими способными к загрузке устройствами
US10750570B2 (en) Call termination method, application processor, and modem
US20150309552A1 (en) Enhancement in linux ondemand governor for periodic loads
EP3972202A1 (en) Smart home system control method and apparatus, electronic device and storage medium
CN105101319A (zh) 网络切换方法和终端设备
CN105100021A (zh) 一种设备管理会话的触发方法、设备及系统
WO2020168567A1 (zh) 数据处理方法、装置以及移动终端
CN112256294A (zh) 终端应用的部署方法、云平台、系统及存储介质
CN107526584B (zh) 数据接入方法和装置
KR102305668B1 (ko) 데이터 통신을 수행하는 방법 및 그 전자 장치
CN111722857A (zh) 软件开发工具包的更新方法、装置、电子设备及存储介质
CN104104701A (zh) 在线服务的配置更新的方法和系统
CN105791514B (zh) 一种应用启动监测方法及装置
US10602342B1 (en) SIM over-the-air update for non-IP devices
CN107528898B (zh) 一种实现物联网模块的方法及装置
CN112527589A (zh) 监控进程的方法和监控进程的装置
CN113448607B (zh) 用于固件升级的方法、装置和智能家电
WO2019047519A1 (zh) 一种窄带物联网升级方法和装置、及系统
US20190364134A1 (en) Data processing method and apparatus for client
CN113515299A (zh) 软件开发工具包sdk热升级方法、装置、设备及存储介质
CN107528714B (zh) 脚本处理方法、装置、系统及路由器
CN109960657B (zh) 一种测试环境部署方法及相关装置
US8473007B2 (en) IC card that discards proactive command at predetermined timing and resumes transmission of proactive command after initialization

Legal Events

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