Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

Kuidas saada täpset etalonpinget

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    Kuidas saada täpset etalonpinget

    Teen siis PIC prosega voltmeetrit. Mõõtepiirkond: 6-~25V
    Täpsus peaks olema vähemalt 0,1V, hea kui saaks 0,02V mis on max resolutsioon 10 bitise ADC korral 20V vahemikuga.
    Probleem on aga selles, et skeemi toide tuleb sama aku pealt mida mõõdetakse.
    Kui võtaksin Etalonpinge tavalise 5V lineaarse regu pealt, siis oleks selle väljund vist suhteliselt kõikuv arvestades toite pinget(25-6V)? või?

    Ja kas etalonpinge saab PIC-il olla madalam analoog sisendist ( max 5V)??

    #2
    Vs: Kuidas saada täpset etalonpinget

    selle saad DC/DC converter abil 12->05, et samast ahelast mõõta. Aga samas 6V ei toida ära, peab 8V vaatama ning enne seda pingeregulaatori või stabilisaatori panema, juhul kui läheb üle 10V
    viimati muutis kasutaja yllsel; 08 m 2009, 16:29.

    Comment


      #3
      Vs: Kuidas saada täpset etalonpinget

      AD konverteri etalonpinge on see pinge, mis Vref jalale antud (kui on softist määratud etalonpinge allikaks Vref, võib ka Vdd olla), ja jah, see saab küll olla väiksem kui 5V, aga suurem ei saa. See pinge jagatakse 1024-ga ja nii saad AD ühe sammu, mida väiksem pinge seda suurem lahutus, kuhugimaale muidugi.

      Comment


        #4
        Vs: Kuidas saada täpset etalonpinget

        Mis täpsusega vaja on?

        Pingeregulaatorist tulev 5V on tihtipeale täpsusega +- 0.1V ehk +-2%, temperatuuri kõikudes võib veelgi vapramalt loksuda.

        Spetsiaalsed pingeetalonid on täpsusega 0.1% ning ka temperatuuristabiilsus on parem.

        Võib piiluda ka füüsiku nimega poodi, viidatud on 4,096V pingeetaloni, mis annab 10-bitise ADC korral ilusasti sammuks 4mV.

        P.S. Toitepinge regulaator võta LDO-tüüpi, mis töötab ka madala sisend- ja väljundpinge vahe korral.
        If you think education is expensive, try ignorance.

        Comment


          #5
          Vs: Kuidas saada täpset etalonpinget

          Esmalt postitatud cyrix poolt
          See pinge jagatakse 1024-ga ja nii saad AD ühe sammu, mida väiksem pinge seda suurem lahutus, kuhugimaale muidugi.
          Saan ma siis õigesti aru, et kui Vref on näiteks 4V, ja kui analoog sisendis olev pinge(mõõdetav ) on suurem kui 4V, siis seda PIC mõõta ei oska?

          Tõesti tavalise lineaarse regu täpsus (2%) on natuke liiga väike. See tähendaks 25 voldi juures juba 0,5V.

          Siis tõesti on ainus võimalus kasutada seda spets etalonpinge junni?

          Comment


            #6
            Vs: Kuidas saada täpset etalonpinget

            Esmalt postitatud surfer poolt
            Saan ma siis õigesti aru, et kui Vref on näiteks 4V, ja kui analoog sisendis olev pinge(mõõdetav ) on suurem kui 4V, siis seda PIC mõõta ei oska?
            Siis tõesti on ainus võimalus kasutada seda spets etalonpinge junni?
            Ikka oskab, siis (4-5 voldini) näitab lihtsalt maksimumi, st 1024, iseasi palju sellest kasu on. Saad panna oma testri näitama ekraanil "skaalast väljas" vms. Seni kuni mõõdetav pinge on alla 5V PIC suitsu välja ei lase.

            Sõltub kui täpselt tahad mõõta, võid ka lihtsalt miski zeneriga selle ette anda. Kunagi kui ühes projektis AD kasutasin, siis PIC sisemise AD näit hüppas 8. biti ulatuses veel mitu ühikut kordusmõõtmiste puhul, moraal: pole mõtet mingit übermegatäpset referentspinget ette anda kui AD näit sõltub peale selle veel muudest faktoritest (sisendpinge muutumise kiirus, AD klokk, sisendi impedants).

            Ahjaa, PIC AD sisend ei taha sisendtakistust üle 10 kOhm. Lahenduseks oleks kasutada opvõimendit millega teha ka täpsem pingejagur ja saada sisendtakistus madalaks (OPA340 on näiteks päris hea).

            Comment


              #7
              Vs: Kuidas saada täpset etalonpinget

              Viimase sammu (0x3FF) jätmine ületäitumise ära detektimiseks on tegelikult päris nutikas!
              Ise kasutan samuti 4,096 V tugipinge allikat. Kui midagi mõõdad, peab mõõtevahend olema ikka täpne! Meenuta kasvõi meetri etaloni...
              Niisama hobivoltmeetriks kõlbab vabalt tugipinge võtta toitest, mis omakorda 7805-ga stabiliseeritud.

              PS. Kas mitte polnud nii, et signaaliallika Rv <= 2k ? Soovituslikult. Ja ära unusta ka mingit aquisition time't tekitada!
              - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
              - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

              Comment


                #8
                Vs: Kuidas saada täpset etalonpinget

                Esmalt postitatud felch poolt
                PS. Kas mitte polnud nii, et signaaliallika Rv <= 2k ? Soovituslikult. Ja ära unusta ka mingit aquisition time't tekitada!
                PICi datasheet annab minu mälu järgi max 10k, aga muidugi, mida madalam, seda parem.

                Kas muidu neist viimasest kahest bitist on kasu ka? Mina ei saanud neid kuidagi paigal püsima, vähemalt kui Vref oli võetud toitest pingejaguriga ja mõõdetavale AD otsale oli tehtud teine pingejagur. Toide oli stabiliseeritud 7905-ga. Sellest ajast pean PIC-i AD-d efektiivselt 8-bitiseks.

                Comment


                  #9
                  Vs: Kuidas saada täpset etalonpinget

                  Praktiselt...ta ongi 8-bitine. Aga kui mõõta n korda, keskmistada visates enne max ja min välja, saab ehk midagi juurde. Eeldame, et tugipinge tuleb täpsest allikast ja silukondesid on piisavalt. Toitest Vref-i võttes ei saa kindlasti üle 8 biti.
                  - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                  - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                  Comment


                    #10
                    Vs: Kuidas saada täpset etalonpinget

                    Eks need prose sees olevad ADC-d on tõesti rohkem mugavusvahendid, aga see ei tähenda, et ei võiks neist parimat välja pigistada.

                    Vähemalt järgmist tuleb kasutada:
                    1. Kui Vref on võetud VCC-st, kasutada LC-filtrit.
                    2. ADC töö ajaks protsessor seisma panna.
                    3. Filtreerimist.
                    3a. teha 16-bitine akumulaator, kuhu liita 64 ADC lugemit (10-bit) ja tulemusest omakorda kasutada ainult ülemist 10-t bitti.
                    3b. felchi soovitatud filter, millest mina kasutan järgmist varianti: 64 ADC lugemit panna massiivi, sorteerida ära, alumised 8 ja ülemised 8 visata minema, tulemuseks võtta allesjäänud 48 lugemi keskmine.
                    4. Tubli ground plane skeemil.
                    5. cyrixi soovitatud opakaga puhver.

                    Muide, etalonpingeallikas ei pea olema Vref-i ühendatud. Selle võib vabalt ühendada ka ühte vabasse ADC sisendisse (tavaliselt on ADC sisendis mux). Niiviisi saab mõõta ühest sisendist mõõdetava pinge VCC suhtes ja teisest sisendist etalonpinge VCC suhtes - edasine on koolimatemaatika.

                    P.S. jama kui palju ja nagunii pead ühe opaka puhvriks panema. Kui ka pärast kõike seda tulemust ei saa, siis on ehk lihtsam kasutada välist ADC-d. Mul näiteks laua peal 24-bit LTC2485-ga kontrollerplaat ja ainult 2 viimast bitti lehvivad tuules.
                    If you think education is expensive, try ignorance.

                    Comment


                      #11
                      Vs: Kuidas saada täpset etalonpinget

                      Soovitav kasutada täpis-etalonpinge mikroskeeme. Otsi Google abil "Precision Voltage Reference".

                      Comment


                        #12
                        Vs: Kuidas saada täpset etalonpinget

                        Kasutada välist muundit, LTC teeb häid kive. Dif sisendiga ja puha, Pici puhul märganud et müriseb ja hyppab see tulemus mõni bitt. LTC2482 oli aga hea , juba bufferdatud sisend, konded maha ja takid sisendile ette, tulemus püsib bitipealt paigal mitte ei tõmble +- 10 yhikut. Referensi saab viia kuni 100mVni, ehk mõõta 100/(2 astmes 16) täpsusega. Lisada miski sisemise referensiga 10 bitti DAC ref otsa tüürima ja saabgi madalalt ka mõõta.
                        Tõenäoliselt jääb su asi sisendis oleva pingejaguri toleransi taha. 0,01% takid maksava soolast hinda.
                        Modelleerimises ja tootmises kehtivad:
                        1. Avariikindel vooluring lühistab kõik teised.
                        2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

                        Comment


                          #13
                          Vs: Kuidas saada täpset etalonpinget

                          Nonii, kasutan siis etalonpingeks eraldi junni. Tükk aega sobrades leidsin SELLE, mis on parajalt täpne(4mV) ja enam-vähem ka taskukohane.

                          Oskab keegi seletada Kuidas Op võimendiga seda puhvrit teha, suht tume maa sellel alal.
                          Selle eesmärk vist ongi ainult väljundtakistuse vähendamine?
                          Ja kas see ei lisa juurde ühte mittelineaarset komponenti, mis tulemuse veelgi ebatäpsemaks teeb? Lisaks(ma arvan) ei ole op võimu väljund kunagi päris null, seega kahaneks mõõdetav vahemik->reso väheneks.
                          Kui ma lisaks lihtsa pinge jaguri, kas siis väljund takistuseks loetakse +poolel või maa poolel olevat takki?

                          Comment


                            #14
                            Vs: Kuidas saada täpset etalonpinget

                            Esmalt postitatud surfer poolt
                            Oskab keegi seletada Kuidas Op võimendiga seda puhvrit teha, suht tume maa sellel alal.
                            Selle eesmärk vist ongi ainult väljundtakistuse vähendamine?
                            Ja kas see ei lisa juurde ühte mittelineaarset komponenti, mis tulemuse veelgi ebatäpsemaks teeb? Lisaks(ma arvan) ei ole op võimu väljund kunagi päris null, seega kahaneks mõõdetav vahemik->reso väheneks.
                            Kui ma lisaks lihtsa pinge jaguri, kas siis väljund takistuseks loetakse +poolel või maa poolel olevat takki?
                            Opvõimendiga puhvri tegemisel pead kõigepealt endalt küsima, millises vahemikus pingeid tahad mõõta. Kui need peavad olema suuremad 5V-st siis pead kasutama opvõimu inverteerivas lülituses, mis võimaldab ühest väiksemaid võimendustegureid ja suuremat sisendpinget.

                            Kui lihtsalt puhvrit teed võimendusega 1, siis sobib ka mitteinverteeriv lülitus.

                            Eesmärk on, jah, väljundtakistuse vähendamine. Opvõim on üks kõige lineaarsemaid lülitusi üldse, esiteks. See on vajalik, teiseks - kuna voltmeetri sisetakistus peab olema kõrge ja AD tahab madalat eelmise astme väljundtakistust. OPA340 on rail-to-rail, st nii sisend kui väljund muutuvad kuni 1mV kaugusele toitepingetest.

                            Pingejaguril on väljundtakistuseks see takisti, kust suunast tuleb pinge muutus. AD sisendis on kondensaator, mis laetakse pingejaguri pingeni ning siis sõltub juba pingest sisendis, kas seda on vaja laadida või tühjendada. Näiteks kui pinge väheneb siis on takistajaks maapoolne takisti, kui tõuseb siis plussipoolne.

                            Comment


                              #15
                              Vs: Kuidas saada täpset etalonpinget

                              Opvõim ei ole mingi lahendus. Miks ? Drift ehk nihkepinge. Instrumentation amp on võtmesõna. Juhul kui sisendpinge on suur, tuleks see kohe alguses maha jagada, see suurendab ka "laksutaluvust".
                              Sisendi kaitseks võib kasutada dioode toitesse ja / või silukondekat (keraamiline või kile), ei tohi kasutada stabilitroni (tekitab mittelineaarsust).
                              Keskmistamine on kahe otsaga asi. Kõik oleneb signaaliallikast. Mul andis üks rakendus andmeid stiilis amplituud pöördenurga kohta ja selle müra oli reeglina 180 kraadi pööratud. Keskmistamine andis idiootsed tulemused. Histogramm lahendas probleemi - sämpeldad hunniku väärtusi ja vaatad, mida kõige rohkem tuli.
                              Muidugi on signaalitöötluseks tublisti algoritme, kuid tihtipeale saab "Ivanovi lihtmeetodil".

                              Comment

                              Working...
                              X