[0001] Die Erfindung betrifft ein Verfahren zur effizienten, robusten und komfortablen Steuerung
eines Reinigungsroboters. Des Weiteren betrifft die Erfindung einen Reinigungsroboter
mit einer kosteneffizienten, robusten und komfortablen Benutzerschnittstelle.
[0002] Ein Reinigungsroboter, insbesondere ein Saugroboter, weist typischerweise unterschiedliche
Sensoren auf, um automatisiert in einem Raum navigieren zu können und um dabei den
Boden des Raumes zu reinigen. Um auch unter Möbelstücke, etwa Tische oder Stühle,
fahren und reinigen zu können, weisen Reinigungsroboter meist eine relativ geringe
Höhe (z.B. von ca. 10 cm oder weniger) auf. Die Benutzerschnittstelle eines Reinigungsroboters
ist typischerweise auf der, von dem zu reinigenden Boden abgewandten, Oberseite des
Reinigungsroboters angeordnet. Die Benutzerschnittstelle kann ein oder mehrere Tasten
aufweisen, die durch einen Nutzer des Roboters gedrückt werden können. Um eine Eingabe
über die Benutzerschnittstelle zu tätigen, muss sich somit der Nutzer zu dem Reinigungsroboter
herunterbeugen, was typischerweise wenig komfortabel ist. Alternativ kann eine Benutzerschnittstelle
mit Spracheingabe bereitgestellt werden. Eine derartige Benutzerschnittstelle ist
jedoch aufgrund der relativ hohen Geräuschemission eines Reinigungsroboters meist
wenig robust. Ferner kann eine Fernbedienung für einen Reinigungsroboter bereitgestellt
werden, die jedoch mit relativ hohen Zusatzkosten verbunden sein kann.
[0003] Das vorliegende Dokument befasst sich mit der technischen Aufgabe, eine kosteneffiziente,
robuste und komfortable Benutzerschnittstelle für einen Reinigungsroboter bereitzustellen.
[0004] Die Aufgabe wird jeweils durch den Gegenstand der unabhängigen Patentansprüche gelöst.
Vorteilhafte Ausführungsformen sind insbesondere in den abhängigen Patentansprüchen
definiert, in nachfolgender Beschreibung beschrieben oder in der beigefügten Zeichnung
dargestellt.
[0005] Gemäß einem Aspekt der Erfindung wird ein Reinigungsroboter, insbesondere ein Saugroboter,
zur Reinigung eines Untergrunds bzw. eines Bodens beschrieben. Der Reinigungsroboter
kann eingerichtet sein, sich selbständig und/oder automatisch in einem Raum bzw. Gelände
zu bewegen, um den Boden bzw. Untergrund des Raums bzw. Geländes zu reinigen (insbesondere
zu saugen). Zu diesem Zweck kann der Reinigungsroboter ein oder mehrere Antriebseinheiten
(z.B. mit ein oder mehreren Antriebsrädern) umfassen. Außerdem umfasst der Reinigungsroboter
typischerweise ein oder mehrere Reinigungseinheiten, mit denen der Untergrund gereinigt
werden kann. Des Weiteren kann der Reinigungsroboter ein oder mehrere Umfeldsensoren
umfassen, um sich innerhalb des Raums bzw. Geländes zu orientieren. Die ein oder mehreren
Antriebseinheiten bzw. Reinigungseinheiten sind typischerweise an der Unterseite des
Reinigungsroboters angeordnet, die im Betrieb des Reinigungsroboters dem Untergrund
zugewandt ist. Die ein oder mehreren Umfeldsensoren sind typischerweise an einer Seitenwand
des Reinigungsroboters angeordnet, die im Wesentlichen senkrecht zu der Unterseite
des Reinigungsroboters angeordnet sein kann. Des Weiteren kann an der Oberseite des
Reinigungsroboters, die im Betrieb des Reinigungsroboters nach oben orientiert ist,
eine Benutzerschnittstelle des Reinigungsroboters angeordnet sein, die es einem Nutzer
des Reinigungsroboters ermöglicht, Steueranweisungen an den Reinigungsroboter zu übergeben
(z.B. über ein oder mehrere Tasten). Beispielhafte Steueranweisungen sind die Einstellung
eines bestimmten Betriebsmodus und/oder die Aktivierung bzw. der Stopp des Reinigungsroboters.
[0006] Der Reinigungsroboter umfasst zumindest einen Abstandssensor, der eingerichtet ist,
Abstandsdaten bezüglich eines Objekts zu erfassen, das durch einen Nutzer in einen
Erfassungsbereich des Abstandssensors geführt wird und/oder aus dem Erfassungsbereich
herausgeführt wird. Typischerweise ist der Abstandssensor eingerichtet, ein optisches
und/oder ein akustisches Abstandsmesssignal, insbesondere ein Ultraschallsignal und/oder
ein Infrarotsignal auszusenden, um die Abstandsdaten zu erfassen. Beispielsweise kann
der Abstandssensor ein Sendemodul umfassen, das eingerichtet ist, ein (z.B. gepulstes)
Abstandsmesssignal auszusenden. Des Weiteren kann der Abstandssensor ein Empfangsmodul
umfassen, das eingerichtet ist, das an einem Objekt reflektierte Abstandsmesssignal
zu empfangen. Die Abstanddaten können anzeigen, ob ein reflektiertes Abstandsmesssignal
empfangen wird (und sich somit ein Objekt im Erfassungsbereich des Abstandssensors
befindet). Des Weiteren können die Abstandsdaten ggf. die Laufzeit des ausgesendeten
und wieder empfangenen Abstandsmesssignals anzeigen. Aus der Laufzeit kann ein konkreter
Wert des Abstands eines Objekts ermittelt werden, das sich im Erfassungsbereich des
Abstandssensors befindet. Die Abstandsdaten können somit anzeigen, ob sich zu einem
bestimmten Zeitpunkt ein Objekt im Erfassungsbereich des Abstandssensors befindet
oder nicht. Des Weiteren können die Abstandsdaten ggf. anzeigen, in welchem Abstand
sich das Objekt von dem Abstandssensor befindet (mit einer bestimmten örtlichen Auflösung
von z.B. 1cm, 5mm, 1mm oder weniger).
[0007] Der Abstandssensor kann eine bestimmte Abtastrate (z.B. 10Hz, 50Hz, 100Hz, 1000Hz
oder mehr) aufweisen, mit der Abstandswerte erfasst werden. Die Abstandsdaten können
somit eine zeitliche Sequenz von Abstandswerten umfassen. Dabei zeigt der Abstandswert
für einen bestimmten Zeitpunkt an, ob sich an dem bestimmten Zeitpunkt ein Objekt
im Erfassungsbereich des Abstandssensors befindet oder nicht. Des Weiteren kann der
Abstandswert anzeigen, in welchem Abstand sich das Objekt an dem bestimmten Zeitpunkt
zum Abstandssensor befindet (mit einer bestimmten örtlichen Auflösung von z.B. 1cm,
5mm, 1mm oder weniger).
[0008] Der Abstandssensor ist vorzugsweise derart ausgelegt, dass der Erfassungsbereich
während des Betriebs des Reinigungsroboters für eine Hand und/oder einen Fuß des Nutzers
des Reinigungsroboters zugänglich ist. Insbesondere kann sich zu diesem Zweck der
Erfassungsbereich während des Betriebs des Reinigungsroboters zumindest teilweise
vertikal von dem Reinigungsroboter nach oben erstreckt. Der Erfassungsbereich kann
sich z.B. entlang einer Erfassungsachse erstrecken, wobei die Erfassungsachse zumindest
teilweise senkrecht zu der Oberseite des Reinigungsroboters nach oben verläuft. Der
Erfassungsbereich kann z.B. einem Kreiszylinder um die Erfassungsachse entsprechen,
wobei die Höhe des Kreiszylinders einem Erfassungsabstand des Abstandssensors entspricht,
bis zu dem ein Objekt detektiert werden kann. Der Radius des (als Kreiszylinder ausgebildeten)
Erfassungsbereichs ist dabei typischerweise um den Faktor 10, 100 oder mehr kleiner
als der Erfassungsabstand. Mit anderen Worten, der Abstandssensor kann einen strahlenförmigen
Erfassungsbereich aufweisen, der sich entlang einer Erfassungsachse erstreckt. Der
(strahlenförmige) Erfassungsbereich ist dabei bevorzugt derart ausgelegt, dass ein
Nutzer in komfortabler Weise eine Hand und/oder einen Fuß durch den Erfassungsbereich
führen kann.
[0009] Der Reinigungsroboter umfasst ferner eine Steuereinheit, die eingerichtet ist, auf
Basis der Abstandsdaten eine Steuergeste zu detektieren, die mit einer Steueranweisung
an den Reinigungsroboter assoziiert ist. Insbesondere kann auf Basis einer zeitlichen
Sequenz von Abstandswerten erkannt werden, dass ein Nutzer ein Objekt in den, durch
den und/oder aus dem Erfassungsbereich des Abstandssensors geführt hat, und dabei
eine bestimmte Steuergeste mit dem Objekt (z.B. mit der Hand und/oder mit dem Fuß)
vollzogen hat. Dabei können unterschiedliche Steueranweisungen an den Reinigungsroboter
(z.B. zur Aktivierung von unterschiedlichen Betriebsmodi) mit unterschiedlichen Steuergesten
assoziiert sein. Die Steuereinheit kann eingerichtet sein, auf Basis der Abstandsdaten
zu ermitteln, welche Steuergeste durch den Nutzer vollzogen wurde.
[0010] Die Steuereinheit ist weiter eingerichtet, in Reaktion auf die detektierte Steuergeste,
den Reinigungsroboter gemäß der mit der Steuergeste assoziierten Steueranweisung zu
betreiben.
[0011] Die Bereitstellung eines Reinigungsroboters mit ein oder mehreren Abstandssensoren
ermöglicht eine kosteneffiziente und robuste Erkennung von Gesten. Es kann somit in
kosteneffizienter und robuster Weise eine komfortable Benutzerschnittstelle für einen
Reinigungsroboter bereitgestellt werden.
[0012] Wie bereits oben dargelegt, können die Abstandsdaten eine zeitliche Sequenz von Abstandswerten
umfassen, wobei der Abstandswert an einem bestimmten Zeitpunkt von dem Abstand des
zur Gestensteuerung verwendeten Objekts zu dem Abstandssensor an dem bestimmten Zeitpunkt
abhängt. Die Steuereinheit kann eingerichtet sein, die Steuergeste auf Basis der Sequenz
von Abstandswerten zu detektieren. Durch die Berücksichtigung einer zeitlichen Sequenz
von Abstandswerten kann die Erkennung von relativ komplexen Steuergesten ermöglicht
werden. Dies ermöglicht wiederum die Verwendung einer Vielzahl von unterschiedlichen
Steuergesten für eine Vielzahl von unterschiedlichen Steueranweisungen. Somit kann
der Komfort der Benutzersteuerung eines Reinigungsroboters weiter erhöht werden.
[0013] Die Steuereinheit kann eingerichtet sein, eine erfasste zeitliche Sequenz von Abstandswerten
mit einer Mehrzahl von unterschiedlichen Referenzsequenzen von Abstandswerten zu vergleichen,
um die Steuergeste zu detektieren. Dabei kann die Mehrzahl von unterschiedlichen Referenzsequenzen
einer entsprechenden Mehrzahl von unterschiedlichen Steuergesten entsprechen und/oder
mit einer entsprechenden Mehrzahl von unterschiedlichen Steueranweisungen assoziiert
sein. Im Rahmen des Vergleichs kann z.B. ein Distanzmaß zwischen der erfassten Sequenz
und den unterschiedlichen Referenzsequenzen berechnet werden. Es kann dann die Referenzsequenz
mit dem niedrigsten Distanzmaß ausgewählt werden, um eine bestimmte Steuergeste zu
detektieren. Durch die Berücksichtigung von Referenzsequenzen kann eine besonders
robuste und komfortable Steuerung anhand von unterschiedlichen Steuergesten ermöglicht
werden.
[0014] Die unterschiedlichen Referenzsequenzen und/oder die unterschiedlichen Steuergesten
können sich in Bezug auf die enthaltenen ein oder mehreren Abstandswerte unterscheiden.
Alternativ oder ergänzend können sich die unterschiedlichen Referenzsequenzen und/oder
die unterschiedlichen Steuergesten in Bezug auf die zeitliche Abfolge von Abstandswerten
und/oder in Bezug auf die Geschwindigkeit, mit der unterschiedliche Abstandswerte
aufeinander folgen, unterscheiden. Es können somit unterschiedliche Parameter (Werte,
Werteverlauf und/oder Geschwindigkeit) einer zeitlichen Sequenz von Abstandswerten
berücksichtigt werden, um unterschiedliche Steuergesten für unterschiedliche Steueranweisungen
zu unterscheiden. So kann eine robuste und komfortable Gestensteuerung ermöglicht
werden.
[0015] Die Steuereinheit kann eingerichtet sein, eine Steuergeste mittels eines maschinen-erlernten
Klassifikators zu detektieren. Dabei kann der Klassifikator ausgebildet sein, innerhalb
eines Werteraums von möglichen Abstandsdaten eine Mehrzahl von Teilräumen für eine
entsprechende Mehrzahl von unterschiedlichen Steuergesten zu identifizieren. Der Klassifikator
kann z.B. ein neuronales Netzwerk umfassen. Die Verwendung eines maschinen-erlernten
Klassifikators ermöglicht eine besonders robuste Benutzersteuerung anhand von unterschiedlichen
Steuergesten.
[0016] Die Steuereinheit kann eingerichtet sein, auf Basis der Abstandsdaten und in Abhängigkeit
von einem Abstands-Schwellenwert zu bestimmen, ob die Steuergeste durch die Hand oder
durch den Fuß des Nutzers bewirkt wurde. Der Abstands-Schwellenwert kann z.B. der
typischen Höhe des Knies und/oder der Hüfte eines Menschen entsprechen. Es kann somit
der Wert des Abstands eines in den Erfassungsbereich des Abstandssensors geführten
Objekts berücksichtigt werden und mit dem Abstands-Schwellenwert verglichen werden.
Ein relativ kleiner Abstand kann als Steuereingabe mittels eines Fußes und ein relativ
großer Abstand kann als Steuereingabe mittels einer Hand interpretiert werden. Die
mit der Steuergeste assoziierte Steueranweisung kann dann davon abhängen, ob die Steuergeste
durch die Hand oder durch den Fuß des Nutzers bewirkt wurde. Es kann somit einem Nutzer
in komfortabler Weise ermöglicht werden, unterschiedliche Steueranweisungen mit dem
Fuß bzw. mit der Hand zu bewirken. So kann der Komfort einer Benutzerschnittstelle
eines Reinigungsroboters weiter erhöht werden.
[0017] Die Steuereinheit kann eingerichtet sein, auf Basis der Abstandsdaten zu bestimmen,
ob sich ein Objekt auf den Abstandssensor zu bewegt oder ob sich ein Objekt von dem
Abstandssensor weg bewegt. Es kann dann basierend darauf die durch einen Nutzer bewirkte
Steuergeste detektiert werden. Mit anderen Worten, es kann zwischen unterschiedlichen
Steuergesten (und damit assoziierten Steueranweisungen) unterschieden werden, die
eine Bewegung zu dem Reinigungsroboter oder eine Bewegung von dem Reinigungsroboter
weg aufweisen. Derartige Steuergesten können durch einen Nutzer in komfortabler und
intuitiver Weise ausgeführt werden, so dass der Komfort einer Benutzerschnittstelle
eines Reinigungsroboters weiter erhöht wird.
[0018] Wie bereits oben dargelegt, kann der Reinigungsroboter mehrere Abstandsensoren für
eine Gestensteuerung aufweisen. Insbesondere kann der Reinigungsroboter einen ersten
Abstandssensor zur Erfassung von ersten Abstandsdaten und einen zweiten Abstandssensor
zur Erfassung von zweiten Abstandsdaten umfassen. Dabei können der erste Abstandssensor
einen ersten Erfassungsbereich entlang einer ersten Erfassungsachse und der zweite
Abstandssensor einen zweiten Erfassungsbereich entlang einer zweiten Erfassungsachse
aufweisen. Die Steuereinheit kann dann eingerichtet sein, die Steuergeste auf Basis
der ersten Abstandsdaten und auf Basis der zweiten Abstandsdaten zu detektieren. Die
Verwendung von mehreren Abstandssensoren mit unterschiedlichen Erfassungsbereichen
ermöglicht eine weitergehende Differenzierung zwischen unterschiedlichen Steuergesten,
und somit die Eingabe einer erhöhten Anzahl von Steueranweisungen. Somit kann der
Komfort einer Benutzerschnittstelle weiter erhöht werden.
[0019] Die erste Erfassungsachse und die zweite Erfassungsachse können im Wesentlichen parallel
zueinander verlaufen. Des Weiteren können die erste Erfassungsachse und die zweite
Erfassungsachse derart versetzt zueinander verlaufen, dass sich der erste Erfassungsbereich
und der zweite Erfassungsbereich nicht oder zumindest teilweise nicht überlappen.
Es kann somit ein Zustand detektiert werden, in dem sich ein Objekt in dem ersten
Erfassungsbereich aber nicht in dem zweiten Erfassungsbereich und/oder in dem sich
ein Objekt in dem zweiten Erfassungsbereich aber nicht in dem ersten Erfassungsbereich
befindet. So kann eine zuverlässige Erkennung von unterschiedlichen Steuergesten auf
Basis der ersten und zweiten Abstandsdaten ermöglicht werden.
[0020] Die Steuereinheit kann insbesondere eingerichtet sein, auf Basis der ersten und zweiten
Abstandsdaten eine zeitliche Reihenfolge zu ermitteln, in der ein Objekt in den ersten
Erfassungsbereich des ersten Abstandssensors und in den zweiten Erfassungsbereich
des zweiten Abstandssensors eintritt. Die Steuergeste kann dann in Abhängigkeit von
der zeitlichen Reihenfolge ermittelt werden. So kann die Anzahl von unterscheidbaren
Steuergesten (und damit die Anzahl von möglichen Steueranweisungen) weiter erhöht
werden.
[0021] Der Erfassungsbereich eines für die Gestensteuerung verwendeten Abstandssensors kann
sich während des Betriebs des Reinigungsroboters zumindest teilweise horizontal von
dem Reinigungsroboter weg erstrecken. Insbesondere kann ein Abstandssensor verwendet
werden, der an der Seitenwand des Reinigungsroboters angeordnet ist. Ein Reinigungsroboter
umfasst typischerweise mehrere derartiger Abstandssensoren (als Umfeldsensoren), um
bei der Bewegung bzw. der Navigation des Reinigungsroboters zu erkennen, ob sich der
Reinigungsroboter einem Hindernis nähert. Die Steuereinheit kann somit eingerichtet
sein, den Reinigungsroboter in Abhängigkeit von den Abstandsdaten zu navigieren bzw.
zu bewegen.
[0022] Die Abstandsdaten eines Abstandssensors, der einen im Wesentlichen horizontal verlaufenden
(strahlenförmigen) Erfassungsbereich aufweist und der typischerweise für die Umfelderkennung
des Reinigungsroboters verwendet wird, kann somit auch zur Bereitstellung einer Benutzerschnittstelle
verwendet werden. Zu diesem Zweck kann die Steuereinheit eingerichtet sein, auf Basis
der Abstandsdaten, insbesondere auf Basis der durch die Abstandsdaten angezeigten
zeitlichen Sequenz von Abstandswerten, zu unterscheiden, ob es sich bei einem Objekt
im Erfassungsbereich des Abstandssensors um ein Hindernis oder um ein die Steuergeste
bewirkendes Objekt handelt. Dies kann z.B. mittels eines maschinen-erlernten Klassifikators
erfolgen.
[0023] Die Gestensteuerung kann bei einem Abstandssensor mit einem horizontal verlaufenden
(strahlenförmigen) Erfassungsbereich in komfortabler Weise durch einen Fuß eines Nutzers
erfolgen. Dabei kann der Fuß in definierter Weise in den, durch den und/oder aus dem
Erfassungsbereich geführt werden, um eine Steuergeste zu vollziehen (die sich von
der Bewegung eines anderweitigen Hindernisses unterscheidet). So kann in besonders
kosteneffizienter Weise eine robuste und komfortable Benutzerschnittstelle für einen
Reinigungsroboter bereitgestellt werden. Insbesondere können so ein oder mehrere bereits
vorhandene und für die Navigation genutzte Abstandssensoren in kostenneutraler Weise
auch als Benutzerschnittstelle verwendet werden.
[0024] Der zur Gestensteuerung verwendete Abstandssensor kann ein Schaltsensor sein, der
eingerichtet ist, ein Schaltsignal als Abstandsdaten zu generieren, wenn ein Objekt
in den Erfassungsbereich des Abstandssensors eintritt bzw. aus dem Erfassungsbereich
austritt. Die Verwendung eines kosteneffizienten Schaltsensors ist insbesondere bei
der Verwendung von mehreren Abstandssensoren eine kosteneffiziente Möglichkeit eine
Gestensteuerung für einen Reinigungsroboter zu ermöglichen.
[0025] Die Abstandsdaten können somit in binärer Weise (ggf. nur) anzeigen, ob sich ein
Objekt im Erfassungsbereich befindet oder nicht. Alternativ oder ergänzend können
die Abstandsdaten nur anzeigen, ob sich ein Objekt in einem Abstand zu dem Abstandssensor
befindet, der gleich wie oder kleiner als der Erfassungsabstand ist. Insbesondere
können die Abstandsdaten nicht einen von dem Erfassungsabstand abweichenden Wert des
Abstands eines im Erfassungsbereich liegenden Objekts anzeigen. Dennoch können, insbesondere
bei Verwendung von mehreren derartigen Abstandssensoren (insbesondere von Schaltsensoren),
in robuster Weise unterschiedliche Steuergesten für unterschiedliche Steueranweisungen
unterschieden werden.
[0026] Gemäß einem weiteren Aspekt wird ein Verfahren zur Steuerung eines Reinigungsroboters
beschrieben. Das Verfahren umfasst das Erfassen, mittels eines Abstandssensors des
Reinigungsroboters, von Abstandsdaten bezüglich eines Objekts, das in einen Erfassungsbereich
des Abstandssensors geführt wird. Dabei ist der Erfassungsbereich während des Betriebs
des Reinigungsroboters bevorzugt für eine Hand und/oder einen Fuß eines Nutzers des
Reinigungsroboters zugänglich. Außerdem umfasst das Verfahren das Detektieren, auf
Basis der Abstandsdaten, einer Steuergeste, die mit einer Steueranweisung an den Reinigungsroboter
assoziiert ist. Das Verfahren umfasst ferner das Betreiben des Reinigungsroboters
gemäß der detektierten Steueranweisung.
[0027] Es ist zu beachten, dass jegliche Aspekte des in diesem Dokument beschriebenen Verfahrens
und/oder Reinigungsroboters in vielfältiger Weise miteinander kombiniert werden können.
Insbesondere können die Merkmale der Patentansprüche in vielfältiger Weise miteinander
kombiniert werden.
[0028] Im Weiteren wird die Erfindung anhand von in der beigefügten Zeichnung dargestellten
Ausführungsbeispielen näher beschrieben. Dabei zeigen
- Figur 1a
- die Unterseite eines beispielhaften Reinigungsroboters in einer perspektivischen Ansicht;
- Figur 1b
- die Oberseite eines beispielhaften Reinigungsroboters;
- Figur 1c
- einen Reinigungsroboter in einer Seitenansicht;
- Figur 2a
- beispielhafte Gesten über einem Abstandssensor;
- Figur 2b
- beispielhafte Gesten über einer Sensoreinheit mit mehreren Abstandssensoren;
- Figur 2c
- beispielhafte Steuergesten; und
- Figur 3
- ein Ablaufdiagramm eines beispielhaften Verfahrens zur Steuerung eines Reinigungsroboters.
[0029] Wie eingangs dargelegt, befasst sich das vorliegende Dokument mit der zuverlässigen,
komfortablen und effizienten Steuerung bzw. Bedienung eines Reinigungsroboters. In
diesem Zusammenhang zeigt Fig. 1a einen beispielhaften Reinigungsroboter 100 in einer
perspektivischen Ansicht. Insbesondere zeigt Fig. 1a die Unterseite 122 eines Reinigungsroboters
100, die im Reinigungsbetrieb des Reinigungsroboters 100 dem zu reinigenden Boden
zugewandt ist. Die Unterseite 122 des Reinigungsroboters 100 weist typischerweise
ein oder mehrere Antriebseinheiten 101 (mit ein oder mehreren Antriebsrädern) auf,
durch die der Reinigungsroboter 100 bewegt werden kann, um unterschiedliche Bereiche
eines Bodens zu reinigen. Außerdem umfasst ein Reinigungsroboter 100 typischerweise
ein oder mehrere Reinigungseinheiten 102 (z.B. mit einer Reinigungsbürste), die eingerichtet
sind, den Boden unter dem Reinigungsroboter 100 zu reinigen. Des Weiteren kann ein
Reinigungsroboter 100 ein oder mehrere Abstandssensoren 110 umfassen, die eingerichtet
sind, Abstandsdaten bezüglich eines Abstands der Unterseite 122 des Reinigungsroboters
100 zu dem zu reinigenden Boden zu erfassen. Eine Steuereinheit 130 (siehe Fig. 1b)
des Reinigungsroboters 100 kann eingerichtet sein, auf Basis der Abstandsdaten einen
in Bewegungsrichtung des Reinigungsroboters 100 vor dem Reinigungsroboter 100 liegenden
Abgrund (z.B. eine Treppenstufe) zu erkennen.
[0030] An der Oberseite 121 des Reinigungsroboters 100 kann eine Benutzerschnittstelle angeordnet
sein, die es einem Nutzer des Reinigungsroboters 100 ermöglicht, Steuereingaben zu
tätigen. Des Weiteren können an einer Seitenwand 123 des Reinigungsroboters 100, die
die Oberseite 121 mit der Unterseite 122 verbindet, ein oder mehrere Umfeldsensoren
angeordnet sein, die eingerichtet sind, ein Umfeld des Reinigungsroboters 100 zu erfassen.
Die Steuereinheit 130 des Reinigungsroboters 100 kann eingerichtet sein, den Reinigungsroboter
100 auf Basis der Sensordaten der ein oder mehreren Umfeldsensoren durch das Umfeld
zu navigieren.
[0031] Fig. 1b zeigt in schematischer Weise die Oberseite 121 eines Reinigungsroboters 100.
Der Reinigungsroboter 100 kann an der Oberseite 121 zumindest einen Abstandssensor
120 aufweisen, der eingerichtet ist, Abstandsdaten in Bezug zu einem Abstand eines
über dem Reinigungsroboter 100 angeordneten Objektes zu der Oberseite 121 zu erfassen.
Ein Abstandssensor 120 kann ein Sendemodul umfassen, das eingerichtet ist, ein Abstandsmesssignal
zu emittieren. Des Weiteren kann ein Abstandssensor 120 ein Empfangsmodul umfassen,
das eingerichtet ist, das an einem Objekt reflektierte Abstandsmesssignal zu empfangen.
Anhand der Laufzeit des emittierten und wieder empfangen Abstandsmesssignals kann
dann der Abstand des Objekts ermittelt werden. Das Abstandsmesssignal kann ein optische
und/oder akustisches Signal sein.
[0032] Fig. 1c zeigt die Seitenwand 123 eines Reinigungsroboters 100 in schematischer Weise.
Des Weiteren zeigt Fig. 1c einen an der Oberseite 122 angeordneten Abstandssensor
120, der eingerichtet ist, vertikale Abstandsdaten bezüglich eines Abstands in vertikaler
Richtung nach oben zu erfassen. Außerdem kann der Reinigungsroboter 100 ein oder mehrere
Abstandssensoren 120 umfassen, die eingerichtet sind, horizontale Abstandsdaten bezüglich
eines Abstands in horizontaler Richtung zu erfassen. Die horizontalen Abstandsdaten
können z.B. für die Navigation der Reinigungsroboters 100 verwendet werden.
[0033] Der Abstandssensor 120 eines Reinigungsroboters 100 kann dazu verwendet werden, in
kosteneffizienter Weise eine robuste und komfortable Benutzerschnittstelle für den
Reinigungsroboter 100 bereitzustellen. Insbesondere kann zu diesem Zweck ein zeitlicher
Verlauf von Abstandswerten ermittelt werden. Beispielsweise kann mit einer bestimmten
Abtastfrequenz (z.B. 10Hzr, 100Hz oder mehr) mittels eines Abstandssensors 120 der
Abstand zu einem Objekt vor dem Abstandssensor 120 ermittelt werden. Diese zeitliche
Sequenz von Abstandswerten kann durch die Steuereinheit 130 des Reinigungsroboters
100 ausgewertet werden, um eine Geste zu detektieren, die mit einer Steueranweisung
zur Steuerung des Reinigungsroboters 100 assoziiert ist. Der Reinigungsroboter 100
kann dann in Abhängigkeit von der Steueranweisung betrieben werden.
[0034] Es kann somit am Reinigungsroboter 100 (ggf. zusätzlich) ein Distanz- bzw. Abstandssensor
120 bereitgestellt werden, der insbesondere vertikal (nach oben) messen kann. Wie
in den Figuren 2a und 2b dargestellt kann durch die Erkennung von Körperteilen 201,
202 eines Nutzers, z.B. einer Hand 202 oder eines Fußes 201, der Reinigungsroboter
100 über Gesten gesteuert werden. Beispielsweise kann eine Bewegung 200 mit der Hand
202 in Richtung zum Abstandssensor 120 dem Reinigungsroboter 100 anzeigen, dass von
einem Power- in einen Silent-Modus gewechselt werden soll. Andererseits kann eine
Bewegung 200 mit der Hand 202 von dem Abstandssensor 120 weg anzeigen, dass von dem
Silent-Modus in den Power-Modus gewechselt werden soll. Ein Bewegen 200 des Fußes
201 über dem Reinigungsroboter 100 kann z.B. bewirken, dass der Reinigungsroboter
100 in einen Pause-Modus wechselt. Eingaben mit der Hand 202 bzw. mit dem Fuß 201
können dabei auf Basis der unterschiedlichen charakteristischen Abstände zum Abstandssensor
120 unterschieden werden.
[0035] Fig. 2b zeigt die Verwendung von mehreren Abstandssensoren 120 mit mehreren Abstandsmesssignalen
221, 222. Durch die Verwendung von mehreren Abstandssensoren in vertikaler Richtung
(die einen bestimmten Abstand zueinander aufweisen) kann die Anzahl von erkennbaren
Gesten erhöht werden. Zusätzlich zu einer Auf- und Abbewegung 200 können durch die
Verwendung von mehreren, nebeneinander angeordneten Abstandssensoren 120 auch Querbewegungen
200 erkannt werden (z.B. ein Wischen von links nach rechts oder ein Wischen von links
oben nach rechts unten).
[0036] Die Steuereinheit 130 kann somit eingerichtet sein, auf Basis der Abstandsdaten zumindest
eines Abstandssensors 120 eines Reinigungsroboters 100 eine Bewegung 200 eines Körperteils
201, 202 eines Nutzers des Reinigungsroboters 100 innerhalb des Erfassungsbereichs
des Abstandssensors 120 zu erkennen. Dabei kann zwischen unterschiedlichen Bewegungen
bzw. Gesten 200 aus einer Mehrzahl von Bewegungen bzw. Gesten 200 unterschieden werden.
Die unterschiedlichen Bewegungen bzw. Gesten 200 können mit entsprechenden unterschiedlichen
Steueranweisungen an den Reinigungsroboter 100 assoziiert sein. Somit kann die Steuereinheit
130 eines Reinigungsroboters 100 auf Basis der Abstandsdaten eines Abstandssensors
120 eine Bewegung bzw. eine Geste 200 im Erfassungsbereich des Abstandssensors 120
erkennen. Des Weiteren kann die Steuereinheit 130 den Reinigungsroboter 100 entsprechend
der mit der Bewegung bzw. der Geste 200 assoziierten Steueranweisung betreiben.
[0037] Fig. 2c zeigt beispielhafte Abstandsdaten, die durch einen Abstandssensor 120 erfasst
werden können. Die Abstandsdaten können eine zeitliche Sequenz 231 von Abstandswerten
230 umfassen. Die Abstandswerte 230 können dabei jeweils den Abstand eines Objektes
201, 202 im Erfassungsbereich des Abstandssensors 120 anzeigen. Es kann somit ein
zeitlicher Verlauf des Abstands eines Objektes 201, 202 als Abstandsdaten erfasst
werden. Es kann dann auf Basis der zeitlichen Sequenz 231 von Abstandswerten 230 eine
bestimmte Steuergeste 200 detektiert werden. Dabei können sich unterschiedliche Steuergesten
200 z.B. durch den Wertebereich der Abstandswerte 230 unterscheiden. Beispielsweise
kann durch Vergleich mit einem Abstands-Schwellenwert 232 erkannt werden, ob es sich
um eine Steuergeste 200 handelt, die mit einer Hand 202 oder mit einem Fuß 201 vollzogen
wurde. Alternativ oder ergänzend kann die Geschwindigkeit einer Bewegung bzw. Geste
200 berücksichtigt werden, um unterschiedliche Steuergesten 200 zu unterscheiden.
Somit können auf Basis der Abstandsdaten unterschiedliche Steuergesten 200 für unterschiedliche
Steueranweisungen an einen Reinigungsroboter 100 unterschieden werden, um eine komfortable
und umfangreiche Benutzerschnittstelle bereitzustellen.
[0038] Fig. 3 zeigt ein Ablaufdiagramm eines beispielhaften Verfahrens 300 zur Steuerung
eines Reinigungsroboters 100, insbesondere eines Saugroboters. Das Verfahren 300 umfasst
das Erfassen 301, mittels eines Abstandssensors 120 des Reinigungsroboters 100, von
Abstandsdaten bezüglich eines Objekts 201, 202, das in einen Erfassungsbereich des
Abstandssensors 120 geführt wird und/oder in einem Erfassungsbereich des Abstandssensors
120 bewegt wird. Dabei ist der Abstandssensor 120 bevorzugt derart ausgelegt, dass
der Erfassungsbereich des Abstands- bzw. Distanzsensors 120 während des Betriebs des
Reinigungsroboters 100 für eine Hand 202 und/oder für einen Fuß 201 eines Nutzers
des Reinigungsroboters 100 zugänglich ist. Insbesondere kann der Abstandssensor 120
einen Erfassungsbereich aufweisen, der sich im Wesentlichen oder zumindest teilweise
vertikal nach oben von der Oberseite 121 des Reinigungsroboters 100 weg erstreckt.
Der Erfassungsbereich kann dabei auf einen Erfassungsabstand beschränkt sein, wobei
der Erfassungsabstand der typischen Größe eines Menschen (z.B. 2 Meter oder weniger)
entsprechen kann. Des Abstandssensor 120 kann somit derart ausgelegt sein, dass ein
Nutzer des Reinigungsroboters 100 in komfortabler Weise eine Hand 202 und/oder einen
Fuß 201 in den Erfassungsbereich hineinführen, aus dem Erfassungsbereich herausführen
und/oder innerhalb des Erfassungsbereichs bewegen kann (insbesondere um mit der Hand
202 und/oder mit dem Fuß 201 eine bestimmte Geste zu vollziehen).
[0039] Außerdem umfasst das Verfahren 300 das Detektieren 302, auf Basis der Abstandsdaten,
einer Steuergeste 200, die mit einer Steueranweisung an den Reinigungsroboter 100
assoziiert ist. Die Abstandsdaten können eine bestimmte zeitliche Abfolge von Abstandswerten
des in den Erfassungsbereich eingeführten Objektes 201, 202 bzw. des in dem Erfassungsbereich
befindlichen Objektes 201, 202 anzeigen. Es kann somit auf Basis der Abstandsdaten
erkannt werden, dass ein Nutzer (z.B. mit der Hand 202 und/oder mit dem Fuß 201) eine
bestimmte Geste, insbesondere eine Steuergeste 200, vollzogen hat. Die erkannte Steuergeste
200 kann dabei einer bestimmten Steueranweisung an den Reinigungsroboter 100 entsprechen.
Beispielhafte Steueranweisungen sind: das Aktivieren bzw. das Deaktivieren eines bestimmen
Betriebsmodus des Reinigungsroboters 100 und/oder das Stoppen bzw. das Aktivieren
des Reinigungsroboters 100.
[0040] Das Verfahren 300 umfasst ferner das Betreiben 303 des Reinigungsroboters 100 gemäß
der detektierten Steueranweisung. Somit kann in kosteneffizienter Weise (durch Verwendung
eines relativ kostengünstigen Abstandssensors) eine komfortable und robuste Steuerung
eines Reinigungsroboters 100 durch einen Nutzer ermöglicht werden.
[0041] Die in diesem Dokument beschriebenen Maßnahmen ermöglichen es einem Nutzer, einen
Reinigungsroboter 100 in komfortabler Weise über Gesten zu steuern. Die Gesten können
dabei in kosteneffizienter Weise mittels zumindest eines Abstandssensors 120 erkannt
werden. Die Steuereinheit 130 kann es einem Nutzer ermöglichen, individuelle Gesten
anzulernen und/oder Gesten und die damit verbundenen Steueranweisungen zu konfigurieren.
So kann eine intuitive, individualisierte Bedienung ermöglicht werden (ohne Verwendung
eines zusätzlichen Eingabegeräts).
[0042] Die vorliegende Erfindung ist nicht auf die gezeigten Ausführungsbeispiele beschränkt.
Insbesondere ist zu beachten, dass die Beschreibung und die Figuren nur das Prinzip
des vorgeschlagenen Reinigungsroboters 100 und/oder Verfahrens 300 veranschaulichen
sollen.
1. Reinigungsroboter (100) zur Reinigung eines Untergrunds; wobei der Reinigungsroboter
(100) umfasst,
- zumindest einen Abstandssensor (120), der eingerichtet ist, Abstandsdaten bezüglich
eines Objekts (201, 202) zu erfassen, das durch einen Nutzer in einen Erfassungsbereich
des Abstandssensors (120) geführt wird; wobei der Erfassungsbereich vorzugsweise während
des Betriebs des Reinigungsroboters (100) für eine Hand (202) und/oder einen Fuß (201)
des Nutzers des Reinigungsroboters (100) zugänglich ist; und
- eine Steuereinheit (130), die eingerichtet ist,
- auf Basis der Abstandsdaten eine Steuergeste (200) zu detektieren, die mit einer
Steueranweisung an den Reinigungsroboter (100) assoziiert ist; und
- in Reaktion darauf, den Reinigungsroboter (100) gemäß der Steueranweisung zu betreiben.
2. Reinigungsroboter (100) gemäß Anspruch 1, wobei sich der Erfassungsbereich während
des Betriebs des Reinigungsroboters (100) zumindest teilweise vertikal von dem Reinigungsroboter
(100) nach oben erstreckt.
3. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei der Abstandssensor
(120) eingerichtet ist, ein optisches und/oder ein akustisches Abstandsmesssignal,
insbesondere ein Ultraschallsignal und/oder ein Infrarotsignal auszusenden, um die
Abstandsdaten zu erfassen.
4. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei
- die Abstandsdaten eine zeitliche Sequenz (231) von Abstandswerten (230) umfasst;
- der Abstandswert (230) an einem bestimmten Zeitpunkt von einem Abstand des Objekts
(201, 202) zu dem Abstandssensor (120) an dem bestimmten Zeitpunkt abhängt; und
- die Steuereinheit (130) eingerichtet ist, die Steuergeste (200) auf Basis der Sequenz
(231) von Abstandswerten (230) zu detektieren.
5. Reinigungsroboter (100) gemäß Anspruch 4, wobei
- die Steuereinheit (130) eingerichtet ist, die zeitliche Sequenz (231) von Abstandswerten
(230) mit einer Mehrzahl von unterschiedlichen Referenzsequenzen von Abstandswerten
(230) zu vergleichen, um die Steuergeste (200) zu detektieren; und
- die Mehrzahl von unterschiedlichen Referenzsequenzen einer entsprechenden Mehrzahl
von unterschiedlichen Steuergesten (200) entspricht und mit einer entsprechenden Mehrzahl
von unterschiedlichen Steueranweisungen assoziiert ist.
6. Reinigungsroboter (100) gemäß Anspruch 5, wobei sich die unterschiedlichen Referenzsequenzen
unterscheiden,
- in Bezug auf die enthaltenen ein oder mehreren Abstandswerte (230); und/oder
- in Bezug auf eine zeitliche Abfolge von unterschiedlichen Abstandswerten (230);
und/oder
- in Bezug auf eine Geschwindigkeit, mit der unterschiedliche Abstandswerte (230)
aufeinander folgen.
7. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei
- die Steuereinheit (130) eingerichtet ist, die Steuergeste (200) mittels eines maschinen-erlernten
Klassifikators zu detektieren;
- der Klassifikator ausgebildet ist, innerhalb eines Werteraums von möglichen Abstandsdaten
eine Mehrzahl von Teilräumen für eine entsprechende Mehrzahl von unterschiedlichen
Steuergesten (200) zu identifizieren; und
- der Klassifikator insbesondere ein neuronales Netzwerk umfasst.
8. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei
- die Steuereinheit (130) eingerichtet ist, auf Basis der Abstandsdaten und in Abhängigkeit
von einem Abstands-Schwellenwert (232) zu bestimmen, ob die Steuergeste (200) durch
die Hand (202) oder durch den Fuß (201) des Nutzers bewirkt wurde; und
- die mit der Steuergeste (200) assoziierte Steueranweisung davon abhängt, ob die
Steuergeste (200) durch die Hand (202) oder durch den Fuß (201) des Nutzers bewirkt
wurde
9. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei die Steuereinheit
(130) eingerichtet ist,
- auf Basis der Abstandsdaten zu bestimmen, ob sich ein Objekt (201, 202) auf den
Abstandssensor (120) zu bewegt oder ob sich ein Objekt (201, 202) von dem Abstandssensor
(120) weg bewegt; und
- basierend darauf die Steuergeste (200) zu detektieren.
10. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei
- der Reinigungsroboter (100) einen ersten Abstandssensor (120) zur Erfassung von
ersten Abstandsdaten und einen zweiten Abstandssensor (120) zur Erfassung von zweiten
Abstandsdaten umfasst; und
- die Steuereinheit (130) eingerichtet ist, die Steuergeste (200) auf Basis der ersten
Abstandsdaten und auf Basis der zweiten Abstandsdaten zu detektieren.
11. Reinigungsroboter (100) gemäß Anspruch 10, wobei
- der erste Abstandssensor (120) einen ersten Erfassungsbereich entlang einer ersten
Erfassungsachse aufweist;
- der zweite Abstandssensor (120) einen zweiten Erfassungsbereich entlang einer zweiten
Erfassungsachse aufweist;
- die erste Erfassungsachse und die zweite Erfassungsachse insbesondere parallel zueinander
verlaufen; und
- die erste Erfassungsachse und die zweite Erfassungsachse derart versetzt zueinander
verlaufen, dass sich der erste Erfassungsbereich und der zweite Erfassungsbereich
nicht überlappen.
12. Reinigungsroboter (100) gemäß einem der Ansprüche 10 bis 11, wobei die Steuereinheit
(130) eingerichtet ist,
- auf Basis der ersten und zweiten Abstandsdaten eine zeitliche Reihenfolge zu ermitteln,
in der ein Objekt (201, 202) in den ersten Erfassungsbereich des ersten Abstandssensors
(120) und in den zweiten Erfassungsbereich des zweiten Abstandssensors (120) eintritt;
und
- die Steuergeste (200) in Abhängigkeit von der zeitlichen Reihenfolge zu ermitteln.
13. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei
- sich der Erfassungsbereich während des Betriebs des Reinigungsroboters (100) zumindest
teilweise horizontal von dem Reinigungsroboter (100) weg erstreckt; und/oder
- die Steuereinheit (130) eingerichtet ist, den Reinigungsroboter (100) in Abhängigkeit
von den Abstandsdaten zu navigieren; und/oder
- die Steuereinheit (130) eingerichtet ist, auf Basis der Abstandsdaten, insbesondere
auf Basis einer durch die Abstandsdaten angezeigten zeitlichen Sequenz (231) von Abstandswerten
(230), zu unterscheiden, ob es sich bei einem Objekt (201, 202) im Erfassungsbereich
des Abstandssensors (120) um ein Hindernis oder um ein die Steuergeste (200) bewirkendes
Objekt (201, 202) handelt.
14. Reinigungsroboter (100) gemäß einem der vorhergehenden Ansprüche, wobei
- die Abstandsdaten in binärer Weise anzeigen, ob sich ein Objekt (201, 202) im Erfassungsbereich
befindet oder nicht; und/oder
- sich der Erfassungsbereich bis zu einem Erfassungsabstand von dem Abstandssensor
(120) erstreckt; und/oder
- der Erfassungsabstand gleich wie oder kleiner als eine typische Schulterhöhe eines
Menschen ist; und/oder
- die Abstandsdaten nur anzeigen, ob sich ein Objekt (201, 202) in einem Abstand zu
dem Abstandssensor (120) befindet, der gleich wie oder kleiner als der Erfassungsabstand
ist; und/oder
- die Abstandsdaten nicht einen von dem Erfassungsabstand abweichenden Wert des Abstands
eines im Erfassungsbereich liegenden Objekts (201, 202) anzeigen; und/oder
- der Abstandssensor (120) ein Schaltsensor ist, der eingerichtet ist, ein Schaltsignal
als Abstandsdaten zu generieren, wenn ein Objekt (201, 202) in den Erfassungsbereich
des Abstandssensors (120) eintritt.
15. Verfahren (300) zur Steuerung eines Reinigungsroboters (100); wobei das Verfahren
(300) umfasst,
- Erfassen (301), mittels eines Abstandssensors (120) des Reinigungsroboters (100),
von Abstandsdaten bezüglich eines Objekts (201, 202), das in einen Erfassungsbereich
des Abstandssensors (120) geführt wird; wobei der Erfassungsbereich vorzugsweise während
des Betriebs des Reinigungsroboters (100) für eine Hand (202) und/oder einen Fuß (201)
eines Nutzers des Reinigungsroboters (100) zugänglich ist; und
- Detektieren (302), auf Basis der Abstandsdaten, einer Steuergeste (200), die mit
einer Steueranweisung an den Reinigungsroboter (100) assoziiert ist; und
- Betreiben (303) des Reinigungsroboters (100) gemäß der detektierten Steueranweisung.