-         

Ergebnis 1 bis 10 von 10

Thema: Lauflicht - einstellbare Geschwindigkeit - wie?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    12.06.2004
    Beiträge
    162

    Lauflicht - einstellbare Geschwindigkeit - wie?

    Anzeige

    Folgendes:Ich will eine Lauflichtschaltung bauen. Das Lauflicht soll 4 Programme haben:

    1. Lauflicht
    2. Zufall
    3. Strobo
    4. Alle An

    Die Programme durchschalten, die Treiber-Stufe für die Lampen und der AVR an sich ist alles kein Problem.

    Meine Frage ist bloß, wie kann ich extern die Geschwindigkeit einstellen? Wenn ich ne feste Geschwindigkeit hätte, wärs kein Prolem (waitms 500, etc.). Aber wie würdet ihr ne externe Geschwindigkeitsregelung machen? Poti mit Spannungsteiler am AD-Eingang? Oder doch andere Idee?

    Pls hlp.
    mfg,
    Cap.

  2. #2
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Hallo CapSob!

    Ich bin zwar ein PIC Benutzer, aber habe eine Idee, die Dir vielleicht sogar gefällt.

    Ich würde als externen Oszillator einen Spannung/Frequenz Wandler verwenden.

    MfG

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.11.2005
    Alter
    42
    Beiträge
    1.140
    Spannungs-Frequenz-Wandler geht natürlich auch. Aber wozu ein extra IC verbraten, wenn's mit AVR-Bordmitteln geht?

    Der Ansatz mit dem Poti am ADC ist schon mal gut. Damit hast Du Deinen Stellwert im Controller.

    Zur Geschwindigkeitssteuerung ist ein Timer mehr als prädestiniert.
    Mit einem Output Compare Interrupt kannst Du dann Dein Lauflicht steuern.

    askazo

  4. #4
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.970
    Hallo!

    Natürlich, mann muss immer eine Kompromisslösung finden. Meistens ist es schwerig, da je mehr Hardware, um so einfachere Software und umgekehrt.

    MfG

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    01.05.2007
    Beiträge
    47
    Hallo

    Ich habe sowas vor kurzem auch gemacht und habe es so gelöst:
    Wartezeit die mindestens einmal gewartet wird und je nach wunsch bis zu 255 mal hintereinander. Die Anzahl veränder ich bei mir per (Interrupt-)Knopfdruck. ADC und Poti ist aber auf jeden Fall bequemer, aber dann sind immer die Batterien so schnell alle.

    bart

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    09.07.2006
    Alter
    34
    Beiträge
    53

    Re: Lauflicht - einstellbare Geschwindigkeit - wie?

    Zitat Zitat von CapSob
    Poti mit Spannungsteiler am AD-Eingang? Oder doch andere Idee?
    .
    Genau so und der wert vom ADC kannst du direkt als wert benützen, also Wait "ADC Wert"

    ist doch voll eazy

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    09.07.2006
    Ort
    Schönstedt
    Alter
    31
    Beiträge
    20
    Hallo ich weiß jetzt zwar nicht mit welchem Controller du diese Schaltung aufbeuen willst, aber ich weiß das einige Controller als Taktgeber auch ein RC Glied unterstützen. Bei dieser Möglichkeit änderst du halt den gesammten Systemtakt des Controllers.

    Diese Möglichkeit hab ich schon mal bei einem PIC gesehen und im Datenblatt vom ATMega 16 steht dazu auch was drin. Vielleicht wäre das eine echte Alternative, denn so mußt du nicht irgendwelche Werte einlesen, analysieren und verarbeiten.

    mfG Tim
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken rc_takt.jpg  

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    12.06.2004
    Beiträge
    162
    danke erstmal für die schnellen antworten!

    ich würde für die schaltung eine mega8 verwenden, der liegt bei mir so grad rum

    ich finde die idee von -tim- eigentlich am besten - würde das rc-glied auch beim mega8 funktionieren?

    EDIT:
    beim rc-glied würde dann, wie in deinem bsp, r durch nen poti ersetzt werden - so könnte ich die gesamte geschwindigkeit des uC einstellen - ja?
    END EDIT

    alternativ würde ich die idee von Otti20vt aufgreifen. scheint recht simpel zu sein. bloß hab ich da folgendes problem:

    ich hab beim mega8, bzw. allgemein, noch nie mit dem adc gearbeitet. gibts da irgendwo ein beispiel, am besten mit programmcode in basic? genauso bei spannungsteiler. ich hats zwar mal in der schule, aber das ist schon ewigkeiten her.

    ich weiss bloß noch, dass ich z.B. einen widerstand mit zB 2k nehm, und nen poti mit 2k. widerstand zu 5V, poti zu masse. zwischen widerstand und poti bekomm ich jetzt ne spannung von 0V - 2,5V - richtig? wie müsste ich dann die ADCref am mega8 beschalten?

    ahh.... input-overflow...

    pls hlp.

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    09.07.2006
    Ort
    Schönstedt
    Alter
    31
    Beiträge
    20
    Hallo,
    also der ATMega 8 unterstützt die RC Taktgebung. Siehe dazu das Datenblatt ab Seite 29.

    Wie du schon geschrieben hat, der Widerstand ist bei veränderbarem Takt durch ein Poti zu ersetzen. Wie genau jetzt die Formel zur Berechnung der Taktfrequenz ist, welche Werte der Kondensator und das Poti haben muss, kann ich dir auf Anhieb nicht sagen, aber im Netz sollte dazu was zu finden sein.

    mfG Tim

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    1.892
    Das mit der R/C Taktung würd ich lassen.
    Ich hab ein Prog, das die Taktgeschwindigkeit am Controller umschaltet.
    Nach dieser Sequenz hängt sich das Programm jedesmal auf.
    Ausserdem kann es passieren, das das R/C Glied bei bestimmten Widerstands zu Kapazitätswerten nicht mehr zuverlässig anschwingt.

    Also die A/D Wandler Variante:
    Für den AREF Anschluß brauchst Du nur noch eine zusätzlichen 100nF Kondensator, wenn Du die interne Referenzspannungsquelle des ATMEGA 8 benutzt. Da es bei Dir ja nicht um absolute Präzision geht kann auch die Drossel am AVCC Eingang entfallen, einen 100nF Kondensator würd ich dem AVCC Eingang schon gönnen. Also AVCC mit VCC verbinden + 2x100nF anschalten.
    Mit deiner Beschaltung 2k Vorwiderstand + 2k Poti (10k + 10k ginge auch), sollten sich A/D Werte von 0...1000 erzeugen lassen.
    Diesen Wert kannst Du ja dann direkt in deiner "waitms" Warteschleife verwenden. Eventuell solltest Du den Bereich um 0 etwas entschärfen indem Du z.B. 100 zum A/D Wandlerwert dazuzählst.

Berechtigungen

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