Ik zoek een 2d-fft routine in basic

Moderators: jkien, Xilvo

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Hoi 317070

Nu je vragen:
Maar ik heb nog altijd ernstige twijfels dat dat de hemel voorstelt.

Mag ik vragen welke berekening je doet om die kaart te maken? Of waar je je algoritme vandaan haalt om van je antennedata naar de hemelkaart te gaan?

In ieder geval, mij lijkt dat je met 2 antennes voldoende hebt om een hemelkaart te maken, zonder dat je die moet verplaatsen...
Eerst het eerste deel:

Ik doe het volgende:

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Sorry, ik moest afbreken.

Eerst het eerste deel:

Ik doe het volgende:

Ik verzamel voor beide antennes een rij getallen. ( heeeel veel , 2.5 MByte per antenne)

Elk getal is een maat voor de sterkte van het signaal op dat hele korte moment.

(dit omvat, ontvangerruis, sterrenruis en storing tegelijk)

Ik doe dit gedurende 36 seconden.

Ik ga dan de twee rijen met elkaar vermenigvuldigen: rij1 = x(i) rij2 = y(i)

x(1) * y(1) + X(2) * y(2) + x(3) * y(3) + ................ + x(n) * y(n)

deze totale som deel ik door n

Ik krijg dan dus voor een meting van 36 seconden 1 getal. Dit getal heet de crosscorrelatie.

Het blijkt dat je door deze rekentruuk alleen de sterkte van de sterrenruis overhoudt.

De ontvangerruis en de storing is niet coherent,, dus die verdwijnt!

Nu verplaatst ik 1 van de antennes en wacht tot de hemel weer in precies dezelfde positie staat.

( een dag min 4 minuten verder))

Dan doe ik weer een meting en reken ik weer een crosscorrelatie uit.

Al deze crosscorrelatie getallen zijn de getallen die ik je gaf... dus voor elke antenne positie eentje.

Als je de tweede antenne handig verplaatst krijg je dus een regelmatige matrix van crosscorrelaties.

Het is dus net of je op 1 moment met een heleboel antennes tegelijk gemeten hebt

In werkelijkheid doe ik een hele dag achterelkaar meten en ga later dezelfde tijden bijelkaar zoeken tot

de matrix op een zeker tijdstip. Ook middel ik nog wat waarden uit..... (naar keuze)

eerst even zien of dit duidelijk is..

Wim

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

O ja, nog dit:

de crosscorrelatie is een maat voor het looptijdverschil van het signaal naar beide antennes.

Dus je zou kunnen zeggen dat dit een faseverschil is.

je moet je dit als volgt voorstellen:

als je beide antennes op dezelfde plaats laat staan en je meet elke minuut een crosscorrrelatie dan zul je zien

dat de crosscorrelatie bijna sinusvormig verandert. Want de aarde draait waardoor de invalshoek tussen

de lijn tussen de beide antennes en de richting naar de radio-ster continu verandert.

Over een dag gezien krijg je van 1 bron een sinus waarvan de frequentie niet constant is.

als de bron haaks op de verbindingslijn tussen de antennes staat is de frequentie het hoogst.

Ook de hoogte van de ster boven de horizon bepaalt de frequentie.

Door dit gegeven kun je met 1 dag meten bepalen waar een ster staat......

Helaas, er is niet 1 ster, maar er zijn er meerdere.

Elke ster geeft zijn eigen sinus.. Deze sinussen gaan interfereren.

Hierdoor zie je niet meer welke ster de golfvormpjes geeft.

Om deze sinussen te scheiden gebruik je de FFT... alleen helaas in 2 dimensies....

En nu heb ik het tweede deel van je vraag ook beantwoord....

snappie????

Groetjes

Wim

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Ik schrijf dus alle programma's zelf in Pure Basic. Dit om precies te weten wat er gebeurt.... dus geen black boxes die het rekenwerk voor je doen.

Alhoewel ik best wel een 2d_fft routine uit een pakket zou willen slopen om te gebruiken... maar waar en welke???

Gebruikersavatar
Berichten: 5.609

Re: Ik zoek een 2d-fft routine in basic

snappie????
Snappie, al moet ik nog even nadenken over hoe dat dan effectief de hemel vormt na die 2D-FFT, maar ik snap je opzet weltezeker, bedankt :P

Ik denk dat ik wel al snap waar al die informatie naar toe gaat, zodat je slechts zo'n lage resolutie hebt. Je berekent de kruiscorrelatie
Verborgen inhoud
Dat is de Nederlandse vertaling ;)
slechts voor 1 'faseverschil'. Met de volledige kruiscorrelatiefunctie zou je meer kunnen doen.

Ik zou ook even moeten nadenken over hoe je dan er precies wel gebruik van kunt maken, maar ik ga zeker eens kijken hoe dat precies moet, het lijkt me wel een interessant probleem om tussen de examens door aan te werken. ;)

En dat je precies wil begrijpen hoe alles werkt, dat vind ik de beste instelling om aan zo'n probleem te werken. En hoe kun je dat inderdaad beter doen dan door alles zelf te programmeren?

Ik weet dat ik nu waarschijnlijk wel veel vraag, maar zou het mogelijk zijn om misschien eens zo'n dataset door te geven van 1 nacht, met daarin de x[n] en de y[n]? Indien je dit liever niet zou doen begrijp ik dat ook helemaal, hoor.
What it all comes down to, is that I haven't got it all figured out just yet

And I've got one hand in my pocket and the other one is giving the peace sign

-Alanis Morisette-

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Hoi 317070,

Tja, mijn lol is niet om een kaart van de hemel te maken, maar om te snappen hoe het werkt en natuurlijk de

combinatie van electronica, radio, computers, programmeren en een "zo klein mogelijk beetje - grin " wiskunde...

Ik ben tot deze werkwijze gekomen door heel veel dingetjes van het internet te halen en al die blokjes te

combineren tot wat ik nu heb...

Wat is nu een "volledige" kruiscorrelatie??

Natuurlijk kun je mijn data krijgen... geen punt.

Alleen, wat wil je precies hebben... een nacht meten is 2.5 GByte.....

Je kunt ook 1 wav-file krijgen... die is slechts 3 MByte groot... en dan kun je ook 36 seconden met mijn

telescoop meeluisteren...

Ik kan de .wav file ook omrekenen naar 2 rijen x(i) en y(i)

Zeg het maar.. ik ben heeeeel benieuwd naar je resultaten..

Succes met je examens... !!! ( want dat is net nog even belangrijker)

Wim

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

317070

Hoi,

Welke data wil je, en hoe wil je ze aangeleverd hebben...?

Wim

Gebruikersavatar
Berichten: 5.609

Re: Ik zoek een 2d-fft routine in basic

Wimapon schreef:317070

Hoi,

Welke data wil je, en hoe wil je ze aangeleverd hebben...?

Wim
Ow, sorry, het was even druk en ik ben dit uit het oog verloren.

Wel, dat is inderdaad veel data, en hoe we dat efficiënt zouden kunnen doorgeven weet ik ook niet meteen. Hoe groot is de dataset nog van 1 dag als je comprimeert met 7zip? Als ik juist ben over mijn idee om de hemelkaart te maken, zou ik helaas echt alle data van 1 nacht nodig hebben, maar daarna zou je een mooie video moeten krijgen waarop je redelijk nauwkeurig de hemel ziet voorbijkomen, denk ik.

Ik zou anders eerst gewoon een aantal sterren simuleren en zo data maken. Dan kan ik op die data kijken hoever ik kom, vooraleer te kijken hoe we die data best doorgeven.

Mag ik voor die simulatie een aantal dingen vragen? Hoever staan je antennes ongeveer uit elkaar? (100m? 50m? 20m? 10m?) Wat is de samplefrequentie per antenne in je laatste opstelling? Klopt het dat je het ontvangen signaal eerst met 35MHz demoduleert?
What it all comes down to, is that I haven't got it all figured out just yet

And I've got one hand in my pocket and the other one is giving the peace sign

-Alanis Morisette-

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Hoi 317070

Ik heb 1 file met 7zip standaard gecomprimeerd. Een .wav file ging van 3.2 naar 2.8 MByte.

Dus maakt niet zo veel uit.

dus 1 dag wordt 1400 * 2.8 GByte. ( = 3.9 GByte)

Ik heb geen idee hoe ik dat moet oversturen.....

De antennes staan hier tussen 4 en 140 m. uit elkaar.

Het is net wat je wilt. ( 1 antenne staat op een karretje.. dus is eenvoudig verplaatsbaar)

Ik kan speciaal voor jou een dag met een door jou opgegeven afstand meten.

De frequentie is 30.984 MHz.

Deze frequentie wordt eerst versterkt en dan in 1 klap in geluid omgezet.

De samplefrequentie is voor beide kanalen 22050 Hz. Ik weet niet precies of ik dit voor 2 kanalen door

2 moet delen.. als het belangrijk is, zal ik het precies uitzoeken.

Uit mijn hoofd heb ik 7 samples voor een sinus van 3000 Hz voor elk kanaal.

De doorlaat bandbreedte van de ontvangers is 3KHz.

Ik zou het heel leuk vinden als jij iets met de data kunt....!

Wim

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Hoi 317070,

Is de video al klaar?? ( grin )

De belangrijkste radiobronnen zijn: Cassiopeia-A en Cygnus-A.

De derde belangrijkste ( en verreweg de sterkste ) is de Melkweg.

Helaas is dit geen puntbron... hij loopt als een brede band langs bijna de gehele hemel. Dus hier

kun je niet veel mee.. Als je een grote afstand tussen de antennes gebruikt, zullen de diverse delen

van de melkweg elkaar uitdoven....

Bij korte afstand ( < 30 m ) zie je de signaal sterkte enorm toenemen..... Komt dus doordat de melkweg

zichzelf niet meer uitdooft.

Wim

Gebruikersavatar
Berichten: 5.609

Re: Ik zoek een 2d-fft routine in basic

Wimapon schreef:Hoi 317070,

Is de video al klaar?? ( grin )
Ik zei dat ik het tijdens mijn examens zou doen, dan gaat het natuurlijk niet zo snel. ;)

Ik vraag me nu af of je demodulator voor beide signalen dezelfde local oscillator (LO) gebruikt? Anders kan dat niet werken (EDIT: hieruit maak ik op van wel?)

En uit mijn eerste vage berekeningen maak ik op dat je kunt een volledige kaart maken van de hemel op ieder moment met 3 antennes. Met 2 antennes kun je volgens mij enkel een kaart maken van de hemel die rond het noorden draait (dus zonder satellieten enzo).

Maar, daar kom ik later nog op terug.

Waar vind ik informatie over die 3 radiobronnen? Hoe heb jij die gesimuleerd?

Het vreemde vind ik, dat je met je systeem volgens mij niet genoeg afstand en/of samplefrequentie hebt om faseverschillen te detecteren. Op 22kHz heb je een golflengte van 13km, veel meer dan dan die 100m waarmee jij een faseverschil meet. Dat je signaal van 31MHz komt maakt daar volgens mij niets voor uit. Je komt dus nooit aan een 180° faseverschil, hoogstens 2,6°.

Of ben ik hier ergens verkeerd?
What it all comes down to, is that I haven't got it all figured out just yet

And I've got one hand in my pocket and the other one is giving the peace sign

-Alanis Morisette-

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Hoi 317070,

Laat je examens alsjeblieft voorgaan hoor!!!! Dat wil ik niet op mijn naam hebben....

ja, beide ontvangers zijn 100% gelijk en gebruiken dezelfde local oscillator.

Anders zou je nooit die mooie fringe-grafieken krijgen die ik krijg!

En het zou al helemeel niet overeenkomen met mijn simulaties van sterren.

Inderdaad met 2 antennes kun je een kaart van de hemel maken door gebruik te maken van

het draaien van de aarde... dat noemen ze: aperture synthese.

met 3 antennes heb je info uit meer richtingen tegelijk, maar je moet je wel realiseren dat diverse richtingen

dezelfde fase geven voor 1 bron!........ De gelijke fase bestaat voor bronnen die op 2 conussen zitten die

als "middellijn" de antenne hebben. eentje naar de ene kant en de andere naar de andere kant.

Dus je krijgt heel veel overlappingen.

De 3 radiobronnen zijn algemeen bekend... Op de LOFAR-site kun je kaartjes van de gehele hemel

vinden waar ze op staan.

De coordinaten van deze bronnen kun je ook op het internet vinden.. Als je wilt geef ik ze je hier.

ik ga proberen om dat kaartje hier te plaatsen...

het simulatie programma heb ik helemaal zelf bedacht..... ik goochel wat met hoeken in diverse vlakken

en vind dan het faseverschil bij de 2 antennes. Dit fase verschil reken ik dan weer om in een waarde die

ik met mijn spullen zou vinden. (Ik heb er een LOFAR-techneut heel blij mee gemaakt...)

Dit doe ik voor al mijn antenne posities ( 256) en doe dan een 2d-fft .... dit geeft de kaartjes die ik

nu kan maken.

OOK maakte ik een test programma waarbij ik voor een bron de azimuth en de elevatie kan invoeren..

als output krijg ik hetzelfde kaartje als hierboven.. zo kan ik inderdaad zien dat mijn programmatuur klopt.

Als je de elevatie groter maakt, zie je de bron van de rand naar het centrum van het kaartje lopen.

Als je het azimuth groter maakt zie je de bron in een cirkel over het kaartje lopen ( rechtsom)

Op mijn kaartjes van mijn metingen ( op mijn site) (phasing interferometry results) zie je de door mij

gemeten kaart en de plekken die mijn simulaties geven voor de bekende bronnen.

Ook geef ik een projectie van de hele hemel als een echte sterrenkaart. Je ziet dat de plekken die

de bronnen daarop innemen goed kloppen met mijn simulatie kaartjes.

met die 22 KHz zit je volgens mij helemaal fout:

Omdat je de 31 MHz direct in geluid omzet krijg je toch fringes die bij 31 MHz behoren.

Natuurlijk zou je veel sneller moeten sampelen, maar dat is technisch niet zo goed mogelijk,

met de spullen en kennis die ik heb.

Ik snap het zelf ook niet helemaal, maar uit mijn resultaten blijkt ontegenzeggelijk dat het zo is.

Als test, omdat ik natuurlijk ook niet helemaal zeker was, een ruis-zendertje op enige afstand

van het antennepark gezet en heb vervolgens de cross(kruis...)correlaties voor alle antenne posities

(+/- 40) gemeten... een 2dfft op deze metingen geeft een kaartje waarvan het azimuth en elevatie

precies kloppen!

Ook deed ik hetvolgende proefje met deze metingen.

Ik berekende de crosscorrelatie door de samples van de tweede antenne steeds eentje op te schuiven.

Dus je introduceert zo een faseverschil.

Horizontaal zet je sample opschuif uit en vertikaal de dan berekende crosscorrelatie.

Als resultaat kwam er een sinusvormig signaal uit.....( de steeds verschuivende fase dus)

( Wel heb ik toen de sample rate 4 maal zo hoog genomen.)

Kortom... ik ben behoorlijk zeker dat ik geen fout met mijn metingen maak...

Maar, inderdaad ik kan nergens info vinden van anderen die dit ook hebben uitgeprobeerd....

Dus ik sta er alleen voor.

maar dat vind ik juist wel leuk.. alhoewel ik heel blij zou zijn met meer wiskundige

hulp... die hemelkaart die jij voorstelt zou ik heel graag maken, maar de wiskunde erachter

gaat me absoluut boven de pet.

Wim

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

ik probeer nu het lofar kaartje erop te krijgen...

Dit is dus een kaartje van de gehele hemel gemaakt in Potsdam door de LOAFAR groep daar.

Ze gebruikte hier (Dacht ik) 96 antennes voor en een heleboel software en rekencapaciteit...

Je ziet "mijn" bronnen er op.. onderaan zie je de band van de melkweg...

DIT IS DUS HET KAARTJE DAT IK OOK WIL KUNNEN MAKEN......

(Voor hen was het een eerste kleine test om te zien of het wel werkte...)

(Voor mij is het nu al 2 jaar denken, rekenen, programmeren, electronica bouwen, met antennes

spelen, testen en simuleren, .... en vooral heel veel plezier hebben!)
Bijlagen
pot00242.png
pot00242.png (127.57 KiB) 589 keer bekeken

Gebruikersavatar
Berichten: 5.609

Re: Ik zoek een 2d-fft routine in basic

Wimapon schreef:Inderdaad met 2 antennes kun je een kaart van de hemel maken door gebruik te maken van

het draaien van de aarde... dat noemen ze: aperture synthese.

met 3 antennes heb je info uit meer richtingen tegelijk, maar je moet je wel realiseren dat diverse richtingen

dezelfde fase geven voor 1 bron!........ De gelijke fase bestaat voor bronnen die op 2 conussen zitten die

als "middellijn" de antenne hebben. eentje naar de ene kant en de andere naar de andere kant.

Dus je krijgt heel veel overlappingen.
Hmm, ik bedenk net een piste. Zou je door gebruikt te maken van de radiation patterns van je antennes toch geen live volledig beeld kunnen maken? Ach wat, ik ga er eens wat wiskunde op loslaten. Dat is iets voor de komende weken.

Het lijkt me inderdaad wel cool om eens een cheap-ass broadband phase-interferometry systeem te ontwerpen, niet alleen om naar de hemel te kunnen kijken. ;)
What it all comes down to, is that I haven't got it all figured out just yet

And I've got one hand in my pocket and the other one is giving the peace sign

-Alanis Morisette-

Berichten: 114

Re: Ik zoek een 2d-fft routine in basic

Tja, geleide raket radar systemen gebruiken deze truuk ook... dus geen draaiende antenne meer...

Reageer