Room Simulator

Hur funkar tekniken bakom bra hifi?

Moderator: Redaktörer

Användarvisningsbild
luminous
 
Inlägg: 376
Blev medlem: 2003-10-14
Ort: Uppsala

Room Simulator

Inläggav luminous » 2013-04-08 15:41

Hej Faktisktianer,

Jag har hållit på med ett kul litet datorprojekt det senaste. Det började med att jag ville experimentera med att simulera frekvensgången i ett (rektangulärt) rum där flera subwoofers används. Jag ville jämföra olika subwooferplaceringar och även kunna lägga på delay på basarna för att t.ex. kunna simulera baskonfigurationen som Allram beskriver i den här tråden.

Jag letade efter ett datorprogram som kunde göra det här, men jag hittade inget enkelt program som var gratis. Det bästa jag hittade som verkar användas av DIY-folket är ett gammalt excel-spreadsheet som dock hade lite för många begränsningar - max två kanaler kan simuleras i en mikrofonposition och beräkningarna är långsamma.

Därför har jag skrivit ett eget program i Matlab med ett grafiskt gränssnitt som jag kallar "Room Simulator". Med programmet så kan man:
* Simulera frekvensgången i en punkt eller medelvärdet över en yta i rummet
* Simulera hur många högtalare samtidigt som helst
* Jämföra olika högtalarplaceringar i samma graf
* Lägga på delay&gain&fasinvertering individuellt på varje högtalare
* Plotta ljudtrycket över hela rummet vid en viss frekvens i en 3D-graf
* Simulera korrelerade och okorrelerade källor

Man behöver inte ha Matlab på datorn för att använda programmet. Med den här tråden så tänkte jag se om det finns ett intresse av programmet? Jag planerar att lägga upp det för gratis nedladdning. Några frågor eller feature-requests kanske? I screen-shoten nedan kan ni se hur programmet ser ut nu.

Programmet använder spegelkällemodellen. Spegelkällemodellen fungerar bra för att beskriva hur ljudfältet beter sig i rummet givet ett antal begränsningar; rummet antas vara perfekt rektangulärt, helt tomt och med exakt likadana väggar som har en dämpning som är oberoende av frekvens. Ljudkällorna antas dessutom vara perfekt omnidirektionella och punktformiga. Det gör att det simulerade resultatet inte kommer att stämma perfekt överens med ett givet verkligt rum även om det är rektangulärt, men man kan dra allmänna slutsatser om t.ex. hur olika subwooferplaceringar fungerar iallafall.

Bild
http://dl.dropbox.com/u/8964197/RoomSim ... enDump.PNG

UPPDATERING:
Jag har lagt upp programmet på Dropbox. Här kommer filerna:

Quick manual .pdf

RoomSim för Windows:
Matlab-bibliotek för Windows
RoomSim32.exe

RoomSim för OS X:
Matlab-bibliotek för OS X
RoomSim.app.zip

Fråga om ni har några problem att starta programmet. Installera Matlab-biblioteket först, starta sen RoomSim. Det kan eventuellt behövas en omstart efter att Matlab-biblioteket installerats. RoomSim tar ganska lång tid på sig att starta första gången man startar det eftersom Matlab kör igång i bakgrunden.

Posta frågor, kommentarer och jag hoppas på simulationsresultat också! Kan tipsa om att det är enkelt att ladda upp screenshots på Dropbox.
Senast redigerad av luminous 2017-01-21 18:13, redigerad totalt 4 gånger.

Användarvisningsbild
Empa
 
Inlägg: 2000
Blev medlem: 2007-02-13
Ort: Karlstad

Inläggav Empa » 2013-04-08 15:45

Snyggt jobbat! :)

Användarvisningsbild
Fjonkalicious
Colonel Mustard
 
Inlägg: 18067
Blev medlem: 2007-09-02
Ort: Skåne

Inläggav Fjonkalicious » 2013-04-08 15:52

Tufft! Snyggt jobbat!
Head of Design - Acoustic Illusion AB

Användarvisningsbild
Nattlorden
Pumpkin/Redaktör
 
Inlägg: 58413
Blev medlem: 2003-10-28
Ort: Grå Hamnarna

Inläggav Nattlorden » 2013-04-08 16:11

Klart vi måste få prova det! :P
Konceptartist Serenia på Spotify/ Youtube etc.
Rester o.dyl. som Nattlorden

Användarvisningsbild
Evil_Homer
 
Inlägg: 7954
Blev medlem: 2012-02-02
Ort: Långtbortistan

Inläggav Evil_Homer » 2013-04-08 17:56

Fräckt, hur väl fungerar det när du har testat med dom riktiga placeringarna?
Onkyo 5007. JBL 3632. Crown CDi 1000

Användarvisningsbild
RogerGustavsson
 
Inlägg: 23955
Blev medlem: 2004-05-02
Ort: Huskvarna

Inläggav RogerGustavsson » 2013-04-08 20:42


Användarvisningsbild
Svante
Audiot!
 
Inlägg: 37552
Blev medlem: 2004-03-03
Ort: oakustisk

Inläggav Svante » 2013-04-08 22:49

Kuligt!

Jag ser att du använder Matlab, men kompilerar koden på något sätt så att den kan användas standalone? Måste man ha med ett bibliotek då? Sist jag prövade det var man tvungen att distribuera ett 150 MB stor runtime-bibliotek, men det kanske har ändrats nu. Det kan vara ett tips att kolla det, jag har för mig att jag inte märkte det förrän jag provade på en Matlablös dator.

Vad är CABS? Går det att ställa in absorption vid väggarna?
Så länge har jag längat efter att loudness war skulle vara över. Nu börjar jag tro att vi faktiskt är där. Kruxet är att vi förlorade.

Användarvisningsbild
Svante
Audiot!
 
Inlägg: 37552
Blev medlem: 2004-03-03
Ort: oakustisk

Re: Room Simulator

Inläggav Svante » 2013-04-08 22:50



Ja, det där är väl Excelarket som han nämner?

luminous skrev: Det bästa jag hittade som verkar användas av DIY-folket är ett gammalt excel-spreadsheet som dock hade lite för många begränsningar - max två kanaler kan simuleras i en mikrofonposition och beräkningarna är långsamma.
Så länge har jag längat efter att loudness war skulle vara över. Nu börjar jag tro att vi faktiskt är där. Kruxet är att vi förlorade.

Användarvisningsbild
Adhoc
 
Inlägg: 3735
Blev medlem: 2005-06-29
Ort: Göteborg

Inläggav Adhoc » 2013-04-08 23:59

Kul! Om frekvenskurvan kan visas med större upplösning för låga frekvenser än i bilden är det bra. Någon indikation för vilka källor som är 1, 2, 3 etc är också bra att få med.

Användarvisningsbild
Allram
 
Inlägg: 192
Blev medlem: 2010-06-17

Inläggav Allram » 2013-04-09 06:28

Snyggt!
Helt klart intressant verktyg. Jag har använt en modul i SoundEasy under många år som gör ganska exakt det du beskriver plus lite till. Det bygger på FEM och har visat sig ge resultat som stämmer väl med verkligheten. Antimode-konceptet och aktuell implementation simulerades fram här innan jag satte sågen i taket för att minimera risk.

Det är dock ohyggligt långsamt och resurskrävande för att räkna fram frekvensgången. Hoppas på ett snabbare program här! Det skulle vara ett lyft!

På önskelistan står ställbar absorbtion på väggarna samt möjlighet att mata in vilka 3D-rum som helst, inte bara rektangulära 8)

Användarvisningsbild
Harryup
Tänk på döden
 
Inlägg: 15378
Blev medlem: 2003-10-08
Ort: 08

Inläggav Harryup » 2013-04-09 07:31

Klart snyggt.
Hur "lite" extra komplicerat skulle det bli att kunna lägga in öppningar till rum i fil eller kunna lägga till en dörröppning? Kanske nån form av "normalbeteende fönster"?

Förstår att mina önskningar är ytterst modesta :)
Men få rum saknar dörrar och fönster men i princip alla program jag sett saknar det.

mvh/Harryup

Användarvisningsbild
Nattlorden
Pumpkin/Redaktör
 
Inlägg: 58413
Blev medlem: 2003-10-28
Ort: Grå Hamnarna

Inläggav Nattlorden » 2013-04-09 07:51

Harryup skrev:Men få rum saknar dörrar och fönster men i princip alla program jag sett saknar det.


Komplexiteten i beräkningen går upp kraftigt när vissa delar inte går att ta för givet.
Konceptartist Serenia på Spotify/ Youtube etc.
Rester o.dyl. som Nattlorden

Användarvisningsbild
RogerGustavsson
 
Inlägg: 23955
Blev medlem: 2004-05-02
Ort: Huskvarna

Inläggav RogerGustavsson » 2013-04-09 08:15

Går det att göra en applikation för dipoler? Hur mycket påverkar vinkling av högtalare i förhållande till väggarna?

Användarvisningsbild
idea
 
Inlägg: 864
Blev medlem: 2010-12-14
Ort: Gbg

Inläggav idea » 2013-04-09 09:44

Utan att förringa det mycket lovvärda initiativet att ta fram ovanstående beräkningsprogram kan jag tipsa om beräkningsprogrammet CARA http://www.cara.de/ENU/index.html
"CARA (Computer Aided Room Acoustics) is a very advanced computer program for computing and optimizing Room Acoustics of arbitrary rooms. CARA is based on the sound source imaging method in combination with a back tracing procedure"
För sitt pris €69 (inklusive en enkel testskiva och lite instruktionsvideos) är det ett förvånansvärt kompetent program. Det hanterar egendefinierade rum inklusive angränsande rum, fönster och dörrar. Man kan mata in spec för egna högtalare om man inte hittar dessa i databasen och auralisera hur olika högtalarpositioner låter mm. Förutom att räkna fram impulsrespons för rummet osv.
Idea what a great ID

Användarvisningsbild
petersteindl
Der Eiermann
 
Inlägg: 41448
Blev medlem: 2007-04-17
Ort: Härnösand

Inläggav petersteindl » 2013-04-09 12:32

Hej Luminous

Jättebra jobbat. Två frågor.

Hur många speglingar har du med?

Kan man själv aktivera/inaktivera dessa speglingar vid simulering?

Absorbtion på varje enskild begränsningsyta vet jag går att lägga in. På så sätt kan man skapa en decay samt även aktivera just de väggar/golv/tak vars reflexer man vill analysera. Vill man gå ett steg längre kan man införa frekvensberoende absorbtion.

Man kan då gå från frifält till en och endast en reflex för att få med första reflexen från respektive begränsningsyta och även ha två eller tre eller fyra etc. ytor samtidigt för att få sammanlagd frekvensgång med enkom förstareflex från fler begränsningsytor. Sedan kan man aktivera ytterligare speglingar för att få med rummets karakteristiska tillägg.

Vill man komplicera det ytterliggare så kan man ha snedställda väggar och/eller L-format rum som option.

Mvh
Peter
VD Bremen Production AB + Ortho-Reality AB; Grundare av Ljudbutiken AB; Fd import av hifi; Konstruktör av LICENCE No1 D/A, Bremen No1 D/A, Forsell D/A, SMS FrameSound, Bremen 3D8 m.fl.

Användarvisningsbild
petersteindl
Der Eiermann
 
Inlägg: 41448
Blev medlem: 2007-04-17
Ort: Härnösand

Inläggav petersteindl » 2013-04-09 12:55

Harryup skrev:Klart snyggt.
Hur "lite" extra komplicerat skulle det bli att kunna lägga in öppningar till rum i fil eller kunna lägga till en dörröppning? Kanske nån form av "normalbeteende fönster"?

Förstår att mina önskningar är ytterst modesta :)
Men få rum saknar dörrar och fönster men i princip alla program jag sett saknar det.

mvh/Harryup


Lägger man in en absorbtionsfaktor på respektive begränsningsyta så kan man gå ett steg vidare och göra segment på ytorna och ge segmenten specifik absorbtion. Då kan man införa dörrar och fönster med deras karakteristiska frekvensberoende absorbtion. Hur mycket mer beräkningskapacitet det innebär vet jag inte.

Mvh
Peter
VD Bremen Production AB + Ortho-Reality AB; Grundare av Ljudbutiken AB; Fd import av hifi; Konstruktör av LICENCE No1 D/A, Bremen No1 D/A, Forsell D/A, SMS FrameSound, Bremen 3D8 m.fl.

Användarvisningsbild
luminous
 
Inlägg: 376
Blev medlem: 2003-10-14
Ort: Uppsala

Inläggav luminous » 2013-04-11 21:32

Kul med intresse och bra frågor.

Nattlorden:
Klart vi måste få prova det!


Jag ska posta programmet här så fort jag har ordnat med ett lämpligt ställe att lägga upp det.

NiklasF:
Fräckt, hur väl fungerar det när du har testat med dom riktiga placeringarna?

Jag har inte gjort några egna jämförelser av simuleringar och mätningar. Se också första stycket i mitt första inlägg. Däremot så har jag konfirmerat att det beräknade resultatet stämmer överens med det i excelarket som nämns i tråden.

RogerGustavsson:

Jepp. Det excelarket använder också spegelmetoden men det kan bara göra rätt basala simuleringar i jämförese med Room Simulator.

Svante:
Kuligt!

Jag ser att du använder Matlab, men kompilerar koden på något sätt så att den kan användas standalone? Måste man ha med ett bibliotek då? Sist jag prövade det var man tvungen att distribuera ett 150 MB stor runtime-bibliotek, men det kanske har ändrats nu. Det kan vara ett tips att kolla det, jag har för mig att jag inte märkte det förrän jag provade på en Matlablös dator.

Vad är CABS? Går det att ställa in absorption vid väggarna?

Jepp, det går att ställa in absorptionen som en konstant dämpning vid alla frekvenser.

Det stämmer att jag använder Matlab och det stämmer att man är tvungen att ladda ner och installera Matlab's runtime-bibliotek för att köra programmet. Men det är det värt. :)

CABS är en metod för att placera ut bashögtalare med en viss placering och delay/gain applicerat på högtalarna för att uppnå utsläckning av moder i basen (http://www.aes.org/e-lib/browse.cfm?elib=14642). CABS har inget att göra med programmet dock, men bilden illustererar att det går att simulera ett sådant system i Room Simulator. 8)

Adhoc:
Kul! Om frekvenskurvan kan visas med större upplösning för låga frekvenser än i bilden är det bra. Någon indikation för vilka källor som är 1, 2, 3 etc är också bra att få med.

Bra ide att numrera "sources" i bilden... ska se om jag kan få in det.[/quote]

Användarvisningsbild
luminous
 
Inlägg: 376
Blev medlem: 2003-10-14
Ort: Uppsala

Inläggav luminous » 2013-04-11 21:48

petersteindl skrev:Hej Luminous

Jättebra jobbat. Två frågor.

Hur många speglingar har du med?

Kan man själv aktivera/inaktivera dessa speglingar vid simulering?

Absorbtion på varje enskild begränsningsyta vet jag går att lägga in. På så sätt kan man skapa en decay samt även aktivera just de väggar/golv/tak vars reflexer man vill analysera. Vill man gå ett steg längre kan man införa frekvensberoende absorbtion.

Man kan då gå från frifält till en och endast en reflex för att få med första reflexen från respektive begränsningsyta och även ha två eller tre eller fyra etc. ytor samtidigt för att få sammanlagd frekvensgång med enkom förstareflex från fler begränsningsytor. Sedan kan man aktivera ytterligare speglingar för att få med rummets karakteristiska tillägg.

Vill man komplicera det ytterliggare så kan man ha snedställda väggar och/eller L-format rum som option.

Mvh
Peter


Tack! Antalet speglingar är ställbart, för att man ska kunna göra en avvägning mellan precision och snabbhet. Man kan välja att bara ta med direktljudet från källorna eller t.ex. bara första ordningens reflektioner om man vill.

För er som önskar er en mer avancerad rumsmodell med öppningar i väggarna, frekvensberoende absorption och icke rektangulära rum osv, så tror jag att det är bättre att titta på ett mer avancerat program som t.ex. Cara som idea tipsar om eller kanske CATT acoustics eller liknande.

Lite av tanken med Room Simulator är att rumsmodellen är simpel så att det går att isolera olika akustiska beteenden från varandra när man simulerar. Jag tror att det blir enklare att lära sig av att simulera hur olika högtalarkonfigurationer beter sig i ett sådant förenklat rum jämfört med att försöka simulera ett verkligt rum mer exakt, en exakt modell skulle behöva bli extremt avancerad.

För att svara på RogerGustavssons fråga om simulering av dipoler så är det en intressant ide att lägga till möjlighet att simulera högtalare med direktivitet, men det skulle göra gränssnittet och beräkningarna rätt mkt mer komplexa så det får nog ligga och gro på att göra listan ett tag innan det bestäms något om det. :)

Användarvisningsbild
luminous
 
Inlägg: 376
Blev medlem: 2003-10-14
Ort: Uppsala

Inläggav luminous » 2013-04-28 12:50

Första inlägget uppdaterat med länkar till programmet!

Användarvisningsbild
Morgan
 
Inlägg: 2619
Blev medlem: 2004-11-17
Ort: Bollebygd

Inläggav Morgan » 2013-04-28 13:34

Tusen tack för att du låter oss betatesta programmet! Snyggt att du dessutom tillgängliggör Mac OS-specifika filer får jag säga :)

Av alla feature-requests som kommit upp är det tre jag tycker står ut som extra intressanta:

1) Möjlighet att utesluta vissa ytor helt ur beräkningarna. (Kan man kanske bara sätta deras absorption till 100%?)

2) Möjlighet att använda sig av frekvensberoende absorption. (Snyggast vore om man kunde göra det i ett gränssnitt som en grafisk equalizer med oktavband och skala från 0-1 eller 0-100%)

3) Ovanstående med möjlighet att dela in väggar i sektioner med olika egenskaper.

Ett program med sådana möjligheter skulle jag vara beredd att betala ganska bra för att få leka med, även om det bara tillät rum av rätblockstyp.
Hobbyakustiker (kontrollrum, lyssningsrum, hemmabiosar).
Hobbykabeltillverkare :)

Användarvisningsbild
luminous
 
Inlägg: 376
Blev medlem: 2003-10-14
Ort: Uppsala

Inläggav luminous » 2013-04-29 08:45

Hej Morgan,
ja ingenting är omöjligt om det är många som vill ha någon viss feature. Vad tänker du dig att du kan göra för typer av simulationer med de extra features du nämner?

Användarvisningsbild
luminous
 
Inlägg: 376
Blev medlem: 2003-10-14
Ort: Uppsala

Inläggav luminous » 2014-01-30 23:21

Uppdatering! Programmet är uppdaterat nu så att det ska funka även på senaste OS X.


Återgå till Teknikforum


Vilka är online

Användare som besöker denna kategori: Alikzus och 26 gäster