Offizielle Vorlage
KI-Spielzeug für Hunde
K
von @KrzysztofWie programmiere ich automatische Ballwurfmaschinen, damit mein Hund sich sinnvoll beschäftigt, wenn ich arbeite?
Projekt-Plan
1.
Lasse die Gelenke (Hüfte/Ellenbogen) und das Herz deines Hundes untersuchen. Ballwerfen bedeutet extreme Stop-and-Go-Belastung.
- Kläre ab, ob dein Hund für Apportierspiele geeignet ist (besonders wichtig bei Rassen wie Schäferhunden oder Retrievern).
- Wichtig: Welpen unter 12 Monaten dürfen die Maschine nicht nutzen, da die Wachstumsfugen noch nicht geschlossen sind. Erledigt, wenn: Der Tierarzt grünes Licht für intensive körperliche Aktivität gegeben hat.
2.
Besorge exakt diese Teile für den Bau:
- Controller: Raspberry Pi Pico oder Raspberry Pi 4.
- Motoren: 2x 12V DC Motoren (hohe RPM für Flywheels).
- Motortreiber: L298N Modul.
- Sensoren: HC-SR04 Ultraschallsensor (für Sicherheit) und ein IR-Infrarotsensor (für Ballerkennung im Trichter).
- Strom: 12V Netzteil (min. 3A).
- Gehäuse: PVC-Rohre (Durchmesser passend zum Ball) oder ein 3D-gedrucktes Gehäuse nach der Vorlage von 'brankly' (Thingiverse ID: 5019572). Erledigt, wenn: Alle Komponenten physisch vor dir liegen.
3.
Baue das Herzstück der Maschine:
- Befestige die beiden Motoren so, dass die Räder (Flywheels) sich gegenüberstehen.
- Der Abstand zwischen den Rädern muss ca. 2-3mm geringer sein als der Balldurchmesser, um Grip zu erzeugen.
- Nutze Anti-Rutsch-Klebeband auf den Rädern für maximale Beschleunigung. Erledigt, wenn: Ein manuell durchgeschobener Ball von den (ausgeschalteten) Rädern leicht eingeklemmt wird.
4.
Verbinde die Komponenten mit dem Raspberry Pi:
- VCC/GND des Ultraschallsensors an 5V/GND des Pi (Achtung: Echo-Pin braucht Spannungsteiler 1k/2k Ohm auf 3.3V).
- L298N Eingänge an GPIO Pins (z.B. GPIO 17, 18).
- IR-Sensor in den Balltrichter montieren, um zu erkennen, wenn der Hund den Ball einwirft. Erledigt, wenn: Alle Kabel fest sitzen und keine Kurzschlüsse vorliegen.
5.
Nutze folgendes Logik-Gerüst in Python:
- Schritt 1: Warte auf IR-Sensor (Ball im Trichter).
- Schritt 2: Prüfe Ultraschallsensor (Sicherheitsabstand). Wenn Objekt < 150cm entfernt -> STOP (Hund steht zu nah vor der Öffnung).
- Schritt 3: Starte Motoren für 3 Sekunden.
- Schritt 4: Aktiviere einen kleinen Servo, der den Ball in die Flywheels rollen lässt. Erledigt, wenn: Das Skript fehlerfrei startet und auf Sensoreingaben reagiert.
6.
Hunde neigen zur Sucht (Ball-Junkie). Programmiere eine harte Zeitbegrenzung:
- Erstelle eine Variable
play_start_time. - Nach maximal 10 Minuten Spielzeit muss die Maschine für mindestens 2 Stunden sperren.
- Nutze ein
time.sleep()oder einen Cronjob, um die Maschine während deiner Arbeitszeit nur in festen Intervallen freizugeben. Erledigt, wenn: Die Maschine nach 10 Minuten Betrieb automatisch abschaltet und erst nach der Sperrfrist wieder reagiert.
7.
Dein Hund muss lernen, den Ball oben einzuwerfen und dann zurückzuweichen:
- Belohne das Fallenlassen des Balls im Trichter mit einem Leckerli.
- Markiere das Geräusch der anlaufenden Motoren als Signal für 'Abstand halten'.
- Wichtig: Bleibe die ersten 5-10 Sessions dabei, um Fehlverhalten (Hineinbeißen in die Maschine) sofort zu korrigieren. Erledigt, wenn: Der Hund den Ball selbstständig einwirft und sich sofort 2 Meter hinter die Maschine begibt.
8.
Wiederhole diese Schritte alle 7 Tage:
- Reinigung: Wische die Flywheels mit Isopropanol ab (Speichelreste verringern den Grip).
- Check: Prüfe die Bälle auf Risse oder Feuchtigkeit (nasse Bälle fliegen unberechenbar).
- Sensor-Test: Wische die Linse des Ultraschallsensors ab, damit die Sicherheitsabschaltung funktioniert. Erledigt, wenn: Die Maschine sauber ist und die Sensoren im Test-Modus korrekt auslösen.
0
0