Ардуино комуникациони протокол

Arduino Komunikacioni Protokol



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

Ардуино комуникациони протоколи

Коришћењем комуникационих протокола, можемо да шаљемо и примамо податке било ког сензора у Ардуину.

Неки једноставни сензори попут инфрацрвеног (ИР) могу директно да комуницирају са Ардуином, али неки од сложених сензора као што су Ви-Фи модул, модул СД картице и жироскоп не могу директно комуницирати са Ардуином без икаквих комуникационих протокола. Дакле, зато су ови протоколи саставни део Ардуино комуникације.







Ардуино има више периферних уређаја повезаних на њега; међу њима постоје три комуникационе периферије које се користе у Ардуино плочама.



Ардуино комуникациони протоколи

Комуникација између различитих електронских уређаја као што је Ардуино је стандардизована међу ова три протокола; омогућава дизајнерима да лако комуницирају између различитих уређаја без икаквих проблема са компатибилношћу. Рад ова три протокола је исти јер служе истој сврси комуникације, али се разликују по имплементацији унутар кола. Даљи опис ових протокола је размотрен у наставку.







УАРТ

УАРТ је познат као Универзални асинхрони пријемник предајник. УАРТ је серијски комуникациони протокол који значи да се битови података преносе у секвенцијалном облику један за другим. За подешавање УАРТ комуникације потребне су нам две линије. Један је Тк (Д1) пин Ардуино плоче, а други је Рк(Д0) пин Ардуино плоче. Тк пин служи за пренос података до уређаја, а Рк пин се користи за пријем података. Различите Ардуино плоче имају више УАРТ пинова.

Ардуино Дигитал Пин УАРТ Пин
Д1 Тк
Д0 Рк

Да бисмо успоставили серијску комуникацију користећи УАРТ порт, потребно је да повежемо два уређаја у приказаној конфигурацији:



На Ардуино Уно, један серијски порт је намењен за комуникацију који се обично назива УСБ порт. Као што име сугерише Универсал Сериал Бус, то је серијски порт. Коришћењем УСБ порта Ардуино може успоставити комуникацију са рачунарима. УСБ порт је повезан на уграђене пинове Тк и Рк Ардуина. Користећи ове пинове, можемо повезати било који спољни хардвер осим рачунара преко УСБ-а. Ардуино ИДЕ обезбеђује СофтвареСериал библиотеку (СофтвареСериал.х) што омогућава корисницима да користе ГПИО пинове као серијске Тк и Рк пинове.

  • УАРТ је једноставан за рад са Ардуином
  • УАРТ-у није потребан никакав сигнал сата
  • Брзина преноса мора бити подешена у границама од 10% уређаја за комуникацију да би се спречио губитак података
  • Више уређаја са Ардуином у конфигурацији Мастер Славе није могуће са УАРТ-ом
  • УАРТ је полудуплекс, што значи да уређаји не могу да преносе и примају податке у исто време
  • Само два уређаја истовремено могу да комуницирају са УАРТ протоколом

Серијски периферни интерфејс (СПИ)

СПИ је акроним од серијског периферног интерфејса који је посебно дизајниран за микроконтролере да комуницирају са њима. СПИ ради у фулл-дуплек режиму што значи да СПИ може истовремено да шаље и прима податке. У поређењу са УАРТ-ом и И2Ц, то је најбржа комуникациона периферија у Ардуино плочама. Обично се користи тамо где је потребна висока брзина преноса података, као што је ЛЦД екран и апликације за Мицро СД картице.

СПИ дигитални пинови на Ардуину су унапред дефинисани. За Ардуино Уно СПИ конфигурација пинова је следећа:

СПИ Лине ГПИО ИЦСП заглавље Пин
СЦК 13 3
МИСО 12 1
СМОКЕ Једанаест 4
СС 10
  • МОСИ је скраћеница за Мастер Оут Славе Ин , МОСИ је линија за пренос података за мастер-славе.
  • СЦК је а Сат линија који дефинише брзину преноса и карактеристике почетка и краја.
  • СС означава Славе Селецт ; СС линија омогућава Мастер да изабере одређени Славе уређај када ради у конфигурацији више Славе.
  • МИСО је скраћеница за Мастер ин Славе Оут ; МИСО је Славе то Мастер далековод за податке.

Једна од главних карактеристика СПИ протокола је конфигурација Мастер-Славе. Користећи СПИ, један уређај се може дефинисати као Мастер за контролу неколико Славе уређаја. Мастер има потпуну контролу над славе уређајима преко СПИ протокола.

СПИ је синхрони протокол, што значи да је комуникација повезана са заједничким тактним сигналом између Мастер и Славе. СПИ може да контролише више уређаја као Славе преко једне линије за пренос и пријем. Сви Славе-ови су повезани са Мастером користећи заједнички МИСО примати линију заједно са СМОКЕ једну заједничку линију преноса. СЦК је такође заједничка линија сата међу главним и славе уређајима. Једина разлика у славе уређајима је да се сваки славе уређај контролише одвојено СС изаберите линију. То значи да је сваком Славе-у потребан додатни ГПИО пин са Ардуино плоче који ће деловати као линија избора за тај одређени Славе уређај.

Неки од главних значајки СПИ протокола су наведени у наставку:

  • СПИ је најбржи протокол од И2Ц и УАРТ
  • Нису потребни стартни и стоп битови као у УАРТ-у, што значи да је могућ континуирани пренос података
  • Славе може се лако адресирати због једноставне конфигурације главног славе-а
  • За сваки Славе додатни пин је заузет на Ардуино плочи. Практично 1 Мастер може да контролише 4 Славе уређаја
  • Недостаје потврда података као што се користи у УАРТ-у
  • Вишеструка главна конфигурација није могућа

И2Ц комуникациони протокол

Интер Интегратед Цирцуит (И2Ц) је још један комуникациони протокол који користе Ардуино плоче. И2Ц је најтежи и најкомпликованији протокол за имплементацију са Ардуином и другим уређајима. Упркос својој сложености, нуди више функција које недостају у другим протоколима као што су вишеструке главне и више подређене конфигурације. И2Ц омогућава повезивање до 128 уређаја на главну Ардуино плочу. Ово је могуће само зато што И2Ц дели једну жицу међу свим славе уређајима. И2Ц у Ардуину користи систем адреса, што значи да пре слања података на Славе уређај Ардуино мора прво да изабере Славе уређај слањем јединствене адресе. И2Ц користи само две жице смањујући укупан број пинова Ардуино, али лоша страна је што је И2Ц спорији од СПИ протокола.

Ардуино аналогни пин И2Ц Пин
А4 СДА
А5 СЦЛ

На нивоу хардвера И2Ц је ограничен на само две жице, једну за линију података познату као СДА (серијски подаци) а други за линију сата СЦЛ (серијски сат). У стању мировања и СДА и СЦЛ су повучени високо. Када подаци треба да се пренесу, ове линије се повлаче ниско помоћу МОСФЕТ кола. Коришћењем И2Ц у пројектима обавезно је користити пулл-уп отпорнике обично вредности од 4,7 Кохм. Ови отпорници за подизање осигуравају да и СДА и СЦЛ линије остану високе у старту у празном ходу.

Неки од главних нагласака И2Ц протокола су:

  • Број потребних пинова је веома мали
  • Може се повезати више Мастер Славес уређаја
  • Користи само 2 жице
  • Брзина је спорија у поређењу са СПИ због отпорника за подизање
  • Отпорницима је потребно више простора у колу
  • Сложеност пројекта се повећава са повећањем броја уређаја

Поређење између УАРТ вс И2Ц вс СПИ

Протокол УАРТ СПИ
Брзина Најспорији Најбржи Брже од УАРТ-а
Број уређаја до 2 4 уређаја До 128 уређаја
Потребне су жице 2 (Тк, Рк) 4(СЦК,ДИМ,ОЧИ,СС) 2 (СДА, СЦЛ)
Дуплек Моде Фулл Дуплек Моде Фулл Дуплек Моде Халф Дуплек
Могући број мастер-робова Сингле Мастер-Сингле Славе Један мастер-више подређених Вишеструки господари-више робова
Сложеност Симпле Може лако да контролише више уређаја Комплекс са повећањем уређаја
Бит за потврду Јок Јок да

Закључак

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