hvordan man får analog input på beaglebone sort

,,,, i denne linux.com serie på beaglebone sorte, vi har set, hvordan man bruger den linux - grænseflade, der giver os mulighed for at adgang chips over spi og modtage afbryder, når spændingen på en nål ændringer.denne gang vil vi se på, hvordan vi skal få analog input på beaglebone sort.,, mens gpio to og spi meddelelse sker bare ved hjælp af to stater med høj spænding og begrundelse, spænding, med analog input, du kan læse mange værdier mellem høj og lav, eksempler, hvor du måske ønsker at use analog input er mærker på miljøet, f.eks. ved hjælp af en let modstand, for at se, hvor klog er det i øjeblikket, eller en temperaturføler.menneskelig interaktion, giver også mange analoge input, f.eks. ved hjælp af potentiometre, joysticks eller resistiv røre skærme. denne artikel er fastsat uden garanti eller egnethed til et bestemt formål.jeg har gjort ting, der beskrives, og det ser ikke ud til at have gjort min beaglebone sort eller noget andet.enhver hardware - aftalt du er på din egen risiko.,, test analog input, mens gpio nåle på beaglebone sort løber på 3,3 volt, analog input nåle kan kun acceptere op til 1,8 v tilladt.du kan måske huske, at når 1 og 2 på p9 er formalet med 3 og 4 er en levering til 3,3 v. når det drejer sig om analoge signaler, vi ønsker i stedet, at de analoge jordbaserede og analog elledninger.alle nåle, vi ønsker, er på p9 header, som er en nærmest indgangseffekt, jack.- 32 er vdd_adc med nål 34, som gnda_adc.analog - input er ved at gå til 33 og 35 gennem 40.analog input - nul er pin - 39.fuldstændige oplysninger om de personer, henviser til systemet referencehåndbog.,, at teste analog input, jeg bruger en lineær potentiometer 10.000 dollars.hvis potentiometer er oprettet i serie med en fast modstand, så den vil fungere som en spænding prøvedeler.udformningen, jeg brugte lagt faste modstand før potentiometer og spænding prøve udtages på input til potentiometer.den faste modstand, har to formål: at give en lille spændingsfald fra 1,8 v, der leveres fra vdd_adc og tilbyde nogle evne til magten, som løber gennem kredsløb, når potentiometer er sat til at det er minimalt modstand.,,,,, efter spænding prøvedeler teori, overveje opstilling som vist på billedet ovenfor r1 er en fast del af 1k ohm og r2 kan variere mellem 10.000 dollars og okay. hvide ledning er den prøve, som vil ændre i spænding som slider på potentiometer er flyttet.når potentiometer tilbyder sin maksimale modstand (10.000 dollars) stikprøven spænding, vil være til stede, r2 /(r1 + r2) * vin = 10000 /(10 + 1 000) 1.8 = 1.64 v. når potentiometer er sat til en lav modstand, så prøven spænding vil gå i retning af 0 v., ved hjælp af en extech ex330 multimeter jeg fandt, at vdd_adc hoved på min beaglebone sorte gav 1.803 v. 1k modstand, jeg var lidt under den nominelle værdi.de tilbød en maksimal modstand af potentiometer 10.4k ohm.når potentiometer blev fastsat til den højeste værdi stikprøven punkt læse på 1.645 v. stadig i henhold til 1.8-v maksimale værdi for analog input på beaglebone sort, så alt er godt.,, der forbinder den med magt og jord kan gøres ved at forbinde den røde tråd i ovenstående billede til vdd_adc (pin - 32), og de grønne for at gnda_adc (pin - 34).før jeg forbundet stikprøven til en analog input, besluttede jeg at kontrollere spændingsområde, den kan tilbyde.jeg har mellem 20 mv og op til 1.644 v med potentiometer slider på ekstrem.at flytte en ca. 1 /6. væk fra 20 mv udgangen af sine spor, gav en 1 v behandling, men behandlingen var temmelig lineære derfra til 1.644 mod udgangen af sporet.at erstatte 1k faste modstand med 10.000 dollars modstand, give en mere lineær læser mellem ca. 2 mv, til 1 v som potentiometer blev justeret.så jeg tog 10.000 dollars faste modstand i resten af den artikel, læser analog input, prøven kan være forbundet med en analog - punkt input, valgte jeg analog input - 0, som er pin - 39 om p9 header.,, min beaglebone sort var allerede arrangeret for analog input.cape knogle iio linje er, hvad du vil se, når du ser på deres ankomst - og afgangstidspunkter fil, som vist nedenfor.jeg prøvede at tage min kåbe knogle iio skrive - 7 til ankomst - og afgangstidspunkter fil, der har forårsaget min analoge indgående dokumenter forsvinde fra /systemer, men også skabt ustabilitet, låser mig ud af at læse de ankomst - og afgangstidspunkter fil, før jeg har genstartet den beaglebone sort.,, rod @ beaglebone: ~&#echo kap knogle iio > /. /udstyr /bone_capemgr. * /, ankomst - og afgangstidspunkter...rod @ beaglebone: ~&#kat /. /udstyr /bone_capemgr. * /, ankomst - og afgangstidspunkter 0: 54: pf - - - 1: 55: pf - 2: 56: pf - 3: 57: pf - 4: ff: p-o-l bone-lt-emmc-2g, 00a0, texas instrument, bb-bone-emmc-2g 5: ff: tilsynsværge... benkul hdmi, 00a0, texas instrument, bb-bonelt-hdmi 6: ff: tilsynsværge... benkul hdmin, 00a0, texas instrument, bb-bonelt-hdmin 7: ff: p-o-l over bord navn, 00a0 tilsidesætte som kap knogle iio 8: ff: p-o-l over bord navn, 00a0 tilsidesætte som, am33xx_pwm 9: ff: p-o-l over bord navn, 00a0 tilsidesætte som, bb-spidev0 10: ff: p-o-l over bord navn, 00a0 tilsidesætte som, gpio-p9.12 11: ff: p-o-l over bord navn, 00a0 tilsidesætte som, gpio-p9.15 12: ff: p-o-l over bord navn, 00a0 tilsidesætte som, gpio-p9.23 13: ff: p-o-l over bord navn,00a0 tilsidesætte som, bone_pwm_p9_14 14: ff: p-o-l over bord navn, 00a0 tilsidesætte som, gpio-p9.26 15: ff: p-o-l over bord navn, 00a0 tilsidesætte som, gpio-p9.27, sager, som gør det muligt at få adgang til analog - input er gemt væk i /system, hvor du ikke kan finde dem.filerne er også i øvre sag så sandsynligvis vil undgå dit første forsøg på at finde for at få fat i dem, beaglebone: /.&#root @ cd /sys root @ beaglebone: /.&#finde.- iname "er". /udstyr /ocp.3/helper.12/ain0. /udstyr /ocp.3/helper.12/ain1...følgende behandlinger, der blev taget, da jeg flyttede potentiometer slider fra mindst modstand til maksimal modstand med 10.000 dollars modstand i serie før potentiometer.,, rod @ beaglebone: /. /udstyr /, ofp. 3 /hjælper. 12&#kat ain0 0 root @ beaglebone: //udstyr /system, ofp. 3 /hjælper. 12&#kat ain0 427 root @ beaglebone: /. /udstyr /, ofp. 3 /hjælper. 12&#kat ain0 746 root @ beaglebone: /. /udstyr /, ofp. 3 /hjælper. 12&#kat ain0 921, mens ovennævnte er filer, give mulighed for at blive den nuværende værdi af de analoge input, så ville du måske have hardware fylde en buffer med værdier for dig.det behøver du ikke at bekymre dig om specifikke tidspunkt, du kan bare læse alle værdier i sidste øjeblik eller to på en gang.desværre, jeg har fundet mange forholdsvis nye websteder med oplysninger om, hvordan de skal gøre dette, men hvad jeg fandt i modstrid med spidsfindige måder,.,, f.eks. fil fra kernen kilder til lokomotivførere /mellemstationer /iio /dokumentation /generic_buffer. c bliver nævnt tit.texas instrumenter er et plaster på, at filen til at fjerne udløser og konstant udviser parallel input - værdier på konsollen.desværre har jeg konstateret, at min linux kernel nægtede at give en buffer for analog input (er) uden at udløse en at fælde, med de relevante dmesg vist nedenfor.,, [463.846511] buffer ikke påbegyndt: ingen udløser, der udløser kan kræve at indsætte den iio trigonometri sysfs kernel modul, som vist nedenfor.det skaber nye iio_sysfs_trigger fortegnelse.,, rod @ beaglebone: /. /bus /iio /, udstyr&#insmod /l /moduler /3.8.13 /kerne /, lokomotivførere /mellemstationer /iio /af /, iio-trig-sysfs.ko root @ beaglebone: /. /bus /iio /, udstyr&#l i alt 0 lrwxrwxrwx 1 rod rod - 0 (23 02:36 iio: device0 - >.. /... /... /udstyr /ofp. 3 /, 44e0d000. tscadc /tiadc /iio:, device0 lrwxrwxrwx 1 root root 0 mar 23 03:01 iio_sysfs_trigger - >.. /... /... /udstyr /iio_sysfs_, udløser, skabte jeg en gaffel af hbf iio kontinuerlig prøvetagning -, userspace register, så jeg kunne ændre nogle filer.jeg har også ændret anvendelse af poll() til select(), således at en mere nøjagtig optælling af udløsende begivenheder holdes.når man læser større puffere afhængigheden af poll() ikke skelne rigtigt, at anordningen fil er klar til at give oplysninger, fordi det ikke var drænet data endnu.kernen i generic_buffer. k i ovenstående gaffel kun venter på, at nye værdier /dev /iio: device0 ved hjælp af select() og stik dem i en menneskeligt læsbar form på konsollen.,, under manuskript begynder generic_buffer løbende at overvåge, at de analoge input 0, 5.aftrækkeren er sysfstrig1.når løb manuskriptet, vil produktionen nystartede budskaber og derefter pause.hvis den anden blok af kommandoer under ledes i en anden terminal, så script_adc vindue vil komme ind i livet trykning kolonner af analoge signaler.,,&#kat. /script_adc.sh echo - 1 > /. /bus /iio /udstyr /iio_, sysfs_trigger /add_trigger echo - 1 > /. /bus /iio /anordninger /iio.:, device0 /scan_elements /in_, voltage0_en echo - 1 > /. /bus /iio /udstyr /iio.:, device0 /scan_elements /in_, voltage5_en. /generic_buffer - n tiadc - t sysfstrig1 - l 128 - c 10 #. /script_adc.sh...[-]...wait__ 0 10 - 80 ss - 8 1315.000000 1508.000000 1315.000000 1456.000000 1315.000000 1429.000000 1315.000000 1421.000000 1315.000000 1414.000000 1315.000000 1413.000000 1315.000000 1410.000000 1315.000000 1408.000000 1315.000000 1411.000000 1315.000000 1411.000000 wait__ 1 10 - 80 ss - 8 1315.000000 1410.000000 1315.000000 1411.000000, for at udløse det analoge buffer fra en anden terminal:,, rod @ beaglebone: /. /bus /iio /anordninger /trigger0&#kat navn sysfstrig1 root @ beaglebone: /. /bus /iio /, udstyr /trigger0&#echo - 1 > trigger_now, mens brugen af udløser og to konsoller i ovenstående er en smule underligt, er der intet, der hindrer de vigtigste program fra ved hjælp af en timer til hele tiden at udløse analog -nput anordning,.,, analog konverter i beaglebone sort er 12 bit, så det burde tilbyde - værdier på mellem 0 og 4096.det er lidt bedre end 10 bit beslutning, der tilbydes på arduino bestyrelser.som den maksimale spænding, jeg giver til analog - 1 v i denne artikel, jeg smider en masse prøve spændingsområde og dermed næsten halvdelen af beslutningen af den analoge input.den vigtigste ting at se, er, at man aldrig levering over 1,8 volt til analog input.der er også nogle regler om levering af spænding til nåle og sys_reset, at du skulle tage et kig på at undgå damanging din beaglebone sort.den grænseflade, der tilbydes analog input kan man meget hurtigt få de løbende værdier og buffering løsning lader du konstant overvåge deres råmaterialer uden mangler nogen prøver.,,, for flere artikler i denne serie:,,, ved at komme i gang med beaglebone sort: en 1ghz arm linux maskine for $45, beaglebone black del 2: linux præstationstest, beaglebone sort: hvordan får afbryder gennem linux gpio, robot arm kontrol fra beaglebone sort, hvordan man styrer en 3 hjul robot fra en tablet med beaglebone sort,

Beaglebone black analog test
BeagleBone Black voltage div3



Previous:
Next Page: