Frekvensmätning med PIC, räkna eller mäta period?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9127
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av AndersG »

Anta att jag behöver mäta och logga (över RS232) två pulståg. Frekvensen är olika på båda och max ett par hundra Hz. Vilket är vettigast? Räkna pulser under en sekund, eller tex andvända CCP för att räkna klockpulser/4 under en (eller två) perioder? Det senare är ju snabbare, men hur är det med noggrannheten?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av sodjan »

Vad är det du ska mäta ? Frekvens ?
Det beror även på hur ofta du behöver ett mätvärde.
Och hur stabila frekvenserna är över tiden.
Om du mäter en (eller ett par) pulslängder så är risken
att just den pulsen var "onormal". Om du räknar pulser övre en
längre tid så jämnar det ut sig. Det blir inte heller något
problem ifall du har en okänd (eller varierande) duty-cycle.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9127
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av AndersG »

Jo, det är en frekvens, från en läsgaffel, dvs rotationshastighet.
Användarvisningsbild
manw
Inlägg: 207
Blev medlem: 16 november 2005, 11:16:17
Ort: Södermalm

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av manw »

Har gjort detta på en labb för länge sedan, och labben ser ut att finnas kvar fortfarande :-)
http://www.ict.kth.se/courses/IL131V/freq/pk2f62x.htm
Anpassad för kompilatorn CC5X, http://www.bknd.com/cc5x/index.shtml

Labbade lite vidare på detta, med båda varianterna (mäta tid,frekvens) vill jag minnas. Har för mig att labbens setup fungerade från ca 15Hz upp till några kHz med hyfsad noggrannhet.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av sodjan »

Hur stabil är rotationen ?
Och som sagt, hur ofta behöver du *veta* frekvensen ?
Med vilken precision behöver du mäta frekvensen ?
När du vet det, så ger sig i princip resten av sig självt... :-)
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9127
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av AndersG »

Har gjort detta på en labb för länge sedan
Perfekt!
Hur stabil är rotationen ?
Och som sagt, hur ofta behöver du *veta* frekvensen ?
Med vilken precision behöver du mäta frekvensen ?
Jag skulle helst vilja ha 1% noggrannhet. Apparaten är en gammal Sun bakhjulsdynamometer. Ena pulståget är rullarnas hastighet och det andra är proportionellt mot effekten. Anta att man accelererar 0..100 på 6 sekunder tex... Men normalt vid effektmätningar så försöker man hålla effekten någotsånär konstant under ett par sekunder. Hade tänkt logga 1/s ungefär.
Nerre
Inlägg: 27257
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av Nerre »

Handlar det om rotationshastighet skulle jag mäta tiden över så många pulser som behövs för att få en vettig noggrannhet OCH reaktionstid.

Det blir alltså en kompromiss.

Dels när man räknar pulser under en viss tid så får man väl räkna med att felet blir +/- en halv pulslängd?

Och sen får man fundera över hur snabb reaktionstid man behöver, om hastigheten ändras, räcker det med att få veta det efter en sekund eller behöver man veta det direkt?

Jag skulle kunna tänka mig att den allra bästa lösningen är att faktiskt göra båda sakerna, det blir ju lite PID-regualtor över det hela. Snabb respons på förändringar genom att mäta pulstiden och bra noggrannhet genom att räkna pulser över en längre tid.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av v-g »

Jag gillar varianten med tid mellan två pulser dels för att man snabbt får resultat och dels för att den är enkel att koda i mjukvara, tar det för lång tid så lägger man bara på en extra variabel som räknare. Dock är denna metod mindre bra på supersnabba förlopp då koden blir ganska tidkritisk, fast då tror jag man är uppe i nästan MHz.

MEN är det ostabil frekvens så är denna metod i stort sett värdelös om man inte kör många beräkningar efter varandra och medelvärdesbildar och då är det ju enklare att direkt köra med andra metoden dvs räkna pulser.

Har provat som varvräknare och det enda som är svårt är vad man gillar för uppdateringsfrekvens då man kommer se "hoppen" i ökning/minskning varv bli orimligt stora för person X medan för person Y är det helt ok.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Frekvensmätning med PIC, räkna eller mäta period?

Inlägg av vfr »

Det finns en bra metod som fungerar för båda ytterligheterna, både snabb och långsam mätfrekvens. Om man utgår från en mättid på t.ex en sekund. Sedan tar man närmast hela antal perioder över eller under det och mäter tiden noggrannt för det antal hela perioder som passar. Genom lämpliga räkneoperationer får man sedan fram rätt frekvens.

Är det långsam mätfrekvens så blir metoden lik att mäta periodtiden, medan vid snabb mätfrekvens så liknar det att räkna antal perioder på en viss gatetid. Vid mellanfrekvenser så blir det ett mellanting. Alla lägen ger bra mätnoggrannhet. Det finns ett namn på metoden men jag kommer inte på det för ögonblicket...
Skriv svar