0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaPredstavljamoUporaba senzorja nagiba za razvoj vodne tehtnice za slabovidne

    Uporaba senzorja nagiba za razvoj vodne tehtnice za slabovidne

    Ta članek opisuje celotno zasnovo vodne tehtnice za slabovidne. Za merjenje gravitacijske sile v vodoravni in navpični ravnini uporablja merilnik pospeška ADXL312 [1] in se oglasi, ko je merilnik pospeška natančno vodoravno ali navpično.

    Analog Devices, Inc.
    Avtor: Simon Bramble
    2022-305-13

    Uporablja se lahko tudi kot senzor nagiba za izravnavo, na primer, prikolic v avtomobilskih aplikacijah, kjer se lahko vodna tehtnica nahaja na mestu, ki je oddaljeno od krmilnega kolesa. Uporablja se tudi kot pod-vezje v sistemih za stabilnost avtomobilov ali dronih.

    Amar Latif po nastopu na Celebrity MasterChef povzroča razburjenje na britanski kulinarični sceni. Vendar pa Amar ni le dober kuhar, vodi tudi lastno potovalno podjetje, je motivacijski govornik, prehodil je večino Južne Amerike in je tudi televizijska osebnost. Ali ni konca supermoči tega človeka?

    Na žalost obstaja konec super moči Amarja. Amar je 95% slep. Ker tehnologija napreduje in se svet trudi, da bi ji sledil, je bitka za slabovidne še težja. Večina napredka tehnologije zahteva, da več časa preživimo pred zaslonom. Za slabovidne ostaja predolg čas pred zaslonom “če bi le”.

    Če je mogoče s tehnologijo obogatiti življenja ljudi z okvaro vida, je to lahko le dobro. Ker je le 18 % registrirane slepe populacije popolnoma slepih (ali »črnoslepih«), to pušča veliki večini vsaj nekaj vida, tudi če ne morejo razlikovati podrobnosti. Tako se je porodila ideja o vodni tehtnici za slepe.

    Oris razvoja
    Zasnova senzorja nagiba je temeljila na ADXL312, ki je nizkotokovni merilnik pospeška, ki lahko meri do ±1,5 g na oseh x, y in z in to s podatki, ki se odčitajo prek vodila SPI. Senzor je na voljo v 5 mm × 5 mm ohišju in v stanju pripravljenosti porabi 0,1 μA. Meri do 10-bitne ločljivosti, tako da lahko ADXL312 zazna spremembe do ±2,9 mg na vsaki osi. ADXL312 shrani gravitacijske podatke za vsako os kot dvojiško komplementarno vrednost do ±511, ki jih mikrokontroler prebere in prikaže na enovrstičnem 16-mestnem LCD zaslonu. Slika 1 prikazuje zaznavne osi ADXL312.

    Ta komponenta ima celoten odčitek pri 1,5 g, tako da gravitacijska sila 1 g daje odčitavanje 2/3 tega. Torej, če je ADXL312 vvodoravnem položaju, bi moral register osi z odčitati 2/3 celotne skale, medtem ko naj bi na oseh x in y odčitali nič. Podobno, ko je ADXL312 popolnoma navpičen, mora biti odčitavanje osi x 2/3 celotne skale, medtem ko morata osi y in z odčitati nič. Če se ADXL312 začne nagibati stran od katere koli osi, se najvišja vrednost začne zmanjševati, medtem ko se odčitavanje na drugih oseh začne povečevati glede na sinus kota nagiba.

    Znotraj ADXL312
    ADXL312 je mikroelektromehanski sistem (MEMS), sestavljen iz polisilicijeve površinsko obdelane strukture, zgrajene na silicijevi rezini. Polisilicijeve vzmeti obesijo strukturo na površino rezine in zagotavljajo upor proti pospeševalnim silam.

    Fiksni silicijevi prsti se prepletajo s prsti na gibljivi masi tako, da ustvarijo diferencialne kondenzatorje, katerih značilnosti je mogoče izmeriti. Pospešek odkloni maso in neuravnoteži diferencialne kondenzatorje, kar se pozna na izhodu senzorja, katerega amplituda je sorazmerna s pospeškom. Struktura je prikazana na sliki 2.
    ADXL312 je mogoče naslavljati bodisi preko I2C ali SPI, podatki x, y in z pa so shranjeni v šestih notranjih 8-bitnih registrih. Senzor ima tudi številne druge funkcije, vključno s 32-stopenjskim FIFO, dvema večfunkcijskima prekinitvama, offset registri, mehanskim samotestiranjem in načini samodejnega spanja.

    Načrtovanje vodne tehtnice
    Celotna shema vezja senzorja nagiba je prikazana na sliki 3.

    ADXL312 ima najvišjo napajalno napetost 3,6 V, medtem ko LCD zaslon in piskač zahtevata 5 V, tako da vezje napajamo s 5 V, v vezju imamo napetostni regulator navzdol na 3,3 V, 150 mA izveden z linearnim regulatorjem (ADP121) [2], ki napaja ADXL312, mikrokontroler in pomnilnik E2.

    Vrata B, Pin 2 (pin CAL) na mikrokontrolerju so z 10 kΩ uporom vezana na napajalno napetost. Vezje vsebuje tudi mostiček, ki omogoča priklop na ozemljitev. Ob zagonu mikrokontroler preverja stanje CAL priključka in če je ta priključek potegnjen na nizek nivo z jumperjem, prebere registre x, y in z, odšteje te odčitke od nič, nato pa rezultat naloži v notranje registre odmika. ADXL312 in jih shrani v zunanji pomnilnik E2, 25AA040. ADXL312 samodejno doda odčitke iz registrov odmikov k vsaki prihodnji meritvi brez interakcije s procesorjem in tako odstrani umerjene odmike.

    Če je mostiček odstranjen, je CAL potegnjen na visoko in rutina kalibracije se obide. Odčitki odmika se berejo neposredno iz pomnilnika E2 in naložijo v registre odmika ADXL312. Tako lahko med proizvodnjo vodno tehtnico vgradite v kalibrirni vložek s CAL priključkom vezanim na nizek nivo, napravo lahko kalibrirate in vrednosti odmika shranite v pomnilnik E2. Po kalibraciji se jumper odstrani in ob naslednjih vklopih se pomnilnik E2 izprašuje in kalibrirani odčitki odmika se naložijo v registre odmika ADXL312.

    Programska oprema nato izvede osem odčitkov vsake osi, rezultati pa se povprečijo in nato prikažejo na 16-mestnem LCD zaslonu. Zaslon se posodablja vsakih 100 ms.

    Slika 4 kaže, da je največja občutljivost dosežena, ko je vsak senzor blizu svojega ničelnega odčitka. Tu je naklon sinusnega vala najbolj strm, kar omogoča največjo spremembo odčitka gravitacije za kakršno koli spremembo nagiba.

    Na srečo mora vodna tehtnica meriti nagib le, ko je vsak senzor popolnoma vodoravno in je odčitek senzorja blizu nič.

    Programska oprema je bila napisana tako, da omogoča istočasno kalibracijo osi x in z. Del je enostavno treba postaviti na vodoravno ploščad in kalibrirati os x senzorja nagiba. Vendar pa bo na tej točki na os z delovala sila 1 g, zato je treba odčitati z, primerjati s štetjem celotne skale pri 1 g in vsako napako naložiti v register odmika. Natančnejšo kalibracijo vsake osi senzorja nagiba je mogoče doseči s kalibriranjem v vodoravni in navpični ravnini, vendar to zahteva 2-stopenjsko kalibracijo in spremembo programske opreme.

    Tabela 1 prikazuje primer dveh komplementarnih podatkov. Pozitivna števila sledijo običajnemu binarnemu zapisu. Negativna števila uporabljajo najpomembnejši bit (MSB) kot predznak; tako imajo pozitivna števila MSB enak nič, negativna števila pa MSB enak 1.

    Dopolnitev dveh pozitivnih številk je mogoče najti tako, da invertiramo vse bite in nato dodamo 1. Tako se koda spremeni iz 00 0000 0000 v 11 1111 1111, ko preide iz štetja nič na število –1.

    Decimal Binary
    +511 01 1111 1111
    +1 00 0000 0001
    0 00 0000 0000
    -1 11 1111 1111
    -511 10 0000 0001

    Tabela 1: Primer podatkov o komplementu števila dve

    Programska oprema prebere registra x in z in, če je vrednost katerega koli registra 0 ali 1023 (11 1111 1111), postavi vrata B, bit 5 visoko, ki vklopi tranzistor Q1 in vklopi 5 V piskač. Ko je senzor nagiba popolnoma vodoravno, ima os x odčitek 0 ali 1023 in ko je popolnoma navpična, ima os z odčitek 0 ali 1023. Samo če oba registra nista enaka 0 ali 1023, piskač preneha piskati.

    Natančnost in nadaljnji razvoj
    Če upoštevamo samo eno os, je največja vrednost 1 g dosežena, ko gravitacija deluje vzdolž te osi, in ta odčitek se zmanjša na 0 g, ko se del nagne za 90°, kot je prikazano na sliki 5.

    Tako je gravitacijska sila zapisana z enačbo,  formula 1.

    kjer je Ø kot nagiba, merjen glede na horizontalo. Če lahko del meri z ločljivostjo 2,9 mg, potem je lahko resolucija kota 0,17°.

    Težko je določiti točnost standardne tehtnice, saj je natančen položaj mehurčka težko določiti. Vendar pa se iz poskusov lahko konec 1,2 m vodne tehtnice premakne za približno 3,2 mm (širina dveh nesestavljenih TIV-ov!), preden se mehurček izkaže izven središča. To je enako kotu približno 0,15°, kar pomeni, da lahko mehurčasto tehtnico zamenjamo z elektronskim senzorjem nagiba z majhno izgubo ločljivosti.

    Če je potrebna večja natančnost, ADXL313 [3] ponuja 11-bitno ločljivost na lestvici 1 g. Nabor vmesnikov in registrov je zelo podoben tistemu v ADXL312, zato programska oprema ne zahteva veliko spreminjanja. ADXL355 [4] ponuja bistveno nižji šum in višjo ločljivost.

    ADXL312 ima gostoto šuma 340 μg/√Hz in nižja kot je pasovna širina, nižji je šum. Pasovno širino dela je mogoče programirati (od 3,125 Hz do 1600 Hz s privzeto nastavljeno na 50 Hz). Čeprav zmanjšanje pasovne širine izboljša šum, bo to zmanjšalo tudi hitrost posodabljanja zaslona. Za to zasnovo je bila pasovna širina nastavljena na 6,25 Hz, kar pomeni rms šum 850 μg. Šum lahko zmanjšate tudi tako, da naredite veliko več odčitkov in jih povprečite.

    Nadaljnja izboljšava bi bila odčitavanje na LCD-prikazovalniku, ki prikazuje stopinje. Vendar to zahteva uporabo matematičnih funkcij v knjižnici C, če naj bodo sinusi in kosinusi vključeni v programsko opremo. Te funkcije zasedajo preveč programskega prostora za mikrokontroler nižjega cenovnega razreda. Tesen približek sinusni funkciji je mogoče doseči z uporabo Taylorjeve vrste, kar bi moralo zasedati bistveno manj kodnega prostora.

    Zaključek
    ADXL312 ponuja poceni elektronski sistem za merjenje nagiba, ki ga je enostavno povezati z mikrokontrolerjem nižjega cenovnega razreda. Prej opisana zasnova je dokazala, da lahko tekmuje z natančnostjo običajnih vodnih tehtnic, vendar z elektronskim vmesnikom. To omogoča uporabo kot podsistem v večjih sistemih, ki morajo meriti naklon, kot so sistemi za izravnavanje prikolice, sistemi za nadzor stabilnosti in droni. Še pomembneje je, da se lahko uporablja za povečanje neodvisnosti slabovidnih, in to besedilo prikazuje celotno zasnovo na sistemski ravni, vključno s strojno opremo, programsko opremo in stalnim pomnilnikom, pa tudi z avdio in vizualnim izhodom.

    O avtorju
    Simon Bramble je leta 1991 diplomiral na univerzi Brunel v Londonu z diplomo iz elektrotehnike in elektronike, specializiral za analogno in močnostno elektroniko. Svojo kariero je preživel v analogni elektroniki in delal pri Linear Technology (danes del Analog Devices). Dosegljiv je na simon.bramble@analog.com.

    Viri:
    https://www.analog.com/en/products/adxl312.html
    https://www.analog.com/en/products/adp121.html#product-overview
    https://www.analog.com/en/products/adxl313.html
    https://www.analog.com/en/products/adxl355.html

    https://www.analog.com