Arduino, AD-värde som fluktuerar lite grann
Arduino, AD-värde som fluktuerar lite grann
Hejsan!
Jag tog fram en Arduino Uno R3 som jag haft ett tag och började testa lite.
Jag kopplade in en LM35 för att mäta temperaturen.
LM35 har 5 V respektive GND från Arduino-kortet och utgången från den sitter på analog in A0.
Jag kör analogReference(INTERNAL) för att få bättre upplösning.
Matar ut AD-värdet på Serial Monitor för att se värdet och det varierar mellan 218 och 222 men ligger mer frekvent på dem i mitten.
Har provat att mata kortet externt men det ger ungefär samma resultat.
Kan man göra något för att få det stabilare?
(Har provat att koppla in en pot. och det blir ungefär samma variation där)
Jag tog fram en Arduino Uno R3 som jag haft ett tag och började testa lite.
Jag kopplade in en LM35 för att mäta temperaturen.
LM35 har 5 V respektive GND från Arduino-kortet och utgången från den sitter på analog in A0.
Jag kör analogReference(INTERNAL) för att få bättre upplösning.
Matar ut AD-värdet på Serial Monitor för att se värdet och det varierar mellan 218 och 222 men ligger mer frekvent på dem i mitten.
Har provat att mata kortet externt men det ger ungefär samma resultat.
Kan man göra något för att få det stabilare?
(Har provat att koppla in en pot. och det blir ungefär samma variation där)
- Hobbyisten
- Gått bort
- Inlägg: 2531
- Blev medlem: 3 december 2017, 22:55:25
Re: Arduino, AD-värde som fluktuerar lite grann
Är problemet att det digitala värdet fluktuerar ? Det brukar väl vara mellan 0-1023 som utvärde, så det flukturerar inte så mycket. Programmera in algoritmen som ger celsiusgrader.
Re: Arduino, AD-värde som fluktuerar lite grann
Att AD-värdet varierar som det gör medför att den uträknade temperaturen varierar med nästan 0,5 grader och uppdaterar man då det på en display varje sekund så ser det rätt dåligt ut om det varierar så mycket med så kort tidsintervall.
Därför undrade jag om man kan göra något för att få AD-värdet att bli stabilare, någon konding eller dyl (men tyvärr är inte elektronik min starkaste sida).
Därför undrade jag om man kan göra något för att få AD-värdet att bli stabilare, någon konding eller dyl (men tyvärr är inte elektronik min starkaste sida).
Re: Arduino, AD-värde som fluktuerar lite grann
Testa att skapa ett medelvärde med kanske 100 mätserier och se om det blir stabilare.
- farbrorvattenmelon
- Inlägg: 255
- Blev medlem: 29 januari 2009, 21:38:21
Re: Arduino, AD-värde som fluktuerar lite grann
Det finns väl ingen anledning att uppdatera temperaturvärdet varje sekund. Mät typ två gånger i minuten och använd ett rullande medelvärde på typ 10 mätningar så blir det stabil och tillräckligt bra presentation av temperaturen.
Re: Arduino, AD-värde som fluktuerar lite grann
Jag har inte använt Arduino så mycket, men om man vill
att en dator ska kunna reagera på snabba ändringar och
ändå vill ha medelvärde, och signalen passar för det,
så kan man ha flera variabler, en för varje del av medelvärdet,
och sen lägger man ihop dom och delar med antalet.
Då kan man slippa eftersläpningar i vissa fall.
att en dator ska kunna reagera på snabba ändringar och
ändå vill ha medelvärde, och signalen passar för det,
så kan man ha flera variabler, en för varje del av medelvärdet,
och sen lägger man ihop dom och delar med antalet.
Då kan man slippa eftersläpningar i vissa fall.
Re: Arduino, AD-värde som fluktuerar lite grann
Fast jag kör 16 mätvärden och plussar÷rar i 16 så blir det inte speciellt exakt. Jag har försökt att köra med extern ref, intern ref utan att det blir speciellt mycket bättre. Något förslag på filtrering i mjukvaran? Det måste finnas nåt system som funkar med just LM35...(annars så finns det en digital tempgivare)
Re: Arduino, AD-värde som fluktuerar lite grann
+/- 0,5 grader motsvarar ju +/-5 mV, behövs inte mycket störningar utifrån för att generera det.
Re: Arduino, AD-värde som fluktuerar lite grann
Att ett värde från en A/D omvandlare hoppar lite fram och tillbaka är normalt.
Nu så vet jag inte vad processorn kör under tiden som A/D omvandlingen pågår,
men en metod som brukar vara dokumenterad är att lägga processorn i "sleep"
(d.v.s att processorn står helt still) och väckas upp av avbrott från A/D enheten.
Du får nog acceptera att A/D värdet kan hoppa lite i de lägsta bitarna (om du
inte vill/kan ha total kontroll över miljön) och "räkna" med det, så att säga.
Hur snabbt förväntar du dig att temperaturen som du mäter varierar?
Nu så vet jag inte vad processorn kör under tiden som A/D omvandlingen pågår,
men en metod som brukar vara dokumenterad är att lägga processorn i "sleep"
(d.v.s att processorn står helt still) och väckas upp av avbrott från A/D enheten.
Du får nog acceptera att A/D värdet kan hoppa lite i de lägsta bitarna (om du
inte vill/kan ha total kontroll över miljön) och "räkna" med det, så att säga.
Hur snabbt förväntar du dig att temperaturen som du mäter varierar?
- Hobbyisten
- Gått bort
- Inlägg: 2531
- Blev medlem: 3 december 2017, 22:55:25
Re: Arduino, AD-värde som fluktuerar lite grann
Undras hur snabb LM35 är att ändra värde. Är den riktigt snabb så kan ju kroppsvärmen inverka. Jag har labbat med både PTC- och NTC-motstånd och fick uppfattningen att dessa sensorer reagerar långsamt.
Re: Arduino, AD-värde som fluktuerar lite grann
Den är rätt långsam, Tidskonstanten i stillastående luft är väl uppemot 40s
Re: Arduino, AD-värde som fluktuerar lite grann
Hur långa är ledningarna mellan sensorn o Arduinon?
Hur är sensorn avkopplat?
Hur är sensorn avkopplat?