Automatischer Tinder & Bumble Swiper mit Arduino UNO & Schrittmotor
Komponenten und Materialien
| Komponente | Menge |
|---|---|
| Arduino UNO | 1 |
| BYJ48 Schrittmotor (28-BYJ48, unipolar) | 1 |
| 3D-Druckdateien | 1 Set |
| Touchscreen-Stift (kapazitiv) | 1 |
Apps und Online-Dienste
- Arduino IDE
Über das Projekt
Hintergrund
Meine Freunde haben mir einen Tinder-Account erstellt – und wie die meisten Nutzer war ich schnell enttäuscht, wie monoton das Wischen ist. Dann realisierte ich: Ich bin ein viel besserer Ingenieur als potenzieller Partner. Also baute ich das aus einem billigen Schrittmotor, den ich herumliegen hatte. Jetzt können auch Sie **über 800 Swipes pro Stunde** auf Tinder oder Bumble machen!
Kurzübersicht
Drei schnelle Schritte: Teile drucken, Schrittmotor verdrahten & testen, alles zusammenbauen.
Schritt 1: Teile drucken
Dateien: Thingiverse. Wichtig: Basis mit **50% Infill** drucken, damit sie schwer genug ist und nicht verrutscht beim Wischen.
Schritt 2: Schrittmotor
Verwendet: Unipolarer 28-BYJ48 Schrittmotor + SBT0811 Treiber (jeder Treiber für BYJ48 funktioniert). Verdrahtung:
- IN1 → D8
- IN2 → D9
- IN3 → D10
- IN4 → D11
- VCC → 5V
- GND → GND
Code unten auf der Seite. Nach Upload sollte sich der Motor im Uhrzeigersinn drehen. Für Gegenuhrzeigersinn: Variable Direction = false auf true ändern.
Schritt 3: Alles zusammenbauen
- Schrittmotor in Swiper-Basis einsetzen, mit 2 kleinen Holzschrauben im 3D-Druck fixieren.
- Swiper-Arm auf Motorwelle stecken.
- Höhe kalibrieren: Konstruktion über Handy halten, Touchscreen-Stift in Arm stecken bis er Display berührt.
- Kurze M3-Schraube durch Arm & Stift → Stift fixieren (verrutscht nicht beim Wischen).
Schritt 4: Loswischen!
Konstruktion neben Handy platzieren, Dating-App öffnen, Arduino einschalten, zurücklehnen!
Getestet auf 4 Handys – eines hatte Probleme (empfindlicher Displayrand → vorheriger Screen). Lösung: Handy in Hülle mit erhöhtem Rand stecken, damit Stift nicht am Rand registriert wird.
Code
Swiper Arduino-Code
Direction = false auf true für Rechtswischen (Standard: Linkswischen).
/* BYJ48 Schrittmotor Code
Verbindungen: IN1>>D8 IN2>>D9 IN3>>D10 IN4>>D11 VCC>>5V GND>>GND
Geschrieben von: Mohannad Rawashdeh
https://www.instructables.com/member/Mohannad+Rawashdeh/
28/9/2013
*/
#define IN1 8
#define IN2 9
#define IN3 10
#define IN4 11
int Steps = 0;
boolean Direction = false; // true = rechts, false = links
unsigned long last_time;
unsigned long currentMillis;
int steps_left = 4095;
long time;
void setup() {
Serial.begin(115200);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}
void loop() {
while(steps_left > 0) {
currentMillis = micros();
if(currentMillis - last_time >= 1000) {
stepper(1);
time = time + micros() - last_time;
last_time = micros();
steps_left--;
}
}
steps_left = 4095; // Reset für kontinuierliche Drehung
}
void stepper(int xw) {
for (int x = 0; x < xw; x++) {
switch(Steps) {
case 0: digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); break;
case 1: digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH); break;
case 2: digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); break;
case 3: digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); break;
case 4: digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); break;
case 5: digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); break;
case 6: digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); break;
case 7: digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); break;
default: digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); break;
}
SetDirection();
}
}
void SetDirection() {
if(Direction == 1) { Steps++; }
if(Direction == 0) { Steps--; }
if(Steps > 7) { Steps = 0; }
if(Steps < 0) { Steps = 7; }
}
Herstellungsprozess
- Schrittmotoren: Typen, Eigenschaften und praktische Anwendungen
- Integrierte Treiber vereinfachen High-Power-Schrittmotordesign
- Raspoulette: Solar-betriebenes autonomes Hühnerklappen-System Prototyp
- Simple Pi Robot: 2-WD Autonomer Rover mit Raspberry Pi bauen
- DIY Autonomer Nerf-Sentry-Geschützturm – Intelligente Nerf Gun mit Schrittmotoren, Kamera und Arduino
- Umfassende Bipolar-Schrittmotor-Bibliothek für Arduino
- SmartWay: GPS-Tracker für Kinder – Vibration, RGB-LED & Sigfox (Arduino MKR Fox 1200)
- Servo- vs. Schrittmotoren: Die moderne Grauzone verstehen
- Linearmotoren verstehen: Von elektrischer Energie zur präzisen Linearbewegung
- Servomotoren: Funktionsweise und Bedeutung