Electron Arduino Doppler

Hardware en software.
Bericht
Auteur
Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Electron Arduino Doppler

#1 Bericht door Dopp »

Hallo Allemaal,


Onderstaan het circuit van de Arduino doppler blz 322
van Electron aug 2015 van PA2GLA.


En de orginele sketch van PA2GLA

En de sketch zoals ik hem voorlopig heb aangepast

Er zal nog heel wat moeten veranderen denk ik ....

Hem hem zelf nog niet gebouwd


Veel denk en knutsel plezier allen

Orinele Code

Code: Selecteer alles



/*
Deze sketch vormt samen met een antenne schakelaar, een pelorus en een interface een {Doppler} peiler met elke willekeurige smal band FM ontvanger.

Ontworpen door PA2GLA  Jan Glavimans eind 2014
laatst gemodificeerd 18 juni 2015

Een ieder is vrij dit te gebruiken / modificeren.

*/
//#include <math.h>
// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int meet = 4; //hoe vaak wordt er per schakeling gemeten
int average = 500; //hoeveel loops doorlopen we?
int antenneP = 2;//benoem alle pin-nummers
int antenneQ = 3;
int antenneS = 4;
int antenneR = 5;
int ledI = 6 ;
int ledII = 7;
int ledIII = 8;
int ledIV = 9;
int leda = 10;
int ledb = 11;
int ledc = 12;
int ledd = 13;
int count = 500;  // bepaal de soort van variabele
float X;
float Y;
float tg;
// the setup routine runs once when you press reset:
void setup ()
{
  // initialize the digital pin as an output.
  pinMode (antenneP, OUTPUT);// set de soort van functie
  pinMode(antenneQ, OUTPUT);
  pinMode(antenneS, OUTPUT);
  pinMode(antenneR, OUTPUT);
  pinMode(ledI, OUTPUT);// iedere kwadrant bedient de ledjes a,b,c,d.
  pinMode(ledII, OUTPUT);
  pinMode(ledIII, OUTPUT);
  pinMode(ledIV, OUTPUT);
  pinMode(leda, OUTPUT);
  pinMode(ledb, OUTPUT);
  pinMode(ledc, OUTPUT);
  pinMode(ledd, OUTPUT);

  Serial.begin(9600);// voor ontwikkel doeleinden
}

// the loop routine runs over and over again forever:
void loop()
{
  for (count = 0; count < average; count ++)
  {

    digitalWrite(antenneP, HIGH);    // we gaan van P => Q => => R => S enz.
    digitalWrite(antenneS, LOW);   //      P-Q  eerst de nieuwe antenne aan voordat de andere uit is
    delayMicroseconds(100);
    for (int m = 0; m < meet; m ++)
    {
      Y = Y + analogRead(A0); // meet de response en stop die in de "condensator bak"
    }



    digitalWrite(antenneQ , HIGH);
    digitalWrite(antenneP , LOW);    //   X-Z
    delayMicroseconds(100);
    for (int m = 0; m < meet; m ++)
    {
      X = X  - analogRead(A0);
    }




    digitalWrite(antenneR, HIGH);   // turn the antenne on (HIGH is the voltage level)
    digitalWrite(antenneQ, LOW);    //   Z-Y
    delayMicroseconds(100);
    for (int m = 0; m < meet; m ++)
    {
      Y  = Y - analogRead(A0);
    }



    digitalWrite(antenneS, HIGH);   //    Y-0
    digitalWrite(antenneR, LOW);
    delayMicroseconds(100);
    for (int m = 0; m < meet; m ++)
    {
      X = X + analogRead(A0);
    }



  }
  //if (abs(X) + abs(Y) > 80000 )  // drempel inbouwen om valse display te voorkomen wordt aan gewerkt 
  {


    tg = abs(Y / X);
    digitalWrite(ledI, LOW);   // zet het ledje dat "aan " was "uit "
    digitalWrite(ledII, LOW);
    digitalWrite(ledIII, LOW);
    digitalWrite(ledIV, LOW);
    digitalWrite(leda, HIGH);
    digitalWrite(ledb, HIGH);
    digitalWrite(ledc, HIGH);
    digitalWrite(ledd, HIGH);
    if ((X > 0) && (Y > 0)) digitalWrite(ledI, HIGH);// kwadrant bepaling
    if ((X < 0) && (Y > 0)) digitalWrite(ledII, HIGH);
    if ((X < 0) && (Y < 0)) digitalWrite(ledIII, HIGH);
    if ((X > 0) && (Y < 0)) digitalWrite(ledIV, HIGH);



    if (tg < 0.41) digitalWrite(leda, LOW);  //, 22.5 gr
    if ((tg > 0.41) && (tg < 1)) digitalWrite(ledb, LOW);//tussen 22.5 en 45 gr
    if ((tg > 1) && (tg < 2.41)) digitalWrite(ledc, LOW);//tussen 45 en 67.5 gr
    if (tg > 2.41) digitalWrite(ledd, LOW);// > 67.5 gr



    Serial.print ("X ");// handig voor ontwikkelingsfase, terugmelden aan laptop
    Serial.print (X);
    Serial.print (";   Y ");
    Serial.print (Y);
    Serial.print (";   hoek ");
    Serial.print (atan(tg) * 180 / 3.14159);
    //Serial.print ("   T= ");
    //Serial.print (millis());
    Serial.println (" ");

    X = Y = 0 ;//maak onze "condensator bakken"leeg en begin opnieuw
  }
}

Modified Code

Code: Selecteer alles


/*
Modified by PA3BNX Not tested yet 05-08-2015 because I do not have the hardware build yet

Deze sketch vormt samen met een antenne schakelaar, een pelorus en een interface een {Doppler} peiler met elke willekeurige smalband FM ontvanger.

Ontworpen door PA2GLA  Jan Glavimans eind 2014
laatst gemodificeerd 18 juni 2015

Een ieder is vrij dit te gebruiken / modificeren.

*/
//#include <math.h>
// Pin 13 has an LED connected on most Arduino boards.
// give it a name:

const int calibratie=0;  //calibration offset in graden 
const int average=500;   //hoeveel loops doorloprn we?
const byte meet=4;       //hoevaak wordt er per schakeling gemeten
const byte delaym=100;   //100 mSec delay tussen antennes schakelen

const int offset = 511; //Analoge input gaat van 0 to 1023 Audio heeft offset dus 511
const float rad1 = 180/PI;

int antenneP = 2;//benoem alle pin-nummers
int antenneQ = 3;
int antenneS = 4;
int antenneR = 5;
int ledI = 6 ;
int ledII = 7;
int ledIII = 8;
int ledIV = 9;
int leda = 10;
int ledb = 11;
int ledc = 12;
int ledd = 13;


float x;
float y;

//Returns Agrelo geformatteerde  string % en 3 cijfers altyd
String Format3Degrees(int d){
  String str;
  int digits[3];
  int reminder;  
  digits[0]=d/100;
  reminder=d%100;
  digits[1]=reminder/10;
  reminder=reminder%10;
  digits[2]=reminder;
  str+='%';
  str+=digits[0]; 
  str+=digits[1];
  str+=digits[2];
  return str;
}


// the setup routine runs once when you press reset:
void setup ()
{
  // initialize the digital pin as an output.
  pinMode (antenneP, OUTPUT);// set de soort van functie
  pinMode(antenneQ, OUTPUT);
  pinMode(antenneS, OUTPUT);
  pinMode(antenneR, OUTPUT);
  pinMode(ledI, OUTPUT);// iedere kwadrant bedient de ledjes a,b,c,d.
  pinMode(ledII, OUTPUT);
  pinMode(ledIII, OUTPUT);
  pinMode(ledIV, OUTPUT);
  pinMode(leda, OUTPUT);
  pinMode(ledb, OUTPUT);
  pinMode(ledc, OUTPUT);
  pinMode(ledd, OUTPUT);

  Serial.begin(9600);// voor ontwikkeldoeleinden
}

// the loop routine runs over and over again forever:
void loop()
{
  
  int count;    
  byte m;
  int hoek;
  byte hoek90;
     
  
  for (count=0;count<average;count++)
  {
    
    digitalWrite(antenneP, HIGH);    // we gaan van P => Q => => R => S enz.
    digitalWrite(antenneS, LOW);     // P-Q  eerst de nieuwe antenne aan voordat de andere uit is
    delayMicroseconds(delaym);
    for (m=0;m<meet;m++)
    {
      y += analogRead(A0); // meet de response en stop die in de "condensator bak"
    }

    digitalWrite(antenneQ , HIGH);
    digitalWrite(antenneP , LOW);    //   X-Z
    delayMicroseconds(delaym);
    for (m=0;m<meet; m ++)
    {
      x-=(analogRead(A0)-offset);
    }

    digitalWrite(antenneR, HIGH);   // turn the antenne on (HIGH is the voltage level)
    digitalWrite(antenneQ, LOW);    //   Z-Y
    delayMicroseconds(delaym);
    for (m=0;m<meet; m++)
    {
      y-=(analogRead(A0)-offset);
    }

    digitalWrite(antenneS, HIGH);   //   Y-0
    digitalWrite(antenneR, LOW);
    delayMicroseconds(delaym);
    for (m=0; m<meet; m++)
    {
      x+=(analogRead(A0)-offset);
    }
  }
  
  //drempel inbouwen om valse display te voorkomen wordt aan gewerkt 
  if (abs(x)+abs(y)>80000)
    {
  
    //Toon nieuwe Pelorus  
    //Idee ? Het zou leuk zijn dat er twee naast elkaar liggende leds op lichten bij bv 12,5 graden led 0 en 22,5
        
    digitalWrite(ledI, LOW);   // zet het ledje dat "aan " was "uit "
    digitalWrite(ledII, LOW);
    digitalWrite(ledIII, LOW);
    digitalWrite(ledIV, LOW);
    digitalWrite(leda, HIGH);
    digitalWrite(ledb, HIGH);
    digitalWrite(ledc, HIGH);
    digitalWrite(ledd, HIGH);
    
    //Bereken de hoek in graden van x en y 
    hoek = int(atan2(y,x) * rad1);
    if (hoek<0){hoek+=360;}  
    
    //Hier kun je makkelijk kalibreren alleen Hoek en Calibratie optellen
    hoek+=calibratie;
    hoek=hoek%360; //Graden altyd tussen 0 en 360  
           
    if (hoek>=0&&hoek<90) {digitalWrite(ledI, HIGH);}// kwadrant bepaling
    if (hoek>=90&&hoek<180) {digitalWrite(ledII, HIGH);}
    if (hoek>=180&&hoek<270) {digitalWrite(ledIII, HIGH);}
    if (hoek>=270&&hoek<360) {digitalWrite(ledIV, HIGH);}

    //Modules 90 Geeft altijd output van 0 tot 90 graden
    hoek90=hoek%90;

    if(hoek90<23){digitalWrite(leda, LOW);}      //tussen 0 en 22.5 gr
    if(hoek90<=45){digitalWrite(ledb, LOW);}     //tussen 22.5 en 45 gr
    if(hoek90<68){digitalWrite(ledc, LOW);}      //tussen 45 en 67.5 gr
    if(hoek90<=90){digitalWrite(ledd, LOW);}     //tussen 67.5 en 90 gr


   //Ik adviseer om de hoek terug te zenden in agrelo format dus %ddd  
   //Dan kun je het ook laten werken met MyMapping.exe
   //Roep hier functie 3 degrees aan zodat agrelo altyd 001, 011 of 111 is  
   Serial.println (Format3Degrees(hoek));
     
    x=0;
    y=0;//maak onze "condensator bakken"leeg en begin opnieuw
   }

}//End of loop

Bijlagen
GLA-Circuit.PNG
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

pe2cvf
Berichten: 95
Lid geworden op: 02 mei 2008, 20:43

Re: Electron Arduino Doppler

#2 Bericht door pe2cvf »

Leuk projectje om erbij te doen.

Tip: Ik heb arduino lilypads op eBay gekocht, dan heb je gelijk een mooi rond printje om de ledjes op te solderen. Ik ben van plan om dat geheel in een oude TomTom te knutselen, gelijk een praktische behuizing om tegen de voorruit te plakken

Spullen moeten nog binnenkomen, tegen die tijd kan ik wel wat plaatjes posten

PA2GLA
Berichten: 41
Lid geworden op: 27 aug 2015, 12:52
Roepletters: PA2GLA

Re: Electron Arduino Doppler

#3 Bericht door PA2GLA »

Hallo Lodewijk,
Leuk dat je enthousiast bent en even bliksemsnel een nieuw pgm voor dit ontwerp geschreven hebt!
5 weken geleden heb ik kort kontakt met je gehad zou graag willen weten of je het al uitgeprobeerd hebt?
misschien kun je kontakt opnemen via E-mail.
Is er misschien al meer ervaring?
73's Jan PA2GLA

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Electron Arduino Doppler

#4 Bericht door Dopp »

Hallo Allemaal,


Eh nee ik heb deze veranderingen nog niet uitgeprobeerd in jou software en hardware.

Ik had alleen wat nadere ideeen over de loop/opbouw van de software.

Ideetje's dus.

Oa de analoge input waarde plus en negatief maken dus
offset -511 Loopt dan van -511 tot + 511 ipv 0 tot 1023

De functie atan2() gebruiken

En met de % functie (Modules)
begrenzen op 0 tot 360 graden.

Kijk maar of je de software zoals ik hem tot dus vere heb gemodificeerd
kunt begrijpen.

Kijk anders ook op mijn draadje SuperSimpelSoundDoppler
en de autonome Doppler van PA8W

Ik heb ondertussen wel mijn SuperSimpleSoundArduino software goed lopend met een
10x led lm3914 Pelorus...

Oh en op de site van PI4WAG staat ondertussen de nieuwste versie

MyMapping.exe met allerlei snufjes in de terminal
in het programma.

Korte uitleg Agrelo protocol

Gewoon de graden sturen over de serial.print
Altyd een % en dan 3 digits dus bv %001

Maar dan in formaat %bbb <cr>< lf>

Dan kijn je in MyMapping spelen met een Arduino terminal

Met F9 heb je dan ook een Pelorus op scherm.

%999

Betekend Squelch Closed.

Allemaal heel makkelijk bij het debuggen en testen
van de arduino software hi...

Zelfs uitmiddelen zit in mijn software MyMapping

F8 Averaging / On Off
en maximale averaging time in secondes instellen.

Er verschijnt dan een groene bug in de Rim van de pelorus.

De Pelorus is tegenwoordig doorzichtig (mouse wheel)
en kan dus heel makkelijk over een ander kaarten programma gelegd worden.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

PA2GLA
Berichten: 41
Lid geworden op: 27 aug 2015, 12:52
Roepletters: PA2GLA

Re: Electron Arduino Doppler

#5 Bericht door PA2GLA »

Hallo Lodewijk en alle anderen,
Om de software aan te passen op door jou eerder ontwikkelde software vind ik prachtig, ik zit even wat kort in de tijd, maar anders zou ik dat graag willen testen.

het ideetje om de X en Y waardes bipolair te maken zie ik echter niet zo zitten, om de offset samen met de negatief gaande waardes van de response van elkaar af te trekken geeft de schone oplossing dat er geen offset meer is ( onafhankelijk van de offset-waarde!) . Afhankelijk van de ontvanger die gebruikt wordt moet er toch gekozen worden voor positieve of negatieve responsen.

Iets was mij erg nieuwsgierig maakte was jouw uitlating over plaat-antennes tijdens ons korte QSO, graag zou ik daar meer over willen weten, zoals gevoeligheid en polarisatie. Is daar enige docu over?

Ondertussen heb ik mijn pgm gewijzigd voor het gebruik van slechts 3 antennes, 1 recht voorui en 1 opzij van het 0-punt, ik wacht nog op een geschikte bron om te testen (70cm).

De idee is om tot 3 antennes te komen op de basis van een gelijkzijdige driehoek, ik denk dat dit mogelijk voordelig is omdat er een 3e richting ontstaat aan de basis van de metingen. Wie heeft hier misschien commentaar op?

bes t73's Jan PA2GLA

Goos
Berichten: 338
Lid geworden op: 16 nov 2011, 20:45
Roepletters: pa0sir

Re: Electron Arduino Doppler

#6 Bericht door Goos »

De idee is om tot 3 antennes te komen op de basis van een gelijkzijdige driehoek, ik denk dat dit mogelijk voordelig is omdat er een 3e richting ontstaat aan de basis van de metingen
Principieel kan het met 3 antennes , maar je maximaal mogelijke diameter wordt kleiner , dus meer last van reflecties en je doppler response wordt kleiner.
zie:
http://www.zendamateur.com/viewtopic.ph ... ase#p80411
http://www.zendamateur.com/viewtopic.ph ... ase#p80422

Wat bedoel je precies met
omdat er een 3e richting ontstaat aan de basis van de metingen
?

gr
Goos
Peilen is het omgekeerde van een antennediagram opmeten.
pa0sir

Goos
Berichten: 338
Lid geworden op: 16 nov 2011, 20:45
Roepletters: pa0sir

Re: Electron Arduino Doppler

#7 Bericht door Goos »

Ik bedoelde eigenlijk dit plaatje zie onder


Wat betreft de plaatantenne , ik heb hier veel metingen aan verricht en tot de conclusie gekomen dat de voor/achter niet veel beter te krijgen is dan gemiddeld 10 dB
Dit was voor mij de reden om er niet mee verder te gaan en heb ik een variant gemaakt op de Taiyo antenne.
Op het ogenblik bezig met een variant van de Taiyo die de helft kleiner is en dezelfde prestatie qua gevoeligheid zou moeten hebben.

Overigens de polarisatie is verticaal echter ook een gedeelte horizontaal met een geheel ander diagram , dus echt onbruikbaar voor signalen waar een grote horizontale component in zit.
Bijlagen
grkl-basis.JPG
Peilen is het omgekeerde van een antennediagram opmeten.
pa0sir

PA2GLA
Berichten: 41
Lid geworden op: 27 aug 2015, 12:52
Roepletters: PA2GLA

Re: Electron Arduino Doppler

#8 Bericht door PA2GLA »

Alvast bedankt voor de info.
Ik ben de rest van de week op reis, maar ik kom zeker op deze discussie terug.

73's Jan PA2GLA

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Electron Arduino Doppler

#9 Bericht door Dopp »

Hallo Allemaal,

Okay nog wat gefiddeld aan de arduino software

Maar nog niet getest omdat ik de hardware nog niet heb gebouwd.

Ik zelf heb immers andere hardware gebouwd.

Maar deze versie heeft bug's fixed en

Agrelo met %999 squelch closed.


Hoop dat deze versie werkt met PA2GLA Hardware
Bijlagen
Arduino_peiler-GLA1.txt
(5.2 KiB) 235 keer gedownload
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

PA2GLA
Berichten: 41
Lid geworden op: 27 aug 2015, 12:52
Roepletters: PA2GLA

Re: Electron Arduino Doppler

#10 Bericht door PA2GLA »

Halo Goos en Dopp,

Dopp: leuk dat je de sketch nu aangepast hebt voor jouw software, ik ga dat zeker een keer uitproberen. Ik had gehoopt je op de ballon vossejacht te treffen...
Nee de ballon vos niet met de arduino gevonden, maar met de HB9CV uit het raampje, op een bepaald moment was de vos weg en heeft de HB9CV samen met CW op de scanner de oplossing gegeven en in de race tot de ballon de peiler niet meer aangezet.
Goos: antennes in 60graden hoeven niet minder response te geven, de afstand tussen de antennes blijft 1/4 labda, de cirkel wordt inderdaad iets kleiner.
Ik kan de antennes ook rondom een midden antenne plaatsen onder 120 graden, de cirkel wordt dan weer een stuk groter en toch meet je op 3 verschillende plaatsen/bases van de peiling.
War mij tegenstaat bij een vierkantje is dat je tweekeer dezelfde respons meet, ok dat is toch wel nodig, je hebt een hoop metingen nodig om ruis en modulatie uit te middelen.
De modulatie wegfilteren met signaal van een 2e ontvanger vind ik een briljant plan. Het is mij even ontgaan waarom je de ruis er bij nodig zou hebben.

Goos
Berichten: 338
Lid geworden op: 16 nov 2011, 20:45
Roepletters: pa0sir

Re: Electron Arduino Doppler

#11 Bericht door Goos »

Hoi Jan

Wat betreft 3 antennes onder 60 graden geeft een kleinere diameter , met gevolg dat het geheel gevoeliger wordt voor reflecties , zie mijn plaatje een tijdje terug.
Wat betreft de andere opstelling voor 3 antennes , dit wordt , professioneel, vaak toegepast op de korte golf bij correlatieve interferometrie waar bij dan meestal actieve antennes gebruikt worden om wat onafhankelijker te zijn van het aardvlak en de onderlinge beinvloeding kleiner is.
Op VHF / UHF wordt dit naar mijn weten niet toegepast maar staan de antennes altijd in een cirkel , omdat dan de onderlinge invloed gelijk is en het geheel beter gekalibreerd kan worden. Principieel kan het dus wel, maar ...
Wat ik ook wel eens gezien heb voor wat lagere frequenties is 4 antennes die kruislings afgetast werden.


Ja twee ontvangers werden professioneel ook toegepast soms zelfs 3.
Wat de ruis betreft, die heb je er niet bij nodig , wil je juist weg hebben en de reguliere modulatie is voor het peilen juist "ruis" !
Voor een deviatie in de peiling van 1 graad heb je ongeveer een s/n nodig van 50 dB.
Als je een Dopplerzwaai hebt van 2 kHz en een modulatiezwaai van 5 kHz dan zit je op een s/n van -8 dB Als je nu de output van de detectors binnen 40 dB aan elkaar gelijk kunt krijgen en de fase binnen 1 graad dan heb je al 40 dB te pakken van de 58 die je moet wegwerken.
O ja Elke verdubbeling in middelingstijd = 6 dB s/n winst.

Waarom 3 ontvangers , 1 voor links om 1 voor rechtsom en een voor de modulatie.
Met linksom / rechtsom kun je de looptijd verschillen (over de doorlaat ) in de IF filters compenseren , maar deze moeten dan hiervoor ook exact gelijk zijn. Principe werd toegepast in de PA555 van R&S.
O ja de diameter was 1 meter, rotatie frequentie 170 Hz ging nog prima op 20 MHz ook breedband FM geen enkel probleem.

gr
Goos
Peilen is het omgekeerde van een antennediagram opmeten.
pa0sir

PA2GLA
Berichten: 41
Lid geworden op: 27 aug 2015, 12:52
Roepletters: PA2GLA

Re: Electron Arduino Doppler

#12 Bericht door PA2GLA »

Hallo Goos,
Dank voor je uiteenzetting, iets in je verhaal doet mij vermoeden dat je er erg veel van af weet cq er daadwerkelijk mee bezig geweest. (of beide).
Daarom moet ik met enige schroom het volgende beweren: Mijn peiler werkt helemaal niet met doppler zwaai/ doppler toon of iets dergelijks. In het Electron had ik hem ook liever geen Doppler peiler genoemd.
Na het omschakelen van de ene naar de andere antenne wordt aan de fm detector van de ontvanger eenmalig een fasesprong aangeboden, zolang de ontvanger nier overstuurd is is de stapgrootte en richting een maat voor het fase verschil. eigenlijk zou ik liever spreken van interferometer. Vanwege de eenvoud heb ik een ingewikkeld laagfrequent filter achterwege gelaten. Ruis en modulatie moeten dus door een groot aantal gemiddelden uitgefilterd worden.
Wanner je spreekt over links/rechtsom draaien denk ik gelijk van waar is dat voor nodig? Wellicht geeft dit een betere uitmiddeling bij verzeiling oftewel wanneer de peiler in beweging is.
Natuurlijk ben ik helemaal met je eens dat ontwerp en bouw van de antenne eigenlijk het meest belangrijke deel van een peiler zijn, van wat voor soort dan ook. Dat heeft zeker met de toepassing te maken.
Waar ik zelf nog geen goede oplossing voor heb is het testen van het geheel, er zijn hier in mijn buurt anderhalve DGPS bakens op 70 vm.
er is meer, maar anders wordt het zo lang
73's Jan PA2GLA

Goos
Berichten: 338
Lid geworden op: 16 nov 2011, 20:45
Roepletters: pa0sir

Re: Electron Arduino Doppler

#13 Bericht door Goos »

Hoi Jan

Ik heb zelf nooit een doppler peiler gebouwd , wel voor anderen er aan gemeten.
Zelf ben ik meer bezig met op amplitude gebaseerde systemen, maar de principes om een, zo goed mogelijk systeem te krijgen ,zijn eigenlijk hetzelfde.
Wat wij onder een doppler peiler verstaan is eigenlijk pseudo doppler. Doppler is wanneer je de antenne fysiek gaat ronddraaien. met een pseudo doppler meet je eigenlijk ook de fase sprongen.
Kom je meteen op interferometrie, dit is als je evenveel ontvangers hebt als antennes en tegelijkertijd de faseverschillen meet tussen de antennes , gaat razendsnel dus, peiltijden van 10 usec, wordt meestal als een histogram afgebeeld.
Jou systeem zou je eigenlijk taalkundig ,in het licht van het vorige, gezien iets van "pseudo inteferometrie" moeten noemen.

Het zelfde heb je met TDOA , vaak wordt zo'n ding wat tussen 2 sprietjes schakelt TDOA genoemd , maar in feite is dit ook pseudo interferometrie.
TDOA is eigenlijk een systeem wat bestaat uit minimaal 3 ontvangers ver uit elkaar waar heel nauwkeurig tijdverschillen worden gemeten op basis van de inhoud vh signaal ( IQ van het mf ), met een kale draaggolf gaat dit dan ook niet.
Het geeft ook geen richting aan alleen de plaats vd signaalbron.

Waarom linksom/rechtsom , als je een delay in het filter hebt , zul je in het met een doppler een afwijking hebben . voor beide is dit negatief ijlt iets na dus tov de werkelijke waarde , alleen zijn ze tegengesteld dus de fout wordt opgeheven. Je kunt ook zeggen dit is een vaste waarde dus ik ga het corrigeren. Echter de delay binnen de doorlaat van een filter is niet constant wanneer het signaal nog niet in de limiter zit.

gr
Goos
Peilen is het omgekeerde van een antennediagram opmeten.
pa0sir

Gebruikersavatar
pa8w
Berichten: 946
Lid geworden op: 22 dec 2011, 21:30
Roepletters: PA8W
Locatie: Beuningen
Contacteer:

Re: Electron Arduino Doppler

#14 Bericht door pa8w »

Hoi allemaal,

Allereerst wil ik respect en lof uiten voor Jan die op geheel eigen wijze vanaf nul een peiler op de wereld heeft gezet.
En dat met een minimum aan onderdelen.
Zelf bedenken en maken is het hoogste goed in onze hobby.

Maar:

Als ik luister naar Jan's ervaringen met zijn peiler dan sluit dat precies aan bij mijn eerste reactie nadat ik met zijn project in aanraking kwam;
Jammer dat hij hard schakelt.
Verhoogde ruisvloer, vooral bij aanwezigheid van harde signalen in de buurt, is een typisch gevolg van hard schakelen.
Daar heeft de typische amateur doppler zijn niet zo geweldige reputatie aan overgehouden.
Het was het eerste probleem waar ik tegenaan liep na het bouwen van mijn eerste -ook hard schakelende- peiler, en dat probleem heb ik gelijk de wereld uit geholpen.

Over de manier om soft switching te bereiken kun je discussiëren, mijn simpele methode introduceert een faseverschuiving in de aansturing van de antennes die zal moeten worden gecompenseerd, maar bij een naar een richting draaiende array heb je sowieso een fasecompensatienetwerk nodig vanwege de faseverschuiving in je ontvanger (audio trap) e.d.
Softwarematig stelt dat niks voor.
Het grootste nadeel van mijn simpele methode is dat je bij een verhoogde rotatiesnelheid (om b.v. met een UHF array te peilen op VHF) meteen een heel andere fasecompensatie nodig hebt. Her-calibreren dus. Niet meer dan een ongemakje.

Ik denk (weet!) Jan, dat als je je peiler uitbreidt naar een soft switching versie dat dat verreweg de grootste verbetering geeft van alles wat je nog zou kunnen bedenken rondom je peiler.

Groet,
Wil.
Let op: website verhuisd naar: http://www.paluidsprekers.nl/pa8w/index.html

PA2GLA
Berichten: 41
Lid geworden op: 27 aug 2015, 12:52
Roepletters: PA2GLA

Re: Electron Arduino Doppler

#15 Bericht door PA2GLA »

Wil,
ik heb nooit enige uitlating over de werking van mijn apparaatje gedaan waaruit je zou kunnen afleiden dat het niet naar behoren werkte vanwege het ontbreken van soft-switching.
Ik weet al heel lang dat dit een stokpaardje van je is, dat moet je echt zelf weten, maar laat mij er buiten. Ikzelf denk dat soft-switching een illusie is alleen al vanwege het feit dat een diode open of dicht gaat in enkele milivolts spannings verschil, het regeltje Rd= 40/ma gaat mi niet op voor hf signalen van enkele microvolten.

Het peilertje uit Electron is bedoeld om een zo simpel mogelijk ontwerp te maken waaruit je geen weerstand meer weg kunt laten. Het geheel functioneert boven verwachting goed.
Dat de werking staat of valt met de aansturing van software is een prachtig gegeven om allerlei experimenten eenvoudig mogelijk te maken zoals eenvoudig veranderen van schakel volgordes van de antennes, het aantal metingen dat gemiddeld wordt en bovenal andere antenne configuraties. De 16 ledjes zijn voor mobiel gebruik meer dan goed net zoals de nauwkeurigheid.
Natuurlijk, waar de reflecties sterker zijn dan het gewenste signaal zal het ophouden, te denken aan rijden tussen de huizen of dichte bomenrijen.
Tot nu toe is er niemand die zich gemeld heeft met een niet werkende nabouw, misschien komt dat nog en zullen we zien hoe dat komt.
Natuurlijk is het mogelijk om met andere software (DOPP) data in te lezen in een PC, dit soort plannen juich ik van harte toe.

Ik denk dat op dit moment het allerbelangrijkste is om de antenne te optimaliseren, dit zal de grootse invloed hebben op evt verbeteringen.

Natuurlijk sta ik open voor kritiek, verbeteringen en bovenal voor test-methodes die een eerlijke vergelijking mogelijk maken zonder direct maar het dak van de shack op te zoeken met semi vaste antennes.

73's Jan PA2GLA

Plaats reactie