LittleArm 2C: Robuster 3D-gedruckter Arduino-Roboterarm für STEM-Bildung
Komponenten und Zubehör
| Bauteil | Menge |
|---|---|
| Arduino Nano R3 | 1 |
| Servos (Tower Pro MG90S) | 4 |
| Meped Board (Steuerplatine) | 1 |
Benötigte Werkzeuge
- 3D-Drucker
Über dieses Projekt
Der LittleArm 2C ist als Kit konzipiert, das Kinder einfach nutzen können – damit STEM-Unterricht mehr Robotik integrieren kann. Er ist robuster und viel einfacher zusammenzubauen (< 15 Schrauben), ideal für den Einsatz durch Kinder.
- Alle Teile sind 3D-druckbar, Design schlank & simpel.
- Steuerung per Windows-App (ursprünglich Python) oder Bluetooth / Android-App.
- Vollständige Bauanleitung: LittleArm 2C Assembly Guide
- 3D-Druckdateien: LittleArm 2C STL Files
Code
LittleArm 2C Arduino Sketch (C/C++)
// LittleArm 2C Arduino Code
// Serielle Steuerung des 3D-gedruckten Roboterarms
// Erstellt von Slant Concepts
#include <Servo.h>
#include <math.h>
#define PI 3.141
Servo baseServo;
Servo shoulderServo;
Servo elbowServo;
Servo gripperServo;
// --- Globale Variablen ---
struct JointAngle {
int base;
int shoulder;
int elbow;
};
struct JointAngle desiredAngle; // Gewünschte Servo-Winkel
int desiredGrip; // Gewünschte Greifer-Position
int gripperPos; // Aktuelle Greifer-Position
int command; // Befehls-Set
int desiredDelay; // Verzögerung zwischen Servo-Schritten
// Funktionsdeklaration
int servoParallelControl(int thePos, Servo theServo, int theSpeed);
void setup() {
Serial.begin(9600);
baseServo.attach(5);
shoulderServo.attach(4);
elbowServo.attach(3);
gripperServo.attach(2);
Serial.setTimeout(50); // Timeout für serielle Kommunikation
Serial.println("started");
// Startpositionen
baseServo.write(90);
shoulderServo.write(100);
elbowServo.write(110);
}
void loop() {
if (Serial.available()) {
// Befehlsformat: "base,shoulder,elbow,grip,delay\n"
desiredAngle.base = Serial.parseInt();
desiredAngle.shoulder = Serial.parseInt();
desiredAngle.elbow = Serial.parseInt();
desiredGrip = Serial.parseInt();
desiredDelay = Serial.parseInt();
if (Serial.read() == '\n') { // Ende-Kennung
Serial.flush();
Serial.print('d'); // "done" zurückmelden
}
}
// Parallele Servo-Steuerung bis alle Positionen erreicht
int status1 = 0, status2 = 0, status3 = 0, status4 = 0;
int done = 0;
while (done == 0) {
status1 = servoParallelControl(desiredAngle.base, baseServo, desiredDelay);
status2 = servoParallelControl(desiredAngle.shoulder, shoulderServo, desiredDelay);
status3 = servoParallelControl(desiredAngle.elbow, elbowServo, desiredDelay);
status4 = servoParallelControl(desiredGrip, gripperServo, desiredDelay);
if (status1 == 1 && status2 == 1 && status3 == 1 && status4 == 1) {
done = 1; // Alle Servos an Zielposition
}
}
}
// --- Funktionsdefinition ---
// Bewegt Servo schrittweise zur Zielposition, gibt 1 zurück wenn erreicht (±5°)
int servoParallelControl(int thePos, Servo theServo, int theSpeed) {
int startPos = theServo.read();
int newPos = startPos;
if (startPos < (thePos - 5)) {
newPos++;
theServo.write(newPos);
delay(theSpeed);
return 0; // Noch nicht da
} else if (newPos > (thePos + 5)) {
newPos--;
theServo.write(newPos);
delay(theSpeed);
return 0;
} else {
return 1; // Ziel erreicht (±5 Toleranz)
}
}
Schaltplan
Bei Verwendung des Meped Boards (für LittleArm entworfen) sind nur vier Verbindungen nötig.

Herstellungsprozess
- Bluetooth-gesteuerter Raspberry Pi Roboter mit Audio-Feedback bauen
- Internet-gesteuerter Video-Streaming-Roboter mit Arduino & Raspberry Pi bauen
- Haddington Dynamics: Der Open-Source, High-Performance Dexter 3D-gedruckte Roboterarm
- Dualarm-SCARA-Roboter: Fortschrittliche Montage- & Produktionslösungen
- MeArm Roboterarm V1.0 – Arduino & Raspberry Pi gesteuerter Roboterarm bauen
- Autonomer Linienfolger-Roboter mit Arduino UNO
- Funktionaler 3D-gedruckter Roboterarm mit Arduino – Schritt-für-Schritt-Anleitung
- Arduino-basierter 6-DoF Roboterarm mit Nunchuk-Steuerung
- Sprachgesteuerter Roboter mit Arduino Nano bauen
- Ethernet-gesteuerter Roboterarm: Fernsteuerung leicht gemacht