zaterdag 10 oktober 2020

ADSN [ 21 : De software : deel 1]

Het heeft wat voeten in de aarde gehad maar uiteindelijk ben ik er in geslaagd om hier op de broodplank  een automatische kalibratie te simuleren .

In principe is het simpel , kijk waar ge staat met de schotel en rijdt tweemaal naar de kalibratiepunten , eenmaal voor elevatie (EL) en nogmaals voor azimuth( AZ).

Eénmaal de kalibratiepunten bereikt , preset de tellers en klaar is Kees ( in dit geval Luc).


Alles is geschreven in C op de raspberry pi . Géén C++ want hierover is nogal wat onduidelijkheid . Het is gewoon " platte"  C , ik werk dus niet met klassen.

Ik werk wel met de PIGPIO bibliotheek, zie pigpio

In de soft van de RPI is er ook een simpel , maar goed bruikbaar IDE aanwezig.

Geany is de naam.


Deze bevat naast de editor ook een mogelijk om te compileren en/of builden en direkt het programma te starten. Tevens kan men ook een terminal oproepen en heeft men in de linkerzijbalk een overzicht van alle variabelen , functie s, macro's enz..

Ik heb ooit in school C gehad , met wat "schooloefeningen" , maar ik heb toch serieus moeten bijstuderen om het weer onder de knie te krijgen . Op een gegeven moment kunt ge niet zonder pointers werken  en dat was toch weer een hindernis . gelukkig is alles terug goed gekomen . Ook met interrupts werken en de daarbijhorende callbacks was effe doorslikken .

Uiteindelijk heeft het mij veel geholpen om flowcharts aan te maken , dit geeft meer inzicht in de code.

 


 

 

Enfin , de auto-kalibratie werkt en nu wordt het uittesten in werkelijkheid . Ik moet dit nog steeds buiten doen , dus het mag stoppen met regenen .

De volgende stap is een sequentie schrijven om hem naar een parkeerplaats te brengen. Dit is de positie van de schotel waar ik dan gemakkelijk toegang heb om er aan te werken.



zaterdag 26 september 2020

Nieuw Speelgoed [ nanoVNA_V2 ]

 Dit is , en dankzij vrij goedkoop, een must-have als je wat antennewerk wilt doen op SHF gebied . Het spul " loopt" tot 3 GHz en dit op de echte carrier , niet op een harmonische.

 

LET OP ! Er is veel kaf tussen het koren .De mijne komt  , zonder reclame  te willen maken , van deze site


tindie products


Zal van pas komen bij verdere bouw van antennes op 2.4 GHz

Heb ook de helical van de parabool eens terug uitgebouwd en gemeten .

Zat er een beetje naast en het is echt wel zoeken naar de juiste afregeling .

Maar uiteindelijk goed gekomen .

Nu is ook pas te zien wat de ingangsimpedantie  is en de reflectiecoëfficient of de SWR wat in feite hetzelfde is.

Enkele foto's.


De helical waarvan sprake onder test


De metingen :


1. Return Loss -33 dB

2. SWR 1.03

3. Z: 51.4 Ohm -j 1.23

4. F = 2.4GHz

Bij benadering van mezelf of een blik zie je de impact van de beïnvloeding , eenmaal verder dan een meter is dit nog nihil.

dinsdag 22 september 2020

ADSN [ 20 : Broodplank uitgebreid]

Omdat ik nog meer moet kunnen simuleren is er nog wat uitbreiding bijgekomen .

Zo ben ik nu soft aan het schrijven om de parabool  een kalibratie procedure te laten uitvoeren indien alles wordt opgestart of eventueel indien het nodig geacht wordt.

Om de sequentie te kunnen nabootsen zijn er twee schakelaars toegevoegd die de microswitchen in de rotor voorstellen.

Hiermee kan ik dan volgen wat er in de soft gebeurt.

We zitten  nu al aan ongeveer 1000 regels C code ( met witruimte erbij natuurlijk) en dan is de gewone sturing nog niet aanwezig.

Dit verklaart ook waarom het de laatste tijd hier nogal stil was op de blog.

 

 



zondag 6 september 2020

ADSN [ 19 : schema level shifter]

Niet echt schokkend nieuws....

Gewoon uit de junk box wat ik nog kon vinden en dat was deze oude CD4050, niet inverterende hex buffer. Deze kan wel maar amper 2 TTL poorten sturen
 ( waar is de tijd ?  ) .
Volgens datasheet is dit 5 mA bij 5V voeding.Als je weet dat mijn led al 3 mA consummeert , schiet er niet veel meer over....

Het schema:




ADSN [ 18 : premature opstelling test H bridge deel 3]

Ondertussen is er al wat gewijzigd .


De electronica is nu aangesloten aan de rotor , dus geen controller meer van het originele )
D.m.v. de drukknoppen kan ik zelf bevel geven en de richting kiezen .
Ook de orig schakelaars komen binnen en tijdens beweging komen de pulsen nog steeds binnen .

De twee losgekoppelde printjes " simulatie" was om in de shack te testen , maar nu hangt er de rotor aan.

Volgende stap ,in  het C programma verder programmeren en veiligheden inbouwen ( bv als de orig komt stop de motor en keer de keuze automatisch om.)

De levelshifter is een oude ( recup) CD4050. Het is niet hét van hét , maar het doet zijn werk , nl omzetten van de rpi uitgangen van 3.3 V naar 5V die de H bridge nodig heeft.
De CD4050 kan wel niet veel stroom sinken of sourcen  , dit laat ook de datasheet zien . De groene ledjes vragen enkele mA en het uitgangsniveau zakt al naar 4V , wat nog ruim voldoende is voor de H bridge . Deze groene ledjes zeggen mij of de brug vriigegeven is


donderdag 3 september 2020

ADSN [ 17 : voorlopig schema interface RPI <--> Rotor]

Interface tss H bridge en RPI nog te bepalen.


Het schema met de dual bridge rechtsbovenaan

dinsdag 1 september 2020

ADSN [ 16 : testen met twee positiegevers + origin detectors]

Nog twee optische scheidingen toegevoegd:

Eén voor de origin detector voor de AZ en de andere voor EL

Met deze origin detectors en met de pulsencoders tezamen kan men dan rekenen waar de schotel zich precies bevindt.

Ook kan men , als het moet,  via deze origin detectors een kalibratie uitvoeren.

Alles is gemaakt met recup materiaal . Eénmaal alles werkt schaf ik gelijke koppelaars aan voor alle kanalen.

2 sept 2020:

Testen ven beide bereiken ( oost naar west en van 10° naar 50° )

Voor AZ bedraagt de totale koers ca 18000 pulsen voor dus een draai van 180 °
Dat komt neer op 0.01° per puls . Als ik de motor kan doen stoppen  op één puls ( een utopie denk ik) heb ik een resolutie van 0.01 ° !

Voor elevatie bedraagt de totale koers van 10 ° naar 50 ° ca 16000 pulsen .
Dat is voor één puls dan een nauwkeurigheid van 0.0025 ° , nog beter !

Volgende stap: Rotoren doen draaien met de H bridge , nu gebeurt alles nog manueel.

vrijdag 28 augustus 2020

ADSN [ 15 : testen met twee positiegevers + optische scheiding]

Eerst en vooral een optische scheiding gemaakt met vier fotokoppelaars.

Ene kant 24 V die van de encoders komen van de rotors , de andere kant , keuze 5V of 3V3.


Enkele ledjes aangebracht zo ik in één oogopslag de zaken kan evalueren.

Daarna de soft aangepast , want ik moet nu vier interrupts bewaken .
Omdat ik maar één encoder hier op de tafel heb , heb ik deze ontdubbelt.
Hierdoor komen in principe de beide A of B impulsen wel gelijktijdig binnen in de RPI maar het blijkt te lukken.

De bijbehorende foto's.

De soft is in C geschreven en is gewoon een verdere ontwikkeling van het voorbeeld van de PIGPIO biblio.




De pulsen van beide encoders ( ttz één echte en één dummy) komen mooi synchroon binnen .

donderdag 27 augustus 2020

ADSN [ 14 : testen met één positiegever]

Ik heb een proefopstelling gemaakt met een rotary encoder .
Hiervoor heb ik gebruik gemaakt van een bibliotheek genoemd  PIGPIO.

zie   pigpio.


Deze biblio kan zowel C  C++ als Phyton aan.

Om deze te gebruiken moet je deze eerst downloaden en compileren , alles staat beschreven op die website.

In hun voorbeelden zat gelukkig ook een rotary-encoder voorbeeld welke is heb gebruikt om te starten . Ik zie nu net ook nog dat er een piscope bestaat om de pinnen te monitoren . Dat zal voor later zijn.


Dit is mijn opstelling en mijn metingen.

Geen puls gemist




Op het ogenblik kom ik aan de eis van 0.9ms tussen de beide impulsflanken , maar dit is maar voor één encoder . Ik moet er twee inlezen , dus weet ik niet of ik het ga halen . Anders moet ik eerst AZ aandrijven en daarna pas de EL zoals het eigenlijk met de huidige controller ook zo is .

Een tweede optie is om de motor trager te laten draaien zodat de pulsen ook trager binnenkomen.Dit zou kunnen met PWM , maar ook hier zijn er waarschijnlijk interrupts voor nodig......

Een derde mogelijkheid is om de motor op nominale snelheid te laten draaien , en als hij er bijna is over te schakelen op PWM.

Nog veel ( denk)werk voor de boeg ...

dinsdag 25 augustus 2020

ADSN [ 13 : metingen op de positiegevers]

In de rotor zitten twee positiegevers. Dit zijn er van het incrementele type , dus de positie is relatief , niet absoluut.
Ze bestaan uit twee impulsen A en B en staan in quadratuur ( 90° verschoven)
Hierdoor kan men de richting bepalen.

Ik heb , terwijl het nog goed weer is en omdat mijn besturing nog niet in de shack staat , er gisteren met de scoop metingen op gedaan. Deze zijn wel belangrijk om zelf deze later binnen te lezen in mijn hardware.

Vier metingen zijn noodzakelijk , slechts twee indien men de andere wilt afleiden .Ik heb er vier gedaan.

1.  Richting Oost met de AZ , geel kanaal is impuls A


2. Richting West met AZ , geel kanaal is impuls A




3. Richting omhoog met EL , geel kanaal is impuls A


4. Richting omlaag met EL , geel kanaal is impuls A






Verdere gegevens :

Impuls is 24 V  , in rust blijkbaar +24Vdc

De pulsbreedte is 1.8 ms , dat wil zeggen dat de flank van  puls B  er reeds zal zijn na 0.9ms . Dit is snel ! Welke hardware/software detectie moeten we hier voor gebruiken ? .....

Samengevat: 

AZ : richting Oost  impuls B , dan impuls A
AZ : richting West impuls A , dan impuls B

EL : richting Omhoog impuls A , dan impuls B 
EL : richting Omlaag impuls B , dan impuls A


zondag 23 augustus 2020

ADSN [ 12 : premature opstelling test H bridge deel 2]

Wel , ik heb de H bridge kunnen aansturen en keuze richting werkte ook , maar ik kwam al snel tot de conclusie , als ik daar ook nog minimaal vier interrupts zou moeten bij programmeren ( tweemaal A en B) die van de positiegevers komen van de rotoren AZ en EL de arduino al snel niet meer meespeelde.

Dus ben ik nu overgeschakeld op een RPI.

  • Deze kan méér interrupts aan
  • Heeft een biblio die interrupts ondersteunt zowel in C , C++ als Python
  • Heeft direkt ook een ethernetverbinding.
  • Kan " on the fly" een aanpassing in de soft doorvoeren zonder dat er moet geflasht worden.
  • en nog veel meer ....


woensdag 19 augustus 2020

ADSN [ 11 : premature opstelling test H bridge]

De broodplank is nu bestukt met enkele schakelaars , drukknoppen en een H bridge.
Ook de UNO staat erbij en een steekveld voor verdere testen .

De motoren zijn voorlopig vervangen door een dubbele ledcombinatie  .
Hier kan ik zien of de H brug zijn werk doet . Elke kleur geeft een bepaalde richting aan.


Nu nog verder bestukken en aan de soft beginnen.Uiteindelijk moet dit de besturing van mijn rotor worden en onder commando van een trackingsprogramma werken of manueel indien dit gewenst is.

dinsdag 18 augustus 2020

ADSN [ 10 : xyz positiegever]

Om zekers te zijn van de positie (AZ en EL) ben ik aan het experimenteren geweest met een , door de QRP voorziene, accelerometer bordje van geeetech.
In feite heeft Sparkfun een identiek in hun gamma en ik heb dan ook daar de library van gebruikt.
Ook Adafruit heeft zoiets met hun eigen lib , maar uiteindelijk komt het allemaal op hetzelfde neer , geef mij een xyz positie.

Het type van sensor is een ADXL435

Sparkfun website:

Sparkfun

Hier een foto van de proefopstelling met een arduino uno







Bij de eerste pogingen met een andere lib was het precies of de Zas was gelockt op een vaste waarde . Bij de lib van sparkfun , was de code duidelijker en toen bleek de Zas toch te werken.

Ik heb toen wat " gespeeld" met de sensor .  Alle assen eerst apart uitgeplot en gekeken hoe ge nu eigenlijk moest draaien , rond welk draaipunt eigenlijk , wat dat was mij nog niet geheel duidelijk.
Het is zo , als je de assen als een vector voorstelt , je de vector moet kantelen om de juiste  werking te krijgen .
iets zoals :

CW kantelen



En dan krijg je dit op de arduinoplotter


Gekanteld  rond Xas in CW richting zoals op bovenstaande foto

Gedraaid in Xas in CCW richting

Dit is voor de Yas hetzelfde , maar voor de Zas krijg je dit :







 Zowel CW als CCW hebben dezelfde uitkomst.

Nu heb ik geprobeerd om een opstelling te maken waaruit ik zou kunnen afleiden hoe mijn  AZ ( bv de Yas ) en mij EL ( dan de Xas of de Zas ) zou zijn maar ik kan geen montage vinden die duidelijk op de plotter mijn positie weergaf.

Ik denk dat ik moet overstappen naar een ander systeem zijnde een goniometer ipv een accelerometer.

Het ander printje is gebasserd op een magn kompasrichting en dit ga ik zeker verder niet exploreren want een magn kompaskoers verandert bijna continue
 ( in terms van weken) en vergt dan ook continue kalibratie !


Voor alle duidelijkheid , dit is het NIET





zaterdag 15 augustus 2020

ADSN [ 9 : Winterjas]

Rotor een winterjasje aangedaan ter  bescherming weersinvloeden.


woensdag 12 augustus 2020

De Perseïden

Komen elk jaar terug , net zoals de muggen ....

Met behulp van de Graves radar in F en een sdr stick , antenne en WSJTX als programma zijn hier leuke dingen te doen !



Hier een opstelling :

SDR stick met Gqrx als programma ( kan ook sdr# zijn in Windows )of elk ander programma.

Afstemmen op +- 143049 USB en dan via WSJT de mode JT65 kiezen en de wide graph openen.

U ziet dan een trail van de radar + sweeps en " platte" streepjes die de trail kruisen .
Deze laatste zijn dan volgens ingewijden , de meteoren .
De ander sweeps zijn voorwerpen die het signaal kruisen , deze hebben een kromme streep en dit komt door het doppler effekt.








Nog eentje





In de nacht van 12 op 13 aug heb ik tijdens een sessie van ca 1 uur ( 23 h15 tot 00h15 ) er vier visueel waargenomen , allemaal " vielen" ze in dezelfde richting maar op verschillende hoogte.



Graves radar sequentie info :

http://www.itr-datanet.com/~pe1itr/graves/


Dit was net op het einde toen ISS overvloog . Hoop deze de volgende doorgang nog eens te meten om te kunnen vergelijken.




Nog enkele interessante website ivm meteoren

RMOB

laatste metingen