PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Drehzahlerfassung mit Reedkontakt - Software?



Powell
26.12.2006, 19:09
Hallo Leute,

Das Thema an sich ist ein Dauerbrenner, ich weiß, und steinigt mich wenn es doch einen Thread mit der Lösung für mein Problem gibt, ich habe nach dem durchwühlen zahlreicher annähernd passenden Threads die Geduld verloren ](*,)

Also, Problem ist ganz einfach: Ich möchte über Reedkontakt und Magnet eine Drehzahl erfassen. Der Reedkontakt prellt, das ist das Hauptproblem.
Ich arbeite mit dem Befehl Pulsein und war dabei hängengeblieben ihn mit dem befehl Debounce zu verknüpfen, also erst den Reedkontakt entprellen und dann dann eine Flanke auf den Pulsein Eingang zu geben... es hat nicht geklappt und ich habe nun keine Idee mehr wie es geht.

Dazu noch eine wichtige Info: Auf einer Skala von 1-10 liegen meine Programmierkenntnisse bei 2, also sollte es ein für euch durchaus leicht lösbares Problem sein O:)

Vielen Dank im Voraus

Paul

steg14
26.12.2006, 19:41
womit erfassen? PC Mikrocontroller??
eine bestimmte Programmiersprache?

Etwas in der Art habe ich mal so gemacht. Taste löst Interrupt aus. Nach der Entprellzeit kann erst der nächste Int. ausgelöst werden.

Ratber
26.12.2006, 20:48
@Powell

Über welche Drehzahlen und Laufzeiten der zu überwachenden Welle reden wir denn ?

Rofo88
26.12.2006, 20:49
Wie steg14 schon schrieb : Nach dem ersten Schalten das Reedkontaktes ne weile nicht mehr auf das Signal reagieren bis das Prellen vorbei ist. Ein problem hast Du wenn der Schalter noch prellt und schon der nächste Schaltimpuls kommt. Kannst auch mal mit Kondensatoren spielen die die Impulse glätten.


MfG

Powell
26.12.2006, 21:58
Achso, ich vergaß:

MC ist ein ATMega 8, Programmiert in Bascom
Die Welle Dreht 700min-1

kalledom
26.12.2006, 22:06
Das Entprellen löse ich anders:
in einem 10ms Timer-Interrupt frage ich alle Tastereingänge ab; für jeden Taster, der betätigt ist, incrementiere ich einen Zähler, bei den nicht-betätigten Tastern setze ich den Zähler auf 0.
Jeder Zähler wird überprüft, ob er z.B. bei 5 (=50ms) angekommen ist; dann wird ein Bit / Flag gesetzt, das den zugehörigen Taster als EIN signalisiert. Ist ein Zähler auf 0, wird dieses Bit / Flag natürlich gelöscht.
Somit muß ein Taster 5 * 10ms = 50ms ununterbrochen betätigt sein, damit er als EIN 'anerkannt' wird. Gibt es wegen des Prellens eine Unterbrechung, beginnt der Zähler wieder von vorne.
Durch dieses Bit / Flag kann ich in der Hauptroutine verzweigen und es nach Abarbeitung löschen oder auch nicht.

Ratber
26.12.2006, 22:40
Achso, ich vergaß:

MC ist ein ATMega 8, Programmiert in Bascom
Die Welle Dreht 700min-1

Gut das würde noch gehen.

Bei 700 upm sind das rund 86 ms pro Umdrehung.
Asymetrisches Schalten (On/Off Zeit) berücksichtigt kommst du bei angenommenen 25% Ed auf rund 21ms On-Zeit.

Reedkontakte haben üblicherweise 0.5-2ms Prellzeit also ist da noch genug reserve.

Bei der Lebensdauer sieht es dann etwas anders aus.

Reedkontakte haben üblicherweise je nach Modell 10-100 Mio. Schaltspiele.

Bei 700 upm sind das also rund 238-2380 Betriebsstunden.(ca. 10-100 Tage)
Selbst wenn wir die Lebensdauer verdoppeln ist spätestens bei 4760 Betriebsstunden (ca. 200 Tage) Ende.

Alle Rechnungen natürlich nur grob über den Daumen.

Wie oft deine Gerät nun läuft und wann die Betriebsstunden erreicht sind weißt nur du alleine.

Es ist also zu überlegen ob man nicht einfach einen Hallsensor nimmt.
Der ist Mechanisch stabiler (Kein Glas),kennt keine Resonanz,bringt ein sauberes Signal (Prellen,was ist das ?) und läst auch viel kleinere Schaltzeiten zu.

Powell
27.12.2006, 08:39
Schon mal Danke für eure Beiträge

@Kalledom: Wie gesagt, Programmierkenntnisse 2/10, ich kann deinen Lösungsweg zwar nachvollziehen, aber in Code umsetzen ist für mich nicht so leicht 8-[ Ich bin immer dankbar über Quellcode, dadurch lernt man es am schnellsten O:)

@Ratber: Das ganze sollte eine Testschaltung für eine Achsdrehzahlerfassung für ein Kart werden (ist momentan bissl kalt zum fahren ;)). Die Testschaltung wird an einem Akkuschrauber aufgebaut, dessen Bohrfutter die drehende Achse simuliert und eben 700min-1 macht ;)
Aber danke für den Lebensdauer-Tipp, es wäre dann wohl wirklich besser und auch einfacher mit einem Hallsensor zu arbeiten... ich werde es mal versuchen.

wkrug
27.12.2006, 09:13
Wenn Du ohnehin schon einen Magneten benutzt und das Signal mit einem Microcontroller auswerten willst, warum benutzt Du dann keinen Magnetfeldsensor wie z.B. den TLE 4905L ?

Da sollte auch das prellen dann kein Problem mehr sein.

kalledom
27.12.2006, 10:24
Beispiel für Taster-Entprellung per Software: http://www.domnick-elektronik.de/picasm.htm#IsrT2, allerdings in Assembler und für den PIC.
Neuerdings decrementiere ich den Zähler nicht bei offenem Kontakt, sondern setze ihn sofort auf 0.

Eggert
27.12.2006, 12:45
Hallo zusammen,
kann man in einem Kart o.ä. überhaupt sinnvoll mit Reedkontakten arbeiten?
ich würde vermuten das man aufgund der Vibrationen ne Menge "Fehlalarme" kriegt. Dann wäre ein Hallsensor vermutlich alternativlos, es sei denn man tastet optisch ab.

Guten Rutsch

Thorsten

Ratber
27.12.2006, 14:59
Hallo zusammen,
kann man in einem Kart o.ä. überhaupt sinnvoll mit Reedkontakten arbeiten?
ich würde vermuten das man aufgund der Vibrationen ne Menge "Fehlalarme" kriegt. Dann wäre ein Hallsensor vermutlich alternativlos, es sei denn man tastet optisch ab.




Ja,genau mein Reden.

Optisch ist auch ok aber im mobilen Bereich hast du da immer das Problem mit dem Dreck der ja bei dieser Anwendung reichlich vorhanden ist.

Richard
28.12.2006, 14:06
Hallo zusammen,
Dann wäre ein Hallsensor vermutlich alternativlos, es sei denn man tastet optisch ab.
Guten Rutsch Thorsten

Moin moin,

Ich denke auch das ein Hallsensor die beste Lösung neben
Optisch ist. Man kann z.B. einen alten Autoverteiler verwenden oder ausschlachten. Elegannter und einfacher dürfte Optisch oder per
Ultraschall wie beim Modellbau sein.

Gruß Richard

Ratber
28.12.2006, 16:26
Warum sollte Optisch,Ultraschall einfacher und eleganter sein als Magnetisch (Hall) ?

Würde mich mal interessieren wie du das siehst.

Richard
29.12.2006, 13:08
Warum sollte Optisch,Ultraschall einfacher und eleganter sein als Magnetisch (Hall) ?
Würde mich mal interessieren wie du das siehst.

Moin moin,

Na ja, ohne Magnet spart man sich die Bastelei und Unwucht durch den Magneten. Ein Farbkleck´s oder Aufkleber auf der Welle und gut ist es. :-)
Da es Optische Sensoren mit Digitalem Ausgang gibt dürfte ein Entprellen entfallen und der Sensor diereckt an der CPU zu betreiben sein.

Für US spricht das es im Modellbau fertige Drehzahlmesser zu kaufen gibt, das erspart Bastel und Test Arbeit.

Gruß Richard

Ratber
29.12.2006, 15:23
Da es Optische Sensoren mit Digitalem Ausgang gibt dürfte ein Entprellen entfallen und der Sensor diereckt an der CPU zu betreiben sein.

Gilt ebenso für Hallsensoren



Für US spricht das es im Modellbau fertige Drehzahlmesser zu kaufen gibt, das erspart Bastel und Test Arbeit.

Auch wenn man mich jetzt für blöde halten sollte aber Drehzahlmessung per Ultraschall ?
Ich kenne US-Entfernungsmessung,Alarmanlagen,Mücken-,Hunde- und andere Scheuchen aber Drehzahlmessung ist mir gänzlich neu.
Oder meinst du die Geschwindigkeitsmessung mittels Dopplereffekt ?

Ist da was an mir vorbeigegangen ?

Klär mich bitte auf damit ich nicht Doof sterbe.
Passende Links wären auch nicht schlecht.

Bei Google&Co finde ich nix gescheites.



Na ja, ohne Magnet spart man sich die Bastelei und Unwucht durch den Magneten. Ein Farbkleck´s oder Aufkleber auf der Welle und gut ist es.

Nun zum einen ist ein Farbklecks/Aufkleber auch eine Unwucht in Abhängigkeit von Drehzahl und Masse der Welle aber das nur so als Spitzfindigkeit.
Das Problem mit dem Dreck hab ich ja schon angegeben aber es beleibt sofern es eine Dauereinrichtung ist.
Wobei ich jetzt nicht weiß ob Powell nur mal eben Messen will also als Handmessgerät (Da ist Optisch natürlich Sinvoller.Hab selber nen Kombi aus Mechanisch,Reflex,Laser usw.) oder als Dauereinrichtung.
Bei ersterem gibt es wunderbare Magnetische aufkleber analog zu den Reflektoren.
Für letzteres kann man auch zwei Magnete auf die Welle Kleben dann hat sich das mit der Unwucht erledigt.
Feinere Hallsenoren nutzen übrigesn das schwache Magnetfeld der Welle sofern sie aus einem magnetisierbaren Stoff ist aber benötigen etwas Umbeschaltung.Vieleicht gibts die auch schon fertig als Modul oder Bauteil.Keine ahnung,hab nicht danach gesucht.Meine TLE's reichen meist aus.
Damit entfällt der aufgeklebte oder eingelassene Magnet gänzlich.
Es gibt auch Ringe usw.

Also Magnetisch finde ich am Elegantesten für Dauerhaften Einsatz.
Schmutz juckt nicht und der Bauteilaufwand ist gering.

Bei Optisch ist es recht angenehm für Externe Messungen.
Kleber drauf oder Farbklecks und schon gehts weiter.
Auf dauer hält man sich je nach Umgebung aber am Putzen der Optik.

Ja und Ultraschall drehzahlmessung mußt du mir noch erklären da bin ich völlig unwissend.

Schonmal danke für die Antwort.

kalledom
29.12.2006, 15:51
Hallo Ratber,
dann google mal unter Dopplereffekt !

Ratber
29.12.2006, 16:10
Ja,den kenn ich schon.(Siehe oben)
Ich dachte schon er hätte was neues.

Das wäre nicht unbedingt einfacher zumal der nötige Aufwand höher liegt.

Wie gesagt,sationär qasi auf Dauer ist der Hallsensor die beste Methode.
Wie man den Magneten nun anbringt (Zwei oder mehr zwecks höherer Auflösung und Wucht aufkleben,Einlassen oder zb. als zusätzlicher Ring.Bei niedrigen Drehzahlen und/oder genügend Masseverhältnis ist das auch wieder Latte. 700 upm ist relativ lächerlich sofern es sich hier nicht um winzigkeiten handeln sollte.) oder ob man vorhandene Magnetfelder nutzt (Motornähe bei E-Motoren) ist da nebensache.

Wichtig ist das es Simpel ist.
Ich brauche übrigens für TTL-Signal auch nur ein einziges Bauteil.
Den Sensor.
Mehr nicht.

Deswegen meine Frage nach warum .

wkrug
29.12.2006, 16:14
Soweit ich das mitgekriegt hab gehts doch hier um ein Cart ?!

Ist da nicht sowieso ein Magnet eingelassen der den Zündzeitpunkt steuert ?

Wenn eine andere Welle abgetastet werden soll ist das bei 700U/min mit der Unwucht auch noch kein Drama.

Ausserdem war ja ein Reed Kontakt geplant, der ja ein wesentlich stärkeres Magnetfeld braucht als ein Hall Sensor.

Ich denk mal Powell will sich da nen Tacho basteln.

Richard
30.12.2006, 12:16
Also Magnetisch finde ich am Elegantesten für Dauerhaften Einsatz.
Schmutz juckt nicht und der Bauteilaufwand ist gering.

Bei Optisch ist es recht angenehm für Externe Messungen.
Kleber drauf oder Farbklecks und schon gehts weiter.
Auf dauer hält man sich je nach Umgebung aber am Putzen der Optik.

Ja und Ultraschall drehzahlmessung musst du mir noch erklären da bin ich völlig unwissend.

Schonmal danke für die Antwort.

Ich bin von einer gelegendlichen Handmessung ausgegangen.

Fest eingebaut würde ich auch einen Hallsensor nehmen, der darf ruhig verdrecken. Einen Link zu solch einen US Drehzahlmesser habe ich nicht, ich habe das Ding mal auf nen Modellflugplatz gesehen. Wird vor der Luftschraube gehalten und man muß am Gerät den Propellertyp, also 2 oder 3 Blatt einstellen. Mann müßte einmal ein Micro vor so einen Propeller halten und sich am Ozzi anschauen was man dabei Auswerten kann.

Gruß Richard.

Ps.: Wenn ich anfange meinen Rasenmäher Bot zu bauen werde ich
als Radsensor/en sicherlich Hallsensoren verwenden. :-)

Ratber
30.12.2006, 17:11
Ich bin von einer gelegendlichen Handmessung ausgegangen.


Ja,die Frage ist noch zu klären.
Davon hängt auch bei mir selbstredent die Messmethode ab.




Einen Link zu solch einen US Drehzahlmesser habe ich nicht, ich habe das Ding mal auf nen Modellflugplatz gesehen. Wird vor der Luftschraube gehalten und man muß am Gerät den Propellertyp, also 2 oder 3 Blatt einstellen. Mann müßte einmal ein Micro vor so einen Propeller halten und sich am Ozzi anschauen was man dabei Auswerten kann.

Das hat aber nix mit Ultraschall zu tun.
Da wird ganz einfach das Propellergeräusch ausgewertet.
Je höhrer der Ton desto höher die Drehzahl.
Eine Simple Methode die für diese Anwendung auch völlig ok ist aber nicht ohne jeglichen Aufwand.(Schaltung)



Ml sehen ob Powell sich nochmal dazu äussert.