Hi,
um meine Elektronikkenntnisse zu verbessern, möchte ich DSP näher
behandeln. Doch wie fangt man hier am besten an, welche Starter Kits
gibt es (Piccolo, TMS320 F28, ..)
Welche Bücher/Internetseiten könnt ihr mir empfehlen?
mfg
Hallo killer89,
>meine Elektronikkenntnisse zu verbessern
Wie weit sind denn Deine Elektronikkenntnisse? Kannst Du mit einfachen
Microcontrollern (8bit) und den Entwicklungsumgebungen umgehen, kannst
Du in C programmieren?
Grüße
Du brauchst keine Hardware für den DSP Einstieg.
Besorg dier eine MATLAB Raubkopie.
Alternativ tuts auch Scilab:
* http://www.scilab.org/
Oder Python mit NumPy / SciPy:
* http://www.python.org/
* http://numpy.scipy.org/
* http://www.scipy.org/
Dann brauchst du ein gutes Buch:
* Understanding Digital Signal Processing
* http://www.dspguide.com/ (kostenlos online)
Die Algorithmen kannst du dann leicht in MATLAB testen und plotten.
Du kannst auch "Real World" Daten (Biler, Sound, Messdaten) importieren
und damit spielen.
Erst wenn du das alles drauf hast ist Hardware angesagt.
Simulieren tust du das meiste auch später noch vor der Implementierung.
Viel Spaß!
Hallo killer89,
wenn Du Hardware möchtest: Da gibts bei den einschlägigen Herstellern
(AD, TI, Arizona Micro, Freescale,...) Eval-Boards mit dem Chip und
meist mit Peripherie-Anschlussmöglichkeit. Der Debugger ist auch meist
dabei wie auch eine IDE. Die Kosten fangen bei 29EUR an und hören bei
500EUR noch nicht auf.
Wichtig ist dass Du Dir dazu Gedanken machst, in welche Richtung Du
weiterarbeiten möchtest: Einige DSPs sind in Richtung Audio ausgelegt
(I2S, Codec-Interfaces, ...), die anderen in Richtung Maschinensteuerung
(Timer, schnelle 10/12bit AD, Wandler, CAN, ...).
Grüße
hallo,
ich hab mit dsp noch nie was gemacht, doch ne frage, ich mache derzeit
mit nem NE555 impule im 1 MHz bereich (+- paar %) und brauche
impulslange von 61 ns und der rest zum 1 MHz pause.
ist so was mit dsp machbar ?
welchen chip brauch ich dazu ?
gibt es da irgendwo was an fertigem code ? eventuell von einem anderen
anfaenger hier ? womit ich das schnell mal ausprobieren kann ?
ich hab arduino im einsatz, also C waehr schon toll
danke vorab !!!
gruss
w
Hallo wbeppler,
dazu brauchst Du keinen DSP sondern einen ausreichend genauen Zähler in
einem Microcontroller. 61ns ist ein bischen unorthodox zusammen mit der
Bedingung 1MHz. Wenn es aber 60ns sein dürfen geht das relativ einfach.
Was brauchst Du:
a) einen uC deiner Wahl mit 16MHz oder vielfachen davon
b) einen Timer darin der auch mit der Taktfrequenz (siehe a) laufen kann
c) ein Vergleichsregister (meit Compare.... genannt)
Der Timer wird auf Teilerfaktor 16 (oder passend zur Taktfrequenz)
eingestellt damit er alle 1,0us auf 0 zurückgesetzt wird. Das
Comparregister wird so eingestellt dass es bei Timerrücksetzen den
Ausgang auf 1 setzt und beim Vergleichswert auf 0 setzt. Als
Vergelichswert wird 1 eingestellt.
Diese Funktion erfüllen die mir bekannten STM32 (STM) und C2000 (TI)
Architekturen, sicher auch andere.
Grüße
Hallo wbeppler,
Mit einer Einschränkung: Hab mich verrechnet, es kommen dann 66,6 ns
raus. Wenn's genau 60ns werden müssen musst du mit 50MHz takten,
Zählerüberlauf auf 50, Comparregister auf 3 einstellen.
Grüße
danke fuer den tip,
da hab ich mich auch schon mal versucht
ich hab nen atmel mit 16 MHz genommen und ben auch bischen rumprobiert
und die taktfrequenz verbogen, das ging prinzipiell ganz gut, nur dass
ich am ausgang keine saubere flanke hatte sondern einen graesslichen
verschnitt.
es war eie arduino platine, da ist ja nix an den ausgaengen dran, doch
mein oszi zeigte zwar richtiges timing, doch wenn ich mich rcht erinnere
kam der ausgang grad mal auf 2V innerhalb der 60 ns.
also warum ich die 60 ns brauche kann ich auch noch erklaeren.
ich pumpe in ne 10 uH Spule und schalte ab. damit bekomme ich die
notwndige spannung nen 1 MHz piezo-schwinger zu erregen.
nun habe ich mit der NE555 schaltung immer den aufwand abzugleichen und
ich haab eh nen atmel an bord. und wenn ich die 61 ns noch +-10 oder 20
% variieren koennte, und somit vieleicht die leistung noch beeinflussen.
das mache ich derzeit mit 2 verschiedenen endstufenschaltungen.
ich bin fuer jeden tip dankbar, vor allen wuerde mich interessieren ob
es normel ist was ich an meinem atmel gemessen hab oder ob der schnelle
anstiegsflanke zeigen muesste. ebenso wuerde ich auch gerne mal wissen
ob eben mit einem DSP so was machbar ist und falls ja mit welchem ?
gruss und dank
wolfgang :-)
Hallo wbeppler,
>und wenn ich die 61 ns noch +-10 oder 20% variieren koennte
Ich sehe, die 61ns scheinen doch recht kritisch zu sein.
Dazu brauchst Du einen PWM Timer mit besserer Auflösung. Mir ist da nur
von der C2000 Serie der in Erinnerung der im Prinzip eine Aufklösung von
150ps hat, Real wirst Du damit die 1ns schaffen. Die Platform (sind
"DSPs", eigentlich Microcontroller mit DSP ähnlicher Architektur und
Peripherie) ist proprietär, Entwicklungswerkzeuge sind in den Eval-Kits
mit drinnen, EVAL-Kits ab 29USD direkt bei TI.
Um das Ausgangssignal zu verstärken solltest Du einen entsprechenden
Schalter bauen (Du sprichts von Endstufe) oder - was vielleicht auch
ausreicht - einen 74ACT/F/AS04 Inverter nachschalten. Die haben
normalerweise eine sehr hohe Strombelastbarkeit.
Wie gut der Atmel die 55...67ns Impulse bauen kann (61ns +/-10%) kann
ich Dir nicht sagen, vermute aber eher nicht da du dazu einen PWM
benötigst der besser auflöst als die 16MHz. Und das geht nur bei Zählern
die eine etwas andere Architektur haben.
Anstiegsflanke:
Die hängt normalerweise von R und C ab. Leitungswiderstand und Kapazität
nach Masse, also Eingangskapazitzät der nachfolgenden Schaltung. Die mir
bekannten UCs sollten aber in der Lage sein (sofern die Ausgangspins
nicht druch Einstellungen "bedämpft" worden sind - siehe Beschreibung
der GPIO Pins des Prozessors, da kann schon mal eine SlewRate
Beschränkung einschaltbar sein oder es gibt Tiefpassfunktionen [STM,
50MHz, 10MHz]) inenrhalb von wenigen 10...100ns den Ausgang vollständig
zu treiben. Hängt sicher auch am Ausgangsstrom.
Grüße
der treiber am ende ist nicht mein probelm
da hab ich was mit vorstufe und endstufe, funtioniert hervorragend
Si4464 heisst das zauberwort und die beispielschaltung aus dem
datenblatt
mein problem ist, dass ich IMMER 1 MHz brauch, die ceramic ist halt so.
probelm 1: die 61 ns impulsbreite muss ich immer justieren
problem 2: beim NE555 veraender ich dabei IMMER auch die 1 MHz weshalb
der abgleich immer ne arbeit ist.
problem 3: im laufenden betrieb moechte ich zur leistungsreduzierung
(derzeit mache ich das mit vorwiederstaenden) die impulsbreite etwas
verkuerzen
also suche ich nen chip den ich am liebsten programmieren kann
also meine frage nochmals
GEHT SO WAS MIT DSP ??? ich hab noch nie DSP's verwendet, wenn mir einer
von euch einfach sagen kann, so was geht, z.b. mit xxx
danke noch fuer die ratschlaege mit der filtersache bei den ausgaengen,
das kann natuerlich schon sein, muss ich mal das datenblatt unters
kopfkissen nehmen, danke !!
fuer tips auch hier bin ich immer dankbar
beim gurgel kommt da nicht nur beauty bei heraus.
ich hatte nen schweren unfall und ultraschall stimuliert den
knochenwachstum, d.h. ein knochenbruch geht 30% schneller oder wie bei
mir (ich hatte 17 brueche !!!) ich hatte an einer fixen verschraubten
stelle (da ist kein wachstumsreitz) gar keine knochenheilung.
nachweislich nach 10 monaten hab ich mit ultraschall begonnen und
innerhalb 2 wochen hatte ich erste Kallusbildung
siehe
http://wolftec.biz/ultraschall/html/fraktur-verlauf.html
ich habs dokumentiert.
das ist auch ni neues, die medizin kennt das sehr gut, nur die kassen
zahlens halt nicht, zumindest bei mir nicht, nicht privat, 2te klasse
halt.
elektronik sinnvoll angewendet :-)
nur ist da noch viel zu beachten, ich arbeite dran, doch mein ruecken
schmerzt nicht mehr so arg, die ultraschall-massage tut gut.
und zu beauty, ja da solls auch helfen, z.b wirkstoffe einzubringen, ich
rate aber vor abnemhen mit ultraschall ab, falls das auch wo angepriesen
wird, das ist quasi NF wie ultraschall zum vergaser reinigen, da
passiert kavitation und das ist ungesunnd !
bei interesse gerne :-)
gruss und dank
wolfgang :-)
Gehen wird das sicher mit einem DSP, ist aber keine rechenaufwendige
Anwendung, für die die DSPs gemacht sind. Ich würde, wenn's ein
Controller sein soll, hier eher zu XMOS tendieren (spezielle
Mikrocontroller mit enormer I/O-Performance, wenig verbreitet), oder zur
programmierbaren Logik greifen (CPLD, ggf. FPGA). Ein CPLD mit externem
Oszillator passender Takfrequenz löst das Problem schnell und einfach.
Man muß nur die gewünschte Funktion in einer
Hardwarebeschreibungssprache formulieren können (VHDL, Verilog, ggf.
ABEL), oder, je nach Entwicklungsumgebung, aus Logikgattern
schaltplanähnlich zusammenklicken.
hallo sebastian,
danke fuer diese hilfreichen tips
kannst du mit auch einen genauen typen sagen, also was wo ich nen
datenblatt finde und so was z.b. beim farnell oder sonstwo bestellen
kann ?
vielen vieln dank !
w
Kann mal bitte ein Admin alle Beiträge ab:
Beitrag "Re: DSP - wie anfangen"
löschen?
Ich hasse es, wenn Threads gekapert werden!
Macht doch bitteschön euren eigenen auf.
wieso neuer thread ?
es geht immer noch um meine erste frage:
dsp ? was und wie gehts und woher krieg ich es,
viele interessiert es halt was damit angestellt wird, sorry aber die
antwort bin ich schuldig wenn ich schon frage
hast du ein probelm damit ?
wie soll ich sonst in zukunft posten ?
gruss
w
> es geht immer noch um meine erste frage:
Falsch.
Hier geht es um die Frage nach dem Einstieg in die Digitale
Signalverarbeitung (DSP = Digital Signal Processing) von killer89.
Du suchst nach einer Lösung zu einer konkreten Aufgabenstellung, die im
übrigen überhaupt nichts mit digitaler Signalverarbeitung zu tuen hat.
> hast du ein probelm damit ?
Nein, aber ich habe ein Problem damit, dass du plenkst !
;)
> wie soll ich sonst in zukunft posten ?
Denk dir einen adäquaten Betreff aus, und erstelle einen neuen Beitrag
im Passenden Unterforum.
Hier würde ich z.B. "Generierung von periodischen 61ns Impulsen" im
Unterforum "µC & Elektronik" empfehlen.
Natürlich darfst du dich auch in laufende Diskussionen einbringen.
Diskussionen dürfen auch abschweifen.
Aber einfach in eine laufende Diskussion reingrätschen und das Thema an
sich reißen ist unhöflich, das machst du im RL auch nicht.
Gruß,
Thomas
Hallo Wolfgang (Wbeppler),
CPLD/FPGA kann das sicher. Musst Du aber eben die Architektur erst bauen
und dann ansteuern. Der C2000 (z.B. 28027) von TI hat die PWMs bereits
die mit einer Auflösung von nominell 150ps arbeiten (Ich habe diese
bereits verwendet). Du kannst die PWMs sowohl in der Frequenz als auch
der Pulsbreite in diesem Raster einstellen. Ist zwar ein bischen Aufwand
sich einzulesen, das wirst Du aber auch mit den programmierbaren HW
Architekturen benötigen.
Eval-Kit ab 39USD "http://www.ti.com/tool/tmds28027usb" inclusive
Entwicklungsumgebung und Emulator.
Damit hast Du Denke ich zwei vernünftige Vorschläge. Neue Fragen dazu
kannst Du ja in einem neuen thread (siehe Thomas) behandeln.
Und: Mein Bedauern zu dem Unfallgeschehen.
Grüße
Hallo zusammen,
möchte gerne noch mal auf den Einstig zurückkommen.
Kenne mich DSPs nicht wirklich aus, würde damit aber auch gerne einmal
experimentieren.
@ friedrich
Das 29€ Kit würde mich interessieren, weil damit nicht allzu viel kaputt
gemacht ist, wenn man scheitert. Um was für ein Kit handelt es sich denn
da und wo bekommt man es?
Gruß
Transi
Hallo Transi,
sorry, das Kit ist teurer geworden, hab's heute früh gesehen:
Eval-Kit ab 39USD "http://www.ti.com/tool/tmds28027usb" inclusive
Entwicklungsumgebung und Emulator. Direkt bei Ti bestellen.
Grüße
Hallo killer89,
suche bei TI den Begriff "TMDS28027USB" (oben rechts), erstes Ergebnis
des Suche.
Der Link ist direkt aus der Adresseleiste rauskopiert, scheint aber
direkt nicht zu gehen. Wenn Du suchst kommst Du auf dem gleichen Link
raus.
Grüße
du kannst dir für deine signalerzeugung mal den AT90PWM316 anschaun
(oder die geschwister davon): schnelle PWM-erzeugung mit über intern
PLL-generierte 64Mhz timertakt
ich selber beginne gerade mit einem DSP56364, ist zwar veraltet, hat
aber mehr als genug rechenleistung und mehr als 16 bit, was für audio
vorteilhaft sein kann - leider ist das zugehörige demoboard offenbar
nicht mehr aufzutreiben, auf mein posting in diesem forum weiter unten
hat niemand geantwortet
Es gibt nun auch ein Launchpad mit dem Piccolo (TMS320F28027) für
unschlagbare 17$ !
http://www.ti.com/tool/launchxl-f28027?DCMP=c2x-launchpad&HQS=c2x-launchpad-b
Ein JTAG Emulator (XDS100) sitzt schon auf dem Board mit drauf und die
CCS5 Version ist scheinbar auch uneingeschränkt nutzbar.
Nachteil scheint zu sein, dass man den Emulator nicht abtrennen kann wie
bei einem Discovery oder Xpresso :-(
Ich möchte mich da auch mal mit rein hängen und habe ein paar behämmerte
Neuling-Fragen.
a) gibt es ein paar gute Tutorials wie man das ganze mit Matlab oder
alternativen anfängt
b) ich hab gelesen dass es frühestens mit der Matlabversion 2008 läuft,
ich habe hier allerdings einen hüstel etwas alten Rechner für diese
Zwecke am laufen der durch seinen veralteten Chipsatz maximal 2007 zum
laufen bringt. Hat jemand Erfahrungen ob es damit auch funktioniert?
c) habe ich das richtig verstanden, dass man einen kompletten DSP mit
den Tools simulieren kann und keine Hardware benötigt? Mir ist klar dass
ein Simulationsprogramm keine echte Hardware in Dingen Geschwindigkeit
ect. ersetzt, es soll nur zu Lernzwecken dienen.
Mir gehts momentan nicht darum irgendein Projekt zu realisieren sondern
einfach nur darum mal reinzuschnuppern.
Spell schrieb:> a) gibt es ein paar gute Tutorials wie man das ganze mit Matlab oder> alternativen anfängt
Empfehlen kann ich keins, aber es sollte unter den "paar" wo Guuugl
liefert schon ein vernünftiges dabei sein:
www.google.de/search?q=matlab+tutorial+filetype%3Apdf
Spell schrieb:> b) ich hab gelesen dass es frühestens mit der Matlabversion 2008 läuft,> ich habe hier allerdings einen hüstel etwas alten Rechner für diese> Zwecke am laufen der durch seinen veralteten Chipsatz maximal 2007 zum> laufen bringt. Hat jemand Erfahrungen ob es damit auch funktioniert?
Du kannst auch ganz normal in C/C++ auf Deinem PC programmieren. Ist
meiner Erfahrung nach sowieso performanter. Und das "bischen" sollte
fast jeder Rechner hinbekommen, wenn Du nicht gerade in Echtzeit
hochkomplizierte Videoverarbeitung machst. Audio geht definitiv.
Spell schrieb:> c) habe ich das richtig verstanden, dass man einen kompletten DSP mit> den Tools simulieren kann und keine Hardware benötigt? Mir ist klar dass> ein Simulationsprogramm keine echte Hardware in Dingen Geschwindigkeit> ect. ersetzt, es soll nur zu Lernzwecken dienen.
Im Normalfall tust Du NICHT einen DSP simulieren. Du rechnest nur die
gleichen Dinge wie er auf einem PC. Du kannst z.B. einfach ein Micro an
Deinen PC anschließen, einen Lautsprecher und dann ein Programm
schreiben dass Dir das Micro ausliest...deine Signalverarbeitung
durchführt und dann wieder auf den Lautsprechern ausgibt. Tataaaa,
fertig.
Gleiches würde auch mit einer kleinen Webcam gehen, nur halt 2
Dimensional.
Du kannst also Dinge auf dem PC ziemlich leicht testen/implementieren
ohne Dich in eine spezielle Hardware einarbeiten zu müssen oder noch
schlimmer entwerfen zu müssen.
Ist also gerade für einen Anfänger auf jedenfall einfacher, da es
wirklich um die Signalverarbeitung geht und nicht darum wie ich dem ADC
die Werte entlocke.
Ok, du meinst also man sollte sich erstmal auf die allgemeine Anwendung
der Algorithmen beschränken und nicht gleich versuchen mit Spielerein
auf einer bestimmten Hardware anzufangen. Ich hatte gehofft dass die
Simulationssoftware sowas ähnliches wie Keil ist und spezielle DSP´s
Emulieren kann. Ich hatte mich bisher mal bei Analog Devices umgeschaut.
Danke erstmal für deine schnelle Antwort.
Wenn du specielle DSP algorithmen simulieren willst, ist der Skyeye
simulator vielleicht interessant. Damit kannst du die Performance
checken, ohne Hardware zu kaufen.
http://sourceforge.net/projects/skyeye/