Frequency counter library

Alles wat niet past in bovenstaande onderwerpen
Berichten: 13
Geregistreerd: 18 Jan 2014, 22:40

Frequency counter library

Berichtdoor RuRu » 02 Feb 2014, 19:01

Ik gebruik de Frequency Counter Library op een Mega ADK ( aangepaste library) en een Nano bordje.

Bij meeting van een precies 1.000.000 Hz signaal krijg ik een uitlezing van 1.000.169 Hz op de Mega en 1.000.029 Hz op de Nano. Dit zal te wijten zijn aan de onnauwkeurigheid van de kristallen ( of resonators) van de Arduino bordjes.

Ik probeer de uitlezing te corrigeren met f_comp ( in het programma) maar daar kan ik schijnbaar alleen de uitgelezen waarde mee verhogen.

Hoe kan ik de uitlezing verminderen naar 1.000.000 ??

Iemand een idee ??

Mvg RuRu

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Frequency counter library

Berichtdoor nicoverduin » 02 Feb 2014, 20:31

Welke code gebruik je? En daarnaast hoe heb je vastgesteld dat de input wel precies 1Mhz is?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 13
Geregistreerd: 18 Jan 2014, 22:40

Re: Frequency counter library

Berichtdoor RuRu » 03 Feb 2014, 19:54

Dag Nico,

Het 1.000.000 Hz signaal komt van een TCXO en is ook gemeten met een goede frekwentiemeter. Het kan hoogstens een paar Hz afwijken maar dat is niet het probleem. De Arduino's moeten kunnen afgesteld worden naar beneden toe en dat lukt niet met de software.

De library is gekend op de Arduino Playground:
http://interface.khm.de/index.php/lab/e ... r-library/

De code is:
[code][/code]
#include <FreqCounter.h>

void setup() {
Serial.begin(57600); // connect to the serial port
Serial.println("Frequency Counter");
}

long int frq;
Void loop() {

FreqCounter::f_comp= 8; // Set compensation to 12
FreqCounter::start(100); // Start counting with gatetime of 100ms
while (FreqCounter::f_ready == 0) // wait until counter ready

frq=FreqCounter::f_freq; // read result
Serial.println(frq); // print result
delay(20);
}


Door f_comp verschillende waarden te geven kan je de uitlezing beïnvloeden maar dat lukt bij mij alleen in de hoogte. Ik wil de uitlezing naar beneden krijgen en dat schijnt niet te lukken.

Mvg,

RuRu

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Frequency counter library

Berichtdoor nicoverduin » 03 Feb 2014, 20:59

Door fComp te verhogen krijg je inderdaad een hogere waarde.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 13
Geregistreerd: 18 Jan 2014, 22:40

Re: Frequency counter library

Berichtdoor RuRu » 04 Feb 2014, 01:49

Negatieve waarden of 0, xxx geven ook een hogere waarde dus hoe kan ik nu die uitlezing naar beneden krijgen ??

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Frequency counter library

Berichtdoor nicoverduin » 04 Feb 2014, 09:24

Ik betwijfel of dat gaat lukken. Ik ken die library verder niet, maar ik heb twijfels of ook wel goed gaat met zo'n hoge frequentie. Dat ding draait maar op 16Mhz dat zou betekenen maximaal 16usec om de gehele verwerking af te ronden. Heb je hem al eens op een lagere frequentie getest?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 13
Geregistreerd: 18 Jan 2014, 22:40

Re: Frequency counter library

Berichtdoor RuRu » 05 Feb 2014, 10:45

Hij draait zelfs tot ongeveer 5 Mhz maar de fout gaat proportioneel mee.

De maker van de library heeft mij een berichtje gestuurd dat f_comp slechts een hulpmiddel is dat niet ideaal is en hij is er zelf ook niet gelukkig mee.

Hij stelt voor de resonator te vervangen door een tcxo maar dat wordt een moeilijke klus.

Mvg RuRu

Terug naar Theekransje

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 34 gasten