Sida 1 av 2

Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 12:43:02
av olofHart
Hej!

Jag bygger ett batteridrivet tåg som åker och vattnar mina växter på balkongen. Logiken sköts av ett Arduino kort. Vid ena änden av rälsen så fylls vatten på och batteriet laddas upp. Problemet är att jag inte vet hur jag ska detektera om tåget laddas eller ej (jag behöver veta detta för att kunna stanna tåget vid laddplatsen).

En liten del av rälsen är strömförande (laddnings platsen) och kopplad till en bil-batteriladdare, och på tåget finns ett litet 12V bilbatteri.

Jag har noterat att laddaren ger ca 14V spänning vid laddning och när laddaren inte är inkopplad håller batteriet ca 12,5 V. Jag skulle enkelt detektera detta med hjälp av arduinons analoga input (och läsa av spänningen), men jag använder den analoga inputen till att detektera andra grejer och arduinon klarar inte av att detektera två analoga inputs samtidigt.

Däremot skulle jag kunna anvnäda en av arduinons digitala ingångar. Den visar hög vid ca U>3V och låg vid ca U<2V.

Finns det någon smart sätt / komponent som ger följande resultat?

Om spänningen >13 V, kan jag avläsa en signalspännig på mellan 3-5V
Om spänningen <13V, kan jag avläsa en signalspännning på <2V

Tacksam för tips!
/Olof

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 12:51:01
av SeniorLemuren
Vad menar du med att Arduino bara klarar en analog in, vad har du för typ av Arduino? Arduino Uno t.ex har ju 6 analoga ingångar

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 13:02:53
av olofHart
Hej!

Jag kör arduini Pro Mini. Den har typ 8 analoga ingångar. Men grejen är att den bara har en "konverter" (vet inte vad det heter), som mappas till de olika ingångarna. För att man inte ska få konstiga värden så måsta man ha en liten delay mellan avläsningen från de olika ingångarn, så att "konvertern" hänger med. I mitt fall så använder jag en av de analoga ingångarna till att läsa av motorns varvtal och behöver då sjukt snabba avläningar, vilket gör att jag inte kan använda de andra analoga ingångarna samtidigt..

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 13:09:36
av Nerre
Det finns väl en inbyggd analog komparator? Den krockar väl inte med multiplexingen av A/D-ingångarna?

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 13:14:00
av limpan4all
En analog komparator eller OP-amp.
Dvs en OP-amp med ena ingången till en tremotstånds spänningsdelare som stabiliseras av en zennerdiod över de två lägsta motstånden (+ eventuellt en liten keramisk kondensator).
Den andra ingången till en vanlig spänningsdelare.
En OP-amp, fem motstånd och en zennerdiod samt en avkopplingskondensator är allt du behöver.

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 13:19:40
av opatagio
Behöver du läsa motorvarvtalet när batteriet laddas? Annars är det väl bara att justera registren för batteri och motorvarvtal.

Extern komparator med spänningsdelning?

Inte provat Arduino själv så jag kanske är helt ute och cyklar.

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 13:55:03
av sebastiannielsen
opatagio: Då missade du nog att vad TS ville göra var inte att övervaka eller detektera laddningen i sig, utan vad TS ville göra är att se när tåget hamnat rätt på laddningsrälsen innan automatiken stoppar motorerna. (att lösa detta optiskt eller via en brytare skulle inte fungera för då skulle det räcka med lite smuts på laddningsrälsen just på "rätt ställe" så laddar inte tåget.)

Således, när tåget åker för att ladda och fylla på vatten, så vill TS "polla" laddningsdetekteringen hela tiden för att veta att "nu är tåget på laddningsrälsen" och kan stoppa motorerna.

Men en idé är att lägga ett reedrelä/Solidstate-relä parallelt över laddningen med dioder. Visst, du får 0,7 mindre laddningsspänning, men det är ju snällare mot batteriet. Givetvis måste du ha motstånd så att reläet inte bränner sönder om det är så att det inte tål 14v.
Dioderna hindrar batteriet från att bakmata reläet när laddningen inte är aktiv. Givetvis måste dioderna palla hela laddningsspänningen och gärna lite till.

Dvs:

+Räls -> Reläspole -> --->|---- --> Laddningsingång +
-Räls -> Reläspole -> ---|<---- --> Laddningsingång -

Reläkontakten kopplas sedan till VCC (+3.3v eller +5v) sedan via en pulldown till en digital ingång. När tåget står över laddningsrälsen kommer reläspolen att dra och du får en etta "Nu laddar tåget", annars nolla "Nu laddar inte tåget". Ett reedrelä eller solidstaterelä har ett mer tillförlitligt och snällare tillslag så du slipper att fundera på fördröjningar och sådant.

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 14:08:03
av Nerre
Å andra sidan, det måste ju vara enklare att smälla dit en seriediod och istället detektera skillnaden mellan "0 V på rälsen" och "14 V på rälsen"?

D.v.s. en spänningsdelare som "mäter" spänningen från rälsen och skickar in det till en digital ingång, sen en diod i serie så det inte kommer backspänning ut (men sitter det en laddkrets kanske den redan stoppar backspänning från batteriet?).

Reed-relä blir ju lite "overkill" för de kräver ju att det går en laddström. Och varför två dioder och två reed-relän??

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 14:40:01
av olofHart
Tack för alla grymma tips!

En sak som jag glömde siga är att jag i dagsläget provat med en diod som stoppar spänningen från batteriet och så mäter jag om batteriladdare är inkopplad. Problemet med detta är att laddningen inte vill starta. Jag misstänker att batteriladdaren behöver en låg spänning för att "kicka" igång alternativt att batteriladdaren mätning av batterispännigen inte funkar bra och den därför inte startar. Därför har jag nu börjar fundera på att mäta spännigen och inte "störa" kopplingen mellan batteri och laddare.

Alltså detta upplägg har jag provat.

Laddare + --- räls-----mäter------ >| -------- Batteri +
Laddare - --- räls-----mäter------------------ Batteri -

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 14:56:21
av Nerre
Vad är det för laddare? Är det en "intelligent" laddare så kommer den nog att tycka att batteriet är fullt (eftersom den "ser" en spänning som är ungefär 0,7 V över batteriets spänning).

(Tänk på att dioden måste klara max laddström, den kan bli väldigt varm om batteriet är mycket urladdat.)

Du behöver troligen en enklare laddare i såna fall. En enkel väggvårta på 15 V DC som är impedansskyddad (d.v.s. hög ström sänker bara spänningen) skulle nog fungera smidigt.
Typ en sån här http://www.biltema.se/sv/Bil---MC/El/Ba ... 000017815/

Hur detekterar du att batteriet är fullt och tåget kan börja köra igen? Går du bara på tid eller?

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 15:00:27
av danielr112
Bilder!! :D

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 15:09:02
av olofHart
Aha, så är det säkert. Att laddaren tror att batteriet är fullt. Ja, jag har valt en "intelligent" laddare. Anledningen till det är att jag vill att laddaren ska övergå till "underhållsladdning" när batteriet är fullt. Vet inte riktigt vad det innebär man tanken var att jag skulle kunna låta batteriet vara inkopplat i laddaren i princip hela tiden utan problem.

Tanken är att kicka igång tåget en gång varje dygn genom att med en enkelt timer stänga av laddaren och sedan sätta på den. Och detektera detta med arduinon.

Kan batteriet bli överhettet/dålig om man låter det laddas med en "dum" laddare mer eller mindre konstant under en längre tid tror ni? Har valt blyaccumulator eftersom det verkar vara den stabilaste batteritypen

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 15:24:48
av opatagio
Billigaste möjliga A/D med SPI eller I2C och koppla till arduinon. Aktivera interrupt för rx och polla den 10-20ggr/s?

Exempelvis denna för dryga 10:- http://se.farnell.com/microchip/mcp3021 ... dp/1332097 och några motstånd för spänningsdelning och I2C pull-ups samt en avkopplingskondensator.

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 15:40:26
av olofHart
Tack! Det låter ju som en smidigt lösning. :)

Re: Detektera om spänningen är 13 eller 14 Volt

Postat: 1 juli 2015, 16:24:28
av danei
Man kan ju ha ett relä som kopplar in laddaren när den detekteras. Eller en FET om man så föredrar.