Photo-electric Autocollimator Uitleeskast

Ha DDijkman,

Dan staat je colliminator in het midden dus de tijd van L.D.R. belichten is aan beide kanten van de tralie even groot !
Ik moet dit voor je tekenen dan is het in een keer duidelijk zeker weten.

De Op amp als test schakeling was / is dan ook alleen bedoeld om je scope iets gevoeliger te maken en het filter aan de ingang te controleren.

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Hoi Henk,

Ik snap het principe wel, ik had het voor mezelf ook al een keer uitgetekend ;) zie foto.
Maar in de documentatie staat dat de lichtpulsen toch echt op 100Hz moeten zitten. zie foto.

Ha DDijkman,

Dat is correct daarom komt @Aart even niet verder die gebruikt een zuivere 50 Hz sinus maar het gemoduleerde signaal.... de lichtgolf pakketjes bestaan uit twee zijbanden een hoge en een lage zijband die liggen beiden 50 Hz van de draaggolf maar 100 Hz uit elkaar !
ik teken vandaag een en ander kost even tijd maar jou scope beeld en ook uit de arduino kloppen als een bus denk aan Fourier......

PS: Een korte aanvulling alvast,

Het is soms verwarrend om de relatie tussen de optische bundel die wordt afgesneden ( choppen ) en het referentiesignaal dat wordt geproduceerd door de besturingseenheid van de optische chopper te begrijpen.

Een korte uitleg omtrent de details over deze relatie, zodat je beter kan voorspellen wat er in de auto colliminator gebeurt !
Ik ben voor het gemak uitgegaan van een optische chopper in de vorm van een rotor ( die heb ik plenty ) waarbij onderaan een referentie schakelaar zit.
Dit om tekentechnische redenen een vlak plaatje is in perspectief iets lastiger.......
Verder is voor het wolfraam ( tungsten ) lampje van de volgende conditie uitgegaan,

Zo'n lampje is verreweg de simpelste manier om uit een elektrische stroom fotonen te persen maar echt efficiënt is het niet veel warmte :(
Daarbij komt dat ( dit geldt voor een L.E.D. ook ) er nog al van verschillende kanten licht vrij komt.
Op jou vraag of een L.E.D. beter is nee en of een laser gebruikt kan worden ook nee althans niet met de bestaande lenzen.
Wat er dus tijdens jou meting gebeurt is het volgende,

Ik zal volgende week een aantal tekeningen maken wat er dan in de slit gebeurt in samen spel met het draadkruis !

Beschouw de volgende afbeelding van een chopper wieltje.

en de volgende timing

Het toont drie verschillende licht bundels (A, B en C) die worden gechopped door een chopped schijf met 2 gleuven.
Een opto-schakelaar aan de onderkant van het chopped wieltje produceert het referentiesignaal.
In jou uitvoering is dit de 50 Hz afkomstig van de transformator die in de uitlees kast gebruikt wordt om synchroon te demomuleren dit gebeurt d.m.v. een fase gevoelige detector ( lock in versterker )!

Om de fase relatie weer te geven de volgende post i.v.m. de figuren ;)

Everything should be as simple as possible, but not simpler.

Het laatste stukje ik ben voor de helderheid uitgegaan van een wieltje met 5 sleuven !

Vanwege de grootte van de straal en de tijd die de schijf nodig heeft om deze te passeren, verandert de sterkte van het uitgangssignaal niet onmiddellijk van nul naar volledige uitvoer.
Het referentiesignaal wordt geproduceerd door de elektromechanische triller en heeft in jou situatie een sinusgolf.

Zoals duidelijk te zien is, beïnvloedt de positie van de optische bundel die wordt chopped ten opzichte van de chopped schijf direct de faserelatie met het referentiesignaal. Bij inspectie is het gemakkelijk te zien dat voor de schijf met twee sleuven een lichtbeam op positie A in fase zal zijn met de referentie.
Evenzo zal die op positie B 90 ° uit fase zijn en die op positie C zal 180 ° uit fase zijn.
Meer in het algemeen kan het faseverschil tussen het referentiesignaal en de te choppen bundel worden berekend met behulp van de volgende vergelijking:

Beschouw als voorbeeld de schijf met 5 sleuven die hieronder wordt weergegeven met de optische straal op 1 uur:

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Ik heb een nieuwe simulator bedacht; twee leds antiparralel op het 50 Hz signaal welke een LDR die er boven hangt belichten. En dat lijkt in de spreadsheet te werken :)
Het idee was dan van het begin af aan goed, de simulatie niet.

Schema (ik bouwde het op op de plek van de referentie op het breadboard, sorry als het verward. De oude simulator geeft met de pot in het midden de referentie):

Signalen zoals ze binnen komen, en de vermenigvuldiging van beiden na aftrek van de gemiddelden, die overigens niet gelijk waren (500 en 514). Dit was met de lamp boven mijn bureau uit, maar niet echt in het donker.

Dus inderdaad 100 Hz, met grote en kleine halve periodes afhankelijk van welke led sterker gezien wordt.

En dan wat bewegen met de LDR geeft:

Het lijkt in ieder geval gevoelig te zijn. Dit is een leuk experiment :) Het zou ook met de collimator moeten werken.
Nu nog omrommelen naar Arduino code.

@Henk, het bovenstaande verhaal is duidelijk. Bedankt voor de uitleg alvast, wat ik nog niet helemaal snap is hoe dat bij mijn collimator van toepassing is. Ik heb een schetsje gemaakt hoe ik denk dat het bedoeld word met de hoge en lage zijband. Hoe ik hier 100Hz in moet zien weet ik nog niet zo goed.

@Aart, dat is precies hoe het in de documentatie word uitgelegd!
Ik denk dat we hier op de goede weg zitten.

Poh dit project zet me echt weer terug in de schoolbanken haha ;)
Niks ergs aan natuurlijk, altijd blijven doorleren zeg ik altijd.
Ik ben trouwens een visuele leerling dus plaatjes helpen mij het beste :+

[edit] Oh wacht eens even, de ldr ziet dus per cyclus van de 50Hz 2x vol licht. ergo 100Hz?

Ik had nog even het schema van Aart aangesloten zodat de Arduino ook het referentie signaal kan lezen en onderstaand is het resultaat.
Buiten dat de code dus niet juist is zie ik dat het referentie signaal buiten het bereik van de ADC valt?
Kan dit komen doordat ik 1,2Mohm weerstanden heb gebruikt in plaats van 1,8Mohm en dus de spanning niet genoeg naar beneden heb gehaald naar het niveau van het meet kanaal?

Ha DDijkman,

Ik geloof dat een verdere tekening even niet nodig is maar ik werk er wel aan, visueel is misschien duidelijker voor het begrip.
Waar het mij om ging is even duidelijk neer te zetten dat de fase en daarmee de samengestelde harmonische gofvorm als resultaat belangrijk zijn.
Ik maak gebruik van mijn arbitraire functie generator om de golfvorm te creëren, eigenlijk doet @Aart nu het zelfde een samengestelde golfvorm waarvan de fase kan variëren .....
Ik kan nu zonder jou colliminator aan de lock in versterker werken hiervan heb ik gisteren een opzet gemaakt.
Dit type is een fase gevoelige detector hier mee kan je de twee richtingen netjes detecteren.
Dat ontwerpje valt uiteraard wel mee frequentie is laag maar de drift is wel belangrijk je wil niet elke keer kalibreren !
Maar goed ook in de Arduino moet dit mogelijk zijn.

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Volgens mij zit er een foutje in de opbouw, en zitten de gnd van de referentie spanningsdeler en de Arduino + meetschakeling niet aan elkaar. Alles moet dezelfde gnd gebruiken.

Als het referentie signaal dan nog te groot is dan moet het meer verzwakt worden. Dat kan door de weerstands deler voor de condensator aan te passen.
Ik kan de waarden van de 1% weerstanden op de foto niet comfortabel lezen, maar de onderste moet kleiner en/of de bovenste groter.

In geval van problemen is het vaak praktisch een schets te maken van de bedoelde opbouw. Wat voor transformator wordt overigens gebruikt voor de 50Hz voeding?

De Arduino Plotter is een mooie ontdekking, zeg!
Die kende ik nog niet, ik gebruik Arduino veel, maar volg het project zelf nauwelijks. Ze waren jarenlang vooral aan het rotzooien met voor mij oninterressante dure/snelle hardware.

Hallo Henk,
Graag zou ik nog de tekeningen en uitleg willen zien, maakt het inderdaad wat duidelijker. :) Juist, ik had van anderen gehoord dat de uitleeskast niks anders is dan lock-in amplifier? Had er al wat onderzoek naar gedaan, maar is nog niet helemaal duidelijk. Nog even verder leren dus. Ik ben benieuwd wat voor signaal daar dus eindelijk uit komt.

@Aart, je hebt gelijk en heb de opstelling wat veranderd. Ik krijg nu de netjes 2 signalen binnen en kan zien dat het veranderd mbt de verandering in de collimator. De Arduino plotter is volgens mij ook vrij nieuw? vanaf versie 1.6. 6 hebben ze deze toegevoegd. Had het ook nog nooit eerder gebruikt. Ik heb wat foto's van de transformator toegevoegd, het is de transformator die door Hilger & Watts gebruikt werd om de lampjes aan te sturen, leek me mogelijk dat ze dezelfde trafo gebruikte voor de uitleeskast en volgens mij is dat ook zo.

Ha DDijkman,

Is goed dan weet ik dat er geen tijd voor nop insteekt.
Uiteindelijk heeft @Aart misschien toch iets van ruimte tijd gevonden en omdat je het liever in de Arduino stop heeft dat de meeste aandacht lijkt mij des al niet te min is de onderliggende theorie niet verkeert het legt namelijk ook de beperkingen bloot.

Ik heb de colliminator als optisch model in matlab gezet !
Het loopt iets langzamer qua tijd ik zit een klein beetje in de lappenmand met een ontstoken voet dus af en toe even rusten.
Waarschijnlijk in de opslag iets met de voet geprobeerd opzij te schuiven en wat ik nog niet heb laten zien ( ik zal een foto maken ) is een kleine onderwater camera die zou met een kunststof pijpje mooi over de oculair geschoven kunnen worden :D

Trouwens leuke vinding van @Aart om met de twee L.E.D.'s een twee fase generator te maken :)
Dat is een mooie transformator die er bij zit robuust uitgevoerd.
Hoe wordt het apparaat nu gevoed uit die trafo ?

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Hallo Henk,
Ik vind het inderdaad belangrijk dat ik ook echt snap wat er allemaal in de collimator en de uitleeskast gebeurt. Ten eerst kan ik het dan ook aan anderen uitleggen en ten tweede zou ik het weer kunnen maken mocht het ooit een keer kapot gaan. En een kant en klare oplossing vind ik ook niks aan, daar leer ik niks van.

Nog nooit van Matlab gehoord, zal eens kijken wat dat precies is.
Oh bah, hopen dat dat snel over gaat! Ik zat zelf te denken aan CCD camera of wellicht een hoekzoeker voor aan/over het oculair.

Er gaat nu 4.13VAC direct vanuit de trafo naar de vibrator slede en het lampje.
Eerder werd er alleen een lampje met een andere fitting er door gevoed, hier zat echter nog een 3ohm regelweerstand tussen om het lampje wat te kunnen dimmen.

groet, Dennis.

Oke, na een paar avonden hoofdpijn heb ik dit stukje code "geschreven"
Ik reken dus van beide signalen de rms waarde uit en vermenigvuldig deze.
Mijn vraag is of ik zo op de goede weg zit?

c code:


float average_ref = 0;
float average_ldr = 0;
float ref_ldr_multiplied = 0;
const int INPUT_REF_PIN = A0; // referentie pin
const int INPUT_LDR_PIN = A1;     // LDR pin
const unsigned long sampleTime = 500000UL; // sample over 100ms, it is an exact number of cycles for both 50Hz and 60Hz mains
const unsigned long numSamples = 200UL;  // choose the number of samples to divide sampleTime exactly, but low enough for the ADC to keep up
const unsigned long sampleInterval = sampleTime / numSamples; // the sampling interval, must be longer than then ADC conversion time
const int adc_zero_ref = 500;  // relative digital zero of the arudino input from ACS712 (could make this a variable and auto-adjust it)
const int adc_zero_ldr = 500;


void setup()
{
  Serial.begin(115200);
}

void loop()
{

  CurrentSense();
  Serial.print(average_ref);
  Serial.print(",");
  Serial.print(average_ldr);
  Serial.print(",");
  Serial.print(ref_ldr_multiplied);
  Serial.println(" ");
  delay(100);

}

void CurrentSense()
{
  unsigned long currentAcc_REF = 0;
  unsigned long currentAcc_LDR = 0;
  unsigned int count = 0;
  unsigned long prevMicros = micros() - sampleInterval;

  
  while (count < numSamples)
  {
    if (micros() - prevMicros >= sampleInterval)
    {
      int adc_raw_ref_pin = analogRead(INPUT_REF_PIN) - adc_zero_ref;
      currentAcc_REF += (unsigned long)(adc_raw_ref_pin * adc_raw_ref_pin);

      int adc_raw_ldr_pin = analogRead(INPUT_LDR_PIN) - adc_zero_ldr;
      currentAcc_LDR += (unsigned long)(adc_raw_ldr_pin * adc_raw_ldr_pin);

      ++count;
      prevMicros += sampleInterval;
    }
  }

  float rms_ref = sqrt((float)currentAcc_REF / (float)numSamples) * (50 / 1024.0);
  float rms_ldr = sqrt((float)currentAcc_LDR / (float)numSamples) * (100 / 1024.0);

  

  average_ref = rms_ref;
  average_ldr = rms_ldr;
  ref_ldr_multiplied = average_ref * average_ldr;
}

Stel dat het uitgangssignaal van de voorversterker ( kan ook in de Arduino )....... de op-amp-uitgang is:

vB(t)=Bsin(2π fint+ φ) dit signaal wordt vermenigvuldigd met het ingangssignaal Asin(2π fint) wat geeft:

vC(t)=Asin(2π fint) x Bsin(2π fint+φ)= 1/2 ABcos φ - 1/2 ABcos(4π fint+φ)

Hierin is A) de ingang van b.v.b. de ( Op amp ) en tevens het stuur component van de vermenigvuldiger in jou situatie de gemoduleerde L.D.R. stroom ....
Hierin is B) de ingang van de vermenigvuldiger uit de ( Op amp )...
Hierin is C) de uitgang van de vermenigvuldiger naar het laagdoorlaatfilter...

De eerste term is DC, de tweede term heeft echter tweemaal de ingangsfrequentie.
Daarom kan een smal laagdoorlaatfilter de tweede term verwijderen en hebben we: vD(t)= 1/2 ABcos(φ)

Als we aannemen dat de op-amp geen vertraging introduceert, d.w.z. φ = 0, krijgen we vD(t)=1/2 AB.
Zoals je kunt zien, is de output van het laagdoorlaatfilter evenredig met de amplitude van het signaal op knooppunt A en kan het worden gebruikt om de waarde van de sensor ( L.D.R. ) te meten.
De bovenstaande methode heeft drie voordelen:

1-- De frequentie van de sensoruitgang kan voldoende hoger worden gekozen dan de 1 / f hoekfrequentie.

2-- Het filter werkt op de laagst mogelijke frequentie en daardoor is het te dissiperen vermogen het kleinst.

3-- Het filter heeft geen frequentie-afstemcircuit nodig.

Een ideaal laagdoorlaatfilter :)
Misschien heb je hier alvast iets aan dit is in analogie met hoe de licht pakketjes gesampled worden !

PS: dit is de camera

er zitten niet zoveel draden in als de mantel doet geloven de mantel is geschikt voor 20 bar.......

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Ik heb intussen een werkende opstelling met mijn ledjes en ldr;

c code:


// Test van adc voor kleine signalen, twee kanalen + demodulatie
// As 240521

#define INPUT_PIN A1               // De fysieke pinnen
#define INPUT_REF_PIN A0

const int sample_rate = 500;       // Tijd tussen samples in microseconde. 500 us = 2 kHz 
const long number_of_samples = 200; // Aantal samples; let op, een 328 heeft maar 2kB geheugen.. 
                                   // 200 samples met 2 kHz = 0,1s, dus 5 perioden van de 50 Hz. 

void setup() {
  pinMode(INPUT_PIN, INPUT); 
  pinMode(INPUT_REF_PIN, INPUT); 
  analogReference(INTERNAL);        // 1,1 V on the 328
  Serial.begin(115200); 
}

void loop() {
  int adc_input[number_of_samples + 1], adc_input_ref[number_of_samples + 1], i;
  long start_us; 

  // Neem samples: 
  for ( i = 0; i < number_of_samples; i++) {
    start_us = micros(); 
    adc_input[i] = analogRead(INPUT_PIN); 
    adc_input_ref[i] = analogRead(INPUT_REF_PIN); 
    while (micros() < (start_us + sample_rate )) {
      // wacht totdat het tijd is voor het volgende sample. 
    }
  } 

  /* Dump samples naar de terminal
  for ( i = 0; i < number_of_samples; i++) {
    Serial.print(adc_input[i]);
    Serial.print(",");  
    Serial.print(adc_input_ref[i]); 
    Serial.println(" "); 
  } */ 

  // Bereken de gemiddelde waarde van de samples om later de DC offset te verwijderen
  
  long adc_input_sum = 0, adc_input_ref_sum = 0; 
  for (i = 0; i < number_of_samples; i++) {
       adc_input_sum = adc_input_sum + adc_input[i]; 
       adc_input_ref_sum = adc_input_ref_sum + adc_input_ref[i]; 
  }
  int adc_input_average = adc_input_sum / number_of_samples; 
  int adc_input_ref_average = adc_input_ref_sum / number_of_samples; 
    /* For debug 
      Serial.print("input gemiddelde: ");  
      Serial.println(adc_input_average); 
      Serial.print("input ref gemiddelde: ");  
      Serial.println(adc_input_ref_average); 
    */ 
    
   // Trek de Dc offsets af, vermenigvuldig en tel op: 
  long sum_of_products = 0;
  for (i = 0; i < number_of_samples; i++) {
        sum_of_products = sum_of_products + 
          ((adc_input[i] - adc_input_average) * 
          (adc_input_ref[i] - adc_input_ref_average));     
  }
  int output = sum_of_products / number_of_samples; 
  // Serial.print("Uitlezing: ");  
  Serial.println(output); 
 
  Serial.println(" ");
  // delay(100); 
  
}

Enige tussenstap-outputs zijn uit-gecommend. Het kan mooier en vooral compacter, maar ik heb bij het ontwikkelen al deze stapjes nodig om er te komen. Mijn fout waardoor het gisteravond niet lukte was dat ik vergeten was de som-variabelen te initialiseren op 0. Dat maakt niet uit als je er daarna iets instopt, maar wel als je er enkel dingen bij optelt :+

Een beetje heen- en weer bewegen met de led boven de ldr geeft als resultaat:

Hij "schikt" soms even bij een snelle verandering van het omgevingslicht, maar is er verder niet gevoelig voor. Voor een handige (analoge-) uitgang naar een analoge meter zal een offset en schaling nuttig zijn, net zoals in het origineel.

Het ontbreekt mij helaas aan aandacht om nu op de andere posts in te gaan.

Hallo Aart,

Ik heb de sketch even snel uitgeprobeerd, en het lijkt te werken. Echter zit er nogal wat ruis op de lijn en hij onderscheid niet naar welke kant van de 0 ik ga met de collimator. De waarde word altijd minder als ik met de collimator een meting naar boven of naar beneden doe.

@Henk, hier moet ik even een avondje voor gaan zitten want dit is voor mij hogere wiskunde :+ Ik heb de laatste paar avonden weinig tijd gehad dus het is er nog niet van gekomen.

Ha DDijkman,

Een vraag kan je vertellen wat de resolutie is van de micrometer is dit b.v.b. 1 arc = 1 / 3600 graad.
Als je dit weet dan ben ik benieuwd wat dit voor verandering geeft op je Arduino scope of de real world scope in relatie tot de nul.

Ik heb vandaag even rust genomen gaat al weer iets beter maar mijn schoen is nog een maatje te klein :X
Wel gisteren nog de hardware bekeken dat wil zeggen er is een chipje van analog devices maar kost € 32,- misschien te prijzig.

Dus ik heb zelf een multiplier samengesteld met een Op amp en een paar weerstanden om te schalen.
Ik zou een MC1496 kunnen gebruiken maar die is veels te temperatuur gevoelig is een zeer oud ontwerp !
Ik denk morgen nog niet maar overmorgen kan ik wel weer iets doen hoewel ik eerst een ander project zou willen afmaken dat is voor een ander draadje.......

Ik zal tussendoor laten zien hoe zo'n hardware synchrone detector werkt.
Maar ook in de Arduino is het mogelijk ik weet alleen niet goed of het te doen is om de log te nemen en ook de antilog.

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Hallo Henk,

Hoe gaat het met je voet? Heb weer wat foto's toegevoegd waarin je kunt zien wat de scope en de Arduino doen in relatie met elkaar. De metingen van de collimator zijn van de 0 naar +10 boogseconde en van 0 naar -10 boogseconde.
32 euro is nog wel te doen, maar als het goedkoper kan is dat natuurlijk beter. ;)

Ik ben nog steeds met de arduino code bezig maar kom er nog niet echt uit.. heb Aart's code wat opgeschoond maar ik krijg het nog niet voor elkaar om de waardes naar boven of naar beneden te laten gaan zegmaar.
Ik ben ook een trail versie van Matlab aan het proberen, ziet er interessant uit vooral het simulink stukje. Is lekker makkelijk programmeren :+
Alleen dat wil ook nog niet echt lukken haha, frustrerend maar we komen er wel!

[edit] wat je in de serial plotter van de arduino ziet is wat er bij de input pins binnen komt, dus er zijn daar nog geen berekeningen overheen gegaan.

En wat ik dus niet zo goed snap ik hoe je met het bereken van het gemiddelde dus kan zien naar welke kant de collimator meet. Want het gemiddelde zal dan altijd minder zijn aangezien de sinus aan de hoge of lage zijband dan kleiner is en word door het berekenen van het gemiddelde dus altijd kleiner. Of zie ik dit verkeerd?

Mijn voeten zou ik graag buiten dit topic laten ;)

Maar dat zijn nette metingen.

Wat mij als eerste opvalt is dat er weinig 100Hz te zien is. Dit zou kunnen wijzen op een probleem in de collimator. Bijvoorbeeld in dit lichtpad. Een verkeerd lampje met een verkeerde vorm van de gloeidraad of de gloeidraad op de verkeerde plek, reticule beschadigd, alignment van beide reticules, focus van beide, etc. Het signaal lijkt meer op mijn eerste simulatie.

Zelfs een gare LDR of aansluiting lijkt mij niet uitgesloten, maar dat is eenvoudiger te testen. De interferentie blijft naar mijn idee wel hoog, heeft u al ergens anders en/of in het donker getest ?

Wat voor fout het effect geeft dat het signaal na demodulatie bij wegdraaien van 0 altijd omhoog gaat kan ik helaas niet beredeneren.

Allicht is het leuk en zinnig mijn opstelling met de twee ledjes en een losse ldr even na te bouwen, dat geeft een praktisch gevoel voor hoe dit systeem zou moeten werken.

Dat we de bedoelde werking fout hebben geloof ik op het moment niet. Men zou kunnen rommelen met de fase, en die van een van de signalen eens 1/4 periode opschuiven voor demodulatie.. Een voicecoil zoals de vibrator gestuurt met een spanning wordt immers gestuurd met een snelheid, niet met een positie. Op de top van de spannings-sinus beweegt hij dus op maximale snelheid door het mechanische midden.

Voor een analoge demodulator zou ik aan de AD633 denken, die heb ik ooit wel eens gebruikt. Hij is aaibaar en behoorlijk verkrijgbaar voor minder dan E 10,- Maar die weg in te slaan lost imo niet direct iets op.

Haha sorry Aart, die was voor Henk bedoelt. Die had zijn voet ontstoken.

Ik heb even wat dingen geprobeerd, in het donker en gedraaid met het lampje.
Maakt in beide gevallen geen verschil. De interferentie komt denk ik door wat stof en dergelijke in de collimator, dat zie ik ook door de het occulair. Maar dit zou toch niet heel veel verschil moeten maken om te bepalen of het werkt of niet?

Als ik in de collimator kijk naar de soldeerpunten van de vibrator en LDR zien deze er nog goed uit, ook is er niks veranderd aan de allignment van de vibrator en LDR, het spul wat ze over de schroefjes hebben gedaan zit er nog steeds en is niet beschadigd. Als je begrijpt wat ik bedoel.

Heb ook getest of er misschien ergens een kabel breukje zit, en gekeken of de vibrator ook echt vibreert. In beide gevallen lijkt dit ook goed te werken?

Het zou super zonde zijn als blijkt dat het kapot is want ik denk niet dat ik zoiets zou kunnen maken :'( Ik kan de collimator dan nog wel gewoon gebruiken gelukkig maar ik mis dan wel een stukje.

Ik zal proberen de opstelling met de led's te maken, als het goed is heb ik nog ergens een ldr liggen.

Hoe kan ik de ldr in de collimator het beste testen?

Heb wat fotos's van de binnenkant toegevoegd, echter zijn deze niet echt super scherp of in hoge resolutie.

Ik heb helaas ook niet meer verstand van autocollimatoren. Demonteren zou ik inderdaad niet doen, maar mogelijk waren er instel mogelijkheden "van buitenaf".
Het drive level van de vibrator is allicht een parameter die nog verschil kan maken. In het echte schema is dit instelbaar tot een flink hoog level.

Ook heb ik even een fase offset ingevoerd in de code en geprobeerd, deze lijkt bij mij niet veel verschil te mken, maar ik heb niet gekeken naar de golfvormen.

c code:


const int phase_offset = 10;      // 5 perioden in 200 samples maakt 1/4 periode in 10 samples  

sum_of_products = sum_of_products + 
          ((adc_input[(i+phase_offset)%number_of_samples] - adc_input_average) *  
          (adc_input_ref[i] - adc_input_ref_average));     

Ook printte ik een frutsel om wat preciezer met de ledjes en ldr te kunnen spelen.
Hier heeft TS niet zo veel aan, maar het werkt zo goed dat ik nieuwsgierig wordt hoe goed :)

Met de drive level bedoel je de spanning die naar de vibrator gaat? Meer spanning, langere slag?
Heb dat ook geprobeerd maar maakte niet echt verschil als ik het goed herinner.

Autocollimatoren zitten niet zo heel ingewikkeld in elkaar, het belangrijkste is dat de focus lengtes goed zijn afgesteld. Wat ik nog kan checken is of er gerommeld is met de lichtstraal van het lampje naar beneden door wat lenzen heen naar de beamsplitter en uiteindelijk de LDR.

Met een goede flexture en een differentiële schroef kan je in ieder geval heel nauwkeurig verplaatsen. Of de LDR dat kan meten ben ik ook wel nieuwsgierig naar. Leuk!

Ha DDijkman,

Misschien een domme vraag maar je meet toch wel iets :+
Ik bedoel je heb je test opstelling zo ingericht dat je licht terug krijgt.

Misschien is het beter om eerst de mechanische werking te controleren dus colliminator opstellen op een meter of 2 een object en optisch uitlezen door waarneming in het oculair !
Als je geen licht terug ontvangt is er geen interferentie patroon en kan de L.D.R. alleen maar achtergrond ( ruis ) waarnemen.

Het drive level is onbelangrijk en het lampje zo laag als mogelijk belasten elektrische stroom met een factor 2 verminderen is 5 keer de levens duur verlengen......
Over de laatste twee scope plaatjes welke verschuiving heb je ingesteld boog seconden of minuten ?

Ik denk zondag wel weer iets te kunnen posten gaat al weer iets beter :) het voorstel van @Aart om de AD633 te gebruiken is een mogelijkheid niet zo geweldig maar die heb ik hier wel is trouwens op een kant en klaar printje te koop voor € 4,- .
Maar in relatie tot zo'n oude chip maak ik er liever zelf een voordeel je kunt zelf alle posities bepalen.

Groet,
Henk.

Everything should be as simple as possible, but not simpler.

Hallo Henk,

Met deze opstelling krijg ik ook gewoon de kruishaar terug die vanuit de collimator word geschoten. Ook veranderd de meting als ik met de spiegel beweeg, dus de collimator werkt gewoon. Ik heb er ook mijn vlakplaat mee gemeten.
Of is dit niet wat je bedoelt?

Ik heb ook even de "schoorsteen" waar het lampje in zit uit elkaar gehaald en uiterst voorzichtig schoongemaakt. Ziet er goed uit, denk niet dat hier iets mis mee is.

De verschuiving was in boog seconden.

Mooi dat het beter gaat met je voet! Ben benieuwd.

Groet Dennis.

Ha DDijkman,

Dat is duidelijk dan weet je dat het optisch werkt mooi.
Ik meld me weer.

Groet,
Henk.

Everything should be as simple as possible, but not simpler.