www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM Motor an Atmega 8


Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, alle AVR Profis!

Für ein Projekt will ich den Timer1 für PWM nutzen.
PB1 (PWM) eines Atmega8 liegt am Gate eines Mosfet(BUZ11), das einen 
Gleichstrommotor(300 Watt) von 12 Volt auf Masse zieht.
Ich will den Motor nun mit PWM regeln. Er treibt ein POV Globus an. 
Leider habe ich bisher null Erfahrung mit PWM.
Takt=8Mhz

PB1 auf Ausgang:
ldi r16, 0x02
out DDRB, r16


PWM Frequenz auf ca. 8 khz. Ist das bei einem 300Watt DC Motor sinnvoll 
und richtig programmiert?

ldi r16, 1<<WGM12 | 1<<CS12 | 1<<CS10
out TCCR1B, r16

Ich will dass die PWM jetzt erstmal 50/50 high/Low an PB1 legt. Wie kann 
ich das Verhältnis ändern?

Wie kann ich die PWM starten und stoppen?

Ich hoffe, jemand kann mir da weiterhelfen.

Schon mal tausend Dank, ich brech mir hier echt einen ab.

Dirk

Autor: Jannis C. (kabelwurm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Bei einer PWM unterscheidet man zwischen einer invertierten und einer 
nicht invertierten PWM. Der Unterschied liegt darin das bei der 
invertierten PWM der Wert des Registers OCR im Gegensatz zur Pulsbtreite 
steht.
Was nun ein richtiger Wert für ich, kann ich nicht sagen, ich habe 
selber fast keine Erfahrung mit PWMs. Auch zur Schaltung kann ich keine 
Komentar geben.
Das Verhältnis steht im OCR Register.
Im allgemeinen zu 
PWMs:http://www.mikrocontroller.net/articles/AVR-Tutorial:_PWM
Die PWM kannts du stoppen, indem du bei einer invertierten PWM das OCR 
auf den höchsten Wert legst. Bei der anderen Methode umgekehrt.
Gruß Jannis

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke schon mal für deine Tipps. Habe nun anhand des Tutorials folgenden 
Code geschrieben:
;TIMER1   PB.1 auf Ausgang
    sbi      DDRB, 1
;Hoch=1 runter=0    | 8bit Timer
    ldi      r16, 1<<COM1A1 | 1<<WGM10
    out      TCCR1A, r16
;  Frequenz= 8000000/512/ 8 = 2 Khz     
    ldi      r16, 1<<CS11
    out      TCCR1B, r16
;   Vergleichswert
    ldi      r16, 0xFF
    out      OCR1AH, r16
    ldi      r16, 0x00
    out      OCR1AL, r16

Leider bleibt der Motor absolut ruhig. Setze ich PB1 ohne Timer mit sbi 
auf 1 läuft er. Die Schaltung ist also korrekt. Kann mit jemand 
helfen???

Vielen Dank,
Dirk

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Du konfigurierst eine 8-Bit-PWM (Top=$FF) und setzt den Comparewert auf 
$FF00. Was soll da passieren?

MfG Spess

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey Spess
Du bist ein cooler Typ! Genau da war der Fehler.
Hab jetzt ne 00 0F in das Register geschrieben und der Motor läuft. Bin 
richtig froh. Vielen Dank für die schnelle Hilfe!

Viele Grüße,
Dirk

Autor: Knut (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dirk schrieb:
> Hey Spess
> Du bist ein cooler Typ!

Da is aber jemand euphorisch ;-)


Knut

Autor: Der Elektroniker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
BUZ11 ist nicht die beste Wahl, kein Logiklevel MOSFET, dürfte bei
genutzten 300W(25A) zu heiß werden , besser einen Logiklevel MOSFET 
nehmen, IR hat viele, die bei Reichelt erhältlich sind.

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi.

Buz11 hatte ich grade da. Haben ihm einen dicken Kühlkörper verpasst mit 
aktivem Lüfter, hoffe das haut hin. Ich gehe auch nicht auf die 300 
Watt, da der Motor 27000 Umdrehungen kann, ich aber nur 3000 brauche.

Arbeite nun mit einer PWM Frequenz von 2 khz. Da haben wir zwar ein 
wenig Pfeifen, aber dafür wohl einen besseren Wirkungsgrad. (Weniger 
Verlust durch Schaltvorgänge im Mosfet)

Werde mich aber schonmal über Logiklevel Mosfets schlau machen. Danke 
für den Tipp.

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Elektroniker.

Wir haben Doch einige Probleme mit der Leistung und der 
Wärmeentwicklung.
Suche nun ein Logiklevel Mosfet und Treiber Mosfet.

Woran erkenne ich denn ein Logiklevel Mosfet?
Ich suche hier:
http://www.mikrocontroller.net/articles/MOSFET-%C3...

- Am Gate habe ich 5 Volt in PWM
- DC Motor soll mit 12 V laufen
- Das Mosfet muss min. 30 Ampere abkönnen


Vielen vielen Dank,
Dirk

Autor: soundso (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einen Logik-Level-FET erkennst du an der benötigten Gate-Source Spannung 
um ihn voll auszusteuern. Du hast vom uC 5 Volt zur Verfügung, also 
musst du einen LL-FET finden der bei 5Volt GS Spannung voll ausstuert. 
Bei 30Amper Typen dürfte das aber schwierig werden.

nimm besser einenen Treiberchip und einen richtig dicken FET.

Beispiele:

Treiberchip: TC4421
FET: sowas wie IRL3103

die Beschaltung des Treibers und Fet findest du im Datenblatt des 
Treibers.
Achja, den Treiber kannst du mit 4.5 bis 18 Volt speisen. Diese Spannung 
liegt dann am Ausgang des Treibers an, wenn du also einen FET mit 12Volt 
GS-Spannung hast, Speise den Treiber mit 12 Volt.

Gruss SoundSo

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Soundso und danke für die schnell Hilfe.

Das FET ist schonmal super.
Als Treiber bräuchte ich einen, der auch bei Conrad zu haben ist. Ist 
die einzige Möglichkeit, da heute noch dran zu kommen.

MCP1407-E/P klingt auch passend, ist aber auch nicht bei conrad zu 
haben.

http://www.conrad.de

Kannst du da mal schauen?
Riesen Danke,
Dirk

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zur Not könnte ich auch bei Reichelt Express bestellen.
Würde dieser Mosfet Treiber zum IRL3103 passen?

MCP 1407-E/P :: Single MOSFET Treiber  6 A  DIP-8
http://www.reichelt.de/ICs-M-MN-/MCP-1407-E-P/inde...

Autor: Der Elektroniker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dirk,

Die Typen von IR haben meist ein L in der Bezeichnung,
ein universeller, billiger ist z. B. IRLZ34N, leider bei deiner 
Anwendung
schon an der Grenze und daher nicht unbedingt zu empfehlen, aber immer 
noch besser als ein BUZ11.

Grüße

der Elektroniker

Autor: Dirk (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute.

Hab nun den BUZ11 gegen ein IRLZ34N getauscht. Leider bleibt der Motor 
ruhig...
Selbst wenn ich 5 Volt ohne OWM ans Gate lege, zuckt er nicht einmal.

Schaltplan ist im Anhang. Sieht jemand einen Fehler?
Habe keinen Mosfet Treiber verbaut. Ist das das Problem?

Vielen Dank und schöne Grüße,
Dirk

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dirk schrieb:
> Habe keinen Mosfet Treiber verbaut. Ist das das Problem?

Das stünde im Datenblatt.

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am fehlenden Mosfet Treiber liegts nicht.
Habe ein zweites Netzteil mit 5 Volt an das Gategelegt und langsam bis 
auf 12 Volt aufgedreht. Das Mosfet schaltet einfach nicht durch...

Hab es auch schonmal ausgetauscht. Gleiches Problem...
Pin Belegung hundert mal geprüft.... Ich werd noch verrückt.

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Problem gelöst, das Bauteil war defekt. Jetzt läufts ^^ Kein treiber IC 
notwendig.

Das Mosfet kann nur 30 Ampere führen. Kann ich zwei davon parallel 
schalten, um den Maximalstorm zu verdoppeln?

Autor: Floh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dirk schrieb:
> Das Mosfet kann nur 30 Ampere führen. Kann ich zwei davon parallel
> schalten, um den Maximalstorm zu verdoppeln?

Ja kannst du, da Schaltbetrieb.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.