Arduino tapis rouge entrée

entrée tapis rouge

Ce projet permet de créer une entrée remarquée. Il détecte vous marcher dans et joue une chanson d’entrée. Marcher dans la pièce avec votre chanson préférée de starwars se joue pour vous. Vous devrez également installer la bibliothèque de ton trouvée à :
http://Rogue-code.googlecode.com/files/Arduino-Library-Tone.zip

D’aide pour installer les bibliothèques, aller à :
http://code.google.com/p/Rogue-code/wiki/InstallingArduinoLibraries

Composants nécessaires :

1 x haut-parleur
1 x Arduino
1 x pain Conseil
1 x récepteur IR
1 x 470 Ohm résistance
1 x 220 ou résistance de 100 ohms
Fils

Composants peuvent être trouvés à http://egrobotics.com/store/
Ce projet et carte Arduino et IR Add-on Kit

www.EGRobotics.com

Le Code :
Toutes les chansons sont commentés dehors avant de télécharger choisir la chanson que vous souhaitez en supprimant
le "/ /" devant lui. Trouver plus de tons à http://code.google.com/p/roguecode/wiki/ToneLibraryDocumentation
#include
Ton tone1 ;
#define OCTAVE_OFFSET 0
note d’int [] = {0,
NOTE_C4, NOTE_CS4, NOTE_D4, NOTE_DS4, NOTE_E4, NOTE_F4, NOTE_FS4, NOTE_G4,
NOTE_GS4, NOTE_A4, NOTE_AS4, NOTE_B4, NOTE_C5, NOTE_CS5, NOTE_D5, NOTE_DS5, NOTE_E5, NOTE_F5, NOTE_FS5, NOTE_G5,
NOTE_GS5, NOTE_A5, NOTE_AS5, NOTE_B5,
NOTE_C6, NOTE_CS6, NOTE_D6, NOTE_DS6, NOTE_E6, NOTE_F6, NOTE_FS6, NOTE_G6,
NOTE_GS6, NOTE_A6, NOTE_AS6, NOTE_B6,
NOTE_C7, NOTE_CS7, NOTE_D7, NOTE_DS7, NOTE_E7, NOTE_F7, NOTE_FS7, NOTE_G7,
NOTE_GS7, NOTE_A7, NOTE_AS7, NOTE_B7
};
char * chanson = "The
Simpsons:d=4,o=5,b=160:c.6,E6,f#6,8a6,g.6,E6,C6,8a,8F#,8F#,8F#,2g,8p,8p,8F#,8F#,8F#,8g,a#.,8C6,8
C6, 8c 6, c6 ";
char * chanson =
"Indiana: d = 4, o = 5, b = 250:e, 8p, 8f, 8 g, 8p, 1C 6, p. 8, d, 8p, 8e, 1f, p., g, p 8, 8 a, 8 b, 8p, 1f6, p, a, 8 b, 2 c 6, 2 d 6, 8p, 2e
6,e,8p,8F,8g,8p,1C6,p,D6,8p,8e6,1F.6,g,8p,8g,e.6,8p,D6,8p,8g,e.6,8p,D6,8p,8g,f.6,8p,E6,8p,8D6,2C6 ";
char * chanson =
« TakeOnMe:d = 4, o = 4, b = 160:8f #5, 8f #5, 8f #5, 8d, 5, 8 p. 8 b, 8, 8e5, 8p, 8e5, 8p, 8e5, 8 g #5, 8 g #5, 8 a 5, 8b5, 8 a
5, 8 a 5, 8 a 5, 8e5, 8p, 8D 5, 8p, 8f #5, 8p, 8f #5, 8p, 8f #5, 8e5, 8e5, 8f #5, 8e5, 8f #5, 8f #5, 8f #5, 8D 5, 8p, 8 b, 8p 8e5, 8
p, 8e5, 8p, 8e5, 8g #5, 8g #5, 8 a 5, 8b5, 8 a 5, 8 a 5, 8 a 5, 8e5, 8p, 8D 5, 8p, 8f #5, 8p, 8f #5, 8p, 8f #5, 8e5, 8e5 ";
char * chanson =
"Entertainer:d=4,o=5,b=140:8d,8d#,8e,c6,8e,c6,8e,2c.6,8c6,8d6,8d#6,8e6,8c6,8d6,e6,8b,d6,2c6,p,8
d,8d#,8e,C6,8e,C6,8e,2C.6,8p,8a,8g,8F#,8a,8C6,E6,8D6,8C6,8a,2D6 ";
char * chanson =
« Muppets:d = 4, o = 5, b = 250:c6, c6, a, b, 8 a, b, g, p, c6, c6, a, 8 b, 8 a, 8 p, g., p, e, e, g, f, 8e, f, 8c 6, 8c, 8d, e, 8e, 8F, 8p, 8
e, g, 2p, c6, c6, a, b, 8 a, b, g, p, c6, c6, a, 8 b, a, g., p, e, e, g, f, 8e, f, 8c 6, 8c, 8d, e, 8e, d, 8d, c ";
char * chanson =
« Xfiles:d = 4, o = 5, b = 125:e, b, a, b, d6, 2 b., 1 p, e, b, a, b, e6, 2 b, 1 p, g6, f #6, e6, d6, e6, 2 b, 1 p, g6, f #6, e6, d6, f #6,2
b., 1 p, e, b, a, b, d6, 2 b., 1 p, e, b, a, b, e6, 2 b., 1 p, e6, 2 b. ";
char * chanson =
"Looney: d = 4, o = 5, b = 140:32 p, c6, 8f6, 8e6, 8D 6, 8c 6, a., 8c 6, 8f6, 8e6, 8J 6, 8D #6,e.6,8e6,8e6,8c6,8d6,8c6,
8e6, 8c 6, 8D 6, 8 a, 8c, 6, 8 g, 8 a #, 8 a, 8f ";
char * chanson =
« 20thCenFox:d = 16, o = 5, b = 140:b, 8 p, b, b, 2 b, p, c6, 32P, b, 32P, c6, 32P, b, 32P, c6, 32P, b, 8p, b, b, b, 32 p, b, 32
p, b, 32p, b, 32P, b, 32P, b, 32p, b, 32P, g #, 32P, a, 32p, b, 8p, b, b, 2 b, 4P, 8F, 8 g #, 8 b, 1c n ° 6, 8f #, 8 a, 8C n ° 6, 1e6, 8 a, 8c
#6, 8e6, 1e6, 8 b, 8 g #, 8 a, 2 b ";
char * chanson =
"Bond: d = 4, o = 5, b = 80:32 p, 16 ch. #6, 32d #6, 32d #6, 16D #6, 8D #6, 16 c# 6, 16 c# 6, 16 c# 6, 16 c# 6, 32e6, 32e6, 16
E6, 8e6, 16D #6, 16D #6, 16D #6, 16 c# 6, 32d #6, 32d #6, 16D #6, 8D #6, 16 c# 6, 16 c# 6, 16 c# 6, 16 c# 6, 32e6, 32e6, 1
6E6,8e6,16D#6,16d6,16C#6,16C#7,c.7,16g#6,16F#6,g#.6 ";
char * chanson =
« MASH:d = 8, o = 5, b = 140:4a, 4 g, f #, g, p, f #, p, g, p, f #, p, 2e., p, f #, e, 4f #, e, f #, p, e, p, 4 d., p, f #, 4e, d, e, p, d, p, e, p, d
, p, 2 c#., p, d, c#, 4d, c#, d, p, e, p, 4f #, p, a, p, 4 b, a, b, p, a, p, b, p, 2 a., 4p, a, b, a, 4 b, a, b, p, 2 a., a, 4f #, a,b,p,d6,p,4e.6, d
6, b, p, a, p, 2 b ";
char * chanson =
« StarWars:d = 4, o = 5, b = 45: 32 p 32f #, 32f #, 32f #, 8 b., 8f #.6, 32e6, 32d #6, 32 c# 6,8b.6,16f #.6, 32e6, 32d #6,3
2C#6,8B.6,16F#.6,32E6,32d#6,32E6,8C#.6,32F#,32F#,32F#,8B.,8F#.6,32E6,32d#6,32C#6,8B.6,16F#.6,3
2E6,32d#6,32C#6,8B.6,16F#.6,32E6,32d#6,32E6,8c#6 ";
char * chanson =
« GoodBad:d = 4, o = 5, b = 56:32 p, 32 a #, 32d #6, 32 a #, 32d #6, 8 a #., 16f #., 16 g #., d #, # 32 a, 32d #6, 32 a #, 32d #6,
8 a #., 16f #., 16 g #., c# 6, 32 a #, 32d #6, 32 a #, 32d #6, 8 a #., 16f #., 32f., 32d #., c#, 32 a #, 32d #6, 32 a #, 32d #6, # 8 a.,
16 g #., d #";
char * chanson =
« TopGun:d = 4, o = 4, b = 31:32 p, 16 c#, 16 g #, 16 g #, 32f #, 32f, 32f #, 32f, 16 d #, 16 d #, 32 c#, # 32d, 16f, 32d #, 32f, 16f #, 32f, 32 c#, 16f, d #, 16 c#, 16 g #, 16 g #, 32f #, 32f, 32f #, 32f, 16 d #, 16 d #, 32 c#, # 32d, 16f, # 32d, 32f, 16f #, 3
2F, 32 c#, g #";
char * chanson = "ATeam:d = 8, o = 5, b = 125:4 d #6, un #, 2d #6, 16p, g #, # 4 a, 4 d #., p, g 16, 16 a #, d #6, un #, f6, 2d #6, 16p, c#.6, 16 c 6, 16 a #
, g #., 2 a #";
char * chanson =
« Flinstones:d = 4, o = 5, b = 40: 32 p, 16f6, # 16 a, 16 a #6, 32 g 6, 16f6, 16 a #., 16f6, 32d #6, 32 d 6, 32 d 6, 32d #6, 32f
6, # 16 a, 16C 6, d6, 16f6, 16 a #., 16 a #6, 32g 6, 16f6, 16 a #., 32f6, 32f6, 32d #6, 32d 6, 32d 6, 32d #6, 32f6, 16 a #, 16
C6,a#,16a6,16D.6,16A#6,32a6,32a6,32g6,32F#6,32a6,8g6,16g6,16C.6,32a6,32a6,32g6,32g6,32f6,32e
6, 32g 6, 8f6, 16f6, 16 a #., 16 a #6, 32g 6, 16f6, 16 a #., 16f6, 32d #6, 32d 6, 32d 6, 32d #6, 32f6, 16 a #, 16c.6,32d6, 3
2D#6,32f6,16a#,16C.6,32d6,32d#6,32f6,16A#6,16c7,8A#.6 ";
char * chanson =
« Jeopardy: d = 4, o = 6, b = 125:c, f, c, f5, c, f, c 2, c, f, c, f, a., 8 g, 8f, 8e, 8d, 8 c#, c, f, c, f5, c, f, c 2, f., 8d, c, #5, a5, g5, f5,
p,d#,g#,d#,g#5,d#,g#,2D#,d#,g#,d#,g#,c.7,8a#,8g#,8g,8F,8e,d#,g#,d#,g#5,d#,g#,2D#,g#.,8F,d#,c#,c,p,
# 5, p, g.5 #, d #, g #";
char * chanson =
« Gadget: d = 16, o = 5, b = 50:32d #, 32f, 32f #, 32 g #, un #, f #, a, f, g #, f #, # 32d, 32f, 32f #, 32 g #, un #, d #6, 4D 6, 32d #, 3
2F, 32f # 32 g #, #, f #, a, f, g #, f #, 8D #";
char * chanson =
« Smurfs:d = 32, o = 5, b = 200:4 c# 6, 16p, 4f #6, p. 16 c# 6, 8D #6, p, 8 b, p, 4 g #, 16p, 4C #6, p, 16 a #, p, 8f #, p, 8 a #, p,
4 g #, 4P, g #, p, a #, p, b, p. c6, 4C #6, 16p, 4f #6, p, 16 c# 6, p, 8D #6, p, 8 b, p, 4 g #, 16p, 4C #6, p, 16 a #, p, 8 b, p, 8f, p, 4f
#";
char * chanson =
« MahnaMahna:d = 16, o = 6, b = 8 a, b5, c., 125:c# #.5, 8f., 4 g #, un #, g., d #, 8 4P, c#, c, b5, 8 a #.5, 8f., g #., 8 a #., 4 g, 8
p, c#, c, b5, 8 a #.5, 8f., 4 g #, f, g., 8D #., f, g., 8D #., f, g 8, 8D #., f, 8g, d #, 8c, #5, 8D #., 8D #., 4 d #, 8D #. ";
char * chanson =
"LeisureSuit:d=16,o=6,b=56:f.5,f#.5,g.5,g#5,32a#5,f5,g#.5,a#.5,32f5,g#5,32a#5,g#5,8c#.,a#5,32c#,
A5, un.5 #, c#., 32a5, #5, 32 c#, d #, 8e, c#., f., f., f., f., f, 32e, d #, 8d, un.5 #, e, 32f, e, 32f, c#, d #., c# ";
char * chanson =
« MissionImp:d = 16, o = 6, b = 95:32d, 32d #, # 32d, 32d, 32d, 32d #, # 32d, 32d, 32d, 32d, 32d #, 32e, 32f, 32f #, 32
g, g, 8p, g, 8p, a #, p, c7, p, g, 8p, g, 8p, f, p, f #, p, g, 8p, g, 8p, a #, p, c7, p, g, 8p, g, 8p, f, p, f #, p, a #, g, 2d, 32P, un #, g, c 2 #, 3
2p, un #, g, 2 c, 5 #, 8 c, 2 p, 32P, un n ° 5, g5, 2f #, 32P, un n ° 5, g5, 2f, 32P, un #5, g5, 2e, d #, 8j ";
#define IRsensorPin 6
#define IRledPin 5
#define D13ledPin 13
void IR38Write() {}
pour (int i = 0; i < = 384; i ++) {}
digitalWrite (IRledPin, élevé) ;
delayMicroseconds(13) ;
digitalWrite (IRledPin, basse) ;
delayMicroseconds(13) ;
}
}
Sub setup(void)
{
Serial.Begin(9600) ;
tone1.Begin(3) ;
pinMode (IRledPin, sortie) ;
digitalWrite (IRledPin, basse) ;
pinMode (D13ledPin, sortie) ;  digitalWrite (D13ledPin, basse) ;
}
#define isdigit(n) (n > = « 0 » & & n < = « 9 »)
Sub play_rtttl(char *p)
{
default_dur octets = 4 ;
default_oct octets = 6 ;
int bpm = 63 ;
int num ;
wholenote long ;
longue durée ;
note de l’octet ;
échelle d’octets ;
tandis que (* p! = ':') p ++ ;    ignorer le nom
p ++ ;                     sauter ':'
obtenir la durée par défaut
Si (* p == a ')
{
p ++ ; p ++ ;              sauter "d ="
num = 0 ;
while(IsDigit(*p))
{
num = (num * 10) + (* p ++ - « 0 ») ;
}
Si default_dur (num > 0) = num ;
p ++ ;                   Passez par des virgules
}
Serial.Print ("ddur:") ; Serial.println (default_dur, 10) ;
obtenir l’octave par défaut
Si (* p == ' o ')
{
p ++ ; p ++ ;              sauter "o ="
num = * p ++ - « 0 » ;
Si (num > = 3 & & num < = 7) default_oct = num ;
p ++ ;                   Passez par des virgules
}
Serial.Print ("doct:") ; Serial.println (default_oct, 10) ;
obtenir les BPM
Si (* p == « b »)
{
p ++ ; p ++ ;              sauter "b ="
num = 0 ;
while(IsDigit(*p))
{num = (num * 10) + (* p ++ - « 0 ») ;
}
BPM = num ;
p ++ ;                   sauter du côlon
}
Serial.Print ("bpm:") ; Serial.println (bpm, 10) ;
BPM exprime généralement le nombre de noires par minute
WholeNote = (60 * 1000L / bpm) * 4 ;  C’est le moment pour la note entière (en millisecondes)
Serial.Print (« wn: ") ; Serial.println (wholenote, 10) ;
maintenant commencer à boucle Remarque
while(*p)
{
tout d’abord, obtenir durée de note, si disponible
num = 0 ;
while(IsDigit(*p))
{
num = (num * 10) + (* p ++ - « 0 ») ;
}

if(num) durée = wholenote / num ;
d’autre durée = wholenote / default_dur ;  Nous devons vérifier si nous sommes une note pointée après
maintenant obtenir la note
Note = 0 ;
Switch(*p)
{
case « c » :
Note = 1 ;
rupture ;
affaire aurait ":
Note = 3 ;
rupture ;
Case « e » :
Note = 5 ;
rupture ;
case « f » :
Remarque = 6 ;
rupture ;
case « g » :
Remarque = 8 ;
rupture ;
case « a » :
Remarque = 10 ;
rupture ;
case « b » :
Remarque = 12 ;        rupture ;
case « p » :
par défaut :
Note = 0 ;
}
p ++ ;
maintenant, obtenez facultatif « # » sharp
Si (* p == « # »)
{
Remarque ++ ;
p ++ ;
}
maintenant, obtenez facultatif '.' note pointée
Si (* p == '.')
{
+= Durée Durée/2 ;
p ++ ;
}

if(IsDigit(*p))
{
Scale = * p - « 0 » ;
p ++ ;
}
d’autre
{
Scale = default_oct ;
}
échelle += OCTAVE_OFFSET ;
Si (* p == «, »)
p ++ ;       Passez par des virgules pour la note suivante (ou que nous soyons à la fin)
Jouez maintenant la note
if(note)
{
Serial.Print ("lecture:") ;
Serial.Print (échelle, 10) ; Serial.Print(' ') ;
Serial.Print (note, 10) ; Serial.Print ("(") ;
Serial.Print (notes [(scale-4) * 12 + note], 10) ;
Serial.Print(")") ;
Serial.println (durée, 10) ;
tone1.Play (notes [(scale-4) * 12 + note]) ;
Delay(Duration) ;
tone1.Stop() ;
}
d’autre
{Serial.print ("faire une pause:") ;
Serial.println (durée, 10) ;
Delay(Duration) ;
}
}
}
Sub loop(void)
{
IR38Write() ;
Si (digitalRead(IRsensorPin)==HIGH) {}
digitalWrite (D13ledPin, élevé) ;
play_rtttl(Song) ;
Delay(1000) ;
}
else {}
digitalWrite (D13ledPin, basse) ;
}
Delay(100) ;
}

La vidéo :

Aller à pour plus de plaisir projets !

Articles Liés

Tapis rouge chandeliers

Tapis rouge chandeliers

Lumières ! Appareil photo ! Action ! Un excellent moyen pour décorer une fête sur le thème du tapis rouge est de guider les invités avec des chandeliers fantaisies. Si vous recherchez des chandeliers en ligne vous pouvez trouver qu'ils sont très coût
Beauté tapis rouge : Comment obtenir la couleur de cheveux de célébrités à la maison

Beauté tapis rouge : Comment obtenir la couleur de cheveux de célébrités à la maison

vous n'aimez pas la couleur des cheveux riche les stars ont sur le tapis rouge ? Vous pouvez aussi ce même regard riche et glamour à la maison !Étape par étape :1. choisir une couleur proche de votre propre ombre. Améliorez votre ombre, ne se déchaîn
Arduino intermédiaire : Entrées et sorties

Arduino intermédiaire : Entrées et sorties

Continuant de mon Intro d'Arduino post, ce Instructable ira sur certains sujets un peu plus avancés avec Arduino, relative au contrôle et la gestion de nombreuses entrées et sorties. La classe suivante décrit comment connecter des entrées de l'Arduin
Serveur web de Arduino feu rouge

Serveur web de Arduino feu rouge

à la place je travaille, nous utilisons xymon pour surveiller nos serveurs. Tous les services surveillés sont importants, mais nous voulions un indicateur distinct pour simplement montrer la santé globale des systèmes plus critiques. En outre, nous s
FlappyBird avec un ballon, de contrôler l’utilisation baromètre Arduino capteur d’entrée

FlappyBird avec un ballon, de contrôler l’utilisation baromètre Arduino capteur d’entrée

dans ce instructable nous allons créer un bouton de pression en entrée pour les jeux, qui est semblable à un bouton numérique normal mais au lieu d'écrire 1 ou 0 nous allons écrire la variation de pression que nous appuyer sur ou libérer et l'oiseau
Tapis rouge aspect

Tapis rouge aspect

Mon nom est Tony Vo. Je suis de Los Angeles. Il s'agit d'une robe, je m'assis et conçu sur le mien. Puis un jour, j'ai décidé d'accepter mon défi et transformer mon dessin en une forme de vie réelle. Me voici donc, avec la robe finie avec succès. Cet
Comment construire une voiture de Minecraft

Comment construire une voiture de Minecraft

Étape 1: roues Tout d'abord obtenir des blocs de charbon ou un bloc noir Placez les roues 3 blocs entre eux, puis les roues 1 l'écart dehorsEtape 2: La partie avant de la voiture Place une section sur 3 blocs et 3 blocs longtempsÉtape 3: Décorer le d
Système Ambilight pour chaque entrée connectés à votre téléviseur. WS2812B Arduino UNO Raspberry Pi

Système Ambilight pour chaque entrée connectés à votre téléviseur. WS2812B Arduino UNO Raspberry Pi

J'ai toujours voulu ajouter ambilight à mon téléviseur. Il est tellement cool ! J'ai finalement fait et je n'étais pas déçu !J'ai vu beaucoup de vidéos et de nombreux tutoriels sur la création d'un système Ambilight pour votre TV, mais je n'ai jamais
Communication Bluetooth entre Arduino, HTML et Android

Communication Bluetooth entre Arduino, HTML et Android

Bonjour à nouveau ! Tout d'abord, Merci à tous ceux qui utilisent mon projet - bricolage/créateurs, des designers et des étudiants, en particulier les personnes qui me soutient en donnant régulièrement des commentaires. Depuis mon dernier tutoriel, c
Guide du débutant pour Arduino

Guide du débutant pour Arduino

Après quelques années d'expérimentations avec Arduino, j'ai décidé que le moment est venu de partager les connaissances que j'ai acquis. Donc j'ai ici, il va, un guide pour Arduino, avec les bases nues pour les débutants et quelques explications plus
Arduino Powered Home

Arduino Powered Home

J'ai fait quelques mises à jour à cette instructable depuis août 2014 ***J'ai décidé de partager ces informations afin que cela pourrait aider d'autres personnes qui ont eu du mal à faire des choses semblables avec leur Arduino. J'ai récemment obtenu
Banc d’alimentation PSU de vieux ATX avec Arduino et moniteur LCD

Banc d’alimentation PSU de vieux ATX avec Arduino et moniteur LCD

Bonjour à tous et Bienvenue sur mon premier Instructable.J'ai toujours voulu un banc PSU pour faciliter l'accès à une source d'alimentation et quelque chose que je peux compter sur quand on travaille sur divers projets. J'ai voulu un bloc d'alimentat
Une Arduino Infrared contrôlé et Obstacle Avoidance Robot

Une Arduino Infrared contrôlé et Obstacle Avoidance Robot

Salut tout le monde,Cette Instructables est divisé en deux phases, qui le rend approprié pour les débutants et les concepteurs de robot intermédiaire.La première phase couvre l'utilisation de l'arduino nano Conseil seulement comme contrôleur. Avec ce
Main robotisée contrôlée par geste avec Arduino + saut Motion

Main robotisée contrôlée par geste avec Arduino + saut Motion

Bonjour à tous,Comme promis, j'ai fait une instruction complète étape par étape pour mon projet final universitaire !Tout d'abord : Désolé pour mon mauvais anglais ! Si quelque chose n'est pas clair, s'il vous plaît laisser un commentaire.La main est