Geresnis henriometras

Posted: 2013-09-02 in Darbeliai
Žymos:, , ,

Aš vis nerimstu. Vis noriu pasidaryti kokį nors tikslesnį prietaisėlį. Na, ir su mano elektronikos nežiniomis norėtųsi, kad tas prietaisėlis būtų ir geras, ir paprastas. Paskutiniai tikslai buvo pasigaminti gerą induktyvumo matuoklį ir gerą smulkių kondensatorių talpos matuoklį. Aš jau buvau pasidaręs bandomąjį „henriometrą“ ir netgi Arduino skydelį, bet jis veikė labai jau šiaip sau. Su kai kuriais droseliukais rodydavo nelabai įtikėtinas pievas. O bandymas matuoti kondensatorių talpą RC konstantos pagalba pasirodė iš viso ne kažko vertas, nes visai ne tas talpumo diapazonas, kurio man norisi… o norisi pikofaradų eilės.

Angliškai toks prietaisas, kuris matuoja induktyvumą ir talpą, populiariai vadinamas „LC meter“. Neblogo tikslumo matuoklių projektų yra pilna, kaip priš… Tiesa, dauguma jų su PIC procesoriukais, apie kuriuos nieko nežinau ir žinot nenoriu — man ir mėgėjiškų vargų su AVR per akis. Kiek panaršęs užsiroviau ant kažkokio nekvailo vaikinuko projekto, kuris kaip tik toks ir buvo — LC-metras su AVR procesoriumi. Tiesa, jis ten buvo per daug prigudravojęs visko, net keli valdymo mygtukai ir perjungimas su rele, kur galėt būti paprastas jungiklis…

http://www.kerrywong.com/2010/10/16/avr-lc-meter-with-frequency-measurement/

Beje, šits prietaisėlis dar moka ir dažnį matuoti. Na, jo veikimas pagrįstas dažnio matavimu, tai išvedus papildomą lizdą galima ir patį dažnį iš kokio nors šaltinio matuoti. Man jo nelabai reikia, bet gal kada ir prireiks.

Man labai pasisekė. Komentaruose radau kažkokio kito vaikino projektą, kuris padarė viską kur kas paprasčiau: jungiklis perjungimui iš induktyvumo į talpos matavimo režimą ir kalibravimo mygtukas. Be to, originaliame projekte buvo LM339 komparatorius, t.y. mikroschema su keturiais komparatoriais viduje. O aš turiu krūvelę komparatorių LM393, su dviem komparatoriais viduje. Projekte naudojami tik du komparatoriai. O štai pataisytas projektas irgi naudoja LM393 — man pačiam persibraižyti  nieko nereikės. Tad plokštę ir kodą nusisiurbiau iš šios nuorodos:

https://www.dropbox.com/sh/69pfgsw023e3kd2/F3qQSsgjpH

Trumpai apie viekimo principą. Čia naudojama kažkokia dažnių matavimo ar/ir generavimo biblioteka. Prie to generatoriaus/osciliatoriaus prijungus kokį nors kondensatorių arba droseliuką nustatomas tam tikras dažnis. Taip čia ir padaryta: atviroje grandinėje yra įjungtas arba etaloninis droseliukas, arba etaloninis kondensatorius. Užtrumpinus matavimo kontaktus ir paspaudus kalibravimo mygtuką mikrovaldiklis nustato „nulinę“ reikšmę ir parodo, koks dažnis buvo sugeneruotas. Tada į grandinę įjungus kitą droseliuką arba kondensatorių dažnis pakinta: mikrovaldiklis išmatuoja tą dažnį, palygina su sukalibruota reikšme ir iš skirtumo paskaičiuoja į grandinę įjungtų detalių reikšmes. Labai paprasta ir labai protinga. Be to, tinka labai plačiam droselių diapazono matavimui (nuo nH iki mH) bei smulkių, piko- ir nanofaradų reikšmių kondensatoriams. Man kaip tik to ir reikia.

Atėjo vienas ramus savaitgalis, tiksliau, ramus to savaitgalio gabaliukas, kai likau išdidžioje vienumoje. Tada greitai atsispausdinau plokštės vaizdelį ant eilinio brukalo ir su lygintuvu atspaudžiau ant plokštės. Gavosi visai neprastai (čia vėlgi jau su paterliotu nagų laku):

LC matuoklio plokštė su lazeriniu spausdintuvu užneštu piešiniu | Elektronika | Darau, blė

Man regis, kad jau visai graži plokštė gaunasi. Pradedu šią technologiją įvaldtyti. Žinote, kokia didžiausia klaida, apie kurią daug kas nutyli? Negalima lygintuvu vedžioti per kaitinamą popierių! Ir ant jo būtina užkloti kitą popieriaus, geriausia — laikraščio, sluoksnį. O lygintuvą pakelti ir prispausti, pakelti ir prispausti. Spausti gan stipriai, bet ne visu svoriu. Na ir gaunasi visai neblogas reikalas. Beje, tiek išnaglėjau, kad leidau sau šioje plokštėje netgi susiprojektuoti maitinimą iš… Micro USB lizdo. Šie lizdai, kiek teko rasti parduotuvėse, visi yra paviršinio litavimo stiliaus, t.y. SMD/SMT. Kitaip tariant — smulkūs bestijos. Bet va, plokštėje tą smulkybę atspausti pavyko labai sėkmingai, todėl manau, kad ateity galėsiu ir dar labiau pavaryti ir lituoti smulkesnes detales.

Nušveista plokštė atrodo visai neblogai, nors smulkių trūkumų ir yra:

Išėsdinta ir nuvalyta LC matuoklio plokštė | Elektronika | Darau, blė

Pradėjau gręžioti skylutes. Kažkaip pasimečiau — labai jau didelės gaunasi… Nutariau, kad smulkesniems elementams naudosiu 0,6 mm grąžtelį, o ne įprastą 0,8 mm… pala pala, o kodėl 0,8 mm grąžtelis dar savo futliare? Ogi todėl, kad aš, žioplas, įsidėjau į birbynę 1 mm grąžtelį… ir dar stebiuosi, kad didokos skylės išsibliauna… Na, bet mikroschemoms ir LCD ekranėlio kontaktams bus gerai. Kitoms smulkenybėms tikrai reikės 0,6 mm.

Mano birbynės smulkiausias griebtuvas 0,6 mm grąžtelio neima. Todėl pasinaudojau sena gudrybe, kurią naudodavau ir vaikystėje: apsukau grąžtelį vielute:

Plonas grąžtelis su vielute stambesniam griebtuvui | Elektronika | Darau, blė

Vielutę prie grąžtelio galima ir prilituoti, jei noro yra, tada ji geriau savo vietoje laikosi ir geriau įsistumia į griebtuvą.

Na, pabirbus truputėlį plokštė štai jau ir skylėta:

LC matuoklio plokštė su išgręžiotomis skylutėmis | Elektronika | Darau, blė

Litavimą pradėjau labai teisingai: nuo žemiausio profilio detalių. Krūvelė rezistorių ir vienas kvarcas procesoriui:

LC matuoklio plokštė su įlituotomis žemo profilio detalėmis: rezistoriais ir kvarcu | Elektronika | Darau, blė

Kelių valandų pertraukėlė. Vakaras. Štai viena iš įdomesnių detalių, kuri atrodo kaip mikroschema, tačiau turi tik aštuonias kojas, o viduje yra herkoninė relė. Herkoninės relės taip pavadintos dėl to, kad jose yra herkonai (magnetiniai jungikliai) ir joms reikia labai labai mažos srovės, kad įvyktų perjungimas. Tiesa, jos nelabai galingos, bet apie 150 mA atlaiko, o su 220 V tai visai neblogas reikalas. O šiame prietaise relė naudojama automatiškam kontaktų permetimui, kai prijungiamas koks nors osciliuojantis šaltinis dažniui pamatuoti. Štai ta relė:

Herkoninė relė, panaši į mikroschemą | Elektronika | Darau, blė

Dar truputį pamojavau lituokliu ir štai, plokštėje įlituotas atraminis droseliukas, LM393 komparatorius, relė ir procesoriaus lizdas:

LC matuoklio plokštė su mikroschemomis, lizdais ir herkonine rele | Elektronika | Darau, blė

Vakarui užteks, kitos dienos rytui lieka kiti smagumai: jungtukas, mygtukas, visokie kondensatoriai bei kontaktai skystųjų kristalų ekranėliui:

Beveik baigta LC matuoklio plokštė, su jungtuku ir mygtuku bei LCD ekranėlio kontaktais | Elektronika | Darau, blė

Įlitavau ir du laideliu matavimams iš senojo Arduino skydelio — ano man jau nebereikės… tikiuosi. Plokštė to vaikinuko tai gerai suprojektuota, vienpusė ir su vieninteliu peršokimu ekranėlio kontrasto reguliavimui: plokštėje matyti oranžinis laidelis.

Neturėjau dar tuo metu Micro USB lizdo, tai laikinai priklijavau dalį kontaktinės juostos:

Laikinas maitinimo lizdas LC matuokliui | Elektronika | Darau, blė

Įjungiu. Nieko. Blė. Kodėl nieko?! Na, ką gi, reikia traukti voltmetrą pradžiai. Keli pabaksnojimai — nei procesorius, nei ekranėlis negauna jiems priklausančių penkių voltų… tai kažkas įdomaus. Žiūriu matinimo liniją. O tu rupke rože… prižaidžiau su tuo milimetriniu grąžteliu. Ant maitinimo takelio kaip tik stovi ir 10 kΩ mažas potenciometras ekranėlio kontrasto reguliavimui. Ir vienai jo kojai gręždamas skylutę nupielavau ir maitinimo takelį. Na, nes grąžtelis storas. Truputis įtampos nutekėjo per siaurą kanifolijos takelį… Ką gi, uždrėbiau storai lydmetalio, sujungiau takelį ir vėl įjungiu. Ekranėlis užsižiebė! Valio! Ir netgi rodo, kad induktyvumas (L) yra joks, t.y. nematuojamas:

Kol kas neveikiantis LC matuoklis su skystųjų kristalų ekranėliu | Elektronika | Darau, blė

Bandau matuoti. Tas pats — nieko. Ech, kažkas ant plokštės turbūt negerai visgi. Pasiėmiau stikliuką iš seno nuotraukų ryškinimo didintuvo ir prisidėjęs prie akies nuoširdžiai apžiūrėjau plokštę. Radau vieną lydmetalio lašą, kuris angliškai dažniausiai vadinamas „fucking solder bridge“. Nukrapščiau jį ir vėl pabandžiau pamatuoti induktyvumą. Jau įdomiau: prijungus matuojamą ritę/droseliuką arba užtrumpinus matavimo kontaktus ekranėlyje atsiranda „L: ? uH“. Atseit kažkiek mikrohenrių. Šūds, tai dar ir programoj klaida kokia, ar koks velnias? Peržiūrėjau nuoširdžiai plokštę — nieko. Ką gi, teks aiškintis programos kodą ir išsivedinėti bandomąsias reikšmes į ekranėlį… O kadangi šioje plokštėje nėra nei programavimo, nei serijinės jungties bendravimui su kompiuteriu, tai norint atnaujinti matuoklio firmwarą reikia jį išlupti iš šios plokštės ir jungt prie programatoriaus arba kišti į Arduino plokštę.

Na, pabandžiau. Nieko. Kitą reikšmę, kuri perskaičiuojama, irgi išveda kaip klaustuką. Pabandžiau bakstelėti kitą droselį… ir atėjo nušvitimas. Dar kitą… Ogi pastebėjau, kad raidelės prie klaustuko keičiasi! Šis matuoklis turi automatinį diapazono pritaikymą: jeigu matuojami mažučiai droseliukai, išveda skaičiuką nanohenriais. Jei didesni — mikrohenriais, o jei dar didesni — milihenriais. Pajunginėjęs kelis droseliukus supratau, kad reikalas veikia, nes nH, uH ir mH atitinka tai, ką matuoju! Tik vietoj skaičiaus klaustukas.

Panaršęs kode radau, kad į  LCD ekraną išvedama informacija yra formatuojama su sprintf funkcijos pagalba. Pabandžiau ja išvesti kelis skaičiukus į konsolę per serijinę jungtį. Viskas aišku: ši funkcija su AVR ir slankiojo kablelio skaičiais neveikia, nors veikia puikiai su sveikaisiais skaičiais. Ji gali veikti, bet pagal nutylėjimą kažkodėl išjungta. Tas išjungimas dar priklauso nuo platformos, nuo naudojamos programavimo aplinkos ir dar kelių faktorių. O išjungiama ji dažniausiai dėl to, kad yra ne visada reikalinga ir taupo nemažą gabalą AVR procesoriaus atminties. Na, čia kodo nedaug, gaunamas dvejetainis failas nedidelis — apie 7 kB, tai tos vietos dar per akis. Vadinasi, galima ir pabandyti įsijungti slankiojo kablelio skaičių formatavimą ir tikrai dar tilpsiu.

Eclipse teko pasikapstyti ir susirasti, kur gcc-avr linkeriui nurodyti reikiamus raktus. Radau pagaliau projekto nustatymuose čia:

Eclipse nustatymai sprintf funkcijai teisingai tvarkytis su slankiojo kablelio skaičiais | Elektronika | Darau, blė

„Command line pattern“ laukelyje esančią eilutę:

${COMMAND} -Os -Wl,--gc-sections ${FLAGS} ${ARDUINO_LINK_OPTIONS} ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT} ${INPUTS} -lm

… reikia pakeisti štai tokia:

${COMMAND} -Os -Wl,-u,vfprintf -lprintf_flt,--gc-sections ${FLAGS} ${ARDUINO_LINK_OPTIONS} ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT} ${INPUTS} -lm

Na, sukompiliavau, pabandžiau — į serijinę jungtį skaičiai su kableliais jau eina. Išmetu visus debugus, įkeliu švarų firmwarą į procesorių, procesorių įdedu į plokštę ir žiūriu kas bus. O yra štai kas:

Veikiantis LC matuoklis, matuojantis induktyvumą | Elektronika | Darau, blė

Čia be jokios kalibracijos iš pirmo bandymo taip buvo pamatuotas mano etaloninio 47 µH droseliuko induktyvumas. Sakyčiau, kad visai pusė organo. Su kalibracija reikalas pagerėjo. Tiesa, nežinau kodėl, bet originalioje programoje nurodyta, kad LCD ekranas yra 8×2, t.y. 8 simbolių dviejų eilučių… Ar tokių būna? Gal ir būna. Reikės pataisyti, kad tilptų. Be to, įsidėti gražius užrašus „Induktyvumas“, „Talpa“, „Dažnis“… Ir, aišku, įsigijus prilituoti Micro USB lizdą maitinimui. Apie dėžutę dar irgi reikės pagalvot, bet su dėžutėmis man truputį prasčiau, nemoku jų daryti.

Po poros dienų įsigijau ir Micro USB lizdą bei įlitavau jį į vietą. Tik va, kabelis nesiekia. Patingėjau iš anksto plokštę iki galo apipjaustyti, dabar teko kampą nukirpti. Reikės nukirpti ir per visą ilgį. Užtat štai, naujasis LCF-metras jau maitinamas nuo Micro USB kabelio:

LCF matuoklis maitinamas Micro USB laidu | Elektronika | Darau, blė

Tą smulkų lizdą prisnargliojau nelabai gražiai, bet svarbu, kad elektros duoda. Lizdo „sparnelius“ taip pat prilitavau prie plokštės, kad tvirtai laikytųsi:

Induktyvumo, talpos ir dažnio matuoklis su prilituotu Micro USB lizdu maitinimui | Elektronika | Darau, blė

Tai va, pasinaudojęs kitų atviro kodo projektais ir įdėjęs tik fizinio (ir labai minimaliai protinio)  savo darbo gavau visai neblogą prietaisėlį. Induktyvumą jis matuoja gerai, o talpą — šiaip sau. Talpos matavimą reikės dar išsinagrinėti ir patiuninti, nes dabar rodo arba kažkokias pievas, arba negerų kondensatorių paėmiau. Bet dar neturėjau laiko viską išsibandyti. Be to, dar reikės įsigyti kelis įvairių nominalų droseliukus ir pasižiūrėti, kaip juos matuoja — ar tikrai gerai veikia nH ir mH diapazonuose.

Na va, pasigaminau pirmą nuo kompiuterio ir kitų vėjų nepriklausomą ir visai padorų prietaisą su mikrovaldikliu. Galiu tuo pasidžiaugti.

Reklama
Komentarai
  1. mindogas parašė:

    Ponas esate patinginiaujantis – jei mikrovaldikli reikia daznai isiminetai tai geriau prilituok visas likusias nenaudojamas jo lizdo kojas nes traukiant ir kisant mikroschema gali takelius isklibinti ir taip jie taps gana pazeidziami. Siaip rintas prietaisais. Pats toki darydamas keisciau tik maitinima – tokiam prietaisui pravestu maitinimas nuo baterijos.

    • Darau, Blė parašė:

      Tai negi lituosiu kojas, kurios nieko neveikia 😀 Dėl klibinimo teisybė, bet softą susitvarkiau, tai dabar abejoju, ar kada procesoriuką dar išimsiu. Va dar reikia didesnio tikslumo etaloninio kondensatoriaus, nes su keraminiu visiškai plaukioja.

      Dėl maitinimo jau galvojau. Bet prietaisas visgi daugiau stalinis, USB laidų aplink visada mėtosi, tai taip ir apsisprendžiau. Va ko nesužiūrėjau, tai kad ekraniuko kraštas per toli nuo plokštės krašto. Įmontavus į dėžutę tas Micro USB bus nepasiekiamas, arba reikės didelę skylę padaryti, kad pavyktų prieiti…

  2. mindogas parašė:

    Ir visgi siulau mesti lauk lygintuva is ieskotis laminatoriaus 🙂 Ne tokia ir didelio jo pacio bei perdaymo kaina palyginus su veliau turimais patogumais. Visgi reikalui esant net dvipuses plokstes taip gali bandyti gaminti be jokiu rimtesniu pastangu. Pats kai gaminau laminatoriu tai jam modifikuoti isleidau vos 10 litu termostatui bei termosaugikliui, taigi finasai nenukencia jei ir pati laminatoriu randame pigu (mano tveju jis 10lt).

    • Darau, Blė parašė:

      Mano žmonai ir taip jau mano šlamšto namuose per daug 😀 Aš pats labai norėčiau, nes vienpusės plokštės baigia užknist. Na, bet dar truputį pakentėsiu. O va antros versijos tai aš neprisiversiu daryti, kaip pats sakei, aš esu tinginys. Padariau, veikia, kam dar vargintis…

      • mindogas parašė:

        O tai lygintuvo zmonai negaila? Pamenu kai as pirma savo plokste gaminau su seimyniniu Tefffal’u tai reakcija antrosios puses buvo kariska 😀

Parašykite komentarą

Įveskite savo duomenis žemiau arba prisijunkite per socialinį tinklą:

WordPress.com Logo

Jūs komentuojate naudodamiesi savo WordPress.com paskyra. Atsijungti /  Keisti )

Google photo

Jūs komentuojate naudodamiesi savo Google paskyra. Atsijungti /  Keisti )

Twitter picture

Jūs komentuojate naudodamiesi savo Twitter paskyra. Atsijungti /  Keisti )

Facebook photo

Jūs komentuojate naudodamiesi savo Facebook paskyra. Atsijungti /  Keisti )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.