Inhaltsverzeichnis:
- Schritt 1: Bauen Sie die Servohalterung
- Schritt 2: Verdrahten Sie die Servos mit dem Arduino Uno
- Schritt 3: Arduino-Code…
Video: Arduino Servo Drum Machine - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Dies ist eine einfache Zwei-Mikro-Servo- und Arduino-Uno-gesteuerte Drum-Machine oder ein Roboter. Die Servos sind auf einer L-förmigen Halterung aus Holz montiert, die mit 4 starken Magneten an der Snare Drum gehalten wird. Die Servoarme sind mit zwei Essstäbchen verschraubt, die als Drumsticks dienen. Es ist ziemlich laut, aber nicht zu laut. Viel lautere Schläge könnten mit Standard-Servos und echten Drumsticks erzielt werden, die um einiges schwerer sind. Das würde aber auch eine separate Stromversorgung für die Servos erfordern. Durch die Verwendung von Mikroservos liefert der Arduino genug Strom, um sie ohne separates Netzteil direkt mit Strom zu versorgen.
Das Video zeigt meinen Versuch, eine einfache Version des Wipeout-Schlagzeugsolos zu programmieren. Natürlich sind es nicht die echten 160 Schläge pro Minute, aber das könnte leicht durch Hinzufügen eines weiteren Servos erreicht werden, was ziemlich cool wäre. Ich habe nicht berechnet, was die oberen BPM sind, die mit einem Servo erreicht werden können, und es erfordert eine gewisse Verzögerung, um den Trommelstock aus seiner Parkposition zum Trommelfell zu bringen.
Die Rhythmen, die Sie erstellen können, sind nur durch Ihre Vorstellungskraft begrenzt und der Drumcomputer ist ein interessanterer Begleiter als ein digitaler Drumcomputer, wenn Sie ein Musiker sind.
Der einzige Nachteil ist das Servogeräusch, das nicht wirklich wahrnehmbar ist, obwohl das Kameraaudio es ziemlich deutlich aufzunehmen scheint.
Schritt 1: Bauen Sie die Servohalterung
Diese Halterung besteht aus einigen Streifen Hobbysperrholz, die ich zur Hand hatte. Ich habe eine L-Form erstellt, indem ich zwei Teile mit einer Metall-L-Halterung verschraubt habe. Dann wurde ein kleiner Holzblock auf die obere Leiste geklebt, um die beiden Servos zu halten.
Ich hatte zwei praktische Servohalterungen, die ich an den Holzblock geschraubt habe.
Ich habe 4 Neodym-Magnete verwendet, um die Halterung an der Snare-Drum zu halten.
Schritt 2: Verdrahten Sie die Servos mit dem Arduino Uno
Die Servos vcc (mittlerer Draht) gehen zu den Arduino 5 V-Pins.
Die Erdungsdrähte zur Arduino-Masse.
Die Signalleitungen gehen zu den Pins 6 und 7.
Ein Servoschild würde es noch einfacher machen, wenn Sie einen haben.
Schritt 3: Arduino-Code…
Unten ist die einfache Skizze, um Wipeout zu spielen. Sie müssen nur die Servopositionen für Ihr spezielles Setup anpassen.
Spaß haben!
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#include "servo.h"
// Servo-Schlagzeuger Jim Demello Juni 2018
Servo myservo1, myservo2;
int servoPin6 = 6; //Servo
int servoPin7 = 7;
void myServo(int servoPosition, int servoNumber) {
if (servoNummer == 1) {
myservo1.write (servoPosition);
}
if (servoNummer == 2) {
myservo2.write (servoPosition);
}
}
void doOneEighthNote(int servoNumber, int beat) {
int delayVal = 60;
if (servoNummer == 1) {
wenn (Schlag) {Schlag = 10; // wenn beat = 1 dann füge etwas mehr Servo nach unten für einen stärkeren Schlag hinzu
}
myServo(150 + beat, servoNumber); //Nieder
Verzögerung (Verzögerungswert);
myServo(100, servoNumber); // nach oben
Verzögerung (Verzögerungswert);
}
if (servoNummer == 2) {
wenn (Beat) Beat = -10;
myServo (60 + Schlag, Servonummer); //Nieder
Verzögerung (Verzögerungswert);
myServo (80, servoNumber); // nach oben
Verzögerung (Verzögerungswert);
}
}
Void-Setup ()
{
// Serial.begin (9600);
myservo1.attach(servoPin6, 1000, 2000); // befestigt das Servo an Pin 9 an das Servoobjekt
myservo1.write(100);
myservo2.attach(servoPin7, 1000, 2000); // befestigt das Servo an Pin 9 an das Servoobjekt
myservo2.write(90);
}
Leere Schleife () {
auslöschen(); // Drum-Routine löschen
//doOneEighthNote(2, 0);
Verzögerung (40);
}
Leere Auslöschung () {
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0); // erster Parameter ist die Servonummer und der zweite Parameter ist Beat (1 = Beat, 0 = kein Beat)
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 0); doOneEighthNote(1, 0); doOneEighthNote(2, 1); doOneEighthNote(1, 0);
doOneEighthNote(2, 0); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 1); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
doOneEighthNote(2, 0); doOneEighthNote(1, 0); doOneEighthNote(2, 1); doOneEighthNote(1, 0);
doOneEighthNote(2, 0); doOneEighthNote(1, 0); doOneEighthNote(2, 1); doOneEighthNote(1, 0);
doOneEighthNote(2, 0); doOneEighthNote(1, 0); doOneEighthNote(2, 0); doOneEighthNote(1, 0);
}
Empfohlen:
Servo-Tutorial: 7 Schritte
Servo-Tutorial: Verwenden eines Arduino zur Steuerung eines Servomotors mit zwei Drucktasten
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
Arduino Servo-Tutorial: 3 Schritte (mit Bildern)
Arduino Servo Tutorial: Heute erfahren Sie, wie Sie Servomotoren mit Arduino verwenden. Eine sehr wichtige Fähigkeit für jeden, der in der Heimautomatisierung und Elektronik vorankommen möchte. Wenn Sie das fertige Projekt haben, drücken Sie einfach die Taste und beobachten Sie, wie sich das Servo zufällig dreht
SERVO-Steuerung lernen (auf einen Blick): 6 Schritte
SERVO-Steuerung lernen (auf einen Blick): In diesem Modul lernen Sie die Steuerung eines mit Arduino kompatiblen Mikro- oder Mini-Servos. Ein Servomotor wird im Allgemeinen in allen Automatisierungsprojekten verwendet, die bewegliche Teile haben. Es spielt eine sehr wichtige Rolle Rolle in der Robotik, die präzise Bewegung
Gewusst wie: Einrichten einer IPCop Virtual Machine Firewall zum Schutz Ihres Windows-Hosts (kostenlos!): 5 Schritte
Gewusst wie: Einrichten einer IPCop Virtual Machine Firewall zum Schutz Ihres Windows-Hosts (kostenlos!): Zusammenfassung: Das Ziel dieses Projekts ist es, IpCop (kostenlose Linux-Distribution) in einer virtuellen Maschine zu verwenden, um ein Windows-Hostsystem in einem beliebigen Netzwerk zu schützen. IpCop ist eine sehr leistungsstarke Linux-basierte Firewall mit erweiterten Funktionen wie: VPN, NAT, Intrusion Det