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
Hey ja C beherrsche ich ziemlich gut und mit Mikrocontrollern kenne ich mich auch gut aus. Verwende zurzeit das AVR Studio. mfg
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
1MHz Ultraschall - da kommt bei Gurgel nur Beauty als Applikation raus. Korrekt?
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
Hey, danke für den Link, doch leider führt er ins Nichts. Könntest du bitte nochmals schauen? lg und vielen dank
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
^^ das mit der "Raubkopie" sollte mann vielleicht noch mal überarbeiten (streich zumindest das "Raub" raus)^^
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/
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.