Klangerzeugende Automaten


klangerzeugende Automaten (von Evaline, Laurens, Glen & Sven) - CMD2
Arduino betriebene Projekt

Video:

https://vimeo.com/52416744

(Hinweis: Wir haben die Töne über das eigentliche Video bearbeitet. Der Grund zu sein, die während der Aufnahme und Prüfung unserer Clips konnten wir nicht die eigentlichen Klänge hören während sie dort waren. Wenn wir das Video gerendert, konnte man die tatsächliche Klänge hören, die über Automaten, während wir dachten, dass sie von der Kamera aufgenommen wurden nicht aktiviert wurden. Also, das ist, warum Sie hören die Geräusche zweimal! Schien, dass die Kamera * haben * die Sounds aufzeichnen, nachdem alle! :) )

Benötigten Materialien;
-SRF10 oder Devantech SRF08 Ultraschall Ranger Finder
-Arduino Jumper Kabel (lange genug, sonst müsst Drähte Zusammenlöten)
-Tape
-Ein Automat!
-Einige Redner (oder benutzen Sie einfach Ihren Laptop, sound wiederzugeben)

Benötigten Werkzeuge;
-Arduino (+ Bearbeitung)
-Grundlegende Arduino & Verarbeitung wissen
-Chancen sind, müssen Sie zu löten, wenn Sie die Kabel nicht lang genug sind
-Sounds!

-Prozess;

1. zu aller erst finden Sie eine geeignete Stelle. Denken Sie daran, dass Sie Ihren Laptop, Ihr Arduino und schließlich Ihre Lautsprecher aus den Augen zu verstecken müssen.

2. du musst Platz/Ultraschall-Sensor so Stock, dass es eine Änderung der Daten auslösen werde, da Menschen am Automaten verwenden. Jetzt prüfen Sie, ob die Kabel lang genug von Ihrem Sensor an Ort und Stelle Sie sind Ihren Laptop, Arduino, verstecken werde etc.. Ist dies nicht der Fall, die Kabel zu löten, bis sie lang genug sind.

3. finden Sie die Geräusche, die Sie spielen, wenn Leute den Code durch den Sensor auslösen möchten.  Mp3-Format ist am einfachsten zu bedienen. Fand die Geräusche, die Sie wollen? Eine neue Verarbeitung Skizze, speichern Sie die Skizze und fügen Sie Ihre Sounds in den entsprechenden Ordner. Verarbeitung in der rohen Codeabschnitt sichtbar. Ersetzen Sie die. MP3-Datei-Namen mit Ihrem MP3-Dateinamen. Schließlich, löschen Sie oder fügen Sie klingt wie Sie bitte.

4. kopieren und fügen Sie den Arduino Code und alles miteinander verbinden. Sehen Sie, wenn Sie Daten in Ihrer Verarbeitung von Arduino empfangen. Stellen Sie sicher, dass alles funktioniert! Funktioniert etwas nicht? Versuchen Sie und finden Sie Schritt für Schritt den Fehler zu. Erhält Ihre Verarbeitung keine Werte? Welche Werte? Machen Sie den Arduino Ihre Werte vor dem Schreiben Sie, etc. drucken.

(Die Chancen stehen gut Code hat ein wenig optimiert werden, die Dinge für Sie arbeiten!)

5. in Ordnung! Zeit zum Finetune. Beginnen Sie mit der Platzierung Ihrer Werkzeuge (Sensor, Arduino, Laptop, Lautsprecher), wo sie sein sollten. Vor kleben Sie die Drähte, etc.. Überprüfen (durch testen), welche Daten Sie erhalten, wenn Leute am Automaten benutzen. Optimieren Sie Ihren Code so, dass es auf die Änderung von Daten reagiert. Dies ist normalerweise der schwierige Teil!

6. Kleben Sie die Drähte verbergen alles, führen Sie den Code und genießen!

7. Programm stecken? Versuchen Sie Neustart Verarbeitung oder Zurücksetzen Ihres Arduino.

Roh-Code;

ARDUINO CODE--

I2C SRF10 oder Devantech SRF08 Ultraschall Ranger Finder
von Nicholas Zambetti
und James Tichenor

Veranschaulicht die Verwendung der Drahtbibliothek Lesen von Daten aus der
Devantech Utrasonic Rangers SFR08 und SFR10

29. April 2006 erstellt

Dieser Beispielcode ist in der Public Domain.

#include

void setup()
{
Wire.Begin(); Join-i2c-Bus (optional für Master-Adresse)
Serial.Begin(9600); Starten Sie die serielle Kommunikation bei 9600 Bit/s
}

Int lesen = 0;

void loop()
{
Int Daten = 0;
Int OldAddress = 0x70; I2C Gebruikt hat 7-Bit Addresses (de MSB) Dus 0xE0 Wordt 0x70
Int NewAddress = 0xE2; steht im Einklang mit Adresse 2--> 0xE4
Int NewAddress = 0x71; nur 7-Bit verwendet--> 0x72
Boolesche halten = False;

ChangeAddress (OldAddress, NewAddress);

while(1) {}
Daten = readData(newAddress);
{If(Data!=0)}
Serial.println(Data);
If(Data >100) {}
Serial.Write("e");

}
ElseIf (Daten < 90) {}
Serial.Write("f");
}
}
Else {}
Serial.Write("0");
}
Delay(100); noch ein bisschen warten Sie, da Menschen, die Ausgabe zu lesen
Delay(1000);
}

}

Der folgende Code ändert sich die Adresse von einem Devantech Ultraschall-Entfernungsmesser (SRF10 oder SRF08)
Verwendung: changeAddress(0x70, 0xE6);

void ChangeAddress (Int OldAddress, Int NewAddress)
{
Wire.beginTransmission(oldAddress);
Wire.Write(Byte(0X00));
Wire.Write(Byte(0xa0));
Wire.endTransmission();

Wire.beginTransmission(oldAddress);
Wire.Write(Byte(0X00));
Wire.Write(Byte(0xAA));
Wire.endTransmission();

Wire.beginTransmission(oldAddress);
Wire.Write(Byte(0X00));
Wire.Write(Byte(0xA5));
Wire.endTransmission();

Wire.beginTransmission(oldAddress);
Wire.Write(Byte(0X00));
Wire.Write(newAddress);
Wire.endTransmission();
}

Der folgende Code ist die Sensordaten lesen
Int ReadData (Int Adresse) {}
Int lesen = 0;

Schritt 1: weisen Sie Sensor Echos zu lesen
Wire.beginTransmission(address); übertragen Sie auf Gerät #112 (0x70)
die im Datenblatt angegebene Adresse ist 224 (0xE0)
aber i2c Adressierung nutzt die hohe 7 Bits, so dass es 112
Wire.Write(Byte(0X00)); Sets-Register-Zeiger auf Befehl Register (0 x 00)
Wire.Write(Byte(0x51)); Befehl-Sensor zur Messung in "Zentimeter" (0x51)
Verwenden Sie 0x50 für Zoll
Verwenden Sie 0x51 für Zentimeter
Verwenden Sie 0x52 für Ping Mikrosekunden
Wire.endTransmission(); Übertragung zu stoppen

Schritt 2: warten Sie Lesungen passieren
Delay(70); Datenblatt schlägt mindestens 65 Millisekunden

Schritt 3: anweisen, Sensor wieder ein besonderes Echo lesen
Wire.beginTransmission(address); übertragen Sie auf Gerät #112
Wire.Write(Byte(0x02)); Sets registrieren Zeiger um echo #1 Register (0x02)
Wire.endTransmission(); Übertragung zu stoppen

Schritt 4: Lesung von Sensor anfordern
Wire.requestFrom (Adresse, 2); 2 Byte vom Slave-Gerät #112 anfordern

Schritt 5: Lesung von Sensor erhalten
Wenn (2 < = Wire.available()) / / Wenn zwei Bytes empfangen wurden
{
Lesen = Wire.read(); high-Byte (überschreibt früheren Lesung) zu erhalten
lesen lesen = << 8; Schicht-high-Byte zu hohen 8 bits
Lesen | = Wire.read(); low-Byte als unteren 8 Bits erhalten
Lesen zurück;
}
Return 0;
}

VERARBEITUNGSCODE –

Import processing.serial.*;
Import ddf.minim.*;

Minim Minim;
AudioPlayer in;
AudioPlayer in2;
AudioPlayer in3;
AudioPlayer in4;
AudioPlayer in5;

Serielle MyPort;
Boolesche Hand = False;

Int-R;

void setup() {}
Größe (800, 600);
Minim = new Minim(this);
in = minim.loadFile("god.mp3");
IN2 = minim.loadFile("applaus.mp3");
in3 = minim.loadFile("babygelach.mp3");
IN4 = minim.loadFile("scheet.mp3");
in5 = minim.loadFile("muntje.mp3");

println(Serial.List());
PortName String = Serial.list() [6];
MyPort = neue Seriennummer (diese, PortName, 9600);
Background(0);
R = 0;
}

void SerialEvent (serielle MyPort) {}

Int InByte = myPort.read();

println(inByte);

Wenn (InByte == 102 & & Hand == False) {}

für (Int ich = 0; ich < 9000; i ++) {}
Int R = Int (random(1, 4));
println(r);
Hand = True;
println(Hand);
// }

Wenn (R == 1) {}
in.Play();
}
ElseIf (R == 2) {}
IN2.Play();
}
ElseIf (R == 3) {}
in3.Play();
}
ElseIf (R == 4) {}
IN4.Play();
}
Else {}

in5.Play();
}
}
Wenn (InByte == 101) {}
Hand = False;
println(Hand);
}

}

void draw() {}
}

void stop()
{
in.Close();
minim.Stop();

super.Stop();
}

Stichworte: Arduino, Automaten

In Verbindung stehende Artikel

Pikachu Cam-Mechanismus-Automaten mit Gitter Scharnier Box

Pikachu Cam-Mechanismus-Automaten mit Gitter Scharnier Box

Wir hatten einen Automaten mit Tischlerei und Gitter Scharnier für ein Projekt zu machen und das war, was ich früher Pikachus Kopf zu bewegen, als ob er einen Kampf in der französischen Revolution verloren. Siehe unten in Schritt 9: verweist auf die
Automaten

Automaten

Dies ist ein Komplex, aber es lohnt Redstone Verkaufsautomat. Sie setzen eine Smaragd im unteren Bereich und klicken Sie auf die Schaltfläche unter dem Punkt Rahmen zu bekommen, was in den Rahmen des Artikels ist.Inspiriert von Mr KrebseSchritt 1: Sc
Zelluläre Automaten und eine Implementierung von Conways Spiel des Lebens

Zelluläre Automaten und eine Implementierung von Conways Spiel des Lebens

Soweit ich weiß, wurden es nur zwei Instructables Artikel über zelluläre Automaten, die hier und hier zu finden. Weder Artikel erklärt, was zelluläre Automaten sind, warum sie interessant sind, oder wie man sie in Code umsetzen kann. Also beschloss i
Unter dem Meer-Automaten

Unter dem Meer-Automaten

In diesem instructable, zeige ich Ihnen wie man einen hölzernen Automaten mit einem Thema von "The Little Mermaid" zu machen. Es ist ein bisschen wie ein langwieriger Prozess, aber am Ende, es lohnt sich total! Diese Automaten verwendet mehrere
Design des Automaten

Design des Automaten

Moderne Automaten sind Kurbelwelle angetriebenen mechanischen Skulpturen, die irgendeine Art von Objekt in Bewegung zeigen. Das Design dieser Maschinen kann sehr komplex sein und erfordert einiges an Erfahrung. Mit Hilfe von Computer-Design-Software
Coole Automaten/Faux Steampunk inspirierten CD-Hülle

Coole Automaten/Faux Steampunk inspirierten CD-Hülle

Einmal im Jahr mache ich einige Auftragsarbeiten für eine wirklich coole Firma, die "visuellen Wow" schafft für nationale und internationale Automobilausstellungen.  Wenn sie, dass sie die Einstellung waren angekündigt, entschied ich mich, ich b
Xylophon-Automaten-Akkord

Xylophon-Automaten-Akkord

lasst uns bereit zu bauen!Schritt 1: Ihre MaterialienFür die heutige Projekt benötigen Sie:-Holz fertig-2 1/4 Zoll Dübel Stäbe-1 7/16 Dübel Stab-1/2 Zoll Holzkugeln-Little Tikes Xylophon-3 Nocken Schnitt für ein Drop-off (3 Zoll)-2 4 Zoll Getriebe-4
Automaten Pilger 7000 Kopf

Automaten Pilger 7000 Kopf

Wie ich schon sagte: "Filme kann eine große Quelle der Inspiration für unsere Projekte."Nun... Ich halten anschauen von Filmen, so dass ich mich inspiriert zu halten. Ich würde besser aufhören, Filme... Ich wollte alles machen, was, die ich sehe
Zelluläre Automaten Design für Kreuzstich iPhone Case

Zelluläre Automaten Design für Kreuzstich iPhone Case

hier finden Sie das Design (und der Quellcode dafür), dass ich für meine DIY iPhone 4 Schutzhülle beschlossen so auch einige Tipps und Tricks, wie man ein Projekt sauber (und astfreie!) Nadelspitze, die sieht auch cool.HintergrundÜber ein Jahr und ei
Automaten Bewegung Lehrmittel

Automaten Bewegung Lehrmittel

Dies ist ein GCSE DT Systeme und Kontrolle-Praxis-Projekt habe ich erstellt. Dies ist eine Aufgabe, meine Lehrerin hat unsere ganze Klasse und wir haben in die Freiheit, die Voraussetzungen zu schaffen.Sorry für das Fehlen von uploads Im fürchte, Prü
Schlagzeuger Dude Automaten

Schlagzeuger Dude Automaten

Hallo in diesem instructable ich werde dir zeigen wie eine Trommeln Dude Automaten bauen.Materialien, die Sie benötigen:HolzHolz-sticksSprühfarbeFarbige WolleMannRohrKunststoff-DeckelGlu-tacBandKleberSchraubenNägelHolz-StabWerkzeuge, die Sie benötige
Minecraft-Automaten (, die Sie zahlen müssen, Sachen zu bekommen)

Minecraft-Automaten (, die Sie zahlen müssen, Sachen zu bekommen)

Ich wollte einen Automaten zu machen, den Sie zahlen mussten, um zu bekommen was Sie wollen. Also machte ich mit Hilfe meines Bruders dies. Die Taste passiert nichts. Aber wenn Sie Sie Vorkasse und schieben die Schaltfläche setzen. Es kommt heraus, w
Intelligente Automaten

Intelligente Automaten

Basierend auf Wiki-Definition:"Dynamic pricing ist eine Preisstrategie" in welche Unternehmen höchst flexible Preise für Produkte oder Dienstleistungen basierend auf aktuellen Anforderungen des Marktes eingestellt".Viele Unternehmen, vor al
Wie Soda klaut man Dosen aus alten Automaten

Wie Soda klaut man Dosen aus alten Automaten

OK, Soda Kosten wie $1,25 oder Sie eine alte alte Maschine finden und ein knackig, kaltes Getränk gratis!!OK können loslegen!Schritt 1: Rufen Sie die Soda Finden Sie eine alte AutomatenDurch die Öffnung im unteren Teil der Maschine und das Gefühl um