Како направити робота за чишћење пода помоћу ултразвучног сензора?

Аутоматски робот за чишћење пода није нови концепт. Али ови роботи имају велики проблем. Веома су скупе. Шта ако можемо направити јефтин робот за чишћење пода који је ефикасан колико и робот доступан на тржишту. Овај робот ће користити ултразвучни сензор и избећи ће било какву препреку на свом путу. На тај начин очистиће целу собу.



(Ова слика је преузета из Цирцуит Дигест)

Како помоћу ултразвучног сензора направити аутоматског робота за чишћење пода?

Као што сада знамо сажетак нашег пројекта. Прикупимо још неке информације да започнемо са радом.



Корак 1: Прикупљање компонената

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



  • Шасија точкова за аутомобил
  • Батерија
  • Схов Брусх

Корак 2: Проучавање компонената

Сад кад имамо комплетну листу свих компоненти, померимо се корак напред и укратко проучимо рад сваке компоненте.



Ардуино нано је плоча микроконтролера која се користи за контролу или извршавање различитих задатака у колу. Спалимо а Ц Цоде на Ардуино Нано-у како би рекао плочи микроконтролера како и које операције треба извршити. Ардуино Нано има потпуно исту функционалност као Ардуино Уно, али у прилично малој величини. Микроконтролер на плочи Ардуино Нано је АТмега328п.

Ардуино Нано

Л298Н је интегрисани круг велике струје и високог напона. То је двоструки пуни мост дизајниран да прихвати стандардну ТТЛ логику. Има два улаза за омогућавање који омогућавају уређају да ради независно. Два мотора се могу истовремено повезати и управљати. Брзина мотора варира кроз ПВМ пинове.



Л298Н Мотор Дривер

ХЦ-СР04 плоча је ултразвучни сензор који се користи за одређивање растојања између два објекта. Састоји се од предајника и пријемника. Предајник претвара електрични сигнал у ултразвучни сигнал, а пријемник претвара ултразвучни сигнал назад у електрични сигнал. Када предајник пошаље ултразвучни талас, он се одражава након судара са одређеним објектом. Удаљеност се израчунава помоћу времена које је потребно ултразвучном сигналу да пређе са предајника и врати се до пријемника.

Ултразвучни сензор

Корак 3: Састављање компонената

Како сада знамо како све компоненте раде, хајде да саставимо све компоненте и почнемо да правимо робота.

Узмите шасију точкова аутомобила и поставите четку за показивање испред шасија. Монтирајте Сцотцх Брите испод робота. Уверите се да је одмах иза четке за ципеле. Сада причврстите малу плочу за поврће на врх шасије и иза ње, прикачите возач мотора. Направите одговарајуће везе мотора са покретачем мотора и пажљиво спојите затиче возача мотора на Ардуино. Поставите батерију иза шасије. Батерија ће напајати возач мотора који ће напајати моторе. Ардуино ће такође преузети напајање од возача мотора. Вцц пин и уземљење ултразвучног сензора биће повезани на 5 В и уземљење Ардуина.

Кружни дијаграм

Корак 4: Почетак рада са Ардуином

Ако већ нисте упознати са Ардуино ИДЕ-ом, не брините јер је у наставку објашњен корак по корак за подешавање и употребу Ардуино ИДЕ-а са плочом микроконтролера.

  1. Преузмите најновију верзију Ардуино ИДЕ са Ардуино.
  2. Повежите своју Ардуино Нано плочу са преносним рачунаром и отворите контролну таблу. на контролној табли кликните на Хардвер и звук . Сада кликните на Уређаји и штампачи. Овде пронађите порт на који је повезана плоча вашег микроконтролера. У мом случају јесте ЦОМ14 али је различито на различитим рачунарима.

    Проналажење луке

  3. Кликните на мени Алат и поставите плочу на Ардуино Нано.

    Одбор за постављање

  4. У истом менију Алат поставите порт на број порта који сте раније приметили у Уређаји и штампачи .

    Подешавање порта

  5. У истом менију Алат поставите процесор на АТмега328П (стари покретач).

    Процесор

  6. Преузмите доленаведени код и налепите га у свој Ардуино ИДЕ. Кликните на отпремити дугме за нарезивање кода на плочи микроконтролера.

    Отпремити

Кликните овде да преузмете код.

Корак 5: Разумевање кодекса

Код је прилично добро коментарисан и сам по себи објашњен. Али ипак, укратко је објашњено у наставку.

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

инт енабле1пин = 8; // Клинови за први мотор инт мотор1пин1 = 2; инт мотор1пин2 = 3; инт енабле2пин = 9; // Клинови за други мотор инт мотор2пин1 = 4; инт мотор2пин2 = 5; цонст инт тригПин = 11; // Клинови за ултразвучни сензор цонст инт ецхоПин = 10; цонст инт буззПин = 6; дуго трајање; // Варијабле за плутајућу удаљеност ултразвучног сензора;

2. воид сетуп () је функција у којој смо поставили све пинове да се користе као УЛАЗ или ИЗЛАЗ. Брзина преноса је такође подешена у овој функцији. Брзина преноса је брзина којом плоча микроконтролера комуницира са прикљученим сензорима.

воид сетуп () {Сериал.бегин (9600); пинМоде (тригПин, ИЗЛАЗ); пинМоде (ецхоПин, ИНПУТ); пинМоде (буззПин, ОУТПУТ); пинМоде (енабле1пин, ОУТПУТ); пинМоде (енабле2пин, ОУТПУТ); пинМоде (мотор1пин1, ИЗЛАЗ); пинМоде (мотор1пин2, ОУТПУТ); пинМоде (мотор2пин1, ИЗЛАЗ); пинМоде (мотор2пин2, ИЗЛАЗ); }

3 воид лооп () је функција која непрекидно ради у петљи. У овој петљи смо рекли микроконтролеру када треба да крене напред ако се у 50 цм не нађе препрека. Робот ће скренути оштро удесно када се нађе препрека.

воид лооп () {дигиталВрите (тригПин, ЛОВ); делаиМицросецондс (2); дигиталВрите (тригПин, ХИГХ); делаиМицросецондс (10); дигиталВрите (тригПин, ЛОВ); трајање = пулсИн (ецхоПин, ХИГХ); растојање = 0,034 * (трајање / 2); иф (дистанце> 50) // Помери напред ако није пронађена препрека {дигиталВрите (енабле1пин, ХИГХ); дигиталВрите (енабле2пин, ХИГХ); дигиталВрите (мотор1пин1, ХИГХ); дигиталВрите (мотор1пин2, ЛОВ); дигиталВрите (мотор2пин1, ХИГХ); дигиталВрите (мотор2пин2, ЛОВ); } иначе ако (удаљеност<50) // Sharp Right Turn if an obstacle found { digitalWrite(enable1pin, HIGH); digitalWrite(enable2pin, HIGH); digitalWrite(motor1pin1, HIGH); digitalWrite(motor1pin2, LOW); digitalWrite(motor2pin1, LOW); digitalWrite(motor2pin2, LOW); } delay(300); // delay }

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