Geluid-producerende automaat


Sound-producerende automaat (door Evaline, Laurens, Glen & Sven) - CMD2
Arduino-aangedreven project

Video:

https://Vimeo.com/52416744

(Opmerking: We bewerkten de geluiden over de werkelijke video. De reden is dat tijdens de opname was en onze clips controleren kon niet wij de werkelijke geluiden horen terwijl ze er waren. Wanneer we de video opgebouwd, kon je horen de werkelijke geluiden die waren geactiveerd met behulp van de automaat, terwijl we dachten dat ze waren niet opgenomen door de camera. Dus, dat is waarom je hoort de geluiden tweemaal! Leek dat de camera * heeft * immers de geluiden opnemen! :) )

Materialen vereist;
-SRF10 of SRF08 Devantech ultrasone Ranger Finder
-Arduino jumper draden (lang genoeg, anders u zult moeten om te solderen draden samen)
-Tape
-Een automaat!
-Sommige sprekers (of gewoon gebruik maken van uw laptop geluid af te spelen)

Gereedschap;
-De Arduino (+ Processing)
-Basic Arduino en Processing kennis
-De kansen zijn dat u nodig hebt om te solderen als uw draden niet lang genoeg
-Klinkt!

Proces;

1. ten eerste, vinden een geschikte locatie. Vergeet niet dat u nodig hebt om uw laptop, uw Arduino en uiteindelijk uw sprekers uit het zicht te verbergen.

2. u moet naar plaats/stick de ultrasone sensor op een zodanige wijze dat het leiden een verandering van gegevens tot zal zoals mensen gebruik maken van de automaat. Nu controleren of de kabels lang genoeg van uw sensor naar de plaats u zijn zult het verbergen van uw laptop, Arduino, enz. Als dat niet het geval is, soldeer de draden tot ze lang genoeg.

3. vind de geluiden die u afspelen wilt wanneer mensen de code via de sensor activeren.  MP3-formaat is het makkelijkst te gebruiken. De gewenste geluiden gevonden? Start een nieuwe Processing Schets, sla de schets en plak je geluiden in de bijbehorende map. Zie de verwerking code in het gedeelte 'ruwe code'. De namen van de .mp3-bestanden vervangen door de namen van uw mp3-bestanden. Uiteindelijk, verwijderen of toevoegen van geluiden als u alstublieft.

4. Kopieer en plak de code van de Arduino en alles met elkaar te verbinden. Zie als u gegevens in uw verwerking van Arduino ontvangt. Zorg ervoor dat alles werkt! Iets niet werkt? Probeer en vind de fout stap voor stap. Krijgt uw Processing waarden? Wat voor soort waarden? Controleer de Arduino afdrukken van uw waarden vóór schrijven ze, enz.

(Kans op zijn code heeft worden een beetje getweakt om dingen voor u werken!)

5. goed! Tijd om finetune. Begin met het plaatsen van uw tools (sensor, arduino, laptop, luidsprekers) waar ze moeten zijn. Voordat u tape de draden, enz. Controleren (door te testen), welke gegevens die u ontvangt wanneer mensen de automaat gebruiken. Uw code op zodanige wijze dat het beantwoordt aan de wijziging van de gegevens aanpassen. Dit is meestal het moeilijke gedeelte!

6. tape van de draden, alles, verborgen de code uitvoeren en geniet van!

7. programma vast? Uitproberen herstarten Processing of resetten van uw Arduino.

Ruwe code;

ARDUINO CODE--

I2C-SRF10 of SRF08 Devantech ultrasone Ranger Finder
door Nicholas Zambetti
en James Tichenor

Toont de toepassing van de draad bibliotheek lezen van gegevens uit de
Devantech Utrasonic Rangers SFR08 en SFR10

Gemaakt van 29 April 2006

Deze voorbeeldcode is in het publieke domein.

#include

VOID Setup
{
Wire.begin(); Join i2c bus (adres facultatief voor master)
Serial.begin(9600); Start seriële communicatie 9600 bps
}

int lezing = 0;

void loop
{
int gegevens = 0;
int oldAddress = 0x70; I2C gebruikt enkel 7 bits adressen (de MSB) dus 0xE0 wordt 0x70
int NieuwAdres = 0xE2; strookt met adres 2--> 0xE4
int NieuwAdres = 0x71; alleen 7-bits worden gebruikt -> 0x72
Booleaanse hold = false;

changeAddress (oldAddress, NieuwAdres);

while(1) {}
gegevens = readData(newAddress);
if(data!=0) {}
Serial.println(Data);
if(Data >100) {}
Serial.write("e");

}
anders als (gegevens < 90) {}
Serial.write("f");
}
}
else {}
Serial.write("0");
}
delay(100); een beetje wachten, omdat mensen hebben om te lezen van de uitvoer
delay(1000);
}

}

De volgende code wijzigt het adres van een Devantech ultrasone Range Finder (SRF10 of SRF08)
gebruik: changeAddress(0x70, 0xE6);

VOID changeAddress (int oldAddress, int NieuwAdres)
{
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();
}

De volgende code wordt de sensorgegevens lezen
int readData (int adres) {}
int lezing = 0;

stap 1: instrueren sensor te lezen van echo's
Wire.beginTransmission(address); verzenden naar apparaat #112 (0x70)
het adres dat is opgegeven in het gegevensblad is 224 (0xE0)
maar i2c omgaan de hoge 7 bits gebruikt dus het is 112
Wire.write(byte(0x00)); sets registreren pointer naar het register van de opdracht (0x00)
Wire.write(byte(0x51)); opdracht sensor voor het meten in "centimeters" (0x51)
0x50 gebruiken voor inches
gebruik 0x51 voor centimeter
gebruik 0x52 voor ping microseconden
Wire.endTransmission(); stoppen met het verzenden van

stap 2: wachten op lezingen te gebeuren
delay(70); gegevensblad suggereert ten minste 65 milliseconden

stap 3: instrueren sensor om terug te keren een bijzondere echo-lezing
Wire.beginTransmission(address); verzenden naar apparaat #112
Wire.write(byte(0x02)); sets registreren aanwijzer voor de echo van de #1 register (0x02)
Wire.endTransmission(); stoppen met het verzenden van

stap 4: lezing aanvragen met sensor
Wire.requestFrom (adres, 2); 2 bytes voor aanvragen vanaf slave apparaat #112

stap 5: lezing ontvangen sensor
Als (2 < = Wire.available()) / / als twee bytes ontvangen
{
lezen = Wire.read(); Ontvangen van hoge byte (overschrijft de vorige lezing)
lezen = lezing << 8; de hoge byte van de SHIFT te zijn van de hogere 8 bits
lezen | = Wire.read(); lage byte ontvangen als lagere 8 bits
retourneren van lezing;
}
keren 0;
}

DE CODE VAN DE VERWERKING-

importeren van processing.serial.*;
importeren van ddf.minim.*;

Minim minim;
AudioPlayer
AudioPlayer in2;
AudioPlayer 3;
AudioPlayer in4;
AudioPlayer in5;

Seriële myPort;
Hand van Boole = vals;

int r;

VOID Setup {}
grootte (800, 600);
Minim = nieuwe Minim(this);
in = minim.loadFile("god.mp3");
in2 = minim.loadFile("applaus.mp3");
3 = minim.loadFile("babygelach.mp3");
in4 = minim.loadFile("scheet.mp3");
in5 = minim.loadFile("muntje.mp3");

println(Serial.List());
String portName = Serial.list() [6];
myPort = nieuwe Serial (deze, portName, 9600);
Background(0);
r = 0;
}

VOID serialEvent (seriële myPort) {}

int inByte = myPort.read();

println(inByte);

Als (inByte == 102 & & hand == false) {}

for (int i = 0; ik < 9000; i ++) {}
int r = int (random(1, 4));
println(r);
hand = true;
println(hand);
// }

Als (r == 1) {}
in.Play();
}
anders als (r == 2) {}
IN2.Play();
}
anders als (r == 3) {}
in3.Play();
}
anders als (r == 4) {}
in4.Play();
}
else {}

in5.Play();
}
}
Als (inByte == 101) {}
hand = false;
println(hand);
}

}

VOID draw() {}
}

VOID stop()
{
in.Close();
Minim.stop();

Super.stop();
}

Labels: Arduino, Automaat

Gerelateerde Artikelen

Onderwater muziekinstrumenten: geluid uit water

Onderwater muziekinstrumenten: geluid uit water

Laten we bouwen een muziekinstrument dat geluid van trillingen in vloeistof maakt!Voor de eerste keer in de menselijke geschiedenis geven we water een "stem".Ik herinner mij uit mijn jeugd, vertelde onze kleuterschool leraar ons:"Er zijn 3
Maken uw OP-1 een stuk speelgoed

Maken uw OP-1 een stuk speelgoed

De OP-1 is een krachtige synthesizer en sampler. Het is ook klein en dus goed gebouwd dat kinderen veilig kunnen met het spelen, Prak de knoppen en een ontploffing hebben. Een favoriet spel OP-1 ouders is om te genieten van de kinderen zingen, het mo
Psychische waarzegster - een automaat die de geest van Twitter leest

Psychische waarzegster - een automaat die de geest van Twitter leest

Griezelig kermis attractie en Twitter App!De psychische Hive-Mind Fortune Teller is een kermis arcade-type attractie die uw fortuin kan vertellen. Het is zelfs beter dan dat, hoewel - ook een web-verbonden Twitter toepassing die kan oogsten tweets en
Slimme automaat

Slimme automaat

Gebaseerd op Wiki definitie:"Dynamische prijzen is een prijsstrategie" in welke bedrijven zeer flexibele prijzen voor producten of services die zijn gebaseerd op de huidige markteisen vaststellen".Veel bedrijven, met name op gebieden zoals
Geluid detectie-RGB-lamp met behulp van Arduino

Geluid detectie-RGB-lamp met behulp van Arduino

HalloOm te beginnen met is dit project nog niet klaar!In dit project ben ik een lamp maken met meerdere kleuren met RGB-LED's. Mijn idee is om te proberen te laten van de lamp veranderen van kleur als het detecteert een geluid in het gebied. Als u va
Geluid Alarm Clock Light Sensing

Geluid Alarm Clock Light Sensing

Allereerst wil ik zeggen dat dit een cool project voor elk willekeurig bereik van vaardigheidsniveau. Als u een beginner met Arduino bent en nerveus over complexiteit zijn moedig ik u dit een poging geven zoals ik om zo behulpzaam proberen zal mogeli
Automaat

Automaat

Dit is een complex maar waard redstone vending machine. U plaatst een emerald in de bodem en klik op de knop onder het object frame te krijgen wat er in het object frame.Geïnspireerd door Mr. rivierkreeftStap 1: Stap 1: het krijgen van de materialenJ
Elektronische LEGO DL-44 Blaster (licht & geluid)

Elektronische LEGO DL-44 Blaster (licht & geluid)

Update: dit project is nu beschikbaar op LEGO ideeën --zo worden zeker te steunen als u zou willen zien verkocht in winkels ooit!Oorspronkelijk gebouwd voor Star Wars dag 2014, presenteer ik u een project dat ik heb voortdurend herzien en maken van t
Sennheiser HD201 + goedkope oorkappen = perfect geluid bewijs vlakke natuurlijke hoofdtelefoon & goedkoop ook!

Sennheiser HD201 + goedkope oorkappen = perfect geluid bewijs vlakke natuurlijke hoofdtelefoon & goedkoop ook!

Nou ik had oude sennheiser HD201 hoofdtelefoon, begon ik haten het spoedig na het kopen van aangezien het geluid plat, laag op bas was. Ik was op zoek naar nieuwe hoofdtelefoons, toen kwam ik dit idee van het combineren van oorkappen en hoofdtelefoon
Laser Spirograph geluid Visualizer (LSSV)

Laser Spirograph geluid Visualizer (LSSV)

Voor dit project waren wij belast met de bouw van één of ander soort geluid visualisatie apparaat voor een concert als onderdeel van een outreach-activiteiten voor ons onderzoekcentrum. De slip waren drie eenheden van het apparaat nodig zijn en dat d
Het geluid Sack - een draagbare rugzak versterker

Het geluid Sack - een draagbare rugzak versterker

De Sound zak (afbeelding hierboven) is een draagbare, licht gewicht, General-Purpose versterker. Ik mijn versterker speciaal ontworpen voor gitaristen, maar het is heel eenvoudig om dit te gebruiken als een versterker voor uw telefoon of iets anders.
Acryl dodecaëder spreker met geluid reactieve LED's

Acryl dodecaëder spreker met geluid reactieve LED's

Hallo, is mijn naam Charlie Schlager. Ik ben 15 jaar oud, naar de Fessenden School in Massachusetts. Deze luidspreker is een zeer leuke bouwen voor elke DIYer op zoek naar een cool project. Ik bouwde deze luidspreker voornamelijk in het Fessenden inn
De Victoriaanse geluid-buis... Een Steampunk Mp3-speler

De Victoriaanse geluid-buis... Een Steampunk Mp3-speler

De Victorian geluid-buis is een Steampunk Mp3-speler met gemotoriseerde bedrijf armen en geluid-Light-Control. De buis ligt op een houder en twee armen van messing houden de buis aan beide zijden. Zet een schakelaar en de armen scheiden de buis.Stap
Het invoeren van de wedstrijd van de kunst van geluid

Het invoeren van de wedstrijd van de kunst van geluid

muziek is absoluut essentieel voor creativiteit - het inspireert van nieuwe ideeën, helpt ons om te maken en te bouwen, en biedt een soundtrack voor het leven.Dat is waarom we hebben samen metZalytron,Digitale muziek makenenBleep Labs om u de Wedstri