Категорије: Склопови микроконтролера
Број прегледа: 18998
Коментари на чланак: 0

Спајање аналогних сензора на Ардуино, очитавање сензора

 

Сензори се користе за мерење количина, услова околине и реакција на промене стања и положаја. На њиховом излазу могу постојати и дигитални сигнали који се састоје од нула и нула, и аналогни који се састоје од бесконачног броја напона у одређеном интервалу.


О сензорима

Сходно томе, сензори су подељени у две групе:

1. Дигитални.

2. Аналог.

За читање дигиталних вредности у нашем случају се могу користити и дигитални и аналогни улази микроконтролера Авр на Ардуино плочи. Аналогни сензори морају бити повезани преко аналогно-дигиталног претварача (АДЦ). АТМЕГА328, то је оно што је инсталирано на већини АРДУИНО плоча (више о томе на сајту је чланак), садржи у свом колу уграђени АДЦ. На располагању је чак 6 аналогних улаза.

Ако вам ово није довољно, можете користити додатни екстерни АДЦ за повезивање са дигиталним улазима, али то ће компликовати код и повећати његову јачину, због додавања алгоритама за обраду и АДЦ контроле. Тема аналогно-дигиталних претварача је довољно широка да о њима можете направити посебан чланак или циклус. Лакше је користити плочу са великим бројем њих или мултиплексере. Погледајмо како спојити аналогне сензоре на Ардуино.

Спајање аналогних сензора на Ардуино, очитавање очитања сензора

Општа шема аналогних сензора и њихова повезаност

Сензор чак може бити и уобичајени потенциометар. У ствари, ово је сензор положаја отпора, на овом принципу они контролишу ниво течности, угао нагиба, отварање нечега. Може се повезати са ардуином на два начина.

Општа шема аналогних сензора и њихова повезаност

Горњи круг омогућава очитавање вредности од 0 до 1023, због чињенице да сав напон пада на потенциометру. Овде функционише принцип делила напона, у било којем положају мотора, напон се расподељује линеарно на површини отпорничког слоја или на логаритамској скали (зависи од потенциометра), а онај део напона који остаје између излаза клизача (клизни контакт) и масе (гнд) стигне до улаза. На плочи, ова веза изгледа овако:

Дијаграм ожичења за аналогне сензоре

Друга опција је повезана према класичном отпорничком раздјелнику, а напон у тачки максималног отпора потенциометра зависи од отпора горњег отпорника (на слици Р2).

Класични отпорнички раздјелник

Опћенито, отпорнички раздјелник је врло важан не само у пољу рада са микроконтролерима, већ и у електроници уопште. Испод видите општу шему, као и израчунате омјере за одређивање вриједности напона на доњем краку.

Шема и конструкцијски односи за одређивање вредности напона на доњем краку

Таква веза је карактеристична не само за потенциометар, већ и за све аналогне сензоре, јер већина њих ради на принципу промене отпорности (проводљивости) под утицајем спољних извора - температуре, светлости, зрачења разних врста итд.

Следи најједноставнији дијаграм везе термистору принципу се на њеној основи може направити термометар. Али тачност његових очитавања зависиће од тачности табеле претварања отпорности на температуру, стабилности извора напајања и коефицијената промене отпора (укључујући горњи отпорник) при истој температури. То се може умањити одабиром оптималних отпора, њихове снаге и струје струје.

Најједноставнији дијаграм повезивања за термистор

На исти начин можете повезати фотодиоде, фототрансисторе као сензор светлости. Фотоелектроника је нашла примену у сензорима који одређују удаљеност и присуство предмета, о чему ћемо касније размотрити.

Пхоторесистор

На слици је приказана повезаност фоторепортера са ардуином.

Шема повезивања фоторезтора са ардуином

Софтверски део

Пре него што говорим о повезивању одређених сензора, одлучио сам размотрити софтвер за њихову обраду. Сви аналогни сигнали се читају са истих портова помоћу наредбе аналогРеад ().Вреди напоменути да Ардуино УНО и други модели са 168 и 328 атмега имају 10-битни АДЦ. То значи да микроконтролер види улазни сигнал као број од 0 до 1023 - укупно 1024 вредности. Ако узмете у обзир да је напон напајања 5 волти, тада је улазна осјетљивост:

5/1024 = 0,0048 В или 4,8 мВ

То јест, са вредностом 0 на улазу, напон је 0, а на улазу 10 - 48 мВ.

У неким случајевима, за претварање вредности на жељени ниво (на пример, преношење на излаз ПВМ-а), 1024 се дели бројем, а као резултат дељења треба да се добије потребан максимум. Функција мапе (извор, ниска, висока, висока, висока, ниска) делује јасније, где:

  • низак - нижи број пре претварања по функцији;

  • вцх - горњи;

  • ВЦх - доњи број након обраде помоћу функције (на излазу);

  • ВХВ - врх.

Практична апликација за претварање функције у улазну вредност за пренос на ПВМ (максимална вредност је 255, за претварање података из АДЦ у ПВМ излаз, 1024 је подељено на 4):

Опција 1 - подела.

инт к;

к = аналогРеад (пот) / 4;

// биће примљен број од 0 до 1023

// поделимо га са 4, добићемо цео број од 0 до 255 аналогВрите (лед, к);

Опција 2 - функција МАП - отвара више могућности, али о томе касније.

воид петља ()

{инт вал = аналогРеад (0);

вал = мапа (вал, 0, 1023, 0, 255);

аналогВрите (лед, вал); }

Или још краће:

аналогВрите (лед, мапа (вал, 0, 1023, 0, 255))

Нису сви сензори на излазу 5 волти, тј. број 1024 није увек прикладно поделити да бисте добили једнаких 256 за ПВМ (или било који други). То могу бити 2 и 2,5 В и друге вредности, када ће максимални сигнал бити, на пример, 500.


Популарни аналогни сензори

Општи приказ сензора за ардуино и његову везу је приказан у наставку:

Како спојити аналогни сензор

Обично постоје три излаза, можда постоји и четврти - дигитални, али то су функције.

Декодирање ознаке излаза аналогног сензора:

  • Г - минус снага, обични аутобус, земља. Може се означити као ГНД, „-“;

  • В - плус снага. Може се означити као Вцц, Втг, "+";

  • С - излазни сигнал, могућа нотација - Излаз, СГН, Воут, знак.

Почетници који уче како да читају вредности сензора бирају пројекте свих врста термометра. Такви сензори су у дигиталном дизајну, на пример ДС18Б20, и у аналогном - то су све врсте микроцегова као ЛМ35, ТМП35, ТМП36 и други. Ево примера модуларног дизајна таквог сензора на плочи.

Аналогни сензор на ТМП36

Тачност сензора је од 0,5 до 2 степена. Изграђен на ТМП36 чипу, као и многи његови аналози, његове излазне вредности су 10 мВ / ° Ц. На 0 ° излазни сигнал је 0 В, а затим се додаје 10 мВ по 1 степену. Односно, при 25,5 степени напон износи 0,255 В, одступање је могуће унутар грешке и само загревања ИЦ кристала (до 0,1 ° Ц).


У зависности од коришћеног микро круга, мерења и излазни напони могу се разликовати, видети табелу.

Температурни распони и излазни напони сензора

Међутим, за висококвалитетни термометар не можете само да прочитате вредности и прикажете их на ЛЦД индикатору или серијском прикључку за комуникацију са рачунаром, за стабилност излазног сигнала целог система у целини требате да у одређеним границама просечите вредности сензора, и аналогних и дигиталних, док без нарушавања њихове брзине и тачности (за све постоји граница). То је због присуства буке, сметњи, нестабилних контаката (за отпорне сензоре засноване на потенциометру, погледајте неисправности сензора нивоа воде или горива у резервоару аутомобила).

Кодови за рад са већином сензора су прилично обимни, тако да им нећу дати све, могу их лако пронаћи на мрежи захтевом „сензор + Ардуино име“.

Следећи сензор који ардуино роботски инжењери често користе је линијски сензор. Заснован је на фотоелектронским уређајима, врста фототрансистатора.

Линијски сензор

Уз њихову помоћ, робот који се креће дуж линије (користи се у аутоматизованој производњи за испоруку делова) утврђује присуство беле или црне траке. На десној страни слике су видљива два уређаја слична ЛЕД-има. Један од њих је ЛЕД, може да емитује у невидљивом спектру, а други је фототрансистор.

Светлост се одбија од површине ако је тамна - фототрансистор не прима рефлектирани ток, али ако светлост прими и отвори се. Алгоритми које постављате у микроконтролер обрадјују сигнал и одређују тачност и смер кретања и исправљају их. Оптички миш, који највероватније држите у руци док читате ове редове, такође је сличан.

Допунићу са суседним сензором - Сензор растојања од Схарп-а, такође се користи у роботици, као и у условима праћења положаја објеката у простору (са одговарајућом ТКС грешком).

Сензор оштрог растојања

Делује на истом принципу. Библиотеке и примери скица и пројеката с њима доступни су у великом броју на веб локацијама Ардуино.


Закључак

Употреба аналогних сензора је врло једноставна, а уз Ардуино програмски језик који се лако учи брзо можете научити једноставне уређаје. Овај приступ има значајне недостатке у поређењу са дигиталним колегама. То је због велике варијације параметара, што узрокује проблеме приликом замене сензора. Можда ћете морати да измените изворни код програма.

Тачно, појединачни аналогни уређаји садрже референтне изворе напона и стабилизаторе струје, што има позитиван утицај на крајњи производ и поновљивост уређаја у масовној производњи. Сви проблеми се могу избећи коришћењем дигиталних уређаја.

Дигитално коло као такво смањује потребу за подешавањем и подешавањем круга након склапања. То вам даје прилику да саставите неколико идентичних уређаја на истом изворном коду, чији ће детаљи дати исте сигнале, а отпорним сензорима је то ретко.

Погледајте и на нашој веб страници:Спајање екстерних уређаја на Ардуино

Погледајте и на електрохомепро.цом:

  • Која је разлика између аналогних и дигиталних сензора
  • Мерење температуре и влажности на Ардуину - избор начина
  • Како се претвара аналогни сигнал у дигитални
  • Најпопуларнији сензори за Ардуино
  • Како је линијски сензор сређен и функционише

  •