Déclencheur sonore - Raspberry Pi 3

L'objectif

Mise en place d'un déclencheur pilotant l'appareil photo ou des flashs grâce à un Raspberry Pi.

Matériels

Logiciels

  • Raspian Noobs
  • Python
#installation des librairie adafruit
sudo apt-get update
git clone https://github.com/adafruit/Adafruit_Python_GPIO.git
cd Adafruit_Python_GPIO
sudo python setup.py install

#installation des librairie adafruit pour écran OLED SSD
sudo python -m pip install --upgrade pip setuptools wheel
sudo pip install Adafruit-SSD1306

      Le principe

      Le but de ce montage est de créer un programme qui va permettre de déclencher au choix, un flash ou un appareil photo grâce au son d'un événement extérieur.

      Ce procédé est très utile pour la photo Haute Vitesse (ou High Speed) car il va permettre de pouvoir capturer des photos à des temps très spécifiques. Exemple, l'éclatement d'un ballon, pour avoir une photo intéressante avec encore le latex en train de se rétracter, cela va se jouer à 10ms. Il est donc important de pouvoir contrôler le délai dans lequel on va déclencher nos flashs.

      Montage

      Suivez le montage ci-dessus en respectant les branchements sur les bons Pins de sortie de votre Raspberry Pi.

      Vous pouvez ensuite connecter le Relais  à ce que vous voulez déclencher, votre Appareil photo, ou le flash en direct, ou encore un déclencheur sans fil de flash.

      SI vous n'avez pas de prise synchro comme moi ^^ on peut bidouiller le sabot du déclencheur afin que celui ci se déclenche et déclenche donc les flashs de votre installation.

      Il faut simplement que les la Pin la plus éloignée (qui se rétracte) soit reliée au sabot métallique du côté. Voir schéma ci-dessus.

      On va donc utiliser un ziplock afin de sécuriser les 2 fils de manière temporaire et pouvoir ensuite les relier au Relais 5V. Voir l'image ci dessous.

      Vous pouvez ensuite, pour tester si votre connexion se fait correctement toucher les 2 fils à l'extrémité, cela devrait déclencher les flashs (et surtout la diode du déclencheur passe au rouge). Vous savez alors que votre connexion est faite.

      Le code

      On va maintenant placer le code sur le Raspberry Pi.

      Connectez vous sur votre Raspberry Pi, soit en ssh (connexion à distance) soit en local. Je pars du principe que vous savez un minimum utiliser votre Pi ;)

      Si vous ne savez pas vraiment comment installer Raspian voici un début de réponse
      Et le reste des commandes sera fait au travers d'un connexion ssh. Car l'intérêt  de la version 3 du Raspberry est sa connexion Wifi, qui vous permet de tout faire à distance depuis votre poste de travail.

      Connecter vous à votre Pi

      # utiliser l'adresse de votre pi
      ssh pi@192.168.1.13

      Créer un nouveau fichier sound.py dans le répertoire Home de votre utilisateur (pi le plus souvent)

      # on se dirige dans le répertoire de votre home
      cd ~
      # on télécharge la source du fichier sound.py
      wget https://git1.sneo.fr/sneo/sneotrigger/raw/master/sound.py

      Vous pouvez retrouver le code source : sound.py

      Pour tester le code

      python sound.py

      Modifications V1.1

      J'ai ajouté la possibilité de configurer une peu le programme afin d'éviter de toucher au code.

      Désormais vous pouvez lancer le programme sans écran (-s off), sans encodeur rotatif (-r off) et vous pouvez configurer l'incrément de délais (-i 2) en ms que vous souhaitez et le délais initial (-d 50) en ms.

      python sound.py -s off -r on -increment 5
      python sound.py -screen on -rotary off
      
      #délai de base à 50ms
      python sound.py -delai 50

       

      Potentiomètre

      Vous pouvez désormais tourner l'encodeur rotatif afin d'augmenter le délai de déclenchement du relais 5V, chaque "tick" augmente de 2ms par défaut.

      Le capteur Microphone dispose d'un potentiomètre qui va vous permettre de régler la sensibilité de celui-ci. Vous pouvez donc définir qu'elle est la limite de son qui va déclencher le relais 5V en tournant la la petite vis  sur le potentiomètre bleu.

       

      Lorsque vous lancez le programme, voici le genre de retour que vous obtenez en tournant l'encodeur rotatif et en claquant vos doigts pour déclencher le relais 5V.

      Delaying relay by 0 ms
      Delaying relay by 10.0 ms
      Delaying relay by 20.0 ms
      Delaying relay by 30.0 ms
      Delaying relay by 40.0 ms
      Delaying relay by 50.0 ms
      Delaying relay by 60.0 ms
      Delaying relay by 70.0 ms
      Delaying relay by 80.0 ms
      Delaying relay by 90.0 ms
      Delaying relay by 100.0 ms
      Delaying relay by 110.0 ms
      Delaying relay by 120.0 ms
      Delaying relay by 130.0 ms
      1000
      - Sound Detected! HIGH
      Delaying relay by 130.0 ms
      
      

       

      Augmenter la vitesse de votre affichage OLED

      Pour de meilleurs performances, il est préférable de booster un peu le cœur I2C à 1Mhz. Par défaut celui ci sera à 100Khz ou 400Khz. Ce qui parfois peut être assez lent.

      sudo nano /boot/config.txt

      Ajouter à la fin du fichier la ligne

      dtparam=i2c_baudrate=1000000

       

      Lancement automatique du programme

      Désormais, il ne reste plus qu'à déclarer dans le fichier /etc/rc.local que vous souhaitez lancer le programme au démarrage du Pi (pratique car vous n'avez alors plus besoin de vous connecter à l'interface).

      sudo nano /etc/rc.local

      Ajouter la ligne suivante

      ...
      
      #à placer juste avant le exit 0
      sudo python /home/pi/sound.py
      
      exit 0

      ET voilà, c'est terminé, vous n'avez plus qu'à imaginer les photos que vous allez pouvoir réaliser avec ce genre de montage.

      Réglages de votre appareil photo

      Maintenant que votre programme fonctionne parlons un peu des paramètre de votre appareil.

      C'est assez simple, on va utiliser la technique de l'Open Flash. Pour cela il faut que vous soyez dans le noir car on va faire une pose longue, et c'est le flash qui va imprimer l'image que vous souhaitez sur le capteur de l'appareil.

      il est important de tester donc votre pièce "noire" avec les réglages sans les flashs.

      Mes réglages : Temps de pose 2 secs - ISO 250 - Ouverture f5.

      J'ai aussi 2 flashs montés dans les sotfboxs de 120cm. les flashs sont en manuel, leur puissance au minimum (ici 1/128) afin de figer au maximum la scène. La lumière d'un flash à sa puissance minimum sera toujours plus rapide que votre caméra, même si celle ci peut monter à 1/8000s.

      Selon le site Yongnuo, sur le YN 560IV, la durée minimale du flash serait d'environ 1/20 000s. Celui peut varier selon les modèles.

      les flashs se trouvent sur les côtés du ballon.