Како померати посуђе око ваше кухињске полице помоћу робота?

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



Домаћи робот

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

Сада морамо да прикупимо потребне компоненте и почнемо да правимо робота.



Корак 1: Коришћене компоненте

  • Ардуино уно
  • ИР сензор (к5)
  • Једносмерни мотори
  • Потраге за точковима аутомобила
  • Црна трака
  • Јумпер Вирес
  • ДЦ батерија
  • Пиштољ за лепак
  • Сет одвијача

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

Како смо већ направили списак компонената, померимо се корак напред и прођите кроз кратку студију рада сваке компоненте.



Тхе Ардуино УНО је плоча микроконтролера која се састоји од микрочипа АТМега 328П и коју је развио Ардуино.цц. Ова плоча има сет дигиталних и аналогних пинова за податке који се могу повезати са другим плочама за проширење или склоповима. Ова плоча има 14 дигиталних пинова, 6 аналогних пинова и програмабилних са Ардуино ИДЕ (Интегрисано развојно окружење) преко УСБ кабла типа Б. За напајање је потребно 5В НА и а Ц Цоде да раде.



Ардуино УНО

Моторни покретачки програм Л298Н користи се за погон једносмерних мотора. Л298Н је двоструки Х-Бридге покретач мотора који омогућава истовремено управљање брзином и смером два једносмерна мотора. Модул може да покреће једносмерне моторе који имају напон између 5 и 35В, са вршном струјом до 2А. Зависи од напона који се користи на ВЦЦ терминалу мотора. У нашем пројекту, 5В пин ће се користити као улаз јер га морамо повезати са 5В напајањем како би ИЦ исправно радио. Шема кола управљачког програма мотора Л298Н са повезаним једносмерним моторима приказано је испод за разумевање механизма покретачког програма мотора Л298Н. За демонстрацију се даје податак из Логиц Стате уместо ИР сензора.

Кружни дијаграм направљен на Протеус 8 Профессионал



Корак 3: Разумевање блок дијаграма и принципа рада

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

Блок дијаграм

Сензори које ћемо користити су дигитални и могу да дају излаз 0 или 1. Ови сензори које смо купили дају 1 на белим површинама и 0 на црним површинама. Сензори које купујемо дају случајне вредности, понекад дају 0 на белим површинама и 1 на црним површинама. У овом роботу ћемо користити пет сензора. У коду за пет сензора постоје четири услова.

  1. Проследи на линији: Када је средњи сензор на црној површини, а остали сензори на белој површини, извршиће се услов напред и робот ће се кретати право напред. Ако кренемо од Сенсор1 и настави до Сенсор5, вредност коју ће дати сваки од сензора (1 1 0 1 1) .
  2. Оштро скретање удесно: Када Сензор 1 и Сензор 2 налазе се на белој површини, а остали сензори на црној површини, извршиће се оштро скретање удесно и робот ће оштро удесно. Ако кренемо од Сенсор1 и настави до Сенсор5, вредност коју ће дати сваки од сензора (1 1 0 0 0).
  3. Оштро скретање улево: Када Сензор 4 и Сензор 5 су на белој површини, а остали сензори на црној површини, извршиће се оштро скретање улево и робот ће оштро лево. Ако кренемо од Сенсор1 и настави до Сенсор5, вредност коју ће дати сваки од сензора (0 0 0 1 1) .
  4. Зауставити: Када се свих пет сензора нађу на црној површини, робот ће се зауставити и мотори ће се окренути ВАН. Ова тачка са пет црних површина биће близу судопера како би машина за прање судова могла да истовари плоче са робота за прање.

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

Трацк оф Робот

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

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

  1. Када је плоча Ардуино повезана са рачунаром, отворите „Контролна табла“ и кликните на „Хардвер и звук“. Затим кликните на „Уређаји и штампачи“. Пронађите име порта на који је повезана ваша Ардуино плоча. У мом случају је „ЦОМ14“, али на вашем рачунару може бити другачије.

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

  2. Сада отворите Ардуино ИДЕ. Из алата подесите Ардуино плочу на Ардуино / Генуино УНО.

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

  3. Из истог менија Алат подесите број порта који сте видели на контролној табли.

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

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

Код можете преузети са Ево

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

Код је врло једноставан. У наставку је укратко објашњено:

  1. На почетку кода иницијализују се пинови сензора, а заједно са тим иницијализују се и пинови за моторни погон Л298Н.
    инт енабле1пин = 10; // Иницијализација ПВМ пина за аналогни улаз за мотор 1 инт мотор1пин1 = 2; // Иницијализација позитивног пина за мотор 1 инт мотор1пин2 = 3; // Иницијализација негативног пина за мотор 1 инт енабле2пин = 11; // Иницијализација ПВМ пина за аналогни улаз за мотор 2 инт мотор2пин1 = 4; // Иницијализација позитивног пина за мотор 2 инт мотор2пин2 = 5; // Иницијализација негативног пина за мотор 2 инт С1 = 12; // Иницирање пина 12 за сензор 1 инт С2 = 9; // Иницирање пина 9 за сензор 2 инт С3 = 8; // Иницирање пина 8 за сензор 3 инт С4 = 7; // Иницирање пина 7 за сензор 4 инт С5 = 6; // Иницирање пина 6 за сензор 5
  2. воид сетуп () је функција која се користи за постављање пинова као УЛАЗ или ИЗЛАЗ. Такође поставља брзину преноса података у Ардуину. Брзина преноса је брзина којом плоча микроконтролера комуницира са осталим повезаним компонентама.
    {пинМоде (енабле1пин, ОУТПУТ); // Омогућавање ПВМ-а за мотор 1 пинМоде (енабле2пин, ОУТПУТ); // Омогућавање ПВМ-а за мотор 2 пинМоде (мотор1пин1, ОУТПУТ); // Постављање мотора1 пин1 као излазног пинМоде (мотор1пин2, ОУТПУТ); // Постављање мотора1 пин2 као излазног пинМоде (мотор2пин1, ОУТПУТ); // Постављање мотора2 пин1 као излазног пинМоде (мотор2пин2, ОУТПУТ); // Постављање мотора2 пин2 као излазног пинМоде (С1, ИНПУТ); // Постављање сензора1 као улазног режима пинМоде (С2, ИНПУТ); // Постављање сензора2 као улазног пинМоде (С3, ИНПУТ); // Постављање сензора3 као улазног режима пинМоде (С4, ИНПУТ); // Постављање сензора4 као улазног режима пинМоде (С5, ИНПУТ); // Постављање сензора5 као улаза Сериал.бегин (9600); // Подешавање брзине преноса}
  3. воид лооп () је функција која се изнова и изнова покреће у циклусу. У овој петљи дајемо упутства Ардуино УНО-у које операције треба извршити. Пуна брзина мотора је 255, а оба мотора имају различиту брзину. Дакле, ако желимо да робота померимо напред, скренимо десно итд. Морамо да прилагодимо брзину мотора. У коду смо користили аналогне пинове јер желимо да променимо брзину два мотора у различитим условима. Можете сами прилагодити брзину мотора.
    воид лооп () {иф (! (дигиталРеад (С1)) &&! (дигиталРеад (С2)) && (дигиталРеад (С3)) &&! (дигиталРеад (С4)) &&! (дигиталРеад (С5))) // Проследи даље ред {аналогВрите (енабле1пин, 61); // мотор 1 брзине аналогВрите (енабле2пин, 63); // мотор брзине 2 брзине дигиталВрите (мотор1пин1, ХИГХ); // мотор 1 пин 1 постављен на Хигх дигиталВрите (мотор1пин2, ЛОВ); // мотор 1 пин 2 постављен на Лов дигиталВрите (мотор2пин1, ХИГХ); // Мотор 2 пин 1 постављен на Хигх дигиталВрите (мотор2пин2, ЛОВ); // 2 пин 2 мотора постављен на Лов} иф (! (ДигиталРеад (С1)) &&! (ДигиталРеад (С2)) && (дигиталРеад (С3)) && (дигиталРеад (С4)) && (дигиталРеад (С5))) / / Оштро скретање удесно {аналогВрите (енабле1пин, 60); // мотор 1 брзине аналогВрите (енабле2пин, 80); // мотор брзине 2 брзине дигиталВрите (мотор1пин1, ХИГХ); // мотор 1 пин 1 постављен на Хигх дигиталВрите (мотор1пин2, ЛОВ); // мотор 1 пин 2 постављен на Лов дигиталВрите (мотор2пин1, ЛОВ); // Мотор 2 пин 1 постављен на Лов дигиталВрите (мотор2пин2, ЛОВ); // 2 пин 2 мотора постављен на Лов} иф ((дигиталРеад (С1)) && (дигиталРеад (С2)) && (дигиталРеад (С3)) &&! (ДигиталРеад (С4)) &&! (ДигиталРеад (С5))) / / Оштро скретање улево {аналогВрите (енабле1пин, 80); // мотор 1 брзине аналогВрите (енабле2пин, 65); // мотор 2 брзине дигиталВрите (мотор1пин1, ЛОВ); // Мотор 1 пин 1 постављен на Лов дигиталВрите (мотор1пин2, ЛОВ); // мотор 1 пин 2 постављен на Лов дигиталВрите (мотор2пин1, ХИГХ); // Мотор 2 пин 1 постављен на Хигх дигиталВрите (мотор2пин2, ЛОВ); // Мотор 2 пин 2 постављен на Лов} иф ((дигиталРеад (С1)) && (дигиталРеад (С2)) && (дигиталРеад (С3)) && (дигиталРеад (С4)) && (дигиталРеад (С5))) // стоп {аналогВрите (енабле1пин, 0); // мотор брзине 1 брзина аналогВрите (енабле2пин, 0); // мотор 2 брзине дигиталВрите (мотор1пин1, ЛОВ); // Мотор 1 пин 1 постављен на Лов дигиталВрите (мотор1пин2, ЛОВ); // мотор 1 пин 2 постављен на Лов дигиталВрите (мотор2пин1, ЛОВ); // Мотор 2 пин 1 постављен на Лов дигиталВрите (мотор2пин2, ЛОВ); // Мотор 2 пин 2 постављен на Лов}}

Апликације

  1. Индустријске примене : Ови роботи се могу користити као аутоматизовани носачи опреме у индустријама који замењују традиционалне транспортне траке.
  2. Домаће примене : Они се такође могу користити у кућама за кућне сврхе као што су чишћење пода, кухињски послови итд.
  3. Апликације за вођење : Ови роботи се могу користити на јавним местима као што су тржни центри, прехрамбени терени, музеји итд. За пружање смерница