Catégories
Liens
Ceci est une ancienne révision du document !
Réaliser plusieurs borne d'échange de livres à installer en ville. Ces bornes peuvent contenir aussi de l'électronique (exemple : PirateBox, deaddrop, système de lecture de son intéractif, automates…) et avoir une forme spéciale avec divers thématiques….
Structure réalisée rue d'Aubagne à coté de l'asile 404 avec Manu Morvan
Nous avons acheté des fer à bétons de 8mm , du scellement chimique au magasin de bricolage, et une plaque d'Acier Brut de 2mx1m x2mm chez http://www.descours-cabaud.com plus quelques disques pour la disqueuse pour une centaine d'euros. (48€ la plaque d'acier).
Quelques heures de disquage et de soudure à l'arc plus tard… la structure est prête a accueillir les livres.
On utilise un capteur ultrason et un lecteur mp3 pour déclencher un son quand un passant passe à coté de la borne.
On pourrai aussi certainement utilisé une ATTINY pour éviter d'utiliser une arduino, mais peut être le code aura besoin d'être éditer pour rajouter des mp3.
On produit un shield Arduino, avec la fraiseuse à commande numérique pour éviter des fils :
ps : il faut avoir la librairie DFPlayer_Mini_Mp3 installée
/* reso-nance numerique HC-SR04 Ping distance sensor start a mini DFPlayer_mini_MP3 track */ #include <SoftwareSerial.h> #include <DFPlayer_Mini_Mp3.h> #define trigPin 3 #define echoPin 2 #define led 11 #define led2 10 long randNumber; // void setup () { Serial.begin (9600); mp3_set_serial (Serial); //set Serial for DFPlayer-mini mp3 module mp3_set_volume (15); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(led, OUTPUT); pinMode(led2, OUTPUT); } // void loop () { // Ici on definit le nombre de mp3 dans la carte randNumber = random(3); long duration, distance; digitalWrite(trigPin, LOW); // Added this line delayMicroseconds(2); // Added this line digitalWrite(trigPin, HIGH); // delayMicroseconds(1000); - Removed this line delayMicroseconds(10); // Added this line digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); distance = (duration/2) / 29.1; // CONDITION DE LECTURE : si quelquechose passe a moins de 50cm du detecteur : declenchement du son if (distance <= 50 || distance <= 0){ mp3_play (randNumber); delay (10000); mp3_stop (); } else { mp3_stop (); } delay(500); } /* mp3_play (); //start play mp3_play (5); //play "mp3/0005.mp3" mp3_next (); //play next mp3_prev (); //play previous mp3_set_volume (uint16_t volume); //0~30 mp3_set_EQ (); //0~5 mp3_pause (); mp3_stop (); void mp3_get_state (); //send get state command 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); //set single loop void mp3_DAC (boolean state); void mp3_random_play (); */