Obsah:

[Robot Arduino] Ako vytvoriť robota zachytávajúceho pohyb - Palcový robot - Servomotor - Zdrojový kód: 26 krokov (s obrázkami)
[Robot Arduino] Ako vytvoriť robota zachytávajúceho pohyb - Palcový robot - Servomotor - Zdrojový kód: 26 krokov (s obrázkami)

Video: [Robot Arduino] Ako vytvoriť robota zachytávajúceho pohyb - Palcový robot - Servomotor - Zdrojový kód: 26 krokov (s obrázkami)

Video: [Robot Arduino] Ako vytvoriť robota zachytávajúceho pohyb - Palcový robot - Servomotor - Zdrojový kód: 26 krokov (s obrázkami)
Video: Как использовать до 10 кнопочных переключателей с 1 входным контактом Arduino ANPB-V1 2024, November
Anonim
Image
Image
[Robot Arduino] Ako vytvoriť robota zachytávajúceho pohyb | Palcový robot | Servomotor | Zdrojový kód
[Robot Arduino] Ako vytvoriť robota zachytávajúceho pohyb | Palcový robot | Servomotor | Zdrojový kód

Palcový robot. Použil sa potenciometer servomotora MG90S. Je to veľmi zábavné a ľahké! Kód je veľmi jednoduchý. Je to len asi 30 riadkov. Vyzerá to ako zachytenie pohybu.

Zanechajte akúkoľvek otázku alebo spätnú väzbu!

[Pokyn]

  • Zdrojový kód
  • Súbory 3D tlače

[O výrobcovi]

Youtube

Krok 1: ARDUINO PARTS

ARDUINO PARTS
ARDUINO PARTS
ARDUINO PARTS
ARDUINO PARTS
ARDUINO PARTS
ARDUINO PARTS

Nainštalujte Arduino IDE

https://www.arduino.cc/en/Main/Software

Nainštalujte ovládač CH340 (pre čínsku verziu)

https://www.wch.cn/download/CH341SER_ZIP.html

DOWNLOAD - zdrojový kód

  • https://github.com/happythingsmaker/ThumbsRobot
  • Ako vidíte, existuje súbor zip. Extrahujte všetok súbor a dvakrát kliknite na súbor zdrojového kódu.

Vyberte port doska / procesor / Com

  • Arduino Nano
  • ATmega328P (starý bootloader)

Pripojte arduino nano

Pripojte kábel USB a zobrazí sa nový port

Nájdite / vyberte vznikajúci port

  • Kliknite na zobrazený port a kliknite na tlačidlo nahrávania
  • Kliknite na tlačidlo nahrávania

Krok 2: 3D TLAČOVÉ ČASTI

3D TLAČOVÉ ČASTI
3D TLAČOVÉ ČASTI

Stiahnite si súbory 3D modelovania z Thingiverse

https://www.thingiverse.com/thing:2844993

Vytlačte všetky diely jeden po druhom

Krok 3: Časť obvodu

Obvodová časť
Obvodová časť

Použite rozširujúcu dosku Arduino Nano. Pretože samotný Arduino Nano nemá veľa pinov, budete musieť použiť rozširujúcu dosku.

Keď sa pozriete na kabeláž pripojenú k motoru, vidíte tri farby. Žltá, červená a hnedá. Hnedý musí byť spojený s G (zem).

V nasledujúcich krokoch sa na to znova pozrieme zblízka.

Krok 4: HARDWAROVÁ ČASŤ - pripravte si všetky diely

HARDWAROVÁ ČASŤ - pripravte si všetky diely
HARDWAROVÁ ČASŤ - pripravte si všetky diely

[Diely]

  • 1 x Arduino Nano
  • 1 x rozširujúca doska Arduino Nano
  • 6 x servomotory
  • 2 x Hračkové očné gule
  • 12 x skrutkové skrutky (2 x 6 mm)

[Nástroje]

  • 3D tlačiareň (Anet A8)
  • Vlákno pre 3D tlač (PLA 1,75 mm)
  • Drôtený kliešť
  • Stripper
  • Tavná lepiaca pištoľ
  • Skrutkovač (+)
  • Elektronická páska
  • Spájkovacie nástroje (Hakko)
  • Ručná spájkovačka
  • Elektrický skrutkovač

Krok 5: Upravte 3 servomotory na snímač polohy

Nasledujúce kroky vám ukážu, ako upraviť servomotor na snímač polohy. v zásade väčšina servomotorov má potenciometer alebo kodér na získanie hodnoty uhla.

Použijeme samotný potenciometer. musíme otvoriť puzdro, rozobrať dosku a znova ho zapojiť.

Krok 6: Odskrutkujte 4 skrutku na zadnej strane a otvorte predné puzdro

Odskrutkujte 4 skrutky na zadnej strane a otvorte predné puzdro
Odskrutkujte 4 skrutky na zadnej strane a otvorte predné puzdro
Odskrutkujte 4 skrutky na zadnej strane a otvorte predné puzdro
Odskrutkujte 4 skrutky na zadnej strane a otvorte predné puzdro

Budete potrebovať malý skrutkovač, pretože sú príliš malé. Motor má 3 časti - prednú, telesnú a zadnú.

Keď otvoríte prednú stranu, uvidíte prevody. V skutočnosti tento motor nepoužívame ako „motor“. Prevodové stupne už teoreticky nie sú potrebné. Ale použijeme ich časť, aby operačný uhol mal stále obmedzenie otáčania.

Krok 7: Odstráňte 3. prevodový stupeň

Vyberte 3. prevodový stupeň
Vyberte 3. prevodový stupeň
Vyberte 3. prevodový stupeň
Vyberte 3. prevodový stupeň
Vyberte 3. prevodový stupeň
Vyberte 3. prevodový stupeň

Potenciometer v servomotore má uhlové obmedzenie okolo 180 stupňov. Potenciometer má svoj vlastný obmedzovací mechanizmus, ale je taký slabý. Ľahko sa často zlomí. Na ochranu je prevodovka vybavená iným mechanizmom. Prvý prevodový stupeň má plastový nárazník, ktorý bude v kontakte s druhým prevodovým stupňom.

Prvý prevodový stupeň určite potrebujeme na celkový rám, druhý prevodový stupeň je potrebný na obmedzenie. Nemôžeme sa ich teda zbaviť. Namiesto nich môžeme odstrániť tretí prevodový stupeň.

Môžete sa čudovať, prečo musíme odstrániť prevodový stupeň. Tieto tri servomotory budú použité na získanie informácií o uhle. Ak sú v nich prevody, pohyb bude tuhý. Preto sa od nich musíme zbaviť jedného zariadenia.

Krok 8: Nové zapojenie / spájkovanie

Prepojenie / spájkovanie
Prepojenie / spájkovanie

Odrežte vodiče, ktoré sú spojené s motormi.

Krok 9: Použite spájkovací nástroj a odpojte dosku

Použite spájkovací nástroj a odpojte dosku
Použite spájkovací nástroj a odpojte dosku
Použite spájkovací nástroj a odpojte dosku
Použite spájkovací nástroj a odpojte dosku

Krok 10: Odstrihnite drôt a pripravte sa na spájkovanie

Odrežte drôt a pripravte sa na spájkovanie
Odrežte drôt a pripravte sa na spájkovanie
Odrežte drôt a pripravte sa na spájkovanie
Odrežte drôt a pripravte sa na spájkovanie

a dajte trochu pasty a na kábel naneste olovo

Krok 11: Spájkujte ho

Spájkujte to
Spájkujte to
Spájkujte to
Spájkujte to
Spájkujte to
Spájkujte to
Spájkujte to
Spájkujte to

úplne zľava červená žltá a hnedá

Krok 12: Naneste na ňu trochu lepidla

Naneste na ňu trochu lepidla
Naneste na ňu trochu lepidla
Naneste na ňu trochu lepidla
Naneste na ňu trochu lepidla

a vráťte jej zadnú stranu

Potrebujeme ďalšie 2 potenciometre. vykonajte rovnakú prácu pre ďalšie dva motory

Krok 13: Vytvorte prvý spoločný suterén

Urobte prvý spoločný suterén
Urobte prvý spoločný suterén
Urobte prvý spoločný suterén
Urobte prvý spoločný suterén
Urobte prvý spoločný suterén
Urobte prvý spoločný suterén

Na výrobu tohto projektu som použil varnú dosku. je lacné a pevné ho používať. Na pripevnenie rámu k doske budete potrebovať skrutky s ostrým koncom. Vytvára dieru a závit súčasne.

K dispozícii je 6 motorov. 3 motory na ľavej strane sú pôvodné motory. na druhej strane existujú tri motory, ktoré sú pred krokom upravené.

Krok 14: Vytvorte vybočovací spoj

Vytvorte vybočovací spoj
Vytvorte vybočovací spoj
Vytvorte vybočovací spoj
Vytvorte vybočovací spoj

Budete musieť použiť skrutku M2 * 6 mm.

Krok 15: Zostavte vybočovací kĺb s prvým motorom

Zostavte vybočovací kĺb s prvým motorom
Zostavte vybočovací kĺb s prvým motorom
Zostavte vybočovací kĺb s prvým motorom
Zostavte vybočovací kĺb s prvým motorom

Ako vidíte posledný obrázok, budete musieť dať spoj v horizontálnom smere. Umiestnenie by malo byť 90 stupňov motora aj potenciometra.

Inými slovami, z tohto miesta môžete otočiť kĺb o 90 stupňov v smere hodinových ručičiek a proti smeru hodinových ručičiek.

Krok 16: Zostavte Arduino Nano s rozširujúcou doskou Arduino Nano

Zostavte Arduino Nano s rozširujúcou doskou Arduino Nano
Zostavte Arduino Nano s rozširujúcou doskou Arduino Nano
Zostavte Arduino Nano s rozširujúcou doskou Arduino Nano
Zostavte Arduino Nano s rozširujúcou doskou Arduino Nano

Uistite sa, že smer. Port USB bude rovnaký ako konektor DC.

Krok 17: Pripojenie prvej vrstvy

Pripojenie prvej vrstvy
Pripojenie prvej vrstvy
Pripojenie prvej vrstvy
Pripojenie prvej vrstvy

Potenciometer je spojený s analógovým 0 pinom Arduina. Musíte ho zapojiť správne. Toto Arduino Nano má 8 kanálový ADC (analógový digitálny prevodník). Potenciometer v zásade poskytuje analógovú úroveň alebo kolísanie. Túto voltovú hodnotu môžete prečítať pomocou pinov ADC

Na druhej strane je servomotor spojený s digitálnym 9 Arduino. Servomotory je možné ovládať pomocou PWM (Pulse Width Modulation). Arduino Nano má 6 -kanálový PWM pin (pin 9, 10, 11, 3, 5 a 6). Môžeme teda použiť až 6 servomotorov.

V tomto kroku zdrojový kód vyzerá takto

#zahrnúť

Servo servo [6]; neplatné nastavenie () {pinMode (A0, INPUT); servo [0].attach (9);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].pis (mapa (tempADC [0], 0, 1023, 0, 180));}

Krok 18: Zostavte druhú vrstvu

Zostavte druhú vrstvu
Zostavte druhú vrstvu
Zostavte druhú vrstvu
Zostavte druhú vrstvu
Zostavte druhú vrstvu
Zostavte druhú vrstvu
Zostavte druhú vrstvu
Zostavte druhú vrstvu

Druhá vrstva sa tiež ľahko vyrába. Na čo si musíte dávať pozor, umiestnite ho na správne miesto, keď zapojíte kábel do Arduina.

  • Ľavý servomotor je spojený s kolíkom 10
  • Pravý potenciometer je spojený s A1

#zahrnúť

Servo servo [6]; neplatné nastavenie () {pinMode (A0, INPUT); pinMode (A1, VSTUP); servo [0].attach (9); servo [1].attach (10);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].pis (mapa (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].pis (mapa (tempADC [1], 0, 1023, 0, 180));}

Krok 19: Zostavte rámy 3. vrstvy

Zostavte rámy tretej vrstvy
Zostavte rámy tretej vrstvy

Krok 20: Zostavte rám s druhým motorom / potenciometrom

Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra
Zostavte rám pomocou druhého motora / potenciometra

Krok 21: Namontujte tretí motor do kĺbového rámu

Namontujte 3. motor do kĺbového rámu
Namontujte 3. motor do kĺbového rámu
Namontujte 3. motor do kĺbového rámu
Namontujte 3. motor do kĺbového rámu

Krok 22: Pripojte kábel k Arduinu

Pripojte kábel k Arduinu
Pripojte kábel k Arduinu
Pripojte kábel k Arduinu
Pripojte kábel k Arduinu
  • Tretí motor je spojený s kolíkom 11
  • Tretí potenciometer je spojený s A2

kód vyzerá takto

#include Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, VSTUP); pinMode (A2, VSTUP); servo [0].attach (9); servo [1].attach (10); servo [2].attach (11);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].pis (mapa (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].pis (mapa (tempADC [1], 0, 1023, 0, 180)); tempADC [2] = analogRead (A2); servo [2].pis (mapa (tempADC [2], 0, 1023, 0, 180));}

Krok 23: Zostavte rám palca

Zostavte rám palca
Zostavte rám palca
Zostavte rám palca
Zostavte rám palca

Krok 24: Otestujte a upravte uhol

Otestujte a upravte uhol
Otestujte a upravte uhol
Otestujte a upravte uhol
Otestujte a upravte uhol
Otestujte a upravte uhol
Otestujte a upravte uhol

Pripojte kábel USB k akémukoľvek zdroju napájania a robot sa čoskoro zapne. Uhol sa môže mierne líšiť. Upravte uhol jeden po druhom.

Krok 25: Ešte jeden robot?

Ešte jeden robot?
Ešte jeden robot?
Ešte jeden robot?
Ešte jeden robot?

Ak chcete urobiť ešte jedného robota, môžete to urobiť. Zapojte servá do 3, 5 a 6.

#include Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, VSTUP); pinMode (A2, VSTUP); servo [0].attach (9); servo [1].attach (10); servo [2].attach (11); servo [3].attach (3); servo [4].attach (5); servo [5].attach (6);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].pis (mapa (tempADC [0], 0, 1023, 0, 180)); servo [3].pis (mapa (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].pis (mapa (tempADC [1], 0, 1023, 0, 180)); servo [4].pis (mapa (tempADC [1], 0, 1023, 0, 180)); tempADC [2] = analogRead (A2); servo [2].pis (mapa (tempADC [2], 0, 1023, 0, 180)); servo [5].pis (mapa (tempADC [2], 0, 1023, 0, 180));}

Krok 26: Hotovo

Hotový!
Hotový!
Hotový!
Hotový!
Hotový!
Hotový!

Ak máte akékoľvek otázky, pokojne ich nechajte:)

Súťaž o mikrokontrolér
Súťaž o mikrokontrolér
Súťaž o mikrokontrolér
Súťaž o mikrokontrolér

Druhé miesto v súťaži o mikrokontrolér

Odporúča: