Modifications

Aller à : navigation, rechercher

LSW-framboiseAudio

707 octets ajoutés, 19 juin 2014 à 08:10
aucun résumé de modification
{{Projet
<!--Header-->|name = LSW-framboiseAudio|status = production<!--Image-->Prototype|image =DSC_4676_s.jpg<!--General-->|description = lecteur audio déclenchant des samples lors du passage de spectateurs dans une exposition|license = GPL|contributeurs = Oli44|matériaux = [[materiau::RaspberryPi]]|categories =[[:Catégorie:appareils scéniques]]
|inspiration=yenapa
|ingrédients=RaspberryPi|url = https://projets.pingbase.net/lsw/|name=LSW-framboiseAudio|categories=appareils scéniques
}}
== Objectifs ==
* Puredata-extended version armhf pour la partie audio et l’algorithme de déclenchement
* Python pour la gestion du capteur via le GPIO
 
Une fois le Pi démarré, la session de l'utilisateur pi est ouverte , et le fichier ~/.bashrc est consulté. A la fin de ce fichier j'ai rajouté la ligne suivante:
 
touch /run/shm/flamenco; cd ~/flamenco; pd-extended -nogui -noadc -alsa lecteur-audio.pd & sudo python gpio.py &
 
Ce qui permet de créer un fichier vide en mémoire partagée (il sera ensuite modifié par le script python et lu par le patch Pd), puis de se déplacer dans le répertoire flamenco, de lancer le bon patch pd et enfin de lancer le script python avec les droits de super utilisateur pour accéder au GPIO. Les ; et les & sont primordiaux!
 
Le script Python teste la valeur du capteur toutes les 0,5 secondes. Il écrit cette valeur (0 = absence ou 1 = présence) dans un fichier texte stocké dans un espace de mémoire partagée (pour ne pas devoir écrire sur la SD => /run/shm/monfichier ).
Le patch audio tire au hasard un fichier audio (et ne tire jamais deux fois la même séquence à suivre), lance la lecture dudit fichier ce qui stoppe la lecture du fichier texte du capteur. A la fin de la lecture du fichier, une horloge d'une durée oscillant de façon aléatoire entre y et y + 1/3 y est lancée, avant de relancer la lecture du fichier texte du capteur (objet cyclone/drunk)
==== Valeurs par défaut ====
délai y à la fin de la lecture avant de relancer l'observation de présence : 90 secondes
==== code source: ====
https://gitorious.org/ci-git/base/source/503a4627a9a13edff8e8f208e40d3e308787a7de:expoFlao
 
Le code (manquant) Python est une version adaptée du code de Adafruit:
 
http://learn.adafruit.com/adafruits-raspberry-pi-lesson-12-sensing-movement/software
=== TODO list ===

Menu de navigation