www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Polyphones Modul


Autor: Dennis Liebig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich möchte meiner Nichte ein Stofftier mit einer individuellen Melodie
schenken , aber es schein auf dem Markt nichts dergleichen zu geben.
Also selber bauen ???

hat jemand damit erfahrung damit wie ich ein Modul baue das ich mit
einer individuellen Melodie , schön wäre da natürlich eine Polyphone
bestücke ??

das dan in einstofftier einzuarbeiten und mit einer art taster zu
versehen sollte das kleinzte Problem ein .

Was brauche ich dazu ???
Bin zwar geübt mit dem Umgang mit Lötkolben , habe aber keinen
Lösungsansatz .
Auch bei dem Programirren eines Chips soll es nicht scheitern , da werd
ich schon jemand finden , ansonten wird sich ein Programmer halt
angeschaft ( kann mann ja bestimmt noch mal gebrauchen )

Ich bin nur leider noch ein Neuling in diesem Bereich .

Dieses Problem hört sich vieleicht völlig idiotisch an , aber es liegt
mir sehr viel daran ..

Schon mal Danke

MfG

Dennis

Autor: Steffen Burr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dennis,

zum Beispiel bei Conrad Elektronik gibt es ein fertig aufgebautes MOdul
(für etwa 20 Euro), mit dem du die Melodie (ca. 20s) aufnehmen kannst.
Per Tastendruck wird das dann abgespielt. Du musst dich nur noch um den
Einbau in das Stofftier kümmern - du brauchst nix löten. Wenn du
längere Spielzeiten brauchst, gibt es meiner Meinung nach auch Chips,
die Sound speichern können. Sind auch relativ einfach aufzubauen - aber
eben ohne Elektronikkenntnisse doch weit schwieriger als ein komplett
fertig aufgebautes Modul. Evtl. findest du auch ein digitales
Diktiergerät, das genug Speicher bietet.
Schwierigste, aber unabhängiste Lösung dürfte sein, wenn du die Melodie
in einem EEPROM speicherst und über einen uC ausliest und dann über
einen DAC rausgibst. Abar das dürfte für so ein Projekt etwas zu
schwierig sein ;)

Grüße
Steffen

Autor: Dennis Liebig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Steffen

Schon mal danke für die schnelle Antwort, die ersten 2 Lösungen hatte
ich auch schon überlegt , aber ich wäre sehr an der letzten
interesiert.
Aber nicht nur aus dem Grund ein einfaches Geschenk zu bauen , sondern
vieleicht auch mal ein erstes Projekt in die Richtung EPROM
Programmierung zu gehen . (zu zeit beschrenken die sich auf Python und
shell )
Daher würde ich dies gerne als erstes Testprojekt betrachten , denn für
ein solches Modul hätte ich dann auch noch andere Verwendungszwecke.

Wenn du mir da vieleicht helfen könntest ??

MfG

Dennis

Autor: Steffen Burr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Ich kann es zumindest versuchen (auch wenn ich noch kein Projekt in
dieser Richtung verwirklicht habe).

Du benötigst also einen EEPROM - hier bietet sich ein I²C EEPROM an,
der wegen seiner Ansteuerung recht einfach ist. Allerdings muss man
hier auf die Geschwindigkeit achten, da bedingt durch die serielle
Datenübertragung die Geschwindigkeit recht langsam ist. Als Alternative
könnte man auch ein paralleles EEPROM verwenden, dass eine viel höhere
Geschwindigkeit aufweist. Allerdings benötigt dies auch mehr Portpins
(bei I²C nur 2), was möglichweise dann einen größeren Microcontroller
verlangt.

Als uC könntest du einen AVR verwenden, aber auch ein MSP430 wäre
interessant, da dieser eine sehr gering Stromaufnahme hat und damit
bestens für BAtteriebetrieb geeignet ist. Dieser liest dann nach
Tastendruck das EEPROM aus und gibt die gespeicherten Daten an einen
Digital Analog Converter weiter. D.h. ich würde die Daten mit einer
bestimmten Speichertiefe einspeichern - der Wert gibt also
gewissermaßen die Amplitude des Lautsprechers wieder. Hinter den DA
Wandler kommt dann noch eine einfache Verstärkerschaltung, die das
Ausgansgsignal verstärkt und dann dem Lautsprecher weitergibt.

Evtl. Kannst du einen uC mit AD Wandler verwenden und hier ein Mikrofon
anschliesen (oder direkt das Soundsignal vom PC einkoppeln) und damit
eine Aufnahmefunktion realisieren.

Wichtig ist, dass du dir erst mal überlegst mit welcher Qualität und in
welcher Länge der Sound abgespielt werden soll (also welche
Speichertiefe, welche Abtastfrequenz). Dann kann man Aussagen über den
zu verwendenden ADC / DAC, über das EEPROM und den uC machen.

Grüße
Steffen

Autor: Dennis Liebig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@steffen

Erst mal zur Anmerkung , bin begeistert von der Hilfsbereitschaft.

Also , zur länge und Qualität : um mal einen Vergleich zu schaffen :

Das ganze sollete von Länge und Qualität eines Aktuellen  Händy
entsprechen, das Polyphone Klingeltöne beherscht.
( dies ist der beste vergleich der mir eingefallen ist da jeder schon
mal dieses gehört hat )

Das ganze sollte natürlich so kompakt wie möglich sein , da ich es auch
für andere zwecke nutzen möchte z.b. modellbau etc.

Die eingabe (töne) muss nicht auf der schaltung selbst möglich sein ,
sie kann ruhig direkt in den EEPROM geschrieben werden .

Frage: was brauch ich alles dazu ?? (derzeit nur im besitz einer
Lötstation)
Und am Rande , was kostet das ungefähr ?  ( ist ja auch nicht ganz zu
vernachlässigen)

MfG

Dennis

Autor: Steffen Burr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Tja, du brauchst ein EEPROM (ich würd sagen so ein paar 100 kb) - je
nachdem 5 Euro oder so. Einen uC - sagen wir mal 10 Euro. Ein DAC
Wandler - ca. 3 Euro. zusätzlich brauchst du Platinenmaterial, einen
Quarz, ein paar Kondensatoren eine Verstärkerschaltung einen
Lautsprecher und ein paar Widerstände. Sollte so etwa auf 20 - 25 Euro
pro Platine kommen. Evtl. auch billiger, wenn du einen kleineren uC
verwenden kannst ... Zusätzlich brauchst du ein Programmiergerät (ein
gutes für AVRs zum selberbasteln auf dieser Seite). Evtl. noch ein
Programmiergerät für den EEPROM.
Alles in allem ist es aber recht günstig.

Dazu brauchen tust du eben die Teile, die ich oben genant habe. Ein
Multimeter, ein Netzteil und Kabel sind immer von Vorteil. Ein
Oszilloskop ist natürlich auch gut - aber nicht nötig. Falls du die
Platinen selbst ätzen willst (und nicht nur auf Lochraster aufbauen
willst) benötigst du dazu auch noch eine Ausrüstung.

Damit das ganze klein wird, kannst du alles in SMD aufbauen. Dabei
musst du dann aber Platinen ätzen und das Lötei ist auch nicht ganz
ohne. Dafür wird alles schön klein und kostet zudem noch weniger.

Leider bin ich mit Handys nicht so informiert. Über die Qualität von
polyfonen Klingeltänen und über die Länge kann ich eigentlich nix
aussagen. Ich schau mal, ob ich im Netz ein paar Infos finde ...

Grüße
Steffen

Autor: Steffen Burr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich das jetzt richtig verstanden hab, können Polyphone Handys bis
zu 16 Töne gleichzeitig abspielen. Das benötigst du ja sicherlich
nicht.

Die Möglichkeit, wie ich es oben beschrieben hab ist reecht speicher
aufwändig. Dafür kann sie aber alle Arten von Sounds abspielen (auch
Stimme, etc). Solltes du das aber nur für Melodien brauchen, wäre es
sinnvoller, einige Töne fest (z.B. 40 verschiedene) reinzuprogrammieren
und diese dann nur noch über ein entsprechendes Byte im EEPROM
aufzurufen, bei dem dann gleichzeiting ncoh die Länge angegeben wird.
Dadurch hättest du die Möglichkeit längere Töne zu erzeugen und weniger
Speicheraufwand. Allerdings kannst du damit dann nur einstimmige
Melodien abspielen und keine Sprache / verschiedene Instrumente
aufnehmen ...

Grüße
Steffen

Autor: Peter Dannegger (peda)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mal was ähnliches gemacht.

Die Wiedergabe erfolgt mit 8Bit.

Da es original einen Motorsound abspielen sollte, kann mit einer
Analogspannung die Abspielgeschwindigkeit variiert werden
(11..22kSample).

Über einen RS-232 Anschluß können neue Sounds einprogrammiert werden.

Anbei der Schaltplan ohne NF-Verstärker.

Das Programm ist in C geschrieben.

Bei 8kSamples kommt man auf max 8s bei einem 24C512 als Speicher.

Zum Programmieren nimmt man WAV-Files, denen noch ein spezieller Header
vorgesetzt werden muß, der die Start- und Endadresse der einzelnen
Sounds enthält.



Peter

Autor: Dennis Liebig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@steffen , @peter

Beide versionen hören sich sehr vielversprechend an .
Also ich möchte damit schon z.b. die melodie bzw. den gesamten Song
abspielen.
@peter: wenn der titel so 4 min lang ist was brauche ich dan für einen
Speicher ??

@stefen : welche länge der Titel kann ich abspielen , bei der oben
genanten version ??(mit fest einprogrammierten Tönen)
Wie viele Töne kann man damit gleichzeitig abspielen ?

Danke

Dennis

Autor: Steffen Burr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
4 Minuten Spielzeit wirst du mit dem Waveformat nicht in einer halbwegs
ordentlichen Qualität hinbekommen. Das dürfte so bei ca. 40-50 MB
Speicher liegen und bei einem MB oder so hören die EEPROMS imho auf.
Falls du das wirklich verwikrlichen willst, musst du auf eine andrere
Technik umschwenken - z.b. Multimediacard oder Festplatte. Aber dann
wirds groß, teuer und vor allem extrem schwierig.

4 Minuten Spielzeit sollten mit meinem Vorschlag locker drin sein.
Allerdings ist hier prinzipiell nicht die Spielzeit begrenzt, sondern
viel mehr die maximale Anzahl verschiedener Töne (ähnlich wie bei den
'alten' Handys z.B. Nokia 3310). Du kannst hier prinzipbedingt auch
nur einen Ton gleichzeitig abspielen. Willst du mehrere gleichzeitig
abspielen, wächst der Aufwand beträchtlich. Stellt sich also die Frage,
ob das wirklich von nöten ist ...

Also einfach erklärt würde das System folgendermaßen gehen:es werden
z.B. 1 Byte verschiedene Frequenzen fest einprogrammiert (der Verlauf
der Ausgangsspannung) also 256 verschiedene. 0 = Pause (kein Ton) 1 =
220 Hz; 2 = ... Hz. Das ganze sollte dann eben auf einer Tonleiter
basieren. also doppelte Frequenz = 1 Oktave. das 2. Byte enthält die
Länge des Tones (also 0-255) z.B. 0 = 1 ms 255 = 1 s
D.h. in einem MB Speicher könntest du also mehr als 524000 Töne
verwenden. d.h. 145 Stunden Musik - zumindest theoretisch. Also genug
Platz für deine 4 Minuten. Am Anfang sollte noch die Länge des
Musikstückes stehen. Dann kannst du ein Softwareprogramm schreiben, mit
dem du die Sounds kreiren kannst und anschließend auf das EEPROM
brennen kannst ...

Grüße
Steffen

Autor: Dennis Liebig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@steffen


Ich danke dir rechtherzlich ,ich würde vorschlage  wenn ich alle
notwendigen geräte und Bauteile habe, werden wir dieses Gespräch
fortsetzen.

MfG

Dennis

P.S. so muss ein Forum sein (schnell , sachlich , korrekt)

Autor: Steffen Burr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau!

Am besten du mailst mir, wenn du dein Material hast und noch FRagen
hast. Meine Adresse: steffen.burr@rfds.net

Grüße
Steffen

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gab doch mal (vor Ewigkeiten) "Tracker" z.B. für den C-64 (auch
PC?). Hier wurden einzelne Töne gesampled und konnten dann in
verschiedenen Tonhöhen reproduziert werden. Damit war schon recht
realistischer Sound möglich, auch polyphon.

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.