Fórum témák

» Több friss téma
Fórum » DSP - Miértek, hogyanok
Lapozás: OK   2 / 3
(#) boczhunor hozzászólása Máj 31, 2010 /
 
Helló. Könnyen lehet készíteni IC-cel is. Pl. HM2007 IC és sok mág Speech Recognation IC van. Pl. ez EEPROM-on lévő hanganyaggal hasonlítja össze a bementi hangot és az alapján dönti el,hogy megegyezik vagy sem a bemeneti hanggal.
Én készítettem ilyen projektet AVR-vel. ATmega 1280-al. Mivel sok kimenetet kellett használni. Sajnos a kódot nem tudom megosztani mivel egy versenyre készült, de a működésről tudok beszélni. Először is bemegy az analóg jel, és azt szűröm a zajosjeltől. És akkor szépen kimondok egy szót. És akkor a mikrokontroller megnézi,hogy milye hosszú az a rész ameddig van bemeneti jel tehát beszéd. Utánna szépen a következő dolog amit párhuzamosan néz, a jelszinteket. Tehát,hogy hány magyaros hangsúlyos + van a szövegben. Tehát a magyar nyelvben és minden más nyelvben minden szónak megvan a hangsúlya/hangsúlyos kiejtése. Mint pl. a verseknél és a hangúlyosakat+ -al a hangsúlytalanok --al jelöltek. A + az a magánhangzó amire a hangsúly kerül. A - a hangsúlytalan magánhangzók összessége. Na és megszámolja a +-okat a program. Aztán pedig a végső dolog megnézi a frekvenciatartományt amibe a hang helyezkedik. És végül mindezek az adatok előre beírt adatokkal összehasonlítódnak. Majd a delta érték dönti el,hogy az eltérés a kontrollernek megadott adatokkal szemben nagy-e vagy kicsi. Ha kicsi,akkor teljesül egy feltétel és az a feltétel egy szó jelentésének dekódolását adja vissza a neki megadott fügvénynek. Tehát a változó értékét adja vissza. Ami az én programomban 1 ha az adatok megegeznek a 0 ha nem egyeznek meg. Tehát ha pl. a zajszűrés után a bementi hang azonos az egyik feltétel által vizsgált adatokkal, akkor az teljesül és pl. egy kijelzőn megjelenik egy válasz. Pl. én mondom "Helló" és ő kiírja "Szia". Ez már az AI hatását kelti. Tapasztalatból mondom, ha valaki tud programozni tényleg nem nehéz. Sajnos kódot, kapcsolást nem tudok publikálni de a működésről és/vagy további kérdéseket nyugodtan lehet kérdezni.
Üdv. Hunor!
(#) Rober_4 válasza boczhunor hozzászólására (») Jún 1, 2010 /
 
Amit leírtál nagyon érdekes eljárás, és nagyjából működhet is. Engem az érdekelne, hogy milyen elv alapján oldottad meg a spektrumanalizálást, tehát, hogyan tudtad meg, hogy mondjuk két csúcs, (vagy völgy) között, milyen frekvenciák vannak a váltakozó jelben.
(#) Rober_4 válasza Rober_4 hozzászólására (») Jún 4, 2010 /
 
Tehát arra gondoltam, hogy, ha a "nulla-átmeneteket" vizsgálom akkor körülbelül megkapom a legalsó frekvenciát az adott intervallumon. Az összes változás pedig megadja a legmagasabb felharmonikust. De egyszerűen nincs ötletem, hogyan lehetne a közbülső frekiket is megkapni...
Illetve gondoltam arra, hogy osztom az intervallumot az adott harmonikusok arányában, és az ezekhez tartozó változások fejezik ki a spektrumanalizálás értékeit az adott frekvencián, de úgy érzem, mintha ez sántítana valahol. Nincs erre valami egyszerű képlet, illetve eljárás?
(remélem érti valaki )
(#) El_Pinyo válasza Rober_4 hozzászólására (») Jún 4, 2010 /
 
Idézet:
„remélem érti valaki”

Csak sejtem, hogy mire vagy kíváncsi, de nem teljesen érthető a leírásod. Azért megpróbálok használható infoval szolgálni.
Ha az alapharmonikus megvan, akkor a felharmonikusok az alapharmonikus frekvenciájának egész számú többszöröseinél helyezkedhetnek el a spektrumban (jelalaktól függően páros vagy páratlan, ill. páros és páratlan komponensek is lehetnek). A többi frekvencián nincs hasznos komponens, csak zaj.
Idézet:
„Nincs erre valami egyszerű képlet, illetve eljárás?”

Van eljárás, csak nem egyszerű. Folytonos időben Fourier- transzformációnak nevezik, diszkrét időben (mintavételezett jelek esetén) pedig diszkrét Fourier- transzformációnak (DFT). A DFT egy gyorsabb algoritmusát pedig FFT- nek nevezik. A neten elég sok leírás található, ha bővebben érdekel a téma akkor keress rá.
(#) Rober_4 válasza El_Pinyo hozzászólására (») Jún 4, 2010 /
 
Köszönöm, már találtam is két leírást, próbálom felfogni.

Tehát a kérdésem az volt, hogy egy összetett hangjelből, két pont között, hogyan lehet megállapítani, hogy mekkora 50,100,200,400, 800, 1600Hz-es összetevő van? (spektrumanalizálás)
Esetleg melyik az a numerikus módszer amivel ezt le lehet programozni?

Amit találtam:

Bővebben: Link
Bővebben: Link
(#) El_Pinyo válasza Rober_4 hozzászólására (») Jún 4, 2010 /
 
Maga az elv a DFT, az algoritmus amit célszerű használni az FFT. Van egy idevágó tétel is, a mintavételezési tétel. Ez kimondja, hogy bármely folytonos idejű periódikus jel a mintavételezés során vett minták alapján pontosan visszaállítható eredeti formájára, feltéve, hogy a mintavételezési frekvencia a jel sávszélességének minimum a kétszerese (Nem véletlen a CD 44,1 kHz mintavételezési frekije sem).
Esetleg azt tudnám javasolni, hogy nézegesd meg a Microchip honlapján, itt a DSP- vel kapcsolatos infokat is. Van egy dsPIC- es starter boardjuk, amely kifejezetten audio jelek fedolgozásával foglalkozik, szerintem hasznos lehet a tanulmányozása.
(#) ZsoltyFM válasza El_Pinyo hozzászólására (») Jún 16, 2010 /
 
Siasztok!

Én lényegében a szűrés alatt azt értettem hogy mondjuk digitálisan dsp-n belül oldok meg egy alul és felül áteresztő vágást, és hangkorrekciót.
Tehát 20-30 hz-n tetszőleges meredekséggel vágnák majd 16khz-n igen meredeken ahogyan az analóg technikában egy heted fokú szűrő vág.
magas hang emelési korrekció kellene. na meg persze nem volna rossz mindezt 24 biten véghezvinni
(#) El_Pinyo válasza ZsoltyFM hozzászólására (») Jún 17, 2010 /
 
Szia!
FIR szűrőkről hallottál már? Ez a magyarban véges impulzusválaszú szűrőt jelent. Gyakorlatilag úgy működik, hogy mintavételezed a jelet, majd a megfelelő szűrő együtthatókkal szorzod a vett mintákat, és összeadod őket. A szűrőegyütthatók meghatározására számítógépes módszereket szokás használni pl. MATLAB, de gondolom léteznek egyéb ilyen jellegű szoftverek is. Érdemes kicsit utánanézni a neten, hogy milyen lehetőségek közül válogathatsz.
(#) ZsoltyFM hozzászólása Jún 20, 2010 /
 
sziasztok!


Mostanában elég sokat kacsingatok a dsp-k felé is.
igen néztem ilyen szűrő eljárásokat. Az a helyzet hogy elméleti tudásom nem sok ezen a téren. Nagyon amatőr kategóriába tartozok.
Nem rég kezdett csak jobban foglalkoztatni.
Mindenképpen olyasmi érdekelne amiben grafikus formában tudnám összehozni amit szeretnék.
Tudom ebben az esetben sokan azt gondolják ebben az esetben felejtsem el a dolgot foglalkozzak inkább mással Tisztában vagyok azzal hogy ez nem egy egyszerű terület. A pic mikrovezérlőktől is sokáig tartózkodtam. Aztán egyszer valami indíttatásból elkezdtem olvasgatni eleinte a hobbielektronikás leírást a 16f628-as tipusról.
és meglepő mód megértettem a működést Ezen felbuzdulva kezdtem el a dsp-k fele is kacsingatni.
Nehéz feladat de nem tartom lehetetlennek hogy esetleg alkalmazni is tudjam ezt a processzor tipust is.
(#) El_Pinyo válasza ZsoltyFM hozzászólására (») Jún 20, 2010 /
 
Idézet:
„Az a helyzet hogy elméleti tudásom nem sok ezen a téren.”

Pedig erre lenne leginkább szükség. A DSP csak egy speciális architektúra, mely a digitális jelfeldolgozásban használt algoritmusokhoz és eljárásokhoz ad hardveres támogatást, gondolok itt pl. a barrel shifterre, MAC uatasításra, stb. Ha PIC mikrovezérlőkre rendezkedtél be, akkor talán célszerű lenne dsPIC- kel kezdeni, ez jó kiindulási pont lehet. Nézz körül a microchip honlapján, ott is van pl. szűrőtervező alkalmazás számítógépre és sok egyéb segítség is.
A grafikus programozásra is van lehetőség. A MathWorks cég MATLAB nevű programja támogatja a dsPIC grafikus módon történő programozását, integrált szűrőtervező toolbox-al is rendelkezik. Érdemes megnézegetni.
(#) ZsoltyFM hozzászólása Jún 20, 2010 /
 
Nos igen. nézegettem én a dspic-et is.
de nem hinném hogy ezzel le birok kezelni egy 24 bites 192khz-s mintavételű I2S porton kommunikáló d/a és a/d csip-et A dspPIC meg egyébbként sem tartalmaz perifériát az I2S illesztésére. Mindenképpen ragaszkodok a magas stúdió szintű hangminőséghez. Mivel is ilyen célokra szeretném használni. ez meg igényli a nagy sebességet és a dspic a maga 33-40megájával ehez igancsak kevés. Ha meg nem
nem tudom ezt ilyen színvonalon akkor nincs meg az ösztönzés hogy foglalkozzak vele. Mert nincs értelme.
(#) El_Pinyo válasza ZsoltyFM hozzászólására (») Jún 20, 2010 /
 
A Texas Instruments audio DSP- ket nézted már?
Leginkább azért javasoltam a dsPIC- kel való ismerkedést, mert talán könnyebb megérteni az alapokat. Azért azt nem árt leszögezni, hogy egy DSP meg a 16F628 közti különbség ég és föld. Ha nem akarod beleásni magadat a témába, szorgalmasan utánaolvasni, az alapoktól elindulni, akkor szerintem felejtős. Ez már nem a led villogtatás kategória. Esetleg nézz körül valami demo board után, hátha találsz hozzá mintapéldát és relatíve kevés utánajárással át tudod alakítani az alkalmazást a Neked megfelelő célra.
(#) ZsoltyFM hozzászólása Jún 20, 2010 /
 
Igen ezzel szembesültem hogy másról van szó.
Sokkal összetettebbek a műveletek. azaz a működésmód.
Meg ezt mindjárt sejtettem is amikor elkezdtem informálódni. A fő problémám hogy a mindjárt elején kezdés nehézkes. mivel a dokumentáltsága mit találok eléggé kevéske ami magyarul található. Inkább szakdolgozatokat próbáltam olvasgatni. De nagyon sok információt amire szükségem lenne ott sem találtam.
Tehát mindjárt az elején kezdéshez előbb Angolul kellene tudnom perfektül
(#) gtk hozzászólása Nov 25, 2012 /
 
Sziasztok ! Letezik olyan DSPic vagy AVR amelynek 2 darab fuggetlen (nem multiplexelt) 10..12 bites ADC-je van es egy 10..12 bites DAC-ja legalabb ? I/Q jelfeldolgozashoz kellene.
(#) vilmosd válasza gtk hozzászólására (») Nov 25, 2012 /
 
Nem DsPIC, es nem dupla AD, de 2 szimultan S/H es bufferelt az eredmeny: 18F4431, Ja es 200 ksample/S.
(#) gtk válasza vilmosd hozzászólására (») Nov 25, 2012 /
 
Koszi ! Nekem viszont valami beszerezheto DSP kellene a szamitasi teljesitmeny miatt.(pl dsPIC)
(#) vilmosd válasza gtk hozzászólására (») Nov 25, 2012 / 1
 
(#) gtk válasza vilmosd hozzászólására (») Nov 25, 2012 /
 
Koszi !
(#) vilmosd válasza gtk hozzászólására (») Nov 25, 2012 / 1
 
(#) Petjaa hozzászólása Jan 22, 2013 /
 
Sziasztok!

Texas Instruments DSP és DSC-hez keresek USB-s JTAG programozót. Nem tud valaki egy megbízható kapcsolást? Neten keresgélve sajna nem találtam semmit. Vagy esetleg az FTDI FT2232-es IC-vel épített programozó nem viszi őket valamilyen programmal? Előre is köszönöm!

Üdv Petjaa
(#) melorin hozzászólása Júl 7, 2013 /
 
Üdv!
Adott egy voice kraft spm-6d és van benne DSP. A kérdésem az, hogy milyen funkciót lát el egy ilyen keverőben egy dsp?
Valamit kezdenem kéne rendezvényeken a visszhanggal, és reménykedek benne, hogy ilyesmire is jó lenne.
(#) elektros90 hozzászólása Nov 19, 2013 /
 
Sziasztok!
Remélem jó helyen járok.
Gondolom ha DSP vel foglalkoztok, akkor nektek a matlab nem idegen. Ezeket a feladatokat kell megoldanom Matlabban. Sajnos idág nem volt vele semmiféle kapcsolatom ezért nem is nagyon tudom, hogyan is fogjak hozzá.
Már ismerem az FDAtools-t, használtuk DSP órán.
A feladatokat le kell programoznom, majd a kapott szűrőt ADSP Blackfin DSP vel fogjuk kipróbálni.
Tudna nekem valaki valamilyen támpontot adni, hogy hogyan is kezdjek hozzá?
Sok magyarázatot a feladathoz nemkaptam. Gondolom kell impulzus, amplitúdó, frekvencia, ... karakterisztika is. Ezt digitális jelfeldolgozás elméletből kaptam. Számolunk az órán manuálisan meg minden, de nemnagyon értem a dolgokat. Valószinúleg mert nem magyarul tanulom sajnos.
Nincs esetleg valakinek valami érthető könyv letölthető formában?
A válaszaitokat előre is köszönöm szépen.
(#) gtk válasza elektros90 hozzászólására (») Nov 20, 2013 /
 
Hat ezek igazan nem nehez feladatok. Keress ra a "matworks" -on, biztosan talalsz peldakat.
(#) elektros90 válasza gtk hozzászólására (») Nov 20, 2013 /
 
Haladtam előre a dologgal. Még csak a fir1 el próbáltam meg az 1. feladatot. Tényleg nem nehéz. Jó dolog ez a matlab.
(#) elektros90 válasza elektros90 hozzászólására (») Nov 20, 2013 /
 
Ez így miért nem jó?
  1. N = [11 20 30 50 100]; %Order of filter
  2. f_sampl = 160000; %Sampling frequency
  3. f1 = 20000; %Cut-off frequency
  4. f1_norm = f1/(f_sampl/2); %Normalized Cut-off frequency. 20000/(160000/2) = 0.25
  5.  
  6. filt = fir1( N(1), f1_norm, 'high', bartlett(N(1)+1) );
  7. freqz(filt)
(#) elektros90 válasza elektros90 hozzászólására (») Nov 20, 2013 /
 
Közben kiderült, hogy csak a páratlan N nél nem működik.
(#) elektros90 hozzászólása Nov 25, 2013 /
 
Sziasztok!
VisualDSP++ ban kell leprogramoznom a szűrőt.

  1. inFile = fopen("E:\\Test\\x.dat","rb");
  2. outFile = fopen("E:\\Test\\y.dat","wb");


Hogy oldhatom meg, hogy az x.dat és y.dat fájlt a gyökérkönyvtárba írja (ahol a projekt fájl van), ill. onnat olvassa be?

Próbáltam így, de nem jó.
  1. inFile = fopen("x.dat","rb");
  2. outFile = fopen("y.dat","wb");


Lefordítsa, de az y.dat fájlt a debug könyvtárba teszi el, ez nem is lenne akkor a baj, de csak NULL-t tartalmaz. Betettem az x.dat ot is a debugba, onnat már jól megy. De jó lenne ha a gyökérkönyvtárban lehetnének és nem a debug alkönyvtárban.
A hozzászólás módosítva: Nov 25, 2013
(#) techgabor hozzászólása Jan 30, 2014 /
 
Sziasztok!

A Texas Instruments által gyártott TMS320F281x-el szeretnék foglalkozni.
Emulátornak a XDS100-V2-t sikerült beszereznem.
Van valaki, aki ért a Code Composer Studio v.5.5-höz (CCS 5.5)? Mert ha lenne, akkor részletezem a kérdéseimet.

Köszönöm előre is,
A hozzászólás módosítva: Jan 30, 2014
(#) Szabi1 hozzászólása Feb 22, 2016 /
 
Sziasztok! Valami ilyesmit szeretnék összehozni: Bővebben: Link van egy raspberry PI2-m amin LAN port is van. Az volna a kérdésem, hogyha valami jó minőségű DAC-ot és ADC-t találnák I2C-re (pl 24 bit 96k), akkor volna-e az egész olyan gyors hogy a hang valós időben (nagyon kicsi észrevehetetlen késés még bele fér) menjen keresztül az átalakítókon? Továbbá nem kerülne úgy többe mint készen egy olyan KIT?
(#) gtk hozzászólása Márc 4, 2016 /
 
Hat ez a kutyu nem olyan draga, csak egy jobb panel belekerul ennyibe.
Következő: »»   2 / 3
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem