Spisu treści:

Ramię robota oparte na mikrokontrolerze PIC: 6 kroków (ze zdjęciami)
Ramię robota oparte na mikrokontrolerze PIC: 6 kroków (ze zdjęciami)

Wideo: Ramię robota oparte na mikrokontrolerze PIC: 6 kroków (ze zdjęciami)

Wideo: Ramię robota oparte na mikrokontrolerze PIC: 6 kroków (ze zdjęciami)
Wideo: Ups. 2024, Listopad
Anonim
Ramię robota oparte na mikrokontrolerze PIC
Ramię robota oparte na mikrokontrolerze PIC

Od linii montażowej przemysłu samochodowego po roboty telechirurgiczne w kosmosie, ramiona robotów można znaleźć wszędzie. Mechanizmy tych robotów są podobne do człowieka, którego można zaprogramować do podobnej funkcji i zwiększonych możliwości. Mogą być używane do wykonywania powtarzających się czynności szybciej i dokładniej niż ludzie lub mogą być używane w trudnych warunkach bez narażania ludzkiego życia. Zbudowaliśmy już ramię robota Record and Play przy użyciu Arduino, które można przeszkolić do wykonywania określonego zadania i sprawić, by powtarzało się w nieskończoność.

W tym samouczku użyjemy standardowego mikrokontrolera PIC16F877A 8-bitowego do sterowania tym samym ramieniem robota za pomocą potencjometrów. Wyzwaniem w tym projekcie jest to, że PIC16F877A ma tylko dwa piny obsługujące PWN, ale musimy kontrolować około 5 serwosilników dla naszego robota, który wymaga 5 indywidualnych pinów PWM. Musimy więc wykorzystać piny GPIO i generować sygnały PWM na pinach PIC GPIO za pomocą przerwań timera. Teraz oczywiście moglibyśmy uaktualnić do lepszego mikrokontrolera lub użyć układu scalonego z demultiplekserem, aby znacznie ułatwić tutaj sprawę. Mimo to warto spróbować w tym projekcie wypróbować doświadczenie edukacyjne.

Mechaniczna struktura ramienia robota, którego używam w tym projekcie, została w całości wydrukowana w 3D w moim poprzednim projekcie; Kompletne pliki projektowe i procedurę montażu można znaleźć tutaj. Alternatywnie, jeśli nie masz drukarki 3D, możesz również zbudować proste ramię robota, używając kartonów, jak pokazano w linku. Zakładając, że w jakiś sposób opanowałeś swoje ramię robota, przejdźmy do projektu.

Krok 1: Schemat obwodu

Schemat obwodu
Schemat obwodu

Poniżej przedstawiono kompletny schemat obwodu tego ramienia robota opartego na mikrokontrolerze PIC. Schematy zostały narysowane za pomocą EasyEDA.

Schemat obwodu jest dość prosty; cały projekt zasilany jest z zasilacza 12V. To 12V jest następnie konwertowane na +5V przy użyciu dwóch regulatorów napięcia 7805. Jeden jest oznaczony jako +5V, a drugi jako +5V(2). Powodem posiadania dwóch regulatorów jest to, że gdy serwo obraca się, pobiera duży prąd, co powoduje spadek napięcia. Ten spadek napięcia zmusza PIC do ponownego uruchomienia się, dlatego nie możemy obsługiwać zarówno PIC, jak i serwomotorów na tej samej szynie +5V. Tak więc ten oznaczony jako +5V służy do zasilania mikrokontrolera PIC, wyświetlacza LCD i potencjometrów, a oddzielne wyjście regulatora, oznaczone jako +5V(2), służy do zasilania serwosilników.

Pięć pinów wyjściowych potencjometrów, które zapewniają zmienne napięcie od 0 V do 5 V, jest podłączonych do pinów analogowych An0 do AN4 PIC. Ponieważ planujemy użyć timerów do generowania PWM, serwomotory można podłączyć do dowolnego pinu GPIO. Do serwosilników wybrałem piny od RD2 do RD6, ale może to być dowolne GPIO.

Ponieważ program wymaga dużo debugowania, wyświetlacz LCD 16x2 jest również podłączony do portu B PIC. Spowoduje to wyświetlenie cyklu pracy serwonapędów, które są sterowane. Poza tym mam też rozbudowane połączenia dla wszystkich pinów GPIO i analogowych, na wypadek gdyby w przyszłości trzeba było połączyć jakieś czujniki. Na koniec podłączyłem również pin programatora H1, aby bezpośrednio zaprogramować PIC za pomocą pickit3 za pomocą opcji programowania ICSP.

Krok 2: Generowanie sygnałów PWM na pinach GPIO do sterowania silnikiem serwo

"loading="leniwy">

Zalecana: