Indholdsfortegnelse:

[Arduino Robot] Sådan laver du en Motion Capture Robot - Thumbs Robot - Servomotor - Kildekode: 26 trin (med billeder)
[Arduino Robot] Sådan laver du en Motion Capture Robot - Thumbs Robot - Servomotor - Kildekode: 26 trin (med billeder)

Video: [Arduino Robot] Sådan laver du en Motion Capture Robot - Thumbs Robot - Servomotor - Kildekode: 26 trin (med billeder)

Video: [Arduino Robot] Sådan laver du en Motion Capture Robot - Thumbs Robot - Servomotor - Kildekode: 26 trin (med billeder)
Video: La vérité derrière le personnage de Farine de Blé 2024, November
Anonim
Image
Image
[Arduino Robot] Sådan laver du en Motion Capture Robot | Thumbs Robot | Servomotor | Kildekode
[Arduino Robot] Sådan laver du en Motion Capture Robot | Thumbs Robot | Servomotor | Kildekode

Tommelfinger Robot. Brugt et potentiometer af MG90S servomotor. Det er meget sjovt og let! Koden er meget enkel. Det er kun omkring 30 linjer. Det ligner en motion-capture.

Efterlad et spørgsmål eller feedback!

[Instruktion]

  • Kildekode
  • 3D -udskrivningsfiler

[Om skaberen]

Youtube

Trin 1: ARDUINO DELE

ARDUINO DELE
ARDUINO DELE
ARDUINO DELE
ARDUINO DELE
ARDUINO DELE
ARDUINO DELE

Installer Arduino IDE

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

Installer CH340 -driver (til kinesisk version)

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

DOWNLOAD - kildekode

  • https://github.com/happythingsmaker/ThumbsRobot
  • Som du kan se er der en zip -fil. Udpak alle filer, og dobbeltklik på kildekodefilen.

Vælg board / Processor / Com port

  • Arduino Nano
  • ATmega328P (gammel bootloader)

Tilslut din arduino nano

Tilslut USB -kablet, og en ny port vises

Find / vælg den nye com -port

  • Klik på den viste port, og tryk på upload -knappen
  • Tryk på upload -knappen

Trin 2: 3D -UDSKRIVNINGSDELE

3D PRINTING DELE
3D PRINTING DELE

Download 3d modelleringsfiler fra Thingiverse

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

Udskriv alle dele en efter en

Trin 3: Kredsløbsdel

Kredsløbsdel
Kredsløbsdel

Brug Arduino Nano Expansion Board. Fordi Arduino Nano i sig selv ikke har mange stifter, skal du bruge et udvidelseskort.

Når du ser på ledningerne forbundet til motoren, kan du se tre farver. Gul, rød og brun. Brun skal forbindes med G (jord).

I de følgende trin vil vi se nærmere på det igen.

Trin 4: HARDWAREDEL - Forbered alle delene

HARDWARE DEL - Forbered alle delene
HARDWARE DEL - Forbered alle delene

[Dele]

  • 1 x Arduino Nano
  • 1 x Arduino Nano Expansion Board
  • 6 x servomotorer
  • 2 x legetøjsøjlebolde
  • 12 x skruebolte (2 * 6 mm)

[Værktøjer]

  • 3d -printer (Anet A8)
  • Filament til 3d print (PLA 1,75 mm)
  • Wire Nipper
  • Wire Stipper
  • Smeltelimepistol
  • Skruetrækker (+)
  • Elektronisk bånd
  • Loddeværktøjer (Hakko)
  • Loddehånd
  • Elektrisk skruetrækker

Trin 5: Rediger 3 servomotorer til positionssensor

Følgende trin viser dig, hvordan du ændrer en servomotor til positionssensor. dybest set har de fleste servomotorer et potentiometer eller en encoder til at få en vinkelværdi.

Vi vil selv bruge det potentiometer. vi har brug for at åbne sagen, adskille brættet og tilslutte det igen.

Trin 6: Skru 4 bolte af på bagsiden, og åbn frontkassen

Skru 4 bolte af på bagsiden, og åbn frontkassen
Skru 4 bolte af på bagsiden, og åbn frontkassen
Skru 4 bolte af på bagsiden, og åbn frontkassen
Skru 4 bolte af på bagsiden, og åbn frontkassen

Du skal bruge en lille skruetrækker, fordi de er for små. Motoren har 3 dele - for, krop og bag.

Når du åbner forsiden, vil du se gearene. Faktisk bruger vi ikke denne motor som "motor". Så gearene er ikke længere nødvendige teoretisk. Men vi vil bruge en del af dem, så operationsvinklen stadig har begrænsning af rotation.

Trin 7: Fjern 3. gear

Fjern 3. gear
Fjern 3. gear
Fjern 3. gear
Fjern 3. gear
Fjern 3. gear
Fjern 3. gear

Potentiometeret i servomotoren har en vinkelbegrænsning, som er omkring 180 grader. Potentiometeret har sin egen begrænsningsmekanisme, men det er så svagt. Det er let brudt ofte. For at beskytte det giver gearet en anden mekanisme. Det første gear har en kofanger i plast, som kommer i kontakt med andet gear.

Vi har helt sikkert brug for det første gear til den samlede ramme, det andet gear er nødvendigt for begrænsningen. Så vi kan ikke slippe af med dem. I stedet for dem kan vi fjerne det tredje gear.

Du kan undre dig over, hvorfor vi skal fjerne et gear. Disse tre servomotorer bruges til at få vinkelinformation. Hvis der er gear i dem, vil bevægelsen være stiv. Så vi skal slippe af med et gear fra dem.

Trin 8: Re-wiring / lodning

Re-ledninger / lodning
Re-ledninger / lodning

Klip de ledninger, der er forbundet med motorerne.

Trin 9: Brug et loddeværktøj, og fjern brættet

Brug et loddeværktøj, og fjern tavlen
Brug et loddeværktøj, og fjern tavlen
Brug et loddeværktøj, og fjern tavlen
Brug et loddeværktøj, og fjern tavlen

Trin 10: Klip en ledning og forbered dig på lodning

Klip en ledning og forbered dig på lodning
Klip en ledning og forbered dig på lodning
Klip en ledning og forbered dig på lodning
Klip en ledning og forbered dig på lodning

og læg lidt pasta og sæt noget bly på kablet

Trin 11: Lod det

Lod det
Lod det
Lod det
Lod det
Lod det
Lod det
Lod det
Lod det

fra meget venstre side rød gul og brun

Trin 12: Læg lidt lim på den

Læg lidt lim på det
Læg lidt lim på det
Læg lidt lim på det
Læg lidt lim på det

og genoprette sin bagside

Vi har brug for yderligere 2 potentiometre. gøre det samme arbejde for to andre motorer

Trin 13: Lav den første fælles kælder

Lav den første fælles kælder
Lav den første fælles kælder
Lav den første fælles kælder
Lav den første fælles kælder
Lav den første fælles kælder
Lav den første fælles kælder

Jeg brugte et madlavningsbræt til at lave dette projekt. det er billigt og fast at bruge det. For at fastgøre rammen på brættet skal du bruge skruer med en skarp ende. Det laver hul og tråd på samme tid.

Der er 6 motorer. 3 motorer på venstre side er de originale motorer. på den anden side er der 3 motorer, der modificeres før trin.

Trin 14: Lav Yaw Joint

Lav Yaw Joint
Lav Yaw Joint
Lav Yaw Joint
Lav Yaw Joint

Du skal bruge M2 * 6 mm skruebolt.

Trin 15: Saml Yaw Joint med den første motor

Saml drejeled med den første motor
Saml drejeled med den første motor
Saml drejeled med den første motor
Saml drejeled med den første motor

Som du kan se det sidste billede, skal du sætte leddet i vandret retning. Og placeringen skal være 90 grader af både motor og potentiometer.

Med andre ord kan du rotere disse gaffelforbindelser 90 grader med uret og mod uret fra det sted.

Trin 16: Saml Arduino Nano med Arduino Nano Expansion Board

Saml Arduino Nano med Arduino Nano Expansion Board
Saml Arduino Nano med Arduino Nano Expansion Board
Saml Arduino Nano med Arduino Nano Expansion Board
Saml Arduino Nano med Arduino Nano Expansion Board

Sørg for retningen. USB -porten vil være den samme side med DC -stik.

Trin 17: Den første lagforbindelse

Den første lagforbindelse
Den første lagforbindelse
Den første lagforbindelse
Den første lagforbindelse

Potentiometeret er forbundet med Analog 0 pin på Arduino. Du skal tilslutte den korrekt. Denne Arduino Nano har 8 kanals ADC (Analog Digital Converter). Grundlæggende giver potentiometeret analogt niveau eller volatage. Du kan aflæse denne volt -værdi ved hjælp af ADC -ben

På den anden side er servomotoren forbundet med Digital 9 i Arduino. Servomotorer kan styres ved hjælp af PWM (Pulse Width Modulation). Arduino Nano har 6 kanals PWM pin (pin 9, 10, 11, 3, 5 og 6). Så vi kan bruge op til 6 servomotorer.

I dette trin ser kildekoden sådan ud

#omfatte

Servoservo [6]; ugyldig opsætning () {pinMode (A0, INPUT); servo [0].attach (9);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (kort (tempADC [0], 0, 1023, 0, 180));}

Trin 18: Saml det andet lag

Saml det andet lag
Saml det andet lag
Saml det andet lag
Saml det andet lag
Saml det andet lag
Saml det andet lag
Saml det andet lag
Saml det andet lag

Det andet lag er også enkelt at lave. Det, du skal være forsigtig med, er at sætte det på den korrekte placering, når du tilslutter kablet til Arduino.

  • Den venstre servomotor er forbundet med pin 10
  • Det højre potentiometer er forbundet med A1

#omfatte

Servoservo [6]; ugyldig opsætning () {pinMode (A0, INPUT); pinMode (A1, INPUT); servo [0]. vedhæft (9); servo [1].attach (10);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0]. skrive (kort (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (kort (tempADC [1], 0, 1023, 0, 180));}

Trin 19: Saml de 3. lags rammer

Saml de 3. lags rammer
Saml de 3. lags rammer

Trin 20: Saml rammen med 2. motor / potentiometer

Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer
Saml rammen med 2. motor / potentiometer

Trin 21: Saml den 3. motor i ledrammen

Saml den 3. motor i ledrammen
Saml den 3. motor i ledrammen
Saml den 3. motor i ledrammen
Saml den 3. motor i ledrammen

Trin 22: Sæt kablet i Arduino

Sæt kablet i Arduino
Sæt kablet i Arduino
Sæt kablet i Arduino
Sæt kablet i Arduino
  • Den 3. motor er forbundet med pin 11
  • Det 3. potentiometer er forbundet med A2

koden ser sådan ud

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

Trin 23: Saml tommelfingerrammen

Saml tommelfingerrammen
Saml tommelfingerrammen
Saml tommelfingerrammen
Saml tommelfingerrammen

Trin 24: Test og juster vinkel

Test og juster vinkel
Test og juster vinkel
Test og juster vinklen
Test og juster vinklen
Test og juster vinklen
Test og juster vinklen

Sæt USB -kablet i en hvilken som helst strømkilde, og robotten tændes snart. Vinklen kan være lidt anderledes. Juster vinklen en efter en.

Trin 25: En robot mere?

En robot mere?
En robot mere?
En robot mere?
En robot mere?

Hvis du vil lave en robot mere, kan du lave den. Tilslut servoer til 3, 5 og 6.

#include Servo servo [6]; ugyldig opsætning () {pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); servo [0]. vedhæft (9); servo [1]. vedhæft (10); servo [2]. vedhæft (11); servo [3]. vedhæft (3); servo [4]. vedhæft (5); servo [5].attach (6);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0]. skrive (kort (tempADC [0], 0, 1023, 0, 180)); servo [3]. skrive (kort (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1]. skrive (kort (tempADC [1], 0, 1023, 0, 180)); servo [4]. skrive (kort (tempADC [1], 0, 1023, 0, 180)); tempADC [2] = analogRead (A2); servo [2]. skrive (kort (tempADC [2], 0, 1023, 0, 180)); servo [5].write (kort (tempADC [2], 0, 1023, 0, 180));}

Trin 26: Udført

Færdig!
Færdig!
Færdig!
Færdig!
Færdig!
Færdig!

Hvis du har spørgsmål, er du velkommen til at forlade det:)

Microcontroller konkurrence
Microcontroller konkurrence
Microcontroller konkurrence
Microcontroller konkurrence

Nummer to i Microcontroller -konkurrencen

Anbefalede: