Behavioral Model i LTSpice |
Post Reply | Page <1 2345> |
Author | |
Enthusiast
Excentrisk Joined: 19 Okt 2011 Location: Storkøbenhavn Status: Offline Points: 1154 |
Post Options
Thanks(0)
|
Det var nemlig det jeg mente, når jeg selv skulle håndtere beregningen (kode). Jeg er helt med på, at LTSpice håndterer det hele i det viste eksempel og forstår udmærket kredsløbets opbygning. Udfordringen for mig er at få indlæst dataet og sætte subsircuit-modellerne op i et passende bibliotek. Men den del er jeg ved at kigge nærmere på. Edited by Enthusiast - 10 Maj 2017 at 09:05 |
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
@bknielsen: Hvis det skal være på denne side af august, skal det være lørdag d. 17/6 - det ville passe mig fint. Jeg gider ikke en søndag. Måske andre vil være med, så slå det op under arrangementer.
Edited by USXX - 10 Maj 2017 at 09:55 |
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
Jeg er faktisk også fri i Pinsen - her bliver det så Mandag, jeg ikke gider.
|
|
Enthusiast
Excentrisk Joined: 19 Okt 2011 Location: Storkøbenhavn Status: Offline Points: 1154 |
Post Options
Thanks(0)
|
Hele idéen med at gå i krig med sådan et projekt var jo netop at sætte lidt tanker i gang |
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
Jeg fik en fornemmelse vedr. denne tråd i går, så her er en tidlig julegave til værdigt trængende (feel free to use, men hvis I bruger det i mere kommerciel sammenhæng, vil jeg sætte pris på kildeangivelse).
Der er 8 filer i mappen: speaker_test.asc - det er selve LTspice schematic filen med mit 2-vejs eksempel (se forrige sider) disk_imp.txt - data for diskantens impedans (modulus og fase) disk_freq.txt - data for diskantens frekvensgang og minimalfase bas_imp.txt - tilsvarende data for bassens impedans bas_freq.txt - tilsvarende data for bassens frekvensgang Z_speaker.asy - diagramsymbol for kompleks impedans Amp_speaker.asy - diagramsymbol for enhedens overføringsfunktion us_speaker.lib - bibliotek (library) indeholdende de fire sub-circuits, der er nødvendige for at kunne simulere en 2-vejs Der kommer forklaring senere omkring placering af filer i de rigtige mapper o.s.v. Edited by USXX - 08 Nov 2017 at 08:58 |
|
Enthusiast
Excentrisk Joined: 19 Okt 2011 Location: Storkøbenhavn Status: Offline Points: 1154 |
Post Options
Thanks(0)
|
Fedt.
Fornemmelsen må være kommet af, at jeg var ved at skrive et indlæg i denne tråd i går :) Havde skrevet det, men fik aldrig trykket send. Jeg valgte at droppe indlægget og blot kæmpe lidt videre selv. Er gået i krig med at sætte delefilterberegninger op uden for LTSpice. Jeg kom aldrig rigtig i gang med LTSpice. Gik kold i oprettelsen af bibliotekerne. Det blev for kompliceret, da jeg ikke er vant til at bruge softwaren, selv med de indbyggede modeller og biblioteker. Men tusind tak for, at du gør dine biblioteker tilgændelige for os andre.
|
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
Jeg kører LTspice IV (32 bit) på 64 bit maskine, så mappestrukturen ser således ud:
C: > Programmer (x86) > LTC > LTspiceIV > lib Herunder ligger så bl.a. mapperne sub og sym. I sub-mappen lægger man de fire .txt-filer (datafilerne) samt .lib-filen. I sym-mappen lægger man .asy-filerne (symbolfilerne). Schematic-filen (.asc) placerer man i sin egen mappe, som man opretter til sine LTspice modeller, der hvor man vil have den - men det skal være uden for Windows program-mappen*. Det er altid en fordel at gemme det aktuelle schematic i denne mappe, inden man kører beregningen (*det er noget Windows-teknisk siden Win 7, der gør, at man ellers kommer til at vente 10 sekunder på, at beregningen går i gang - man får meddelelsen "waiting for permission to clear on C: ..."). Inde i schematic skal de nye "komponenter" for impedanser og overføringsfunktioner have tildelt værdier (på samme måde som man giver fx en modstand en værdi). Det er gjort i mit eksempel, og man gør det ved at højre-klikke på symbolet og angive "værdien" ud for Value. Disse værdier er navnene for de pågældende sub-circuits (disk_z, bas_z, disk_spl og bas_spl), som fremgår af .lib-filen (som ses herunder). Hvis man ønsker andre navne (også for datafilerne, som inkluderes i sub-circuits), skal det ændres i .lib-filen, som man i øvrigt også kan gemme under et andet navn (så skal man selvfølgelig samtidig i schematic ændre navnet i SPICE-direktivet .include....). Det bør nu være tydeligt, hvordan tingene hænger sammen. * Loudspeaker model * * .subckt disk_spl 1 2 3 R1 1 2 1 B1 3 2 V=V(1) FREQ= .include disk_freq.txt .ends * * .subckt disk_z 1 2 R1 1 10 0.001 V1 10 11 0 B1 11 2 V=I(V1) MAG FREQ= .include disk_imp.txt .ends * * .subckt bas_spl 1 2 3 R1 1 2 1 B1 3 2 V=V(1) FREQ= .include bas_freq.txt .ends * * .subckt bas_z 1 2 R1 1 10 0.001 V1 10 11 0 B1 11 2 V=I(V1) MAG FREQ= .include bas_imp.txt .ends Edited by USXX - 08 Nov 2017 at 10:33 |
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
Jeg vil ikke gå i dybden med det (kredsløbs-) tekniske omkring disse sub-circuits - det må I bare tage/acceptere, som det er.
Edited by USXX - 08 Nov 2017 at 10:35 |
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
Som jeg har nævnt tidligere, så skal man have en spændingsstyret spændingskilde (E) mellem impedansen og overføringsfunktionen for at skabe komplet impedansadskillelse (ellers vil de to sub-circuits blive parallelkoblet, og så bliver simuleringen helt forkert). For den enhed, som ikke skal tildeles delay, giver man bare denne kilde værdien 1 (se mit eksempel).
Vær i øvrigt opmærksom på, at pin-numrene for symbolerne hænger sammen med tallene i sub-circuits - det har kun betydning, hvis man roterer komponenten/symbolet uden at tænke sig om.
Edited by USXX - 08 Nov 2017 at 11:24 |
|
USXX
Pro medlem Joined: 17 Dec 2008 Location: Midtjylland Status: Offline Points: 3166 |
Post Options
Thanks(0)
|
Jeg skal lige sikre mig, at der ikke sker forvirring vedr. delay. I den viste model ser man Laplace-udtrykket for delay på diskanten (hvor det jo normalt er bassen, der er tidsforsinket) samtidig med, at der intet delay er på bassen (her er værdien bare et rent 1-tal, der bliver ganget på). Delay'et er dog 0 (nul) sekunder for diskanten, idet der er 100% fysisk time alignment i den pågældende højttaler - så derfor er simuleringen korrekt. Det, jeg vil sige, er bare, at I skal huske at sætte delay'et der, hvor der skal modelleres et delay i forhold til den fysiske højttaler (typisk på bassen) - og ikke lade jer forvirre af mit eksempel.
Edited by USXX - 09 Nov 2017 at 20:42 |
|
Post Reply | Page <1 2345> |
Tweet |
Forum Jump | Forum Permissions You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |