1

Onderwerp: Wiskundig puzzeltje

Ik heb een 4bits DAC (maar het gaat echt om een generieke oplossing want ik heb ook 8, 12, 16 en 24 bits DACS)
Daarmee wil ik een SineWave genereren.
Welnu dat is op zich niet moeilijk,
Men neme een tabelletje met de waveform van 0 - 90' en de rest is vrij simpel te maken.

Wat ik eigenlijk wil weten hoe je generiek kan bepalen hoeveel samples die tabel moet hebben om een zo mooi mogelijke golfvorm te maken.
Teveel samples kost ruimte en performance (dat laatste is op het moment effe geen issue want ik doe deze experimenten met een fpga dus dat is allemaal retesnel).
Het minimum aantal samples kan ik zelf wel verzinen, ik heb ik die tabel tenminste zoveel samples nodig als dat ik bits heb.
Maar zou ik een table met evenveel samples als bits gebruiken, dan komt er een driehoek en geen sinus uit (niet zo moeilijk te verzinnen deel 90' door het aantal samples, dat is je hoekresolutie en op dat niveau verhoog je steeds met 1 bit)
Ik kan dit uiteraard proefondervindelijk vaststellen (ook gedaan) maar ik zou graag eens willen weten hoe je zoiets wetenschappelijk aan pakt.

Als ik dat eenmaal weet wil ik het ook nog graag weten voor het geval dat het antwoord een macht van 2 moet zijn (dit ivm FIR filters)

Niet echt heel erg Linux specifiek maar 'hey !!!! ik rook niet !'

Pascal's Blobfree Homepage
Een dag geen NedLinux is een dag niet geleefd

2 Laatst bewerkt door MeneerJansen (05 Aug 2015 21:33:18)

Re: Wiskundig puzzeltje

Tijdens de ontwikkeling v/d CD hield men als vuistregel (uit de wiskunde) aan dat de sample rate minstens twee keer zo hoog moet zijn als de frequentie v/d toon die je weer wilt geven. Aangezien het menselijk oor eigenlijk geen tonen kan horen die hoger zijn dan 22 kHz nam men als sample rate 44.1 kHz. 

Maar hoe je met 2 samples (22 kHz) een fatsoenlijke golfvorm kan genereren is mij een raadsel. Als je zeker weet dat de golfvorm een sinus is (lees: harmonische golf) dan heb je aan 2 samples wel genoeg om er een sinus van te maken m.b.v. een DAC (digitaal analoog converter). Maar in de muziek heb je ook nog wel eens triangular waves (synthesizer) enzo.

Ik weet niet of dit helpt... Maar in ieder geval: succes! Hele interessante vraag. smile

Als je voor een verdieping niet de diepte in moet, maar de hoogte, waarom heet het dan ....

Re: Wiskundig puzzeltje

Vraag eens op het wetenschapsforum rond
http://www.wetenschapsforum.nl/index.php/page/home.html
of op dit elektronica forum:
http://www.circuitsonline.net/forum/section/20

4

Re: Wiskundig puzzeltje

@MeneerJansen,

Dit is niet bedacht door Phillips/Sony maar door Harry Nyquist.
Het verhaal is ook niet compleet want als je met 44.1kHz sampled heb je ook de sample freq in je signaal zitten.
Dat levert niet aleen een hoge fluittoon op maar ook reciproke mixing (het effect hoor je wel eens bij slechte gsm verbindingen)
Phillips bedacht toen een goedkope, slimme en efficiente oplossing hiervoor.
Verdubbel de sample rate (interpolatie) dus 88.2kS/sec en hang er dan een low pass filter op 22kHz achter, dan zit je helemaal goed.
Marketiers bedachten vervolgens de term 4 HOLD OVERSAMPLING (da's dus nog een keer verdubbelen)
De extra winst die je daar overigens ook nog mee haalt is dat je voor elke verdubbeling een bit extra (6dB) mag rekenen.
Om het verhaal dan nog wat completer te maken,
Veel CD-spelers hebben een 1 bits DAC (Digital-Analoog-Converter) de digitale waardes en oversampling worden allemaal met genoemde techniek opgelost (ook een gedoe hoor, moet je weer een integrator achter hangen, allemaal technisch gebreuzel)

Ik gebruik die dingen overigens niet voor audio maar voor het genereren en ontvangen van hoogfrequent signalen (Software Defined Radio)

Pascal's Blobfree Homepage
Een dag geen NedLinux is een dag niet geleefd

Re: Wiskundig puzzeltje

@Pascal: bedankt voor de opheldering.

[off topic] Dat van die "four fold oversampling" kende ik: ik had het met grote letters op mijn CD speler staan (inderdaad: een Philps). Toen er internet kwam in de jaren '90 heb ik die rare term eens opgezocht en me een kriek gelachen. Maar het lachen verging me toen ik in de loop der jaren zag dat dit soort idiote trucs altijd en eeuwig door de marketing afdeling worden toegepast. Bij mij rijst dan ook het vermoeden dat sommige technieken die weinig meerwaarde hebben of heel erg standaard (nodig) zijn (doly surround uit stereo halen: pfffff!) voornamelijk door de marketing afdeling gepusht worden. Staat leuk op de verpakking: een logootje extra. Ik denk wel eens dat sommige technieken die tijdens de concept fase in de prullenbak gegooid zouden worden met powerplay v/d directie op last v/d marketing afdeling toch ingevoerd worden. Ik bedoel: mijn huidige versterker heeft "sound fields". Dan kan 'ie uit stereo "Cinema Studio Ex" meerkanaals audio toveren. Het is alleen een boel gedoe om dat uit te zetten. Voegt echt nix toe.

Als je voor een verdieping niet de diepte in moet, maar de hoogte, waarom heet het dan ....

6

Re: Wiskundig puzzeltje

Klopt helemaal MeneerJansen, neem nu als voorbeeld PLL Synthesizer tuner Dat is gewoon een duur mechanisch onderdeel (de afstem condensator) van een paar euro vervangen door een chippie van een paar kwartjes waardoor je goedkoper kan produceren, en er allerlij digitale onzin mee kan uithalen.
Weet het media markt volk wat een PLL is ? dacht het niet he.
Is jouw vloeibare zeep ook dermatologisch getest ? reken maar anders mag je het niet op de markt brengen.. wat die test inhoud hoef je dan weer niet te vermelden maar wat wel belangrijk is datie Ph neutraal is ?   Iemand die weet wat dat inhoud ? Ph van 0 lijkt me dan wel een uitkomst... maar oei... das dermatologisch wellicht niet zo'n slim idee. welke huisvrouw weet nu wat een Ph van 7 inhoud ?

Mijn huidige (gitaar) versterker heeft een buisje, (de hippe elektronica heb ik er uit gebonjourd, want chips en transistortjes gaan niet samen met een goede Jazz sound)

zucht... marketing is duidelijk niet mijn vakgebied. Techniek snap ik dan weer wel... maar wie zit daar nu op te wachten....

Pascal's Blobfree Homepage
Een dag geen NedLinux is een dag niet geleefd

7 Laatst bewerkt door andre@home (06 Aug 2015 21:18:59)

Re: Wiskundig puzzeltje

Het is wel pH.... wink
Das nu net mijn vakgebied .. wink

Verder wel een leuke reactie..

Tja zo'n PLL.... das oud.... oa in AM en FM ontvangers... en zenders (mijn legale hobby, ooit nog een examen voor moeten doen om dat te mogen...).
Tja... Hobo Hifi heeft het anders niet gered... ook al wisten ze vast wel wat een PLL systeem doet.
Ach het is heel anders geworden; vroeger had je nog de Firato, en nog andere technische dagen (ook op het zendamateurgebied), maar das is allemaal veranderd. Oa de Mediamarkt... maar ook de BCC's en zo van deze wereld, waar je een hele hoop onzin over de hoofden van de kopers uitgestrooid wordt... tja... de rest is kop/klepel verhaal... en als de prijs goed is ... dan is het zo gekocht...

8 Laatst bewerkt door MeneerJansen (07 Aug 2015 10:31:17)

Re: Wiskundig puzzeltje

andre@home schreef:

Oa de Mediamarkt... maar ook de BCC's en zo van deze wereld, waar je een hele hoop onzin over de hoofden van de kopers uitgestrooid wordt... tja... de rest is kop/klepel verhaal... en als de prijs goed is ... dan is het zo gekocht...

[off topic] Afgezien dat ik mij zeer, zeer, goed kan vinden in jullie beider verhaal (ik had ook zo'n PLL radio, ha ha) is bovenstaande quote toch wel hetgeen waar ik mij het aller aller meest aan erger tegenwoordig. Op je lip sta je te bijten als je zo'n pubertje met een MediaMarkt of BCC T-shirt de grootste idioterie hoort verkondigen om z'n spul op te dringen aan een klant. Ik heb dan altijd de neiging om tegen zo'n joch die een bejaarde onder de tafel staat te praten te zeggen: "Nee. Wat je zegt klopt niet. En het gedeelte dat half klopt: daar heeft mevrouw geen behoefte aan. Mevrouw: neem de goedkoopste maar. Als 'ie na een jaar kapot is: gewoon weer dezelfde kopen. Bent u goedkoper uit. De fratsen op de duurdere zijn NIET nodig."

Enfin, on topic. Niet dat ik denk veel toe te kunnen voegen want ik merk dat Pascal toch echt wel even wat meer kennis heeft van golven dan de gemiddelde persoon (lees: ikke). Je zegt dat je wilt weten hoeveel samples men nodig heeft om een zo "mooi" of "zuiver" mogelijke golfvorm te maken. Ik denk dat dat afhangt waar je die golf voor gebruikt. Als die golf bedoeld is om een natuurkundig "iets" te beschrijven dan kan het niet veel genoeg zijn. Maar als het voor geluid is lijkt mij het oor de ultieme test. Wat jij eigenlijk wilt weten, denk ik, is of een ander dit ooit eens (theoretisch of praktisch) eerder heeft bepaald. Zeer waarschijnlijk, lijkt mij. Maar wie en wanneer? Als de programmatuur die je gebruik reeds "weet" dat het een sinus moet worden dan zou 44 samples per sec. in theorie genoeg moeten zijn om er een perfecte sinus van te maken. Maar ik denk niet dat dat de bedoeling is. Als het niet te veel moeite is zou je een experiment kunnen uitvoeren met een stuk of tien tabellen met steeds meer samples van een "test golf" dan wel test-geluidsfragment. Een soort luistertest. Ik denk dat jij handig genoeg bent qua programmeervaardigheden om die test-tabellen te genereren.     

Verder ben ik het eens met de opmerking dat je het Wetenschapsforum ook zou kunnen proberen. Daar zitten eigenlijk meer scholieren met huiswerkvragen dan onderzoekers, maar er zitten wel degelijk hoogopgeleide mensen tussen. Met een beetje geluk op het vakgebied dat jij nodig hebt...   

Succes en laat horen hoe het ging! smile

Als je voor een verdieping niet de diepte in moet, maar de hoogte, waarom heet het dan ....

9 Laatst bewerkt door pascal (07 Aug 2015 14:39:39)

Re: Wiskundig puzzeltje

Meneer Jansen.

Harry Nyquist meende te kunnen bewijzen dat je om een signaal te kunnen beschrijven, de sample rate hoger (dus niet gelijk aan zoals zovelen ten onrechte beweren) moet zijn dan twee maal die hoogste frequentie.
Daarbij moet je weten dat de hoogste frequentie in dat signaal altijd een sinus vorm heeft.
Is dat niet het geval, dan komen er in dat signaal nog hogere frequenties voor en was wat je in gedachten had dus niet d hoogste frequentie.
Bedenk ook, dat je echt geen 20kHz meer hoort als je de dertig gepaseerd bent, maar dat je wel degelijk hoort waneer die frequenties ontbreken.

Verder is het allemaal niet meer zo moeilijk. naar het afspelen van je samples via een DAC (digital analog converter) maakt het LPF (low pass filter) van die hoogste frequentie een mooi sinus en de rest volgt zoals ooit bedoeld was.

@Andre, ben zelf sinds 86 gelicenceerd doe heel af en toe wat met een seinsleutel, de rest is enkel experimenteel... zo ook nu dus.
Excuus over mijn gebrek aan kennis van de juiste afkortingen, chemie heb ik na middelbare school niets meer mee gedaan.

Pascal's Blobfree Homepage
Een dag geen NedLinux is een dag niet geleefd

10

Re: Wiskundig puzzeltje

Ik denk dat ik het weet. kwestie van oppervlakte van beiden bepalen

Uitgaande dat we enkel met hele bits van doen hebben en naar boven moeten afronden geld:
n: aantal bits
r: straal van een circel

Denk ik dat    2*π*n² = 2*π*r²    en r = (2^n) -1

Ben al verder bekijk ik dus later
to be continued

Pascal's Blobfree Homepage
Een dag geen NedLinux is een dag niet geleefd

11 Laatst bewerkt door pascal (08 Aug 2015 23:40:20)

Re: Wiskundig puzzeltje

Dit was even meer een notitie voor me zelf

Het idee was dus Dat de oppervlakte van de circel het zelfde blijkt te zijn als dat ik met het aantal bits kan invullen.
Even heel praktisch. stel ik heb 4 bits waarvan het meest significante gebruikt word om +/- te bepalen dan heb ik 8 mogelijkheden (0 tot 7).
waneer ik de ruimte onder de sinus curve verdeel in vierkante blokjes waarbij geld dat er verticaal 7 blokjes zijn
dan is het aantal blokjes nodig om de boel op te vullen gewoon de oppervlakte.
Om een lang verhaal kort te maken,
Het aantal samples dat voor een kwart periode nodig is, is het zelfde als het aantal mogelijkheden die je met  de beschikbare bits kunt maken, dus 8.
Voor een hele sinus zijn dat er dus 32 maar met een tabel van de eerste kwart kun je de rest afleiden.
Eigenlijk is het heel simpel, maar je moet het wel weten.

Leverde me overigens gelijk een ander probleem op.
Waneer je op een frequentie van 7MHz (waar ik min of meer toevallig op bezig was) en je wilt alle mogelijkheden in de tabel voorbij lopen (waarvoor werkelijk geen goede reden is)
dan moet je dus 7000000 maal per seconde 32 samples aflopen hetgeen een sample rate van 224 MS/sec vereist.
Nu doet een fpga dat wel, maar de hardware die er achter hangt beslist niet, en dan zit ik nog maar op 7MHz..
4 Samples is echt ruim voldoende, alles wat meer is is leuk maar niet nodig.
Zit je dus op 28MS/sec, wel ik heb ehm op 56MHz gezet, dat doet de hardware zonder problemen.

Pascal's Blobfree Homepage
Een dag geen NedLinux is een dag niet geleefd