본 개시에서 사용되는 용어에 대해 간략히 설명하고, 본 개시의 일 실시예에 대해 구체적으로 설명하기로 한다.
본 개시에서 사용되는 용어는 본 개시의 일 실시예에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 본 개시의 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 개시에서, "a, b 또는 c 중 적어도 하나" 표현은 " a", " b", " c", "a 및 b", "a 및 c", "b 및 c", "a, b 및 c 모두", 혹은 그 변형들을 지칭할 수 있다.
본 개시 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 본 개시에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, "...부", "모듈" 은 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시의 일 실시예는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시의 일 실시예를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 본 개시 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 본 개시의 일 실시예에 따른 청소 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 본 개시의 일 실시예에 따른 청소 시스템은 무선 청소기(100)를 포함할 수 있다. 무선 청소기(100)는, 충전용 배터리를 내장하고 있으며, 청소 시에 전원 코드를 콘센트(outlet)에 연결할 필요가 없는 진공 청소기를 의미할 수 있다. 다만, 본 명세서에서는 무선 청소기(100)가 설명되지만, 청소 시스템은 본 개시의 범위를 벗어나지 않고 벽 콘센트에 의해 활성화되는 유선 청소기(cord vacuum)를 포함할 수도 있다. 사용자는 청소기 본체에 탑재된 핸들을 이용하여 무선 청소기(100)를 앞뒤로 이동시키면서 브러시 장치와 같은 청소기 헤드나 부착물이, 예를 들어, 피청소면에서 먼지나 쓰레기를 흡입하도록 할 수 있다. 다만, 본 명세서에서는 브러시 장치가 설명되지만, 본 개시의 범위를 벗어나지 않고 진공 청소기와 함께 다른 유형의 청소기 헤드 또는 부착물이 사용될 수도 있다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는, 일반 모드와 AI 모드를 제공할 수 있다. 일반 모드는, 사용자가 선택한 강도(intensity)(예: 강, 중, 약 등)에 따라 흡입 모터의 흡입력 세기가 조절되는 수동 모드일 수 있다. AI 모드는, 브러시 장치의 사용 환경 상태(예: 피청소면의 상태(마루, 카펫, 매트, 코너 등)에 따라 흡입 모터의 흡입력 세기 또는 브러시 장치의 분당 회전 수(이하, 드럼 RPM이라고도 함)가 자동으로 조절되는 자동 모드일 수 있다. 흡입력은 무선 청소기(100)를 동작시키기 위하여 소모되는 전기적인 힘(Input Power)으로, 흡입 모터(1110)의 흡입력 세기는 흡입 모터(1110)의 소비 전력으로 표현될 수도 있다.
도 1의 110을 참조하면, 무선 청소기(100)가 일반 모드에서 동작하는 경우, 사용자는 서로 다른 유형의 청소기 부착물을 변경하는 것이 필요할 수 있다. 예를 들어, 사용자는 피청소면의 상태나 종류에 따라 브러시 장치와 같은 청소기 부착물을 교체하거나, 흡입 모터의 흡입력 세기를 수동으로 조절해야 할 수 있다. 예를 들어, 청소 효율을 높이기 위해, 사용자가 카펫 위를 청소할 때는 카펫에 맞는 제1 브러시 장치와 같은 제1 타입의 청소기 부착물을 청소기 본체에 연결하고, 사용자가 마루(hard floor)를 청소할 때는 마루에 맞는 다른 타입의 브러시 장치와 같은 다른 타입의 청소기 부착물을 청소기 본체에 연결할 필요가 있다. 또한, 사용자는 피청소면의 종류나 재질에 따라 무선 청소기(100)의 흡입력을 조절할 필요가 있을 수 있다. 예를 들어, 사용자는 러그(rug) 위나 벽면 코너를 청소할 때 무선 청소기(100)의 흡입력 세기를 직접 높여야 하며, 매트 위를 청소할 때는 무선 청소기(100)가 매트에 과밀착되므로 무선 청소기(100)의 흡입력 세기를 낮추어야 한다.
한편, 무선 청소기(100)가 일반 모드에서 동작할 때 사용자는 상황에 따라 적절히 흡입력 세기를 조절하지 않고 흡입력 세기를 최대 강도로 유지할 수 있다. 이 경우, 배터리 사용 시간이 현저하게 줄어들 수 있으며, 매트 위를 청소할 때는 브러시 장치가 매트에 과밀착되어 사용자가 무선 청소기(100)를 앞뒤로 밀기 어려울 수 있다.
또한, 무선 청소기(100)가 일반 모드에서 동작하는 경우, 브러시 장치의 모터 회전 속도(예: 드럼 RPM) 또는 브러시 장치의 구속 레벨(Trip level) 등은 상황에 따라 적절히 조절될 수 없다. 구속 레벨(trip level)은, 브러시 장치의 과부하를 방지하기 위한 것으로, 브러시 장치의 작동을 정지하기 위한 기준 부하 값(예: 기준 전류 값)을 의미할 수 있다.
도 1의 120을 참조하면, 무선 청소기(100)가 AI 모드로 동작하는 경우, 무선 청소기(100)는 브러시 장치 또는 부착물의 사용 환경 상태를 추론하도록 학습된 AI 모델을 이용하여 브러시 장치 또는 부착물의 현재 사용 환경 상태를 추론하고, 브러시 장치 또는 부착물의 현재 사용 환경 상태에 따라 흡입 모터의 흡입력 세기를 자동으로 조절할 수 있다. 예를 들어, 피청소면의 상태가 마루(hard floor)에서 카펫으로 변경된 경우, 무선 청소기(100)는 청소 성능을 높이기 위해 흡입 모터의 흡입력 세기를 높일 수 있다. 반면, 피청소면의 상태가 카펫에서 다시 마루로 변경되는 경우, 무선 청소기(100)는 배터리의 사용 시간을 늘리기 위해(또는 동작 소음(예: 브러시 장치의 드럼 마찰 소음, 청소기 본체의 흡입 모터 동작 소음 등)을 낮추기 위해, 또는 브러시 장치의 드럼 회전에 의한 피청소면의 마찰로 인한 손상(예: 긁힘, 스크래치, 까짐, 마모 등)을 줄이기 위해), 흡입 모터의 흡입력 세기를 다시 낮출 수 있다. 피청소면의 상태가 마루에서 매트로 변경되는 경우, 조작 편의성을 높이기 위해(또는 동작 소음(예: 브러시 장치의 드럼 마찰 소음, 청소기 본체의 흡입 모터 동작 소음 등)을 낮추기 위해, 또는 브러시 장치의 드럼 회전에 의한 피청소면의 마찰로 인한 손상(예: 긁힘, 스크래치, 까짐, 마모 등)을 줄이기 위해), 무선 청소기(100)는 자동으로 흡입 모터의 흡입력 세기를 낮출 수 있고, 브러시 장치가 피청소면으로부터 들린 상태(유휴(idle) 상태)인 경우, 배터리의 사용 시간을 늘리기 위해(또는 동작 소음(예: 브러시 장치의 드럼 마찰 소음, 청소기 본체의 흡입 모터 동작 소음 등)을 낮추기 위해), 무선 청소기(100)는 흡입 모터의 흡입력 세기를 최대한 낮출 수 있다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)가 AI 모드로 동작하는 경우, 무선 청소기(100)는 청소기 본체와 브러시 장치 간의 통신을 통해 브러시 장치의 동작을 제어할 수도 있다. 무선 청소기(100)는 브러시 장치의 현재 사용 환경 상태에 따라 브러시 장치의 모터 회전 속도(예: 드럼 RPM), 구속 레벨(trip level), 조명 장치의 동작(예: 색상, 밝기) 등을 적응적으로 조절할 수 있다.
예를 들어, 피청소면의 상태가 마루(hard floor)에서 카펫으로 변경된 경우, 무선 청소기(100)는 청소 성능을 높이기 위해 브러시 장치의 모터 회전 속도(예: 드럼 RPM)를 높일 수 있다. 반면, 피청소면의 상태가 카펫에서 다시 마루로 변경되는 경우, 무선 청소기(100)는 배터리의 사용 시간을 늘리기 위해(또는 동작 소음(예: 브러시 장치의 드럼 마찰 소음, 청소기 본체의 흡입 모터 동작 소음 등)을 낮추기 위해, 또는 브러시 장치의 드럼 회전에 의한 피청소면의 마찰로 인한 손상(예: 긁힘, 스크래치, 까짐, 마모 등)을 줄이기 위해), 브러시 장치의 모터 회전 속도(예: 드럼 RPM)를 다시 낮출 수 있다. 또한, 브러시 장치가 피청소면으로부터 들린 상태(예: 유휴 상태(idle))인 경우, 배터리의 사용 시간을 늘리기 위해(또는 동작 소음(예: 브러시 장치의 드럼 마찰 소음, 청소기 본체의 흡입 모터 동작 소음 등)을 낮추기 위해), 무선 청소기(100)는 브러시 장치의 모터 회전 속도(예: 드럼 RPM)를 최대로 낮출 수 있다.
따라서, 무선 청소기(100)가 AI 모드로 동작하는 경우, 무선 청소기(100)는 AI 모델에 의해 추론된 브러시 장치의 현재 사용 환경 상태에 따라 흡입 모터의 흡입력 세기 또는 브러시 장치의 모터 회전 속도를 자동으로 조절해줌으로써, 청소 성능, 사용자의 조작 편의성, 배터리의 사용 시간, 동작 소음(예: 브러시 장치의 드럼 마찰 소음, 청소기 본체의 흡입 모터 동작 소음 등), 브러시 장치의 드럼 회전에 의한 피청소면의 마찰로 인한 손상(예: 긁힘, 스크래치, 까짐, 마모 등) 등을 효율적으로 개선할 수 있다. 또한, 무선 청소기(100)는, AI 모델을 이용함으로써, 사용자들 각각의 다양한 생활 환경에 맞는 최적의 제어를 제공할 수 있다.
무선 청소기(100)가 AI 모델을 이용하여 최적의 제어를 제공하는 동작에 대해서는 도 8을 참조하여 후에 자세히 살펴보기로 하고, 이하에서는 도 2를 참조하여, 본 개시의 일 실시예에 따른 무선 청소기(100)의 구성에 대해서 살펴보기로 한다.
도 2는 본 개시의 일 실시예에 따른 무선 청소기(100)를 설명하기 위한 도면이다.
도 2를 참조하면, 본 개시의 일 실시예에 따른 무선 청소기(100)는 청소기 본체(1000), 브러시 장치(2000), 연장관(3000)을 포함하는 스틱형 청소기일 수 있다. 그러나 도 2에 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도 2에 도시된 구성요소보다 많은 구성요소에 의해 무선 청소기(100)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 무선 청소기(100)가 구현될 수도 있다. 예를 들어, 무선 청소기(100)는, 연장관(3000)을 제외하고, 청소기 본체(1000)와 브러시 장치(2000)로 구현될 수도 있다. 또한, 무선 청소기(100)는 청소기 본체(1000)의 먼지 배출 및 배터리 충전을 위한 청정 스테이션(미도시)을 더 포함할 수도 있다. 이하 각 구성에 대해서 살펴보자. 본 명세서에서는, 브러시 장치(2000)가 설명되지만, 본 개시의 범위를 벗어나지 않는 한 다른 유형의 부착물이 사용될 수 있음을 이해해야 한다.
청소기 본체(1000)는, 청소 시 사용자가 잡고 이동시킬 수 있는 부분으로, 무선 청소기(100) 내부에 진공을 형성하는 흡입 모터(1110)를 포함할 수 있다. 흡입 모터(1110)는 피청소면(예: 바닥, 침구, 소파 등)으로부터 흡입된 이물질이 수용되는 집진통(먼지통) 내에 위치할 수 있다. 청소기 본체(1000)는, 흡입 모터(1110) 이외에 적어도 하나의 프로세서(1001), 부하 감지 센서(1134), 압력 센서(1400), 메모리(1900) 등을 더 포함할 수 있으나, 이에 한정되는 것은 아니다.
부하 감지 센서(1134)는 브러시 장치(2000)의 부하를 측정하기 위한 센서일 수도 있고, 부하 감지(센싱) 회로일 수도 있으나, 이에 한정되는 것은 아니다. 압력 센서(1400)는 무선 청소기(100) 내부의 유로 압력을 측정하는 센서일 수 있다. 메모리(1900)는 브러시 장치(2000)의 사용 환경 상태를 추론하도록 학습된 AI 모델을 저장할 수 있다. 또한, 적어도 하나의 프로세서(1001)는, 압력 센서(1400)에 의해 측정된 유로 압력에 관한 데이터를 압력 센서(1400)로부터 획득하고, 부하 감지 센서(1134)를 통해 브러시 장치(2000)의 부하와 관련된 데이터를 획득할 수 있다. 그리고 적어도 하나의 프로세서(1001)는, 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 메모리(1900)에 저장된 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다. 적어도 하나의 프로세서(1001)는 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 흡입 모터(1110)의 흡입력 세기를 조절할 수도 있다. 청소기 본체(1000)에 대해서는 도 3을 참조하여 후에 자세히 살펴보기로 한다.
브러시 장치(2000)는, 피청소면에 밀착되어 피청소면의 공기와 이물질을 흡입할 수 있는 장치이다. 브러시 장치(2000)는 청소기 헤드 또는 청소기 부착물로 표현될 수도 있다. 브러시 장치(2000)는 연장관(3000)에 회전 가능하게 결합될 수 있다. 브러시 장치(2000)는, 모터, 회전솔이 붙어 있는 드럼 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 본 개시의 일 실시예에 의하면, 브러시 장치(2000)는 청소기 본체(1000)와의 통신을 제어하기 위한 적어도 하나의 프로세서를 더 포함할 수 있다. 비제한적인 실시예에 따르면, 브러시 장치(2000)는 청소기에 분리 가능하게 결합될 수 있으며, 다른 유형의 청소기 헤드 또는 청소기 부착물로 대체될 수 있다. 브러시 장치(2000)의 종류는 다양할 수 있으며, 브러시 장치(2000)의 종류에 대해서는 도 5를 참조하여 후에 자세히 살펴보기로 한다.
연장관(3000)은 소정의 강성을 갖는 파이프, 중공 도관(hollow conduit) 또는 플렉서블한 호스로 형성될 수 있다. 연장관(3000)은 청소기 본체(1000)의 흡입 모터(1110)를 통해 발생된 흡입력을 브러시 장치(2000)로 전달하고, 브러시 장치(2000)를 통해 흡입된 공기와 이물질을 청소기 본체(1000)로 이동시킬 수 있다. 연장관(3000)은 브러시 장치(2000)와 분리 가능하도록 연결될 수 있다. 연장관(3000)은 청소기 본체(1000)와 브러시 장치(2000) 사이에서 다단으로 형성될 수 있다. 연장관(3000)은 두 개 이상일 수도 있다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)에 포함된 청소기 본체(1000), 브러시 장치(2000), 연장관(3000) 각각은 전원선(예를 들어, +전원선, -전원선)과 신호선을 포함할 수 있다.
전원선은 배터리(1500)로부터 공급되는 전력을 청소기 본체(1000) 및 청소기 본체(1000)에 연결되는 브러시 장치(2000)로 전달하기 위한 선일 수 있다. 신호선은 전원선과 상이하며, 청소기 본체(1000)와 브러시 장치(2000) 간의 신호를 송수신하기 위한 선일 수 있다. 신호선은 브러시 장치(2000) 내에서 전원선에 연결되도록 구현될 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 적어도 하나의 프로세서(1001)와 브러시 장치(2000)의 프로세서 각각은 신호선에 연결된 스위치 소자의 동작을 제어함으로써, 청소기 본체(1000)와 브러시 장치(2000) 간의 쌍방향 통신을 수행할 수 있다. 이하에서는, 청소기 본체(1000)와 브러시 장치(2000)가 신호선을 통해 통신하는 경우, 청소기 본체(1000)와 브러시 장치(2000) 간의 통신을 ‘신호선 통신’으로 정의할 수 있다. 신호선 통신에 대해서는 도 20 내지 도 24를 참조하여 후에 자세히 살펴보기로 한다.
한편, 청소기 본체(1000)와 브러시 장치(2000)는 I2C(Inter Intergrated Circuit) 또는 UART(Universal asynchronous receiver/transmitter)를 이용하여 통신할 수도 있다. 청소기 본체(1000)와 브러시 장치(2000)가 I2C 또는 UART 를 이용하여 통신하는 동작에 대해서는 도 32 내지 도 38을 참조하여 후에 자세히 살펴보기로 한다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 브러시 장치(2000)의 착탈 유무를 감지하는 것에서 나아가 브러시 장치(2000)의 유형을 식별하고, 브러시 장치(2000)의 사용 환경 상태(예: 마루(hard floor), 카펫, 매트, 코너, 피청소면에서 들린 상태 등)에 따라 브러시 장치(2000)의 동작(예: 드럼 RPM)을 적응적으로 제어할 수도 있다. 예를 들어, 청소기 본체(1000)는 브러시 장치(2000)와 주기적으로 통신함으로써, 브러시 장치(2000)의 동작을 제어하기 위한 신호를 브러시 장치(2000)로 전송할 수 있다. 청소기 본체(1000)가 브러시 장치(2000)의 동작(예: 드럼 RPM)을 적응적으로 제어하는 방법에 대해서는 도 23을 참조하여 후에 자세히 살펴보고, 이하에서는, 도 3을 참조하여 청소기 본체(1000)의 구성에 대해서 조금 더 자세히 살펴보기로 한다.
도 3은 본 개시의 일 실시예에 따른 청소기 본체(1000)를 설명하기 위한 도면이다.
청소기 본체(1000)는 사용자가 파지할 수 있도록 마련되는 핸들을 포함할 수 있다. 따라서, 청소기 본체(1000)는 핸디 본체로 표현될 수도 있다. 사용자는 핸들을 잡고 청소기 본체(1000) 및 브러시 장치(2000)를 전후 방향으로 이동시킬 수 있다.
도 3을 참조하면, 청소기 본체(1000)는 피청소면 상의 이물질을 흡입하는데 필요한 흡입력을 발생시키는 흡입력 발생 장치(이하, 모터 어셈블리(1100)라 함), 피청소면으로부터 흡입된 이물질이 수용되는 집진통(1200, 먼지통이라고도 함), 필터부(1300), 압력 센서(1400), 모터 어셈블리(1100)에 전원을 공급할 수 있는 배터리(1500), 통신 인터페이스(1600), 사용자 인터페이스(1700), 적어도 하나의 프로세서(1001)(예: 메인 프로세서(1800)), 메모리(1900)를 포함할 수 있다. 그러나 도 3에 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도 3에 도시된 구성요소보다 많은 구성요소에 의해 청소기 본체(1000)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 청소기 본체(1000)가 구현될 수도 있다.
이하 각 구성에 대해서 살펴보기로 한다.
모터 어셈블리(1100)는 전기력을 기계적인 회전력으로 전환시키는 흡입 모터(1110)와, 흡입 모터(1110)에 연결되어 회전하는 팬(1120), 흡입 모터(1110)와 연결되는 구동 회로(1130)(PCB(Printed Circuit Board)에 포함 됨)를 포함할 수 있다. 흡입 모터(1110)는 무선 청소기(100) 내부에 진공 또는 흡입력을 형성할 수 있다. 여기서, 진공이란 대기압 보다 낮은 상태를 의미한다. 흡입 모터(1110)는 브러시리스 모터(이하, BLDC(Brushless Direct Current) 모터라 함)를 포함할 수 있으나, 이에 한정되는 것은 아니다.
구동 회로(1130)는 흡입 모터(1110)를 제어하고, 브러시 장치(2000)와의 통신을 제어하는 프로세서(이하, 제1 프로세서(1131)라 함), 신호선에 연결되는 제1 스위치 소자(1132), 브러시 장치(2000)로의 전력 공급을 제어하기 위한 스위치 소자(이하, PWM 제어 스위치 소자(1133)라 함)(예: FET, Transistor, IGBT 등), 브러시 장치(2000)의 부하를 감지하는 부하 감지 센서(1134)(예: 션트 저항, 션트 저항과 증폭 회로(OP-AMP), 전류 감지 센서, 자계 검출 센서(비접촉 방식) 등)를 포함할 수 있으나, 이에 한정되는 것은 아니다. 이하에서는, 설명의 편의를 위해, FET를 PWM 제어 스위치 소자(1133)의 일례로 설명하고, 션트 저항을 부하 감지 센서(1134)의 일례로 설명하기로 한다.
제1 프로세서(1131)는 흡입 모터(1110)의 상태와 관련된 데이터(이하, 상태 데이터라 함)를 획득하고, 흡입 모터(1110)의 상태 데이터를 메인 프로세서(1800)에 전달할 수 있다. 또한, 제1 프로세서(1131)는 신호선에 연결되는 제1 스위치 소자(1132)의 동작을 제어(예: 턴온 또는 턴 오프)하여 브러시 장치(2000)로 신호선을 통해 신호(이하, 제1 신호라 함)를 전송할 수 있다. 제1 스위치 소자(1132)는 신호선의 상태를 Low로 만들 수 있는 소자이다. 예를 들어, 제1 스위치 소자(1132)는 신호선의 전압이 0V가 되게 할 수 있는 소자이다. 제1 신호는 브러시 장치(2000)의 회전 솔의 목표 분당 회전 수(이하, 목표 드럼 RPM이라고 하기도 함), 브러시 장치(2000)의 목표 구속 레벨(trip level), 또는 흡입 모터(1110)의 소비 전력 중 적어도 하나를 나타내는 데이터를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 제1 신호는 브러시 장치(2000)에 포함된 조명 장치를 제어하기 위한 데이터를 포함할 수도 있다. 제1 신호는 기 설정된 비트 수로 구현될 수 있다. 예를 들어, 제1 신호는 5비트로 구현될 수도 있고, 8비트로 구현될 수도 있으며, 1비트 당 10ms의 전송 주기를 가질 수 있으나, 이에 한정되는 것은 아니다.
제1 프로세서(1131)는, 브러시 장치(2000)에서 신호선을 통해 전송하는 신호(이하, 제2 신호라 함)를 감지할 수 있다. 제2 신호는, 브러시 장치(2000)의 현재 상태를 나타내는 데이터를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 제2 신호는, 현재 동작 중인 조건에 관한 데이터(예: 현재 드럼 RPM, 현재 구속 레벨, 현재 조명 장치 설정 값 등)를 포함할 수 있다. 또한, 제2 신호는 브러시 장치(2000)의 유형을 나타내는 데이터를 더 포함할 수도 있다. 제1 프로세서(1131)는 제2 신호에 포함된 브러시 장치(2000)의 현재 상태를 나타내는 데이터 또는 브러시 장치(2000)의 유형을 나타내는 데이터를 메인 프로세서(1800)로 전달할 수 있다. 모터 어셈블리(1100)의 구동 회로(1130)에 대해서는 도 20을 참조하여 후에 조금 더 자세히 살펴보기로 한다.
모터 어셈블리(1100)는 집진통(1200) 내에 위치할 수 있다. 집진통(1200)은 브러시 장치(2000)를 통해 유입되는 공기 중의 먼지나 오물을 걸러내어 모아지도록 구성될 수 있다. 집진통(1200)은 청소기 본체(1000)로부터 분리 가능하게 마련될 수 있다.
집진통(1200)은 원심력을 이용하여 이물질을 분리하는 사이클론 방식을 통해 이물질을 수집할 수 있다. 사이클론 방식을 통해 이물질이 제거된 공기는 청소기 본체(1000)의 외부로 배출될 수 있으며, 이물질은 집진통(1200)에 저장될 수 있다. 집진통(1200) 내부에는 멀티 사이클론이 배치될 수 있다. 집진통(1200)은 멀티 사이클론의 하측으로 이물질이 포집되도록 마련될 수 있다. 집진통(1200)은, 청정 스테이션과 연결될 시 집진통(1200)이 개방되도록 마련되는 집진통 도어를 포함할 수 있다. 집진통(1200)은 1차적으로 포집되고 상대적으로 큰 이물질이 집진되는 제1 집진부와 멀티 사이클론에 의해 포집되고 상대적으로 작은 이물질이 집진되는 제2 집진부를 포함할 수도 있다. 제1 집진부와 제2 집진부는 모두 집진통 도어가 개방될 시 외부와 개방되도록 마련될 수 있다.
필터부(1300)는 집진통(1200)에서 걸러지지 않은 초미세 먼지 등을 필터링할 수 있다. 필터부(1300)는 필터를 통과한 공기가 무선 청소기(100)의 외부로 배출되도록 하는 토출구를 포함할 수 있다. 필터부(1300)는, 모터 필터, 헤파 필터 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
압력 센서(1400)는, 유로 내부의 압력(이하, 유로 압력이라고도 함)을 측정할 수 있다. 무선 청소기(100)의 흡입단(예: 흡입 덕트(40))에 마련되는 압력 센서(1400)의 경우 정압을 측정하여 해당 위치의 유속 변화를 측정할 수 있다. 압력 센서(1400)는 절대압 센서 또는 상대압 센서일 수 있으나, 이에 한정되는 것은 아니다. 압력 센서(1400)가 절대압 센서인 경우, 메인 프로세서(1800)는 압력 센서(1400)를 이용하여, 흡입 모터(1110)를 동작시키기 전의 제1 압력 값을 센싱할 수 있다. 그리고 메인 프로세서(1800)는 흡입 모터(1110)를 목표 RPM으로 구동한 후의 제2 압력 값을 센싱하고, 제1 압력 값과 제2 압력 값의 차를 유로 내부의 압력 값으로 이용할 수 있다. 이때, 제1 압력 값은 날씨, 고도, 무선 청소기(100)의 상태, 먼지 유입량 등의 내/외부 영향에 의한 압력 값일 수 있으며, 제 2 압력 값은 고도, 무선 청소기(100)의 상태, 먼지 유입량 등의 내/외부 영향에 의한 압력 값 및 흡입 모터(1110) 구동에 의한 압력 값일 수 있고, 제1 압력 값과 제 2 압력 값의 차이는 흡입 모터(1110) 구동에 의한 압력 값일 수 있다. 따라서, 제1 압력 값과 제2 압력 값의 차를 유로 내부의 압력 값으로 이용하는 경우, 흡입 모터(1110) 이외의 내/외부의 영향을 최소화할 수 있다.
압력 센서(1400)에 의해 측정된 유로 압력은 브러시 장치(2000)의 현재 사용 환경 상태(예: 피청소면의 상태(마루, 카펫, 매트, 코너 등), 피청소면에서 들린 상태 등)를 식별하는데 이용될 수도 있고, 집진통(1200)의 오염 정도나 먼지의 포집 정도에 따라 변화하는 흡입력을 측정하는데 이용될 수도 있다.
비 제한적 실시예에 의하면, 압력 센서(1400)는 흡입단(예: 흡입 덕트(40))에 위치할 수 있다. 흡입 덕트(40)는, 집진통(1200)과 연장관(3000) 또는 집진통(1200)과 브러시 장치(2000)를 연결시켜, 집진통(1200)으로 이물질을 포함하는 유체가 이동할 수 있도록 하는 구조물일 수 있다. 비 제한적 실시예에 의하면, 압력 센서(1400)는 이물/먼지의 오염을 고려하여, 흡입 덕트(40)의 직선부 끝부분(또는 직선부와 곡선부의 변곡점)에 위치할 수 있으나, 이에 한정되는 것은 아니다. 비 제한적 실시예에 의하면, 압력 센서(1400)는 흡입 덕트(40)의 직선부 중간에 위치할 수도 있다. 한편, 압력 센서(1400)가 흡입 덕트(40)에 위치하는 경우, 압력 센서(1400)는 흡입력을 발생시키는 흡입 모터(1110) 전단에 위치하기 때문에, 압력 센서(1400)는 음압 센서(negative pressure sensor)로 구현될 수 있다.
본 개시의 비 제한적 실시예에서는 압력 센서(1400)가 흡입 덕트(40)에 위치하는 경우를 예로 들어 설명하나, 이에 한정되는 것은 아니다. 압력 센서(1400)는 토출단(예: 모터 어셈블리(1100) 내)에 위치할 수도 있다. 압력 센서(1400)가 토출단에 위치하는 경우, 압력 센서(1400)는 흡입 모터(1110)의 후단에 위치하기 때문에, 양압 센서(positive pressure sensor)로 구현될 수 있다. 또한, 압력 센서(1400)는 무선 청소기(100) 내에 복수 개 마련될 수도 있다.
배터리(1500)는 청소기 본체(1000)에 분리 가능하게 장착될 수 있다. 배터리(1500)는 청정 스테이션(미도시)에 마련된 충전 단자와 전기적으로 연결될 수 있다. 배터리(1500)는 충전 단자로부터 전력을 공급받아 충전될 수 있다. 청정 스테이션은 무선 청소기(100)의 먼지 배출 및 배터리(1500)의 충전을 위한 장치일 수 있다. 무선 청소기(100)는 청정 스테이션에 거치(도킹)되어, 먼지를 배출하거나, 배터리(1500)를 충전하거나, 보관될 수 있다.
청소기 본체(1000)는 외부 장치와 통신을 수행하기 위한 통신 인터페이스(1600)를 포함할 수 있다. 예를 들어, 청소기 본체(1000)는 통신 인터페이스(1600)를 통해서 청정 스테이션(또는 서버 장치)과 통신을 수행할 수 있다. 통신 인터페이스(1600)는, 근거리 통신부와 원거리 통신부 등을 포함할 수 있다. 근거리 통신부(short-range wireless communication interface)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(NFC, Near Field Communication interface), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, Infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
사용자 인터페이스(1700)는 핸들에 마련될 수 있다. 사용자 인터페이스(1700)는 입력 인터페이스와 출력 인터페이스를 포함할 수 있다. 청소기 본체(1000)는 사용자 인터페이스(1700)를 통해 무선 청소기(100)의 동작과 관련된 사용자 입력을 수신할 수 있고, 무선 청소기(100)의 동작 관련된 정보를 출력할 수도 있다. 입력 인터페이스는 전원 버튼, 흡입력 강도 조절 버튼 등을 포함할 수 있다. 출력 인터페이스는, LED 디스플레이, LCD, 터치 스크린 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
청소기 본체(1000)는 적어도 하나의 프로세서(1001)를 포함할 수 있다. 청소기 본체(1000)는 하나의 프로세서를 포함할 수도 있고, 복수의 프로세서를 포함할 수도 있다. 예를 들어, 청소기 본체(1000)는 사용자 인터페이스(1700)와 연결되는 메인 프로세서(1800), 흡입 모터(1110)에 연결되는 제1 프로세서(1131)를 포함할 수 있다. 적어도 하나의 프로세서(1001)는 무선 청소기(100)의 전반적인 동작을 제어할 수 있다. 예를 들어, 적어도 하나의 프로세서(1001)는, 흡입 모터(1110)의 소비 전력(흡입력 세기), 브러시 장치(2000)의 드럼 RPM, 브러시 장치(2000)의 구속 레벨(trip level) 등을 결정할 수 있다.
본 개시에 따른 적어도 하나의 프로세서(1001)는 CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerated Processing Unit), MIC (Many Integrated Core), DSP (Digital Signal Processor), 및 NPU (Neural Processing Unit) 중 적어도 하나를 포함할 수 있다. 적어도 하나의 프로세서(1001)는, 하나 이상의 전자부품을 포함하는 집적된 시스템 온 칩(SoC) 형태로 구현될 수 있다. 적어도 하나의 프로세서(1001) 각각은 별개의 하드웨어(H/W)로 구현될 수도 있다. 적어도 하나의 프로세서(1001)는 MICOM(Microprocessor controller), MPU(Micro Processor unit), MCU(Micro Controller Unit)로 표현될 수도 있다.
본 개시에 따른 적어도 하나의 프로세서(1001)는 싱글 코어 프로세서(single core processor)로 구현될 수도 있고, 멀티 코어 프로세서(multicore processor)로 구현될 수도 있다.
메모리(1900)는 적어도 하나의 프로세서(1001)의 처리 및 제어를 위한 프로그램을 저장할 수도 있고, 입/출력되는 데이터들을 저장할 수도 있다. 예를 들어, 메모리(1900)는 기 학습된 AI 모델(예: SVM(Support Vector Machine) 알고리즘 등), 흡입 모터(1110)의 상태 데이터, 압력 센서(1400)의 측정 값, 배터리(1500)의 상태 데이터, 브러시 장치(2000)의 상태 데이터, 에러 발생 데이터, 동작 조건에 대응하는 흡입 모터(1110)의 소비 전력, 회전솔이 붙은 드럼의 RPM, 구속 레벨 등을 저장할 수 있다. 구속 레벨(trip level)은, 브러시 장치(2000)의 과부하를 방지하기 위한 것으로, 브러시 장치(2000)의 작동을 정지하기 위한 기준 부하 값(예: 기준 전류 값)을 의미할 수 있다.
이하에서는, 도 4를 참조하여 무선 청소기(100)의 프로세서들의 동작에 대해서 자세히 살펴보기로 한다.
도 4는 본 개시의 일 실시예에 따른 무선 청소기(100)의 프로세서들의 동작을 설명하기 위한 도면이다.
도 4를 참조하면, 메인 프로세서(1800)는 배터리(1500), 압력 센서(1400), 모터 어셈블리(1100) 내의 제1 프로세서(1131)와 통신함으로써, 무선 청소기(100) 내의 부품들의 상태를 확인할 수 있다. 이때, 메인 프로세서(1800)는 범용 비동기화 송수신기(UART: Universal asynchronous receiver/transmitter) 또는 I2C(Inter Intergrated Circuit)를 이용하여 각 부품들과 통신할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 메인 프로세서(1800)는 UART를 이용하여 배터리(1500)로부터 배터리(1500)의 전압 상태(예: 정상, 비정상, 만 충전, 만 방전 등)에 관한 데이터를 획득할 수 있다. 메인 프로세서(1800)는 압력 센서(1400)로부터 I2C를 이용하여 유로 압력에 대한 데이터를 획득할 수도 있다.
또한, 메인 프로세서(1800)는, 흡입 모터(1110)에 연결된 제1 프로세서(1131)로부터 UART를 이용하여, 흡입력 세기, 흡입 모터(1110)의 RPM, 흡입 모터(1110)의 상태(예: 정상, 비정상 등)에 관한 데이터를 획득할 수 있다. 흡입력은 무선 청소기(100)를 동작시키기 위하여 소모되는 전기적인 힘으로, 소비 전력으로 표현될 수도 있다. 메인 프로세서(1800)는 브러시 장치(2000)의 부하와 관련된 데이터, 브러시 장치(2000)의 유형에 관한 데이터를 제1 프로세서(1131)로부터 획득할 수도 있다.
한편, 제1 프로세서(1131)는 브러시 장치(2000)의 제2 프로세서(2410)와의 신호선 통신을 통해서 브러시 장치(2000)의 상태 데이터(예: 드럼 RPM, 구속 레벨(Trip level), 정상, 비정상 등)를 브러시 장치(2000)로부터 획득할 수도 있다. 이때, 제1 프로세서(1131)는 브러시 장치(2000)의 상태 데이터를 메인 프로세서(1800)에 UART를 통해 전달할 수 있다. 본 개시의 일 실시예에 의하면, 제1 프로세서(1131)는 흡입 모터(1110)의 상태 데이터와 브러시 장치(2000)의 상태 데이터를 서로 다른 주기로 메인 프로세서(1800)에 전달할 수 있다. 예를 들어, 제1 프로세서(1131)는 0.02초마다 한번씩 흡입 모터(1110)의 상태 데이터를 메인 프로세서(1800)로 전달하고, 0.2초마다 한번씩 브러시 장치(2000)의 상태 데이터를 메인 프로세서(1800)로 전달할 수 있으나, 이에 한정되는 것은 아니다.
청소기 본체(1000)의 제1 프로세서(1131)와 브러시 장치(2000)의 제2 프로세서(2410)를 UART나 I2C로 연결하는 경우, 연장관(3000) 내부 선 등에 의한 높은 임피던스 영향과 정전기 방전(ESD: electro static discharge: 정전기 방전) 및/또는 과전압(Over Voltage)에 의한 회로 소자의 소손(예: Micom AD port의 최대 전압 초과) 등이 문제될 수 있다. 따라서, 본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 제1 프로세서(1131)와 브러시 장치(2000)의 제2 프로세서(2410)는 UART나 I2C 대신에 신호선 통신으로 통신하게 된다. 이때, 신호선 통신을 위한 회로는 과전압(Over Voltage), 전원 노이즈, 서지(Surge), ESD(Electrical Overstress), EOS(Electrical Discharge) 등에 의한 회로 소자의 소손 등을 방지하기 위해 전압 분배 회로(이하, 전압 분배기라고 함)를 포함할 수 있다. 다만, 청소기 본체(1000)의 제1 프로세서(1131)와 브러시 장치(2000)의 제2 프로세서(2410) 간의 통신이 신호선 통신으로 한정되는 것은 아니다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000) 및 브러시 장치(2000)에 노이즈 저감 회로가 적용되는 경우, 청소기 본체(1000)의 제1 프로세서(1131)와 브러시 장치(2000)의 제2 프로세서(2410)는 UART나 I2C를 이용하여 통신할 수도 있다. 노이즈 저감 회로는 저주파 통과 필터(Low Pass Filter), 고주파 통과 필터(High Pass Filter), 대역 통과 필터(Band Pass Filter), 댐핑 저항(Damping Resistor), 및 분배 저항 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 본 개시의 일 실시예에 의하면, 청소기 본체(1000) 또는 브러시 장치(2000)에 레벨 쉬프터 회로가 적용되는 경우, 청소기 본체(1000)의 제1 프로세서(1131)와 브러시 장치(2000)의 제2 프로세서(2410)는 UART나 I2C를 이용하여 통신할 수도 있다. 청소기 본체(1000) 및 브러시 장치(2000) 간의 다양한 통신 방식에 대해서는 도 20, 도 27 내지 도 34를 참조하여 후에 자세히 살펴보기로 한다. 이하에서는, 설명의 편의 상, 청소기 본체(1000) 및 브러시 장치(2000)가 신호선 통신을 통해 통신하는 경우를 주된 예로 들어 설명하기로 한다.
한편, 메인 프로세서(1800)는 사용자 인터페이스(1700)에 포함된 설정 버튼(예: ON/OFF 버튼, +/- 설정 버튼)에 대한 사용자 입력을 수신할 수도 있고, LCD의 출력을 제어할 수도 있다. 메인 프로세서(1800)는 기 학습된 AI 모델(예: SVM 알고리즘)을 이용하여, 브러시 장치(2000)의 사용 환경 상태(예: 피청소면의 상태(마루, 카펫, 매트, 코너 등), 피청소면에서 들린 상태 등)를 식별하고, 브러시 장치(2000)의 사용 환경 상태에 맞는 무선 청소기(100)의 동작 정보(예: 흡입 모터(1110)의 소비 전력, 드럼 RPM, 구속 레벨(Trip level) 등)를 결정할 수도 있다. 이때, 메인 프로세서(1800)는 브러시 장치(2000)의 사용 환경 상태에 맞는 무선 청소기(100)의 동작 정보를 제1 프로세서(1131)로 전달할 수 있다. 제1 프로세서(1131)는 무선 청소기(100)의 동작 정보에 따라 흡입 모터(1110)의 흡입력의 세기(소비전력, RPM)를 조절할 수 있으며, 브러시 장치(2000)의 사용 환경 상태에 맞는 무선 청소기(100)의 동작 정보를 신호선 통신을 통해서 제2 프로세서(2410)로 전달할 수도 있다. 이 경우, 제2 프로세서(2410)는 무선 청소기(100)의 동작 정보에 따라 드럼 RPM, 구속 레벨, 조명 장치(예: LED 디스플레이) 등을 조절할 수 있다. 메인 프로세서(1800)가 기 학습된 AI 모델(예: SVM 알고리즘)을 이용하여, 브러시 장치(2000)의 사용 환경 상태를 식별하고, 브러시 장치(2000)의 사용 환경 상태에 맞는 무선 청소기(100)의 동작 정보를 결정하는 동작에 대해서는 도 14를 참조하여 후에 자세히 살펴보기로 하고, 이하에서는 도 5를 참조하여, 브러시 장치(2000)에 대해서 조금 더 살펴보기로 한다.
도 5는 본 개시의 일 실시예에 따른 브러시 장치(2000)를 설명하기 위한 도면이다.
도 5를 참조하면, 브러시 장치(2000)는, 모터(2100), 회전솔이 붙어 있는 드럼(2200), 조명 장치(2300) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 브러시 장치(2000)의 모터(2100)는 드럼(2200) 안에 마련될 수도 있고, 드럼(2200) 외부에 마련될 수도 있다. 모터(2100)가 드럼(2200) 외부에 마련된 경우, 드럼(2200)은 벨트를 통해서 모터(2100)로부터 동력을 전달받을 수 있다.
도 5의 510을 참조하면, 모터(2100)는 유성 기어드 모터일 수 있다. 유성 기어드 모터는 DC 모터에 유성 기어(2101)가 결합된 형태일 수 있다. 유성 기어(2101)는 드럼(2200)의 RPM을 기어 비에 따라 조절하기 위한 것이다. 유성 기어드 모터의 경우, 모터(2100)의 RPM과 드럼(2200)의 RPM이 일정한 비율을 가질 수 있다. 도 5의 520을 참조하면, 모터(2100)는 BLDC(Brushless Direct Current) 모터일 수도 있으나, 이에 한정되는 것은 아니다. 모터(2100)가 BLDC 모터인 경우, 모터(2100)의 RPM과 드럼(2200)의 RPM이 동일할 수 있다.
조명 장치(2300)는 어두운 피청소면을 밝혀주거나, 피청소면의 먼지 또는 이물의 식별이 용이하도록 밝혀주거나, 브러시 장치(2000)의 상태를 나타내기 위한 것으로, 브러시 장치(2300)의 전면 또는 상단에 마련될 수 있다. 조명 장치(2300)는 LED 디스플레이를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 조명 장치(2300)는 레이저일 수도 있다. 조명 장치(2300)는 모터(2100)가 구동 됨에 따라 자동으로 동작할 수도 있고, 제2 프로세서(2410)의 제어에 따라 동작할 수도 있다. 본 개시의 일 실시예에 의하면, 조명 장치(2300)는 제2 프로세서(2410)의 제어에 의해 색상이 변경될 수도 있고, 밝기가 변경될 수도 있다.
도 5의 520을 참조하면, 브러시 장치(2000)는 구동 회로(2400)(PCB에 포함됨) 를 더 포함할 수 있다. 구동 회로(2400)는 청소기 본체(1000)와의 신호선 통신을 위한 회로를 포함할 수 있다. 예를 들어, 구동 회로(2400)는 제2 프로세서(2410), 신호선에 연결되는 스위치 소자(이하, 제2 스위치 소자라고도 함)(미도시), 브러시 장치(2000)의 유형을 나타내는 식별 저항(미도시) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 구동 회로(2400)에 대해서는 도 20을 참조하여 후에 자세히 살펴보기로 한다.
한편, 브러시 장치(2000)의 종류는 다양할 수 있다. 예를 들어, 브러시 장치(2000)는, 멀티 브러시(501), 마루 브러시(502), 물걸레 브러시(503), 터보(카펫) 브러시(504), 침구 브러시(505), 솔 브러시(미도시), 틈새 브러시(미도시), 펫 브러시(미도시) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000) 또는 부착물의 유형은 브러시 장치(2000) 또는 부착물에 포함된 식별 저항에 의해 구별될 수 있다. 청소기 본체(1000)가 무선 청소기(100)에 결합된 브러시 장치(2000)의 유형 또는 부착물의 유형을 식별하는 동작에 대해서 도 6을 참조하여 살펴보기로 한다.
도 6은 본 개시의 일 실시예에 따른 청소기 본체(1000)에서 브러시 장치(2000)의 유형을 식별하는 동작을 설명하기 위한 도면이다.
도 6을 참조하면, 청소기 본체(1000)의 모터 어셈블리(1100)는, 제1 프로세서(1131)와 부하 감지 센서(1134)(예: 션트 저항)를 포함할 수 있고, 브러시 장치(2000)는 식별 저항(2500)을 포함할 수 있다. 식별 저항(2500)은 전원선(10, 20)과 신호선(30) 사이에 위치할 수 있다. 식별 저항(2500)은 브러시 장치(2000)의 유형 또는 부착물의 유형을 나타내는 것으로, 브러시 장치(2000)의 유형 또는 부착물의 유형마다 상이할 수 있다. 예를 들어, 멀티 브러시(501)의 식별 저항(2500)은 330KΩ이고, 마루 브러시(502)의 식별 저항(2500)은 2.2MΩ이고, 터보(카펫) 브러시(504)의 식별 저항(2500)은 910KΩ일 수 있으나, 이에 한정되는 것은 아니다.
제1 프로세서(1131)는 부하 감지 센서(1134)를 이용하여 브러시 장치(2000)의 착탈 여부를 감지할 수 있다. 예를 들어, 무선 청소기(100)에 브러시 장치(2000)가 결합되지 않은 경우(예: 핸디 모드), 부하 감지 센서(1134)에서 감지되는 브러시 장치(2000)의 동작 전류는 “0” (zero)일 수 있다. 반면, 무선 청소기(100)에 브러시 장치(2000)가 결합된 경우(예: 브러시 모드), 부하 감지 센서(1134)에서 감지되는 브러시 장치(2000)의 동작 전류는 50 mA이상일 수 있다. 따라서, 제1 프로세서(1131)는, 부하 감지 센서(1134)에서 감지된 브러시 장치(2000)의 동작 전류가 0인 경우 브러시 장치(2000)가 탈착된 것으로 판단하고, 부하 감지 센서(1134)에서 감지된 브러시 장치(2000)의 동작 전류가 50mA 이상인 경우 브러시 장치(2000)가 결합된 것으로 판단할 수 있다. 한편, 브러시 장치(2000)가 결합된 것으로 판단하기 위한 기준 동작 전류 값은 50mA로 한정되는 것은 아니고, 변경될 수 있다.
제1 프로세서(1131)는, 무선 청소기(100)에 브러시 장치(2000)가 결합된 것으로 판단된 경우, 제1 프로세서(1131)의 입력 포트(AD port)로 입력되는 전압 값에 기초하여, 브러시 장치(2000)의 유형을 식별할 수 있다. 예를 들어, 브러시 장치(2000)가 식별 저항 A를 포함하고, 청소기 본체(1000)의 구동 회로(1130)가 신호선(30)에 연결되는 전압 분배기(저항 B와 저항 C)를 포함하는 경우, 제1 프로세서(1131)의 입력 포트로 입력되는 전압은 다음과 같을 수 있다.
AD Port 입력 전압= 배터리 공급 전압* C/(A+B+C)
제1 프로세서(1131)의 입력 포트로 입력되는 전압 값(즉, AD Port 입력 전압)은, 식별 저항(2500)의 값이 증가할수록 감소할 수 있다. 저항 B, 저항 C가 일정할 때, 식별 저항 A 값에 따라 입력 포트로 입력되는 전압 값이 달라지므로, 제1 프로세서(1131)는 입력 포트로 입력되는 전압 값에 기초하여 식별 저항(2500)에 대응하는 브러시 장치(2000)의 유형을 식별할 수 있다. 이에 대해서는, 도 7을 참조하기로 한다.
도 7은 본 개시의 일 실시예에 따른 브러시 장치(2000)의 식별 저항(ID 저항)을 설명하기 위한 도면이다.
도 7의 표(700)를 참조하면, 멀티 브러시(501)의 식별 저항은 330KΩ이고, 마루 브러시(502)의 식별 저항은 2.2MΩ이고, 터보(카펫) 브러시(504)의 식별 저항은 910KΩ일 수 있다. 만일, 배터리(1500)의 전압이 25.2V인 경우, 무선 청소기(100)에 멀티 브러시(501)가 결합되었을 때 제1 프로세서(1131)의 입력 포트로 입력되는 전압 값은 2.785V이고, 무선 청소기(100)에 마루 브러시(502)가 결합되었을 때 제1 프로세서(1131)의 입력 포트로 입력되는 전압 값은 0.791V이고, 무선 청소기(100)에 터보(카펫) 브러시(504)가 결합되었을 때 제1 프로세서(1131)의 입력 포트로 입력되는 전압 값은 1.563V일 수 있다. 따라서, 제1 프로세서(1131)는 무선 청소기(100)에 브러시 장치(2000)가 결합된 것으로 판단되고, 배터리(1500)의 전압이 25.2V인 상황에서, 입력 포트로 입력되는 전압 값이 2.785V인 경우 멀티 브러시(501)가 결합된 것으로 식별하고, 입력 포트로 입력되는 전압 값이 0.791V 인 경우 마루 브러시(502)가 결합된 것으로 식별하고, 입력 포트로 입력되는 전압 값이 1.563V 인 경우 터보(카펫) 브러시(504)가 결합된 것으로 식별할 수 있다.
이하에서는, 무선 청소기(100)가 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기를 자동으로 조절하는 동작에 대해서 도 8을 참조하여 자세히 살펴보기로 한다.
도 8은 본 개시의 일 실시예에 따른 무선 청소기(100)가 흡입 모터(1110)의 흡입력 세기를 조절하는 방법을 설명하기 위한 순서도이다.
단계 S810에서, 무선 청소기(100)는 압력 센서(1400)에 의해 측정된 유로 압력에 관한 데이터를 획득할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 적어도 하나의 프로세서(1001)는, 압력 센서(1400)에서 측정된 압력 값을 획득할 수 있다. 예를 들어, 메인 프로세서(1800)는 I2C 통신을 통해 압력 센서(1400)에서 측정된 압력 값을 압력 센서(1400)로부터 수신할 수 있다. 압력 센서(1400)는 유로 내에 위치하여 유로 내부의 압력(유로 압력)을 측정할 수 있다. 예를 들어, 압력 센서(1400)는 흡입 덕트(40) 또는 모터 어셈블리(1100) 내에 위치할 수 있으나, 이에 한정되는 것은 아니다.
압력 센서(1400)는 절대압 센서 또는 상대압 센서일 수 있다. 압력 센서(1400)가 절대압 센서인 경우, 메인 프로세서(1800)는 압력 센서(1400)를 이용하여, 흡입 모터(1110)를 동작시키기 전의 제1 압력 값과 흡입 모터(1110)를 목표 RPM으로 구동한 후의 제2 압력 값을 센싱하고, 제1 압력 값과 제2 압력 값의 차를 유로 내부의 압력 값으로 이용할 수 있다. 제1 압력 값과 제2 압력 값의 차를 유로 내부의 압력 값으로 이용하는 경우, 흡입 모터(1110) 이외의 내/외부의 영향을 최소화할 수 있다.
단계 S820에서, 무선 청소기(100)는 부하 감지 센서(1134)를 통해 브러시 장치(2000)의 부하와 관련된 데이터를 획득할 수 있다.
본 개시의 일 실시예에 의하면, 부하 감지 센서(1134)는 모터 어셈블리(1100)의 구동 회로(1130) 내에 위치하며, 션트 저항, 전류 감지 회로, 부하 감지 회로 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 청소기 본체(1000)의 메인 프로세서(1800)는 모터 어셈블리(1100) 내의 제1 프로세서(1131)로부터 브러시 장치(2000)의 부하와 관련된 데이터를 수신할 수 있다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)의 부하와 관련된 데이터는, 브러시 장치(2000)의 동작 전류, 브러시 장치(2000)로 인가되는 전압, 또는 브러시 장치(2000)의 소비 전력 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 브러시 장치(2000)의 소비 전력은, 모터(2100)의 소비 전력일 수 있으며, 브러시 장치(2000)의 동작 전류와 브러시 장치(2000)로 인가되는 전압의 곱으로 산출될 수 있다. 브러시 장치(2000)가 조명 장치(2300)(예: LED 디스플레이)를 포함하는 경우, 브러시 장치(2000)의 부하는 모터(2100)의 부하와 조명 장치(2300)의 부하의 합으로 산출될 수 있다.
단계 S830에서, 청소기 본체(1000)는 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 하나 이상의 기 학습된 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다.
본 개시의 일 실시예에 의하면, AI 모델은 브러시 장치(2000)의 사용 한경 상태를 추론하도록 학습된 머신 러닝 알고리즘일 수 있다. AI 모델은, 외부 장치(예: 서버 장치, 외부 컴퓨팅 장치)에서 학습(train) 또는 갱신(renew, refine)될 수도 있고, 청소기 본체(1000)에서 학습 또는 갱신될 수도 있다. 예를 들어, 청소기 본체(1000)는 외부 장치에서 학습된 AI 모델을 수신하여 메모리(1900)에 저장할 수도 있고, 청소기 본체(1000)의 적어도 하나의 프로세서(1001)가 브러시 장치(2000)의 사용 환경 상태를 추론하기 위한 AI 모델을 학습을 통해 만들 수도 있다.
본 개시의 일 실시예에 의하면, AI 모델은 SVM(Support Vector Machine) 모델, 신경망(Neural Networks) 모델, 랜덤 포레스트(Random Forest) 모델, 또는 그래픽 모델(Graphical Model) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
SVM 모델은 데이터에 있는 특성들을 커널(kernel) 함수를 이용하여 입체 공간에 데이터를 분류할 수 있는 최대 마진의 초 평면(hyper plane)을 만들어주는 알고리즘일 수 있다. 랜덤 포레스트(Random Forest) 모델은 다수의 의사결정 트리들(decision trees)을 훈련시키고, 다수의 의사결정 트리들의 결과를 종합해 예측하는 앙상블 알고리즘일 수 있다. 신경망 모델은 입력값 별 가중치 및 변환 함수를 조합하여 출력을 도출하는 알고리즘일 수 있다. 그래픽 모델(Graphical Model)은 확률 변수 간의 독립성을 그래프로 표현하는 알고리즘일 수 있다. 이때, 확률 변수는 노드(node)로 표현되며, 확률 변수 간의 조건적 독립성(conditional independency)은 엣지(edge)로 표현될 수 있다.
SVM 모델의 경우 상대적으로 정확도가 높고, 응답 속도가 빨라 무선 청소기(100)의 동작을 최적의 사양으로 빠르게 전환할 수 있으므로, 이하에서는 AI 모델이 SVM 모델인 경우를 주된 예로 설명하기로 한다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)의 사용 환경 상태는 청소 중에 브러시 장치(2000)가 사용되고 있는 환경에 관한 것일 수 있다. 예를 들어, 브러시 장치(2000)의 사용 환경 상태는 브러시 장치(2000)가 위치하는 피청소면의 상태, 피청소면 내에서 브러시 장치(2000)의 상대적 위치 상태, 또는 브러시 장치(2000)가 피청소면에서 들린 상태 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 여기서, 피청소면은 바닥, 침구, 소파 등 청소 중에 브러시 장치(2000)와 맞닿는 면을 의미할 수 있다. 피청소면의 상태는, 피청소면의 소재 등을 의미할 수 있으며, 예를 들어, 마루, 일반 카펫(정상부하), 고밀도 카펫(과부하), 매트 등이 있을 수 있다. 상대적 위치 상태는 바닥 중앙, 바닥 측면(벽면), 코너 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 이하에서는 설명의 편의상 다양한 사용 환경 상태 중에서 매트 상태, 마루 상태, 카펫 상태 및 들림 상태를 예로 들어 설명하기로 한다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 메인 프로세서(1800)는, 기 저장된 AI 모델에 압력 센서(1400)로부터 획득된 유로 압력에 관한 데이터 및 제1 프로세서(1131)로부터 획득된 브러시 장치(2000)의 부하와 관련된 데이터를 입력하고, AI 모델의 추론 결과로서 브러시 장치(2000)의 현재 사용 환경 상태를 획득할 수 있다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)의 유형에 따라 AI 모델의 입력 값으로 사용되는 브러시 장치(2000)의 부하 값이 달라질 수 있다. 예를 들어, 브러시 장치(2000)가 마루 브러시(502)인 경우, 메인 프로세서(1800)는 마루 브러시(502)에 대응하는 제1 AI 모델에 마루 브러시(502)의 동작 전류 데이터를 입력할 수 있다. 반면, 브러시 장치(2000)가 멀티 브러시(501)인 경우, 멀티 브러시(501)에 대응하는 제2 AI 모델에 멀티 브러시(501)의 소비 전력(또는, 동작 전류 및 인가 전압)을 입력할 수 있다.
마루(hard floor)를 청소할 때는 유로 압력과 브러시 장치(2000)의 부하가 보통이나, 매트를 청소할 때는 유로 압력과 브러시 장치(2000)의 부하가 크게 증가할 수 있고, 카펫을 청소할 때는 유로 압력은 보통이나 브러시 장치(2000)의 부하가 크게 증가할 수 있고, 브러시 장치(2000)가 들린 상태일 때는 유로 압력과 브러시 장치(2000)의 부하가 크게 줄어들 수 있다. 따라서, 청소기 본체(1000)는 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 하나 이상의 기 학습된 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다. 예를 들어, 현재 무선 청소기(100)에서 사용되고 있는 브러시 장치(2000)에 대응하는 AI 모델에 보통의 제1 유로 압력 값과 보통의 제1 부하 값이 적용되는 경우, AI 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘마루(hard floor)’를 출력할 수 있고, AI 모델에 높은 제2 유로 압력 값과 높은 제2 부하 값이 적용되는 경우, AI 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘매트’를 출력할 수 있다.
한편, 브러시 장치(2000)의 사용 환경 상태는 수시로 변경될 수 있으므로, 청소기 본체(1000)는, 소정 주기로 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 기 학습된 AI 모델에 적용하여, 브러시 장치(2000)의 사용 환경 상태를 계속 모니터링할 수 있다.
단계 S840에서, 청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 흡입 모터(1110)의 흡입력 세기를 조절할 수 있다.
흡입력은 무선 청소기(100)를 동작시키기 위하여 소모되는 전기적인 힘(Input Power)으로, 흡입 모터(1110)의 흡입력 세기는 흡입 모터(1110)의 소비 전력으로 표현될 수도 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 브러시 장치(2000)의 현재 사용 환경 상태가 마루(hard floor)를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 중간 강도인 제1 세기로 결정할 수 있다. 예를 들어, 청소기 본체(1000)는, 흡입 모터(1110)의 소비 전력을 70W로 결정할 수 있다.
청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태가 매트(또는 고밀도 카펫)를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 제1 세기보다 낮은 제2 세기로 결정할 수 있다. 사용자가 매트 또는 고밀도 카펫을 청소할 때, 브러시 장치(2000)가 피청소면에 과밀착되어 사용자가 무선 청소기(100)를 이동시키기 어렵다. 따라서, 청소기 본체(1000)는, 마루를 청소할 때 보다 매트 또는 고밀도 카펫을 청소할 때 흡입력 세기를 낮게 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 매트를 청소할 때 흡입 모터(1110)의 소비 전력을 58W로 결정하고, 고밀도 카펫을 청소할 때 흡입 모터(1110)의 소비 전력을 40W로 결정할 수 있다. 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 사용자가 브러시 장치(2000)를 매트 또는 고밀도 카펫 위로 옮겼을 때 자동으로 흡입 모터(1110)의 흡입력 세기를 감소시킴으로써, 사용자의 사용 편의성을 개선할 수 있다.
청소기 본체(1000)는 브러시 장치(2000)의 현재 사용 환경 상태가 일반 카펫을 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 제1 세기보다 높은 제3 세기로 결정할 수 있다. 마루(hard floor)보다 일반 카펫에서 먼지나 이물질을 흡입하기 위해서는 더 큰 흡입력이 필요할 수 있다. 따라서, 청소기 본체(1000)는 마루보다 일반 카펫을 청소할 때 흡입력 세기를 높게 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 115W로 결정할 수 있다. 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 사용자가 브러시 장치(2000)를 카펫 위로 옮겼을 때 자동으로 흡입 모터(1110)의 흡입력 세기를 증가시킴으로써, 카펫에서의 청소 성능을 높일 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태가 피청소면으로부터 일정 거리 이상 들린 상태(이하, 들림 상태)인 경우, 흡입 모터(1110)의 흡입력 세기를 최소 강도로 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 40W로 결정할 수 있다. 브러시 장치(2000)가 들림 상태(또는 idle 상태)인 경우, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 최소화함으로써, 배터리(1500)의 사용시간을 연장시킬 수 있다.
한편, 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태가 벽면 코너를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 최대 강도로 결정할 수도 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 200W로 결정할 수 있다. 따라서, 청소기 본체(1000)는 사용자가 벽면 코너를 청소할 때 자동으로 흡입 모터(1110)의 흡입력 세기를 증가시킴으로써, 벽면 코너에서의 청소 성능을 높일 수 있다.
본 개시의 일 실시예에 따른 무선 청소기(100)는, 브러시 장치(2000)에 대응하는 AI 모델을 이용하여 브러시 장치(2000)의 현재 사용 환경 상태를 식별하고, 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기를 자동으로 조절해 줄 수 있다. 따라서, 사용자는 청소 시 바닥 상태에 맞는 브러시를 교체할 필요 없고, 배터리(1500)의 사용시간도 연장될 수 있으며, 청소 성능 및 효율도 향상될 수 있다. 또한, 무선 청소기(100)는 흡입력 세기를 미세하게 조정할 수도 있다. 예를 들어, 무선 청소기(100)는 일반모드에서는 사용자가 선택한 강도(예: 약, 중, 강)에 따라 흡입 모터(1110)의 소비 전력을 40W, 75W, 115W 중에서 하나만 선택할 수 있으나, AI 모드에서는 40W, 75W, 115W 이외에 중간 값(예: 50W, 60W, 80W, 95W, 130W, 200W)도 선택할 수 있으므로, 흡입력 세기를 미세하게 조정할 수 있다.
이하에서는, 도 9를 참조하여, 브러시 장치(2000)의 사용 환경 상태를 추론하기 위한 AI 모델의 일례로서 SVM 모델에 대해서 살펴보기로 한다.
도 9는 본 개시의 일 실시예에 따른 브러시 장치(2000)의 사용 환경 상태를 추론하는 SVM 모델을 설명하기 위한 도면이다.
도 9의 910을 참조하면, SVM 모델은 지도 학습을 통해 생성될 수 있다. SVM 모델은 레이블이 달린 학습 데이터로 학습한 후에 새로 입력된 데이터가 학습했던 그룹들 중에서 어느 그룹에 속하는 지를 찾아내는 모델이다. 본 개시의 일 실시예에 의하면, SVM 모델은, 특정 사용 환경 상태에서의 브러시 장치(2000)의 부하 값과 흡입 모터(1110)의 압력 값을 학습 데이터로 이용하여 학습될 수 있다.
예를 들어, 마루를 청소할 때 획득 되는 제1 유로 압력 값 및 브러시 장치(2000)의 제1 부하 값, 카펫을 청소할 때 획득되는 제2 유로 압력 값 및 브러시 장치(2000)의 제2 부하 값, 매트를 청소할 때 획득되는 제3 유로 압력 값 및 브러시 장치(2000)의 제3 부하 값, 브러시 장치(2000)가 바닥에서 들려 있을 때 획득되는 제4 유로 압력 값 및 브러시 장치(2000)의 제4 부하 값이 학습데이터로 이용될 수 있다. 또한, SVM 모델은, 유로 압력 값 및 브러시 장치(2000)의 부하 값이 획득될 때의 사용 환경 상태(예: 마루, 카펫, 매트, 들림 등)를 레이블(예: 정답값, ground-truth)로 이용하여 학습될 수 있다.
본 개시의 일 실시예에 의하면, SVM 모델은, 외부 장치(예: 서버 장치, 외부 컴퓨팅 장치)에서 학습(train)될 수도 있고, 청소기 본체(1000)에서 학습될 수도 있다.
도 9의 920을 참조하면, 학습된 SVM 모델은 사용 환경 상태를 분류하기 위한 적어도 하나의 초 평면으로 구성될 수 있다. 예를 들어, 사용 환경 상태를 예측하기 위한 SVM 모델은, 마루와 카펫을 구분하기 위한 초 평면, 마루와 매트를 구분하기 위한 초 평면, 카펫과 들림을 구분하기 위한 초 평면 등으로 구성될 수 있다. 각각의 초 평면은 직선 방정식(y = ax + b)으로 표현될 수 있다. 직선 방정식에서 a, b는 매개변수(parameter)일 수 있으며, 매개변수는 흡입 모터(1110)의 흡입력 세기, 브러시 장치(2000)의 유형, 청소기(100)의 상태(예: 먼지량 등) 등에 따라 수정될 수 있다. 또한 초 평면의 방정식은 고차 방정식(예: y = ax2 + b, y = ax3 + b 등)일 수도 있다.
도 10은 본 개시의 일 실시예에 따른 청소기 본체(1000)가 SVM 모델을 이용하여 브러시 장치(2000)의 사용 환경 상태를 식별하는 동작을 설명하기 위한 도면이다.
도 10에서는 브러시 장치(2000)의 사용 환경 상태가 마루(1011, hf: hard floor), 카펫(1012, carpet), 매트(1013, mat), 들림(1014, lift)과 같이 네 가지로 구분되는 경우를 예로 들어 설명하기로 한다.
마루(1011)를 청소할 때는 유로 압력과 브러시 장치(2000)의 부하가 보통이나, 매트(1013)를 청소할 때는 유로 압력과 브러시 장치(2000)의 부하가 크게 증가할 수 있고, 카펫(1012)을 청소할 때는 유로 압력은 보통이나 브러시 장치(2000)의 부하가 크게 증가할 수 있고, 브러시 장치(2000)가 들린 상태일 때는 유로 압력과 브러시 장치(2000)의 부하가 크게 줄어들 수 있다. 따라서, SVM 모델에 보통의 유로 압력 값과 보통의 부하 값이 입력되는 경우 SVM 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘마루(1011)’를 출력할 수 있다. SVM 모델에 높은 유로 압력 값과 높은 부하 값이 입력되는 경우 SVM 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘매트(1013)’를 출력할 수 있다. SVM 모델에 보통의 유로 압력 값과 높은 부하 값이 입력되는 경우, SVM 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘카펫(1012)’을 출력할 수 있다. SVM 모델에 낮은 유로 압력 값과 낮은 부하 값이 입력되는 경우, SVM 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘들림(1014)’을 출력할 수 있다. 이때, 마루(1011)는 제1 동작 조건에 매핑되고, 카펫(1012)은 제2 동작 조건에 매핑되고, 매트(1013)는 제3 동작 조건에 매핑되고, 들림(1014)은 제4 동작 조건에 매핑될 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 메인 프로세서(1800)는 SVM 모델을 통해 식별된 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110) 또는 브러시 장치(2000)의 동작을 제어할 수 있다. 예를 들어, 청소기 본체(1000)의 메인 프로세서(1800)는 브러시 장치(2000)의 사용 환경 상태가 ‘마루(1011)’로 식별된 경우, 제1 동작 조건(예: 마루(1011))에 대응하는 제1 동작 정보에 기반하여 흡입 모터(1110)와 브러시 장치(2000)가 동작하도록 제어할 수 있다.
도 10에서는 브러시 장치(2000)의 사용 환경 상태를 추론하는 AI 모델의 일례로 SVM 모델을 설명하였으나, 이에 한정되는 것은 아니다. 청소기 본체(1000)는 다양한 종류의 인공지능 모델(AI 모델)을 무선 청소기(100)의 외부로부터 수신하거나, 학습시킬 수 있다. 이하에서는, 브러시 장치(2000)의 사용 환경 상태를 추론하는 AI 모델의 일례로서 신경망 모델에 대해서 도 11을 참조하여 살펴보기로 한다.
도 11은 본 개시의 일 실시예에 따른 청소기 본체(1000)가 신경망 모델을 이용하여 브러시 장치(2000)의 사용 환경 상태를 식별하는 동작을 설명하기 위한 도면이다.
신경망 모델은, 복수의 신경망 레이어들(예: 입력층, 중간층(히든층), 출력층)로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 신경망 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 신경망 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다. 신경망은, 예를 들어, 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) 등을 포함할 수 있으나, 전술한 예에 한정되지 않는다.
본 개시의 일 실시예에 따른 신경망 모델은 브러시 장치(2000)의 사용 환경 상태를 추론하기 위한 모델일 수 있다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론(Knowledge based Reasoning), 최적화 예측(Optimization Prediction), 선호 기반 계획(Preference-based Planning), 추천(Recommendation) 등을 포함한다.
본 개시에 따른 인공지능과 관련된 기능은 적어도 하나의 프로세서(1001)와 메모리(1900)를 통해 동작된다. 적어도 하나의 프로세서(1001)는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 적어도 하나의 프로세서(1001)는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 적어도 하나의 프로세서(1001)는, 메모리(1900)에 저장된 기 정의된 동작 규칙 또는 인공지능 모델(예: 신경망 모델)에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 적어도 하나의 프로세서(1001)가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델(예: 신경망 모델)은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체(예: 청소기 본체(1000))에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
예를 들어, 본 개시의 일 실시예에 따른 신경망 모델은, 유로 압력 값, 브러시 장치(2000)의 부하 값, 유로 압력 값 및 브러시 장치(2000)의 부하 값이 획득될 때의 사용 환경 상태를 학습 데이터로 이용하여 학습될 수 있다. 예를 들어, 마루를 청소할 때 획득 되는 제1 유로 압력 값 및 브러시 장치(2000)의 제1 부하 값, 카펫을 청소할 때 획득되는 제2 유로 압력 값 및 브러시 장치(2000)의 제2 부하 값, 매트를 청소할 때 획득되는 제3 유로 압력 값 및 브러시 장치(2000)의 제3 부하 값, 브러시 장치(2000)가 바닥에서 들려 있을 때 획득되는 제4 유로 압력 값 및 브러시 장치(2000)의 제4 부하 값이 학습데이터로 이용될 수 있다. 또한, 신경망 모델은, 유로 압력 값 및 브러시 장치(2000)의 부하 값이 획득될 때의 사용 환경 상태(예: 마루, 카펫, 매트, 들림 등)를 레이블(정답값, ground-truth)로 이용하여 학습될 수 있다.
본 개시의 일 실시예에 의하면, 적어도 하나의 프로세서(1001)가 신경망 모델에 유로 압력 값과 브러시 장치(2000)의 부하 값을 입력하는 경우, 신경망 모델은 브러시 장치(2000)의 현재 사용 환경 상태를 출력할 수 있다.
이하에서는 도 12를 참조하여, 브러시 장치(2000)의 사용 환경 상태를 추론하기 위한 AI 모델의 일례로서 랜덤 포레스트 모델에 대해서 살펴보기로 한다.
도 12는 본 개시의 일 실시예에 따른 청소기 본체(1000)가 랜덤 포레스트(Random Forest) 모델을 이용하여 브러시 장치(2000)의 사용 환경 상태를 식별하는 동작을 설명하기 위한 도면이다.
랜덤 포레스트 모델은 복수의 의사결정 트리(decision tree)를 훈련시키고, 복수의 의사결정 트리(decision tree)의 결과를 종합해 예측하는 앙상블 알고리즘일 수 있다. 랜덤 포레스트 모델의 가장 큰 특징은 랜덤성(randomness)에 의해 의사결정 트리들이 서로 조금씩 다른 특성을 갖는다는 점이다. 랜덤화는 각 트리들의 훈련 과정에서 진행되며, 랜덤 학습 데이터 추출 방법을 이용한 앙상블 학습법인 배깅(bagging)과 랜덤 노드 최적화(randomized node optimization)가 자주 이용된다. 배깅(bagging)은 bootstrap aggregating의 약자로, 부트스트랩(bootstrap)을 통해 조금씩 다른 훈련 데이터에 대해 훈련된 기초 분류기(base learner)들을 결합(aggregating)시키는 방법이다. 부트스트랩이란, 주어진 훈련 데이터에서 중복을 허용하여 원 데이터 셋과 같은 크기의 데이터 셋을 만드는 과정을 말한다.
본 개시의 일 실시예에 따른 랜덤 포레스트 모델은, 유로 압력 값, 브러시 장치(2000)의 부하 값, 유로 압력 값 및 브러시 장치(2000)의 부하 값이 획득될 때의 사용 환경 상태를 학습 데이터로 이용하여 학습될 수 있다. 본 개시의 일 실시예에 의하면, 적어도 하나의 프로세서(1001)가 랜덤 포레스트 모델에 현재 유로 압력 값과 브러시 장치(2000)의 현재 부하 값을 입력하는 경우, 랜덤 포레스트 모델은 브러시 장치(2000)의 현재 사용 환경 상태를 출력할 수 있다.
이하에서는, 무선 청소기(100)가 AI 모드로 동작하는 경우, 무선 청소기(100)가 AI 모델이 추론한 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110) 및 브러시 장치(2000)를 제어하는 동작에 대해서 도 13을 참조하여 살펴보기로 한다.
도 13은 본 개시의 일 실시예에 따른 AI 모드(1302)를 설명하기 위한 도면이다.
도 13을 참조하면, 일반 모드(1301)에서는 브러시 장치(2000)의 사용 환경 상태에 따라서 흡입 모터(1110)의 소비 전력과 브러시 장치(2000)의 드럼 RPM이 자동으로 조절되지 않는다. 예를 들어, 무선 청소기(100)가 일반 모드(1301)에서 동작하는 경우, 현재 설정된 강도가 ‘강’이면, 브러시 장치(2000)의 사용 환경 상태가 마루(제1 조건)든 일반 카펫(제2 조건)이든, 과밀도 카펫(제3 조건)이든, 매트(제4 조건)이든, 들림(제5 조건)이든, 코너(제6 조건)이든 상관없이 흡입 모터(1110)의 소비 전력은 115W로 유지되고, 드럼 RPM은 3800rpm으로 유지될 수 있다. 다만, 부하(브러시 장치(2000)의 드럼(2200) 마찰 부하, 이물/먼지 등에 의한 유로 저항 부하 등)에 따라 흡입 모터(1110)의 소비 전력 및 브러시 장치(2000)의 드럼 RPM은 미세하게 변경될 수 있다
도 13을 참조하면, AI 모드(1302)에서는 브러시 장치(2000)의 사용 환경 상태에 따라서 흡입 모터(1110)의 소비 전력과 브러시 장치(2000)의 드럼 RPM이 자동으로 조절될 수 있다. 예를 들어, 무선 청소기(100)가 AI 모드(1302)로 동작하는 경우, 무선 청소기(100)는 현재 유로 압력 값과 브러시 장치(2000)의 현재 부하 값을 AI 모델(예: SVM 모델, 신경망 모델, 랜덤 포레스트 모델 등)에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다. 그리고 무선 청소기(100)는 브러시 장치(2000)의 현재 사용 환경 상태에 따라, 흡입 모터(1110)의 흡입력 세기 외에 브러시 장치(2000)의 드럼 RPM도 결정할 수 있다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 브러시 장치(2000)의 사용 환경 상태가 마루(제1 조건)로 판단된 경우, 흡입 모터(1110)의 소비 전력을 70W로 결정하고, 브러시 장치(2000)의 드럼 RPM을 2000rpm으로 결정할 수 있다. 무선 청소기(100)는 브러시 장치(2000)의 사용 환경 상태가 일반 카펫(제2 조건)으로 판단된 경우, 흡입 모터(1110)의 소비 전력을 115W로 결정하고, 브러시 장치(2000)의 드럼 RPM을 3800rpm으로 결정할 수 있다. 무선 청소기(100)는 브러시 장치(2000)의 사용 환경 상태가 고밀도 카펫(제3 조건)으로 판단된 경우, 흡입 모터(1110)의 소비 전력을 40W로 결정하고, 브러시 장치(2000)의 드럼 RPM을 2000rpm으로 결정할 수 있다. 무선 청소기(100)는 브러시 장치(2000)의 사용 환경 상태가 매트(제4 조건)로 판단된 경우, 흡입 모터(1110)의 소비 전력을 58W로 결정하고, 브러시 장치(2000)의 드럼 RPM을 1500rpm으로 결정할 수 있다. 무선 청소기(100)는 브러시 장치(2000)의 사용 환경 상태가 들림(제5 조건)으로 판단된 경우, 흡입 모터(1110)의 소비 전력을 40W로 결정하고, 브러시 장치(2000)의 드럼 RPM을 1500rpm으로 결정할 수 있다. 무선 청소기(100)는 브러시 장치(2000)의 사용 환경 상태가 코너(제6 조건)로 판단된 경우, 흡입 모터(1110)의 소비 전력을 115W로 결정하고, 브러시 장치(2000)의 드럼 RPM을 3800rpm으로 결정할 수 있다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)가 AI 모드(1302)로 동작하는 경우, 청소 효율, 사용성(조작성, 소음), 피청소면의 손상(예: 브러시 장치(2000)의 드럼(2200)의 마찰 부하에 의한 긁힘, 스크래치, 까짐, 마모 등), 배터리(1500)의 사용 시간이 개선될 수 있다. 예를 들어, 무선 청소기(100)는 흡입력이 강하게 필요한 청소 환경이 아닌 경우(예: 마루, 들림), 흡입력 세기와 드럼 RPM을 낮게 조절함으로써, 배터리 사용 시간을 늘릴 수 있다. 무선 청소기(100)는, 브러시 장치(2000)가 피청소면에 과밀착되어 사용자가 무선 청소기(100)를 조작하기 어려운 청소 환경인 경우(예: 매트, 고밀도 카펫), 흡입력 세기와 드럼 RPM을 낮게 조절함으로써, 사용성(조작성)을 개선할 수 있다. 무선 청소기(100)는, 흡입력이 강하게 필요한 청소 환경인 경우(예: 일반 카펫, 코너), 흡입력 세기를 높게 조절함으로써, 청소 효율(청소 성능)을 높일 수 있다.
도 14는 본 개시의 일 실시예에 따른 무선 청소기(100)가 브러시 장치(2000)의 유형에 따라 AI 모델을 선택하는 방법을 설명하기 위한 도면이다.
단계 S1410에서, 무선 청소기(100)는 청소기 본체(1000)에 연결된 브러시 장치(2000)의 제1 유형을 식별할 수 있다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)가 식별 저항(2500, 도 6 참조)을 포함하는 경우, 무선 청소기(100)는 브러시 장치(2000)의 식별 저항(2500)을 이용하여, 브러시 장치(2000)의 제1 유형을 식별할 수 있다.
예를 들어, 청소기 본체(1000)의 제1 프로세서(1131)는, 무선 청소기(100)에 브러시 장치(2000)가 결합된 것으로 판단된 경우, 제1 프로세서(1131)의 입력 포트로 입력되는 전압 값에 기초하여, 브러시 장치(2000)의 유형을 식별할 수 있다. 무선 청소기(100)가 브러시 장치(2000)의 식별 저항(2500)을 이용하여, 브러시 장치(2000)의 유형을 식별하는 동작에 대해서는 도 6에서 전술하였으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 제1 프로세서(1131) 또는 메인 프로세서(1800)는 신호선 통신을 통해 브러시 장치(2000)로부터 수신된 신호에 기초하여, 브러시 장치(2000)의 제1 유형을 식별할 수 있다. 예를 들어, 브러시 장치(2000)는 신호선 통신 시 전송되는 데이터 신호에 브러시 장치(2000)의 제1 유형을 나타내는 비트를 삽입할 수 있다. 청소기 본체(1000)가 브러시 장치(2000)로부터 수신된 신호에 기초하여, 브러시 장치(2000)의 유형을 식별하는 동작에 대해서는 도 29를 참조하여 후에 조금 더 살펴보기로 한다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 제1 프로세서(1131)가 브러시 장치(2000)의 제1 유형을 식별한 경우, 제1 프로세서(1131)는 브러시 장치(2000)의 제1 유형에 관한 정보를 메인 프로세서(1800)로 전달할 수 있다.
단계 S1420에서, 무선 청소기(100)는 복수의 AI 모델 중에서 브러시 장치(2000)의 제1 유형에 대응하는 제1 AI 모델을 선택할 수 있다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)의 유형에 따라 브러시 장치(2000)의 사용 환경 상태를 추론하기 위한 AI 모델이 달라질 수 있다. 따라서, 청소기 본체(1000)는 브러시 장치(2000)의 유형 별로 복수의 AI 모델을 메모리(1900)에 저장하고, 브러시 장치(2000)의 유형이 제1 유형으로 식별됨에 따라 브러시 장치(2000)의 제1 유형에 대응하는 제1 AI 모델을 선택할 수 있다.
예를 들어, 도 15a를 참조하면, 무선 청소기(100)의 적어도 하나의 프로세서(1001)는, 브러시 장치(2000)가 멀티 브러시(501)인 경우 멀티 브러시(501)에 대응하는 제1 SVM 모델(1510)을 선택할 수 있다. 도 16a를 참조하면, 브러시 장치(2000)가 마루 브러시(502)인 경우, 무선 청소기(100)의 적어도 하나의 프로세서(1001)는 마루 브러시(502)에 대응하는 제2 SVM 모델(1610)을 선택할 수 있다. 멀티 브러시(501)에 대응하는 제1 SVM 모델(1510)의 초 평면들(1511, 1512, 1513)의 형태와 마루 브러시(502)에 대응하는 제2 SVM 모델(1610)의 초 평면들(1611, 1612, 1613)의 형태는 상이할 수 있다.
단계 S1430에서, 무선 청소기(100)는 선택된 제1 AI 모델에 흡입 모터(1110)의 흡입력 세기를 적용하여, 제1 AI 모델의 파라미터 값을 수정할 수 있다.
본 개시의 일 실시예에 의하면, 제1 AI 모델의 파라미터 값은 흡입 모터(1110)의 흡입력 세기(소비 전력)에 따라 달라질 수 있다. 따라서, 청소기 본체(1000)의 메인 프로세서(1800)는, 제1 AI 모델에 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 입력하기 전에, 흡입 모터(1110)의 흡입력의 세기를 적용하여 제1 AI 모델의 파라미터 값을 수정할 수 있다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)의 사용 환경 상태가 변함에 따라 흡입 모터(1110)의 흡입력 세기(소비 전력)가 변경되는 경우, 청소기 본체(1000)의 메인 프로세서(1800)는, 제1 AI 모델에 변경된 흡입력 세기를 적용하여 제1 AI 모델의 파라미터 값을 다시 수정할 수도 있다.
단계 S1440에서, 무선 청소기(100)는 파라미터 값이 수정된 제1 AI 모델에 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 메인 프로세서(1800)는 압력 센서(1400)에 의해 측정된 유로 압력에 관한 데이터를 획득할 수 있다. 청소기 본체(1000)의 메인 프로세서(1800)는 부하 감지 센서(1134)를 통해 브러시 장치(2000)의 부하와 관련된 데이터를 획득할 수 있다. 그리고 청소기 본체(1000)의 메인 프로세서(1800)는, 흡입 모터(1100)의 흡입력 세기(소비 전력)에 따라 파라미터 값이 수정된 제1 AI 모델에 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다.
예를 들어, 파라미터 값이 수정된 제 1 AI 모델에 제1 유로 압력 값과 제1 부하 값이 적용되는 경우, 파라미터 값이 수정된 제 1 AI 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘마루(hard floor)’를 출력할 수 있고, 파라미터 값이 수정된 제 1 AI 모델에 제2 유로 압력 값과 제2 부하 값이 적용되는 경우, 파라미터 값이 수정된 제 1 AI 모델은 브러시 장치(2000)의 사용 환경 상태로서 ‘매트’를 출력할 수 있다.
단계 S1440은, 도 8의 단계 S830에 대응되므로, 구체적인 설명은 생략하기로 한다.
단계 S1450에서, 무선 청소기(100)는, 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 흡입 모터(1110)의 흡입력 세기 또는 브러시 장치(2000)의 회전솔의 RPM(이하, 목표 RPM이라고도 함)을 결정할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 브러시 장치(2000)의 현재 사용 환경 상태가 마루(hard floor)를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 중간 강도인 제1 세기로 결정하고, 브러시 장치(2000)의 목표 RPM을 중간 레벨로 결정할 수 있다. 예를 들어, 청소기 본체(1000)는, 흡입 모터(1110)의 소비 전력을 70W로 결정하고, 브러시 장치(2000)의 목표 RPM을 2000rpm으로 결정할 수 있다.
청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태가 매트(또는 고밀도 카펫)을 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 제1 세기보다 낮은 제2 세기로 결정할 수 있다. 사용자가 매트 또는 고밀도 카펫을 청소할 때, 브러시 장치(2000)가 피청소면에 과밀착되어 사용자가 무선 청소기(100)를 이동시키기 어렵다. 따라서, 청소기 본체(1000)는, 마루를 청소할 때 보다 매트 또는 고밀도 카펫을 청소할 때 흡입력 세기를 낮게 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 58W로 결정할 수 있다. 또한, 청소기 본체(1000)는 브러시 장치(2000)의 현재 사용 환경 상태가 매트를 청소하는 상태인 경우, 브러시 장치(2000)의 목표 RPM을 가장 저단(예: 1000rpm)으로 결정할 수도 있다. 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 사용자가 브러시 장치(2000)를 매트 위로 옮겼을 때 자동으로 흡입 모터(1110)의 흡입력 세기와 브러시 장치(2000)의 회전 속도를 감소시킴으로써, 사용자의 사용 편의성을 개선할 수 있다.
청소기 본체(1000)는 브러시 장치(2000)의 현재 사용 환경 상태가 일반 카펫을 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 제1 세기보다 높은 제3 세기로 결정할 수 있다. 마루보다 일반 카펫에서 먼지나 이물질을 흡입하기 위해서는 더 큰 흡입력이 필요할 수 있다. 따라서, 청소기 본체(1000)는 마루보다 일반 카펫을 청소할 때 흡입력 세기를 높게 결정하고, 브러시 장치(2000)의 목표 RPM도 높게 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 115W로 결정하고, 브러시 장치(2000)의 목표 RPM을 3800rpm으로 결정할 수 있다. 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 사용자가 브러시 장치(2000)를 카펫 위로 옮겼을 때 자동으로 흡입 모터(1110)의 흡입력 세기와 브러시 장치(2000)의 회전 속도를 증가시킴으로써, 카펫에서의 청소 성능을 높일 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태가 피청소면으로부터 일정 거리 이상 들린 상태(이하, 들림 상태)인 경우, 흡입 모터(1110)의 흡입력 세기를 최소 강도로 결정하고, 브러시 장치(2000)의 목표 RPM을 가장 저단으로 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 40W로 결정하고, 브러시 장치(2000)의 목표 RPM을 1500rpm으로 결정할 수 있다. 브러시 장치(2000)가 들림 상태(또는 idle 상태)인 경우, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력과 브러시 장치(2000)의 회전속도를 줄여 불필요하게 소비되는 전력을 줄일 수 있으므로, 배터리(1500)의 사용시간도 연장될 수 있다.
한편, 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 브러시 장치(2000)의 현재 사용 환경 상태가 벽면 코너를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 최대 강도로 결정할 수도 있다. 예를 들어, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 200W로 결정할 수 있다. 따라서, 청소기 본체(1000)는 사용자가 벽면 코너를 청소할 때 자동으로 흡입 모터(1110)의 흡입력 세기를 증가시킴으로써, 벽면 코너에서의 청소 성능을 높일 수 있다.
단계 S1460에서, 무선 청소기(100)는, 흡입 모터(1110)의 흡입력 세기 및 브러시 장치(2000)의 회전솔의 RPM을 조절할 수 있다.
본 개시의 일 실시예에 의하면, 메인 프로세서(1800)는 결정된 흡입력 세기 및 브러시 장치(2000)의 목표 RPM을 제1 프로세서(1131)로 전달할 수 있다. 이때, 제1 프로세서(1131)는 흡입 모터(1110)의 흡입력 세기를 결정된 흡입력 세기로 조절할 수 있다. 그리고 제1 프로세서(1131)는 신호선(30)에 연결된 제1 소위치 소자(1132)의 동작을 제어함으로써, 브러시 장치(2000)의 목표 RPM을 제2 프로세서(2410)로 전송할 수 있다. 본 개시의 일 실시예에 의하면, 제1 프로세서(1131)는 UART나 I2C를 이용하여 브러시 장치(2000)의 목표 RPM을 제2 프로세서(2410)로 전송할 수도 있다. 제1 프로세서(1131)가 제2 프로세서(2410)로 신호를 전송하는 동작에 대해서는 도 20 내지 도 24, 도 27 내지 도 34를 참조하여 후에 자세히 설명하기로 한다. 제2 프로세서(2410)는, 브러시 장치(2000)의 목표 RPM을 청소기 본체(1000)로부터 수신한 경우, 브러시 장치(2000)의 드럼 RPM을 목표 RPM으로 조절할 수 있다.
이하에서는 도 15a 내지 도 16c를 참조하여 무선 청소기(100)가 브러시 장치(2000)의 제1 유형에 대응하는 제1 AI 모델에 흡입 모터(1110)의 흡입력 세기를 적용하여, 제1 AI 모델의 파라미터 값을 수정하는 동작에 대해서 구체적으로 살펴보기로 한다.
도 15a는 본 개시의 일 실시예에 따른 멀티 브러시(501)에 대응하는 제1 SVM 모델(1510)을 설명하기 위한 도면이다. 도 15b는 흡입 모터(1110)의 소비 전력 변화에 따라 멀티 브러시(501)에 대응하는 제1 SVM 모델(1510)의 파라미터 값이 수정되는 동작을 설명하기 위한 도면이다. 도 15c는 흡입 모터(1110)의 소비 전력 변화에 따라 멀티 브러시(501)에 대응하는 제1 SVM 모델(1510)의 파라미터 값이 수정되는 동작을 설명하기 위한 도면이다.
도 15a 내지 도 15c에서는 브러시 장치(2000)의 사용 환경 상태가 마루(hf: hard floor), 카펫(carpet), 매트(mat), 들림(lift)과 같이 네 가지로 구분되는 경우를 예로 들어 설명하기로 한다.
도 15a에 도시된 멀티 브러시(501)에 대응하는 제1 SVM 모델(1510)은 카펫을 매트 또는 마루와 구분하기 위한 제1 초 평면(1511), 마루와 매트를 구분하기 위한 제2 초 평면(1512), 카펫과 들림을 구분하기 위한 제3 초 평면(1513)으로 구성될 수 있다. 각각의 초 평면은 직선 방정식(y = ax + b)으로 표현될 수 있고, 직선 방정식에서 a, b는 매개변수(parameter)일 수 있다. 제1 초 평면(1511), 제2 초 평면(1512), 제3 초 평면(1513) 각각의 파라미터 값은 흡입 모터(1110)의 소비 전력이 40W인 경우에 대응할 수 있다.
도 15b를 참조하면, 흡입 모터(1110)의 소비 전력이 40W에서 58W로 변경되는 경우, 제1 SVM 모델(1510)의 파라미터 값이 수정될 수 있다. 파라미터 값이 수정된 제1-1 SVM 모델(1520)은 마루와 카펫을 구분하기 위한 제1-1 초 평면(1521), 매트와 카펫을 구분하기 위한 제2-1 초 평면(1522), 카펫과 들림을 구분하기 위한 제3-1 초 평면(1523)으로 구성될 수 있다. 제1-1 초 평면(1521)은 제1 초 평면(1511)에 비해 기울기(a)가 작아질 수 있으며, 제2-1 초 평면(1522)은 제2 초 평면(1512)에 비해 기울기(a)가 커질 수 있다.
도 15c를 참조하면, 흡입 모터(1110)의 소비 전력이 40W에서 115W로 변경되는 경우, 제1 SVM 모델(1510)의 파라미터 값이 수정될 수 있다. 파라미터 값이 수정된 제1-2 SVM 모델(1530)은 마루와 카펫을 구분하기 위한 제1-2 초 평면(1531), 카펫과 들림을 구분하기 위한 제3-2 초 평면(1533)으로 구성될 수 있다. 제1-2 SVM 모델(1530)은 제1 SVM 모델(1510)에 비해 마루와 매트를 구분하기 위한 제2 초 평면(1512)을 포함하지 않을 수 있다. 예를 들어, 흡입 모터(1110)의 소비 전력이 40W에서 115W로 변경되는 경우, 제2 초 평면(1512)의 기울기(a)는 0으로 수정될 수 있다.
도 16a는 본 개시의 일 실시예에 따른 마루 브러시(502)에 대응하는 제2 SVM 모델(1610)을 설명하기 위한 도면이다. 도 16b는 흡입 모터(1110)의 소비 전력 변화에 따라 마루 브러시(502)에 대응하는 제2 SVM 모델(1610)의 파라미터 값이 수정되는 동작을 설명하기 위한 도면이다. 도 16c는 흡입 모터(1110)의 소비 전력 변화에 따라 마루 브러시(502)에 대응하는 제2 SVM 모델(1610)의 파라미터 값이 수정되는 동작을 설명하기 위한 도면이다.
도 16a 내지 도 16c에서는 브러시 장치(2000)의 사용 환경 상태가 마루(hf: hard floor), 카펫(carpet), 매트(mat), 들림(lift)과 같이 네 가지로 구분되는 경우를 예로 들어 설명하기로 한다.
도 16a에 도시된 마루 브러시(502)에 대응하는 제2 SVM 모델(1610)은 마루와 매트를 구분하기 위한 제1 초 평면(1611), 마루와 카펫을 구분하기 위한 제2 초 평면(1612), 카펫과 들림을 구분하기 위한 제3 초 평면(1613)으로 구성될 수 있다. 각각의 초 평면은 직선 방정식(y = ax + b)으로 표현될 수 있고, 직선 방정식에서 a, b는 매개변수(parameter)일 수 있다. 제1 초 평면(1611), 제2 초 평면(1612), 제3 초 평면(1613) 각각의 파라미터 값은 흡입 모터(1110)의 소비 전력이 40W인 경우에 대응할 수 있다.
도 16b를 참조하면, 흡입 모터(1110)의 소비 전력이 40W에서 58W로 변경되는 경우, 제2 SVM 모델(1610)의 파라미터 값이 수정될 수 있다. 파라미터 값이 수정된 제2-1 SVM 모델(1620)은 마루와 매트를 구분하기 위한 제1-1 초 평면(1621), 마루와 카펫을 구분하기 위한 제2-1 초 평면(1622), 카펫과 들림을 구분하기 위한 제3-1 초 평면(1623)으로 구성될 수 있다.
도 16c를 참조하면, 흡입 모터(1110)의 소비 전력이 40W에서 115W로 변경되는 경우, 제2 SVM 모델(1610)의 파라미터 값이 수정될 수 있다. 파라미터 값이 수정된 제2-2 SVM 모델(1630)은 마루와 매트를 구분하기 위한 제1-2 초 평면(1631), 마루와 카펫을 구분하기 위한 제2-2 초 평면(1632), 카펫과 들림을 구분하기 위한 제3-2 초 평면(1633)으로 구성될 수 있다.
도 17은 본 개시의 일 실시예에 따른 무선 청소기(100)가 브러시 장치(2000)의 사용 환경 상태 천이를 식별하는 방법을 설명하기 위한 순서도이다.
단계 S1710에서, 무선 청소기(100)는 압력 센서(1400)에 의해 측정된 유로 압력에 관한 데이터를 획득할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 적어도 하나의 프로세서(1001)는, 압력 센서(1400)에서 측정된 압력 값을 획득할 수 있다. 예를 들어, 메인 프로세서(1800)는 I2C 통신을 통해 압력 센서(1400)에서 측정된 압력 값을 압력 센서(1400)로부터 수신할 수 있다. 압력 센서(1400)는 유로 내에 위치하여 유로 내부의 압력(유로 압력)을 측정할 수 있다. 예를 들어, 압력 센서(1400)는 흡입 덕트(40) 또는 모터 어셈블리(1100) 내에 위치할 수 있으나, 이에 한정되는 것은 아니다.
단계 S1720에서, 청소기 본체(1000)는 부하 감지 센서(1134)를 통해 브러시 장치(2000)의 부하와 관련된 데이터를 획득할 수 있다.
본 개시의 일 실시예에 의하면, 부하 감지 센서(1134)는 모터 어셈블리(1100)의 구동 회로(1130) 내에 위치하며, 션트 저항, 전류 감지 회로, 부하 감지 회로 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 청소기 본체(1000)의 메인 프로세서(1800)는 모터 어셈블리(1100) 내의 제1 프로세서(1131)로부터 브러시 장치(2000)의 부하와 관련된 데이터를 수신할 수 있다.
단계 S1730은, 청소기 본체(1000)는 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 기 학습된 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다.
예를 들어, 청소기 본체(1000)의 메인 프로세서(1800)는, 기 저장된 AI 모델에 압력 센서(1400)로부터 획득된 유로 압력에 관한 데이터 및 제1 프로세서(1131)로부터 획득된 브러시 장치(2000)의 부하와 관련된 데이터를 입력하고, AI 모델의 추론 결과로서 브러시 장치(2000)의 현재 사용 환경 상태(예: 마루, 매트, 카펫, 들림, 코너)를 획득할 수 있다.
단계 S1710 내지 단계 S1730은 도 8의 단계 S810 내지 단계 S830에 대응되므로, 구체적인 설명은 생략하기로 한다.
단계 S1740에서, 무선 청소기(100)는, 브러시 장치(2000)의 현재 사용 환경 상태가 천이된 것인지 판단할 수 있다. 예를 들어, 청소기 본체(1000)의 메인 프로세서(1800)는, 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 AI 모델에 적용하여, 브러시 장치(2000)의 사용 환경 상태의 천이(이하, 상태 천이라 함)를 식별할 수 있다.
본 개시의 일 실시예에 의하면, AI 모델이 SVM 모델인 경우, 현재 사용 환경 상태를 추론하기 위한 초 평면과 상태 천이를 추론하기 위한 초 평면이 상이할 수 있다. 예를 들어, 도 18을 참조하면, 마루와 카펫을 구분하는 제1 초 평면(1810)은, 마루에서 카펫으로의 상태 천이를 식별하기 위한 제1-1 초 평면(1801) 및 카펫에서 마루로의 상태 천이를 식별하기 위한 제1-2 초 평면(1802)과 상이할 수 있다. 즉, 무선 청소기(100)가 마루를 청소하다가 브러시 장치(2000)의 부하가 약간 증가하는 경우, 제1 초 평면(1810)을 기준으로 현재 사용 환경 상태가 카펫으로 추론될 수 있다. 하지만, 제1-1 초 평면(1801)을 기준으로는 현재 사용 환경 상태가 마루로 추론될 수 있다. 이 경우, 무선 청소기(100)는 사용 환경 상태가 마루에서 카펫으로 천이되지 않았다고 판단할 수 있다.
반면, 제1 초 평면(1810)을 기준으로도 현재 사용 환경 상태가 카펫으로 추론되고, 제1-1 초 평면(1801)을 기준으로도 현재 사용 환경 상태가 카펫으로 추론된 경우, 무선 청소기(100)는, 사용 환경 상태가 마루에서 카펫으로 천이되었다고 판단할 수 있다.
단계 S1750에서, 무선 청소기(100)는, 상태 천이가 식별되지 않은 경우, 현재 흡입력 세기 및 현재 회전 솔의 RPM을 유지할 수 있다.
단계 S1760에서, 무선 청소기(100)는, 상태 천이가 식별된 경우, 천이된 사용 환경 상태에 대응하는 흡입력 세기 및 회전 솔의 RPM(목표 RPM이라고도 함)을 결정할 수 있다.
예를 들어, 청소기 본체(1000)의 메인 프로세서(1800)는 마루에서 카펫으로의 상태 천이가 식별된 경우, 흡입력 세기와 회전 솔의 RPM을 현재보다 높게 결정할 수 있다. 반면에 카펫에서 마루로의 상태 천이가 식별된 경우, 청소기 본체(1000)의 메인 프로세서(1800)는 흡입력 세기와 회전 솔의 RPM을 현재보다 낮게 결정할 수 있다.
단계 S1770에서, 무선 청소기(100)는 흡입 모터(1110)의 흡입력 세기 및 회전 솔의 RPM을 조절할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 메인 프로세서(1800)는 결정된 흡입력 세기 및 브러시 장치(2000)의 목표 RPM을 제1 프로세서(1131)로 전달할 수 있다. 이때, 제1 프로세서(1131)는 흡입 모터(1110)의 흡입력 세기를 결정된 흡입력 세기로 조절할 수 있다. 그리고 제1 프로세서(1131)는 신호선(30)에 연결된 제1 소위치 소자(1132)의 동작을 제어함으로써, 브러시 장치(2000)의 목표 RPM을 제2 프로세서(2410)로 전송할 수 있다. 본 개시의 일 실시예에 의하면, 제1 프로세서(1131)는 UART나 I2C를 이용하여 브러시 장치(2000)의 목표 RPM을 제2 프로세서(2410)로 전송할 수도 있다.
이하에서는 메인 프로세서(1800)가 제1 프로세서(1131)를 통해 목표 RPM을 제2 프로세서(2410)로 전달하는 동작에 대해서 도 19를 참조하여 조금 더 살펴보기로 한다.
도 19는 본 개시의 일 실시예에 따른 메인 프로세서(1800)가 제1 프로세서(1131)를 통해 제2 프로세서(2410)와 통신하는 동작을 설명하기 위한 도면이다.
도 19를 참조하면, 메인 프로세서(1800)는, 기 저장된 AI 모델(예: SVM 모델)을 이용하여, 흡입 모터(1110)의 RPM(소비 전력, 흡입력의 세기), 브러시 장치(2000)의 드럼(2200)의 목표 RPM, 구속 레벨 등을 결정할 수 있다. 메인 프로세서(1800)는 사용자 인터페이스(1700)를 통한 사용자의 흡입 강도 조절 입력에 기초하여 흡입 모터(1110)의 RPM을 결정할 수도 있다.
단계 S1910에서, 메인 프로세서(1800)는, 흡입 모터(1110)의 RPM(소비 전력, 흡입력의 세기), 브러시 장치(2000)의 드럼(2200)의 목표 RPM, 목표 구속 레벨 등을 포함하는 데이터를 제1 프로세서(1131)로 전달할 수 있다. 예를 들어, 메인 프로세서(1800)는 UART를 이용하여 제1 프로세서(1131)로 데이터를 전달할 수 있으나, 이에 한정되는 것은 아니다.
단계 S1920에서, 제1 프로세서(1131)는 메인 프로세서(1800)로부터 수신된 데이터 중에서 브러시 장치(2000)의 제어와 관련된 데이터를 신호선 통신을 통해 제2 프로세서(2410)로 전달할 수 있다. 예를 들어, 제1 프로세서(1131)는 드럼(2200)의 목표 RPM, 목표 구속 레벨 등을 포함하는 데이터를 제2 프로세서(2410)로 전달할 수 있다. 이때, 제1 프로세서(1131)는 목표 RPM 및 목표 구속 레벨에 대응하는 동작 조건을 나타내는 데이터를 제2 프로세서(2410)로 전달할 수도 있다. 제1 프로세서(1131)와 제2 프로세서(2410)가 동작 조건을 나타내는 데이터를 송수신하는 동작에 대해서는 도 21을 참조하여 후에 자세히 살펴보기로 한다.
브러시 장치(2000)의 제2 프로세서(2410)는 제1 프로세서(1131)로부터 제어와 관련된 데이터를 수신한 경우, 브러시 장치(2000)의 동작을 제어할 수 있다. 예를 들어, 제2 프로세서(2410)는 드럼(2200)의 RPM을 목표 RPM으로 변경하거나 구속 레벨을 목표 구속 레벨로 변경할 수 있다.
단계 S1930에서, 브러시 장치(2000)의 제2 프로세서(2410)는, 제1 프로세서(1131)로부터 제어와 관련된 데이터를 수신한 경우, 동작 상태 피드백 데이터를 제1 프로세서(1131)로 신호선 통신을 통해 전송할 수 있다. 동작 상태 피드백 데이터는, 브러시 장치(2000)의 이상 유무, 현재 드럼(2200)의 RPM 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
단계 S1940에서, 청소기 본체(1000)의 제1 프로세서(1131)는 브러시 장치(2000)의 제2 프로세서(2410)로부터 동작 상태 피드백 데이터를 수신한 경우, 메인 프로세서(1800)로 제2 프로세서(2410)의 동작 상태 피드백 데이터를 전송할 수 있다. 제1 프로세서(1131)는 메인 프로세서(1800)로 UART를 통해 제2 프로세서(2410)의 동작 상태 피드백 데이터를 전송할 수 있다. 제1 프로세서(1131)는 제2 프로세서(2410)의 동작 상태 피드백 데이터 외에 흡입 모터(1110)의 이상 유무, 흡입 모터(1110)의 흡입력의 세기, 브러시 장치(2000)의 부하, 브러시 장치(2000)의 유형 등을 포함하는 데이터를 메인 프로세서(1800)로 더 전달할 수도 있다.
메인 프로세서(1800)는 제1 프로세서(1131)로부터 수신된 데이터에 기초하여, 흡입 모터(1110)의 동작 상태 및 브러시 장치(2000)의 동작 상태를 파악할 수 있다. 그리고 메인 프로세서(1800)는, 브러시 장치(2000)의 사용 환경 상태를 모니터링하고, 브러시 장치(2000)의 사용 환경 상태에 따라 지속적으로 브러시 장치(2000)의 동작을 제어할 수 있다. 예를 들어, 단계 S1910 내지 단계 S1940가 반복적으로 수행됨으로써, 제1 프로세서(1131)가 메인 프로세서(1800)의 제어 명령을 제2 프로세서(2410)로 전달할 수 있다.
이하에서는, 도 20을 참조하여, 제1 프로세서(1131)와 제2 프로세서(2410) 간의 신호선 통신을 위한 회로의 일례를 구체적으로 살펴보기로 한다.
도 20은 본 개시의 일 실시예에 따른 무선 청소기(100)의 신호선 통신을 위한 회로를 설명하기 위한 도면이다. 도 20에서는 설명의 편의를 위해 A가 330KΩ이고, B가 330KΩ이고, C가 82KΩ인 경우를 예로 들어 설명하기로 한다.
제1 프로세서(1131)는 입력 포트(AD 포트)로 입력되는 전압에 기초하여, 브러시 장치(2000)의 유형을 식별할 수 있다. 예를 들어, 제1 프로세서(1131)의 AD 포트 입력 전압이 2.785V(= 배터리 공급 전압* C/(A+B+C) )이므로, 제1 프로세서(1131)는 AD 포트 입력 전압인 2.785V에 대응하는 330KΩ의 식별 저항(2500)을 갖는 멀티 브러시(501)가 청소기 본체(1000)에 연결된 것을 식별할 수 있다(도 7의 표(700) 참조).
무선 청소기(100)에 결합된 브러시 장치(2000)가 구동 회로(2400)를 포함하는 멀티 브러시(501)로 식별된 경우, 청소기 본체(1000)는 브러시 장치(2000)와 신호선 통신을 수행할 수 있다.
청소기 본체(1000)의 제1 프로세서(1131)는 입력 포트를 이용하여 신호를 수신하고, 출력 포트를 이용하여 신호를 송신할 수 있다. 예를 들어, 제1 프로세서(1131)가 출력 포트를 통해 Low 신호를 출력하는 경우, 제1 스위치 소자(1132)는 턴 오프될 수 있다. 제1 스위치 소자(1132)가 턴 오프됨에 따라 신호선(30)의 전압은 약 14V(= 배터리 공급 전압*(B+C)/(A+B+C))로, High 상태가 될 수 있다. 신호선(30)의 전압이 약 14V인 경우 5V보다 크므로, PNP 트랜지스터(2425)가 오프(OFF)되고, 제2 프로세서(2410)의 입력 포트에는 Low(0V) 신호가 입력될 수 있다. 반대로, 제1 프로세서(1131)가 출력 포트를 통해 High 신호를 출력하는 경우, 제1 스위치 소자(1132)는 턴 온될 수 있다. 제1 스위치 소자(1132)가 턴 온됨에 따라 신호선(30)의 전압은 0V(GND)로 바뀌어, Low 상태가 될 수 있다. 신호선(30)의 전압이 0V인 경우 PNP 트랜지스터(2425)가 온(ON)되고, 제2 프로세서(2410)의 입력 포트에는 High 신호(약 4.8V)가 입력될 수 있다. 즉, 제1 프로세서(1131)가 출력 포트를 통해 Low 신호를 출력하는 경우 제2 프로세서(2410)의 입력 포트에는 Low 신호가 입력되고, 제1 프로세서(1131)가 출력 포트를 통해 High 신호를 출력하는 경우 제2 프로세서(2410)의 입력 포트에도 High 신호가 입력될 수 있다.
브러시 장치(2000)의 제2 프로세서(2410)는 입력 포트를 이용하여 신호를 수신하고, 출력 포트를 이용하여 신호를 발신할 수 있다. 예를 들어, 제2 프로세서(2410)가 출력 포트를 통해 High 신호를 출력하는 경우, 제2 스위치 소자(2435)는 턴 온될 수 있다. 제2 스위치 소자(2435)가 턴 온됨에 따라 신호선(30)의 전압은 0V(GND)로 바뀌어, Low 상태가 될 수 있다. 신호선(30)의 전압이 0V인 경우 제1 프로세서(1131)의 입력 포트에는 Low 신호(0V)가 입력될 수 있다. 반대로, 제2 프로세서(2410)가 출력 포트를 통해 Low 신호를 출력하는 경우, 제2 스위치 소자(2435)는 턴 오프될 수 있다. 제2 스위치 소자(2435)가 턴 오프됨에 따라 신호선(30)의 전압은 약 14V(= 배터리 공급 전압*(B+C)/(A+B+C))로, High 상태가 될 수 있다. 신호선(30)의 전압이 약 14V인 경우, 제1 프로세서(1131)의 입력 포트에는 2.785V가 입력될 수 있다. 이때, 청소기 본체(1000)의 구동 회로(1130)는 전압 분배기(1137)를 포함하므로 신호선(30)의 높은 전압(14V)이 분배되어 제1 프로세서(1131)의 입력 포트로 2.785V가 입력될 수 있다. 즉, 제2 프로세서(2410)가 출력 포트를 통해 High 신호를 출력하는 경우 제1 프로세서(1131)의 입력 포트에는 Low 신호(0V)가 입력되고, 제2 프로세서(2410)가 출력 포트를 통해 Low 신호를 출력하는 경우 제1 프로세서(1131)의 입력 포트에는 2.785V(약 2.8V)가 입력될 수 있다.
도 20에서는 브러시 장치(2000)의 구동 회로(2400)에 스위치 소자로서 PNP 트랜지스터(2425)가 포함되는 경우를 예로 들어 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, PNP 트랜지스터(2425) 대신에 P-channel FET가 스위치 소자로 이용될 수도 있다.
본 개시의 일 실시예에 의하면, 제1 프로세서(1131)가 제2 프로세서(2410)로부터 신호를 수신할 때, 청소기 본체(1000)의 신호선 통신을 위한 구동 회로(1130)는 전압 분배기(1137)를 포함하므로, 신호선(30)의 노이즈 영향을 최소화함으로써 안정적인 신호 전송이 가능하다. 즉, 청소기 본체(1000)의 구동 회로(1130)는 전압 분배기(1137)를 포함하므로, 신호선(30)에 노이즈 전압이 인가되더라도, 노이즈 전압도 분배되어 제1 프로세서(1131)의 입력 포트(AD 포트)로 입력될 수 있다. ±1.5V의 노이즈가 발생하는 경우를 예로 들어 설명하기로 한다.
일반적인 회로에서는, 노이즈가 발생하지 않은 상황(정상)에서의 AD 포트 전압이 3.3V이고, ±1.5V의 노이즈가 발생하는 상황에서의 AD 포트 전압은 1.8V에서 4.8V가 될 수 있다. 즉, 일반적인 회로에서 노이즈가 발생하면, AD 포트 전압은 마이컴의 AD 포트 최대 전압(예: 3.3V)을 초과할 수 있으므로, 제1 프로세서(1131)가 쉽게 소손될 수 있다. 또한, 일반적인 회로에서는, 노이즈(±1.5V)에 의해서 High 신호를 Low 신호로(또는, Low 신호를 High 신호로) 오 인식 할 수 있다.
하지만, 본 개시의 일 실시예에 따른 구동 회로(1130)에 의하면, 노이즈가 발생하지 않은 상황(정상)에서의 제1 프로세서(1131)의 입력 포트 전압은 2.78V일 수 있으며, ±1.5V의 노이즈가 발생하더라도 제1 프로세서(1131)의 입력 포트 전압은 2.49V ~ 3.08V일 수 있다. 즉, 전압 분배기(1137)를 포함하는 구동 회로(1130)에 의하면 노이즈가 발생하더라도 제1 프로세서(1131)의 입력 포트 전압이 마이컴의 AD 포트 최대 전압(예: 3.3V)을 초과하지 않으므로, 강인한 신호 전송이 가능하다. 또한, 신호선(30)에 ±1.5V의 노이즈가 발생하더라도 제1 프로세서(1131)의 입력 포트에는 약 ±0.3V 정도의 영향만 미치므로, 신호 왜곡 현상(예: High 신호를 Low 신호로 오인식, 또는 Low 신호를 High 신호로 오인식)을 최소화 할 수 있다.
이하에서는 청소기 본체(1000)와 브러시 장치(2000) 간의 신호 전송에 대해서 도 21 내지 도 24를 참조하여 조금 더 자세히 살펴보기로 한다.
도 21은 본 개시의 일 실시예에 따른 청소기 본체(1000)와 브러시 장치(2000) 간에 전달되는 신호에 포함된 데이터 포맷을 설명하기 위한 도면이다.
도 21을 참조하면, 청소기 본체(1000)의 메모리(1900) 및 브러시 장치(2000)의 메모리 각각에는, 동작 조건(2101)에 대응하는 무선 청소기(100)의 동작 정보(2102) 및 동작 조건(2101)을 나타내는 데이터(2103)를 포함하는 룩업 테이블(2110)이 저장될 수 있다. 이때, 동작 조건(2101)에 대응하는 무선 청소기(100)의 동작 정보(2102)는, 흡입 모터(1110)의 소비 전력, 브러시 장치(2000)의 드럼 RPM, 브러시 장치(2000)의 구속 레벨(Trip level) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 또한, 동작 조건(2101)을 나타내는 데이터(2103)는 8비트의 데이터일 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 동작 조건(2101)을 나타내는 데이터(2103)는 5비트의 데이터일 수도 있다.
본 개시의 일 실시예에 의하면, 동작 조건(2101)을 나타내는 데이터(2103)가 8비트로 구성되는 경우, 동작 조건(2101)을 나타내는 데이터(2103)는 1개의 시작(start) 비트와 3개의 커맨드(command) 비트, 3개의 패리티(parity) 비트, 1개의 종료(stop) 비트로 구성될 수 있다. 도 21에서는 커맨드 비트가 3개이므로, 동작 조건(2101)이 8개로 구분되었으나, 커맨드 비트가 더 늘어나는 경우 동작 조건은 더 많아질 수 있다.
동작 조건(2101)은, 브러시 장치(2000)의 유형, 브러시 장치(2000)의 사용 환경 상태(예: 피청소면의 상태(마루, 카펫, 매트, 코너 등), 피청소면에서 들린 상태 등), 흡입 모터(1110)의 이상 등에 따라 구분될 수 있다.
도 21의 룩업 테이블(2110)을 참조하면, 제1 동작 조건은 피청소면의 상태가 마루일 때를 나타내며, 제1 동작 조건일 때의 제1 동작 정보는 “흡입 모터(1110)의 소비 전력: 70W, 드럼 RPM: 2000, 구속 레벨(Trip level): 4.0A”일 수 있다. 즉, 메인 프로세서(1800)에서 현재 피청소면의 상태가 마루인 것을 식별하면, 무선 청소기(100)는 제1 동작 조건에 대응하는 제1 동작 정보에 기초하여 동작하기로 결정할 수 있다. 따라서, 메인 프로세서(1800)는 제1 동작 조건에 관한 정보를 제1 프로세서(1131)로 전달할 수 있고, 제1 프로세서(1131)는 제1 동작 조건에 대응하는 제1 동작 정보를 확인하고, 흡입 모터(1110)의 소비 전력을 70W로 조절할 수 있다. 또한, 제1 프로세서(1131)는, 제1 동작 조건을 나타내는 데이터(00011101)를 제2 프로세서(2410)로 전송할 수 있다. 제2 프로세서(2410)는, 제1 동작 조건을 나타내는 데이터(00011101)를 수신하는 경우 제1 동작 조건에 대응하는 제1 동작 정보를 확인하고, 드럼 RPM을 2000rpm으로 조절하고, 구속 레벨을 4.0A로 설정할 수 있다.
제2 동작 조건은 피청소면의 상태가 카펫(정상부하)일 때를 나타내며, 제2 동작 조건일 때의 제2 동작 정보는 “흡입 모터(1110)의 소비 전력: 115W, 드럼 RPM: 3800, 구속 레벨(Trip level): 4.9A”일 수 있다. 즉, 메인 프로세서(1800)에서 현재 피청소면의 상태가 카펫(정상부하)인 것을 식별하면, 무선 청소기(100)는 제2 동작 조건에 대응하는 제2 동작 정보에 기초하여 동작하기로 결정할 수 있다. 따라서, 메인 프로세서(1800)는 제2 동작 조건에 관한 정보를 제1 프로세서(1131)로 전달할 수 있고, 제1 프로세서(1131)는 제2 동작 조건에 대응하는 제2 동작 정보를 확인하고, 흡입 모터(1110)의 소비 전력을 115W로 조절할 수 있다. 또한, 제1 프로세서(1131)는, 제2 동작 조건을 나타내는 데이터(00101011)를 제2 프로세서(2410)로 전송할 수 있다. 제2 프로세서(2410)는, 제2 동작 조건을 나타내는 데이터(00101011)를 수신하는 경우, 제2 동작 조건에 대응하는 제2 동작 정보를 확인하고, 드럼 RPM을 3800rpm으로 조절하고, 구속 레벨을 4.9A로 설정할 수 있다. 피청소면의 상태가 마루일 때보다 카펫(정상부하)일 때, 흡입 모터(1110)의 소비 전력(흡입력 세기)이 더 커지므로 구속 레벨 또한 4.0A에서 4.9A로 더 커질 수 있다. 구속 레벨은 브러시 장치(2000)의 과부하를 방지하기 위한 것으로, 브러시 장치(2000)의 부하가 4.9A에 도달하면 모터(2100)가 정지할 수 있다.
제3 동작 조건은 피청소면의 상태가 카펫(과부하, 고밀도 카펫)일 때를 나타내며, 제3 동작 조건일 때의 제3 동작 정보는 “흡입 모터(1110)의 소비 전력: 40W, 드럼 RPM: 2000, 구속 레벨(Trip level): 4.9A”일 수 있다. 피청소면의 상태가 카펫(정상부하)일 때보다 카펫(과부하)일 때 브러시 장치(2000)가 피청소면에 과밀착될 수 있으므로, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 낮추고, 브러시 장치(2000)의 드럼 RPM도 낮출 수 있다. 메인 프로세서(1800)에서 현재 피청소면의 상태가 카펫(과부하)인 것을 식별하면, 무선 청소기(100)는 제3 동작 조건에 대응하는 제3 동작 정보에 기초하여 동작하기로 결정할 수 있다. 따라서, 메인 프로세서(1800)는 제3 동작 조건에 관한 정보를 제1 프로세서(1131)로 전달할 수 있고, 제1 프로세서(1131)는 제3 동작 조건에 대응하는 제3 동작 정보를 확인하고, 흡입 모터(1110)의 소비 전력을 40W로 조절할 수 있다. 또한, 제1 프로세서(1131)는, 제3 동작 조건을 나타내는 데이터(00111001)를 제2 프로세서(2410)로 전송할 수 있다. 제2 프로세서(2410)는, 제3 동작 조건을 나타내는 데이터(00111001)를 수신하는 경우, 제3 동작 조건에 대응하는 제3 동작 정보를 확인하고, 드럼 RPM을 2000rpm으로 조절하고, 구속 레벨을 4.9A로 설정할 수 있다.
제4 동작 조건은 브러시 장치(2000)가 피청소면에서 들린 상태(이하, 들림 상태라고도 함)일 때를 나타내며, 제4 동작 조건일 때의 제4 동작 정보는 “흡입 모터(1110)의 소비 전력: 40W, 드럼 RPM: 1000, 구속 레벨(Trip level): 4.0A”일 수 있다. 들림 상태일 때는 흡입력의 세기가 클 필요가 없으므로, 청소기 본체(1000)는 흡입 모터(1110)의 소비 전력을 최저 소비 전력(예: 40W)으로 낮추고, 브러시 장치(2000)의 드럼 RPM도 최저 RPM(1000rpm)으로 낮출 수 있다. 메인 프로세서(1800)에서 현재 피청소면의 상태가 들림 상태인 것을 식별하면, 무선 청소기(100)는 제4 동작 조건에 대응하는 제4 동작 정보에 기초하여 동작하기로 결정할 수 있다. 따라서, 메인 프로세서(1800)는 제4 동작 조건에 관한 정보를 제1 프로세서(1131)로 전달할 수 있고, 제1 프로세서(1131)는 제4 동작 조건에 대응하는 제4 동작 정보를 확인하고, 흡입 모터(1110)의 소비 전력을 40W로 조절할 수 있다. 또한, 제1 프로세서(1131)는, 제4 동작 조건을 나타내는 데이터(01000111)를 제2 프로세서(2410)로 전송할 수 있다. 제2 프로세서(2410)는, 제4 동작 조건을 나타내는 데이터(01000111)를 수신하는 경우, 제4 동작 조건에 대응하는 제4 동작 정보를 확인하고, 드럼 RPM을 1000rpm으로 조절하고, 구속 레벨을 4.0A로 설정할 수 있다.
제5 동작 조건은 피청소면의 상태가 매트일 때를 나타내며, 제5 동작 조건일 때의 제5 동작 정보는 “흡입 모터(1110)의 소비 전력: 58W, 드럼 RPM: 1000, 구속 레벨(Trip level): 4.9A”일 수 있다. 즉, 메인 프로세서(1800)에서 현재 피청소면의 상태가 매트인 것을 식별하면, 무선 청소기(100)는 제5 동작 조건에 대응하는 제5 동작 정보에 기초하여 동작하기로 결정할 수 있다. 따라서, 메인 프로세서(1800)는 제5 동작 조건에 관한 정보를 제1 프로세서(1131)로 전달할 수 있고, 제1 프로세서(1131)는 제5 동작 조건에 대응하는 제5 동작 정보를 확인하고, 흡입 모터(1110)의 소비 전력을 58W로 조절할 수 있다. 또한, 제1 프로세서(1131)는, 제5 동작 조건을 나타내는 데이터(01010101)를 제2 프로세서(2410)로 전송할 수 있다. 제2 프로세서(2410)는, 제5 동작 조건을 나타내는 데이터(01010101)를 수신하는 경우 제5 동작 조건에 대응하는 제5 동작 정보를 확인하고, 드럼 RPM을 1000rpm으로 조절하고, 구속 레벨을 4.9A로 설정할 수 있다.
제6 동작 조건은, 무선 청소기(100)의 동작을 중지해야 할 때를 나타내며, 제6 동작 조건일 때의 제6 동작 정보는 “흡입 모터(1110)의 소비 전력: 58W, 드럼 RPM: 0, 구속 레벨(Trip level): 0A”일 수 있다. 예를 들어, 청소기 본체(1000)는 브러시 장치(2000)에 포함된 모터(2100)(이하, 브러시 모터(2100)라고도 함)의 이상(abnormality)을 식별함에 따라 브러시 모터(2100)의 동작을 중지시키기로 결정할 수 있다. 메인 프로세서(1800)에서 브러시 모터(2100)의 이상을 식별하여 브러시 모터(2100)의 동작을 중지시킬 수도 있고, 제1 프로세서(1131)에서 브러시 모터(2100)의 이상을 식별하여 브러시 모터(2100)의 동작을 중지시킬 수도 있다. 제1 프로세서(1131)는, 브러시 모터(2100)의 동작을 중지시키기로 결정한 경우, 제1 스위치 소자(1132)의 온/오프 동작을 제어하여, 브러시 장치(2000)의 동작을 중지시키기 위한 신호(예: 제6 동작 조건을 나타내는 데이터(01100011))를 신호선(30)을 통해 브러시 장치(2000)의 제 2 프로세서(2410)로 전송할 수 있다. 제2 프로세서(2410)는, 제6 동작 조건을 나타내는 데이터(01100011)를 수신하는 경우, 제6 동작 조건에 대응하는 제6 동작 정보(드럼 RPM: 0, 구속 레벨(Trip level): 0A)를 확인하고, 브러시 모터(2100)의 동작을 중지시킬 수 있다.
이하에서는, 도 22을 참조하여, 청소기 본체(1000)의 제1 프로세서(1131)가 브러시 장치(2000)의 제2 프로세서(2410)로 제5 동작 조건(매트)을 나타내는 8비트의 데이터(01010101)를 전송하는 일례에 대해서 구체적으로 살펴보기로 한다.
도 22는 본 개시의 일 실시예에 따른 청소기 본체(1000)에서 브러시 장치(2000)로 신호를 전송하는 동작을 설명하기 위한 도면이다.
도 22에서는, 청소기 본체(1000)가 제5 동작 조건을 나타내는 8비트의 신호(01010101)를 브러시 장치(2000)로 전송하며, 1 비트당 10ms의 전송 시간을 가지는 경우를 예로 들어 설명하기로 한다.
본 개시의 일 실시예에 따른 통신 프로토콜에 의하면, 0과 1은 신호선(30)의 상태를 기준으로 구분될 수 있다. 예를 들어, 신호선(30)이 Low 상태(L)일 때 “0” 비트가 전송되고, 신호선(30)이 High 상태(H)일 때 “1” 비트가 전송될 수 있다. 따라서, 제1 프로세서(1131)는, 제1 스위치 소자(1132)를 턴 온하여, 신호선(30)에 임계값보다 낮은 제1 레벨의 전압이 인가되도록 하여 코드 0을 전송하고, 제1 스위치 소자(1132)를 턴 오프하여, 신호선(30)에 임계값보다 높은 제2 레벨의 전압이 인가되도록 하여 코드 1을 전송할 수 있다.
제1 프로세서(1131)는, 제5 동작 조건을 나타내는 01010101을 제2 프로세서(2410)로 전송하기 위해서 신호선(30)의 상태를 LHLHLHLH로 만들 수 있다. 예를 들어, 제1 프로세서(1131)는 처음 10ms 동안은 출력 포트를 통해 High 신호(5V 또는 3.3V)를 출력하여 제1 스위치 소자(1132)를 턴 온시켜 신호선(30)의 상태를 Low(0V)로 만들고, 그 다음 10ms 동안은 출력 포트를 통해 Low 신호(0V)를 출력하여 제1 스위치 소자(1132)를 턴 오프시켜 신호선(30)의 상태를 High (14V)로 만드는 동작을 네 번 반복 할 수 있다. 이 경우, 제1 프로세서(1131)는 80ms 동안 01010101을 제2 프로세서(2410)로 전달할 수 있다. 제1 프로세서(1131)가 신호를 전송하는 동안 제2 프로세서(2410)의 출력 포트는 Low(0V) 상태를 유지할 수 있다.
제2 프로세서(2410)는 제5 동작 조건을 나타내는 제1 신호(01010101)를 청소기 본체(1000)로부터 수신하는 경우, 브러시 장치(2000)의 메모리에 저장된 룩업 테이블(2110)에서 제5 동작 조건에 대응하는 제5 동작 정보(흡입 모터(1110)의 소비 전력: 58W, 드럼 RPM: 1000, 구속 레벨(Trip level): 4.9A)를 확인할 수 있다. 그리고 제2 프로세서(2410)는 드럼 RPM을 1000rpm으로 조절하고, 구속 레벨(Trip level)을 4.9A로 설정할 수 있다. 이후 제2 프로세서(2410)는 제1 신호에 대한 응답으로 현재 상태를 나타내는 제2 신호를 제1 프로세서(1131)로 전송할 수 있다. 예를 들어, 제2 프로세서(2410)는 제5 동작 조건에 대응하는 제5 동작 정보에 기초하여 설정을 변경하였으므로, 현재 상태가 제5 동작 조건에 대응하는 상태라는 제2 신호(예: 01010101)를 제1 프로세서(1131)로 전송할 수 있다. 제2 프로세서(2410)가 현재 상태를 나타내는 제2 신호(예: 01010101)를 제1 프로세서(1131)로 전송하는 동작에 대해서는 도 23을 참조하여 살펴보기로 한다.
도 23은 본 개시의 일 실시예에 따른 브러시 장치(2000)에서 청소기 본체(1000)로 신호를 전송하는 동작을 설명하기 위한 도면이다.
도 23에서는 브러시 장치(2000)가 현재 상태가 제5 동작 조건에 대응하는 상태라는 제2 신호(예: 01010101)를 청소기 본체(1000)로 전송하며, 1 비트당 10ms의 전송 시간을 가지는 경우를 예로 들어 설명하기로 한다.
본 개시의 일 실시예에 따른 통신 프로토콜에 의하면, 0과 1은 신호선(30)의 상태를 기준으로 구분될 수 있다. 예를 들어, 신호선(30)이 Low 상태(L)일 때 0이 전송되고, 신호선(30)이 High 상태(H)일 때 1이 전송될 수 있다. 따라서, 제2 프로세서(2410)는, 제2 스위치 소자(2435)를 턴 온하여, 신호선(30)에 임계값보다 낮은 제1 레벨의 전압이 인가되도록 하여 코드 0을 전송하고, 제2 스위치 소자(2435)를 턴 오프하여, 신호선(30)에 임계값보다 높은 제2 레벨의 전압이 인가되도록 하여 코드 1을 전송할 수 있다.
제2 프로세서(2410)는, 현재 제5 동작 조건에 대응하는 상태로 동작하고 있음을 나타내는 제2 신호(예: 01010101)를 제1 프로세서(1131)로 전송하기 위해서 신호선(30)의 상태를 LHLHLHLH로 만들 수 있다. 예를 들어, 제2 프로세서(2410)는 처음 10ms동안은 출력 포트를 통해 High 신호(5V 또는 3.3V)를 출력하여 제2 스위치 소자(2435)를 턴 온시켜 신호선(30)의 상태를 Low(0V)로 만들고, 그 다음 10ms 동안은 출력 포트를 통해 Low 신호(0V)를 출력하여 제2 스위치 소자(2435)를 턴 오프시켜 신호선(30)의 상태를 High(14V)로 만드는 동작을 네 번 반복 할 수 있다. 이 경우, 제2 프로세서(2410)는 80ms 동안 01010101을 제2 프로세서(2410)로 전달할 수 있다. 제2 프로세서(2410)가 신호를 전송하는 동안 제1 프로세서(1131)의 출력 포트는 Low(0V) 상태를 유지할 수 있다.
제1 프로세서(1131)는 제5 동작 조건을 나타내는 제2 신호(예: 01010101)를 브러시 장치(2000)의 제2 프로세서(2410)로부터 수신하는 경우, 청소기 본체(1000)의 메모리(1900)에 저장된 룩업 테이블(2110)에서 제5 동작 조건에 대응하는 제5 동작 정보(흡입 모터(1110)의 소비 전력: 58W, 드럼 RPM: 1000, 구속 레벨(Trip level): 4.9A)를 확인할 수 있다. 그리고 제1 프로세서(1131)는 브러시 장치(2000)의 현재 드럼 RPM이 1000rpm이고, 현재 구속 레벨(Trip level)이 4.9A임을 식별할 수 있다.
청소기 본체(1000)와 브러시 장치(2000)간에 신호를 송수신하는 동작에 대해서 도 24를 참조하여 조금 더 살펴보기로 한다.
도 24는 본 개시의 일 실시예에 따른 청소기 본체(1000)와 브러시 장치(2000) 간에 신호를 상호 전송하는 동작을 설명하기 위한 순서도이다. 도 24에서는, 청소기 본체(1000)가 마스터 기기 (또는 프라이머리 기기(Primary device))로 동작하고, 브러시 장치(2000)가 슬레이브 기기로 동작하는 경우를 예로 들어 설명하기로 한다.
청소기 본체(1000)는 전원을 켜는 사용자 입력을 수신할 수 있다(S2410). 청소기 본체(1000)의 전원이 켜지는 경우, 청소기 본체(1000)는 무선 청소기(100)에 결합된 브러시 장치(2000)와 신호선(30)을 통해 통신을 수행할 수 있다. 예를 들어, 청소기 본체(1000)는, 브러시 장치(2000)로 제1 동작 조건을 나타내는 A1 신호(A1-A)를 전송할 수 있다(S2420). A1 신호(A1-A)는 80ms 동안 전송될 수 있다. 브러시 장치(2000)가 A1 신호(A1-A)를 수신한 경우, 브러시 장치(2000)는 현재 상태를 나타내는 A1 응답 신호(A1-R)를 청소기 본체(1000)로 전송할 수 있다(S2430). A1 응답 신호(A1-R)도 80ms 동안 전송될 수 있다.
브러시 장치(2000)는 A1 신호(A1-A)에 따라 지령을 수행할 수 있다(S2440). 예를 들어, 브러시 장치(2000)는, 제1 동작 조건에 대응하는 제1 동작 정보에 기초하여 드럼 RPM, 구속 레벨 등을 조절할 수 있다.
청소기 본체(1000)는 A1 신호(A1-A)를 전송한 후 소정 시간이 경과하면 A2 신호(A2-A)를 브러시 장치(2000)로 전송할 수 있다(S2450). 도 24에서는 소정 시간이 200ms인 경우를 예로 들어 설명하나 이에 한정되는 것은 아니다. 브러시 장치(2000)의 사용 환경 상태(예: 마루, 카펫, 매트, 코너, 들림 등)가 A1 신호(A1-A)를 전송하고 A2 신호(A2-A)를 전송할 때까지 변경되지 않았으면, A2 신호(A2-A)는 제1 동작 조건을 계속 나타낼 수 있다. 반면, 브러시 장치(2000)의 사용 환경 상태가 A1 신호(A1-A)의 전송과 A2 신호(A2-A)의 전송 사이에 변경된 경우, A2 신호(A2-A)는 제1 동작 조건이 아닌 제2 동작 조건을 나타낼 수 있다.
브러시 장치(2000)가 A2 신호(A2-A)를 수신한 경우, 브러시 장치(2000)는 현재 상태를 나타내는 A2 응답 신호(A2-R)를 청소기 본체(1000)로 전송할 수 있다(S2460). A2 응답 신호(A2-R)도 80ms 동안 전송될 수 있다. 이때, A2 응답 신호(A2-R)에는 브러시 장치(2000)의 지령 수행 결과가 포함될 수 있다. 예를 들어, 브러시 장치(2000)가 제1 동작 조건에 대응하는 제1 동작 정보에 기초하여 드럼 RPM, 구속 레벨 등을 조절한 경우, A2 응답 신호(A2-R)에는 제1 동작 조건을 나타내는 데이터(또는, 드럼 RPM, 구속 레벨을 나타내는 데이터)가 포함될 수 있다.
청소기 본체(1000)는 A2 신호(A2-A)를 전송한 후 소정 시간(200ms)이 경과하면 A3 신호(A3-A)를 브러시 장치(2000)로 전송할 수 있다(S2470). 브러시 장치(2000)는 A3 신호(A3-A)를 수신한 경우 현재 상태를 나타내는 A3 응답 신호(A3-A)를 청소기 본체(1000)로 전송할 수 있다.
따라서, 청소기 본체(1000)는 브러시 장치(2000)와 소정 시간(200ms) 간격으로 계속 통신을 수행함으로써, 브러시 장치(2000)의 사용 환경 상태(예: 마루, 카펫, 매트, 코너, 들림 등)에 따라 브러시 장치(2000)의 동작을 적응적으로 제어할 수 있다.
예를 들어, 사용자가 무선 청소기(100)로 마루를 청소하는 중인 경우 청소기 본체(1000)는 마루에 대응하는 제1 동작 조건을 나타내는 데이터를 브러시 장치(2000)에 전송하게 되면 브러시 장치(2000)가 마루에 대응하는 제1 동작 조건에 기초하여 드럼 RPM을 2000rpm으로 변경할 수 있다. 사용자가 마루를 청소하는 동안에는 청소기 본체(1000)는 마루에 대응하는 제1 동작 조건을 나타내는 데이터를 200ms마다 브러시 장치(2000)에 전송할 수 있고, 브러시 장치(2000)는 현재 상태(마루에 대응하는 제1 동작 조건에 기반하여 동작)를 청소기 본체(1000)에 응답할 수 있다. 사용자가 마루 대신에 카펫(정상부하)을 청소하게 된 경우, 청소기 본체(1000)는 카펫(정상부하)에 대응하는 제2 동작 조건을 나타내는 데이터를 브러시 장치(2000)에 전송할 수 있고, 브러시 장치(2000)는 카페(정상부하)에 대응하는 제2 동작 조건에 기초하여 드럼 RPM을 3800rpm으로 변경할 수 있다. 그리고 브러시 장치(2000)는 현재 상태(카펫에 대응하는 제2 동작 조건에 기반하여 동작)를 청소기 본체(1000)에 응답할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 신호선(30)을 통해 제1 신호를 전송한 후에 소정 시간 동안 브러시 장치(2000)로부터 제2 신호를 수신하지 못한 경우, 브러시 장치(2000)와의 통신이 불가능하다고 결정할 수 있다. 예를 들어, 청소기 본체(1000)는 브러시 장치(2000)로 제1 신호를 세 번 전송하는 동안 브러시 장치(2000)로부터 응답 신호(제2 신호)가 수신되지 않는 경우, 브러시 장치(2000)와의 통신이 불가능하다고 결정할 수 있다.
청소기 본체(1000)는, 브러시 장치(2000)와의 통신이 불가능하다고 결정됨에 따라 동작 모드를 AI 모드에서 일반 모드로 전환할 수 있다. AI 모드는 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기 또는 브러시 장치(2000)의 드럼 RPM이 자동으로 조절되는 모드이며, 일반 모드는 사용자가 흡입 모터(1110)의 흡입력 세기를 수동으로 조절해야하는 모드일 수 있다. 브러시 장치(2000)와의 통신이 불가능한 경우, 청소기 본체(1000)는 브러시 장치(2000)의 드럼 RPM을 조절하라는 데이터를 브러시 장치(2000)로 전송할 수 없으므로, AI 모드로 더 이상 동작할 수 없다.
청소기 본체(1000)는, 브러시 장치(2000)와의 통신이 불가능하다고 결정됨에 따라, AI 모드로 동작이 불가능함을 나타내는 알림을 출력 인터페이스를 통해 출력할 수 있다. 청소기 본체(1000)가 알림을 출력하는 동작에 대해서는 도 36을 참조하여 후에 자세히 살펴보기로 한다.
한편, 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 브러시 장치(2000)와의 통신이 불가능하다고 결정되는 경우, 브러시 장치(2000)의 드럼 RPM은 조절하지 않고, 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기만 조절할 수도 있다.
도 25는 본 개시의 일 실시예에 따른 청소기 본체(1000)가 브러시 장치(2000)로부터 수신된 신호에 기초하여, 브러시 장치(2000)의 유형을 식별하는 동작을 설명하기 위한 도면이다.
도 25를 참조하면, 브러시 장치(2000)는, 신호선 통신 시 전송되는 데이터 신호의 시작(start) 비트를 이용하여, 브러시 장치(2000)의 유형을 나타낼 수도 있다. 예를 들어, 브러시 장치(2000)는, 브러시 장치(2000)가 A타입의 브러시인 경우 시작 비트를 11로 정의하고, B타입의 브러시인 경우 시작 비트를 10으로 정의하고, C타입의 브러시인 경우 시작 비트를 01로 정의하고, D타입의 브러시인 경우 시작 비트를 00으로 정의할 수 있으나, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는, 브러시 장치(2000)에서 전송하는 데이터 신호의 시작 비트를 분석하여 브러시 장치(2000)의 유형을 식별할 수 있다. 예를 들어, 시작 비트에 11이 포함되어 있는 경우, 청소기 본체(1000)는 브러시 장치(2000)를 A 타입의 브러시로 식별하고, 시작 비트에 10이 포함되어 있는 경우, 청소기 본체(1000)는 브러시 장치(2000)를 B 타입의 브러시로 식별할 수 있다.
본 개시의 일 실시예에 의하면, 브러시 장치(2000)의 유형이 4개를 초과하는 경우, 시작 비트의 수가 늘어날 수 있다. 한편, 본 개시의 일 실시예에 의하면, 시작 비트 대신에 브러시 장치(2000)의 유형을 나타내기 위한 별도의 비트가 데이터 신호에 추가될 수도 있다.
도 26은 본 개시의 일 실시예에 따른 브러시 장치(2000)의 사용 환경 상태에 따라 조명 장치(2300)가 제어되는 동작을 설명하기 위한 도면이다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 브러시 장치(2000)의 사용 환경 상태(예: 마루, 매트, 일반 카펫, 고밀도 카펫, 들림, 벽면 코너 등)에 따라, 흡입 모터(1110)의 소비 전력 및 브러시 장치(2000)의 드럼 RPM 이외에 브러시 장치(2000)의 조명 밝기, 조명 색상 등을 결정할 수도 있다. 그리고 청소기 본체(1000)는 결정된 조명 밝기 또는 결정된 조명 색상에 관한 데이터를 신호선 통신을 통해 브러시 장치(2000)의 제2 프로세서(2410)로 전송할 수 있다. 이때, 브러시 장치(2000)의 제2 프로세서(2410)는, 청소기 본체(1000)에서 결정된 조명 밝기 또는 조명 색상에 기초하여, 조명 장치(2300)를 제어할 수 있다.
예를 들어, 브러시 장치(2000)의 사용 환경 상태가 들림(2601)인 경우, 청소기 본체(1000)는 조명 장치(2300)의 색상을 흰색(white)으로 결정할 수 있으며, 청소기 본체(1000)의 제어에 따라 조명 장치(2300)는 흰색의 빛을 출력할 수 있다. 또한, 브러시 장치(2000)의 사용 환경 상태가 마루(2602)인 경우 청소기 본체(1000)는 조명 장치(2300)의 색상을 초록색(green)으로 결정할 수 있고, 브러시 장치(2000)의 사용 환경 상태가 매트(2603)인 경우 청소기 본체(1000)는 조명 장치(2300)의 색상을 노란색(yellow)으로 결정할 수 있고, 브러시 장치(2000)의 사용 환경 상태가 카펫(2604, 2605)인 경우 청소기 본체(1000)는 조명 장치(2300)의 색상을 파란색(blue)으로 결정할 수 있고, 브러시 장치(2000)의 사용 환경 상태가 벽면(코너)(2606)인 경우 청소기 본체(1000)는 조명 장치(2300)의 색상을 주황색(orange)으로 결정할 수 있다.
본 개시의 일 실시예에 의하면, 사용자는 조명 장치(2300)의 색상이 변경되는 것을 통해 브러시 장치(2000)의 사용 환경 상태의 변화를 인지할 수 있다.
이하에서는 도 27 내지 도 34를 참조하여 청소기 본체(1000)와 브러시 장치(2000)간의 통신을 가능하게 하는 다양한 회로에 대해서 살펴보기로 한다.
도 27은 본 개시의 일 실시예에 따른 무선 청소기(100)의 신호선 통신을 위한 회로를 설명하기 위한 도면이다.
도 27에 도시된 청소기 본체(1000)의 구동 회로(1130)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 27에 도시된 브러시 장치(2000)의 구동 회로(2400-1)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
도 27을 참조하면, 브러시 장치(2000)의 구동 회로(2400-1)는 청소기 본체(1000)의 구동 회로(1130)와 같이 전압 분배기를 포함할 수 있다. 따라서, 설명의 편의를 위해, 청소기 본체(1000)의 전압 분배기는 제1 전압 분배기(1137)로 표현하고, 브러시 장치(2000)의 전압 분배기는 제2 전압 분배기(2427)로 표현하기로 한다.
제2 전압 분배기(2427)는 신호선(30)에서 제2 프로세서(2410)의 입력 포트로 입력되는 전압을 분배하기 위한 것이다. 브러시 장치(2000)의 구동 회로(2400-1)가 제2 전압 분배기(2427)를 포함하는 경우, 신호선(30)에 노이즈 전압이 인가되더라도, 노이즈 전압도 분배되어 제2 프로세서(2410)의 입력 포트(AD 포트)로 입력될 수 있다.
따라서, 본 개시의 일 실시예에 의하면, 제2 프로세서(2410)가 제1 프로세서(1131)로부터 신호를 수신할 때, 브러시 장치(2000)의 신호선 통신을 위한 구동 회로(2400-1)는 제2 전압 분배기(2427)를 포함하므로, 신호선(30)의 노이즈 영향을 최소화함으로써 안정적인 신호 수신이 가능하다.
도 27에서는 설명의 편의를 위해 A가 180KΩ이고, B가 330KΩ이고, C가 82KΩ이고, D가 330KΩ이고, E가 82KΩ인 경우를 예로 들어 설명하기로 한다. 이때, 신호선 전압은 13.4487V(= 배터리 공급 전압*((D+E)∥(B+C))/(A+((D+E)∥(B+C)))= 25.2V*206/386)일 수 있다.
제1 프로세서(1131)는 입력 포트(AD 포트)로 입력되는 전압에 기초하여, 브러시 장치(2000)의 유형을 식별할 수 있다. 예를 들어, 제1 프로세서(1131)의 AD 포트 입력 전압이 2.677V(= 신호선 전압*E/(D+E)=13.4487V*82K/((82K+330K)))인 경우, 제1 프로세서(1131)는 AD 포트 입력 전압인 2.677V에 대응하는 180KΩ(A)의 식별 저항(2500)을 갖는 멀티 브러시(501)가 청소기 본체(1000)에 연결된 것을 식별할 수 있다.
청소기 본체(1000)는 무선 청소기(100)에 결합된 브러시 장치(2000)가 구동 회로(2400-1)를 포함하는 멀티 브러시(501)로 식별된 경우, 청소기 본체(1000)는 브러시 장치(2000)와 신호선 통신을 수행할 수 있다.
청소기 본체(1000)의 제1 프로세서(1131)는 입력 포트를 이용하여 신호를 수신하고, 출력 포트를 이용하여 신호를 발신할 수 있다. 예를 들어, 제1 프로세서(1131)가 출력 포트를 통해 Low 신호를 출력하는 경우, 제1 스위치 소자(1132)는 턴 오프될 수 있다. 제1 스위치 소자(1132)가 턴 오프됨에 따라 신호선(30)의 전압은 13.4487V로, High 상태가 될 수 있다. 신호선(30)의 전압이 13.4487V인 경우, 제2 프로세서(2410)의 입력 포트에는 2.677V(= 신호선 전압* C/(B+C)=13.4487V*82K/((82K+330K)))가 입력될 수 있다. 이때, 브러시 장치(2000)의 구동 회로(2400-1)는 제2 전압 분배기(2427)를 포함하므로 신호선(30)의 높은 전압(13.4487V)이 분배되어 제2 프로세서(2410)의 입력 포트로 2.677V만 입력될 수 있다. 반대로, 제1 프로세서(1131)가 출력 포트를 통해 High 신호를 출력하는 경우, 제1 스위치 소자(1132)는 턴 온될 수 있다. 제1 스위치 소자(1132)가 턴 온됨에 따라 신호선(30)의 전압은 0V(GND)로 바뀌어, Low 상태가 될 수 있다. 신호선(30)의 전압이 0V인 경우 제2 프로세서(2410)의 입력 포트에는 Low 신호(0V)가 입력될 수 있다. 즉, 제1 프로세서(1131)가 출력 포트를 통해 Low 신호를 출력하는 경우 제2 프로세서(2410)의 입력 포트에는 High 신호(2.677V)가 입력되고, 제1 프로세서(1131)가 출력 포트를 통해 High 신호를 출력하는 경우 제2 프로세서(2410)의 입력 포트에는 Low 신호가 입력될 수 있다.
브러시 장치(2000)의 제2 프로세서(2410)는 입력 포트를 이용하여 신호를 수신하고, 출력 포트를 이용하여 신호를 송신할 수 있다. 예를 들어, 제2 프로세서(2410)가 출력 포트를 통해 High 신호를 출력하는 경우, 제2 스위치 소자(2435)는 턴 온될 수 있다. 제2 스위치 소자(2435)가 턴 온됨에 따라 신호선(30)의 전압은 0V(GND)로 바뀌어, Low 상태가 될 수 있다. 신호선(30)의 전압이 0V인 경우 제1 프로세서(1131)의 입력 포트에는 Low 신호(0V)가 입력될 수 있다. 반대로, 제2 프로세서(2410)가 출력 포트를 통해 Low 신호를 출력하는 경우, 제2 스위치 소자(2435)는 턴 오프될 수 있다. 제2 스위치 소자(2435)가 턴 오프됨에 따라 신호선(30)의 전압은 13.4487V로, High 상태가 될 수 있다. 신호선(30)의 전압이 13.4487V인 경우, 제1 프로세서(1131)의 입력 포트에는 2.677V가 입력될 수 있다. 이때, 청소기 본체(1000)의 구동 회로(1130)는 제1 전압 분배기(1137)를 포함하므로 신호선(30)의 높은 전압(13.4487V)이 분배되어 제1 프로세서(1131)의 입력 포트로 2.677V만 입력될 수 있다. 즉, 제2 프로세서(2410)가 출력 포트를 통해 High 신호를 출력하는 경우 제1 프로세서(1131)의 입력 포트에는 Low 신호(0V)가 입력되고, 제2 프로세서(2410)가 출력 포트를 통해 Low 신호를 출력하는 경우 제2 프로세서(2410)의 입력 포트에는 High 신호(2.677V)가 입력될 수 있다.
도 28은 본 개시의 일 실시예에 따른 무선 청소기(100)의 I2C 통신을 위한 회로를 설명하기 위한 도면이다.
도 28을 참조하면, 청소기 본체(1000)는 I2C(Inter-Integrated Circuit) 통신을 위한 구동 회로(1130a)를 포함할 수 있고, 브러시 장치(2000)도 I2C 통신을 위한 구동 회로(2400a)를 포함할 수 있다. 도 28에 도시된 청소기 본체(1000)의 구동 회로(1130a)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 28에 도시된 브러시 장치(2000)의 구동 회로(2400a)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 전원선(10, 20)에 연결되는 신호선(30) 대신에 I2C 통신을 위한 제1 통신선(41)과 제2 통신선(42)을 포함할 수 있다.
I2C 통신은, 동기화 통신 방식 중 하나로, 클럭(Clock) 신호를 이용해서 데이터의 전송 타이밍을 맞추는 방식이다. 따라서, 무선 청소기(100)는, SDA(Serial Data)를 송수신하기 위한 제1 통신선(41)과 SCL(Serial Clock)을 송수신하기 위한 제2 통신선(42)을 포함할 수 있다.
무선 청소기(100)의 특성 상 브러시 장치(2000)의 착탈 또는 무선 청소기(100)의 이동, 부딪힘 등에 의한 노이즈 발생이 많을 수밖에 없다. 따라서, 청소기 본체(1000)와 브러시 장치(2000) 간의 I2C 통신 시에 전기적 또는 기계적 손상(Damage)이나 스트레스(Stress)를 최소화하기 위해 SDA(Serial Data), SCL(Serial Clock)가 입력되는 입력단에 노이즈 저감 회로가 적용될 수 있다. 예를 들어, 청소기 본체(1000)는 제1 노이즈 저감 회로(1139)를 포함하고, 브러시 장치(2000)는 제2 노이즈 저감 회로(2450)를 포함할 수 있다.
제1 노이즈 저감 회로(1139) 및 제2 노이즈 저감 회로(2450)는, 저주파 통과 필터(Low Pass Filter), 고주파 통과 필터(High Pass Filter), 대역 통과 필터(Band Pass Filter), 댐핑 저항(Damping Resistor), 및 분배 저항 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
제2 프로세서(2410)에서 제1 통신선(41) 및 제2 통신선(42)을 통해 전송한 SDA(Serial Data), SCL(Serial Clock)은 제1 노이즈 저감 회로(1139)를 통해 제1 프로세서(1131)로 입력됨으로써, 노이즈의 영향을 최소화할 수 있다. 또한, 제1 프로세서(1131)에서 제1 통신선(41) 및 제2 통신선(42)을 통해 전송한 SDA(Serial Data), SCL(Serial Clock)은 제2 노이즈 저감 회로(2450)를 통해 제2 프로세서(2410)로 입력됨으로써, 노이즈의 영향을 최소화할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)가 마스터 기기로 동작하고, 브러시 장치(2000)가 슬레이브 기기로 동작함으로써, I2C 통신을 수행할 수 있다. I2C 통신 신호는 시작 신호(시작 비트), 데이터 신호(커맨드 비트), 정지 신호(종료 비트)로 이루어질 수 있다.
제1 프로세서(1131)는 동작 조건을 나타내는 신호를 제1 통신선(41)과 제2 통신선(42)을 통해 제2 프로세서(2410)로 전송할 수 있다. 동작 조건은 브러시 장치(2000)의 드럼(2200)의 목표 분당 회전 수(RPM), 브러시 장치(2000)의 목표 구속 레벨(trip level), 또는 청소기 본체(1000)에 포함된 흡입 모터(1110)의 소비 전력 중 적어도 하나를 포함할 수 있다.
브러시 장치(2000)의 제2 프로세서(2410)는 수신된 동작 조건에 대응하는 동작 정보에 기초하여, 지령을 수행할 수 있다. 예를 들어, 브러시 장치(2000)는 드럼 RPM, 구속 레벨 등을 조절할 수 있다. 또한, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제1 통신선(41)과 제2 통신선(42)을 통해 전송할 수 있다.
도 29는 본 개시의 일 실시예에 따른 무선 청소기(100)의 UART 전이중 통신을 위한 회로를 설명하기 위한 도면이다.
도 29를 참조하면, 청소기 본체(1000)는 UART 전이중(full duplex) 통신을 위한 구동 회로(1130b)를 포함할 수 있고, 브러시 장치(2000)도 UART 전이중 통신을 위한 구동 회로(2400b)를 포함할 수 있다. 도 29에 도시된 청소기 본체(1000)의 구동 회로(1130b)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 29에 도시된 브러시 장치(2000)의 구동 회로(2400b)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 전원선(10, 20)에 연결되는 신호선(30) 대신에 UART 전이중 통신을 위한 2개의 와이어를 포함할 수 있다. 예를 들어, 무선 청소기(100)는, 제3 통신선(51)과 제4 통신선(52)을 포함할 수 있다. 제3 통신선(51)은 제1 프로세서(1131)가 제2 프로세서(2410)로 신호를 전송하기 위한 선이고, 제4 통신선(52)은 제2 프로세서(2410)가 제1 프로세서(1131)로 신호를 전송하기 위한 선일 수 있다. 제1 프로세서(1131)와 제2 프로세서(2410)는 각각 제3 통신선(51)과 제4 통신선(52)을 통해 동시에 신호를 송수신할 수 있다.
무선 청소기(100)의 특성 상 브러시 장치(2000)의 착탈 또는 무선 청소기(100)의 이동, 부딪힘 등에 의한 노이즈 발생이 많을 수밖에 없다. 따라서, 청소기 본체(1000)와 브러시 장치(2000) 간의 UART 통신 시에 전기적 또는 기계적 손상(Damage)이나 스트레스(Stress)를 최소화하기 위해 신호가 입력되는 입력단에 노이즈 저감 회로가 적용될 수 있다. 예를 들어, 청소기 본체(1000)는 제1 노이즈 저감 회로(1139)를 포함하고, 브러시 장치(2000)는 제2 노이즈 저감 회로(2450)를 포함할 수 있다.
제1 노이즈 저감 회로(1139) 및 제2 노이즈 저감 회로(2450)는, 저주파 통과 필터(Low Pass Filter), 고주파 통과 필터(High Pass Filter), 대역 통과 필터(Band Pass Filter), 댐핑 저항(Damping Resistor), 및 분배 저항 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
제1 프로세서(1131)에서 제3 통신선(51)을 통해 전송한 데이터 신호는 제2 노이즈 저감 회로(2450)를 통해 제2 프로세서(2410)로 입력됨으로써, 노이즈의 영향을 최소화할 수 있다. 또한, 제2 프로세서(2410)에서 제4 통신선(52)을 통해 전송한 데이터 신호는 제1 노이즈 저감 회로(1139)를 통해 제1 프로세서(1131)로 입력됨으로써, 노이즈의 영향을 최소화할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)가 마스터 기기로 동작하고, 브러시 장치(2000)가 슬레이브 기기로 동작함으로써, UART 전이중 통신을 수행할 수 있다. UART 통신 신호는 시작 신호(시작 비트), 데이터 신호(커맨드 비트), 정지 신호(종료 비트)로 이루어질 수 있다.
제1 프로세서(1131)는 동작 조건을 나타내는 신호를 제3 통신선(51)을 통해 제2 프로세서(2410)로 전송할 수 있다. 동작 조건은 브러시 장치(2000)의 드럼(2200)의 목표 분당 회전 수(RPM), 브러시 장치(2000)의 목표 구속 레벨(trip level), 또는 청소기 본체(1000)에 포함된 흡입 모터(1110)의 소비 전력 중 적어도 하나를 포함할 수 있다.
브러시 장치(2000)의 제2 프로세서(2410)는 수신된 동작 조건에 대응하는 동작 정보에 기초하여, 지령을 수행할 수 있다. 예를 들어, 브러시 장치(2000)는 드럼 RPM, 구속 레벨 등을 조절할 수 있다. 또한, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제4 통신선(52)을 통해 전송할 수 있다.
도 30은 본 개시의 일 실시예에 따른 무선 청소기(100)의 UART 반이중 통신을 위한 회로를 설명하기 위한 도면이다.
도 30을 참조하면, 청소기 본체(1000)는 UART 반이중(half-duplex) 통신을 위한 구동 회로(1130c)를 포함할 수 있고, 브러시 장치(2000)도 UART 반이중 통신을 위한 구동 회로(2400c)를 포함할 수 있다. 도 30에 도시된 청소기 본체(1000)의 구동 회로(1130c)는, 도 29에 도시된 청소기 본체(1000)의 구동 회로(1130b)에 대응될 수 있고, 도 30에 도시된 브러시 장치(2000)의 구동 회로(2400c)는 도 29에 도시된 구동 회로(2400b)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 전원선(10, 20)에 연결되는 신호선(30) 대신에 UART 반이중 통신을 위한 1개의 와이어를 포함할 수 있다. 예를 들어, 무선 청소기(100)는, 제5 통신선(53)을 포함할 수 있다. 제5 통신선(53)은 제1 프로세서(1131)와 제2 프로세서(2410)가 번갈아 가며 신호를 전송하기 위한 선일 수 있다. 제1 프로세서(1131)가 제5 통신선(53)을 통해 제1 신호를 전송할 때는 제2 프로세서(2410)는 제5 통신선(53)을 통해 제1 신호를 수신하고, 제2 프로세서(2410)가 제5 통신선(53)을 통해 제2 신호를 전송할 때는 제1 프로세서(1131)가 제5 통신선(53)을 통해 제2 신호를 수신할 수 있다.
한편, 제1 프로세서(1131)에서 제5 통신선(53)을 통해 전송한 데이터 신호는 제2 노이즈 저감 회로(2450)를 통해 제2 프로세서(2410)로 입력됨으로써, 노이즈의 영향을 최소화할 수 있다. 또한, 제2 프로세서(2410)에서 제5 통신선(53)을 통해 전송한 데이터 신호는 제1 노이즈 저감 회로(1139)를 통해 제1 프로세서(1131)로 입력됨으로써, 노이즈의 영향을 최소화할 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)가 마스터 기기로 동작하고, 브러시 장치(2000)가 슬레이브 기기로 동작함으로써, UART 반이중 통신을 수행할 수 있다. UART 통신 신호는 시작 신호(시작 비트), 데이터 신호(커맨드 비트), 정지 신호(종료 비트)로 이루어질 수 있다.
제1 프로세서(1131)는 동작 조건을 나타내는 신호를 제5 통신선(53)을 통해 제2 프로세서(2410)로 전송할 수 있다. 동작 조건은 브러시 장치(2000)의 드럼(2200)의 목표 분당 회전 수(RPM), 브러시 장치(2000)의 목표 구속 레벨(trip level), 또는 청소기 본체(1000)에 포함된 흡입 모터(1110)의 소비 전력 중 적어도 하나를 포함할 수 있다.
브러시 장치(2000)의 제2 프로세서(2410)는 수신된 동작 조건에 대응하는 동작 정보에 기초하여, 지령을 수행할 수 있다. 예를 들어, 브러시 장치(2000)는 드럼 RPM, 구속 레벨 등을 조절할 수 있다. 또한, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제5 통신선(53)을 통해 전송할 수 있다.
도 31은 본 개시의 일 실시예에 따른 무선 청소기(100)의 I2C 통신을 위한 회로를 설명하기 위한 도면이다.
도 31을 참조하면, 청소기 본체(1000)는 I2C(Inter-Integrated Circuit) 통신을 위한 구동 회로(1130d)를 포함할 수 있고, 브러시 장치(2000)도 I2C 통신을 위한 구동 회로(2400d)를 포함할 수 있다. 도 31에 도시된 청소기 본체(1000)의 구동 회로(1130d)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 31에 도시된 브러시 장치(2000)의 구동 회로(2400d)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 전원선(10, 20)에 연결되는 신호선(30) 대신에 I2C 통신을 위한 제1 통신선(41)과 제2 통신선(42)을 포함할 수 있다. 제1 통신선(41)은 SDA(Serial Data)를 송수신하기 위한 선이고, 제2 통신선(42)은 SCL(Serial Clock)을 송수신하기 위한 선일 수 있다.
본 개시의 일 실시예에 의하면, 노이즈에 강한 통신을 위해, 청소기 본체(1000)의 구동 회로(1130d)는 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142)를 포함할 수 있다. 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142) 각각은 스위치 소자와 주변 회로를 패킹(packing)한 레벨 쉬프트 IC(Intergrated Circuit)일 수도 있다. 브러시 장치(2000)의 구동 회로(2400d)는 제1 풀업 저항(2451), 제1 댐핑 저항(2452), 제2 풀업 저항(2453), 제2 댐핑 저항(2454)을 포함할 수 있다.
청소기 본체(1000)는 마스터 기기로 동작함으로써, 동작 조건을 나타내는 신호를 제1 통신선(41)과 제2 통신선(42)을 통해 제2 프로세서(2410)로 전송할 수 있다. 예를 들어, 제1 프로세서(1131)가 제1 레벨 쉬프터 회로(1141) 방향으로 High 신호(5V)를 출력하는 경우, 제1 레벨 쉬프터 회로(1141)에 포함된 스위치 소자(예: N-channel FET)가 OFF 상태가 되므로, 제1 통신선(41)에는 제1 풀업 저항(2451)에 연결된 3.3V(High)가 걸리게 되고, 제 2 프로세서(2410)에도 제1 댐핑 저항(2452)을 통해서 3.3V(High)가 입력될 수 있다. 반면, 제1 프로세서(1131)에서 제1 레벨 쉬프터 회로(1141) 방향으로 Low 신호(0V)를 출력하는 경우, 제1 레벨 쉬프터 회로(1141)에 포함된 스위치 소자(예: N-channel FET)가 ON 상태가 되므로, 제1 통신선(41)의 전압이 0V(Low)가 되고, 제2 프로세서(2410)에도 0V(Low)가 입력될 수 있다. 즉, 제1 프로세서(1131)가 제1 레벨 쉬프터 회로(1141) 방향으로 High 신호를 출력하는 경우 제1 통신선(41)을 통해 제2 프로세서(2410)에 High 신호가 입력되고, 제1 프로세서(1131)가 제1 레벨 쉬프터 회로(1141) 방향으로 Low 신호를 출력하는 경우, 제1 통신선(41)을 통해 제2 프로세서(2410)에 Low 신호가 입력될 수 있다.
마찬가지로, 제1 프로세서(1131)가 제2 레벨 쉬프터 회로(1142) 방향으로 High 신호를 출력하는 경우 제2 통신선(42)을 통해 제2 프로세서(2410)에 High 신호가 입력되고, 제1 프로세서(1131)가 제2 레벨 쉬프터 회로(1142) 방향으로 Low 신호를 출력하는 경우, 제2 통신선(42)을 통해 제2 프로세서(2410)에 Low 신호가 입력될 수 있다.
한편, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제1 통신선(41)과 제2 통신선(42)을 통해 전송할 수 있다. 예를 들어, 제2 프로세서(2410)가 제1 댐핑 저항(2452) 방향으로 High 신호(3.3V)를 출력하는 경우, 제1 통신선(41)에도 3.3V(High)가 걸리게 된다. 이때, 제1 레벨 쉬프터 회로(1141)에 포함된 스위치 소자(예: N-channel FET)가 동작하지 않으므로, 제1 프로세서(1131)에는 5V(High)가 입력된다. 즉, 제1 레벨 쉬프터 회로(1141)에서 +5V 전원이 10KΩ 저항과 스위치 소자(예: N-channel FET)의 바디 다이오드(Body Diode, BD)를 거처 제1 통신선(41)으로 흐르지 못하므로(전류 Path가 형성되지 않음), 제1 프로세서(1131)에는 5V가 입력되어 제1 프로세서(1131)의 SDA는 High(+5V)가 된다. 반면, 제2 프로세서(2410)가 제1 댐핑 저항(2452) 방향으로 Low 신호(0V)를 출력하는 경우, 제1 풀업 저항(2451)에 비해 제1 댐핑 저항(2452)의 크기가 매우 작으므로, 제1 통신선(41)에도 0에 가까운 전압(Low)이 걸리게 된다. 예를 들어, 제1 통신선(41)의 전압은 0.032673V (= 3.3V *[100/(10K+100)]로 LOW 상태가 될 수 있다. 또한, 제1 레벨 쉬프터 회로(1141)에 포함된 저항(10KΩ)이 크므로 전압 강하가 많이 돼서 제1 프로세서(1131)로도 0에 가까운 전압(Low)이 입력된다. 즉, 제1 레벨 쉬프터 회로(1141)에 포함된 스위치 소자(예: N-channel FET)는 OFF 상태이나, +5V는 저항(10KΩ) 및 스위치 소자(예: N-channel FET)의 바디 다이오드(BD)를 통해서 제1 통신선(41)으로 이동하는 전류 경로(Path)가 형성되어, 제1 프로세서(1131)의 SDA는 Low가 된다. 예를 들어, 스위치 소자(예: N-channel FET)의 바디 다이오드(BD)의 전압(VF)이 0.6V라고 가정하면, 제1 프로세서(1131)로 입력되는 전압(SDA 전압이라고도 함)은 다음과 같을 수 있다.
제1프로세서(1131)의 SDA 전압 = N-FET BD VF(0.6V) + 제1 통신선(41) 전압
= 0.6V + 0.032673V = 0.632673V (약 4.367V는 10KΩ 저항에 인가됨)
따라서, 제2 프로세서(2410)가 제1 댐핑 저항(2452) 방향으로 High 신호(3.3V)를 출력하는 경우, 제1 통신선(41)을 통해 제1 프로세서(1131)에도 High 신호(5V)가 입력되고, 제2 프로세서(2410)가 제1 댐핑 저항(2452) 방향으로 Low 신호(0V)를 출력하는 경우, 제1 통신선(41)을 통해 제1 프로세서(1131)에도 Low 신호(예: 대략 0V(
0V))가 입력된다.
마찬가지로, 제2 프로세서(2410)가 제2 댐핑 저항(2454) 방향으로 High 신호(예: 3.3V)를 출력하는 경우, 제2 통신선(42)을 통해 제1 프로세서(1131)에도 High 신호(예: 5V)가 입력되고, 제2 프로세서(2410)가 제2 댐핑 저항(2454) 방향으로 Low 신호(예: 0V)를 출력하는 경우, 제2 통신선(42)을 통해 제1 프로세서(1131)에도 Low 신호(예: 대략 0V(
0V))가 입력된다.
무선 청소기(100)가 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142)를 포함하는 경우, 제1 프로세서(1131)에서 출력되는 전압과 제2 프로세서(2410)에서 출력되는 전압이 상이하더라도, 청소기 본체(1000)와 브러시 장치(2000) 간의 I2C 통신이 가능하다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 구동 회로(1130d)가 제1 풀업 저항(2451), 제1 댐핑 저항(2452), 제2 풀업 저항(2453), 제2 댐핑 저항(2454)을 포함하고, 브러시 장치(2000)의 구동 회로(2400d)가 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142)를 포함할 수도 있다.
도 32는 본 개시의 일 실시예에 따른 무선 청소기(100)의 UART 통신을 위한 회로를 설명하기 위한 도면이다.
도 32를 참조하면, 청소기 본체(1000)는 UART 통신을 위한 구동 회로(1130e)를 포함할 수 있고, 브러시 장치(2000)도 UART 통신을 위한 구동 회로(2400e)를 포함할 수 있다. 도 32에 도시된 청소기 본체(1000)의 구동 회로(1130e)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 32에 도시된 브러시 장치(2000)의 구동 회로(2400e)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 전원선(10, 20)에 연결되는 신호선(30) 대신에 UART 전이중 통신을 위한 2개의 와이어를 포함할 수 있다. 예를 들어, 무선 청소기(100)는, 제3 통신선(51)과 제4 통신선(52)을 포함할 수 있다. 제3 통신선(51)은 제1 프로세서(1131)가 제2 프로세서(2410)로 신호를 전송하기 위한 선이고, 제4 통신선(52)은 제2 프로세서(2410)가 제1 프로세서(1131)로 신호를 전송하기 위한 선일 수 있다. 제1 프로세서(1131)와 제2 프로세서(2410)는 각각 제3 통신선(51)과 제4 통신선(52)을 통해 동시에 신호를 송수신할 수 있다.
본 개시의 일 실시예에 의하면, 노이즈에 강한 통신을 위해, 청소기 본체(1000)의 구동 회로(1130e)는 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142)를 포함할 수 있다. 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142) 각각은 스위치 소자와 주변 회로를 패킹(packing)한 레벨 쉬프트 IC일 수도 있다. 브러시 장치(2000)의 구동 회로(2400e)는 제1 풀업 저항(2451), 제1 댐핑 저항(2452), 제2 풀업 저항(2453), 제2 댐핑 저항(2454)을 포함할 수 있다.
청소기 본체(1000)는 마스터 기기로 동작함으로써, 동작 조건을 나타내는 신호를 제3 통신선(51)을 통해 제2 프로세서(2410)로 전송할 수 있다. 예를 들어, 제1 프로세서(1131)가 High 신호(5V)를 출력하는 경우, 제1 레벨 쉬프터 회로(1141)에 포함된 스위치 소자(예: N-channel FET)가 OFF 상태가 되므로, 제3 통신선(51)에는 제1 풀업 저항(2451)에 연결된 3.3V(High)가 걸리게 되고, 제 2 프로세서(2410)에도 제1 댐핑 저항(2452)을 통해서 3.3V(High)가 입력될 수 있다. 반면, 제1 프로세서(1131)에서 Low 신호(예: 0V)를 출력하는 경우, 제1 레벨 쉬프터 회로(1141)에 포함된 스위치 소자(예: N-channel FET)가 ON 상태가 되므로, 제3 통신선(51)의 전압이 0V(Low)가 되고, 제2 프로세서(2410)에도 0V(Low)가 입력될 수 있다. 즉, 제1 프로세서(1131)가 High 신호(예: 5V)를 출력하는 경우 제3 통신선(51)을 통해 제2 프로세서(2410)에 High 신호(예: 3.3V)가 입력되고, 제1 프로세서(1131)가 Low 신호(예: 0V)를 출력하는 경우, 제3 통신선(51)을 통해 제2 프로세서(2410)에 Low 신호(예: 0V)가 입력될 수 있다.
한편, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제4 통신선(52)을 통해 전송할 수 있다. 예를 들어, 제2 프로세서(2410)가 High 신호(예: 3.3V)를 출력하는 경우, 제4 통신선(52)에도 3.3V(High)가 걸리게 된다. 이때, 제2 레벨 쉬프터 회로(1142)에 포함된 스위치 소자(예: N-channel FET)가 동작하지 않으므로, 제1 프로세서(1131)에는 5V(High)가 입력된다. 반면, 제2 프로세서(2410)가 Low 신호(예: 0V)를 출력하는 경우, 제2 풀업 저항(2453)에 비해 제2 댐핑 저항(2454)의 크기가 매우 작으므로, 제4 통신선(52)에도 0에 가까운 전압(Low)이 걸리게 된다. 또한, 제2 레벨 쉬프터 회로(1142)에 포함된 저항(10K)이 크므로, 전압 강하가 많이 돼서 제1 프로세서(1131)로도 0에 가까운 전압(Low)이 입력된다. 즉, 제2 프로세서(2410)가 High 신호(예: 3.3V)를 출력하는 경우, 제4 통신선(52)을 통해 제1 프로세서(1131)에도 High 신호(예: 5V)가 입력되고, 제2 프로세서(2410)가 Low 신호(예: 0V)를 출력하는 경우, 제4 통신선(52)을 통해 제1 프로세서(1131)에도 Low 신호(예: 대략 0V(
0V))가 입력된다. 도 32의 레벨 쉬프터 회로들(1141, 1142)의 동작은 도 31의 레벨 쉬프터 회로들(1141, 1142)의 동작과 동일하므로, 중복되는 설명은 생략하기로 한다.
무선 청소기(100)가 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142)를 포함하는 경우, 제1 프로세서(1131)에서 출력되는 전압과 제2 프로세서(2410)에서 출력되는 전압이 상이하더라도, 청소기 본체(1000)와 브러시 장치(2000) 간의 UART 통신이 가능하다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)의 구동 회로(1130e)가 제1 풀업 저항(2451), 제1 댐핑 저항(2452), 제2 풀업 저항(2453), 제2 댐핑 저항(2454)을 포함하고, 브러시 장치(2000)의 구동 회로(2400e)가 제1 레벨 쉬프터 회로(1141)와 제2 레벨 쉬프터 회로(1142)를 포함할 수도 있다.
도 33은 본 개시의 일 실시예에 따른 무선 청소기(100)의 UART 전이중 통신을 위한 회로를 설명하기 위한 도면이다.
도 33을 참조하면, 청소기 본체(1000)는 UART 통신을 위한 구동 회로(1130f)를 포함할 수 있고, 브러시 장치(2000)도 UART 통신을 위한 구동 회로(2400f)를 포함할 수 있다. 도 33에 도시된 청소기 본체(1000)의 구동 회로(1130f)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 33에 도시된 브러시 장치(2000)의 구동 회로(2400f)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 UART 통신을 위한 2개의 와이어를 포함할 수 있다. 예를 들어, 무선 청소기(100)는, 제3 통신선(51)과 제4 통신선(52)을 포함할 수 있다. 제3 통신선(51)은 제1 프로세서(1131)가 제2 프로세서(2410)로 신호를 전송하기 위한 선이고, 제4 통신선(52)은 제2 프로세서(2410)가 제1 프로세서(1131)로 신호를 전송하기 위한 선일 수 있다. 제1 프로세서(1131)와 제2 프로세서(2410)는 각각 제3 통신선(51)과 제4 통신선(52)을 통해 동시에 신호를 송수신할 수 있다.
본 개시의 일 실시예에 의하면, 노이즈에 강한 통신을 위해, 청소기 본체(1000)의 구동 회로(1130f)는 제1 레벨 쉬프터 회로(1141)와 유사한 형태의 제1 회로(1141a), 제3 댐핑 저항(1143), 제1 전압 분배기(1137)를 포함할 수 있다. 브러시 장치(2000)의 구동 회로(2400f)는 제2 전압 분배기(2427), 제1 댐핑 저항(2452), 제1 레벨 쉬프터 회로(1141)와 유사한 형태의 제2 회로(2455)를 포함할 수 있다.
청소기 본체(1000)는 마스터 기기로 동작함으로써, 동작 조건을 나타내는 신호를 제3 통신선(51)을 통해 제2 프로세서(2410)로 전송할 수 있다. 예를 들어, 제1 프로세서(1131)가 High 신호(5V)를 출력하는 경우, 제1 회로(1141a)에 포함된 스위치 소자(예: N-channel FET)가 OFF 상태가 되므로, 제3 통신선(51)에는 R1 저항을 통해 연결되는 +전원선(10)의 전압(예: 25.2V)(High)이 걸리게 된다. 이때, 제 2 프로세서(2410)에는, 제2 전압 분배기(2427)를 통해서 High 신호(예: Battery 전압(예: 25.2V) * R3/(R1+R2+R3))가 입력될 수 있다. 반면, 제1 프로세서(1131)에서 Low 신호(예: 0V)를 출력하는 경우, 제1 회로(1141a)에 포함된 스위치 소자(예: N-channel FET)가 ON 상태가 되므로, 제3 통신선(51)의 전압이 0V(Low)가 되고, 제2 프로세서(2410)에도 0V(Low)가 입력될 수 있다. 즉, 제1 프로세서(1131)가 High 신호(예: 5V)를 출력하는 경우 제3 통신선(51)을 통해 제2 프로세서(2410)에 High 신호(예: 3.3V)가 입력되고, 제1 프로세서(1131)가 Low 신호(예: 0V)를 출력하는 경우, 제3 통신선(51)을 통해 제2 프로세서(2410)에 Low 신호(예: 0V)가 입력될 수 있다.
한편, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제4 통신선(52)을 통해 전송할 수 있다. 예를 들어, 제2 프로세서(2410)가 High 신호(예: 3.3V)를 출력하는 경우, 제2 회로(2455)에 포함된 스위치 소자(예: N-channel FET)가 OFF 상태가 되므로, 제4 통신선(52)에는 R4 저항을 통해 연결되는 +전원선(10)의 전압(예: 25.2V)(High)가 걸리게 된다. 이때, 제 1 프로세서(1131)에는, 제1 전압 분배기(1137)를 통해서 High 신호(예: Battery 전압(예: 25.2V) * R6/(R4+R5+R6))가 입력될 수 있다. 반면, 제2 프로세서(2410)에서 Low 신호(예: 0V)를 출력하는 경우, 제2 회로(2455)에 포함된 스위치 소자(예: N-channel FET)가 ON 상태가 되므로, 제4 통신선(52)의 전압이 0V(Low)가 되고, 제1 프로세서(1131)에도 0V(Low)가 입력될 수 있다. 즉, 제2 프로세서(2410)가 High 신호(예: 3.3V)를 출력하는 경우 제4 통신선(52)을 통해 제1 프로세서(1131)에 High 신호가 입력되고, 제2 프로세서(2410)가 Low 신호(예: 0V)를 출력하는 경우, 제4 통신선(52)을 통해 제1 프로세서(1131)에 Low 신호(예: 0V)가 입력될 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)와 브러시 장치(2000)가 UART 통신할 때 제3 통신선(51) 및 제4 통신선(52)을 통해 고전압 신호가 송수신될 수 있으므로, 청소기 본체(1000)와 브러시 장치(2000)간의 통신이 노이즈에 강할 수 있다.
도 34는 본 개시의 일 실시예에 따른 무선 청소기(100)의 I2C 통신을 위한 회로를 설명하기 위한 도면이다.
도 34를 참조하면, 청소기 본체(1000)는 I2C(Inter-Integrated Circuit) 통신을 위한 구동 회로(1130g)를 포함할 수 있고, 브러시 장치(2000)도 I2C 통신을 위한 구동 회로(2400g)를 포함할 수 있다. 도 34에 도시된 청소기 본체(1000)의 구동 회로(1130g)는, 도 20에 도시된 청소기 본체(1000)의 구동 회로(1130)에 대응될 수 있고, 도 33에 도시된 브러시 장치(2000)의 구동 회로(2400g)는 도 20에 도시된 구동 회로(2400)에 대응될 수 있으므로, 중복되는 설명은 생략하기로 한다.
본 개시의 일 실시예에 의하면, 무선 청소기(100)는 I2C 통신을 위한 제6 통신선(43), 제7 통신선(44), 제8 통신선(45)을 포함할 수 있다. 제6 통신선(43)은 청소기 본체(1000)에서 브러시 장치(2000)로 SDA(Serial Data)를 송신하기 위한 선이고, 제7 통신선(44)은 브러시 장치(2000)에서 청소기 본체(1000)로 SDA(Serial Data)를 송신하기 위한 선이고, 제8 통신선(45)은 청소기 본체(1000)에서 브러시 장치(2000)로 SCL(Serial Clock)을 송신하기 위한 선일 수 있다.
본 개시의 일 실시예에 의하면, 노이즈에 강한 통신을 위해, 청소기 본체(1000)의 구동 회로(1130g)는 제1 레벨 쉬프터 회로(1141)와 유사한 형태의 제1 회로(1141a), 제2 레벨 쉬프터 회로(1142)와 유사한 형태의 제3 회로(1142a), 제3 댐핑 저항(1143), 제1 전압 분배기(1137)를 포함할 수 있다. 브러시 장치(2000)의 구동 회로(2400g)는 제2 전압 분배기(2427), 제1 댐핑 저항(2452), 제2 댐핑 저항(2454), 제1 레벨 쉬프터 회로(1141)와 유사한 형태의 제2 회로(2455)를 포함할 수 있다.
청소기 본체(1000)는 마스터 기기로 동작함으로써, 동작 조건을 나타내는 신호를 제6 통신선(43)과 제7 통신선(44)을 통해 제2 프로세서(2410)로 전송할 수 있다. 예를 들어, 제1 프로세서(1131)가 제1 회로(1141a) 방향으로 High 신호(예: 5V)를 출력하는 경우, 제1 회로(1141a)에 포함된 스위치 소자(예: N-channel FET)가 OFF 상태가 되므로, 제6 통신선(43)에는 R1 저항을 통해 연결되는 +전원선(10)의 전압(예: 25.2V)(High)이 걸리게 된다. 이때, 제 2 프로세서(2410)에는, 제2 전압 분배기(2427)를 통해서 High 신호(예: Battery 전압(예: 25.2V) * R3/(R1+R2+R3))가 입력될 수 있다. 반면, 제1 프로세서(1131)에서 제1 회로(1141a) 방향으로 Low 신호(예: 0V)를 출력하는 경우, 제1 회로(1141a)에 포함된 스위치 소자(예: N-channel FET)가 ON 상태가 되므로, 제6 통신선(43)의 전압이 0V(Low)가 되고, 제2 프로세서(2410)에도 0V(Low)가 입력될 수 있다. 즉, 제1 프로세서(1131)가 데이터 신호(예: SDA)를 송신하기 위해 High 신호(예: 5V)를 출력하는 경우 제6 통신선(43)을 통해 제2 프로세서(2410)에 High 신호(예: 3.3V)가 입력되고, 제1 프로세서(1131)가 데이터 신호(예: SDA)를 송신하기 위해 Low 신호(예: 0V)를 출력하는 경우, 제6 통신선(43)을 통해 제2 프로세서(2410)에 Low 신호(예: 0V)가 입력될 수 있다. 마찬가지로, 제1 프로세서(1131)가 클락 신호(예: SCL)를 전송하기 위해 High 신호(예: 5V)를 출력하는 경우 제7 통신선(44)을 통해 제2 프로세서(2410)에 High 신호(예: 3.3V)가 입력되고, 제1 프로세서(1131)가 클락 신호(예: SCL)를 전송하기 위해 Low 신호(예: 0V)를 출력하는 경우, 제7 통신선(44)을 통해 제2 프로세서(2410)에 Low 신호(예: 0V)가 입력될 수 있다.
한편, 브러시 장치(2000)의 제 2 프로세서(2410)는 현재 상태를 나타내는 응답 신호를 청소기 본체(1000)의 제1 프로세서(1131)로 제8 통신선(45) 및 제7 통신선(44)을 통해 전송할 수 있다. 예를 들어, 제2 프로세서(2410)가 High 신호(예: 3.3V)를 출력하는 경우, 제2 회로(2455)에 포함된 스위치 소자(예: N-channel FET)가 OFF 상태가 되므로, 제8 통신선(45)에는 R7 저항을 통해 연결되는 +전원선(10)의 전압(예: 25.2V)(High)이 걸리게 된다. 이때, 제 1 프로세서(1131)에는, 제1 전압 분배기(1137)를 통해서 High 신호(예: Battery 전압(예: 25.2V) * R9/(R7+R8+R9))가 입력될 수 있다. 반면, 제2 프로세서(2410)에서 Low 신호(예: 0V)를 출력하는 경우, 제2 회로(2455)에 포함된 스위치 소자(예: N-channel FET)가 ON 상태가 되므로, 제8 통신선(45)의 전압이 0V(Low)가 되고, 제1 프로세서(1131)에도 0V(Low)가 입력될 수 있다. 즉, 제2 프로세서(2410)가 데이터 신호(예: SDA)를 송신하기 위해 High 신호(예: 3.3V)를 출력하는 경우 제8 통신선(45)을 통해 제1 프로세서(1131)에 High 신호가 입력되고, 제2 프로세서(2410)가 데이터 신호(예: SDA)를 송신하기 위해 Low 신호(예: 0V)를 출력하는 경우, 제8 통신선(45)을 통해 제1 프로세서(1131)에 Low 신호(예: 0V)가 입력될 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)와 브러시 장치(2000)가 I2C를 이용하여 통신할 때 제6 통신선(43), 제7 통신선(44), 및 제8 통신선(45)을 통해 고전압 신호가 송수신될 수 있으므로, 청소기 본체(1000)와 브러시 장치(2000) 간의 통신이 노이즈에 강할 수 있다.
도 35는 본 개시의 일 실시예에 따른 무선 청소기(100)가 동작 상태 알림을 출력하는 동작을 설명하기 위한 도면이다.
본 개시의 일 실시예에 의하면, 사용자가 AI 모드를 선택한 경우, 청소기 본체(1000)는 출력 인터페이스(예: LCD)에 제1 GUI(3501)를 표시할 수 있다. 제1 GUI(3501)는 무선 청소기(100)가 AI 모드로 동작하고 있음을 나타낼 수 있으며, AI 모드 하에서 청소 가능 시간(남은 배터리 사용 시간)을 나타낼 수도 있다.
청소기 본체(1000)가 AI 모델을 이용하여 브러시 장치(2000)의 사용 환경 상태를 식별하고, 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기 또는 브러시 장치(2000)의 드럼 RPM을 조절한 경우, 청소기 본체(1000)의 출력 인터페이스에는 제2 GUI(3502)가 표시될 수 있다. 예를 들어, 제2 GUI(3502)는 “상황에 맞게 최적화했어요”라는 알림을 포함할 수 있다.
출력 인터페이스에 제2 GUI(3502)가 표시된 후 소정 시간(예: 3초)이 경과하면 다시 제1 GUI(3501)가 표시될 수 있다. 이후 브러시 장치(2000)의 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기 또는 브러시 장치(2000)의 드럼 RPM이 다시 변경된 경우, 제2 GUI(3502)가 다시 표시될 수 있다.
도 36은 본 개시의 일 실시예에 따른 무선 청소기(100)의 GUI를 설명하기 위한 도면이다.
본 개시의 일 실시예에 의하면, 사용자가 AI 모드를 선택하고, 청소기 본체(1000)와 브러시 장치(2000)가 통신이 가능한 경우, 청소기 본체(1000)는 출력 인터페이스(예: LCD)에 제1 GUI(3601)를 표시할 수 있다. 제1 GUI(3601)는 무선 청소기(100)가 AI 모드로 동작하고 있음을 나타낼 수 있다.
본 개시의 일 실시예에 의하면, 청소기 본체(1000)와 브러시 장치(2000) 간의 통신이 불가능한 경우, 청소기 본체(1000)는 출력 인터페이스(예: LCD)에 제2 GUI(3602)를 표시할 수 있다. 제2 GUI(3602)는 AI 모드로 동작이 불가능하는 알림을 포함할 수 있다. 예를 들어, 청소기 본체(1000)는 신호선(30)을 통해 제1 신호를 전송한 후에 소정 시간 동안 제2 신호를 수신하지 못한 경우, 브러시 장치(2000)와의 통신이 불가능하다고 결정할 수 있다. 청소기 본체(1000)는 브러시 장치(2000)와의 통신이 불가능하다고 결정됨에 따라, AI 모드로 동작이 불가능함을 나타내는 알림을 출력 인터페이스를 통해 출력할 수 있다.
본 개시의 일 실시예에 의하면, 사용자가 전원 버튼을 누르고 AI 모드를 선택하였으나, 브러시 장치(2000)의 동작 전류가 감지되지 않는 경우, 무선 청소기(100)에 브러시 장치(2000)가 제대로 결합되지 않은 것일 수 있다. 따라서, 청소기 본체(1000)는 브러시 장치(2000)의 상태를 확인해 보라는 제3 GUI(3603)를 표시할 수 있다. 또한, 본 개시의 일 실시예에 의하면, 브러시 장치(2000)와의 통신이 불가능하다고 결정되거나, 브러시 장치(2000)의 부하가 임계 값 이상인 경우(과부하 상태), 청소기 본체(1000)는 브러시 장치(2000)의 상태를 확인해 보라는 제3 GUI(3603)를 표시할 수 있다.
한편, 본 개시의 일 실시예에 의하면, 청소기 본체(1000)는 브러시 장치(2000)와의 통신이 불가능하다고 결정됨에 따라 동작 모드를 AI 모드에서 일반 모드로 전환하고, 일반 모드에 대응하는 GUI를 출력 인터페이스를 통해서 표시할 수도 있다.
본 개시의 일 실시예에 의하면, AI 모델을 이용하여 브러시 장치(2000)의 현재 사용 환경 상태를 식별하고, 브러시 장치(2000)의 현재 사용 환경 상태에 따라 흡입 모터(1110)의 흡입력 세기를 자동으로 조절해주는 무선 청소기(100)가 제공될 수 있다.
본 개시의 일 실시예에 의하면, AI 모델을 이용하여 브러시 장치(2000)의 현재 사용 환경 상태를 식별하고, 브러시 장치(2000)의 현재 사용 환경 상태에 따라 브러시 장치(2000)의 회전 솔의 RPM을 자동으로 조절하는 무선 청소기(100)가 제공될 수 있다.
본 개시의 일 실시예에 따른 무선 청소기(100)는, 무선 청소기(100) 내부에 진공을 만드는 흡입 모터(1110); 무선 청소기(100) 내부의 유로 압력을 측정하는 압력 센서(1400); 브러시 장치(2000)의 부하를 측정하기 위한 부하 감지 센서(1134); 브러시 장치(2000)의 사용 환경 상태를 추론하도록 학습된 AI 모델을 저장하는 메모리(1900); 및 적어도 하나의 프로세서(1001)를 포함할 수 있다. 적어도 하나의 프로세서(1001)는, 압력 센서(1400)에 의해 측정된 유로 압력에 관한 데이터를 압력 센서(1400)로부터 획득할 수 있다. 적어도 하나의 프로세서(1001)는, 부하 감지 센서(1134)를 통해 브러시 장치(2000)의 부하와 관련된 데이터를 획득할 수 있다. 적어도 하나의 프로세서(1001)는, 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 메모리(1900)에 저장된 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다. 적어도 하나의 프로세서(1001)는, 식별된 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 흡입 모터(1110)의 흡입력 세기를 조절할 수 있다.
본 개시의 일 실시예에 따른 브러시 장치(2000)의 부하와 관련된 데이터는, 브러시 장치(2000)의 동작 전류, 브러시 장치(2000)로 인가되는 전압, 또는 브러시 장치(2000)의 소비 전력 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에 따른 브러시 장치(2000)의 현재 사용 환경 상태는, 브러시 장치(2000)가 현재 위치하는 피청소면의 상태, 피청소면 내에서 브러시 장치(2000)의 상대적 위치 상태, 또는 브러시 장치(2000)가 피청소면에서 들린 상태 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에 따른 적어도 하나의 프로세서(1001)는, 식별된 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 브러시 장치(2000)의 회전 솔의 목표 RPM을 결정할 수 있다. 적어도 하나의 프로세서(1001)는 결정된 회전 솔의 목표 RPM을 나타내는 제어 신호를 브러시 장치(2000)로 전송할 수 있다.
본 개시의 일 실시예에 따른 적어도 하나의 프로세서(1001)는, 제어 신호에 대한 응답으로, 브러시 장치(2000)로부터 브러시 장치(2000)의 현재 상태를 나타내는 신호를 수신할 수 있다.
본 개시의 일 실시예에 따른 적어도 하나의 프로세서(1001)는, 식별된 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 브러시 장치(2000)에 포함된 조명 장치(2300)의 색상 또는 밝기 중 적어도 하나를 결정할 수 있다. 적어도 하나의 프로세서(1001)는, 결정된 조명 장치(2300)의 색상 또는 밝기 중 적어도 하나를 나타내는 제어 신호를 브러시 장치(2000)로 전송할 수 있다.
적어도 하나의 프로세서(1001)는, 메모리(1900)에 저장된 복수의 AI 모델 중에서 브러시 장치(2000)의 제1 유형에 대응하는 제1 AI 모델을 선택할 수 있다. 적어도 하나의 프로세서(1001)는, 선택된 제1 AI 모델에 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다.
본 개시의 일 실시예에 따른 브러시 장치(2000)는, 브러시 장치(2000)의 제1 유형을 나타내는 제1 식별 저항을 포함할 수 있다. 적어도 하나의 프로세서(1001)는, 흡입 모터(1110)로 입력되는 제1 전압 값에 기초하여, 제1 식별 저항에 대응하는 브러시 장치(2000)의 제1 유형을 식별할 수 있다.
적어도 하나의 프로세서(1001)는, 브러시 장치(2000)로부터 브러시 장치(2000)의 제1 유형을 나타내는 데이터 신호를 수신할 수 있다.
적어도 하나의 프로세서(1001)는, 흡입 모터(1110)의 흡입력 세기를 AI 모델에 적용하여, AI 모델의 파라미터 값을 수정할 수 있다. 적어도 하나의 프로세서(1001)는, 파라미터 값이 수정된 AI 모델에 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별할 수 있다.
본 개시의 일 실시예에 따른 AI 모델은, SVM(Support Vector Machine) 모델, 신경망(Neural Networks) 모델, 랜덤 포레스트(Random Forest) 모델, 또는 그래픽 모델(Graphical Model) 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에 따른 압력 센서(1400)는, 절대압 센서 또는 상대압 센서 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에 따른 압력 센서(1400)는, 흡입 모터(1110)가 포함된 청소기 본체(1000)의 흡입 덕트(40)에 마련될 수 있다.
적어도 하나의 프로세서(1001)는, 흡입 모터(1110) 구동 전 압력 센서(1400)를 통해 측정된 제1 압력 값과 흡입 모터(1110) 구동 후 압력 센서(1400)를 통해 측정된 제2 압력 값의 차를 유로 압력에 관한 데이터로 획득할 수 있다.
적어도 하나의 프로세서(1001)는, 브러시 장치(2000)의 현재 사용 환경 상태가 마루(hard floor)를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 중간 강도인 제1 세기로 조정할 수 있다. 적어도 하나의 프로세서(1001)는, 브러시 장치(2000)의 현재 사용 환경 상태가 매트 또는 고밀도 카펫을 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 제1 세기보다 낮은 제2 세기로 조정할 수 있다. 적어도 하나의 프로세서(1001)는, 브러시 장치(2000)의 현재 사용 환경 상태가 일반 카펫을 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 제1 세기보다 높은 제3 세기로 조정할 수 있다.
적어도 하나의 프로세서(1001)는, 브러시 장치(2000)의 현재 사용 환경 상태가 피청소면으로부터 일정 거리 이상 들린 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 최소 강도로 조정하고, 브러시 장치(2000)의 목표 RPM을 가장 저단으로 결정할 수 있다.
적어도 하나의 프로세서(1001)는, 브러시 장치(2000)의 현재 사용 환경 상태가 벽면 코너를 청소하는 상태인 경우, 흡입 모터(1110)의 흡입력 세기를 최대 강도로 조정할 수 있다.
적어도 하나의 프로세서(1001)는, 조절된 흡입 모터(1110)의 흡입력 세기에 기초하여, 브러시 장치(2000)의 구속 레벨(trip level)을 조절할 수 있다.
적어도 하나의 프로세서(1001)는, 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태의 천이를 식별할 수 있다. 적어도 하나의 프로세서(1001)는, 브러시 장치(2000)의 현재 사용 환경 상태의 천이가 식별됨에 따라, 흡입 모터(1110)의 흡입력 세기를 조절할 수 있다.
본 개시의 일 실시예에 따른 무선 청소기(100)가 흡입 모터(1110)의 흡입력 세기를 자동으로 조절하는 방법은, 압력 센서(1400)에 의해 측정된 유로 압력에 관한 데이터를 획득하는 단계, 부하 감지 센서(1134)를 통해 브러시 장치(2000)의 부하와 관련된 데이터를 획득하는 단계, 유로 압력에 관한 데이터 및 브러시 장치(2000)의 부하와 관련된 데이터를 기 학습된 AI 모델에 적용하여, 브러시 장치(2000)의 현재 사용 환경 상태를 식별하는 단계; 및 식별된 브러시 장치(2000)의 현재 사용 환경 상태에 기초하여, 흡입 모터(1110)의 흡입력 세기를 조절하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 진공 청소기의 동작 방법은, 진공 청소기에 부착물을 결합하는 단계; 상기 진공 청소기의 프로세서에 의해, 진공 청소기에 결합된 부착물을 진공 청소기와 결합하도록 구성된 복수의 서로 다른 유형의 부착물 중에서 제1 부착물로 식별하는 단계; 상기 프로세서에 의해, 상기 복수의 서로 다른 유형의 부착물에 대응하는 복수의 서로 다른 AI 모델 중에서 상기 제1 부착물에 대응하는 제1 AI 모델을 선택하는 단계; 상기 진공 청소기의 배터리로부터 진공 청소기의 흡입 모터(1110)로 전력을 전달하고, 상기 흡입 모터의 소비전력량에 따라 상기 진공 청소기의 흡입력을 발생시키는 단계; 상기 프로세서에 의해, 상기 선택된 제1 모델의 적어도 일부에 기초하여, 배터리로부터 전달되는 전력량을 제어하여 흡입력을 동적으로 조절하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 진공 청소기의 동작 방법은, 프로세서에 의해, 제1 부착물의 사용 환경 상태를 결정하는 단계; 및 사용 환경 상태에 따라 전력량을 조절하는 단계를 더 포함할 수 있다.
본 개시의 일 실시예에 의하면, 사용 환경 상태를 결정하는 단계는, 프로세서와 신호 통신하는 압력 센서(1400)에 의해 진공 청소기 내부의 유로 압력을 측정하는 단계; 프로세서와 신호 통신하는 부하 감지 센서(1134)에 의해 부착물의 부하를 측정하는 단계; 및 AI 모델에 상기 유로 압력 데이터 및 브러시 장치(2000)의 부하 데이터를 적용하여 사용환경 상태를 판단하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 진공 청소기의 동작 방법은, 제1 부착물을 제1 부착물과 상이한 제2 부착물로 교체하는 단계; 프로세서에 의해, 제2 부착물을 식별하는 단계; 프로세서에 의해, 제2 부착물에 대응하는 제2 모델을 선택하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 진공 청소기의 동작 방법은, 프로세서에 의해, 흡입력을 동적으로 조정하기 위한 제2 모델의 적어도 일부에 기초하여, 배터리로부터 전달되는 전력량을 제어하는 단계를 포함할 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.