KR20210072356A - 전자장치와 그의 제어방법, 및 저장매체 - Google Patents

전자장치와 그의 제어방법, 및 저장매체 Download PDF

Info

Publication number
KR20210072356A
KR20210072356A KR1020190162590A KR20190162590A KR20210072356A KR 20210072356 A KR20210072356 A KR 20210072356A KR 1020190162590 A KR1020190162590 A KR 1020190162590A KR 20190162590 A KR20190162590 A KR 20190162590A KR 20210072356 A KR20210072356 A KR 20210072356A
Authority
KR
South Korea
Prior art keywords
channel
time
electronic device
time occupancy
occupancy
Prior art date
Application number
KR1020190162590A
Other languages
English (en)
Inventor
조창래
다누카앙킷
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020190162590A priority Critical patent/KR20210072356A/ko
Priority to PCT/KR2020/017160 priority patent/WO2021118129A1/ko
Publication of KR20210072356A publication Critical patent/KR20210072356A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0284Traffic management, e.g. flow control or congestion control detecting congestion or overload during communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43637Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0252Traffic management, e.g. flow control or congestion control per individual bearer or channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

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

Abstract

무선인터페이스부와 무선인터페이스부를 통해 중계장치가 제공하는 채널을 이용하여 외부장치와 무선 통신하도록 제어 동작을 수행하는 프로세서를 포함하는 전자장치가 개시된다. 프로세서는 상기 중계장치가 제공하는 전체 채널 중에서 현재 이용되는 채널의 시간 점유도를 확인(identify)하고, 상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 수행한다.

Description

전자장치와 그의 제어방법, 및 저장매체{ELECTRONIC DEVICE AND METHOD FOR CONTROLLING THE SAME, AND STORAGE MEDIUM}
본 발명은 무선채널을 이용한 스트리밍 컨텐츠 서비스에서 사용자 경험을 개선할 수 있는 전자장치와 그의 제어방법에 관한 것이다.
WiFi와 같은 무선 통신을 이용하여 스트리밍으로 영상을 시청할 때 많은 사용자들이 버퍼링에 따른 영상 표시가 정지되거나 영상의 화질이 저하되는 불만족스러운 경험을 하고 있다. 이러한 현상은 많은 다른 기기들이 동일한 WiFi 채널을 사용하는데 따른 혼잡함에 기인한다.
이를 해결하기 위해, 사용자는 동일한 채널을 사용하는 다른 기기들을 정지시키거나 수동으로 WiFi 채널이나 밴드를 변경하였다. 그러나, 사용자는 정지시켜야 할 기기들이 얼마나 많은지 또는 가장 여유 있는 WiFi 채널이 무엇인지 알 수 없다.
본 발명의 목적은, 자동으로 무선채널의 통신 상태를 최적의 상태로 유지함으로써 사용자 경험을 향상시킬 수 있는 컨텐츠 전자장치 및 그의 제어방법을 제공하는 데에 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 전자장치가 제공된다. 전자장치는, 무선인터페이스부와, 상기 무선인터페이스부를 통해 중계장치가 제공하는 채널을 이용하여 외부장치와 무선 통신하도록 제어 동작을 수행하는 프로세서를 포함한다. 상기 프로세서는 상기 중계장치가 제공하는 전체 채널 중에서 현재 이용되는 채널의 시간 점유도를 확인(identify)하고, 상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 수행한다.
상기 시간 점유를 확보하는 동작은 상기 중계장치와의 무선 통신에 사용되는 주파수 밴드 변경, 또는 새로운 중계장치 변경 중 적어도 하나를 포함할 수 있다.
상기 프로세서는 소정 시간 동안에, 전체 채널의 통신에 이용되고 있는 채널 비지 타임(channel busy time) 값과 이용 가능한 채널 액티브 타임(channel active time) 값의 비율에 기초하여 상기 현재 채널의 시간 점유도를 산출할 수 있다.
상기 프로세서는, 서로 시간적으로 이격된 복수의 시점에서 얻어진 전체 채널의 채널 비지 타임 값들과 채널 액티브 타임 값들의 변화에 기초하여 상기 현재 채널의 시간 점유도를 산출할 수 있다.
상기 프로세서는, 소정의 시간 동안에 기정의된 횟수로 상기 현재 채널의 시간 점유도를 확인하고, 상기 기정의된 횟수의 시간 점유도의 평균값이 상기 임계값을 초과하는지를 확인할 수 있다.
상기 프로세서는 상기 채널을 이용하여 컨텐츠를 스트리밍으로 수신하는 애플리케이션의 통신 트래픽 이벤트에 따라 상기 채널의 시간 점유도를 확인할 수 있다.
상기 통신 트래픽 이벤트는 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트를 포함할 수 있다.
상기 임계값은 상기 컨텐츠의 품질에 따라 다르게 정의될 수 있다.
전자장치는 디스플레이부를 더 포함하며, 상기 프로세서는 상기 채널의 통신 상태를 나타내는 UI를 상기 디스플레이부에 표시할 수 있다.
본 발명의 실시예에 따른 전자장치의 제어방법이 제공된다. 전자장치의 제어방법은 무선인터페이스부를 통해 중계장치가 제공하는 채널을 이용하여 외부장치와 무선 통신하는 단계와, 상기 중계장치가 제공하는 전체 채널 중에서 현재 이용하는 채널의 시간 점유도를 확인(identify)하는 단계와, 상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 수행하는 단계를 포함한다.
컴퓨터에 의해 실행되는 컴퓨터 프로그램이 저장되는, 컴퓨터 판독 가능 기록매체가 제공된다. 상기 컴퓨터 프로그램은, 중계장치가 제공하는 전체 채널 중에서 현재 이용되는 채널의 시간 점유도를 확인(identify)하고, 상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 실행한다.
본 발명에 의한 전자장치는 간단한 방식으로 무선 채널의 상태를 자동으로 검출하고 여유 있는 밴드 또는 중계장치로 전환하여 컨텐츠 스트리밍 서비스의 사용자 경험을 향상시킬 수 있다.
도 1은 본 발명의 제1실시예에 따라 중계장치를 이용한 무선 통신으로 서버로부터 컨텐츠를 스트리밍으로 서비스하는 전자장치를 나타낸 도면이다.
도 2는 도 1의 전자장치의 구성을 나타내는 블록도이다.
도 3은 본 발명의 실시예에 따른 전자장치의 WiFi모듈 구성을 나타낸 블록도이다.
도 4는 도 2의 전자장치의 제어방법을 나타내는 순서도이다.
도 5는 본 발명의 실시예에 따른 제1프로세서의 동작방법을 나타내는 순서도이다.
도 6은 본 발명의 실시예에 따른 프레임웍(WiFi매니저)의 동작 방법을 나타내는 순서도이다.
도 7은 본 발명의 실시예에 따른 디스플레이부의 동작 방법을 나타내는 순서도이다.
도 8은 디스플레이부에 표시된 UI를 나타낸 도면이다.
도 9는 24초 동안에 8회에 걸쳐 검출한 채널 시간 점유도의 예를 나타낸 그래프이다.
도 10은 24초 동안에 8회에 걸쳐 검출한 채널 시간 점유도의 다른 예를 나타낸 그래프이다.
도 11은 도 8의 아이콘을 선택하였을 때 나타나는 팝업메시지를 나타낸다.
이하에서는 첨부 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 도면에서 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 구성요소를 지칭하며, 도면에서 각 구성요소의 크기는 설명의 명료성과 편의를 위해 과장되어 있을 수 있다. 다만, 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 이하의 실시예에 설명된 구성 또는 작용으로만 한정되지는 않는다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다.
본 문서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 발명의 실시예에서, 제1, 제2 등과 같이 서수를 포함하는 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
또한, 본 발명의 실시예에서 '상부', '하부', '좌측', '우측', '내측', '외측', '내면', '외면', '전방', '후방' 등의 용어는 도면을 기준으로 정의한 것이며, 이에 의해 각 구성요소의 형상이나 위치가 제한되는 것은 아니다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 서브 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서의 다양한 실시예들에 따른 전자장치(1)는, 다양한 종류의 컨텐츠 또는 서비스를 제공하는 전자기기, 예를 들면, TV, 인공지능(AI) 스피커, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA, PMP(portable multimedia player), MP3 플레이어, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 전자장치(1)는, 예를 들면, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스, 게임 콘솔, 전자 사전, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 전자 장치(1)는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM, 상점의 POS(point of sales), 또는 사물 인터넷 장치 (예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
본 문서에서, 사용자라는 용어는 전자장치(1)를 사용하는 사람 또는 전자장치(1)를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1은 본 발명의 제1실시예에 따라 중계장치(2)를 이용한 무선 통신으로 서버(3)로부터 컨텐츠를 스트리밍으로 서비스하는 전자장치(1)를 나타낸 도면이다.
도 1에 나타낸 바와 같이, 전자장치(1)는 영상 컨텐츠를 표시하는 텔레비전으로 구현될 수 있다. 물론, 전자장치(1)는 텔레비전으로만 한정되지 않는다.
전자장치(1)는 중계장치(2)를 통해 서버(3)로부터 영상/음성 컨텐츠를 스트리밍으로 표시할 수 있다. 이때, 전자장치(1)는 유무선 네트워크를 통해 영상/음성 컨텐츠를 표시하는 애플리케이션(App)이 설치될 수 있다.
중계장치(2)는 Access Point(AP), 라우터(Router), 게이트웨이(Gateway), 허브(hub) 등을 포함할 수 있다. 중계장치(2)는 복수의 전자기기, 예를 들면 전자장치(1), AI스피커(1-2), 스마트폰(1-3) 등을 동일 또는 다른 채널을 이용하여 서버(3)에 무선 또는 유선 인터넷으로 연결할 수 있게 한다.
중계장치(2)는 2.4GHz 및/또는 5Ghz 밴드를 지원할 수 있다. 중계장치(2)는 통합된 또는 분리된 복수의 중계장치들로 구성될 수도 있다. 중계장치(2)는 유선인터페이스를 포함할 수도 있다. 중계장치(2)는 적어도 하나의 USB포트를 포함할 수도 있다.
서버(3)는 영상/음성 컨텐츠를 중계장치(2)를 통해 전자장치(1), AI스피커(1-2), 스마트폰(1-3) 등에 제공하는 컨텐츠서버일 수 있다.
서버(3)는 전자장치(1), AI스피커(1-2), 스마트폰(1-3) 등을 무선 네트워크로 연결하여 제어하는 IoT 서버일 수 있다.
서버(3)는 전자장치(1), AI스피커(1-2), 스마트폰(1-3) 등을 통해 입력된 음성을 인식하는 음성인식 서버일 수 있다. 서버(3)는 다양한 서비스를 제공하는 통합서버 또는 개별적으로 서비스를 제공하는 다수의 서버로 구현될 수 있다.
AI스피커(1-2)는 예를 들면 텔레비전, 에어컨, 냉장고, 기타 IoT장치들을 제어하는 앱이 설치될 수 있다. AI스피커(1-2)는 사용자의 음성명령을 수신, 인식, 및 명령에 따른 동작을 수행하는 음성인식 어시스턴트를 탑재할 수 있다. AI스피커(1-2)는 사용자 명령에 따라 처리한 영상을 텔레비전에 전달하여 표시하도록 할 수 있다. 물론, AI스피커(1-2)는 자체적으로 디스플레이를 포함하여 영상컨텐츠를 표시할 수도 있다.
스마트폰(1-3)은 텔레비전을 제어하기 위한 리모컨 앱이 설치될 수 있다. 또한, 스마트폰(1-3)은 사용자의 음성을 수신하는 마이크를 포함할 수 있다. 스마트폰(1-3)은 내장된 마이크를 통해 사용자의 아날로그 음성신호를 수신하여 디지털화 하여 텔레비전으로 전송할 수 있다. 스마트폰(1-3)은 수신된 음성을 자체적으로 인식하는 음성인식 기능을 포함할 수 있다.
전자장치(1)는 셋탑박스를 통해 영상/음성 컨텐츠를 공급받을 수 있다.
전자장치(1)는 리모컨에 의해 제어될 수 있다.
리모컨은 사용자의 음성 명령을 수신하는 마이크를 포함할 수 있다. 리모컨은 아날로그 음성 신호를 디지털화 하여 예를 들면 블루투스 등으로 전자장치(1) 측으로 전송할 수 있다.
도 2는 도 1의 전자장치(1)의 구성을 나타내는 블록도이다.
전자장치(1)는 외부장치, 예를 들면 서버(3)로부터 각종 데이터, 예를 들면 영상/음성 컨텐츠를 수신할 수 있는 제1인터페이스부(11)를 포함할 수 있다.
제1인터페이스부(11)는 제1유선인터페이스부1~6(112)과 제1무선인터페이스부1~3(114)을 포함할 수 있다.
제1유선인터페이스부1은 방송신호를 수신하기 위한 지상파/위성방송 안테나 연결 튜너, 케이블 방송 케이블 연결 인터페이스 등을 포함할 수 있다.
제1유선인터페이스부2는 영상기기 연결을 위한 HDMI, DP, DVI, Component, S-Video, 컴포지트(RCA 단자) 등을 포함할 수 있다.
제1유선인터페이스부3은 범용 전자기기 연결을 위한 USB 인터페이스 등을 포함할 수 있다.
제1유선인터페이스부4는 광케이블 기기의 연결 인터페이스를 포함할 수 있다.
제1유선인터페이스부5는 헤드셋, 이어폰, 외부 스피커 등의 오디오기기 연결 인터페이스를 포함할 수 있다.
제1유선인터페이스부6은 이더넷 등 유선 네트워크 기기의 연결 인터페이스를 포함할 수 있다.
제1무선인터페이스부1은 적절한 통신 규약을 지원하는 무선 통신 칩을 포함할 수 있다. 제1무선인터페이스부1은 IEEE 802.11 표준 등 다양한 통신 표준을 이용하여 통신을 수행할 수 있다.
제1무선인터페이스부1은 적어도 하나의 무선 통신 규약(protocol)을 지원할 수 있다. 예를 들어, 제1무선인터페이스부1은 WiFi, 블루투스, ZigBee, Z-wave, RFID, WiGig, WirelessHD, UWB(Ultra-Wide Band), Wireless USB, NFC(Near Field Communication) 등 무선 네트워크 기기의 연결 인터페이스를 포함할 수 있다.
일 실시예로서, WiFi는 2.4GHz 밴드와 5GHz 밴드를 모두 지원할 수 있다.
제1무선인터페이스부2는 리모컨신호 송신 및/또는 수신을 위한 IR 송수신 모듈을 포함할 수 있다.
제1무선인터페이스3은 2G ~ 5G 등 이동통신기기 연결 인터페이스를 포함할 수 있다.
제1인터페이스부(11)는 외부장치, 예를 들면 AI스피커(1-2), 스마트폰(1-3), 서버(3) 각각에 대해 전용으로 통신을 수행하는 전용통신모듈을 포함할 수 있다.
제1인터페이스부(11)는 외부장치들, 예를 들면 AI스피커(1-2), 스마트폰(1-3), 서버(3) 모두와 공용통신모듈, 예를 들면 WiFi 모듈을 통해 통신을 수행할 수 있다.
제1인터페이스부(11)는 입력인터페이스부와 출력인터페이스부를 포함할 수도 있다. 이때, 입력인터페이스부와 출력인터페이스부는 하나의 모듈로 통합되거나 별도의 모듈로 구현될 수도 있다.
전자장치(1)는 외부로부터 소리를 수신할 수 있는 마이크(12)를 포함할 수 있다. 전자장치(1)는 사용자의 음성 명령을 수신할 수 있다.
전자장치(1)는 컴퓨터에 의해 판독 가능한 기록매체로서, 한정되지 않은 데이터가 저장되는 제1메모리(13)를 포함할 수 있다. 제1메모리(13)는 제1프로세서(17)에 의해 액세스 되며, 이들에 의한 데이터의 독취, 기록, 수정, 삭제, 갱신 등이 수행된다. 제1메모리(13)에 저장되는 데이터는, 예를 들면 로우(raw) 데이터, 영상/음성 컨텐츠 데이터 등을 포함할 수 있다.
제1메모리(13)는 수신된 음성을 인식하는 음성인식모듈(음성인식엔진)을 포함할 수 있다. 물론, 제1메모리(13)는 운영체제, 운영체제 상에서 실행 가능한 다양한 애플리케이션, 드라이버, 네트워크 매니저 등을 포함할 수 있다.
제1메모리(13)는 제1프로세서(17)에 의해 실행되는 제어프로그램이 설치되는 비휘발성의 메모리, 설치된 제어프로그램의 적어도 일부가 로드되는 휘발성의 메모리를 포함한다.
제1메모리(13)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 자기메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
전자장치(1)는 사용자의 음성을 인식할 수 있는 음성인식부(14)를 포함할 수 있다.
음성인식부(14)는 메모리(13)에 저장된 음성인식모듈(음성인식엔진)을 실행하여 사용자의 음성을 인식할 수 있다. 음성인식부(14)는 사용자의 음성이 전자장치(1)를 제어하기 위한 제어명령인지 여부를 인식한다. 제어명령은, 예컨대, 전자장치(1)의 온 또는 오프, 채널 전환, 볼륨 조절 등의 명령을 포함할 수 있다. 또한, 제어명령은, 예컨대, 전자장치(1)에 연결된 컨텐츠공급장치가 제공하는 UI를 표시할 것을 요청하는 명령일 수 있다.
전자장치(1) 자체에 내장된 마이크(12)로 수신된 아날로그 음성신호는 디지털신호로 변환하여 제1프로세서(17)로 전송될 수 있다. 이와 같이, 수신된 음성신호는 전자장치(1)의 내장된 음성인식부(14)를 통해 텍스트로 변환할 수 있다.
음성인식부(14)는 제1프로세서(17)와 일체로 구현되거나 혹은 전자장치(1)에서 배제될 수 있다. 이때, 수신된 음성신호는 서버(음성인식서버)로 전송될 수 있다.
서버(음성인식서버)는 음성신호 관련 데이터를 적절한 텍스트로 변환하는 기능만을 가진 STT(Speech To Text)서버이거나 STT서버 기능도 함께 수행하는 메인 서버일 수도 있다.
STT서버는 처리된 데이터를 전자장치(1)에 다시 전송하거나 다른 서버로 바로 전송할 수도 있다.
상술한 바와 같이, 전자장치(1)의 제1프로세서(17)는 전자장치(1)에 전송된 텍스트나 전자장치(1)의 음성인식부(14)에서 자체적으로 변환한 텍스트를 이용하여 특정 기능을 수행할 수 있다. 이때, 특정 기능의 수행은 변환된 텍스트를 별도 서버(STT서버와 다른 서버 또는 STT서버 역할도 하는 서버)에 전송하여 데이터 처리하한 후 전자장치(1)로 전송한 정보/데이터를 기반으로 이루어질 수도 있다.
전자장치(1)는 영상컨텐츠 또는 UI를 표시하는 디스플레이부(15)를 포함할 수 있다.
디스플레이부(15)는 메모리(13)에 저장된 또는 제1인터페이스부(11)를 통해 컨텐츠 공급장치 또는 서버(3)로부터 수신한 영상 컨텐츠를 표시할 수 있다.
디스플레이부(15)는 네트워크를 통해 영상 컨텐츠를 제공받아 화면에 표시할 수 있다. 이때, 디스플레이부(15)는 서버(3)로부터 스트리밍 컨텐츠를 수신하여 재생하는 다양한 애플리케이션(이하 ‘컨텐츠 재생 앱’으로 칭함)으로부터 표시할 영상 컨텐츠를 제공받을 수 있다. 컨텐츠 재생 앱(도 3의 18)은 중계장치(2)에 의한 무선 네트워크, 예를 들면 WiFi를 통해 서버(3)로부터 스트리밍으로 영상 컨텐츠를 수신할 수 있다. 물론, 컨텐츠 재생 앱이 처리하는 컨텐츠는 영상 컨텐츠 및 음성 컨텐츠로만 한정되지 않는다.
디스플레이부(15)는 제1프로세서(17)에 의해 무선채널의 통신환경이 비정상일 때 UI, 예를 들면 통신 상태를 나타내는 아이콘을 표시할 수 있다.
디스플레이부(15)의 구현 방식은 한정되지 않는 바, 액정(liquid crystal), 플라즈마(plasma), 발광 다이오드(light-emitting diode), 유기발광 다이오드(organic light-emitting diode), 면전도 전자총(surface-conduction electron-emitter), 탄소 나노 튜브(carbon nano-tube), 나노 크리스탈(nano-crystal) 등의 다양한 디스플레이 패널로 구현될 수 있다.
전자장치(1)는 소리를 출력하는 스피커(16)를 포함할 수 있다.
스피커(16)는 컨텐츠 재생 앱에서 처리된 음성 컨텐츠를 외부로 출력할 수 있다.
전자장치(1)는 각 구성 부품을 전반적으로 제어하는 제1프로세서(17)를 포함할 수 있다.
제1프로세서(17)는 버퍼링 이벤트 또는 품질 변경 이벤트를 수신할 수 있다. 버퍼링 이벤트 또는 품질 변경 이벤트는 컨텐츠 재생 앱(도 3의 18)의 버퍼(181)에 처리할 데이터가 비워져 있거나 기정의된 양 또는 비율에 미달할 때 통신 트래픽 이벤트로서 생성될 수 있다. 고품질 컨텐츠는 저품질 컨텐츠로 변경하면 통신 상태가 어느 정도 나빠지더라도 스트리밍으로 컨텐츠를 처리할 수 있고, 이때 품질 변경 이벤트가 발생될 수 있다. 예를 들면, 영상을 처리하여 표시하는 컨텐츠 재생 앱(18)은 버퍼(181)의 상태에 따라 720p 이상의 HD영상에서 480p 이하의 Non HD영상으로 낮추는 이벤트를 생성할 수 있다. 여기서, 컨텐츠는 영상으로만 한정되지 않으며, 예를 들면 음악 컨텐츠와 같이 다양한 품질로 제공되는 컨텐츠라면 어느 것이든 가능하다.
제1프로세서(17)는 컨텐츠 재생 앱에서 무선 트래픽 이벤트가 발생하면 중계장치(2)가 제공하는 전체 채널 중에서 이용하는 채널의 시간 점유도를 확인(identify)하고, 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 채널의 시간 점유를 확보하는 동작을 수행할 수 있다. 여기서, 임계값은 전자장치(1)의 제어프로그램에 기본적으로 설정된 값 또는 사용자에 의해 설정된 값일 수 있다.
시간 점유를 확보하는 동작 중 하나는 2.4GHz에서 5.0GHz로 또는 그 반대로 전환할 수 있다. 시간 점유를 확보하는 동작 중 하나는 복수의 중계장치를 구비한 경우 다른 중계장치로 전환할 수 있다.
제1프로세서(17)는 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 무선통신 상태가 비정상임을 나타내는 UI, 예를 들면 아이콘을 디스플레이부(15)에 표시하도록 할 수 있다.
제1프로세서(17)는 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 새로운 밴드 또는 중계장치로 전환한 후에 다시 시간 점유도를 확인할 수 있다. 이때, 충분한 시간 점유가 어려운 경우 이를 컨텐츠 재생 앱에 전달하여 컨텐츠의 품질을 저하하도록 할 수 있다.
특히, 제1프로세서(17)는 이벤트 발생 후에 채널의 시간 점유도를 확인하고 점유도가 임계값을 초과하는지에 대한 판단뿐만 아니라 소정 시간 동안의 점유 패턴, 반복 패턴, 이전 처리 패턴 정보 등에 대해 데이터 분석, 처리, 및 결과 정보 생성 중 적어도 일부를 규칙 기반 또는 인공지능(Artificial Intelligence) 알고리즘으로서 기계학습, 신경망 네트워크(neural network), 또는 딥러닝 알고리즘 중 적어도 하나를 이용하여 수행할 수 있다.
일 예로, 제1프로세서(17)는 학습부 및 인식부의 기능을 수행할 수 있다. 학습부는, 예를 들면, 학습된 신경망 네트워크를 생성하는 기능을 수행하고, 인식부는 학습된 신경망 네트워크를 이용하여 데이터를 인식(또는, 추론, 예측, 추정, 판단)하는 기능을 수행할 수 있다. 학습부는 신경망 네트워크를 생성하거나 갱신할 수 있다. 학습부는 신경망 네트워크를 생성하기 위해서 학습 데이터를 획득할 수 있다. 예를 들면, 학습부는 학습 데이터를 메모리(14) 또는 외부로부터 획득할 수 있다. 학습 데이터는, 신경망 네트워크의 학습을 위해 이용되는 데이터일 수 있으며, 예를 들면, 채널에 대한 시간 점유 패턴을 통한 통신상태 분석모델을 학습시킬 수 있다.
학습부는 학습 데이터를 이용하여 신경망 네트워크를 학습시키기 전에, 획득된 학습 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 학습 데이터들 중에서 학습에 이용될 데이터를 선별할 수 있다. 예를 들면, 학습부는 학습 데이터를 기 설정된 포맷으로 가공하거나, 필터링하거나, 또는 노이즈를 추가/제거하여 학습에 적절한 데이터의 형태로 가공할 수 있다. 학습부는 전처리된 학습 데이터를 이용하여 채널의 통신 상태를 판단하고 비정상 통신 상태 시 새로운 밴드 또는 중계장치로의 전환 동작 등을 수행하도록 설정된 신경망 네트워크를 생성할 수 있다.
학습된 신경망 네트워크는, 복수의 신경망 네트워크(또는, 레이어)들로 구성될 수 있다. 복수의 신경망 네트워크의 노드들은 가중치를 가지며, 복수의 신경망 네트워크들은 일 신경망 네트워크의 출력 값이 다른 신경망 네트워크의 입력 값으로 이용되도록 서로 연결될 수 있다. 신경망 네트워크의 예로는, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 및 심층 Q-네트워크 (Deep Q-Networks)과 같은 모델을 포함할 수 있다.
한편 인식부는 채널의 시간 점유도를 통해 통신 상태를 판단하기 위해, 타겟 데이터를 획득할 수 있다. 타겟 데이터는 메모리(14) 또는 외부로부터 획득된 것일 수 있다. 타겟 데이터는, 신경망 네트워크의 인식 대상이 되는 데이터일 수 있다. 인식부는 타겟 데이터를 학습된 신경망 네트워크에 적용하기 전에, 획득된 타겟 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 타겟 데이터들 중에서 인식에 이용될 데이터를 선별할 수 있다. 예를 들면, 인식부는 타겟 데이터를 기 설정된 포맷으로 가공하거나, 필터링 하거나, 또는 노이즈를 추가/제거하여 인식에 적절한 데이터의 형태로 가공할 수 있다. 인식부는 전처리된 타겟 데이터를 신경망 네트워크에 적용함으로써, 신경망 네트워크로부터 출력되는 출력값을 획득할 수 있다. 다양한 실시예에 따르면, 인식부는 출력값과 함께 학률값(또는, 신뢰도값)을 함께 획득할 수 있다.
제1프로세서(17)는 제어프로그램이 설치된 비휘발성의 메모리로부터 제어프로그램의 적어도 일부를 휘발성의 메모리로 로드하고, 로드된 제어프로그램을 실행하는 적어도 하나의 범용 프로세서를 포함하며, 예를 들면 CPU(Central Processing Unit), AP(application processor), 또는 마이크로프로세서(microprocessor)로 구현될 수 있다.
제1프로세서(17)는 싱글 코어, 듀얼 코어, 트리플 코어, 쿼드 코어 및 그 배수의 코어를 포함할 수 있다. 제1프로세서(17)는 복수 개 마련될 수 있다. 제1프로세서(17)는 예를 들어, 메인 프로세서(main processor) 및 슬립 모드(sleep mode, 예를 들어, 대기 전원만 공급되는 모드)에서 동작하는 서브 프로세서(sub processor)를 포함할 수 있다. 또한, 프로세서, 롬 및 램은 내부 버스(bus)를 통해 상호 연결된다.
제1프로세서(17)는 전자장치(1)에 내장되는 PCB 상에 실장되는 메인 SoC(Main SoC)에 포함되는 형태로서 구현 가능하다. 다른 실시예에서 메인 SoC는 영상처리부를 더 포함할 수 있다.
제어프로그램은, BIOS, 디바이스드라이버, 운영체계, 펌웨어, 플랫폼 및 응용프로그램(어플리케이션) 중 적어도 하나의 형태로 구현되는 프로그램(들)을 포함할 수 있다. 응용프로그램은, 전자장치(1)의 제조 시에 미리 설치 또는 저장되거나, 혹은 추후 사용 시에 외부로부터 응용프로그램의 데이터를 수신하여 수신된 데이터에 기초하여 설치될 수 있다. 응용 프로그램의 데이터는, 예컨대, 어플리케이션 마켓과 같은 외부 서버로부터 전자장치(1)로 다운로드될 수도 있다. 이와 같은 외부 서버는, 컴퓨터프로그램제품의 일례이나, 이에 한정되는 것은 아니다.
중계장치(2)는 제2인터페이스부(21), 제2메모리(23) 및 제2프로세서(27)를 포함할 수 있다.
제2인터페이스부(21)는 제2무선인터페이스부(211) 및 제2유선인터페이스부(212)를 포함할 수 있다.
제2무선인터페이스부(211)는 안테나와 전기적으로 연결될 수 있다. 안테나는 중계장치(2)의 하우징내부에 배치되거나 하우징의 일부로 구현될 수 있다. 또한 제2무선인터페이스부(211)는 적절한 통신 규약을 지원하는 무선 통신 칩을 포함할 수 있다. 제2무선인터페이스부(211)는 IEEE 802.11 표준 등 다양한 통신 표준을 이용하여 통신을 수행할 수 있다.
제2무선인터페이스부(211)는 적어도 하나의 무선 통신 규약(protocol)을 지원할 수 있다. 예를 들어, 제2무선인터페이스부(211)는 Bluetooth, Zigbee, 무선 하트 통신 방식(WirelessHART (wireless highway addressable remote transducer), NFC(near field communication), Wi-Fi, WiFi Direct, GSM/3GPP 계열의 통신 방식(예: GSM, HSDPA, LTE, LTE-A), 3GPP2 계열의 통신방식(예: CDMA, CDMA2000) 또는 WiMax 계열의 통신 방식(예: Wibro) 중 적어도 하나의 무선 통신 규약을 지원할 수 있다.
제2유선인터페이스부(212)는 서버(3) 또는 중계장치(2)의 외부에 위치하는 주변 장치에 대한 유선 연결을 제공할 수 있다. 중계장치(2)는 하우징을 통해 노출되고 유선 통신 케이블과 연결될 수 있는 복수의 슬롯을 구비할 수 있다. 중계장치(2)는 슬롯에 유선 통신 케이블이 연결되면 제2유선인터페이스부(212)를 통하여 서버(3) 또는 외부의 장치와 데이터를 송수신할 수 있다.
일 실시예로서, 중계장치(2)는 2.4GHz 밴드와 5GHz 밴드를 모두 지원할 수 있다.
일 실시예로서, 중계장치(2)는 물리적으로 분리된 또는 통합된 복수의 중계장치를 포함할 수 있다.
중계장치(2)는 한정되지 않은 데이터를 저장하는 제2메모리(23)를 포함할 수 있다.
제2메모리(23)는 프로세서(27)에 의해 실행 가능한 명령어들이 저장되어 있을 수 있다. 예를 들어, 제2메모리(23)는 본 문서에서 중계장치(2) 또는 프로세서(27)에 의해 수행되는 것으로 설명되는 동작이나 기능을 실행하기 위한 명령어들이 저장되어 있을 수 있다.
중계장치(2)는 각 구성부품을 전반적으로 제어하는 제2프로세서(27)를 포함할 수 있다.
제2프로세서(27)는 전자장치(1)와 다른 장치에 대해 무선인터페이스부, 무선인터페이스부의 밴드, 밴드의 채널을 할당할 수 있다. 제2프로세서(27)는 할당된 채널로 연결된 장치들에 실시간으로 데이터 점유 시간을 제공하여 데이터 전송하도록 할 수 있다.
중계장치(2)와 관련하여 도 2를 참조하여 제시된 설명은, 본 발명의 적용 대상이 되는 중계장치를 한정하지 아니한다.
도 3은 본 발명의 실시예에 따른 WiFi모듈(1140)의 구성을 나타낸 블록도이다. 여기서, WiFi 드라이버(1142), Wpa_supplicant(1143), libhardware_legacy(1144), 및 프레임웍(WiFi 매니저)(1145)는 WiFi모듈(1140)에 포함되는 것으로 도시하였으나, 제1프로세서(17)에 포함되거나 제1프로세서(17)에 의해 실행될 수 있다. 또한, WiFi모듈(1140)과 제1프로세서(17)는 하나의 칩으로 구현될 수도 있다. 또한, 제어프로그램(171) 및 컨텐츠 재생 앱(18)은 제1프로세서(17)에 의해 실행될 수 있다.
도 3을 참조하면, WiFi모듈(1140)은 WiFi 칩(1141), WiFi 드라이버(1142), Wpa_supplicant(1143), libhardware_legacy(1144), 및 프레임웍(WiFi 매니저)(1145)를 포함할 수 있다.
WiFi 칩(1141)은 SDIO나 PCI 버스를 통하여 WiFi 드라이버(1142)와 연결된다.
WiFi 드라이버(1142)는 802.11 프로토콜을 구현한 wpa_supplicant(1143)에 데이터를 교환한다.
wpa_supplicant(1143)은 Libhardware_legacy(1144)의 wifi.c를 통해 프레임웍(1145)과 연결된다.
컨텐츠 재생 앱(18)은 프레임웍(1145)을 통하여 WiFi모듈(1140)를 이용하여 인터넷에 연결될 수 있다.
컨텐츠 재생 앱(18)은 WiFi모듈(1140)을 통해 서버로부터 수신된 컨텐츠 데이터를 일시적으로 저장하는 버퍼(181)를 포함할 수 있다. 컨텐츠 재생 앱(18)은 버퍼(181)에 저장된 컨텐츠를 스트리밍으로 수신할 수 있다.
컨텐츠 재생 앱(18)은 버퍼(181)에 컨텐츠 데이터가 없거나 일정량 미만이면 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트와 같은 통신 트래픽 이벤트를 생성할 수 있다.
도 4는 도 2의 전자장치(1)의 제어방법을 나타내는 순서도이다.
단계 S11에서, 컨텐츠 재생 앱(18)은 버퍼(181)에 데이터 없거나 소정의 비율 미만일 때 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트를 생성할 수 있다. 컨텐츠 재생 앱(18)은 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트가 생성되면 디스플레이부(15)의 화면에 버퍼링 서클을 표시하고, 제어프로그램(171)에 이벤트를 보낸다. 컨텐츠 품질 변경 이벤트는 예를 들면 영상의 해상도 변경 이벤트를 포함할 수 있다. 컨텐츠 재생 앱(18) 상에서 영상의 해상도가 변경될 때마다 새로운 해상도 값과 함께 이벤트를 제어프로그램(171)으로 보낸다. 이러한 이벤트를 기초로, 사용자는 예를 들면 720p 해상도 이상의 HD 화질에서 480p 해상 미만의 Non-HD 화질로 해상도가 낮아지면 저 해상도 상황을 알 수 있다.
단계 S12에서, 제어프로그램(171)은 컨텐츠 재생 앱(18)으로부터 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트를 수신하면 WiFi 드라이버(1142)에 1st survey dump iw command를 보낸다.
단계 S13에서, WiFi 드라이버(1142)는 WiFi 채널 점유 시간으로 채널 비지 타임1 값과 채널 액티브 타임1 값을 제어프로그램(171)으로 보낸다.
단계 S14에서, 제어프로그램(171)은 기정의된 제1타임, 예를 들면 3초 후에 WiFi 드라이버(1142)에 2st survey dump iw command를 보낸다.
단계 S15에서, WiFi 드라이버(1142)는 WiFi 채널 점유 시간으로 채널 비지 타임2 값과 채널 액티브 타임2 값을 제어프로그램(171)으로 보낸다.
단계 S12~S15를 기정의된 전체시간, 예를 들면 24초가 경과할 때까지 반복한다.
단계 S16에서, 제어프로그램(171)은 상술한 바와 같이 얻은 채널 비지 타임 값과 채널 액티브 타임 값을 기초로 중계장치(2)가 제공하는 채널에 대한 시간 점유도를 구할 수 있다. 즉, 제어프로그램(171)은 서로 시간적으로 이격된 복수의 시점에서 얻어진 전체 채널의 채널 비지 타임 값들과 채널 액티브 타임 값들의 변화에 기초하여 현재 채널의 시간 점유도를 구할 수 있다.
각 제1타임(3초) 구간 동안에 채널의 시간 점유도는 다음 식1로 산출될 수 있다.
채널의 시간 점유도 = (현재 채널 비지 타임2 값-이전 채널 비지 타임2 값)/(현재 채널 액티브 타임1 값-이전 채널 액티브 타임1 값) x 100%
여기서, 이전 채널 비지 타임1 값과 이전 채널 액티브 타임1 값은 1st survey dump iw command를 보낸 제1시점에 WiFi 드라이버(1142)가 전달한 값이다. 또한, 현재 채널 비지 타임2 값과 현재 채널 액티브 타임2 값은 제1시점 이후 제1타임(3초)이 경과된, 2st survey dump iw command를 보낸 제2시점에 WiFi 드라이버(1142)가 전달한 값이다.
제어프로그램(171)은 전체시간(24초) 동안에 8회 반복하여 검출한 8회의 채널의 시간 점유도를 기초로 평균 채널 시간 점유도를 얻을 수 있다.
단계 S17에서, 제어프로그램(171)은 특정 시점의 전체채널의 시간 점유도 또는 평균 채널 시간 점유도가 기정의된 임계값을 초과하면 채널의 통신 상태를 비정상으로 판단하여 이를 디스플레이부(15)에 통지할 수 있다. 물론, 제1프로그램(171)은 디스플레이부(15) 대신에 스피커(16)에 통지할 수도 있다.
단계 S18에서, 디스플레이부(15)는 비정상의 통신상태에 대한 UI, 예를 들면 아이콘, 팝업메시지 등을 화면에 표시할 수 있다.
단계 S19에서, 제어프로그램(171)은 채널의 시간 점유도가 기정의된 임계값을 초과하면 채널의 통신 상태를 비정상으로 판단하여 이를 프레임웍(WiFi 매니저)(1145)에 통지할 수 있다.
단계 S20에서, 프레임웍(WiFi 매니저)(1145)은 제어프로그램(171)으로부터 채널의 통신 비정상 상태를 통보 받으면, 채널의 시간 점유를 확보하는 동작을 수행할 수 있다.
시간 점유를 확보하는 동작은 3가지 옵션으로 진행될 수 있다.
첫째, 프레임웍(WiFi 매니저)(1145)은 중계장치(2)의 밴드를 2.4GHz에서 5GHz 또는 5GHz에서 2.4GHz로 전환할 수 있다(S20-1).
둘째, 프레임웍(WiFi 매니저)(1145)은 중계장치(2)를 새로운 중계장치로 전환할 수 있다. 이때, 새로운 중계장치로의 전환은 복수의 중계장치를 하나의 이름을 부여한 경우에만 가능하다(S20-2).
셋째, 프레임웍(WiFi 매니저)(1145)은 중계장치(2)에 새로운 중계장치의 후보를 요청할 수 있다(S20-3). 중계장치(2)는 후보 중계장치에 대한 정보를 프레임웍(WiFi 매니저)(1145)에 전달하고(S20-4), 프레임웍(WiFi 매니저)(1145)은 현재 중계장치를 분리하고, 새로운 후보 중계장치에 연결할 수 있다(S2-5).
일 실시예로서, 제어프로그램(171)은 예를 들면 현재의 화질이 1080p 또는 720p인지에 따라 서로 다른 임계값을 적용할 수 있다.
일 실시예로서, 제어프로그램(171)은 수신신호강도(RSSI) 값도 함께 확인할 수 있다. 즉, 제어프로그램(171)은 현재 해상도가 1080p 또는 720p이고, 수신신호강도가 기준치 초과인데 채널의 평균 시간 점유도가 증가한다고 판단이 되면 노이즈로 판단할 수 있다. 만일, 수신신호강도가 특정 값보다 낮은 경우에, 제어프로그램(171)은 시간 점유도 측정에 의미가 없다라고 판단이 되어 시간 점유도를 고려하지 않는다.
일 실시예로서, 제어프로그램(171)은 채널의 평균 시간 점유도가 증가한다고 판단이 되면 예를 들면 2.4GHz 밴드를 5GHz 밴드로 전환을 시도한다. 제어프로그램(171)은 컨텐츠 재생 앱(18)에서 버퍼링 이벤트 또는 화질 변경 이벤트가 오더라고 채널의 시간 점유도가 임계값보다 낮으면 밴드 또는 중계장치의 전환을 시도하지 않는다.
   다만, 제어프로그램(171)은 해상도가 720p 이하로 떨어질 가능성이 있다고 판단이 되면 밴드 또는 중계장치의 전환을 시도한다.
도 5는 본 발명의 실시예에 따른 전자장치(1)의 제어프로그램(171)의 동작방법을 나타내는 순서도이다. 제어프로그램(171)은 타이머 초기화 상태에서 컨텐츠 재생 앱(18)으로부터의 이벤트를 기다린다.
단계 S21에서, 제어프로그램(171)은 컨텐츠 재생 앱(18)으로부터의 통신 트래픽 이벤트가 생성되었는지를 확인한다.
단계 S22에서, 제어프로그램(171)은 컨텐츠 재생 앱(18)으로부터의 이벤트가 생성되었으면 채널의 통신 상태 확인 이벤트를 시작한다. 이때, 타이머를 초기화 한 후에 프레임웍(WiFi 매니저)(1145)에 survey dump iw command를 보내서, 첫번째 채널 비지 타임1과 채널 액티브 타임1을 체크한다. 타이머 초기화 상태는 현재 시간 점유도 및 평균 시간 점유도 모두 0이다.
단계 S23에서, 제어프로그램(171)은 기설정된 제1타임, 예를 들면 3초가 경과했는지를 확인한다.
단계 S24에서, 제어프로그램(171)은 기설정된 제1타임 3초가 경과하였으면 프레임웍(WiFi 매니저)(1145)에 survey dump iw command를 보내서, 두번째 채널 비지 타임2과 채널 액티브 타임2을 체크한다.
단계 S25에서, 타이머의 시간이 기설정된 전체시간을 경과하였는지를 확인한다. 만일 타이머 초기화 후, 전체시간이 경과되지 않았으면 단계 S22 내지 S24를 반복한다.
단계 S26에서, 제어프로그램(171)은 전체시간이 경과되면 현재의 채널 시간 점유도와 전체시간의 평균 시간 점유도를 검출할 수 있다.
현재의 채널 시간 점유도는 전술한 바와 같이 검출될 수 있다.
채널 시간 점유도 = (두번째 채널 비지 타임2-첫번째 채널 비지 타임1)/(두번째 채널 액티브 타임2-첫번째 채널 액티브 타임1) x 100%
전체시간의 평균 시간 점유도는 전체 시간 동안 반복해서 검출한 모든 채널 시간 점유도의 평균값으로 검출될 수 있다.
단계 S27에서, 제어프로그램(171)은 평균 시간 점유도가 임계값을 초과하는지를 판단한다.
단계 S28에서, 제어프로그램(171)은 평균 시간 점유도가 임계값을 초과하면 비정상으로 판단하여 채널 통신 상태 이벤트를 생성한다. 제어프로그램(171)은 채널 통신 상태 이벤트를 프레임웍(WiFi매니저)(1145)와 디스플레이부(15)에 각각 통지한다.
이후, 프레임웍(WiFi매니저)(1145)는 다른 밴드나 새로운 중계장치로 전환하는 동작을 수행할 수 있고, 디스플레이부(15)는 채널 통신 상태가 비정상임을 나타내는 아이콘을 표시할 수 있다.
도 6은 본 발명의 실시예에 따른 프레임웍(WiFi매니저)(1145)의 동작 방법을 나타내는 순서도이다.
단계 S31에서, 프레임웍(WiFi매니저)(1145)는 제어프로그램(171)으로부터 채널 통신 상태 이벤트가 발생하는지를 확인한다.
단계 S32에서, 프레임웍(WiFi매니저)(1145)는 단계 S31에서 제어프로그램(171)으로부터 채널 통신 상태 이벤트가 발생하면 채널 통신 상태가 비정상인지를 확인한다.
단계 S33에서, 프레임웍(WiFi매니저)(1145)는 단계 S32에서 채널 통신 상태가 비정상이면 중계장치(2)가 듀얼 밴드, 즉 2.4GHz와 5GHz 모두를 지원하는지를 확인한다.
단계 S34에서, 프레임웍(WiFi매니저)(1145)는 중계장치(2)가 듀얼 밴드를 지원하면 중계장치(2)의 현재 밴드가 2.4GHz인지를 확인한다.
단계 S35에서, 프레임웍(WiFi매니저)(1145)는 중계장치(2)가 중계장치(2)의 현재 밴드가 2.4GHz이면 5GHz로 전환한다.
단계 S36에서, 프레임웍(WiFi매니저)(1145)는 중계장치(2)가 중계장치(2)의 현재 밴드가 5GHz이면 2.4GHz로 전환한다.
단계 S37에서, 프레임웍(WiFi매니저)(1145)는 중계장치(2)가 듀얼 밴드를 지원하지 않으면 이전에 연결했던 다른 중계장치의 정보가 있는지를 확인한다.
단계 S38에서, 프레임웍(WiFi매니저)(1145)는 중계장치(2)가 이전에 연결했던 다른 중계장치의 정보가 있으면 해당 다른 중계장치로 전환한다.
단계 S39에서, 프레임웍(WiFi매니저)(1145)는 중계장치(2)가 이전에 연결했던 다른 중계장치의 정보가 없으면 현재의 중계장치(2)에 최상의 중계장치 정보를 요청한다.
단계 S40에서, 프레임웍(WiFi매니저)(1145)는 새로운 중계장치 정보가 있는지를 확인한다.
단계 S41에서, 프레임웍(WiFi매니저)(1145)는 새로운 중계장치 정보가 있으면 해당 새로운 중계장치로 전환한다.
도 7은 본 발명의 실시예에 따른 디스플레이부(15)의 동작 방법을 나타내는 순서도이다.
단계 S51에서, 디스플레이부(15)는 제어프로그램(171)으로부터 채널 통신 상태 이벤트가 발생하는지를 확인한다.
단계 S52에서, 디스플레이부(15)는 단계 S51에서 제어프로그램(171)으로부터 채널 통신 상태 이벤트가 발생하면 채널 통신 상태가 비정상인지를 확인한다.
단계 S53에서, 디스플레이부(15)는 단계 S52에서 채널 통신 상태가 비정상이면 예를 들면 화면의 상단 우측 코너에 채널 통신 상태를 나타내는 UI, 예를 들면 아이콘을 표시할 수 있다.
도 8은 디스플레이부(15)에 표시된 UI를 나타낸 도면이다.
도 8을 참조하면, UI는 채널 통신 상태에 따라 컬러를 다르게 화면(151)에 아이콘(152)으로 표시할 수 있다. 아이콘(152)은 채널 통신 상태가 나쁘면 적색으로, 좋으면 청색으로, 중간은 백색으로 표시하되, 정도에 따라 농도를 다르게 표시할 수도 있다.
도 9 및 10은 각각 24초 동안에 8회에 걸쳐 검출한 채널 시간 점유도의 예를 나타낸 그래프이다. 이들 그래프는 사용자가 도 8의 아이콘(152)을 선택하면 화면에 표시될 수 있다.
도 9는 24초 동안 3초 간격으로 8번의 채널 시간 점유도를 측정한 검출한 결과 처음 12초 동안은 낮은 상태로 일정하게 유지하다가 나중 12 동안에 급격하게 나빠진 상태를 나타낸다.
제어프로그램(171)은 도 9와 같이 갑자기 채널 통신 상태가 나빠진 경우에 추가적인 채널 시간 점유도를 검출하여 시간 점유를 확보하기 위한 동작을 수행할 수도 있다.
제어프로그램(171)은 도 10과 같이 24초 동안 전체적으로 불규칙적인 상태를 나타낸 경우에 시간 점유를 확보하기 위한 동작을 바로 수행할 수도 있다.
이와 같이, 제어프로그램(171)은 소정 시간 동안의 채널 시간 점유도 패턴에 따라 시간 점유를 확보하기 위한 동작을 바로 수행할 것인지 추가적인 채널 비지타임과 채널 액티브 타임 데이터를 수집할 것인지를 결정할 수 있다.
도 11은 도 8의 아이콘(152)을 선택하였을 때 나타나는 팝업메시지(153)를 나타낸다.
도 11을 참조하면, 제어프로그램(171)은 자동으로 최적으로 상태를 가진 밴드나 중계장치를 선택하는 대신에 사용자가 수동으로 선택하도록 할 수도 있다.
일 실시예로서, 제어프로그램(171)은 도 9 및 10과 같은 채널의 시간 점유도 패턴들을 제1메모리(13)에 저장할 수 있다. 제어프로그램(171)은 현재의 채널의 시간 점유도 패턴에 대해 제1메모리(13)에 저장된 패턴들을 참조하여 현재 중계장치(2) 또는 다른 밴드나 다른 중계장치들에 대한 채널 통신 상태를 예측하여 시간 점유 확보를 위한 동작을 수행할 수도 있다.
본 발명의 실시예에 따른 컴퓨터 프로그램은 중계장치(2)가 제공하는 전체 채널 중에서 이용되는 채널의 시간 점유도를 확인(identify)하고, 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 채널의 시간 점유를 확보하는 동작을 실행할 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
1: 전자장치
11: 인터페이스부
12: 마이크
13: 제1메모리
14: 음성인식부
15: 디스플레이부
16: 스피커
17: 제1프로세서
18: 컨텐츠 재생 앱
2: 중계장치
21: 제2인터페이스부
23: 제2메모리
27: 제2프로세서
3: 서버

Claims (19)

  1. 전자장치에 있어서,
    무선인터페이스부와;
    상기 무선인터페이스부를 통해 중계장치가 제공하는 채널을 이용하여 외부장치와 무선 통신하도록 제어 동작을 수행하는 프로세서를 포함하고,
    상기 프로세서는,
    상기 중계장치가 제공하는 전체 채널 중에서 현재 이용되는 채널의 시간 점유도를 확인(identify)하고,
    상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 수행하는 전자장치.
  2. 제1항에 있어서,
    상기 시간 점유를 확보하는 동작은 상기 중계장치와의 무선 통신에 사용되는 주파수 밴드 변경, 또는 새로운 중계장치 변경 중 적어도 하나를 포함하는 전자장치.
  3. 제1항에 있어서,
    상기 프로세서는 소정 시간 동안에, 전체 채널의 통신에 이용되고 있는 채널 비지 타임(channel busy time) 값과 이용 가능한 채널 액티브 타임(channel active time) 값의 비율에 기초하여 상기 현재 채널의 시간 점유도를 산출하는 전자장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    서로 시간적으로 이격된 복수의 시점에서 얻어진 전체 채널의 채널 비지 타임 값들과 채널 액티브 타임 값들의 변화에 기초하여 상기 현재 채널의 시간 점유도를 산출하는 전자장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    소정의 시간 동안에 기정의된 횟수로 상기 현재 채널의 시간 점유도를 확인하고,
    상기 기정의된 횟수의 시간 점유도의 평균값이 상기 임계값을 초과하는지를 확인하는 전자장치.
    전자장치.
  6. 제1항에 있어서,
    상기 프로세서는,
    상기 채널을 이용하여 컨텐츠를 스트리밍으로 수신하는 애플리케이션의 통신 트래픽 이벤트에 따라 상기 채널의 시간 점유도를 확인하는 전자장치.
  7. 제6항에 있어서,
    상기 통신 트래픽 이벤트는 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트를 포함하는 전자장치.
  8. 제7항에 있어서,
    상기 임계값은,
    상기 컨텐츠의 품질에 따라 다르게 정의되는 전자장치.
  9. 제1항에 있어서,
    디스플레이부를 더 포함하며,
    상기 프로세서는,
    상기 채널의 통신 상태를 나타내는 UI를 상기 디스플레이부에 표시하는 전자장치.
  10. 전자장치의 제어방법에 있어서,
    무선인터페이스부를 통해 중계장치가 제공하는 채널을 이용하여 외부장치와 무선 통신하는 단계와;
    상기 중계장치가 제공하는 전체 채널 중에서 현재 이용되는 채널의 시간 점유도를 확인(identify)하는 단계와;
    상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 수행하는 단계를 포함하는 전자장치의 제어방법.
  11. 제10항에 있어서,
    상기 시간 점유를 확보하는 동작은 상기 중계장치와의 무선 통신에 사용되는 주파수 밴드 변경 또는 새로운 중계장치 변경 중 적어도 하나를 포함하는 전자장치.
  12. 제10항에 있어서,
    상기 현재 채널의 시간 점유도는 소정 시간 동안에, 전체 채널의 통신에 이용되고 있는 채널 비지 타임(channel busy time) 값과 이용 가능한 채널 액티브 타임(channel active time) 값의 비율에 기초하여 산출되는 전자장치의 제어방법.
  13. 제12항에 있어서,
    상기 현재 채널의 시간 점유도는,
    서로 시간적으로 이격된 복수의 시점에서 얻어진 전체 채널의 채널 비지 타임 값들과 채널 액티브 타임 값들의 변화에 기초하여 산출되는 전자장치의 제어방법.
  14. 제13항에 있어서,
    상기 동작 수행단계는 소정의 시간 동안에 기정의된 횟수로 상기 현재 채널의 시간 점유도를 확인하고, 기정의된 횟수의 시간 점유도의 평균값이 상기 임계값을 초과하는지를 확인하는 단계를 포함하는 전자장치의 제어방법.
  15. 제10항에 있어서,
    상기 채널의 시간 점유도를 확인하는 단계는 상기 채널을 이용하여 컨텐츠를 스트리밍으로 수신하는 애플리케이션의 통신 트래픽 이벤트에 따라 수행되는 전자장치의 제어방법.
  16. 제15항에 있어서,
    상기 통신 트래픽 이벤트는 버퍼링 이벤트 또는 컨텐츠 품질 변경 이벤트를 포함하는 전자장치의 제어방법.
  17. 제16항에 있어서,
    상기 임계값은 상기 컨텐츠의 품질에 따라 다르게 정의되는 전자장치의 제어방법.
  18. 제10항에 있어서,
    상기 채널의 통신 상태를 나타내는 UI를 표시하는 단계를 더 포함하는 전자장치의 제어방법.
  19. 컴퓨터에 의해 실행되는 컴퓨터 프로그램이 저장되는, 컴퓨터 판독 가능 기록매체에 있어서,
    상기 컴퓨터 프로그램은,
    중계장치가 제공하는 전체 채널 중에서 현재 이용되는 채널의 시간 점유도를 확인(identify)하고,
    상기 확인된 시간 점유도가 기정의된(predefined) 임계값을 초과함에 따라 이용 가능한 채널의 시간 점유를 확보하는 동작을 실행하는
    컴퓨터 판독가능 기록매체.
KR1020190162590A 2019-12-09 2019-12-09 전자장치와 그의 제어방법, 및 저장매체 KR20210072356A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190162590A KR20210072356A (ko) 2019-12-09 2019-12-09 전자장치와 그의 제어방법, 및 저장매체
PCT/KR2020/017160 WO2021118129A1 (ko) 2019-12-09 2020-11-27 전자장치와 그의 제어방법, 및 저장매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190162590A KR20210072356A (ko) 2019-12-09 2019-12-09 전자장치와 그의 제어방법, 및 저장매체

Publications (1)

Publication Number Publication Date
KR20210072356A true KR20210072356A (ko) 2021-06-17

Family

ID=76330102

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190162590A KR20210072356A (ko) 2019-12-09 2019-12-09 전자장치와 그의 제어방법, 및 저장매체

Country Status (2)

Country Link
KR (1) KR20210072356A (ko)
WO (1) WO2021118129A1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110027042A (ko) * 2009-09-09 2011-03-16 엘지전자 주식회사 단말기 및 단말기 제어 방법
US9100967B2 (en) * 2011-09-16 2015-08-04 Qualcomm Incorporated System, method and apparatus for allocating wireless channels in a multi-channel access point
KR101444382B1 (ko) * 2012-10-11 2014-09-26 삼성에스디에스 주식회사 단말기 및 이를 이용한 무선 네트워크 모니터링 시스템 및 방법
KR102327135B1 (ko) * 2015-04-14 2021-11-16 삼성전자주식회사 무선 통신 시스템에서 대역 공유를 위한 장치 및 방법

Also Published As

Publication number Publication date
WO2021118129A1 (ko) 2021-06-17

Similar Documents

Publication Publication Date Title
KR102340127B1 (ko) 복수의 외부 장치들로 오디오 데이터를 전송하는 방법 및 전자 장치
US20170105131A1 (en) Electronic device and method for implementing service thereof
US10908568B2 (en) Electronic device for controlling IoT device to correspond to state of external electronic device and operation method thereof
US9804661B2 (en) Apparatus and method for controlling power of electronic device
EP3384710B1 (en) Method for selecting external electronic device based on data traffic rate
US20160277878A1 (en) Method for communicating data and electronic device thereof
US11678017B2 (en) Electronic device and method for controlling the same, and storage medium
US9992439B2 (en) Display apparatus, controlling method, and display system
KR102125856B1 (ko) 데이터를 송수신하기 위한 멀티미디어 장치들간 출력 장치 공유 방법 및 시스템
US9807173B2 (en) Notification system for personal and shared devices
US10306307B2 (en) Automatic configuration of video output settings for video source
US20170083280A1 (en) Display apparatus and method for controlling display apparatus thereof
US11122319B2 (en) Electronic apparatus and controlling method thereof
KR20190031032A (ko) 컨텐트를 실행하는 방법 및 장치
US9788150B2 (en) Method for managing disaster and electronic device thereof
US11888947B2 (en) Electronic device and controlling method of electronic device
US20160116443A1 (en) Electronic device and method for determining waterproofing of the electronic device
US20150341827A1 (en) Method and electronic device for managing data flow
KR102434754B1 (ko) 전자 장치 및 전자 장치의 컨텐츠 표시 방법
US20150194125A1 (en) Method and system for adjusting output of display
KR20210072356A (ko) 전자장치와 그의 제어방법, 및 저장매체
US20150310831A1 (en) Proximity detection of candidate companion display device in same room as primary display using camera
KR102687188B1 (ko) 전자장치와 그의 제어방법, 서버, 및 기록매체
US11304093B2 (en) Apparatus and method for transmitting/receiving data in an electronic device
US20150161551A1 (en) Management of multi-site dashboards