Inhaltsverzeichnis:
- Schritt 1: Aufbau des Gehäuses
- Schritt 2: Konstruieren der Flippermechanik
- Schritt 3: Platzieren der Wände
- Schritt 4: Hinzufügen der Score-Blöcke
- Schritt 5: Hinzufügen des Game-Over-Kontakts
- Schritt 6: Bohren der Kabellöcher
- Schritt 7: Alles verkabeln
- Schritt 8: Hochladen des Codes
Video: Arduino: Flipperautomat - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Da ich sowohl Flipperautomaten als auch Elektronik immer geliebt habe, beschloss ich, meinen eigenen Flipperautomaten zu bauen. Ich habe mich für Arduino für die Programmierung und Elektronik entschieden, weil es eine leicht zugängliche Plattform ist, die sowohl kompakt als auch einfach zu bedienen ist.
In diesem Leitfaden werde ich meinen Entwicklungsprozess erklären, damit vielleicht einer von euch Enthusiasten etwas Ähnliches erstellen könnte.
Schritt 1: Aufbau des Gehäuses
Beginnen wir mit dem Fall des Flipperautomaten. Ich habe eine ziemlich einfache Konstruktion gemacht. Ich sägte eine Bodenplatte ab und benutzte 4 kleine Holzsäulen in den Ecken, um die Wandstücke zu verbinden. Die Größe Ihres Gehäuses ist Ihre eigene Wahl, ich habe mich entschieden, es etwas kleiner als einen Original-Flipper zu machen, da ich nicht vorhatte, irgendwelche super spektakulären Extras hinzuzufügen, um den Platz zu füllen. Ich benutzte beide Schrauben und Kleber, um das Gehäuse so stabil wie möglich zu machen. Auf der Rückseite habe ich zwei Löcher in das Bodenstück für die beiden Beine gebohrt, die dem Flipper die ikonische Neigung verleihen. Auch hier liegt die Höhe der Beine ganz bei Ihnen. Je größer Sie die Beine machen, desto schneller rollt der Ball (nach unten).
Schritt 2: Konstruieren der Flippermechanik
Da ich die Kosten für dieses Projekt begrenzen wollte, entschied ich mich, statt elektronischer Flossen vollmechanische Flossen herzustellen. Wenn Sie sich für elektronische Flossen interessieren, können Sie eine ähnliche Konstruktion verwenden, jedoch mit einem daran angeschlossenen sogenannten 'Solenoid' (Solenoide mit genügend Leistung zur Steuerung der Flossen waren mir zu teuer).
Ich begann mit dem Bohren von zwei Löchern in den Boden für den Drehpunkt beider Flossen. Ich habe die Löcher (meiner Meinung nach) etwas zu nah beieinander gebohrt, wodurch das Spiel am Ende etwas zu leicht wurde. Achten Sie also darauf, die Flossen nicht zu nahe beieinander zu platzieren, es sei denn, Sie möchten einen einfachen Spielstil.
Ich habe auch zwei Löcher in die beiden Seitenwände parallel zu den Flipperlöchern gebohrt. Diese Löcher sind für die beiden Flipperknöpfe zu verwenden.
Ich habe Federn verwendet, um die Flossen in die ursprüngliche Position zurückzuziehen, und eine schwenkbare Konstruktion zwischen den Flossen und den Knöpfen gemacht, damit sie sich drehen, wenn die Knöpfe gedrückt werden. Um zu verhindern, dass die Federn die Flossen zu weit zurückziehen, habe ich zwei Schrauben angebracht, um die Flossen in ihrer ursprünglichen Position zu halten.
Schritt 3: Platzieren der Wände
Ich habe ein paar Wände platziert, um den Flipper in Richtung der Flossen umzuleiten. Sie sind sehr einfach herzustellen. Bohren Sie einfach 3 Löcher in den Boden des Gehäuses und drücken Sie drei Holzstifte hinein. Wickeln Sie ein Gummiband um die Stifte und fertig.
Schritt 4: Hinzufügen der Score-Blöcke
Die Punkteblöcke sind einer der wichtigsten Teile des Flipperautomaten, also stellen Sie sicher, dass Sie diesen Teil richtig machen. Ich habe drei Punkteblöcke für meinen Flipper gemacht, aber auch das liegt ganz bei Ihnen.
Ich sägte ein kleines Stück von einem Besenstiel ab und wickelte Kupferdraht darum. Das Arduino versorgt diesen Kupferdraht ständig mit 5V. Für einen besseren Kontakt mit der Kugel habe ich vier Stiftfedern seitlich angelötet.
Die Art und Weise, wie die Punkteblöcke funktionieren, besteht darin, dass der Ball einen Stromkreis vervollständigt, der zu einem Eingangspin auf dem Arduino führt. Also, was ich tat, war, Aluminiumfolie auf die Unterseite des Gehäuses zu kleben (NICHT DAS KUPFER ZU BERÜHREN) und die Folie mit einem Stift auf dem Arduino zu verdrahten. Immer wenn der Ball sowohl das Kupfer als auch das Aluminium trifft, ist der Stromkreis geschlossen und der Arduino erhält ein Signal.
Ich habe alle Kerbblöcke mit der Aluminiumfolie verbunden, aber bedenke, dass die klebrige Seite KEINEN Strom leitet.
Schritt 5: Hinzufügen des Game-Over-Kontakts
Am unteren Rand des Flipperautomaten, zwischen den Flippern, habe ich ein Spiel über Kontakt hinzugefügt. Immer wenn der Ball diesen Kontakt trifft, verliert der Spieler einen Ball. Die Konstruktion, die ich gemacht habe, ist sehr ähnlich wie bei den Kerbblöcken. Nur hier habe ich zwei Schrauben verwendet, und wieder ein Stück Alufolie auf der Unterseite.
Schritt 6: Bohren der Kabellöcher
Bevor wir alles mit dem Arduino verkabeln, müssen wir zuerst ein paar Löcher für die Kabel bohren. Ich bohrte ein Loch durch beide Stücke Alufolie, also ein Loch in die Alufolie in der Nähe der Punkteblöcke und ein Loch in die Alufolie in der Nähe des Spielüberkontakts.
Außerdem habe ich unten links, zwischen den Wänden, ein Loch gebohrt, für das Kabel, das zum zusätzlichen Kugeltor-Servo führt.
Unten sollte auch ein Loch für das Kabel sein, das mit dem LCD verbunden ist.
Schritt 7: Alles verkabeln
Ich habe diesen Schaltplan erstellt, um einen besseren Überblick darüber zu haben, wohin alle Kabel gehen sollten. Die Kreuze sind die Verbindungspunkte der Kabel. Ich habe versucht, so viel wie möglich zu löten, um alles etwas stabiler und zuverlässiger zu machen. Die Verkabelung wird einige Zeit in Anspruch nehmen, aber danach sind Sie fast am Ziel!
Schritt 8: Hochladen des Codes
Laden Sie den folgenden Code auf Ihren Arduino hoch, um Ihren Flipper zum Leben zu erwecken!
// Binden Sie die Bibliothek für das lcd ein
#einschließen #einschließen
// Initialisieren Sie die LCD-Datenpins
Flüssigkristall-LCD (7, 8, 9, 10, 11, 12);
// Erstellen Sie ein Servo
ServoballGateServo;
// Erstellen Sie Variablen für die Pins, die wir verwenden
int gameoverPin = 6; int scorePin = 5; int LautsprecherPin = 4; int ballGateServoPin = 3;
// Gameplay-Variablen für den Flipper initialisieren
int-Punktzahl = 0; int-Highscore = 500; bool HighscoreReached = false; int-Kugeln = 3; int gameoverTimer = 0; int gameoverTimerDuration = 100; bool gameoverTriggered = false;
// diesen Code einmal beim ersten Frame ausführen
Void setup () {// Setzen Sie den PinMode für die Pins, die wir verwenden pinMode (gameoverPin, INPUT); pinMode (ScorePin, INPUT);
// Initialisiere das LCD durch Angabe der Breite und Höhe
lcd.begin(16, 2);
// Befestigen Sie das Ballgate-Servo an dem entsprechenden Stift
ballGateServo.attach(ballGateServoPin);
// Setzen Sie das Torservo in die Ausgangsposition zurück
ballGateServo.write(0); }
// Führe diesen Code in jedem einzelnen Frame aus
Void loop () {// Erfassen Sie die Pin-Eingänge Int gameoverState = digitalRead (gameoverPin); int scoreState = digitalRead(scorePin);
// Zur Punktzahl hinzufügen, wenn Eingaben empfangen werden
if (scoreState) { Ton (SpeakerPin, 1000); Punktzahl += 10; aufrechtzuerhalten. Sonst { kein Ton (4); }
// Subtrahiere von den Bällen, wenn die Gameover-Grube ausgelöst wird
if (gameoverState und !gameoverTriggered) { Kugeln -= 1; gameoverTriggered = true; gameoverTimer = gameoverTimerDauer; }
// Starte den Gameover-Timer, sobald der Ball den Gameover-Kontakt nicht berührt
if (!gameoverState) { if (gameoverTimer >= 1) { gameoverTimer -= 1; aufrechtzuerhalten. Else { gameoverTriggered = false; } }
// Blinken Sie den Gameover-Text auf das LCD und setzen Sie den Punktestand und die Bälle zurück
wenn (Kugeln <= 0) {lcd.setCursor (0, 0); für (int i = 5; i> = 1; i--) {lcd.clear(); Verzögerung (250); lcd.print("GAME OVER"); lcd.setCursor(0, 1); lcd.print("Erneut versuchen?"); Verzögerung (250); } lcd.clear(); Punktzahl = 0; ballGateServo.write(0); HighscoreReached = false; Kugeln = 3; }
if (Score > Highscore und !HighscoreReached) {
lcd.setCursor(0, 0); für (int i = 5; i > = 1; i--) {lcd.clear(); Verzögerung (250); lcd.print("NEUER HIGHSCORE"); lcd.setCursor(0, 1); lcd.print("Plötzlicher Tod!"); Verzögerung (250); } lcd.clear(); Kugeln = 1; ballGateServo.write(120); Highscore = Punktzahl; HighscoreReached = true; }
// Aktualisiere den Highscore, wenn der aktuelle Score höher ist
if (Score > Highscore) { Highscore = Punktzahl; }
// Setzen Sie den Cursor auf Zeile 0
lcd.setCursor(0, 0); // Den aktuellen (Highscore) auf dem LCD ausgeben if (score <= 0) { lcd.print("Highscore: " + String(highscore) + " "); } else { lcd.print("Ergebnis: " + String (Ergebnis) + ""); }
// Setzen Sie den Cursor auf Zeile 1
lcd.setCursor(0, 1);
// Die aktuelle Anzahl an Kugeln auf dem LCD ausgeben
lcd.print("Bälle: " + String(Bälle)); }
Empfohlen:
Einen Arduino-Gitarren-Tuner herstellen – wikiHow
So bauen Sie einen Arduino-Gitarren-Tuner: Dies sind die Anweisungen, um einen Gitarren-Tuner aus einem Arduino und mehreren anderen Komponenten zu machen. Mit Grundkenntnissen in Elektronik und Codierung können Sie dieses Gitarrenstimmgerät herstellen. Zuerst müssen Sie wissen, was die Materialien sind. Ma
ALARMA ARDUINO CON SENSOR DE MOVIMIENTO, SIRENA Y AVISO AL TLF. MÓVIL: 9 Schritte
ALARMA ARDUINO CON SENSOR DE MOVIMIENTO, SIRENA Y AVISO AL TLF. MÓVIL: Este proyecto consiste en a alarma básica que Detecta presencia, activa una sirena de 108dB y visa al usuario mediante un SMS (opcional). Permite también el control remoto básico por parte del usuario a través de SMS (encendido, apagado, reinicio
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 2 - Temperatur- / Feuchtigkeitsmonitor - Rev 3: 7 Schritte
Easy Very Low Power BLE in Arduino Teil 2 – Temperatur-/Feuchtigkeitsmonitor – Rev 3: Update: 23. November 2020 – Erster Austausch von 2 x AAA-Batterien seit 15. Januar 2019 dh 22 Monate für 2x AAA AlkalineUpdate: 7. April 2019 – Rev 3 of lp_BLE_TempHumidity, fügt Datum/Uhrzeit-Plots hinzu, verwendet pfodApp V3.0.362+ und automatische Drosselung, wenn
Arduino-Programmierung über das Handy -- Arduinodroid -- Arduino-Ide für Android -- Blinzeln: 4 Schritte
Arduino-Programmierung über das Handy || Arduinodroid || Arduino-Ide für Android || Blink: Bitte abonnieren Sie meinen Youtube-Kanal für weitere Videos…… Arduino ist ein Board, das direkt über USB programmiert werden kann. Es ist sehr einfach und günstig für College- und Schulprojekte oder sogar für Produktprototypen. Viele Produkte bauen zunächst darauf für i