-         

Ergebnis 1 bis 6 von 6

Thema: Motoransteuerung mit PWM

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    16.03.2006
    Beiträge
    14

    Motoransteuerung mit PWM

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hi,
    ich bin noch ziemlicher Anfänger,was das Thema Atmel und Bascom angeht...
    Ich möchte gerne einen DC Motor mit Hilfe einer PWM und eines Mega8 Ansteuern,ich hätte das ganze gerne so,das der Motor langsam von Aus bis zu einer bestimmten Geschwindigkeit hochgeregelt wird.

    Ich habe mir bereits den code im Wiki angeschaut,so vom Grundprinzip her ist mir das ganze auch klar,aber ich weiß nicht wie ich das ganze nun dazu kriege,das er es hochregelt.

    Code:
    $regfile = "m8def.dat"
    $crystal = 3686400
    
    Config Pinb.1 = Output
    
    Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 1
    
    Do
     
    
    Loop
    
    End
    Ich würde mich sehr freuen,wenn mir jemand evtl. einen kurzen Beispiel Code geben könnte,woran ich erkennen kann,wie das funktioniert...

    Vielen Dank und viele Grüße

    Chris

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    14.02.2006
    Ort
    Hattingen
    Beiträge
    17
    Möchtest du ihn über einen Poti steuern?!

    Oder soll er nach einem Sollwert geregelt werden?!?!

    Das Grundprinzip ist einfach, das du in "PWM1a" und "PWM1b" Werte reinschreibst, wie auch im Artikel beschrieben, z.B.:

    PWM1a = 200

    Je nachdem dreht sich der Lüfter dann schneller oder langsamer...

    Aber erklär doch nochmal genauer, was du wissen möchtest...

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    16.03.2006
    Beiträge
    14
    Hi,
    ok war vielleicht doch etwas umständlich erklärt...also das ganze soll später dann in einem fahrenden Modellauto "werkeln",sprich das Fahrzeug hält an(dem Atmel wird der Strom "geklaut"),und wenn er dann wieder Strom kriegt soll er das Fahrzeug langsam auf Höchstgeschwindigkeit beschleunigen,dafür fehlt mir allerdings noch eine Idee,wie genau ich das mit Bascom realisiere.

    Viele Grüße

    Chris

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    14.01.2006
    Ort
    Hattingen
    Alter
    52
    Beiträge
    984
    Du kannst die PWM einfach mit einer For-Next-Schleiße hochfahren.

    Hier ist ein Beispiel:

    Enable Interrupts
    Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Down , Prescale = 1

    'ich hab eine 10-Bit-PWM genommen, du kannst aber auch 8 bit nehmen

    Dim I As Word ' Laufvariable

    For I = 0 To 1023 ' bei 8 Bit PWM entsprechend ...to 255
    Pwm1a = I

    waitus 10
    ' <--- Hier kannst du einen Wert für eine Wartezeit in µs eintragen.
    ' So kannst die die Geschwindigkeit der Rampe einstellen

    Next I
    Do

    ' PWM auf maximum lassen und Warteschleiße, bis der Saft abgedreht wird..
    Loop

    Gruß sigo

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    14.02.2006
    Ort
    Hattingen
    Beiträge
    17
    So ähnlich hätte ich es auch gemacht, sigo!!

    So wird es auch klappen, vorher aber ausprobieren, mit welcher Frequenz dein Motor am besten klar kommt, und ob du ne Glättung brauchst, etc!!

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    16.03.2006
    Beiträge
    14
    Moin,
    vielen Dank für die schnelle Hilfe!!!!...

    Gruß

    Chris

Berechtigungen

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