Le site des chasseurs d'orages francophones
Carte d'impact de foudre mise à jour toutes les 30 minutes - chasseurs-orages.com


Initié par les chasseurs d'orages francophones, ce forum est le fruit d'une collaboration entre plusieurs sites spécialisés. Car au fond nous partageons tous une même passion: l'amour de la nature. "le chasseur d'orages se fait l'humble témoin de la nature et reconsidère sa place dans un monde tronqué, où l'espèce humaine croit régner."

Chasseurs d'orages:   Blogs   Calendrier 2011   Dossier sécurité   Site chasseurs d'orages   Contact   |   Membres   Spots


 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 


Détecteur/déclencheur maison à base d'arduino

 
Poster un nouveau sujet   Répondre au sujet    Forum chasseurs d'orages Index du Forum -> Equipement du chasseur d'orages
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
Florent Pin



Inscrit le: 31 Juil 2015
Messages: 55
Localisation - Location: Palaiseau

MessagePosté le: Sam Oct 31, 2015 14:56    Sujet du message: Détecteur/déclencheur maison à base d'arduino Répondre en citant

Bonjour Smile

Comme indiqué dans mon message de présentation, j'ai fait un détecteur de foudre maison à base de microcontrôleur (plateforme arduino) et j'écris donc ce post pour partager cela.

L'idée était de faire quelque chose de simple, accessible techniquement et bas coût pour qui a déjà un minimum de matériel (fer à souder, pinces etc.) mais sans être franchement équipé pour l’électronique (ce qui est mon cas). On trouve dans le commerce des appareils qui vont entre 70 et 200€ d'après ce que j'ai vu (s'il y a moins cher, n'hésitez pas à me le dire ^^ ). Ce montage revient à une vingtaine d'euro de composants uniquement (ça peut vite grimper bien sûr si on a besoin d'équipement) en s'arrangeant pour optimiser les frais de port en commandant sur ebay ou aliexpress par exemple.

Techniquement le principe est très simple, un montage détecteur est réalisé avec un phototransistor et une résistance. Plus le phototransistor reçoit de lumière, plus il produit de courant. Ce courant traversant une résistance, il en augmente la tension à ses bornes. On utilise alors un microcontrôleur qui vient inspecter en permanence la tension aux bornes de cette résistance. Si un changement de tension brusque est détecté, alors le microcontrôleur déclenche l'appareil.
Le déclenchement de l'appareil est réalisé par un optocoupleur qui est une sorte d'interrupteur commandé et qui permet une isolation électrique complète entre 2 parties d'un circuit. Cela permet de protéger l'appareil photo contre un quelconque problème électrique.

Voici une vue du montage sur breadboard et le circuit complet :
(cliquer dessus pour une version plus large)





En terme de performance, cela fonctionne très bien et la commande de déclenchement se fait en environ 1ms, ce qui est faible devant le temps de latence de l'appareil photo.
La résistance en série avec le phototransistor détermine la sensibilité. J'ai donc mis 2 résistances l'une de faible valeur pour le jour et une résistance plus importante pour la nuit. L'interrupteur permet de choisir la sensibilité. Un potentiomètre aurait été plus flexible mais je voulais un boitier compact sans protubérances. Donc j'ai préféré un petit interrupteur sur la tranche qu'un gros bouton sur le dessus. Et finalement, ça marche très bien comme cela Smile

Afin de contrôler le bon fonctionnement du déclencheur j'ai ajouté 2 leds. Une verte qui flashe toutes les 2 secondes lorsque l'appareil est en marche. Une rouge qui s'allume brièvement au déclenchement de l'appareil photo mais également lorsque le détecteur est saturé (il faut alors changer de sensibilité).

Voila à quoi ça ressemble un fois intégré :






D'un point de vue plus général, l'utilisation d'un microcontrôleur n'est pas optimale, on pend un char d'assaut pour écraser une mouche, mais cela simplifie le montage le rend accessible à un plus large public et plus ludique également grâce à la souplesse qu'apporte la programmation. Le microcontrôleur est bon à tout faire mais ne le fait pas forcément de la meilleure façon. Ainsi un montage à base d'électronique analogique à base de filtre passe-bas et comparateur sera plus réactif et beaucoup plus économe en énergie. J'en arrive donc au principal défaut de ce montage : la consommation ! Embarassed J'utilise une pile 9V pour l'alimenter et j'estime l'autonomie à environ 10h, ce qui n'est pas top du tout ^^ (entre 2 à 5 sorties ??)

J'avais initié ce bricolage sans penser à la consommation, mais heureusement il y a de nombreuses pistes à explorer pour la réduire car rien n'est optimisé dans ce sens. Utiliser une carte arduino plus économe voire un microcontrôleur seul, utiliser des modes de veille dans la programmation, désactiver des composants inutiles de la carte et du microcontrôleur, adapter la source de tension pour éviter le gaspillage d'énergie dans le régulateur qui fourni du 5V à la carte. Avec tout ça, j'ai bon espoir de multiplier l'autonomie par 10 ou 20 dans une prochaine version.

Voici un lien vers le fichier fritzing d'où sont issus les 2 premiers schémas et qui contient également le code : https://drive.google.com/uc?export=download&id=0B2ALSxftvVXbLVVvbWJRVUo0WDg

Le code utilisé pour prodrammer l'arduino se trouve en bas de ce message, il est complètement annoté pour une meilleur compréhension et assez simple.


Si vous avez des questions ou des remarques n'hésitez pas. Les critiques, même négatives sont les bienvenues Smile
Le fichier fritzing peut bien sur être réutilisé et modifié à votre convenance.



Code:
#include <MsTimer2.h>                //MsTimer2 library allows using timer2 interrupts easily and avoids using delay() function


/*


 created June 2015
 modified October 2015
 by Florent Pin

 */


const int triggerPIN=12;                //Digital pin 12 connected to an optocoupler that will trigger the camera shutter
const int prefocusPIN=11;               //Digital pin 11 connected to an optocoupler that will trigger the camera prefocusPINed mode
const int photoTPIN=7;                  //phototransistor connected (with a resistor) to Analog input A0
const int blinkerPIN=9;                //Blinking green led on pin 10 (Power ON LED)
const int SatLedPIN=8;                  //Saturation & triggerPIN indicator (red LED)

int sensorValue = 0;                   //value read from the photoTPINransistor
int prevSensorValue = 0;               //value read from the photoTPINransistor at the previous iteration

int j;
volatile boolean blinker = LOW;        //State of the blinking green LED


void setup() { 
  pinMode(triggerPIN,OUTPUT);
  pinMode(prefocusPIN,OUTPUT);
  pinMode(SatLedPIN,OUTPUT);         
  pinMode(blinkerPIN,OUTPUT);
 
  digitalWrite(triggerPIN,LOW);
  digitalWrite(prefocusPIN,HIGH);    //Camera prefocued mode enable permanently
  digitalWrite(SatLedPIN,LOW);
  digitalWrite(blinkerPIN,LOW);
 
  MsTimer2::set(2000, flash);        //ISR flash launched after 2000ms
  MsTimer2::start();                 //Enable Timer2 interrupts
}


void loop() {
  sensorValue = analogRead(photoTPIN);                        // read voltage from phototransistor

  if(sensorValue>950){                                        //switch on a red LED if detector is almost saturated
    digitalWrite(SatLedPIN,1);}
  else{
    digitalWrite(SatLedPIN,0);} 
   
  if(sensorValue-prevSensorValue>5){                          //detection threshold
    digitalWrite(SatLedPIN,1);                                //switch on a red LED when the shutter is triggered
    digitalWrite(triggerPIN,HIGH);                            //trigger the camera shutter
    delay(100);
    digitalWrite(SatLedPIN,0);                                //switch off red LEd
    digitalWrite(triggerPIN,LOW);   
  }
  prevSensorValue=sensorValue;                                //save sensor value for comparison with the next measurement
}


void flash(){                                                //Interrupt Service Routine triggered by Timer2
  blinker= !blinker;                                         //Toggle blinking LED state
  digitalWrite(blinkerPIN,blinker);                         
  if(blinker){                                               //change next LED state toggle delay for getting  1/100 duty cycle
    MsTimer2::set(20, flash);
    MsTimer2::start();
  }
  else{
    MsTimer2::set(2000, flash);
    MsTimer2::start();
  }
}


Dernière édition par Florent Pin le Mar Nov 03, 2015 07:50; édité 1 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message Visiter le site web de l'utilisateur
Florian L



Inscrit le: 11 Juin 2010
Messages: 1315
Localisation - Location: Loire-Atlantique (44)

MessagePosté le: Lun Nov 02, 2015 22:03    Sujet du message: Répondre en citant

très bonne initiative bien documentée.

Julien A avait aussi réalisé un montage à base d'arduino :

http://www.purebasic.fr/french/viewtopic.php?f=9&t=12813&start=15

continue ainsi.

A+
_________________
Matériel : Canon 500D + 18-55 IS + 70-300
* Station météo personnelle
* Album photo Flickr
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message Visiter le site web de l'utilisateur
Florent Pin



Inscrit le: 31 Juil 2015
Messages: 55
Localisation - Location: Palaiseau

MessagePosté le: Mar Nov 03, 2015 07:54    Sujet du message: Répondre en citant

Merci Smile

J'avais parcouru le web à la recherche d'autres montages, mais je n'avais pas vu celui-là très simple et qui fonctionne sur le même principe.

J'ai opté pour le phototransistor car j'avais peur que le temps de réponse de la photo résistance soit un peu long.

Je reposterai ici quand j'aurai fini la version 2 qui aura une autonomie correcte.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message Visiter le site web de l'utilisateur
Gilles Chabert



Inscrit le: 14 Aoû 2014
Messages: 66

MessagePosté le: Mar Mar 15, 2016 15:45    Sujet du message: Répondre en citant

bonjour
je me suis equipé recement d'un nikond3300 et je serai interessé par un detecteur de foudre Smile vu le cout de celui ci qui a l'air de bien fonctionné ,j'aimerai savoir si il es possible d'en avoir un Razz ?
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message
Florent Pin



Inscrit le: 31 Juil 2015
Messages: 55
Localisation - Location: Palaiseau

MessagePosté le: Mer Mar 16, 2016 08:49    Sujet du message: Répondre en citant

Gilles Chabert a écrit:
bonjour
je me suis equipé recement d'un nikond3300 et je serai interessé par un detecteur de foudre Smile vu le cout de celui ci qui a l'air de bien fonctionné ,j'aimerai savoir si il es possible d'en avoir un Razz ?


Bonjour Gilles,

Qu'entends-tu par "en avoir un" ?
Si la question était : "est-ce que tu peux en fabriquer d'autres pour les vendre à l'unité?" Pour le moment je ne pense pas pouvoir y répondre positivement.

Le but de ce partage était plutôt de montrer qu'on peut s'en fabriquer un assez facilement sans être expert en électronique et favoriser le do it yourself.
De plus je suis très mal équipé (notamment pour ce qui est mécanique) et la qualité finale de l'assemblage serait assez médiocre avec beaucoup de temps passé dessus (trou rectangulaire pour l'interrupteur par exemple). Je m'en satisfait pour un bricolage perso, mais je ne livrerai pas ça à quelqu'un qui me paye pour ça. Rolling Eyes
Et enfin, pas mal de composants sont sourcés sur ebay en chine ou HK, donc il faut compter 1 mois d'appro voire 2 mois s'il y a un raté, ce n'est pas trop gérable pour un produit à livrer.

Bref tout ça pour dire que ce n'est qu'un bricolage perso et je t'encourage à tenter l'essai si tu a déjà un fer à souder et un multimètre.

Je peux fournir plus d'explications/aide si besoin, ou le sourcing des composants à tarif raisonnable si besoin. N'hésite pas si tu as des questions ! Smile

PS : Je bricole une version 2 qui aura une meilleure autonomie que celui-ci (probablement autour de 100h au lieu de 15-20h actuellement) et dont je publierai les plan ici quand il sera finalisé et testé.

PS2 : en plus je n'ai pas de boitier Nikon donc je serais incapable de tester le montage sur boitier Nikon ^^
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message Visiter le site web de l'utilisateur
Gilles Chabert



Inscrit le: 14 Aoû 2014
Messages: 66

MessagePosté le: Mer Mar 16, 2016 09:18    Sujet du message: Répondre en citant

en tout cas merci pour ces renseignements ,je vais peu etre essayé de m'en bricoler un Wink
c'est possible que je te demande des renseignement plus precis sur le montage Wink
sinon a l'achat quel appareil me conseil tu ? et chez qui
car j'avoue que je c'est pas vraiment ou me dirigé pour l'achat de detecteur de foudre Confused
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message
Florent Pin



Inscrit le: 31 Juil 2015
Messages: 55
Localisation - Location: Palaiseau

MessagePosté le: Mer Mar 16, 2016 09:34    Sujet du message: Répondre en citant

D'accord, pas de soucis pour les renseignements, n'hésite pas.

Pour les détecteurs existants je ne pourrai pas te renseigner ne les ayant pas testés et débutant moi-même dans la photo d'orage.

Tu peux regarder les sujets existant traitant de ces appareils ou ouvrir un topic dédié pour t'aider à faire un choix grâce aux expériences de chacun.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé - Send private message Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Forum chasseurs d'orages Index du Forum -> Equipement du chasseur d'orages Toutes les heures sont au format GMT
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com