mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wie wird ein Ton für die Sirene erzeugt/programmiert?


Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich möchte ein neues Projekt anfangen.
Ich habe mir gedacht, ich baue mal eine Sirene für meine vorhandene 
Alarmanlage.
Die Sirene selbst, also der Trichter ist von der "alten" Sirene 
vorhanden.
Die Frage ist halt nur, wie man den Ton erzeugt? Mit PWM?
Ich programmiere mit Bascom.
Ist schon mal Jemandem ein Beispielcode über den Weg gelaufen?
Würde mich sehr freuen.
Danke
Gruss Alex

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt eine Menge Sirenen,
bei den guten muss man nur einen Motor einschalten, also (oft 230V~) 
Spannung anlegen,
die anderen haben einen Piezo als Selbstschwinger der die Frequenz 
selbst vorgibt, der wird in Resonanz betrieben damit er möglichst laut 
wird, ein Transistor reicht als Verstärker, er tutet wenn Spannung 
angelegt wird,
und dann gibt es die billigen Dinger, Druckkammerlautsprecher oder 
sonstwas, die mit Wechselspannung genau passender Frequenz betrieben 
werden, wozu ein analoger Sinusoszillator dient. Auch den kann man 
bauen, und dann einfach seine Versorgungsspannung einschalten. Mit 
unterschiedlichen Tonhöhen ist es ja nix bei Sirenen.

Für Microcontrolleransteuerung sind die allesamt nicht gedacht, statt 
einem Sinus einen satten Rechteck vorzugeben wird nicht so gut klingen.

Autor: Löwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Für Microcontrolleransteuerung sind die allesamt nicht gedacht, statt
>einem Sinus einen satten Rechteck vorzugeben wird nicht so gut klingen.

Das ist kein Problem.

Der Attiny 45 z.B. hat einen High-Speed Timer, mit dem man einen 
wunderbaren Sinus erzeugen kann.

Geht sogar relativ einfach: Der High-Speed Timer läuft im PWM-Modus mit 
z.B. 500kHz.
Ein zweiter Timer läuft parallel dazu und gibt als Tastgrad eine 
Sinustabelle an den PWM-Timer.

Je schneller die Tabelle durchlaufen wird, desto höher ist der Ton. 
Außerdem lässt sich sogar die Lautstärke beeinflussen, wenn man sie 
prozentual von den Sinus-Werten abzieht.

Das Ausgangssignal sollte man noch durch einen Filter schicken, damit 
die hohen Frequenzen nicht zum Verstärker gelangen. Fertig ist der 
Sinus-Ton.

Für eine Ablaufsteuerung bräuchte man eigentlich einen dritten Timer, 
den der Attiny nicht hat. Als "Umweg" kann man hier den A/D-Wandler 
nehmen: Den lässt man durchgehend laufen und lässt nach jeder Wandlung 
einen Interrupt auslösen. So hat man eine dritte, langsame Zeitbasis mit 
der man die Tonhöhe & Länge erzeugen kann.

Autor: Franz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe sowas mal gebaut , das sogar "Offiziel" zum Einsatz kam.
Bestand aus 2 astabilen Multivibratoren, einem schnellen für den Ton und 
einem langsameren für das An- und Abschwellen. Sollte klingen wie die 
motorgetriebenen Luftschutzsirenen und tat es auch.

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.