Altimeter – uporaba AD pretvornika

Torej v svojem projektu altimetra sem se srečal z AD pretvornikom procesorja Attiny26, zelo podobno pa se uporablja tudi ADC-je AtMega in ostalih Attiny.

V samem projektu je uporabljen senzor pritiska (MP3H6115),  ki ima analogni izhod, ki je premosorazmeren pritisku. (VCC:3V izhod:2.8V@115kPa)

Datašit

Pri branju lahko uporabljamo referenčno vrednost, to je vrednost, ki da na izhodu ADC pretvornika maksimalno število (v tem primeru 1023). Za referenčno vrednost lahko uporabimo zunanjo napetost, napetost napajanja ali notranjo 2,5V referenco. Če uporabljamo notranjo napetost, je ta stabilizirana (lahko dodamo še zunanji kondenzator) neodvisna od napajalne napetosti. Napajalna napetost pa se lahko, odvisno od regulatorja nekoliko spreminja, prav tako se lahko spreminja zunanja referenca z napajalno napetostjo, če uporabljamo za določitev preprost napetostni delilnik. Moramo pa paziti na to, da ima ADC konverter neko minimalno in maksimalno vrednost referenčne napetosti in da od tam naprej ne bo deloval.

Vref

To da se referenčna napetost spreminja ni nujno vedno slabo, v mojem primeru naprimer je samo napajalno vezje nekoliko eksotično in je napetost rahlo odvisna od napetosti baterije, izhod iz senzorja pritiska pa je prav tako odvisen od napetosti napajanja. Z priklopom reference na VCC ali zun. napetostni delilnik tako dosežem enako prebano vrednost pri različnih napajanjih. Ker je doseg izhodne napetosti iz senzorja nekoliko nižji od napajalnika, lahko z napetostnim delilnikom (potenciometer) na AREF še povečamo občutljivost vezja.

Zanimiva je tudi uporaba diferencialnih ADC kanalov in kanalov z večjo ločljivostjo (gain = 20). Pri diferencialnih kanalih merimo razliko med dvema kanaloma, torej če na + vhod pripeljemo 2.8V in na – vhod napetost z senzorja  pritiska, nam bo prebrana vrednost rastla z višino.

Pri direktnem priklopu na adc je vrednost (Vvhodna*1023)/Vref, če je torej Vref 3V in Vvhodna 2,8V je maksimalna ločljivost 954 različnih stanj. Tu lahko napišem še da se pritisk za 10% spremeni šele do tisoč metrov, torej je maksimalna natančnost določitve višine okoli 10m. Če Vref zmanjšamo do maksimalne Vvhodne dobimo 1023 različnih stanj. Na zemlji h=0 P=105kPa kaže maksimalno vrednost, z višino pada.

Pri priklopu na diferencialni kanal je prebrana vrednost (Vplus -Vminus)*1023/Vref , oz. v našem primeru (2.8V-Vvhodna)*1023/2.8V. Tako je na zemlji h=0 vrednost najnižja, oz. na morski gladini enaka nič in se z višino veča. Če imamo vklopljeno ojačenje (gain), je vrednost 20x večja, vendar le do 1023.

Če želimo bolj natančno določiti našo višino  lahko z diferencialnim vhodom z ojačenjem (gain) veliko bolj natančno določimo točno vrednost kanala. Tu pa moramo paziti, ker z povečanjem natančnosti x20 izgubimo x20 na dosegu, torej lahko z natančnostjo 0,5m  merimo le razliko 500m nad nastavljeno vrednostjo (-) oz. lahko merimo le napetostne razlike do Vref/20.

Še ena opomba za uporabnike MSC Bascom-a. Bascomov ukaz getadc avtomatsko nastavi Admux.5 = 1 za kanale nad 7, to je pri nekaterih novejših procesorjih prav, pri tiny26 pa dobimo vrednost kanala ravno v obratnem vrstnem redu (byte-a v word-u sta zamenjana). Ukaz po izvedbi tega bita ne izbriše in so torej vse nalednje meritve zamenjane, razen če ta bi ročno postavimo na 0.

Za branje pravilne vrednosti lahko uporabimo naslednje zaporedje ukazov:

W=getadc(18) ‘ preberemo vrednost, npr. kanal 18, vrednost ni prava, zamenjati bi morali byte-a

reset admux.5 ‘ odstranimo ADLAR zastavico, sprememba se takoj odrazi v registru z podatki iz adc

W=adcd ‘ preberemo pravo vrednost

Altimeter – slikice

Tole je par slikic enega projekta na katerem delam. Gre za altimeter za model rakete. Ima jedro Attiny26, ki teče pri 8MHz, precizni analogni tlačni višinski senzor ter dva močnostna izhodna kanala. Poleg tega bo imel še led za signalizacijo stanj ter 6-pinski konektor za nalaganje programa ter komunikacijo preko rs232 protokola. Več o tem v kakšnem naslednjem postu…

Nekaj zanimivih rožic

Hmm, tiste ki vas zanima uspeh LED lučke oz. čakate na poročilo o uporabi, bom moral žal razočarati… Zaradi zapletenega napajanja in ker postavitev notranjega “terarija” oz. inkubatorja za rastline ni kar tako in za to rabiš precej časa, poleg tega pa tudi porabljena elektrika za gretje in lučko ni zastonj, zaenkrat žal še nisem sestavil cele zadeve, da bi jo lahko testiral…

Tako da so letos moja semena postavljena kar lepo ven na sonce, pa bomo videli kako bodo kaj kalila… Zaenkrat je od vseh kar lepo začela kaliti Datura. Priporočam sejanje ven zelo zgodaj spomladi, lahko še zmrzuje. Semena zunaj zelo lepo kalijo, v nasprotju z lanskoletnim poizkusom znotraj, ko je kalilo le malo semen. Upam da bom dobil kar nekaj lepih rastlinic in da bo vsaj kakšna do konca leta zrasla do cvetne velikosti in cvetela 🙂

fotografija0977fotografija0976

Še moji dve Volčji češnji, ki sta se čez zimo popolnoma posušilim potem pa sta spomladi iz korenine izjemno lepo pognali…

fotografija0979fotografija0978

In pa brugmansie, sicer ne popolnoma moje 😛 Eno sem vzgojil jaz iz semena, druge pa so babičine, dobila pa jih je kot podtaknjence od sosede… Ena se že veselo pripravlja na cvetenje. Na sliki je zaprt cvetni nastavek, iz katerega bo nastal cvet. Naše brugmansie imajo v glavnem bele, roza in rumene cvetove…

fotografija0974fotografija0973fotografija0972