Aktiva "digitala" högtalare

Berätta om dina pågående projekt.
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Aktiva "digitala" högtalare

Inlägg av cyr »

Tja!

Long time no see :)

Var åratal sedan jag var här sist, men idag var det en kollega som nämnde EF på lunchen, så jag kom på att jag kanske skulle titta in.

Tänkte återuppta min gamla tradition att berätta om ett överambitiöst projekt.

Ni kan se en del bilder och information på http://blog.area26.se , men jag uppdaterar den här tråden efter hand också...

Vad har jag nu hittat på då?

Slutmålet är ett komplett högtalarsystem (5.1), med integrerade klass-D slutsteg och digitala delningsfilter. Dessutom ska det finnas en centralenhet med tillräckliga DSP-muskler för att utföra rumskorrektion, samt med diverse standard-anslutningar (HDMI, S/PDIF, analog).

Första fasen är lite enklare, bara två fronthögtalare och en provisorisk centralenhet så att jag kan få ljud från dator och spelkonsoller.

Varför?

* Varför inte?
* Klass-D ger hög verkningsgrad.
* Digitala filter är flexibla och lider inte av komponentvariationer m.m.
* Färre kablar att dra runt rummet.
* Kul att bygga.

Hur?

Slutstegen är baserade på Purepath-tekniken från Texas Instruments, vilket nog är det närmsta en helt digital förstärkare man kan komma.

En TAS5518 tar in digitalt ljud i I2S-format, kör en hög digitala filter och gör till slut om till några stycken PWM-kanaler som i sin tur styr ett drivsteg (TAS5261) per kanal. Efter drivsteget sitter ett enkelt LC-filter, och sen går ljudet direkt till respektive högtalarelement.

Designen på slutstegskortet har jag i princip kopierat rakt av från TI:s eget demo-kort med samma chip. Den största skillnaden är att jag har tre kanaler istället för två och en lite annorlunda layout.

Förutom själva förstärkarkortet behövs också en nätdel och ett logikkort i varje högtalarlåda. Logikkortet tar emot ljud- och styrdata från centralenheten, över Cat5-kabel med ett protokoll som inte är 100% bestämt, och matar sen förstärkarkortet med klocka, I2S-data samt styrning via I2C.

Alla högtalare plus centralenheten är hopkopplade i ett slags nätverk. Jag övervägde ett tag att köra med Ethernet, men orkar inte ta tag i problemen med klocksynkronisering osv. just nu. Kanske något för v2.0.

I första versionen blir det istället något enklare protokoll över AC-kopplad LVDS på Cat5-kabel. Enheterna kopplas i en kedja, högtalarna kan fungera som repeaters och skicka data vidare till nästa enhet i kedjan.

Centralenheten är idag bara en diffus idé, en låda med några moduler (kretskort) för att ta in ljud från olika källor i olika format, en modul för att göra rumskorrigering och sen skicka ut ljudet i kablarna till högtalarna. På lådan bör finnas några grundläggande kontroller som normalt finns på förstärkare (volym, ingångsval osv), men mer avancerade inställningar görs istället via nätverk (web) eller liknande.

Till en början kommer jag använda ett Spartan3E-utvecklingskort + lite diverse krimskrams som centralenhet.

Status?

I dagsläget har jag byggt och testat ett förstärkarkort, bestyckat med bara en kanal. Jag har fler mönsterkort hemma, och ett stort paket från Digikey är på väg med komponenter.

Högtalarelement köpte jag för över ett år sen, men jag har inga lådor att sätta dem i fortfarande. Hoppas få tummen ur på den fronten snart.

Designen på logikkortet är ~50% klar, de flesta delar har jag så jag måste "bara" göra klart schema/layout och beställa några mönsterkort.

Tar med ett par (klickbara) bilder, ni får kika på hemsidan om ni vill se mer..

Bild

Bild
Användarvisningsbild
sm2wmv
Inlägg: 2282
Blev medlem: 6 maj 2008, 00:10:11
Ort: Burträsk
Kontakt:

Inlägg av sm2wmv »

Vackert bygge!
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

Undvik S/P-dif och AES. Dom verkar lätt få synkronisering problem.. (det låter som något klistrat volymkontrollen på lägsta och kabeln är helrostig ;) )

Med HDMI får man 8 kanals ljud om man så vill jag minnas. Allt i en sladd, samt vettig elektrisk signalering osv.. Kanske t.om kan fungera som "pass-through" innan tv'n?

Hur får du till bra THD värden med Klass-D ?, speciellt i diskant området..

Mycket intressant projekt!
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Inlägg av arvidb »

För klocksynkronisering över Ethernet (LAN) finns Precision Time Protocol, med open source-implementeringen ptpd. Funkar bra.
Användarvisningsbild
Andax
Inlägg: 4379
Blev medlem: 4 juli 2005, 23:27:38
Ort: Jönköping

Inlägg av Andax »

Coolt projekt. Ska bli mycket intressant att följa!! 8)
Användarvisningsbild
JimmyAndersson
Inlägg: 26456
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Det var inte igår man såg Cyr här! Välkommen tillbaka. :D

Mycket intressant projekt!


Blueint:
"Undvik S/P-dif och AES. Dom verkar lätt få synkronisering problem.."

Nja.. då ska man nog ha ordentligt risiga kablar. :)
Det finns ju en orsak till att de är så vanligt förekommande, även i studiosammanhang.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Inlägg av dar303 »

Finfint projekt, välkommern tillbaka!
blueint skrev:Undvik S/P-dif och AES. Dom verkar lätt få synkronisering problem.. (det låter som något klistrat volymkontrollen på lägsta och kabeln är helrostig ;) )
Undvik AES/EBU pga. synkrpoblem? Jag har kilometervis med AES-kabel runt mig (både "vanliga" och i CAT5-kablage) och det synkar finfint, när uppträder dessa synkproblem?
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Svar och uppdatering

Inlägg av cyr »

Har fått hem komponenterna jag beställt och börjat montera två kompletta förstärkarkort nu. Är nästan klar, bara de stora hålmonterade sakerna kvar plus några kondingar som jag lyckades glömma bort (finns på Elfa som tur är).

Bild Bild

Tyvärr betyder det att jag måste linda ytterligare 10st såna här:

Bild

Fun times...

(bilderna är klickbara i vanlig ordning)

blueint:

Jag tänker inte använda S/PDIF mer än som ett sätt att ansluta prylar som saknar något bättre till systemet. HDMI med sina 8 kanaler, 192kHz, 24bit okomprimerat ljud blir den primära metoden (HTPC och PS3 ska anslutas den vägen, och bilden skickas sen vidare till projektor).

Nackdelen med HDMI är ju att man hamnar i DRM-träsket, med allt vad det innebär. De flesta datablad kräver NDA, många chip går inte att köpa utan licens och de som går saknar HDCP-nycklar.

Lösningen (i väntan på att någon läcker 40 linjärt oberoende privata nycklar) är helt enkelt att sno chip från en färdig licensierad pryl.

Hur man uppnår låg THD? Tja, jämfört med riktiga high-end prylar har jag nog inte så värst låg THD, 0.07% vid 100W har jag mätt upp, något mer än Texas själva anger för sitt kort. Good enough tror jag nog...

Jag vet att TAS5518 gör något (patenterat) med signalen för att kompensera för olinjäriteter i utsteget, så det bör ju bidra till lägre THD.

Har inte grävt efter patent för att se exakt vad den har för sig...

arvidb

Tack för tipset, ska kika mer på det.
Användarvisningsbild
chille
Inlägg: 2469
Blev medlem: 25 juni 2003, 20:54:41
Ort: Stockholm
Kontakt:

Inlägg av chille »

Nämen titta, cyr har hittat tillbaka, trevligt. 8)

Ser verkligen fram emot projektet då jag flyttat hemmifrån för några veckor sen och inte har plats med några stora och klumpiga högtalare som man hade förut. Tanken var ju då (såklart) aktiva högtalare. Ditt projekt låter som om det skulle passa perfekt tillsammans med projektorn i mitt vardagsrum. 8)

Tycker nog också du ska skippa ethernet. Det kommer nog bara innebära problem om du ska köra daisy-chain.

Jag tycker du borde göra huvudboxen så den har en liten CPU av något slag som kör linux (ARM9? FPGA softcore?), och sen slänga på lite digitala I/O, RS232-portar med mera. Då skulle man ju kunna använda den för att till exempel styra belysning och motoriserad projektorduk, vilket kan vara önskvärt. De sistnämda delarna hjälper jag gärna till med, om det blir aktuellt. En lösning vore ju att slänga på en drös med 10pin IDC-kontakter, så man kan lägga till "expansionskort" i framtiden.
Användarvisningsbild
Henrik
Inlägg: 661
Blev medlem: 26 maj 2003, 23:39:14
Ort: Göteborg
Kontakt:

Inlägg av Henrik »

Kul att se dig igen! (har du kvar några stegmotorer liggandes till mig?:) )

Rumskorrigeringen, långa FIR-filter på fpga med filter framtagna av http://www.duffroomcorrection.com/wiki/DRC? <- vad jag länge velat göra, long-time never-ending-story-projekt som aldrig lämnat planeringsstadiet...
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Henrik:

Hehe, njae... men dina linjärlager ligger fortfarande oanvända i en flyttkartong (appropå "long-time never-ending-story-projekt som aldrig lämnat planeringsstadiet..." )

DRC-filter och FPGA var faktiskt exakt vad jag tänkte mig.

Chille:

Är mest inne på att använda en ARM7-kontroller med ethernet (har ett utvecklingskit för at91sam7x). Räcker inte riktigt till Linux, men det finns t.ex. FreeRTOS.
Användarvisningsbild
chille
Inlägg: 2469
Blev medlem: 25 juni 2003, 20:54:41
Ort: Stockholm
Kontakt:

Inlägg av chille »

Okej, du har inte funderat på någon större, typ en ARM9 (t ex AT91RM9200) eller kanske en AVR32? Det tråkiga med AVR32 är ju att deras "riktiga" processorer inte finns i hanterbar kapsel med ETH. :?
Användarvisningsbild
kimmen
Inlägg: 2042
Blev medlem: 25 augusti 2007, 16:53:51
Ort: Stockholm (Kista)

Inlägg av kimmen »

Kul projekt!

Var har du skaffat dina kärnor? Vilken tillverkare är det?

Förresten, angående:
Sendust and MPP are both "soft saturation" materials, meaning that their permeability doesn't suddenly drop at some level of DC magnetizing current. Instead they have a very gradual saturation curve, and in fact that curve starts to drop almost at zero A. This then causes a change in inductance based on the DC current, which is a very bad thing for a class-D amp (at least one with no post-filter feedback), obvious if you remember that in this case the "DC" is actually an audio signal.

What we want instead is a saturation curve that is perfectly flat in the normal operating range, and just make sure we stay away from the sharp drop at saturation. One material which is actually very close to this ideal is the common "type 2" iron powder material. Other options are gapped ferrite cores (like Ferroxcube 3C20) or air-core inductors.
Det är ju ganska beroende på vilken permeabilitet man väljer på MPP-kärnan ändå hur mättningskurvan ser ut, se till exempel sid 5 här:
http://www.mag-inc.com/pdf/sr-1a.pdf

Så man vill ju gärna ha ett material med låg permeabilitet på MPP-kärnorna, vilket iofs #2-material också är fast järnpulver :)

Vad var det du provade med för MPP-kärna?
Användarvisningsbild
Henrik
Inlägg: 661
Blev medlem: 26 maj 2003, 23:39:14
Ort: Göteborg
Kontakt:

Inlägg av Henrik »

DRC-filter och FPGA var faktiskt exakt vad jag tänkte mig.
Åh, du med dina goda vhdl-kunskaper lyckas säkert till skillnad från mig få ihop en snygg inverstransform som utnyttjar FPGA'n vettigt. Jag fastnade när jag försökte förstå och bygga ut japanens FFT-kod från opencores.org.

Mitt mål var DRC i bilen, där sitter ju huvudet förhoppningsvis på konstant avstånd till högtalarna. Har redan förberett för att bestycka varje högtalare med varsina förstarkare (även diskanterna) för att dra mest nytta av DRC-filtren, tänkte passa på att kombinera dem med delningsfilter...

Jag håller med Chille: En 'riktig' cpu med peripherals och linux hade varit pricken över i. AVR32AP7000 som chille nämner finns på ett löjligt billigt utvecklingskort, ngw100. På jobbet har vi gjort några designs med AVR32, och de tuffar på ordentligt trots sina 133MHz - rekommenderas varmt.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Svar och uppdatering

Inlägg av blueint »

cyr skrev:blueint:
Nackdelen med HDMI är ju att man hamnar i DRM-träsket, med allt vad det innebär. De flesta datablad kräver NDA, många chip går inte att köpa utan licens och de som går saknar HDCP-nycklar.

Lösningen (i väntan på att någon läcker 40 linjärt oberoende privata nycklar) är helt enkelt att sno chip från en färdig licensierad pryl.
Om du skaffar 39 olika HDMI chip så går det tydligen att bli ta total kontroll över systemets nycklar:
http://en.wikipedia.org/wiki/High-bandw ... ptanalysis

Mao, det går att spela ut transceiver chippen mot varann ;)

Men sist jag läste specificationen så går det att begära okrypterad överföring. Iofs lite svårt om sändaren skickar krypterat. Men okrypterat från en egenkonstruktion till en kommersiell mottagare bör gå.
Skriv svar