- fchao-Sinus-Wechselrichter AliExpress         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 27

Thema: nocheinmal Drehzahlmessung

  1. #11
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.12.2004
    Ort
    Ulm
    Alter
    38
    Beiträge
    136
    Anzeige

    Praxistest und DIY Projekte
    also wenn ich in mytimer lcd "bla" schreibe, dann erscheint (vermutlich) jede Sekunde einmal bla auf dem Display. Wenn ich lcd Drehzahl in mytimer schreibe dann erscheint pro Sekunde einmal 0 im Display. Schreibe ich lcd "bla" in Zaehlen, dann passiert gar nichts. Auch nicht wenn ich den pb.0 (int0) mit einem Taster auf 0V ziehe.

    also meine Diagnose: Timer geht, beim int0 ist was faul, nur was?!

    siehst du das genau so?

    edit: zu deiner 2. Frage...ich möchte eben die Impulse (Flanken) die in einer Sekunde an int0 ankommen. Diese werden dann in U/min umgerechnet und auf dem Display ausgegeben. Der Timer sollte also nach jeder Sekunde überlaufen.

  2. #12
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Einstellung: Wenn's funzt, hat sich die Frage erübrigt, die Absicht war eh' klar.

    Ich fürchte, du mußt den INT0-Eingang mit Pullup-versehen
    PORTB.0 = 1 (pullup intern)
    einmal vor do..loop sollte reichen.
    Oder ein externer Pullup-widerstand
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #13
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.12.2004
    Ort
    Ulm
    Alter
    38
    Beiträge
    136
    also der Code sieht jetzt so aus:

    Code:
    $regfile = "m8def.dat"
    $crystal = 3686400
    Dim Zaehlerstand As Byte
    Dim A As Integer
    Dim Drehzahl As Integer
    Const Timervorgabe = 61936
    Config Timer1 = Timer , Prescale = 1024
    Enable Interrupts
    Config Int0 = Falling
    Enable Int0
    On Int0 Zaehlen
    On Timer1 Mytimer
    Timer1 = Timervorgabe
    Enable Timer1
    Start Timer1
    Config Lcd = 16 * 2
    PORTB.0 = 1
    
    Do
    Cls
    Lcd Drehzahl
    Waitms 100
    Loop
    
    Zaehlen:
    Zaehlerstand = Zaehlerstand + 1
    
    Return
    
    Mytimer:
    A = Zaehlerstand
    Drehzahl = A * 60
    Timer1 = Timervorgabe
    Zaehlerstand = 0
    
    Return
    
    End
    auf dem Display steht nur 0_ und wenn ich int0 auf 0 ziehe passiert trotzdem nichts.

  4. #14
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Also, am Programm seh ich da mal nix mehr.
    Du mußt am Taster messen, ob erst 5V und bei drücken 0V sind.
    und, wenn geht, auch am Pin.
    Nochmal nachsehen, ob's der richtige PIN ist.
    GND Taster == GND Mega8 ?
    Wenn's geht , ev. mit Testverbindung den Pin mal direkt auf GND ziehen.

    Seltsam, mit dem INT0 kämpfen einige.

    Ev. Probieren mit INT1 ?
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #15
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.12.2004
    Ort
    Ulm
    Alter
    38
    Beiträge
    136
    also an pb.0 liegen 5V an, bei Drücken des Tasters sind es 0V.
    Ich habe jetzt mal testweise den int1 genommen, aber es funktioniert auch nicht. int1 ist schon pb.1 oder?

  6. #16
    Benutzer Stammmitglied
    Registriert seit
    14.09.2005
    Alter
    69
    Beiträge
    77
    Ich möchte auch einen Drehzahlmesser bauen, darum benutze ich mal diesen Thread.

    All die Beispiele für Drehzahlmesser die ich hier gefunden habe funktionieren alle gleich.

    .ich möchte eben die Impulse (Flanken) die in einer Sekunde an int0 ankommen. Diese werden dann in U/min umgerechnet und auf dem Display ausgegeben. Der Timer sollte also nach jeder Sekunde überlaufen.
    Also Impulse/ Sekunde Zahlen und mit 60 multiplizieren. Ich glaube aber daß dieses Messung falsch ist, denn in einer Sekunde kann die Drehzahl sich erheblich verändern.

    Mann könnte jetzt jede Zehntelsekunde messen, und dann die Drehzahl ausrechnen. Was aber meiner Meinung nach auch nicht klapp. Weil ich ja bei einer Sekunde oder Zehntelsekunde nicht unbedingt eine Vollumdrehung hab.

    Ich glaube der richtige Weg ist es, die Dauer zwischen zwei Impulse zumessen, und dann die Drehzahl errechnen.

    Würde mal gerne andre Meinungen zu dem Problem hören.


    mfg
    guy

  7. #17
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    "Kommt darauf an" ist immer eine gute Aussage. Je niedriger die Drehzahl (eigentlich die Impulszahl), desto besser der letztgenannte Weg.
    Das gößte abdeckbare Bereich hast du, wenn du beide Methoden automatisch umschalten kannst.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  8. #18
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.06.2005
    Ort
    DD
    Beiträge
    519
    Je nach Aufbau kann das natürlich anders sein, aber ich hab große Probleme gehabt mit nem CNY70 große Drehzahlen zu messen. Bei kleinen alles kein Problem, aber wenn's dann an die 5000UpM gingen zumindest bei mir dann viele Takte verloren.

    Nur so als Tip, falls jemand ähnliches vorhat.

    Grüße; ähM_Key

  9. #19
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.06.2004
    Beiträge
    1.941
    wenn du 8mhz oder einen 16mhz nimmst, hast überhaupt keine probleme mit 20000 u/minute. Bascom verschlingt intern zuviel zeit. ich kann mit meinem fastavr-basicprogramm mit 8 mhz über 18000 auslesen und dem cny70.
    mfg pebisoft

  10. #20
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.06.2005
    Ort
    DD
    Beiträge
    519
    Bei mir lag's nicht am Controller, sondern dass dem CNY70 zwar soviel licht relfektiert wurde, dass er bei langsamen Drehzahlen schaltete aber bei größeren hat's dann nicht mehr ausgereicht.

    MK

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests