02.09.2019

Kintamas skaitmeniniu būdu valdomas rezistorius. Dalaso skaitmeniniai potenciometrai


Skaitmeninis potenciometras yra a kintamasis rezistoriuskurio šepetėlio padėtį programiškai galima nustatyti naudojant mikrovaldiklį. Kartais tai yra labai patogu, nereikia ardyti prietaiso ir susukti žoliapjovės. Paprastai jie naudojami grandinėse, reguliuojančiose garsumą, etaloninę ADC įtampą, stiprinimą, LCD ekrano kontrastą, ekvalaizeriuose ir daugelyje kitų vietų. Skaitmeniniai potenciometrai daugeliu atvejų gana gerai gali pakeisti jų mechaninius atitikmenis. Buvo įgytas norint kankintis mokytis šaunių detalių. Tai bus aptarta.

Pagrindinės prietaiso savybės:

  • Varža - 10 kOhm
  • Atsparumas šepečiams - 52 omai
  • Maitinimo įtampa nuo 2,7 V iki 5,5 V
  • Šepetėlio pozicijų skaičius - 256
  • Temperatūros diapazonas -40 ... + 85 ° C
  • Sąsaja - SPI

Šios charakteristikos pateiktos. Tiesą sakant, mano potenciometro varža buvo 8,7 kOhm. Bet šis skaičius tinka prie duomenų lape pateiktų maksimalių verčių, todėl nėra ko jaudintis. Beje, yra dar du visiškai tie patys potenciometrai, bet kurių varža 50 kOhm ir 100 kOhm. Taip pat yra dvigubi potenciometrai, kurių charakteristikos yra panašios. Šio potenciometro šepetėlio padėtis neprisimenama, o jei to reikia, tai turi būti įgyvendinta programiškai. Įdėjęs galią, šepetys visada pakyla į vidurinę padėtį.

Potenciometro valdymas
  Šis prietaisas valdomas per šiek tiek sutrumpintą SPI. Nėra jokios MISO linijos, kaip nieko negalima perskaityti iš potenciometro, galite tik rašyti. Paprastas darbo su potenciometru algoritmas yra gėdingas:

1) CS nustatykite mažai logikos
  2) Nusiųskite norimą komandą
  3) Siųsti duomenų baitą
  4) Nustatykite CS aukštą logikos lygį

Apsvarstykite komandos baitą išsamiau:


Bitai C1 ir C0 yra skirti vykdomosios instrukcijos parinkimui. Jų yra tik du, neskaičiuojant NOP. Kodėl man reikia tuščios komandos, vis dar nesuprantu iš duomenų lapo.

P1 ir P0 pasirenka potenciometrą, ant kurio bus vykdoma komanda. Nes Kadangi mano potenciometras nėra dvigubas, tada P1 bitas man yra visiškai nenaudingas.

Derinimo valdymo programinė įranga įvyko mano naujojoje. Tai buvo jos pirmasis ugnies krikštas. :-) potenciometrą prijungiau prie valdiklio taip:


Tarp septintojo ir šeštojo potenciometro išėjimų yra prijungtas multimetras, kuris parodo pasipriešinimo pokyčius. Taip pat yra du mygtukai, kurie padaro 4 ir 5 išvadas į žemę (aš pamiršau pamiršti nupiešti schemą). Įsegę programinę-aparatinę įrangą į valdiklį, galite eksperimentuoti (aš tokius filmus filmuoju pirmą kartą, todėl prašau daug nefilmuoti):

Viskas paprasta. Aš myliu montuotoją \u003d) Aš blogai žinau C.
  Iš aukšto lygio programavimo kalbų aš renkuosi „micropascal“.

  • „Serafim“ 2010 m. Spalio 21 d., 18:38

    Gera diena. Nurodykite savo koordinates (el. Paštas).
      Aš atsiųsiu jums gražią knygą (rusų kalba) C, skirtą AVR,
      ir 100% darbinis įdiegti CVAVR. Ir jūs per mėnesį (ar net anksčiau)
      švilpsite C (ir šypsokitės apie praeitį). Ypač su jūsų prašmatniu maketu ...
      Plėtros greitis, daugybė paruoštų bibliotekų - tai yra priežastis palikti „ASMa“. ... Tai skirta AVR, PIC ir kt.

    Ir iš kompiuterio pusės („Widows“) - greitam įgyvendinimui rekomenduoju -DELPHI.

    „KAUCASAS yra motinų verksmas“, skirtas pirmajam 1995–1996 m. Čečėnijos karui.
      (O man asmeniškai CAUCASUS yra brangus armijos metais, praleistais Šiaurės Osetijoje 1981–1985 m.).

  • Pažangos negaili ne tik dviratis. Šiandien tradiciniai kintamieji ir rezistoriai, derinantys tiek daug programų, užleidžia vietą skaitmeniniam atsparumui. Anglų šaltiniuose jie vadinami skaitmeniniu potenciometru, RDAC arba digiPOT. Šių prietaisų taikymo sritis yra daug platesnė nei garso signalo lygio reguliavimas. Visų pirma, jie ateina į gelbėjimą labai daugeliu atvejų, kai reikia pakeisti grįžtamojo ryšio parametrus, o tai sunku įgyvendinti naudojant tradicinius DAC.

    Ypač efektyvus yra jų naudojimas kartu su operaciniais stiprintuvais. Taigi galite įsigyti reguliuojamų stiprintuvo pakopų, įvairių rūšių keitiklių, filtrų, integratorių, įtampos ir srovės šaltinių ir dar daugiau. Žodžiu, šie labai nebrangūs ir kompaktiški prietaisai gali būti naudingi kiekvienam elektronikos kūrėjui ir radijo mėgėjui ...

    Iš pradžių norėjau parašyti trumpą straipsnį, tačiau išsamiai išnagrinėjus temą, medžiaga sunkiai tilpo į dvi dalis. Šiandien pabandysiu kalbėti apie šių įrenginių architektūrą, jų galimybes, naudojimo apribojimus ir plėtros tendencijas. Pabaigoje trumpai paliesiu taikymo sritis, nes antroje dalyje bus nagrinėjami konkretūs jomis paremtų schemų praktinio įgyvendinimo pavyzdžiai. DAUG pavyzdžių!

    Asmeniškai per pastaruosius penkerius metus sėkmingai panaudojau skaitmeninį atsparumą keliuose savo dizainuose, tikiuosi, kad ši straipsnių serija bus naudinga daugeliui ir padės išspręsti daugelį problemų elegantiškiau ir paprasčiau nei šiandien. Žmonėms, kurie yra toli nuo elektronikos, šis straipsnis gali tiesiog praplėsti akiratį parodydamas, kaip net tokie paprasti dalykai, kaip kintamieji rezistoriai, vystosi dėl skaitmeninių technologijų veržimosi.

    P. S. Taigi paaiškėjo, kad pavyzdys jau buvo išleistas ir buvo tik vienas pavyzdys, tačiau jis buvo išsamiai išnagrinėtas. Dėl likusių pažadėtų pavyzdžių turėsite parašyti trečdalį.

    Architektūra.

      Norėdami suprasti, kaip šis įrenginys veikia, mes kreipiamės į funkcinę schemą. Jis vaizduoja analoginę skaitmeninio 8 bitų atsparumo dalį.

    Prietaiso pagrindą sudaro 255 to paties reitingo rezistoriai ir dvikrypčiai elektroniniai jungikliai, pagaminti naudojant CMOS technologiją. 0–255 diapazono skaitmeninė vertė įrašoma į registrą, iš kurio ji tiekiama į dekoderį. Atsižvelgiant į registre saugomą vertę, suaktyvinamas vienas iš klavišų, jungiantis vidutinį išėjimą W prie pasirinkto taško tiesinės varžos matricoje Rs. Ekstremaliems gnybtams A ir B sujungti naudojami dar du klavišai. Jų pagalba prietaisas gali pereiti į neaktyvų režimą.

    Išvados A ir B yra kintamo pasipriešinimo kraštutinių gnybtų analogai, W yra vidurinis gnybtas, prie kurio variklis pritvirtinamas prie įprastų kintamųjų varžų.


    Galimos perjungimo grandinės taip pat panašios į tradicinę kintamąją varžą ...

    Apsvarstykite, kaip reikiamas pasipriešinimas nustatomas 10-omų varžos pavyzdžiu. Pirmiausia mes apskaičiuojame kiekvieno surinkimo rezistoriaus, reikalingo tokiam pasipriešinimui formuoti, vertę Rs \u003d 10000/256 \u003d 39,06 omo. Tarkime, kad mes bandome sureguliuoti pasipriešinimą tarp gnybtų W ir B. Norėdami gauti nulį, parašykite šią vertę į valdymo registrą, bet vietoj norimo nulio gauname 100 omų varžą. Kodėl? Faktas yra tas, kad kiekvienas iš prietaiso kontaktų turi savo vidinį pasipriešinimą, o nagrinėjamu atveju jis yra lygus 50 omų, todėl minimali vertė, kurią galima gauti naudojant šį potenciometrą, yra ne lygi nuliui, bet šimtas omų kontaktų W ir B. atsparumui. vienetų registre gauname 50 + 50 + 39 \u003d 139 omus.

    Paprastai atsparumas tarp W ir B išvadų, priklausomai nuo D registro vertės, gali būti apskaičiuojamas pagal formulę:

    • D - registracijos vertė nuo 0 iki 255
    • Rab - vardinis pasipriešinimas
    • Rw - vieno kontakto varža
    Nesunku atspėti, kad varža tarp gnybtų W ir A apskaičiuojama taip:

    Ryšio sąsajos.

      Dabar apsvarstykite viso įrenginio su I2C sąsaja funkcinę schemą.


    Kai kuriuos klausimus gali sukelti tik AD0 išvestis. Jis skirtas galimybei vienu metu naudoti du potenciometrus viename I2C kanale. Priklausomai nuo to, ar jame yra loginis nulis, ar vienas, I2C magistralės įrenginio adresas keičiasi. Dviejų vienos grandinės mikroschemų prijungimo schema parodyta žemiau.


    Šiems įrenginiams valdyti, be I2C sąsajos, dažnai naudojama ir SPI sąsaja. Tokiu atveju taip pat galima valdyti kelis įrenginius tame pačiame autobuse. Norėdami tai padaryti, jie sujungiami grandine. Pavyzdžiui, kaip šis:


    Šiuo režimu buferinis vertės rašymo registras veikia kaip pamainų registras. Kiekvienas naujas bitas eina į DIN įvestį ir yra įrašomas į mažiausią reikšmingumą bitų skaičiuoklėje su SCLK. Tuo pačiu metu aukšto rango bitai išeina per SDO kaištį ir eina į kitą įrenginį grandinėje. Įrašius informaciją visuose įrenginiuose, gaunamas „SYNC“ impulsų impulsas, pagal kurį naujos grandinės visų prietaisų registrų vertės perrašomos iš buferio į darbinį registrą. Akivaizdus tokio sprendimo trūkumas yra tas, kad nėra galimybės rašyti informacijos į vieną įrenginį. Bet kokiems vertės pokyčiams turi būti atnaujintas visos grandinės registrų turinys.

    Norėdami išspręsti tokio tipo problemas, taip pat išsaugoti galutinę kainą, sprendimai yra naudojami mikroschemomis, apimančiomis du, keturis ir net 6 skaitmeninius varžus tuo pačiu metu.

    Darbinė įtampa ir srovė

      Ko gero, reikšmingiausias pirmųjų įvykių trūkumas buvo ribota įtampa, kuri buvo leidžiama gnybtuose. Jis neturėtų viršyti maitinimo įtampos, kuri galėtų svyruoti nuo 2,7 iki 5,5 V, o svarbiausia, negalėjo patekti į neigiamą sritį, todėl mikroschemose buvo naudojami tik prietaisai, turintys vienpolę galią. Visų pirma, inžinieriai išsprendė bipoliškumo problemą. Taigi atsirado prietaisų, galinčių veikti tiek nuo vienpolės įtampos iki 5,5 volto, tiek palaikyti bipolinės galios režimą iki ± 2,75 V. Tada pradėjo pasirodyti versijos, kurių maksimalus energijos tiekimas yra ± 5,5 ir net ± 16,5 (AD5291 / 5292 - iki 33 voltų vienpolio). Žinoma, šis parametras vis dar labai naudingas tradiciniams pasipriešinimams, tačiau daugumai grandinių pakanka 33 voltų.

    Nepaisant to, nesvarbu, kokią maksimalią įtampą palaiko prietaisas, jei įmanoma peržengti leistinas ribas, reikėtų naudoti bent jau paprasčiausią apsaugą diodais ar slopintuvais.


    Kita rimta problema yra maža maksimali skaitmeninio pasipriešinimo darbinė srovė, kurią visų pirma lemia jų mažas dydis. Ilgainiui nenukenčiant, daugumos modelių vidutinė nuolatinė srovė neturėtų viršyti 3 mA. Jei tekanti srovė yra impulsinė, maksimali jos vertė gali būti didesnė.

    Kova dėl tikslumo. Kontroliuojama chaoso technologija

      Deja, esama gamybos technologija leidžia nukrypti nuo skaitmeninių varžų naudojamų integruotų varžų atsparumo iki 20 procentų nominalios. Tačiau vienos partijos ir dar vieno konkretaus prietaiso pasipriešinimo skirtumas neviršija 0,1%. Siekdamas padidinti montavimo tikslumą, gamintojas pradėjo matuoti rezistorių varžą bent ant kiekvienos plokštės ir į kiekvienos mikroschemos nestabilią atmintį įrašė ne vardinę, o realią varžą, kuri buvo gauta gaminant, 0,01 procento tikslumu. Toks mechanizmas visų pirma leidžia AD5229 / 5235 mikroschemose apskaičiuoti tikrąjį pasipriešinimo nustatymo tikslumą su paklaida, kurios nepasiekiama net daugiapakopiuose tiuningo rezistoriuose - 0,01 proc. Remiantis tuo, skaitmeninio kodo iššifravimas į atsparumą gali būti koreguojamas. Tarkime, kad elementinis pasipriešinimas yra 100 omų. Tada, norėdami nustatyti pasipriešinimą 1K, skaitmeniniame registre nustatote 10. Bet jei realiame įrenginyje varža skiriasi nuo vardinės vertės aukštyn ir yra lygi 110 omų, tada 10 lygyje jūs gaunate 1,1K. Tačiau, įvertinęs tikrąją varžos vertę, mikrovaldiklis gali perskaičiuoti kodą ir realybėje vietoj dešimties suteikti kodą 9. Tada realybėje gauname 9 * 110 \u003d 990 omų.

    Be to, AD yra patentavusi atsparumo kalibravimo technologiją, kurios tikslumas yra 1%. Deja, neradau informacijos, koks yra jos darbo mechanizmas.

    Siekiant padidinti varžos nustatymo diskretiškumą, buvo sukurti prietaisai su 10 bitų dekoderiu, kurie suteikia 1024 reguliavimo žingsnius. Tolesnį šio parametro padidėjimą galima pasiekti naudojant dviejų skirtingų atsparumo skaitmeninių varžų nuoseklųjį arba lygiagretųjį ryšį.

    Temperatūros stabilumas

       Tai visai neblogai. Naudojant plėvele pagamintus rezistorius, galima pasiekti dreifo lygį, neviršijantį 35ppm / ° C (0,0035%). Yra prietaisų su šilumos kompensacija, kurių temperatūros pokytis yra 10ppm / ° C lygio. Pagal šį parametrą skaitmeninis atsparumas yra pranašesnis už daugelį variklio kolegų. Programoms, kurioms šis parametras nėra svarbus, galite pasirinkti pigesnius įtaisus su puslaidininkiniais varžais, kuriuose dreifas yra 600 ppm / ° C.

    Daugelio ADI prietaisų darbinės temperatūros diapazonas yra nuo -40 ° C iki + 125 ° C, o to pakanka daugumai programų.

    Daugybė galimų pasipriešinimų.

      Žinoma, nėra tokios įvairovės kaip tradiciniai slydimo varžai, tačiau yra iš ko rinktis. Žemiau esančioje lentelėje parodyta esamų varžų priklausomybė nuo prietaiso bitų gylio.


    Signalo iškraipymas

      Pagrindinį skaitmeninio stiprintuvo skleidžiamą signalo iškraipymą galima suskirstyti į dvi klases.
    • Harmoninis iškraipymas arba Vakarų stiliaus visiškas harmoninis iškraipymas (THD).


    Šie iškraipymai didėja didėjant įtampai. Idėją apie tipiškas jų vertes galite gauti iš šios lentelės, sudarytos AD9252 lustams ...


    Kai kuriais atvejais šio tipo iškraipymai gali padidėti iki -60 dB

    Šio efekto poveikis padidėja didėjant prietaiso atsparumui. Žemiau esančioje lentelėje parodyta, kokiu dažniu stebimas 3 decibelų signalo silpnėjimas esant skirtingoms skirtingų vardų varžoms.


    Didesniam aiškumui pateiksiu daugiau grafikų apie signalo perdavimo priklausomybę nuo nustatyto pasipriešinimo lygio AD5291 mikroschemoms, kurių skirtingi reitingai yra 20 ir 100 kilo-omų.


    Taigi paaiškėja, kad kuo didesnis pasipriešinimo laipsnis, tuo mažesnis jo veikimo dažnis.

      Evoliucijos „žetonai“

      Gamintojai stengiasi, kad darbas su įrenginiu būtų patogesnis, sugalvoja įvairių malonių dalykų. Dėl to skaitmeninis atsparumas įgavo vidinę nestabilią atmintį, tiek vieną kartą, tiek pakartotinai programuojamą.

    Pagrindinis jo tikslas yra išsaugoti pradinę varžos vertę, kuri automatiškai nustatoma iškart po maitinimo įjungimo. Pirmieji elektroninių rezistorių modeliai buvo sumontuoti, kai energija buvo perduodama į vidurinę padėtį, tada atsirado papildoma koja, leidžianti atstatyti nulį, tada lygį buvo galima nustatyti naudojant atmintyje įrašytą vertę. Pažangiausiuose modeliuose į atmintį galima įrašyti keletą iš anksto nustatytų verčių, kurias vartotojas gali greitai perjungti paspausdamas mygtukus.


    Be to, pasirodė sąsaja, skirta koduoti šifrus.


    Ką dar patobulinti?

       Galite įsivaizduoti, kokia kryptimi vystysis skaitmeninio atsparumo gamyba.
       Norint pasiekti didesnį tikslumą, perjungimo sistema gali pasikeisti.

    Pavyzdžiui, pridedant prie tradicinės grandinės tik vieną varžą lygiagrečiai, gerai, dvi. Dar vienas dalykas viršutiniame peties simetrijoje - pasipriešinimo nustatymo tikslumą galite padvigubinti! Dviejų įtaisų derinimas viename korpuse leis kelis kartus padidinti tikslumą ir tikslumą.

    Įvedimas į paprasčiausią dekoderį valdantį mikrovaldiklį leis, remiantis tikra gautų varžų verte, sukurti perjungimo programą, kuri nustatytų prietaiso pasipriešinimą labai dideliu tikslumu - 0,1% ir aukštesniu. Į tokius prietaisus integruojant temperatūros jutiklį, galima išlaikyti kompensaciją, kad būtų išlaikytas tiesiškumas labai plačiame temperatūrų diapazone. Galbūt atrodytų HiFi įrangos dažnio kompensuotos varžos analogai, o tai bus keli pasipriešinimai vienu atveju. Vienas iš jų bus naudojamas garsumo lygiui reguliuoti, o kitas - dažnio kompensavimui.

    Naudojimo sritys

      Kitoje straipsnio dalyje pateiksiu konkrečius grandinės sprendimus, pagrįstus skaitmenine varža, nes dabar mes tik svarstome taikymo sritis.

    Žinoma, pirmiausia į galvą ateina stiprintuvai su reguliuojamu stiprinimu.


    Padidėjus reikšmių nustatymo tikslumui, tapo įmanoma naudoti valdymo grandinėse naudojamą elektroninę varžą instrumentinių stiprintuvų padidinimo lygiui.


    Automatinis arba programinės įrangos skystųjų kristalų ekrano kontrasto pakeitimas gali būti organizuojamas naudojant elektroninę varžą 10 kilo-omų.


    Remiantis skaitmeniniu atsparumu, lengva įdiegti valdomus filtrus. Aukštos eilės filtrams dažnai reikalingi keli pagrindiniai to paties reitingo rezistoriai. Tai labai patogu įgyvendinti naudojant instrumentus, turinčius keletą varžų viename korpuse, nes tokiu atveju mes gauname puikų pakartojamumą. Paveikslėlyje parodyta supaprastinta paprasčiausio valdomo žemųjų dažnių filtro schema.


    Logaritminis stiprintuvas, turintis gana didelę maitinimo įtampą, pagrįstas AD5292.


    Programinės įrangos valdomas įtampos reguliatorius.


    ADI sudėtis

      Pabaigoje pateiksiu išsamų šiandien galimų elektroninių potenciometrų, pateikiamų Analoginiuose įrenginiuose, sąrašą. Reikėtų pažymėti, kad ne tik ši įmonė gamina tokius prietaisus. Pavyzdžiui, MAXIM taip pat ilgą laiką gamina gerus lustus.

    Pradedantiesiems - įrenginiai, nepalaikantys vartotojo programavimo.


    Pabaigoje - programuojami įrenginiai. Renkantis konkretų modelį, verta atkreipti dėmesį į tai, ar jie abu yra kadaise programuojami, ir palaiko perprogramavimą. Be to, daugybė ciklų suteikia tik mikroschemas su atmintimi, pagamintą naudojant EEPROM technologiją.


    Tai baigia apžvalgą. Kitas straipsnis bus skirtas praktinėms grandinėms, naudojančioms skaitmeninę varžą, apsvarstyti.

    P.S. Taip atsitiko, kad jau liko

    Norint išbandyti įvairias grandines veikiant apkrovai, mėgėjiškam radijui dažnai reikia didelės skirtingų varžų ir atitinkamai skirtingų talpos varžų. Atsikratykite gremėzdiško bandymo pasipriešinimo rinkinio, kuris jums padės elektroninis rezistoriusKurių schema pateikta žemiau.

    Visų pirma, ši schema padės sukonfigūruoti maitinimas: išsiaiškinkite, kokia apkrova auga pulsas, kinta išėjimo įtampos vertė, tai padeda nustatyti elektroninę apsaugą nuo perkrovos ir pan.
    Apkrauti ekvivalentinę grandinę   labai paprasta. Pagrindinis grandinės elementas yra tranzistorius MOSFET-N. Srovės sunaudojimas reguliuojamas keičiant įtampą prie vartų, naudojant potenciometrą R2. MOSFET varža kinta priklausomai nuo įtampos prie vartų. Įtampa potenciometro įvestyje yra stabili dėl Zenerio diodo VD1.

    Paprasta apkrovos ekvivalento grandinė

    Norėdami patikrinti šaltinį su maža išėjimo įtampa, turite naudoti loginę MOSFET (MOSFET yra sukurtas perjungti iš loginio lygio). Jis turi žemesnę slenkstinę įtampą ir leidžia patikrinti maitinimo šaltinius, kurių įtampa yra iki 4 V. Loginiams tranzistoriams tinka 5 V zenerio diodas, klasikiniams MOSFET - 9 V. MOSFET turėtų būti dedami ant didelis radiatorius   . Trumpalaikė tranzistoriaus apkrova TO220 pakuotėje gali siekti 100 vatų. Nuolat jis gali dirbti su iki 50 vatų apkrova, esant dideliam radiatoriui. Šis įvesties įtampos diapazonas yra nuo 4 iki 25 V. Loginių tranzistorių įtampa tarp DS gnybtų paprastai yra 30 V.

    Kintamas skaitmeniniu būdu valdomas rezistorius. Šis prietaisas atlieka tą pačią elektroninio reguliavimo funkciją kaip ir mechaninis potenciometras arba kintamasis rezistorius. Pasipriešinimas keičiasi diskretiškai, kai į skaičiavimo įvestį CLK įjungiamas laikrodžio impulsas, skaičiavimo kryptis (atsparumo padidėjimas arba sumažėjimas) nustatoma pagal signalo lygį įvesties aukštyn / žemyn.

    Galimos 128 atskiros varžos vertės, nominalus potenciometrų diapazonas: 10, 50 ir 100 kOhm.

    Ant 1 pav   Parodyta skaitmeninio potenciometro funkcinė schema. Kai nominalioji vertė yra 10 kOhm, varža tarp gnybtų A ir B yra pastovi ir siekia 10 kOhm, o pasipriešinimo prieaugio prieaugis bus lygus:

    R ŽINGSNIS - 10 kOhm / 128 - 78 omai.

    Įprasta maitinimo įtampa 5 V, srovės suvartojimas ne didesnis kaip 40 μA.

    Smeigtuko priskyrimas parodytas 2 pav.

    Ant 3 pav   Parodyta tipinė skaitmeninio potenciometro AD5220 prijungimo schema.


      Fig. 4. Grandinės sąsaja su apskrito jutikliu

    Ant 4 pav   Parodytas skaitmeninio potenciometro AD5220 naudojimas sąsajos grandinėje su apskrito variklio veleno padėties jutikliu RE11CTV1Y12-EF2CS. Schemą sukūrė P. Kairolomukas (Kalifornija, JAV). Sukamasis kodavimo įrankis veleno kampinę padėtį paverčia kodu, kuris siunčiamas kvadratiniam dekoderiui (LS7084 - 90 ° fazės poslinkio dekoderis). Dekoderis generuoja CLK ir U / D valdymo signalus skaitmeniniam potenciometrui.

    A ir B signalai ( 5 pav) apskritas kodavimo įrenginys praeina per kvadratinį dekoderį, kuris konvertuoja fazių skirtumą tarp signalų A ir B į valdymo signalus CLK ir U / D, skirtus AD5220. Kai signalas B lenkia signalą A (variklio velenas sukasi pagal laikrodžio rodyklę), skaitmeniniam potenciometrui taikomas aukštas U / D lygis. Kai signalas A lenkia signalą B (variklio velenas sukasi prieš laikrodžio rodyklę), skaitmeniniam potenciometrui taikomas žemas U / D lygis. Kvadratūros dekoderis tuo pačiu metu generuoja sinchroninį AD5220 laikrodžio signalą. Linijinis laikrodžio impulso pločio pokytis atliekamas reguliuojant RBIAS.

    Be kvadratinių signalų dekodavimo kampinė padėtis   generuojantis laikrodį, LS7084 taip pat teikia triukšmo, vibracijos ir kitų trumpalaikių efektų filtravimą. Ši savybė yra svarbi šio tipo įrenginiams. Skirtingai nei optiniai kodavimo įrenginiai, RE11CT-V1Y12-EF2CS yra nebrangus elektrinis žiedinis kodavimo įrenginys, kuriame bet koks veleno pasukimas gali sukelti stiprų smūgį ar triukšmo sprogimą dėl netobulo jungiklio metalinių kontaktų. LS7084 neleidžia tokio tipo trikdžių perduoti į skaitmeninį potenciometrą AD5220.

    Prietaiso veikimo principas yra labai paprastas. Kai variklio velenas sukasi pagal laikrodžio rodyklę, pasipriešinimas tarp gnybtų B1 ir RWB1 didėja, kol skaitmeninio potenciometro kintamo pasipriešinimo vertė pasiekia maksimalią vertę. Tolesnis veleno sukimasis ta pačia kryptimi neturi įtakos išėjimo varžai.
    Panašiai, kai velenas sukasi prieš laikrodžio rodyklę, pasipriešinimas tarp gnybtų B1 ir RWB1 mažėja, kol pasipriešinimas pasiekia nulį, o tolesnis veleno sukimasis ta pačia kryptimi neturi jokios įtakos.

    Literatūra.

    1. Peteris Khairolomouras, „Analog Devices“, San Chosė, Kalifornija, 2003 m. Kovo 6 d

    2. Radijo schema, Nr. 4/2011 lipen-pjautuvas

    Kaip sekančius pavyzdžius gavau skaitmeninių potenciometrų partiją iš Analoginiai prietaisai. Reikalas įdomus ir perspektyvus. Pabandysiu išsiaiškinti AD8400 / AD8402 / AD8403 eilutę. Tarpusavyje jie skiriasi tik potenciometrų skaičiumi viename luste: atitinkamai 1, 2 ir 4. Gavau AD8402, t.y. su dviem R viename luste. Duomenų lape galite pamatyti schemą - ten viskas paprasta. Bet tiesiogiai keičiamo rezistoriaus įgyvendinimas nerodyta. Šią spragą užpildysiu schema iš interneto:
    Kaip matyti iš paveikslo, varžinis elementas Rh - Rl susideda iš N-1 varžų, o N (tai yra jo talpa) - perjungimo klavišų MOS tranzistorių pavidalu. Mano atveju - N \u003d 256, nuo šiol turėsiu omenyje tai . Dekoderio kodas nusako „slankiklį“, prijungtą prie grandinės Rw   per atitinkamą MOS tranzistorių, prie 255 serijos sujungtų rezistorių jungties taško. Jei potenciometro priklausomybė yra tiesinė (kaip mano atveju), tai liniją sudarančių varžų varžos vertės bus vienodos. Atkreipiu dėmesį, kad simboliai kairėje esančiame paveikslėlyje atitinka simbolius duomenų lape: Rh -\u003e A, Rl -\u003e B ir Rw -\u003e W.
      Diegimo komandos gaunama nuoseklia 10 bitų SPI sąsaja.

    Toliau pažiūrėkite į akmens akmenį.   Pav. Iš duomenų lapo:
    AGND   - analoginis „žemės“;
    A2-B2   - 2-ojo rezistoriaus varžinis elementas;
    W2   - 2-ojo rezistoriaus slankiklis;
    DGND   - skaitmeninė „žemė“;
    SHDN   - abiejų rezistorių slankiklių aparatinės įrangos įrengimo signalas iki mažiausios vertės;
    CS   - standartinis „kristalų pasirinkimas“;
    SDI   - nuoseklus duomenų įvedimas;
    CLK   - nuosekliosios sąsajos laikrodžio signalas;
    RS   - abiejų rezistorių slankiklių aparatinės įrangos įrengimo signalas vidutine verte;
    Vdd   - + mityba;
    W1   - 1-ojo rezistoriaus slankiklis;
    A1 - B1   - 1 rezistoriaus varžinis elementas.
    Dabar kontrolinio žodžio struktūra yra iš to paties duomenų lapo:
      Žodį sudaro 10 skaitmenų. A1   ir A0   nustatyti, kuriam rezistoriui (00 - 1 ir 01 - 2) siunčiamas nustatytos vertės baitas D7 - D0   kaip matote W. slankiklį. Kaip matote, visiškai nieko sudėtinga.

    Bandomoji Lenta   Iš lentos sukūriau seną derinimo modulį, skirtą ATtiny2313.


    Ir parašė kodą:

      # įtraukti    # įtraukti #define PORT_SPI PORTD / * prievado ir signalo priskyrimai * /   #define DDR_SPI DDRD #define PIN_SPI PIND #define SDO PD0 #define CKL PD1 #define CS PD2 #define SHDN PD3 #define RS PD4 void init_SPI (void) // programinės įrangos SPI inicijavimo funkcija   (DDR_SPI | \u003d (1< < SDO) | (1 << CKL) | (1 << CS) | (1 << SHDN) | (1 << RS) ; // visi signalų išėjimai    PORT_SPI | \u003d (1<< CS) | (1 << SHDN) | (1 << RS) ; //с лог. 1 PORT_SPI &= ~(1 << SDO) ; //и лог. 0 PORT_SPI &= ~(1 << CKL) ; // } void set_resistance (unsigned char addr, unsigned char value) //функция записи { unsigned char i; // kintamasis už kilpą    unsigned int addr_value; // tarpinis kintamasis kontroliniam žodžiui apskaičiuoti    addr_value \u003d ((nepasirašytas int) (addr<< 8 ) ) | ((unsigned int ) value) ; // suformuokite kontrolinį žodį iš dviejų adreso bitų ir pasipriešinimo baitų    PORT_SPI & \u003d ~ (1<< CS) ; // lusto pasirinkimas    už (i \u003d 0; i< 10 ; i++ ) už 10 kontrolinio žodžio bitų    (jei (0x0001 & (addr_value \u003e\u003e (9 - i)))) PORT_SPI | \u003d (1< < SDO) ; // Jei bitas yra vienas, tada nustatykite vienetą    dar PORT_SPI & \u003d ~ (1<< SDO) ; // kitaip - nustatykite nulį    PORT_SPI | \u003d (1<< CKL) ; // laikrodžio priekis    PORT_SPI & \u003d ~ (1<< CKL) ; // laikrodžio nuosmukis    ) PORT_SPI | \u003d (1<< CS) ; // nesirinkite lusto   ) int pagrindinis (negaliojantis) // pagrindinė funkcija   (nepasirašytas char q; // kintamasis už kilpą    init_SPI (); // inicijuokite programinės įrangos SPI    o (1) // begalinėje kilpoje    (už (q \u003d 0; q< 255 ; q++ ) // visoms 256 pasipriešinimo vertėms    (rinkinio_atsparumas (0x01, q); // pakaitomis nustatomas 1-ajam potenciometrui // _ uždelsimas_ms (500); // tai yra skirtas sąrankai, ommemetru galite stebėti 1-ojo potenciometro atsparumo pokyčius. } } }

    Dabar grįžkite į schemą. Dar kartą atidžiai pažiūrėkite į ją ... Argi nieko panašaus? Mes taikome pamatinę įtampą vienam iš varžinio elemento išėjimų ir gauname ... DAC - skaitmeninio-analoginio keitiklis! Ir šiai funkcijai yra parašytas kodas - geriau būtų stebėti lusto veikimą osciloskopu. Na, jei norite patikrinti ommetru, tada atšaukite vėlavimą. Tada pamatysite pasipriešinimo pokyčius.
    Galiausiai pats tyrimas.
      Įsitikinęs, kad skaitmeninis potenciometras veikia su ommetru, taip pat ar teisingai veikia SHDN ir RS signalai, pakomentavau aukščiau paminėtą pusės sekundės vėlavimą ir nusprendžiau sau išsiaiškinti lusto elgesį, kai:
      1. Įtampos tiekimas rezistoriui tiesiai iš pačios mikroschemos maitinimo šaltinio, t. nėra galvaniškai atsietas. Nuotrauka pasirodė tokia.