stránky radioamatérské stanice
OK2PPK » Texty » Technika a provoz » Tester aku pro RX ROB | ---
Tester 7.2V NiMH aku v RX pro ROB
Konstrukce vznikla jako řešení drobného problému, kdy mě po delším marném čekání na tester, objednaný původně s rádii, přestalo bavit měřit akecy stále velkým voltmetrem připojeným přes redukci, a v rámci hraní si s jednočipem ATtiny13 (popis obvodu) jsem si vyrobil svůj vlastní měřič. Následující popis není podrobným stavebním návodem a pokud by si někdo chtěl tento tester vyrobit tak předpokládám, že má k tomu dostatečně znalosti a vybavení.
Tester je určen pro orientační měření stavu akumulátorů 7.2V NiMH 280mAh zabudovaných v přijímačích ROB, vybavených společným konektorem DIN5 pro připojení sluchátek a nabíječe. Pracuje jako voltmetr s přibližnou indikací naměřeného napětí pomocí tří LED diod, s možností zvýšit krátkodobě odběr z akumulátoru pomocí zabudovaného zatěžovacího rezistoru.
Modul je celý vestavěný do vidlice pětikolíkového konektoru DIN a na akumulátor v přijímači se připojuje zasunutím do DIN5 konektoru přijímače, určeného pro připojení sluchátek a nabíječe. Tester nepotřebuje žádný vlastní zdroj napájení, napájení je zajištěno přímo z měřeného akumulátoru.
Parametry | |
Určen pro měření: | seriová kombinace akumulátorů 6x NiMH 1.2V cca 280mAh |
Jmenovité provozní napětí: | 7.2V |
Doporučené provozní napětí: | 6.0 - 9.3V |
Provozní napětí se zajištěnou plnou funkčností: | 5.1 - 10.0V |
Minimální napětí: | cca 2.0V (přestává být vidět LED dioda) |
Maximální napětí: | 12V (více nevydrží použitý stabilizátor) |
Odběr při doporučeném provozním napětí: | s jednou blikající LED 2.4 mA |
s jednou trvale svítící LED 3.2 mA | |
52-80mA s připojeným zatěžovacím rezistorem | |
Přídavný zatěžovací odpor: | 120 ohmů 0.5W (přídavný odběr 60mA při 7.2V) |
Kalibrační napětí: | 7.20V |
Rozlišení napětí: | 39.3mV resp. 6.6mV/čl. (A/D převod 8 bitů) |
Naměřené napětí je při převodu na zobrazení pomocí stavu tří LED diod vyhodnocováno s krokem 0.6V a 0.3V a to pouze v oblasti 6.0 - 7.8V (tj. 1.00 - 1.30V/článek), která je nejvíce zajímavá pro posouzení stavu vybití akumulátoru.
Vstupní napětí [V] | Napětí na 1 článek [V] | Stav LED | Stav akumulátoru |
---|---|---|---|
> 7.8 | > 1.30 | svítí zelená | je plně nabitý |
7.2 - 7.8 | 1.20 - 1.30 | bliká zelená | je jen mírně vybitý |
6.9 - 7.2 | 1.15 - 1.20 | svítí žlutá | je částečně vybitý |
6.6 - 6.9 | 1.10 - 1.15 | bliká žlutá | je hodně vybitý |
6.0 - 6.6 | 1.00 - 1.10 | svítí červená | je skoro úplně vybitý |
< 6.0 | < 1.00 | bliká červená | je extrémně vybitý nebo špatný |
Stavy akumulátoru uvedené v tabulce jsou jen orientační, plné posouzení stavu závisí také na teplotě, vybíjecím proudu, stáří akumulátoru, shodnosti všech článků v bloku apod. Pokud svítí nebo bliká červená LED, tak akumulátor bude schopen napájet přijímač jen velmi krátkou dobu nebo vůbec a je potřeba ho nabít (nebo pokud je vadný, tak ho vyměnit za nový). Pokud svítí nebo bliká zelená LED je stav akumulátoru dobrý a není nutné ho nabíjet. Pokud svítí nebo bliká žlutá LED je potřeba zvážit, jak dlouhý provoz přijímače bude potřeba, a to hlavně když blikající žlutá LED signalizuje, že se akumulátor blíží spodnímu rozsahu napětí.
Pokud je akumulátor plně nabitý a v dobrém stavu, tak by po stisknutí tlačítka s přídavným zatěžovacím odporem nemělo dojít k rychlému výraznému poklesu jeho napětí. Pokud napětí rychle výrazně poklesne (např. až pod 6.0V) má akumulátor zvýšený vnitřní odpor - všechny nebo některý článek jsou např. již hodně opotřebované nebo články nemají již stejné parametry a některý se nedostatečně nabijí a jiný přebíjí a bylo by potřeba články zkusit vyrovnat apod.
Po připojení do přijímače modul krátkým bliknutím zelené LED oznámí zahájení měření a následně cyklicky měří vstupní napětí a podle jeho hodnoty upravuje stav jednotlivých LED.
Stisknutím tlačítka lze k akumulátoru připojit přídavnou zátěž 120 ohmů (asi 60mA při 7.2V, tj. asi 1/5 CA) a orientačně tak zkusit, jak velký vliv má vnitřní odpor akumulátoru na jeho napětí.
Schema testeru je uvedeno na konci textu. Tester je celý postavený na bázi jednočipového procesoru ATtiny13-20SU od fy Atmel v osmivývodovém SMD pouzdru.
Napájecí napětí pro CPU je snížené na 5V pomocí předřazeného low drop stabilizátoru MCP1701AT-5002 v pouzdře SOT23 (úbytek asi 0.1V při používaném malém odběru) s maximálním přípustným vstupním napětím 12V. Pro nižší napájecí napětí procesoru (např. 3.3V) jsem neměl vhodný stabilizátor v tak malém pouzdře, který by vydržel vstupní napětí kolem 10V, a také jsem neměl udělanou redukci z 5 na 3.3V pro programátor. Stabilizátor je v obráceném směru přemostěný diodou (v pouzdře 0805), tak aby nedošlo k jeho poškození při programování CPU v obvodu (ISP) po připojení Vcc +5V na výstup stabilizátoru. Napájení je blokované SMD kondenzátory, tak aby skoková změna odběru proudu LED případně příliš neovlivňovala měření. Pro filtraci byly kvůli rozměrům použity tantalové kondenzátory o velikosti A.
Vstup /RST (PB5) CPU je udržován na hodnotě H pomocí odporu 10K, vstup PB1 je přes rezistor M1 spojen se zemí a jeho uvedením do horní napěťové úrovně v době restartu CPU způsobí spuštění kalibračního režimu.
Na indikaci napětí jsou použity tři nízkopříkonové LED 3mm 2mA, napájeny jsou přímo z výstupů CPU a odpory 2K2 je snížen jejich proud zhruba na 1.4 mA.
Měřené napětí je odebíráno ještě před stabilizátorem a je přes dělič z odporů 22K a 2K7 přivedeno na vstup ADC3 (PB3) CPU, signál je filtrován kondenzátorem 1nF. Rezistory je vhodné použít přesnější, např.1%, a se stabilnějšími parametry, ale pomocí kalibrace lze případnou nepřesnost děliče jednoduše softwarově vyřešit.
Jako přídavná zátěž slouží dva paralelně zapojené SMD rezistory 240 ohmů 0.25W o velikosti 1206 spínané malým tlačítkem (určeným pro proud cca 50mA). Použité součástky předpokládají jen krátkodobé měření s plným proudem.
Jako připojovací konektor je použit pětipólový konektor DIN (vidlice). Pro programování CPU v obvodu (ISP) není zřízen žádný konektor, je potřeba dočasně naletovat na plošky dle nákresu krátké vodiče a na ně připojit programátor. Stejně tak pro kalibraci je potřeba naletovat dočasně odpor (nebo propojku) přímo do desky.
Pro přepnutí do kalibrace jsem nepoužíval přímo drátovou propojku, ale odpor cca 3K3. Bylo to z důvodů, že jsem při kalibraci při pokusech měl připojený i programátor a nechtěl jsem riskovat, že si ho omylem zničím.
Celý modul je zhotoven na oboustranném plošném spoji o tloušťce 0.8mm (!) a rozměrech 10x21.5mm a je určen pro zabudování přímo do konektoru, který prodává fy GME pod označením DIN 5P VK. Nelze použít běžný spoj o tloušťce 1.5mm, protože tento nelze zasunout mezi piny konektoru! Plošný spoj byl dělaný v amatérských podmínkách, takže není prokovený, ve 4 bodech se musí propojit spodní a horní strana vodičem skrze desku.
LED diody se musí letovat tak, že prostřední je trochu výše než krajní LED, aby se vešly na šířku do otvoru v konektoru. Tlačítko se musí naletovat šikmo, tak aby trčelo dozadu směrem pod LED a jeho čudlík se musí zkrátit na vhodnou délku. Z konektoru se musí odřezat zadní část plechového dílu určená pro uchycení kabelu, musí se z něho odříznout zadní punčoška určená na ochranu kabelu před zlomením a dále se do něho musí vyříznout vzadu otvor, kam zapadne tlačítko.
SMD provedení CPU mělo asi o 1mm větší vzdálenost obou stran s vývody, než jsem měl připravené plošky na spoji, je nutné tedy vývody CPU napřed vytvarovat tak, aby se na spoj vešly, a bylo je možné nějak přiletovat.
Nejprve se osadí spodní strana s napájecím dílem a přezkouší se, že stabilizátor pracuje správně. Potom se osadí zbytek a na plošky se dle nákresu naletují vývody pro připojení programátoru. Při programování je potřeba vzít v úvahu, že na desce jsou kondenzátory a např. u programátoru PRESTO se musí nastavit patřičně zpoždění při zapnutí a pro vybití (nastavit cca 1s). Do CPU se nahraje firmware a též obsah EEPROM s kalibračními hodnotami. Potom se např. přímo z programátoru připojí napájecí napětí a vyzkouší se, zda obvod pracuje, při 5V by měl bliknout zelenou LED a pak stále blikat červenou (pokud nemůžete napájet obvod přímo z programátoru tak nezbývá, než jej odpojit a přezkoušet na nějakém zdroji). Na závěr je vhodné po odpojení z programátoru připojit obvod na regulovaný zdroj a přezkoušet indikaci při všech klíčových bodech napětí.
Pokud je indikace mírně ujetá, je možné provést kalibraci. Obvod se odpojí od napájení, vývod PB1 se propojí (např. přes odpor 3K3) s napájecím napětím 5V, na zdroji se nastaví přesně 7.20V a napětí 7.20V se připne na obvod. Na 1s se rozsvítí všechny 3 LED jako potvrzení, že režim byl aktivován, potom se zhasnou a čeká se 3s na uklidnění napájecího napětí. Potom si obvod změří vstupní napětí a podle něj upraví parametry uložené v paměti EEPROM. Na závěr na 1s rozsvítí opět všechny LED jako oznámení, že režim byl ukončen, a přejde rovnou do režimu měření.
Po kalibraci doporučuji nezapomenout obvod napřed odpojit od napájení, odstranit z něj propojku přivádějící úroveň H k vývodu PB1 a teprve potom s obvodem dále pracovat, protože dokud je propojka zapojená, tak se po každém restartu spouští rovnou režim kalibrace.
Po provedení kalibrace je vhodné znovu zkontrolovat správnost indikace při jednotlivých napěťových úrovních.
Po kalibraci se z modulu odstraní všechny dočasné vývody použité pro připojení programátoru nebo kalibrační propojky, a modul je potom nejlepší kolem dokola zaizolovat tenkou vrstvou izolační pásky nebo tenké smršťovací bužírky, tak aby nemohlo dojít ke kontaktu s kovovým vnitřním krytem konektoru, a nakonec se zasune do krytu konektoru.
Procesor je ponechán na defaultních hodnotách nastavovacích bitů od výrobce. Používá se vnitřní RC oscilátor na 9.6 MHz s dělením taktu osmi, tj. takt CPU je 1.2MHz. Časovač v intervalu 100ms generuje přerušení, které je použito pro obsluhu LED a pro časování v dalších rutinách.
Po restartu se inicializují jednotlivé periferie a zásobník CPU, spustí se časovač a AD převodník se nastartuje v režimu volného běhu. Potom se otestuje vstup, kterým se spouští kalibrace.
Pokud je vstup ve stavu pro provedení kalibrace, tak se tato provede. Jinak se přejde na vlastní měření. Toto začíná krátkým bliknutím zelenou LED, z EEPROM se do paměti SRAM načtou kalibrační hodnoty a následně se v cyklu měří hodnota napětí na vstupu, průměruje se s předchozím měřením, porovnává se s načtenými kalibračními hodnotami v paměti, a podle výsledku srovnání se upravuje stav LED.
Pokud je spuštěna kalibrace, tak se dlouhým rozsvícením všech LED indikuje zahájení tohoto režimu a potom se 3s čeká. Následně se několikrát změří vstupní napětí, hodnoty se zprůměrují a vypočítají se z nich nové kalibrační hodnoty, které se následně uloží do paměti EEPROM. Na závěr se opět dlouze rozsvítí všechny LED jako indikace ukončení režimu kalibrace a přejde se do režimu měření.
Program je napsán v assembleru pro procesory AVR a kompilován byl pomocí programu AVRASM2 z Atmel Studia. Pro nahrání programu do procesoru byl pak použit programátor Presto od fy Asix. Zdrojový kód a přeložený program i obsah paměti EEPROM jako soubory ve formátu Intel hexa jsou uvedeny na konci textu.
Zde jsou k dispozici základní podklady k testeru. Nákresy plošných spojů a osazovací plánky najdete na obrázcích vložených do textu. Plošné spoje byly exportovány do obrázků při použitém rozlišením 600 DPI.