Sunday, October 19, 2025

Li-Ion aku kämpingu dušiseadmes

Väga levinud toode ja saime ka kaks aastat tagasi ühe sellise kingituseks.
Paraku töötas seade ainult ühe hooaja. Seisis talvekese ja järgmisel kevadel enam ei toiminud.
Muukisin lahti ja ei osanud muud arvata kui et laadimiselektroonika on untsus.



Pumbaseadme elektroonika oli ülikompaktselt disainitud, kõik mahtus 2,3cm läbimõõduga moodulile, mis ümbritses toitepesa (kuhu käis pulkpistik, mille juhtme teises otsas oli USB pistik) ja kogu töö tegi ära tark laadija-kontrollerkiip AP5056 koos kolme MOSFET-transistoriga 5352A, mis paistsid kontrollivat aku koormamist (oletan, et tegemist on kaitsega kas ülekoormuse või liigtühjenemise eest). Ühesõnaga, LiIon aku oli korralikult hoitud - kõik pinged, voolud ja temperatuurid. Aga miskit sellel moodulil untsus oli ja ei hakanud remontima. Kahtlustasin AP5056 kiipi, korraks tekkis mõte selle asendamisest, kuid järeleuurimisel selgus, et kiibil on ka "kõhu all" joodetav soojuseralduskontakt, mis teeb elemendi eemaldamise ja uue tagasijootmise ülitülikaks. Jätsin remondimõtte katki.

Siis aga keeras saatus uue lehekülje - dušiseadme kinkijad tundsid huvi, et kuidas dušš töötab ja kuulnud, et rikkis, siis kingiti uus samasugune. Ju nad olid hea hinnaga suurema koguse hankinud ja oli riiulist võtta :-)

Ja töötas ka see uus vaid ühe hooaja... 

Mis seal ikka, kruvisin uue lahti ja selgus, et seekord on elu lihtsam - rikki oli läinud nupplüliti. Selle sai aga muretult eelmisest dušiseadmest, mis oli targalt veel ära viskamata, ja tõesti - kõik toimis taas. Aga ainult ühe saunakorra... 

Kruvisin lahti ja selgus, et vesi oli sisse pääsenud - üks kummist rõngastihend oli ununenud tagasi panemata... vesi teeb aga pinge all olevale elektroonikale palju paha ja nüüd tuli kontroller täiesti ühemõtteliselt maha kanda.



Kaks rikkis seadet, millel kõik ülejäänu oli komplektne ja toimiv, ei andnud enam rahu ning otsisin kontrollerimoodulile asendust. Samasugust ei leidnud, aga oli ohtralt pakkumisi  USB-C sisendiga ja TP4056 laadurkiibiga moodulile. Funktsionaalselt ja parameetritelt sama, mis AP5056.

Hulgi oli odavam ja ostsingi Amazonist kohe kümnese komplekti mooduleid, et saaks rahulikult katsetada ja ühe kõrvetasin ka üsna kohe läbi.

Neil moodulitel on koormuskontrolliks eraldi kiip DW01-A koos dual-MOSFET transistoriga 8205A. Ainuke erisus, et aku temperatuuri mõõteahel oli realiseerimata (moodulil elektriliselt välja lülitatud). 

Ühendasin ära, laadis akut nagu kulda, aga pumbamootorit käima ei tõmmanud, ainult väike nõksatus käis läbi. Mooduli koormusvooluks oli märgitud 3A ja võis arvata, et kuna alalisvoolu elektrimootoril on äkiline käivitusvool, siis aktiveerus kaitselülitus. 

Selgus ka, et et ega maksimaalset koormusvoolu triviaalselt suuremaks ei anna reguleerida, sest see on seotud pingelanguga avatud MOSFET transistoridel ja see on nagu ta on (kaks MOSFET transistori paralleelselt 8205A kiibis). Voolu suurendamiseks tuleks MOSFET kanali takistust vähendada, mis tähendaks enamate transistoride paralleelset ühendamist. Ahhaa, sellepärast oligi orginaalmoodulil kolm MOSFET transistori paralleelselt!
Aga saab ka teisiti - takisti voolu piirama. Katsetustel selgus, et 0,47 oomine takisti oli täiesti kohane ning 0,39 ebastabiilne (mootor vahel käivitus, vahel mitte). Ju siis tõde on kusagil vahepeal, aga ei hakanud pindu lõhki ajama, jätsin 0,47 oomise. Iseenesest on saada takistustraati, mille pikkusega mängides saab kätte mistahes kauni takistuse. Tagasilöögiks on see, et märgatav osa aku energiast läheb nüüd pumba töötades takistil raisku. 1A koormusvoolu korral on pingelang 0,47V. Laetud aku u 4V pingest on see 12%. 2A koormusvoolu korral 24%, mis on juba tõsine kadu.

Kleepisin mooduli liimipüstoli abil korpuse siseküljele, monteerisin pumba kokku, unustamata pisikest rõngastihendit ja ... vett tuli täitsa kenasti. M.o.t.t. :-)

Voolavast veest pilt ka lõpuks


Uut infot Stackexchange-st - ühe lihtsa trikiga peaks saama maksimaalset koormusvoolu kahekordistada, tuleb vaid moodulil R6 ühendada mitte kahe jadamisi ühendatud MOSFET transistori järele vaid ainult ühe järele (MOSFET-de vahel). R6 teine ots jääb DW01-A koormusvoolu mõõtesisendisse.

Tuleb järgi proovida...





Friday, February 7, 2025

Philips P89C664 mikrokontroller - 80C51 arendusplaat Liewenthalilt

IT Kolledžile kingiti 2003-l aastal Eesti firma Liewenthal Electronics poolt 10 arendusplaati-51Kit-i 80C51 arhitektuuriga mikrokontrollerite kasutamiseks õppetöös. Üleandjaks oli CEO Jaan Liivand.
Väidetavalt kasutati samu 51Kit-e ka Liewenthalis oma töötajate väljaõppeks ja prototüüpimisel. 
Kolledžis leidsid kit-d aastaid kasutust aines "Riistvaralähedane programmeerimine", mille juures olid tegevad õppejõud Andres Mulin ja Toomas Kont. 







2008-l aastal kolis IT Kolledž Rävala puiesteelt uude õppehoonesse Tehnikaülikooli linnakus. Arendusplaate siis ilmselt enam ei kasutatud, aga kaasa nad tulid ja avastati möödunud aasta (2024) detsembris suure auditooriumi all paiknevast laoruumist suvalises tähistamata pappkastis, plaatide vahel prügikastist pääsenud A4-paberid.
Ja ennäe imet - plaadid näitasid kõik elumärke - ekraanid helendasid, LED-d vilkusid ühe või teise laboritöö pärandina. 
Muidugi tekkis professionaalne huvi, kuna arendusplaadid nägid sedavõrd head välja, et kas on võimalik neid praeguses päevas ka veel kasutada. Kõik on ju kenasti integreeritud - ekraan, heksadetsimaal-klahvistik, LED-d, temperatuurisensor, laiendusklemmid jne. Kolledžis õpitakse tänagi mikrokontrollereid tundma - tõsi, nüüd hoopis Python programmeerimise aines.

Ei võtnud palju aega, et leida veebist, Silicon Labs lehelt, täiesti toimiv ja tasuta Keil-firma kompilaator 80C51 seeria kontrolleritele. Olemas oli ka välkmälu programmeerimisrakendus FlashMagic, mis suhtleb kontrolleriga jadarežiimis selle ROM-i kirjutatud In-System Programming (ISP) rakenduse kaudu.

Siis aga selgus, et ainult 3 plaati 9-st reageeris FlashMagic kutsele - ülejäänud panid lihtsalt "tuima", mis iganes nende peal jooksis. Digiostsilloskoobi abil oli lihtne näha kuidas FlashMagic püüdis kontrolleriga suhelda, saates välja sümbolit "U" (binaarkoodis 0x01010101"), mille vahendusel lepivad osapooled  kokku protokolli kiiruses (vaikimisi 9600 boodi). Lukus mikrokontroller aga ei vasta.
Dokumentatsioon tegi üsna pea pöördumatult selgeks, et ju on viga programmeeritavas käivitusvektoris (Boot Vector), mida saab FlashMagic muuta kuid ainult ISP-režiimis. Kui aga käivitusvektor ei näita enam ISP-d sisaldava ROM mälu aadressile (mis on 0xFC00, käivitusvektoris on kirjas vaid vanem bait), siis ISP ei käivitu ja ongi kogu lugu. Aitab ainult rööprogrammaator. Ju laborites olid tudengid avastanud ka Boot Vector-i programmeerimise võimaluse ja uudishimutsenud....
Üsna pea sai veebi andmetel selgeks ka see, et rööpprogrammaator on midagi eksklusiivset ja kallist, seda kasutati kiipide mass-programmeerimiseks suuremates ettevõtetes. Nüüdseks on 80C51 programmaatorid ammu tootmisest maas ja suurema tuhnimise peale e-Bayst leitud paar potentsiaalselt pakkumist ei äratanud usaldust, dokumentatsiooni ei olnud, hind aga 200€ suurusjärgus.

Aga Liewenthal Electronics toimetab Eesti elektroonikamaastikul ju endiselt! Sai siis "oma agendi", kunagise doktorandi, kes nüüd töötab Liewenthalis, kaudu ääri-veeri uuritud ja tuli rõõmusõnum! 80C51 Kit-de avastamine oli firmas vanematel tegijatel "lambi põlema pannud" ja vana kola hulgast leiti üles nii oma Kit-d kui ka programmaator. Viimane olla tõeline 'vintage'-kast, PC-XT aegse rööpliidesega, pistikplaatidega seatav konkreetse programmeeritava seadme jaoks.
Plaadid Liewenthali ja nädala pärast tagasi. Uues pappkarbis, iga Kit pakitud omaette roosasse mullikilesse. Kõik korras, Boot Vector 0xFC ja kõik reageerisid FashMagic korraldustele. Tänud! Sellist teenust ostaksid hiired edaspidigi! Arendusplaadid olid ikka nii soliidselt tehtud, et mingeid muid elektrilisi probleeme polnud ligi 20 aastat seisnud plaatidel tekkinud.

PS. Enne kui Liewenthali taas avastasin, jõudsin läbi mängida mõtte, et ehk on lihtsam hankida uued protsessorid. Tõepoolest, AliExpress neid ka pakub. Mitte küll Philips kaubamärgi all, aga NXP märgistusega. NXP on Philips-st eraldunud tegija. Üksiku kontrolleri tellimine (pakkumine oli pisut väiksema mäluga variandile - P89C662) maksis koos saatekuludega napilt üle 2€ ja panin tellimuse üles. Ja tuligi paari nädalaga nagu lupsti, mulliümbrikus, üksik kiip ladumismasina lindilt väljalõigatud jupil.



Omaette teema oli olemasoleva kontrolleri PLCC44 pesast kättesaamine. Aitas kirjaklamber, millest sai tekitada mikrokonksu ning ettevaatlikult kiipi diagonaalidest nõksutades üles ta tuli (ähh, kahe € eest saab AliExpressist ka PLCC pesade näpitsad ja nüüd on ka need tööriistasahtlis olemas). Asendasin, lihtne pesasse vajutus ... ja ei midagi -  FlashMagic kiibiga kontakti ei saanud. 
Kahtlustasin juba seda, et ehk on tegemist nö ladumismasina testimiseks mõeldud kiibi imitatsiooniga nn dummy-kiibiga, milles pole räni lõhnagi. Suhtlus AliExpress vahendajaga ei aidanud, see ei jaganud tehnilistest terminitest ööd-ega-mütsi. Aga kui kaardile tuli Liewenthal, läks ka see kiip kaasa. Selgus, et käivitusvektori sisuks oli 0x00. Nende rööpprogrammaator asendas vektori vaevata ja kõik toimis - ISP oli ROM-s täies ilus olemas. Tuleb välja, et aus Hiina kraam. Jälle maailm parem.


Aga mida edasi? 80C51 aeg on ümber. See oli üliedukas arhitektuur ja olid ajad, kus iga ränisuutlik tegija püüdis seda pisikeste oma modifikatsioonidega turule tuua ja kontroller jõudis ka igale poole. Küllap on praegugi hulgaliselt vanemat masinavärki ja automaatikat, mida ajab ringi üks või teine 80C51 kloon. Nüüdsetel 8-bitistel kontrolleritel on kõik parameetrid "üles tuunitud". Kiiremad, parema energiaefektiivsusega, enam taimereid, integreeritud perifeeriamooduleid, palju enam mälu, nobedam ja paindlikum arendamine jne. Ja mida neist 8-bitistest üldse rääkida - alla 16-bitise kontrolleri uutesse seadmetesse ei kavandatagi, tänased lemmiklapsed on kõik 32-bitised ... monstrumid (suutlikkuse ja keerukuse mõttes). 
Ja samas, C-keel on endiselt mikrokontrollerite maailmas au sees ja uus põlvkond peab endselt kõike algusest peale õppima. Sammhaaval, lihtsamalt keerulisemale. Ja selles mõttes on 80C51-s auru veel parasjagu.
Ehk parafraseerides Andrus Kivirähk-i Aabitsakukke - kes ikka väga tahab, sellel on 80C51-st õppida küll ja küll.

K.T.
veebruar 2025

Followers