- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 15

Thema: Drehzahl Messung

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Zitat Zitat von robonooby Beitrag anzeigen
    Wie meinst du die Interruptflags löschen? Wie geht das?
    Bei Prozessoren zwingt ein gesetztes Interrupt Request Flag den Controller in die Interruptbearbeitung, sofern diese freigeschaltet ist. Diese Flags sind statisch und "speichernd", damit auch die Priorisierung (Rangfolge) zwischen verschiedenen Interruptquellen funktioniert, d.h. damit der Prozessor keinen rangniedrigeren Interrupt Request vergisst.

    Wenn man in der Serviceroutine die Löschung des IRQ-Flags unterlässt, wird derselbe IRQ immer und immer wieder ausgeführt und der Prozessor kommt nicht mehr zur Bearbeitung des Hauptprogramms.

    Nun weiss ich aber nicht wie Bascom das handhabt; dazu müsste sich ein Kenner äußern.

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.06.2010
    Ort
    Darmstadt
    Beiträge
    136
    Ah okay. ja scheinbar braucht man das nicht zu tun. War wirklich nur nen Berechnungsfehler wie Besserwessi geschrieben hat, dadurch kam dann nen 0,0... Wert raus und er hat nichts angezeigt.
    Also vom Prinzip her funktioniert es jetzt. Raddrehzahl Rechts (Blaue Kurve oben im Oszi Bild) zeigt er jetzt ca 18 Umdrehungen pro Sekunde an.
    Danke hierfür schonmal für eure Hilfe.

    Was nicht richtig geht ist Drezahl Links (Gelbe Kurve oben im Oszi Bild). Hier erkennt er scheinbar doch nicht die kleinen Pieks. Sind scheinbar doch zu schmal. Es kommt hier immer Null raus. Wenn mans mal 5 Minuten laufen lässt auch ab und an mal 1 oder 2 aber mehr nicht. Also muss ich hier noch was machen.
    Weis vielleicht jemand woran das liegen könnte? Ist wirklich der Sensor nicht richtig justiert? Hab das Fahrgestell so gekauft mit allem drum und dran.
    Es gibt keine Probleme, es gibt nur Lösungen

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Hallo robonooby.

    Im oberen zeitgerafften Bild sieht man ja auch deutlich, dass der Scheitelwert des gelben Signals starken Schwankungen unterworfen ist, während der blaue Kanal immer voll in die Sättigung geht. Da solltest du wirklich vorrangig rangehen.

    Bring es optisch und elektrisch in Ordnung, also Lichtschranke und ggf. Fächerscheibe justieren, kontrollieren. Fächerscheibe OK oder evtl. zu kontrastschwach???

    Einen Schmitt-Trigger würde ich zuletzt einbauen. Wenn nach dem nächsten Stoß der vielleicht jetzt "auf Kante" gerade noch funktionierende Lichtschrankenkanal gar nicht mehr funktioniert, hilft dir nämlich auch kein Schmitt-Trigger mehr.


    Gruß
    RoboHolIC
    Geändert von RoboHolIC (02.08.2013 um 09:45 Uhr)

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.06.2010
    Ort
    Darmstadt
    Beiträge
    136
    Okay. also muss ich wohl oder übel doch den Bot nochmal komplett zerlegen^^
    Schade, wird wieder viel Arbeit xD

    Werd das dann mal die nächste Woche angehen und Bericht erstatten ^^
    Es gibt keine Probleme, es gibt nur Lösungen

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    706
    Wenn man in der Serviceroutine die Löschung des IRQ-Flags unterlässt, wird derselbe IRQ immer und immer wieder ausgeführt und der Prozessor kommt nicht mehr zur Bearbeitung des Hauptprogramms.

    Nun weiss ich aber nicht wie Bascom das handhabt; dazu müsste sich ein Kenner äußern.
    ...oder man schaut ins Datenblatt! Da steht folgendes:

    "When an event on the INT0 pin triggers an interrupt request, INTF0 becomes set (one). If the Ibit
    in SREG and the INT0 bit in GICR are set (one), the MCU will jump to the corresponding
    Interrupt Vector. The flag is cleared when the interrupt routine is executed"

    Heißt also im Klartext, dass das IRQ-Flag automatisch gelöscht wird, wenn die ISR ausgeführt wird. Soviel ich weiß gilt dies für alle Interrupts in allen AVR-Controllern. Und da die Löschung des IRQ-Flags auf Hardware-Ebene geschieht, ist es auch egal welche Sprache man zum programmieren des Controllers verwendet!

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Zitat Zitat von Sauerbruch Beitrag anzeigen
    ...oder man schaut ins Datenblatt! Da steht folgendes:
    Danke dir, Sauerbruch, für die Korrektur!
    Hab ich nicht gemacht, weil es nicht meine µC-Welt ist. Da habe ich mir wohl aus früheren Threads zu AVR-Interrupts falsch zusammengereimt, dass es mit dem Löschen der IRQ-Flags gleich wie bei den PICs wäre.

    Zitat Zitat von Sauerbruch Beitrag anzeigen
    Heißt also im Klartext, dass das IRQ-Flag automatisch gelöscht wird, wenn die ISR ausgeführt wird . . . auf Hardware-Ebene . . . egal welche Sprache man zum programmieren des Controllers verwendet
    Eine Fehlerquelle weniger, das macht ja auch Sinn. Wieder was gelernt.

    Gruß
    RoboHolIC

  7. #7
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Beim AVR hat jeder Interrupt eine eigene ISR. Entsprechend kann die Hardware das Interruptflag auch löschen. Beim PIC geht das nicht, weil man die Flags ggf. noch braucht um die genaue Interruptquelle zu finden.

    In der Regel löscht die Hardware beim AVR auch das Interruptflag. Es gibt aber wohl ausnahmen bei der UART / USI, wo man man die Empfangenen Daten auslesen muss zum löschen. Aber das macht man in der ISR in aller Regel sowieso.

Ähnliche Themen

  1. Messung der Drehzahl
    Von Collage im Forum Sensoren / Sensorik
    Antworten: 6
    Letzter Beitrag: 21.05.2013, 16:12
  2. Temperatur Messung
    Von Raphi im Forum Sensoren / Sensorik
    Antworten: 4
    Letzter Beitrag: 06.03.2006, 18:51
  3. C-Messung
    Von wurzn im Forum Sensoren / Sensorik
    Antworten: 8
    Letzter Beitrag: 14.11.2005, 22:29
  4. redox-messung
    Von im Forum Sensoren / Sensorik
    Antworten: 0
    Letzter Beitrag: 27.05.2005, 07:06
  5. Drehzahl messung
    Von rup im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 7
    Letzter Beitrag: 12.04.2005, 18:44

Berechtigungen

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

LiFePO4 Speicher Test