-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Ansteuerung eines Magnet statt über PWM über Analogspannung

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    21.10.2004
    Beiträge
    8

    *gelöst* Ansteuerung eines Magnet statt über PWM über Analogspannung

    Anzeige

    Hallo (zuerst ich bin leider nur Maschinenbauer..),
    ich will die Spannung für einen Magnet langsam erhöhen um den Magnet nicht so "schlagartig" zu bewegen.
    Magnet ist ZMF-2039d.002 6V-7W (http://tremba.de/zylindermagnete/db-...-2039d.002.pdf)
    Ich übersteuere den Magnet kurzzeitig mit 12V an, damit er anzieht.
    Im angezogenen Zustand genügen dann 4V um ihn zu halten.
    Das ganze mache ich bisher über einen PWM-Ausgang vom Arduino, der einen TIP120 ansteuert.
    Klicke auf die Grafik für eine größere Ansicht

Name:	schaltung.JPG
Hits:	10
Größe:	16,1 KB
ID:	33141
    Das geht soweit, aber durch PWM summt der Magnet.
    Ich habe das jetzt mit einem Labornetzteil mit verschiedenen Spannungen ausprobiert - da summt nix.
    Also liegt es an der PWM Ansteuerung (Rechteckspannung) des TIP120.

    Ich habe jetzt keine Ahnung wie ich eine Analogspannung herbekomme!
    Gegoogelt gibt es Möglichkeiten den PWM zu glätten (die ich nicht richtig verstehe!)
    oder kann ich über einen DAC (keine Ahnung taucht gegoogelt öfters auf) eine Analogspannung erzeugen?

    Da ich ich kein Elektrotechniker bin, bräuchte ich einen Schaltplan!!
    Es wäre kein linearer Spannungsverlauf notwendig, das könnte ich per Software über die Vorgabewerte ausgleichen.
    Kann mir da jemand helfen??
    Danke!
    Grüße
    Geändert von GeorgB (29.12.2017 um 12:52 Uhr)

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    22.06.2009
    Beiträge
    1.302
    Wenn dich das summen stört erhöhe einfach die PWM Frequenz in den nicht höhrbaren Bereich.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    21.10.2004
    Beiträge
    8
    Das wäre eine Superlösung - danke für den Hinweis!
    Wie geht das beim Arduino? Gerade gegoogelt: geht das so einfach?
    Nach dem Artikel schreibt man diese eine Zeile einfach ins setup. (http://arduino-info.wikispaces.com/Arduino-PWM-Frequency)
    Hat das einen Nachteil?
    //or Arduino Uno, Nano, Micro Magician, Mini Driver, Lilly Pad and any other board using ATmega 8, 168 or 328**
    //---------------------------------------------- Set PWM frequency for D5 & D6 -------------------------------
    //TCCR0B = TCCR0B & B11111000 | B00000001; // set timer 0 divisor to 1 for PWM frequency of 62500.00 Hz
    //TCCR0B = TCCR0B & B11111000 | B00000010; // set timer 0 divisor to 8 for PWM frequency of 7812.50 Hz
    TCCR0B = TCCR0B & B11111000 | B00000011; // set timer 0 divisor to 64 for PWM frequency of 976.56 Hz (The DEFAULT)
    //TCCR0B = TCCR0B & B11111000 | B00000100; // set timer 0 divisor to 256 for PWM frequency of 244.14 Hz
    //TCCR0B = TCCR0B & B11111000 | B00000101; // set timer 0 divisor to 1024 for PWM frequency of 61.04 Hz
    //---------------------------------------------- Set PWM frequency for D9 & D10 ------------------------------
    //TCCR1B = TCCR1B & B11111000 | B00000001; // set timer 1 divisor to 1 for PWM frequency of 31372.55 Hz
    //TCCR1B = TCCR1B & B11111000 | B00000010; // set timer 1 divisor to 8 for PWM frequency of 3921.16 Hz
    TCCR1B = TCCR1B & B11111000 | B00000011; // set timer 1 divisor to 64 for PWM frequency of 490.20 Hz (The DEFAULT)
    //TCCR1B = TCCR1B & B11111000 | B00000100; // set timer 1 divisor to 256 for PWM frequency of 122.55 Hz
    //TCCR1B = TCCR1B & B11111000 | B00000101; // set timer 1 divisor to 1024 for PWM frequency of 30.64 Hz
    //---------------------------------------------- Set PWM frequency for D3 & D11 ------------------------------
    //TCCR2B = TCCR2B & B11111000 | B00000001; // set timer 2 divisor to 1 for PWM frequency of 31372.55 Hz
    //TCCR2B = TCCR2B & B11111000 | B00000010; // set timer 2 divisor to 8 for PWM frequency of 3921.16 Hz
    //TCCR2B = TCCR2B & B11111000 | B00000011; // set timer 2 divisor to 32 for PWM frequency of 980.39 Hz
    TCCR2B = TCCR2B & B11111000 | B00000100; // set timer 2 divisor to 64 for PWM frequency of 490.20 Hz (The DEFAULT)
    //TCCR2B = TCCR2B & B11111000 | B00000101; // set timer 2 divisor to 128 for PWM frequency of 245.10 Hz
    //TCCR2B = TCCR2B & B11111000 | B00000110; // set timer 2 divisor to 256 for PWM frequency of 122.55 Hz
    //TCCR2B = TCCR2B & B11111000 | B00000111; // set timer 2 divisor to 1024 for PWM frequency of 30.64 Hz
    Geändert von GeorgB (28.12.2017 um 22:29 Uhr)

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    30
    Beiträge
    4.686
    Ich habe mir das Register jetzt nicht genau angeschaut, aber prinzipiell funktioniert das mit dem Prescaler (=Vorteiler). Der Takt für den Timer kommt (normalerweise) vom Prozessortakt (also z.b. 16MHz), dieser wird aber vorher noch durch den Prescaler geteilt.

    Es gibt aber einen Nachteil, je höher die Frequenz, desto niedriger die Kraft des Magneten.

    Du musst einen Kompromiss finden.

    Was stört dich am Geräusch?

    MfG Hannes

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    21.10.2004
    Beiträge
    8
    Hallo Hannes,
    Das Geräusch ist so ein Fiepen, eher unangenehm.
    Der Magnet gehört zu einem Kunstwerk, dass in einem Empfang steht (daher sollte es möglichst leise sein..)

    Dumme Frage: warum sinkt die Kraft des Magneten?
    Mfg

    PS: ich könnte die Frequenz auch noch unten unerhörbar senken (30Hz hört man glaube ich nicht mehr).
    Oder ist nach oben besser?

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    30
    Beiträge
    4.686
    Eine Spule ist eine Induktivität, die eine gewisse Zeit benötigt damit sie geladen wird. Wenn du die PWM Frequenz hinaufsetzt kann es sein das du die Induktivität nicht mehr weit genug laden kannst. Du hast somit weniger Kraft. Das ist eine Kurzfassung.

    Du kannst versuchen die Frequenz heruntersetzen, wird aber auch nicht funktionieren. Im Takt wird dann der Magnet angezogen, somit hast du Schwingungen. Das kannst du aber leicht testen, einfach den Prescaler ändern.

    Ich würde die Frequenz nach oben setzten, sollte die Kraft zu niedrig sein kannst du die Spannung für die Spule erhöhen.
    Eine weitere Möglichkeit wäre ein Schaltnetzteil zu verwenden, als Sollwert nimmst du die PWM (mit Tiefpass).

    MfG Hannes

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    50
    Beiträge
    2.816
    Ich war ja erst beleidigt durch den Satz: (zuerst ich bin leider nur Maschinenbauer..).
    Denn ich bin Maschinenbautechniker.
    Dann habe ich mir mal die aktuellen Lehrpläne angesehen.
    Umwelttechnik gab es 1992 noch nicht aber dafür fehlen aktuell etwa ein Drittel der Themen die ich damals gelernt habe. Inklusive der kompletten Elektrotechnik.
    Für mich unverständlich, denn Maschinenbau ohne Elektrotechnik und Elektronik ist Stand neunzehntes Jahrhundert.

    Ein DAC ist ein "digital analog converter" Der kann entsprechend der digitalen Auflösung (8-Bit, 10-Bit, 12-Bit, etc.) innerhalb seines Spannungsbereichs eine abgestufte Analogspannung erzeugen.
    Allerdings kann der keine Leistung treiben, Da die Strombelastbarkeit nicht wirklich hoch ist.
    Man würde mit dem Signal einen Stromverstärker treiben mit dem man dann eine belastbare Spannung erhällt.
    Ggf. auch zuerst einen Spannungsverstärker, wenn der Spannungsbereich zu klein ist.

    Bei einem PWM hast Du ein Rechtecksignal das zwichen 0V und Vmax. wechselt.
    Schaut man sich mal die einfachste Form eines Gleichrichters an (Einweg-Gleichrichter aus einer Diode),
    Sieht man, das man ein ähnliches Signal (positive Sinushalbwelle und kein Rechteck) bekommt wie bei PWM.
    https://www.elektronik-kompendium.de...lt/0201071.htm

    Der einfachste Weg daraus etwas ähnliches wie eine Gleichspannung zu bekommen, ist eine Glättung mit einem Ladekondensator.
    https://www.elektronik-kompendium.de...lt/0210251.htm

    Die Restwelligkeit ist die "Brummspannung".
    Nimmt man eine höhere Frequenz wird die Brummspannung kleiner aber die braucht man ja damit der Mittelwert der Ausgangsspannung variiert.

    Der Ladekondensator bildet mit dem Leiterwiderstand einen RC-Tiefpass, der nur noch den Gleichspannungsanteil durchlässt.
    https://www.elektronik-kompendium.de...lt/0206172.htm
    Mit einem besseren Tiefpass gibt es dann auch ein besseres Ergebniss.
    Ein erster Schritt ist der Einbau einer Induktivität um einen LC-Tiefpass zu erhalten.

    Hier ein Artikel zur Problematik PWM-Analogwandlung:
    https://www.elektronikpraxis.vogel.d...deln-a-523233/
    Geändert von i_make_it (28.12.2017 um 23:55 Uhr)

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    974
    Die Diode 1N4001 ist eine langsame Gleichrichterdiode für Netzfrequenz. Bei jeder Einschaltung des Laststroms fließt kurzzeitig ein erhöhter Sperrstrom, bis die Diode wieder ordentlich sperrt. Ab und an, also bei 50..100Hz, tut das nicht weh. Bei hohen Schaltfrequenzen kommt aber eine zu hohe Verlustleistung zustande, die die Diode zerstören kann. Nimm eine sogenannte "schnelle" Diode, Fast Recovery, Fast Rectifier, oder wie auch immer sie genannt werden, z.B. SB140 oder MBRS140. Also 1A und 40V, die restlichen Daten sind dann auch gut genug. Alles besser geeignet als die 1N400x.

    @meine Vorredner, die mich beim Schreiben überholt haben:
    Wozu eine weitere Induktivität einbauen? Die Magnetwicklung ist doch selbst eine. Und zwar eine ziemlich große.
    PWM, Induktivität und Freilaufdiode - das ist doch quasi ein komplettes Schaltnetzteil, genauer : Tiefsetzsteller.
    Die Stromwelligkeit und damit das Brummen/Fiepen wird durch die Erhöhung der Schaltfrequenz reduziert.
    Geändert von RoboHolIC (29.12.2017 um 00:28 Uhr)

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    21.10.2004
    Beiträge
    8
    Danke für die Infos!
    Zitat Zitat von i_make_it Beitrag anzeigen
    Der einfachste Weg daraus etwas ähnliches wie eine Gleichspannung zu bekommen, ist eine Glättung mit einem Ladekondensator.
    https://www.elektronik-kompendium.de...lt/0210251.htm
    ..
    Der Ladekondensator bildet mit dem Leiterwiderstand einen RC-Tiefpass, der nur noch den Gleichspannungsanteil durchlässt.
    https://www.elektronik-kompendium.de...lt/0206172.htm
    Ladekondensator und Widerstand klingt nach einen einfachen Versuch.
    Arduino PWM hat default 0..5V etwa 500Hz, Spannungsbereich 4V-12V/1A für Magnet (Magnet 6V 7W mit Übersteuerungspush auf 12V)
    Welche Bauteile mit welchen Werten würdest du nehmen? die Schaltung kommt dann vor dem TIP120?
    Könntest du mir den Schaltplan skizzieren? Danke!

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    21.10.2004
    Beiträge
    8
    Inzwischen habe ich es mit der höheren Frequenz ausprobiert.
    TCCR1B = TCCR1B & B11111000 | B00000001; // set timer 1 divisor to 1 for PWM frequency of 31372.55 Hz
    Funktioniert bestens!
    Ich habe es spaßhalber noch mit niedrigen Frequenz probiert, das geht aber nicht, da der Magnet dann vibriert.
    Leistungsmäßig merkt man keinen Unterschied, scheinbar ist da die Frequenz noch zu niedrig.
    Summen ist weg.
    Danke für die Hilfen!!

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Problem: Ansteuerung eines LCD über I2C
    Von Olli08 im Forum Asuro
    Antworten: 21
    Letzter Beitrag: 10.06.2010, 22:42
  2. Direkt Flashen statt über IR
    Von iBot im Forum Asuro
    Antworten: 20
    Letzter Beitrag: 09.09.2008, 17:37
  3. Ansteuerung über USB ?
    Von Bura.Tino im Forum Elektronik
    Antworten: 24
    Letzter Beitrag: 14.12.2007, 10:42
  4. Ansteuerung eines Gleichstrommotors über PC
    Von motornoob im Forum Motoren
    Antworten: 1
    Letzter Beitrag: 23.03.2007, 08:58
  5. magnet statt servo, bauformen.
    Von seifenfisch im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 22.10.2004, 14:09

Stichworte

Berechtigungen

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