Съдържание:

PIC микроконтролерна роботизирана ръка: 6 стъпки (със снимки)
PIC микроконтролерна роботизирана ръка: 6 стъпки (със снимки)

Видео: PIC микроконтролерна роботизирана ръка: 6 стъпки (със снимки)

Видео: PIC микроконтролерна роботизирана ръка: 6 стъпки (със снимки)
Видео: Uran-6 Mine Clearing Robot in Action: Watch How This Amazing Machine Work! 2024, Ноември
Anonim
Роботизирана ръка на базата на микроконтролер PIC
Роботизирана ръка на базата на микроконтролер PIC

Роботизираните оръжия могат да бъдат намерени навсякъде, от монтажната линия на автомобилната промишленост до роботите за телехирургия в космоса. Механизмите на тези роботи са подобни на хората, които могат да бъдат програмирани за подобна функция и увеличени възможности. Те могат да се използват за извършване на повтарящи се действия по -бързо и точно от хората или могат да се използват в сурова среда, без да рискуват човешкия живот. Вече сме създали роботизирана ръка за запис и възпроизвеждане, използвайки Arduino, която може да бъде обучена да изпълнява определена задача и да бъде накарана да се повтаря завинаги.

В този урок ще използваме индустриалния стандарт PIC16F877A 8-битов микроконтролер за управление на същото роботизирано рамо с потенциометри. Предизвикателството с този проект е, че PIC16F877A има само два пина с възможност за PWN, но ние трябва да контролираме около 5 серво мотора за нашия робот, който изисква 5 отделни PWM щифта. Така че трябва да използваме GPIO пиновете и да генерираме PWM сигнали на PIC GPIO щифтове, използвайки прекъсвания на таймера. Сега, разбира се, бихме могли да надстроим до по-добър микроконтролер или да използваме демултиплексорна интегрална схема, за да направим нещата много по-лесни тук. Но все пак си струва да опитате този проект за ученето.

Механичната структура на роботизираната ръка, която използвам в този проект, беше изцяло 3D отпечатана за предишния ми проект; можете да намерите пълните дизайнерски файлове и процедурата за сглобяване тук. Като алтернатива, ако нямате 3D принтер, можете също така да създадете обикновена роботизирана ръка, използвайки картони, както е показано в връзката. Ако приемем, че по някакъв начин сте се хванали за вашата роботизирана ръка, нека пристъпим към проекта.

Стъпка 1: Електрическа схема

Електрическа схема
Електрическа схема

Пълната електрическа схема за тази роботизирана ръка на базата на PIC микроконтролер е показана по -долу. Схемите са начертани с помощта на EasyEDA.

Схемата е доста проста; целият проект се захранва от 12V адаптер. След това тези 12V се преобразуват в +5V с помощта на два 7805 регулатора на напрежението. Единият е означен като +5V, а другият е означен като +5V (2). Причината да има два регулатора е, че когато сервото се върти, той привлича много ток, което създава спад на напрежението. Този спад на напрежението принуждава PIC да се рестартира, следователно не можем да работим както с PIC, така и със серво моторите на една и съща релса +5V. Така че този с етикет +5V се използва за захранване на PIC микроконтролера, LCD и потенциометри, а отделен регулаторен изход, обозначен като +5V (2), се използва за захранване на серво моторите.

Петте изходни щифта на потенциометрите, които осигуряват променливо напрежение от 0V до 5V, са свързани към аналоговите щифтове An0 до AN4 на PIC. Тъй като планираме да използваме таймери за генериране на PWM, серво моторите могат да бъдат свързани към всеки GPIO щифт. Избрах щифтове от RD2 до RD6 за серводвигателите, но това може да бъде всеки GPIO по ваш избор.

Тъй като програмата включва много отстраняване на грешки, 16x2 LCD дисплей също е свързан към portB на PIC. Това ще покаже работния цикъл на серво моторите, които се контролират. Отделно от това имам и разширени връзки за всички GPIO и аналогови пинове, за всеки случай, ако в бъдеще трябва да се свържат някакви сензори. И накрая, също така съм свързал програмния щифт H1 за директно програмиране на PIC с pickit3, използвайки опцията за програмиране на ICSP.

Стъпка 2: Генериране на PWM сигнали на GPIO Pin за управление на серво мотора

"loading =" мързелив ">

Препоръчано: