- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 20

Thema: Buzzer mit PWM über Transistor

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.700
    Zitat Zitat von Peter(TOO) Beitrag anzeigen
    Was ist mit dem Widerstand .. Piezo .. gegen +5V oder gegen Masse? .. was ToggleBit() im Detail macht
    Hallo Peter, danke für Deine ausführliche Hilfe.

    Mich interessierte ja primär die Lautstärkeänderung des Piezobuzzers durch Parallelschalten eines Widerstandes. Hintergrund ist, dass ich über solche Erscheinungen (Schwingkreise und so) keinen blassen Schimmer habe.

    Nun habe ich also ein paar Varianten gemessen und Variationen mit Ergebnissen in die Tabelle eingetragen. Dort ist auch das von mir seit "Ewigkeiten" verwendete Makro "ToggleBit" beschrieben; keine spezielle Bibliothek, nur eben Teil einer eher kurzen, von mir erstellten Liste von Makros.

    ......Bild hier  
    ......© 2017 oberallgeier

    Sonstige, nicht erwähnte Daten des Testaufbaus:
    Mega1284P @ 20 MHz, 5 V ± 0,1 V (Labornetzteil - Strombegrenzung 3A), Port D/D2, Buzzer mit Drahtanschluss ca. 200 mm, Soft"PWM" aus dem Zeittakt für "Boardzeit und Allerlei".

    Leider habe ich keine Beeinflussung der Lautstärke bei 4 kHz gemessen, siehe Spalte "Sound". Andere Frequenzen habe ich nicht gemessen, die 4kHz scheinen ja etwa die Eigenfrequenz der Piezoscheibe zu sein (Datenblatt liegt nicht vor). Der Rest ist eigentlich verständlich: wird der Portpin getoggelt, dann ist "immer" Sound, wird nur das DDRB D2 getoggelt dann ist Sound nur dann zu hören, wenn der Buzzer zwischen Vcc und Pinn D2 läuft.

    Einen Aufbau mit Transistor habe ich nicht erstellt/getestet. Die mageren 7 mA, die der Buzzer bei Aktivität zieht sollte ja den Controller noch nicht wirklich belasten. (ok, nur die grobe Schätzung per DMM - über den gesamten Stromverbrauch der Platine per DMM)
    Ciao sagt der JoeamBerg

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    67
    Beiträge
    2.435
    Hallo Geier,
    Wie man der Tabelle entnehmen kann ist im oberen Teil das Port als Gegentakt-Endstufe geschaltet.

    In der unteren Hälfte hast du die OC-Variante, welche nur gegen Masse schaltet.
    Allerdings stimmt dein Aufbau immer noch nicht mit dem Original überein. :-P

    Also weiter im Text, Das schaffen wir!

    Das kann man noch umkehren und nur gegen Vcc schalten, wenn man den Ausgang auf 1 schaltet, an Statt 0.
    Dann kehrt sich die Tabelle um, also gegen GND hast du sound, gegen Vcc ist Ruhe.

    Was jetzt bei deinem Versuch noch nicht berücksichtigt ist, ist der Pull-Up, welcher im ATmega eingebaut ist, den kann man auch noch an/abschalten und der liegt in der Grössenordnung von 50k, wenn ich das gerade richtig im Kopf habe.
    Dieser liegt noch parallel zu deinem externen Widerstand.

    Schwingkreise berechnen ist gar nicht nötig, RC-Berechnungen genügen.

    Die Kapazität deines Piezo hast du mit 26nF angegeben, wobei sich diese mit Frequenz und Spannung ändern kann. Aber als Hausnummer kann man damit rechnen.

    Frequenz ist 4kHz, also 250µs Perioden-Dauer.
    eine Halbwelle sind also 125µs

    Also rechnen wir mal:
    Tau = R*C = 125µs

    R = 125µs / 26nF = 125-6s / 26-9F = 4.8073 Ohm

    So in etwa ist ein Kondensator nach 5*Tau geladen/entladen.

    Theoretisch bringt dann ein Wiederstand von etwa 1k die grösste Spannung am Piezo.
    Mit 5k hast du etwa 70% der maximalen Spannung, das wären akustisch aber nur -3dB, für's Ohr also praktisch gleich laut
    Ohne einen parallelen internen Pull-Up sollte aber ein hörbarer Unterschied zwischen 1k und 100k sein.

    ------------------

    So, ich habe jetzt noch meine Faulheit überwunden und im Datenblatt nachgesehen:
    http://www.atmel.com/Images/Atmel-42..._Datasheet.pdf

    Der Pull-Up hat 20-50k dieser liegt parallel zu deinem externen Widerstand.


    Also, setze PDR auf 1 und hänge den Piezo gegen GND. Dann liegt der interne Pull-Up parallel zum Schalter und spielt keine grosse Rolle mehr.

    Dann sollte ohne externen Widerstand annähernd nichts zu hören sein.

    Figure 15-2, Seite 97 zeigt den Port-Aufbau.
    In der Mitte ist der Tri-State Ausgangstreiber, dieser wird über das PDDR-Bit (oberstes Flip-Flop) Hochohmig/aktiv geschaltet.
    Der Transistor oben links, schaltet den Pul-Up Ein/Aus.
    Wie ich gerade sehe, lassen sich die Pull-Ups bei ATmega 1284 nur global für alle Ports über ein Bit schalten.

    Ich kenne andere µC, da lassen sich die Pull-Ups per Port oder sogar per Pin einzeln schalten.
    Könnte also Ärger geben, wenn du alle Pull-Ups abschaltest
    Da macht die Variante mit 1 im PDR keine Probleme.

    MfG Peter(TOO)

    - - - Aktualisiert - - -

    Zitat Zitat von oberallgeier Beitrag anzeigen
    Einen Aufbau mit Transistor habe ich nicht erstellt/getestet. Die mageren 7 mA, die der Buzzer bei Aktivität zieht sollte ja den Controller noch nicht wirklich belasten. (ok, nur die grobe Schätzung per DMM - über den gesamten Stromverbrauch der Platine per DMM)
    Da ist natürlich noch eine kleine Falle versteckt.
    Was du mit dem DMM misst ist das der durchschnittliche Strom.
    Der kann theoretisch auch aus Stromspitzen von 1A bestehen.

    Beim theoretischen laden eines idealen Kondensators ist die Stromspitze unendlich.

    Praktisch wir er in deinem Fall durch den Ausgangstransistor des Ports begrenzt.
    Mit einem Oszilloskop kann man das dann sehen, da liegt am Pin nicht wirklich eine Rechteckspannung an, Das ist dann mehr eine Trapezspannung.
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

Ähnliche Themen

  1. Selbsthaltung über Transistor
    Von blondie im Forum Elektronik
    Antworten: 10
    Letzter Beitrag: 17.04.2014, 17:15
  2. Motor über Transistor schalten
    Von andyrhoads im Forum Motoren
    Antworten: 19
    Letzter Beitrag: 26.02.2013, 17:09
  3. Buzzer für Silvesterparty
    Von EscoR im Forum Elektronik
    Antworten: 4
    Letzter Beitrag: 22.12.2012, 08:47
  4. Anschluss meherer LED´s über Transistor
    Von pmaler im Forum Elektronik
    Antworten: 10
    Letzter Beitrag: 22.03.2008, 19:43
  5. IR-Sendediode nur über Transistor an µc?
    Von Goblin im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 13.02.2006, 13:24

Berechtigungen

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

LiFePO4 Speicher Test