Anémomètre artisanal

Introduction

anemometer in sky J'avais envie de construire un instrument de mesure qui devrait être placé à l'extérieur, exposé aux intempéries. Mon intérêt dans ce projet est de voir si mon appareil est capable de résister aux températures de l'hivers québecois (parfois plus que -40 degrés celcius en plus du vent et oui, il a résisté) et d'apprendre quelles sont mes erreurs lorsqu'il y a un pépin.

Dans cet esprit, un anémomètre me semblait être un bon défi. Il y a la partie électronique qui compte les tours des coupes à protéger de la pluie (à long terme, l'oxydation causé par l'eau serait un problème), et il y a la partie mécanique qui doit résister au vent (ne pas casser par grand froid). La partie mécanique doit en plus offrire le moins de résistance possible pour permettre la lecture des petits vents.

Pour rendre la chose encore plus difficile (ou amusante) et moins couteuse, j'ai décidé d'essayer de construire le tout en recyclant le plus possible des pièces que j'avais déja:
  • 3 cuillères à café
  • 1 bouchon de coke
  • 1 galet presseur ('pinch-roller' en anglais) de magnétoscope, de bonne qualité (donc ancien) monté sur roulement
  • 1 senseur infra-rouge à fente
  • 1 baton d'aluminium
  • 1 couvercle de peinture en aérosol
  • 1 transistor
  • 2 resistances
  • 1 bornier à 3 contacts
vitesse jour
Moyenne de 5 minutes. Cliquez sur l'image pour consulter des graphiques représentants de plus longues périodes. L'Anémomètre est installé dans la ville de St-Hubert au Canada dans la province de Québec.



Construction


cups Voici les trois coupes que le vent doit faire tourner. Il s'agit de cuillères à café provenant du magasin "tout à un dollar". Ça m'a couté trois dollars. C'est la seule chose que j'ai achetée pour ce projet.

J'ai coupé une partie du manche des cuillères et je les ai collés sur un bouchon de coca-cola de manière à ce qu'il y ait 120 degrés entre les cuillères. J'ai utilié de la colle 'crazy glue' en plus de colle chaude. (Plastique + colle = cassant? Je vais voir cet hivers...)

roller Ce qui permet une rotation facile est le petit rouleau noir. Il s'agit d'un 'pinch roller' (Je n'ai aucune idée du nom de ce truc en français) provenant d'un magnétoscope vhs. Ca tourne très bien. Quand je le fait tourner avec mes doigts, il tourne une trentaine de secondes.

La pièce en forme de 'U' à gauche du rouleau est un senseur infra-rouges à fente. Un coté est un led infra-rouge. L'autre coté est un détecteur d'infra-rouges. Après avoir pris cette photo, j'ai collé une retaille d'attache en plastique de manière à ce que le faisceau infra-rouge soit bloquéune fois par tour.

Le tout est fixé à une retaille de baton d'aluminium en "U".

ensemble Le bouchon de coca-cola qui retiens les coupes est collé au centre du dessus d'un couvercle de pot de peinture en aérosol. Le couvercle de peinture est collé sur le petit rouleau noir. Le but du couvercle est de protéger le rouleau et l'électronique de la pluie et de la neige. Il reste encore un petit risque d'infiltration d'eau dans le cas d'un courant d'air ascendant que j'ai décidé d'ignorer et d'espérer pour le mieux.

connector Comme connecteur, j'ai utilisé un bornier à trois contacts. Les deux premiers contacts servent d'alimentation 12 volts dc, le troisième est la sortie. Le signal de sortie donne continuellement du 12 volts excepté lorsque le faisceau infra-rouge est coupé.

Je voulais que la sortie soit un signal fort pour être certain que la capacitance et la résistance du cable ne soit pas un problème. J'ai donc réalisé ce petit circuit. Pour le protéger de la pluie, je l'ai coulé dans la colle chaude. Voici le shéma:
                     1k
     +--------------/\/\/-------+--------> 12 Volts
     |               1k         |
     |      c +-----/\/\/--+   e|
    \ / ->  |/             |  |/
    --- ->  |              +--|   2n3906 (PNP)
     |      |\v              b|\c
     |      e |                 +--------> Out
     |        |
     +--------+--------------------------> Ground
   Senseur et capteur
        en U



Installation

J'ai installé l'anémomètre au bout d'un poteau d'antenne fixé sur la maison. L'emplacement n'est pas idéal car la maison et les arbres modifient la vitesse et la trajectoire du vent. Malgré cela, ça fonctionne assez bien.
installe sur poteau installe sur poteau

J'ai utilisé un cable de rallonge électrique extérieure qui rentre à l'intérieur via un trou que j'ai percé dans le ciment:


Printemps 2006: L'anémomètre a survécu à l'hivers! Et comme au début, il tourne très aisément.



Contrôleur

controller Ce n'est pas tout d'avoir un anémomètre. Il faut pouvoir mesurer la vitesse et la communiquer à un ordinateur si on souhaite faire plus que regarder un led clignoter. J'ai réutilisé un circuit prototype que j'avais conçu pour le travail en 2003.

Il y a deux transformateur pour s'assurer que ce qui est à l'extérieur est isolé électriquement de ce qui est relié à l'ordinateur. Le transformateur en haut à gauche s'occupe de l'extérieur. Il y a une grosse résistance de basse valeur destinée à chauffer si jamais il y a un court-circuit dehors. Il y a aussi un pont de diodes pour redresser le voltage et un condensateur pour filtrer.

Le signal provenant de l'anémomètre fait clignoter le led d'un opto-isolateur. Le microcontroleur surveille le signal provenant de l'opto-isolateur pour mesurer la vitesse. À chaque tour complet, le temps en millisecondes qu'a duré le tour est transmis à l'ordinateur par rs232.

Voici quelques images du controleur installé dans le sous sol, vissé dans le ciment. (J'adore ça, c'est très solide!):



Logiciel

Microcontroleur:
Le microcontroleut utilisé est un ATmega128 d'atmel. Il est programmé pour calculer la durée de chaque tour. À la fin de chaque tour, le temps écoulé depuis le dernier, en millisecondes, est envoyé via le port série a 9600 bauds en suivant la syntaxe suivante:
delta: xxxx\n
Lorsqu'il ne se passe plus rien (pas de tour complet depuis 10 secondes), le message suivant est transmis afin que le logiciel de loggage puisse noter un arrêt complet du vent:
status: stopped\n
Voici un fichier contenant tout le code source: (compile avec gcc et avr-libc)
windmon_avr.tar.gz
Et si vous voulez consulter les sources en ligne:
main.c usart.c usart.h

Loggeur:
Du coté de l'ordinateur, un logiciel s'occupe d'enregister dans un fichier la moyenne des 5 dernières minutes et la vitesse maximale des 5 dernières minutes dans un fichier.

Le code source du loggeur est disponible ici: windmonitor.c

Et voici quelques scripts:
Configure le port série et démarre windmon-run en arrière plan: windmon-init
Démarre windmon avec le bon fichier de destination et redirige le port série vers l'entrée standard de windmon: windmon-run

Récupération des donnés à distance:
J'utilise snmp pour récupérer les dernières valeurs à distance. Voici les lignes que j'ai ajouté dans snmpd.conf:
exec windspeed /usr/local/bin/windmon-getlastaverage
exec windspeedmax /usr/local/bin/windmon-getlastmax
Voici les scripts dont il est question:
Retourne la vitesse moyenne: windmon-getlastaverage
Retourne le maximum des 5 dernières minutes: windmon-getlastmax

Génération des graphiques:
J'utilise mrtg pour générer des graphiques à partir de sources snmp. Voici l'extrait de la configuration mrtg:
Target[wind]: 1.3.6.1.4.1.2021.8.1.101.1&1.3.6.1.4.1.2021.8.1.101.1:public@cola
SetEnv[wind]: MRTG_INT_IP="gate2.raphnet.net" MRTG_INT_DESCR="ping"
Title[wind]: Wind speed
MaxBytes[wind]: 2000
AbsMax[wind]: 2000
Options[wind]: gauge
YLegend[wind]: Revolution Per Minute
ShortLegend[wind]: rpm
PageTop[wind]: <H1>Wind speed</H1>
 <TABLE>
   <TR><TD>System:</TD>     <TD>ND</TD></TR>
   <TR><TD>Maintainer:</TD> <TD>Raphael Assenat (raph@raphnet.net)</TD></TR>
   <TR><TD>Description:</TD><TD>Wind speed in rpm </TD></TR>
   <TR><TD>Max Speed:</TD>  <TD>2000 rpm</TD></TR>
 </TABLE>

Le résultat:
vitesse jour
Moyenne de 5 minutes. Cliquez sur l'image pour consulter des graphiques représentants de plus longues périodes. L'Anémomètre est installé dans la ville de St-Hubert au Canada dans la province de Québec.


Conclusions

Je n'ai pas calibré mon anémomètre alors je ne sais pas exactement la vitesse du vent. Par contre, je peux voir les variations. Je prévois ajouter d'autres types de senseurs à l'extérieur pour connâtre la direction du vent, l'humidité, la température, détection d'éclairs, détection de pluie, luminosité, pression...

Lorsque j'aurai installé d'autres types de senseurs, je vais tenter d'établir des relations entre différentes mesures et le vent. (par exemple, est-ce qu'une brusque variation de température augmente le vent?)

J'attends l'hivers avec impatience pour voir si mon anémomètre va résister ou pas.