Permet de lire l'anemometre Velleman WS1080 et de stocker la vitesse du vent en m/s dans une variable publique.
Dependents: AnemometreWs1080_lecture
AnemoWS1080.cpp@0:21a4e1337957, 2019-05-20 (annotated)
- Committer:
- Station_Meteo_Laos
- Date:
- Mon May 20 04:44:20 2019 +0000
- Revision:
- 0:21a4e1337957
- Child:
- 1:b3876c120339
Permet de lire l anemometre WS1080 de Velleman et de renvoyer la vitesse du vent en m/s.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Station_Meteo_Laos | 0:21a4e1337957 | 1 | #include "AnemoWS1080.h" |
Station_Meteo_Laos | 0:21a4e1337957 | 2 | #include "mbed.h" |
Station_Meteo_Laos | 0:21a4e1337957 | 3 | |
Station_Meteo_Laos | 0:21a4e1337957 | 4 | |
Station_Meteo_Laos | 0:21a4e1337957 | 5 | //Il faut faire un étalonage dés que l'on change d'environement |
Station_Meteo_Laos | 0:21a4e1337957 | 6 | //Si un étalonage n'est pas possible, il peut-être aproximer à 1 |
Station_Meteo_Laos | 0:21a4e1337957 | 7 | AnemoWS1080::AnemoWS1080(PinName digital_pin, float coeff_etalon):anemo(digital_pin) |
Station_Meteo_Laos | 0:21a4e1337957 | 8 | { |
Station_Meteo_Laos | 0:21a4e1337957 | 9 | coef_etalon = coeff_etalon; |
Station_Meteo_Laos | 0:21a4e1337957 | 10 | } |
Station_Meteo_Laos | 0:21a4e1337957 | 11 | |
Station_Meteo_Laos | 0:21a4e1337957 | 12 | // AnemoWS1080/WS |
Station_Meteo_Laos | 0:21a4e1337957 | 13 | bool AnemoWS1080::read(){ |
Station_Meteo_Laos | 0:21a4e1337957 | 14 | |
Station_Meteo_Laos | 0:21a4e1337957 | 15 | unsigned int compteur=0; |
Station_Meteo_Laos | 0:21a4e1337957 | 16 | float tours_seconde=0; |
Station_Meteo_Laos | 0:21a4e1337957 | 17 | t.start(); |
Station_Meteo_Laos | 0:21a4e1337957 | 18 | |
Station_Meteo_Laos | 0:21a4e1337957 | 19 | while(t.read()<float(TEMPS_DE_MESURE)){ |
Station_Meteo_Laos | 0:21a4e1337957 | 20 | if(anemo){ |
Station_Meteo_Laos | 0:21a4e1337957 | 21 | compteur++; |
Station_Meteo_Laos | 0:21a4e1337957 | 22 | while(anemo && t.read()<float(TEMPS_DE_MESURE)); |
Station_Meteo_Laos | 0:21a4e1337957 | 23 | } |
Station_Meteo_Laos | 0:21a4e1337957 | 24 | } |
Station_Meteo_Laos | 0:21a4e1337957 | 25 | |
Station_Meteo_Laos | 0:21a4e1337957 | 26 | tours_seconde = (float(compteur)/3.0f)/TEMPS_DE_MESURE; |
Station_Meteo_Laos | 0:21a4e1337957 | 27 | vitesse = tours_seconde*2.0f*PI*coef_etalon*R_HELICE; |
Station_Meteo_Laos | 0:21a4e1337957 | 28 | |
Station_Meteo_Laos | 0:21a4e1337957 | 29 | t.reset(); |
Station_Meteo_Laos | 0:21a4e1337957 | 30 | return true; |
Station_Meteo_Laos | 0:21a4e1337957 | 31 | } |