Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
projets:bornesalivres:accueil [2015/03/16 16:51] resonance |
projets:bornesalivres:accueil [2018/01/27 12:10] marion [Borne à livres] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Borne à livres ====== | ====== Borne à livres ====== | ||
* Porteur du projet : Reso-nance + Asile 404 + Casse tête | * Porteur du projet : Reso-nance + Asile 404 + Casse tête | ||
- | * Date : printemps 2015 | + | * Date : 2016 |
* Licence : libre ! | * Licence : libre ! | ||
* Contexte : vie de quartier | * Contexte : vie de quartier | ||
* Fichiers : {{: | * Fichiers : {{: | ||
* Lien : lien vers un site éventuellement | * Lien : lien vers un site éventuellement | ||
+ | ===== 2D et 3D PRIMITIVES ===== | ||
+ | Cercle, carré, rectangle, sphère, cylindre, tore, cone, ... | ||
- | ===== Description ===== | + | {{.:primitives.png}} |
- | Réaliser plusieurs borne d' | + | |
- | Ces bornes peuvent contenir aussi de l' | + | |
- | **Structure réalisée rue d' | ||
- | {{ : | ||
===== Matériaux ===== | ===== Matériaux ===== | ||
Ligne 26: | Ligne 24: | ||
{{ : | {{ : | ||
- | ==== Systeme de lecture : ==== | + | ===== Systeme de lecture : ===== |
+ | |||
+ | "Les murs ont des oreilles, mais ça c’était avant... | ||
+ | maintenant ils ont aussi une bouche... | ||
+ | une bouche... pour vous faire ouvrir les yeux, | ||
+ | les yeux... lisant quelques lignes d'un livre, | ||
+ | un livre... déposé par un voisin, | ||
+ | un voisin... ou peut-être même vous, | ||
+ | vous... pour me faire ouvrir ma bouche ..." | ||
On utilise un capteur ultrason et un lecteur mp3 pour déclencher un son quand un passant passe à coté de la borne. | On utilise un capteur ultrason et un lecteur mp3 pour déclencher un son quand un passant passe à coté de la borne. | ||
* Capteur ultrason (4€), Arduino (20€), lecteur mp3(8€), carte microsd, petit hp (3€), 2 résistances 1kohm... | * Capteur ultrason (4€), Arduino (20€), lecteur mp3(8€), carte microsd, petit hp (3€), 2 résistances 1kohm... | ||
Ligne 38: | Ligne 45: | ||
- | === Code Arduino === | + | ===== Code Arduino |
ps : il faut avoir la [[http:// | ps : il faut avoir la [[http:// | ||
Ligne 49: | Ligne 56: | ||
| | ||
*/ | */ | ||
+ | |||
+ | // ----editez ces lignes : | ||
+ | int nombre_mp3 = 4; // nombre de mp3 sur la carte sd | ||
+ | int temps_mp3 = 3000; // temps max mp3 en msec | ||
+ | int volume_mp3 = 28; // volume du mp3 (0-30) | ||
+ | // | ||
+ | |||
#include < | #include < | ||
#include < | #include < | ||
- | |||
#define trigPin 3 | #define trigPin 3 | ||
#define echoPin 2 | #define echoPin 2 | ||
- | #define led 11 | ||
- | #define led2 10 | ||
- | long randNumber; | + | long randNumber |
- | // | + | int lastState = 0; |
+ | int lastSong = 0; | ||
void setup () { | void setup () { | ||
- | | + | |
- | mp3_set_serial (Serial); | + | mp3_set_serial (Serial); |
- | | + | |
pinMode(trigPin, | pinMode(trigPin, | ||
pinMode(echoPin, | pinMode(echoPin, | ||
- | pinMode(led, | ||
- | pinMode(led2, | ||
} | } | ||
- | + | ||
// | // | ||
void loop () { | void loop () { | ||
- | // Ici on definit le nombre de mp3 dans la carte | + | |
- | | + | // Ici on definit le nombre de mp3 dans la carte |
- | | + | randNumber = random(nombre_mp3)+1; |
- | long duration, distance; | + | |
+ | |||
+ | | ||
digitalWrite(trigPin, | digitalWrite(trigPin, | ||
delayMicroseconds(2); | delayMicroseconds(2); | ||
digitalWrite(trigPin, | digitalWrite(trigPin, | ||
- | // delayMicroseconds(1000); | + | |
delayMicroseconds(10); | delayMicroseconds(10); | ||
digitalWrite(trigPin, | digitalWrite(trigPin, | ||
duration = pulseIn(echoPin, | duration = pulseIn(echoPin, | ||
- | distance = (duration/ | + | distance = (duration/ |
+ | // en centimetre il faut diviser par 29.1 ici nous sommes en decimetre; | ||
+ | delay(200); | ||
- | // CONDITION DE LECTURE : si quelquechose passe a moins de 50cm du detecteur : declenchement du son | + | // CONDITION DE LECTURE : si quelquechose passe a moins de 60cm du detecteur |
- | if (distance <= 50 || distance | + | if (distance <= 8 && |
mp3_play (randNumber); | mp3_play (randNumber); | ||
- | delay (10000); | + | |
+ | | ||
+ | //fade-out à la fin... | ||
+ | mp3_set_volume (volume_mp3); | ||
+ | delay (temps_mp3); | ||
+ | mp3_set_volume (volume_mp3 - 5); | ||
+ | delay (1000); | ||
+ | mp3_set_volume (volume_mp3 - 10); | ||
+ | delay (1000); | ||
+ | mp3_set_volume (volume_mp3 - 15); | ||
+ | delay (1000); | ||
+ | mp3_set_volume (volume_mp3 - 20); | ||
+ | delay (1000); | ||
mp3_stop (); | mp3_stop (); | ||
+ | |||
} | } | ||
else { | else { | ||
mp3_stop (); | mp3_stop (); | ||
} | } | ||
- | delay(500); | + | |
+ | lastState = distance; // on memorise la derniere distance de la boucle... pour la comparer a celle d' | ||
+ | | ||
} | } | ||
- | + | ||
/* | /* | ||
| | ||
- | mp3_play (5); //play " | + | mp3_play (5); //play " |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | void mp3_get_state (); // |
- | | + | void mp3_get_volume (); |
- | | + | void mp3_get_u_sum (); |
- | | + | void mp3_get_tf_sum (); |
- | | + | void mp3_get_flash_sum (); |
- | | + | void mp3_get_tf_current (); |
- | | + | void mp3_get_u_current (); |
- | | + | void mp3_get_flash_current (); |
- | | + | void mp3_single_loop (boolean state); |
- | | + | void mp3_DAC (boolean state); |
- | | + | void mp3_random_play (); |
*/ | */ | ||
+ | |||
+ | |||
+ | |||
</ | </ | ||
===== Photos ===== | ===== Photos ===== |