Sadržaj:

[Arduino Robot] Kako napraviti robota za snimanje pokreta - Thumbs Robot - Servo motor - Izvorni kod: 26 koraka (sa slikama)
[Arduino Robot] Kako napraviti robota za snimanje pokreta - Thumbs Robot - Servo motor - Izvorni kod: 26 koraka (sa slikama)

Video: [Arduino Robot] Kako napraviti robota za snimanje pokreta - Thumbs Robot - Servo motor - Izvorni kod: 26 koraka (sa slikama)

Video: [Arduino Robot] Kako napraviti robota za snimanje pokreta - Thumbs Robot - Servo motor - Izvorni kod: 26 koraka (sa slikama)
Video: Can You Reattach a Severed Finger? 🤔 2024, Novembar
Anonim
Image
Image
[Arduino Robot] Kako napraviti robota za snimanje pokreta | Thumbs Robot | Servo motor | Izvorni kod
[Arduino Robot] Kako napraviti robota za snimanje pokreta | Thumbs Robot | Servo motor | Izvorni kod

Thumbs Robot. Koristio je potenciometar servo motora MG90S. Vrlo je zabavno i jednostavno! Kôd je vrlo jednostavan. To je samo oko 30 redova. Izgleda kao snimanje pokreta.

Molimo ostavite bilo kakvo pitanje ili povratnu informaciju!

[Uputstvo]

  • Izvorni kod
  • Datoteke za 3D štampanje

[O proizvođaču]

Youtube

Korak 1: ARDUINO DIJELOVI

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

Instalirajte Arduino IDE

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

Instalirajte upravljački program CH340 (za kinesku verziju)

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

DOWNLOAD - izvorni kod

  • https://github.com/happythingsmaker/ThumbsRobot
  • Kao što vidite postoji zip datoteka. Izdvojite sve datoteke i dvaput kliknite na datoteku izvornog koda.

Odaberite ploču / Procesor / Com port

  • Arduino Nano
  • ATmega328P (stari pokretač za pokretanje)

Uključite svoj arduino nano

Priključite USB kabel i pojavit će se novi priključak

Pronađite / odaberite novi port com

  • Kliknite na prikazani port i pritisnite gumb za prijenos
  • Pritisnite dugme za otpremanje

Korak 2: DIJELOVI ZA 3D ŠTAMPANJE

3D DIJELOVI ZA ŠTAMPANJE
3D DIJELOVI ZA ŠTAMPANJE

Preuzmite datoteke za 3d modeliranje iz Thingiverse -a

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

Odštampajte sve delove jedan po jedan

Korak 3: Dio kola

Circuit Part
Circuit Part

Koristite Arduino Nano ploču za proširenje. Budući da sam Arduino Nano nema mnogo pinova, morat ćete koristiti ploču za proširenje.

Kada pogledate ožičenje spojeno na motor, možete vidjeti tri boje. Žuta, crvena i smeđa. Smeđa mora biti povezana s G (uzemljenje).

U sljedećim koracima ćemo ga ponovo pomno pogledati.

Korak 4: DIO HARDVERA - Pripremite sve dijelove

DIO HARDVERA - Pripremite sve dijelove
DIO HARDVERA - Pripremite sve dijelove

[Dijelovi]

  • 1 x Arduino Nano
  • 1 x Arduino Nano ploča za proširenje
  • 6 x servo motori
  • 2 x Igračke za oči
  • 12 x vijci (2 * 6 mm)

[Alati]

  • 3D štampač (Anet A8)
  • Filament za 3D štampanje (PLA 1,75 mm)
  • Žičana štipaljka
  • Žičani stipper
  • Pištolj za topljenje ljepila
  • Odvijač (+)
  • Elektronska traka
  • Alati za lemljenje (Hakko)
  • Ruka za lemljenje
  • Električni odvijač

Korak 5: Promijenite 3 servo motora u senzor položaja

Sljedeći koraci pokazuju vam kako promijeniti servo motor u senzor položaja. u osnovi većina servo motora ima potenciometar ili koder za dobivanje vrijednosti kuta.

Koristit ćemo sam taj potenciometar. moramo otvoriti kućište, rastaviti ploču i ponovo je spojiti.

Korak 6: Odvijte 4 vijka na stražnjoj strani i otvorite prednje kućište

Odvijte 4 vijka na stražnjoj strani i otvorite prednje kućište
Odvijte 4 vijka na stražnjoj strani i otvorite prednje kućište
Odvijte 4 vijka na stražnjoj strani i otvorite prednje kućište
Odvijte 4 vijka na stražnjoj strani i otvorite prednje kućište

Trebat će vam mali odvijač jer su premali. Motor ima 3 dijela - prednji, karoserijski i stražnji.

Kada otvorite prednju stranu, vidjet ćete zupčanike. Zapravo, ovaj motor ne koristimo kao "motor". Dakle, teoretski zupčanici više nisu potrebni. No, mi ćemo koristiti dio njih tako da radni kut još uvijek ima ograničenje rotacije.

Korak 7: Uklonite 3. zupčanik

Uklonite 3. zupčanik
Uklonite 3. zupčanik
Uklonite 3. zupčanik
Uklonite 3. zupčanik
Uklonite 3. zupčanik
Uklonite 3. zupčanik

Potenciometar u servo motoru ima ograničenje ugla koje je oko 180 stepeni. Potenciometar ima svoj mehanizam ograničenja, ali je tako slab. Često se lako lomi. Kako bi ga zaštitio, zupčanik daje drugi mehanizam. Prva brzina ima plastični branik koji će biti u kontaktu s drugom brzinom.

Definitivno nam je potrebna prva brzina za cjelokupni okvir, druga brzina je potrebna za ograničenje. Dakle, ne možemo ih se riješiti. Umjesto njih možemo ukloniti treću brzinu.

Možda se pitate zašto moramo ukloniti zupčanik. Ova tri servo motora će se koristiti za dobivanje informacija o kutu. Ako u njima postoje zupčanici, kretanje će biti ukočeno. Dakle, moramo se riješiti jedne od njih.

Korak 8: Ponovno ožičenje / lemljenje

Ponovno ožičenje / lemljenje
Ponovno ožičenje / lemljenje

Odrežite žice koje su povezane s motorima.

Korak 9: Upotrijebite alat za lemljenje i odvojite ploču

Upotrijebite alat za lemljenje i odvojite ploču
Upotrijebite alat za lemljenje i odvojite ploču
Upotrijebite alat za lemljenje i odvojite ploču
Upotrijebite alat za lemljenje i odvojite ploču

Korak 10: Odrežite žicu i pripremite se za lemljenje

Odrežite žicu i pripremite se za lemljenje
Odrežite žicu i pripremite se za lemljenje
Odrežite žicu i pripremite se za lemljenje
Odrežite žicu i pripremite se za lemljenje

i stavite malo paste i stavite malo olova na kabel

Korak 11: Lemite ga

Solder It
Solder It
Solder It
Solder It
Solder It
Solder It
Solder It
Solder It

sa same lijeve strane crveno žuto i smeđe

Korak 12: Nanesite malo ljepila na njega

Stavite malo ljepila na njega
Stavite malo ljepila na njega
Stavite malo ljepila na njega
Stavite malo ljepila na njega

i oporavi zadnju stranu

Trebaju nam još 2 potenciometra. uradite isti posao za dva druga motora

Korak 13: Napravite prvi zajednički podrum

Napravite prvi zajednički podrum
Napravite prvi zajednički podrum
Napravite prvi zajednički podrum
Napravite prvi zajednički podrum
Napravite prvi zajednički podrum
Napravite prvi zajednički podrum

Za izradu ovog projekta koristio sam ploču za kuhanje. jeftino je i čvrsto za upotrebu. Da biste okvir pričvrstili na ploču, morat ćete koristiti vijke koji imaju oštar kraj. Pravi rupu i konac istovremeno.

Postoji 6 motora. 3 motora s lijeve strane su originalni motori. s druge strane, postoje 3 motora koji su modificirani prije koraka.

Korak 14: Napravite zglob za zavijanje

Napravite zglob za zavijanje
Napravite zglob za zavijanje
Napravite zglob za zavijanje
Napravite zglob za zavijanje

Morat ćete koristiti vijak M2 * 6 mm.

Korak 15: Sklopite zglob sa prvim motorom

Sastavite klinasti spoj s prvim motorom
Sastavite klinasti spoj s prvim motorom
Sastavite klinasti spoj s prvim motorom
Sastavite klinasti spoj s prvim motorom

Kao što vidite posljednju sliku, spoj ćete morati postaviti u vodoravnom smjeru. I lokacija bi trebala biti 90 stupnjeva i motora i potenciometra.

Drugim riječima, možete zakrenuti zglob za zakretanje za 90 stupnjeva u smjeru kazaljke na satu i suprotno od njega.

Korak 16: Sastavite Arduino Nano s Arduino Nano pločom za proširenje

Sastavite Arduino Nano s Arduino Nano pločom za proširenje
Sastavite Arduino Nano s Arduino Nano pločom za proširenje
Sastavite Arduino Nano s Arduino Nano pločom za proširenje
Sastavite Arduino Nano s Arduino Nano pločom za proširenje

Uverite se u smer. USB priključak bit će na istoj strani s DC priključkom.

Korak 17: Veza prvog sloja

Veza prvog sloja
Veza prvog sloja
Veza prvog sloja
Veza prvog sloja

Potenciometar je povezan s analognim 0 pinom Arduina. Morate ga ispravno priključiti. Ovaj Arduino Nano ima 8 -kanalni ADC (analogni digitalni pretvarač). U osnovi, potenciometar daje analogni nivo ili napon. Tu vrijednost volta možete očitati pomoću ADC pinova

S druge strane, servo motor je povezan s Digital 9 Arduina. Servo motorima se može upravljati pomoću PWM (Pulse Width Modulation). Arduino Nano ima 6 -kanalni PWM pin (pin 9, 10, 11, 3, 5 i 6). Dakle, možemo koristiti do 6 servo motora.

U ovom koraku izvorni kod izgleda ovako

#include

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

Korak 18: Sastavite drugi sloj

Sastavite drugi sloj
Sastavite drugi sloj
Sastavite drugi sloj
Sastavite drugi sloj
Sastavite drugi sloj
Sastavite drugi sloj
Sastavite drugi sloj
Sastavite drugi sloj

Drugi sloj je takođe jednostavan za izradu. Ono na što morate paziti je da ga postavite na ispravnu lokaciju kada priključite kabel u Arduino.

  • Lijevi servomotor povezan je s pinom 10
  • Desni potenciometar povezan je s A1

#include

Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); servo [0].priključak (9); servo [1].attach (10);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (mapa (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (mapa (tempADC [1], 0, 1023, 0, 180));}

Korak 19: Sastavite okvire trećeg sloja

Sastavite okvire trećeg sloja
Sastavite okvire trećeg sloja

Korak 20: Sastavite okvir s drugim motorom / potenciometrom

Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom
Sastavite okvir s drugim motorom / potenciometrom

Korak 21: Montirajte treći motor u zajednički okvir

Sastavite treći motor u zglobni okvir
Sastavite treći motor u zglobni okvir
Sastavite treći motor u zglobni okvir
Sastavite treći motor u zglobni okvir

Korak 22: Priključite kabel u Arduino

Priključite kabel u Arduino
Priključite kabel u Arduino
Priključite kabel u Arduino
Priključite kabel u Arduino
  • Treći motor spojen je s iglom 11
  • Treći potenciometar povezan je s A2

kod izgleda ovako

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

Korak 23: Sastavite okvir palca

Sastavite okvir za palce
Sastavite okvir za palce
Sastavite okvir za palce
Sastavite okvir za palce

Korak 24: Testirajte i podesite kut

Testirajte i podesite ugao
Testirajte i podesite ugao
Testirajte i podesite ugao
Testirajte i podesite ugao
Testirajte i podesite ugao
Testirajte i podesite ugao

Stavite USB kabel u bilo koji izvor napajanja i robot će se uskoro uključiti. Ugao može biti malo drugačiji. Podesite ugao jedan po jedan.

Korak 25: Još jedan robot?

Još jedan robot?
Još jedan robot?
Još jedan robot?
Još jedan robot?

Ako želite napraviti još jednog robota, možete to učiniti. Uključite servo u 3, 5 i 6.

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

Korak 26: Gotovo

Gotovo!
Gotovo!
Gotovo!
Gotovo!
Gotovo!
Gotovo!

Ako imate bilo kakvih pitanja, slobodno ih ostavite:)

Takmičenje za mikrokontroler
Takmičenje za mikrokontroler
Takmičenje za mikrokontroler
Takmičenje za mikrokontroler

Drugoplasirani na takmičenju mikrokontroler

Preporučuje se: