
Hallo an alle. Heute werden wir über den Kopf des Oscar-Werberoboters sprechen. Oft sind Menschen daran interessiert, mit dem Roboter zu kommunizieren, als ob sie ihre eigene Art wären: ins Gesicht schauen und während des Dialogs nach einer emotionalen Reaktion suchen. Daher sollte der Kopf unseres Werberoboters zu einem der Hauptelemente werden, die die Aufmerksamkeit des Menschen auf sich ziehen.
Damit der Kopf wirklich „zum Leben erweckt“ wird, haben wir die folgenden Anforderungen identifiziert:
- Der Kopf sollte zwei Freiheitsgrade haben: Neigung und Drehung
- Muss vorhanden sein, um den Kopf des Gesprächspartners zu verfolgen
- Die Augen des Roboters müssen auf den Gesprächspartner reagieren
Strukturell war der Kopf in zwei Teile geteilt:
Kopfdesign
Zunächst haben wir mit dem Design des Kopfes begonnen, um zu verstehen, wie der Formfaktor aussehen wird und wie alles, was gewünscht wird, im Kopf platziert wird. Im Allgemeinen ist dieser Prozess iterativ und manchmal sehr schwierig, insbesondere für Ingenieure, die zuvor nur Zahnräder entworfen haben.
Nach einigen Iterationen erhielten wir eine Skizze, die ungefähr die Position der Servos und die Mechanik der Augen berücksichtigte.

Hals
Der Kopf des Roboters ist mit zwei Freiheitsgraden ausgestattet: Kippen und Drehen des Kopfes. Grundlage des Halsdesigns sind Profile und Rippen, die wir bereits im
Manipulator verwendet haben .
Zur Steuerung der Freiheitsgrade wird unser benutzerdefinierter Server verwendet. Wir werden unseren Kopf durch die Geschwindigkeit drehen, d.h. Die Kopfdrehzahl hängt von der Position im Rahmen der zu verfolgenden Person ab, da der Server die Geschwindigkeit steuern kann. Je weiter das Gesicht von der Mitte entfernt ist, desto schneller dreht sich der Kopf. Wenn Sie sich der Mitte nähern, verringert sich die Geschwindigkeit auf Null. So erhalten Sie eine ziemlich gleichmäßige Drehung des Kopfes.
Augen
Auch hier wollten wir nicht viel Zeit verbringen, deshalb haben wir uns entschlossen, nach bestehenden Projekten mit animatronischen Augen zu suchen. Es ist gut, dass solche Projekte ein Wagen und ein kleiner Wagen sind. Von denen, die wir gefunden haben, möchte ich besonders
ein Projekt erwähnen.
Wir haben es als Grundlage genommen. Und alles war in Ordnung, bis wir versuchten, die Mechanik der Augen, das vorhandene Kopfdesign und die Mechanik des Halses zu kombinieren. Am Ende musste ich mein eigenes „Fahrrad“ entwickeln. Das Ergebnis war ein solches Augendesign:


Die Augen werden von arduino_nano angetrieben. Um den Dienst zu steuern, nahmen sie die Standardbibliothek. Servas werden von einer separaten Stromquelle gespeist, Arduino kann nicht genügend Strom abgeben. Anfangs gab es kleinere Probleme mit dem „Sprung“, die die gesamte Ästhetik beeinträchtigten. Dann fanden sie den Grund - ein minderwertiger Leistungsregler, der durch
einen ähnlichen ersetzt wurde - das Problem verschwand. Und noch etwas: Hobbys Servos mögen keine langen Drähte, deshalb haben wir die zusätzliche Länge zwischen Servos und Controller entfernt. Die Augenbewegung wird durch Einstellen des Drehwinkels des Servos ausgeführt.
Als Test werden wir die zweite Person unseres Staates verwenden - Dmitri Anatoljewitsch Medwedew. Plötzlich fällt ihm für die harte Arbeit ein Zuschuss für die Entwicklung des Projekts auf den Kopf.
Wie funktioniert es
Das alles funktioniert ganz einfach, weil Kopf und Augen müssen auf eine Person reagieren, dann ist die Informationsquelle für sie identisch - eine Videokamera im Kopf des Roboters. Gebrauchte Kamera von Raspberry. Übrigens haben wir hier einen kleinen Fehler gemacht - wir haben eine Kamera mit einem kleinen Betrachtungswinkel genommen. Während des Testens wurde klar, dass es notwendig ist, Weitwinkelkameras zu platzieren - dann können Gesichtsausdrücke lebendiger gemacht werden, weil es wird möglich sein, in einem größeren Winkel wegzuschauen.
Raspberry Pi 3 wird als Bildprozessor verwendet. Ich möchte sagen, dass Malinka diese Aufgabe mit Zuversicht bewältigt, aber es ist bei einer niedrigen Auflösung wahr, während alle 4 Kerne spürbar belastet werden.
Die Erkennung von Gesichtern erfolgt mit einem klassischen Instrument - der Haar-Kaskade. Darüber hinaus beträgt die Frequenz der Gesichtserkennung 9 bis 12 FPS.
In Analogie zu einer Person schaut der Roboter zuerst den Gesprächspartner an und dreht dann den Kopf zu ihm. Trotz der relativ hohen Kopfdrehzahl haben wir sie verlangsamt. Indem wir die Geschwindigkeit der Kopfdrehung an die Geschwindigkeit der Gesichtserkennung anpassen, erhalten wir sanfte und anmutige Bewegungen.
Wir waren mit unserem montierten Kopf zufrieden. Was denkst du? Was kann ich noch hinzufügen oder tun?
Was weiter?
Jetzt schließen wir die Montage des zweiten Manipulators ab, wonach wir zur Herstellung einer Plattform mit Kofferraum übergehen werden. Und all dies muss in einem anständigen Gebäude freigelegt werden. Hoffen wir, dass wir im nächsten Artikel unsere Idee in voller Pracht präsentieren.
Du bleibst hier, alles Gute für dich, gute Laune und Gesundheit!