Sprechender humanoider Roboter mit Arduino UNO selbst bauen
Komponenten und Zubehör
| Arduino UNO (oder Pro Mini 5V/16MHz – beliebige Arduino-Platine möglich) | 1 |
| IR-Näherungssensor | 3 |
| microSD-Kartenmodul (TF Card) | 1 |
| microSD-Karte (≤ 2 GB, FAT16/32 formatiert) | 1 |
| Servomotoren (Tower Pro MG996R oder SG90 Mikroservo) | 3 |
| Lochrasterplatine (Vero Board) & Stiftleisten | 1 Set |
| Pappe / Karton für den Körper | 1 |
Apps und Online-Dienste
- Arduino IDE
Über dieses Projekt
Dieser Roboter – **Mofiza** (ein ungewöhnlicher Name) – kann **SEHEN, SPRECHEN und REAGIEREN** auf seine Umgebung. Sehen Sie sich zuerst das Video an:
Bisher sah man sprechende Roboter oft mit leistungsstärkeren Boards (Raspberry Pi, ESP32 etc.). Doch es ist völlig möglich, einen humanoiden Roboter mit Arduino zu bauen, der sprechen kann und sich über Servos bewegt. Legen wir los!
Schritt 1: Benötigte Teile
- Arduino Pro Mini (5V, 16 MHz) – für kompakte Bauweise; jedes Arduino-Board funktioniert
- Buchsen- & Stiftleisten für PCB-Bestückung
- Lochrasterplatine (Vero Board)
- microSD-TF-Modul (für Audio-Wiedergabe)
- microSD-Karte (max. 2 GB)
- 3× IR-Näherungssensoren
- 3× Servomotoren (ich verwendete SG90 Mikroservos)
- Pappe/Karton für den Roboterkörper
Schritt 2: IR-Sensoren und Körperbau
Den Roboterkörper aus Pappe bauen – einfach und individuell. Ich habe die IR-Sensoren mit Flachbandkabel und Buchsenleisten verlötet: zwei in den „Augen“, einer in der „Brust“.
Verhalten:
- Brust-Sensor erkennt etwas → Roboter sagt Willkommensnachricht.
- Augen-Sensor erkennt Berührung → Roboter sagt „Aaah... berühr mein Auge nicht!“ und bewegt den Arm in diesem Bereich nach oben.
Schritt 3: Schaltung
Die Schaltung wirkt komplex, ist aber einfach: Alles wird über einen Akku versorgt. Schaltung und Komponenten auf Lochrasterplatine löten, Servos für Kopf und Arme anschließen.
Schritt 4: Programmcode
Zwei Bibliotheken sind erforderlich:
- TMRpcm.h – Audio-Wiedergabe von SD-Karte (GitHub)
- ServoTimer2.h – Servosteuerung über Timer2, da TMRpcm Timer1 belegt (Erklärung)
Beispielcode (Willkommens-Funktion):
#include "ServoTimer2.h"
#define SD_ChipSelectPin 10
#include "TMRpcm.h"
TMRpcm tmrpcm;
ServoTimer2 matha; // Kopf
ServoTimer2 lhand; // linker Arm
ServoTimer2 rhand; // rechter Arm
int in1 = 6; // linker Augensensor
int in2 = 7; // rechter Augensensor
int in3 = 8; // Brustsensor
void setup() {
matha.attach(2);
lhand.attach(3);
rhand.attach(4);
tmrpcm.speakerPin = 9;
Serial.begin(9600);
if (!SD.begin(SD_ChipSelectPin)) {
Serial.println("SD FAIL");
return;
}
}
void loop() {
if (!(digitalRead(in3))) { // Brustsensor LOW = ausgelöst
tmrpcm.play("welcome.wav"); // Willkommens-Sound abspielen
lhand.write(2500); // Arm heben
delay(2000);
lhand.write(1200); // Handschlag-Position
delay(9000);
} else {
// Ruheposition
lhand.write(300);
rhand.write(1700);
matha.write(1500);
}
}
Wichtig: Audiodateien müssen als **8-bit, 16 kHz, Mono WAV** auf der SD-Karte vorliegen (z. B. welcome.wav).
Schritt 5: Fertigstellung
Strom anschließen – fertig! Ein smarter, sprechender Roboter ist entstanden. Weitere Bilder und Details folgen.
Mit mehr freien Pins könnte man Gehbewegungen realisieren; bei mir blieben nur 3 digitale Pins übrig – zu wenig für Beine.
Unterstützen Sie mich durch Abonnieren meines YouTube-Kanals!
Code
mofiza.welcome.code(oben gezeigt)- Vollständiger Code auf GitHub: Mofiza Humanoid Social Robot
Schaltplan

Herstellungsprozess
- Internet-gesteuerter Video-Streaming-Roboter mit Arduino & Raspberry Pi bauen
- Intelligente Jalousien: Automatische Lichtsteuerung mit Arduino & Solarenergie
- Smartes Sparschwein: Münzprüfer mit Arduino Nano steuern
- Servogesteuerter Hindernisvermeidungs-Roboter: Bauen mit Arduino & HC-SR04
- LED per Bluetooth mit Arduino steuern – Einfache DIY-Anleitung
- Autonomer Linienfolger-Roboter mit Arduino UNO
- Roomba Create 2 per Arduino & Android steuern – Schritt-für-Schritt
- Sprachgesteuerter Roboter mit Arduino Nano bauen
- Arduino Roboterarm per Android-App & Bluetooth steuern
- Intelligenter Multi-Batterielader mit Multiplexing & Digitalanzeige