mikrocontroller.net

Forum: Projekte & Code Windmesser Anemometer kalibrieren selber bauen ATmega8 Assembler


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Bernhard S. (bernhard)
Datum:
Angehängte Dateien:

Bewertung
2 lesenswert
nicht lesenswert
Ein kleines Beispiel eines Windmessers mit einem ATmega8.

Die Stromaufnahme beträgt bei 4V ca. 0,16mA,
geeignet für einen Batteriebetrieb ^^

Die LEDs (Bargraph) leuchten im Sekundentakt für wenige ms kurz auf und 
zeigen die momentane und die maximale Windgeschwindigkeit an.

Grüne LED=Lebenslicht, gelbe LED=Eingangsimpuls.


Prinzip:

Der Timer2 (8Bit), getaktet mit 32kHz, tastet jede Millisekunde den 
Eingangspin ab und untersucht, ab Eingangsimpulse anliegen.

Kurz vor dem sampeln, wird der Pull-Up-Widerstand des Eingangs 
aktiviert, das spart Strom, vorallem, wenn der Reedkontakt des 
Anemometers permanent geschlossen ist.

Im Sekundentakt wird das Ergebnis angezeigt.

Ein Reset des AVR setzt alles zurück.

Der ATmega arbeitet im "Power-Save-Modus", ASSR ist aktiviert, benötigt 
aber einen externen Quarz.

Ein Betrieb ohne Quarz ist auch möglich, z.B. "Idle-Modus", jedoch 
steigt dann der Strombedarf empfindlich an.

In der "wind.asm" lassen sich die Schwellerte der Windgeschwindigkeit 
des Bargraph entsprechend anpassen z.B. m/s, km/h oder bft usw.

Alle I/O Pins lassen sich nach Bedarf anpassen, bis auf PB0 und PB1 ;-)


Kalibrierung / Justierung:

Bei Flaute einfach den Windmesser aus dem geöffneten Autofenster halten,
ein Frequenzmesser verrät uns die Umdrehungen pro Sekunde,
mit GPS die Geschwindigkeit überwachen.

Ich denke, die Genauigkeit ist hinreichend genau, obwohl es keine 
laminare Strömung am Auto ist.

Meine bessere Hälfte musste sehr bei diesen Versuchen "leiden", Tempo 
100 und offenes Autofenster... ;-)



Bernhard


PS: Manfred, danke für Deine Inspiration :-)

: Verschoben durch Moderator
Autor: Julian Baugatz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wozu soll das gut sein?

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Bernhard S. schrieb:
> Kurz vor dem sampeln, wird der Pull-Up-Widerstand des Eingangs
> aktiviert, das spart Strom, vorallem, wenn der Reedkontakt des
> Anemometers permanent geschlossen ist.
Ich würde da aber parallel zum namenlosen 10n Kondensator einen 1M Ohm 
Widerstand nach Masse schalten, um bei offenem Reedkontakt und 
ausgeschaltetem Pullup einen definierten Eingangspegel am Pin zu haben. 
Sonst floatet der herum und du bekommst in der Eingangsstufe einen 
Querstrom von Vcc nach GND --> erhöhte Stromaufnahme.
Oder noch besser: solange der Eingang nicht zur Messung gebraucht wird, 
den Pin als Ausgang schalten und Low ausgeben.

Julian Baugatz schrieb:
> Wozu soll das gut sein?
Wenn dein Tacho mal kaputt ist, dann kannst du mit dem Windmesser die 
aktuelle Geschwindigkeit feststellen.

Und auch sonst wird denen, die sowas suchen, sicher eine weitere 
Anwendungsmöglichkeit einfallen.

Autor: tommy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Julian Baugatz schrieb:
> Wozu soll das gut sein?

Wetterstation, Flugplatz, Segelboot,...
https://de.wikipedia.org/wiki/Anemometer#Einsatzbereiche

Autor: Bernhard S. (bernhard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar M. schrieb:
> Ich würde da aber parallel zum namenlosen 10n Kondensator einen 1M Ohm
> Widerstand nach Masse schalten, um bei offenem Reedkontakt und
> ausgeschaltetem Pullup einen definierten Eingangspegel am Pin zu haben.

Da der Pull-Up alle 1ms für 1µs aktiviert wird, Ladezyklus, ist die 
Spannung am namenlosen 10nF Kondensator nahezu Vcc bei offenen 
Reedkontakt.

Ein R parallel zum C wäre kontraproduktiv, im schlimmsten Fall führt der 
C nur noch Low-Potential und müsste erst durch den aktivierten Pull-Up 
(ca. 30k) wieder aufgeladen werden, und das kann dauern und kostet 
Strom.



> Sonst floatet der herum und du bekommst in der Eingangsstufe einen
> Querstrom von Vcc nach GND --> erhöhte Stromaufnahme.

Du hast Recht! Hab's getestet, einen mit halber Betriebsspannun 
gespeister Eingangspin verursachre plötzlich 100µA mehr µC 
Stromaufnahme.

Danke für den Tipp.


> Oder noch besser: solange der Eingang nicht zur Messung gebraucht wird,
> den Pin als Ausgang schalten und Low ausgeben.

sehr gut

: Bearbeitet durch User
Autor: Cheffe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernhard S. schrieb:
> Ich denke, die Genauigkeit ist hinreichend genau, obwohl es keine
> laminare Strömung am Auto ist.

Das ist bei der Bauform auch nicht relevant, da der Kasten total das 
Windfeld stört.


Cheffe

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.