Innehållsförteckning:

[Arduino Robot] Hur man gör en Motion Capture Robot - Tummen Robot - Servomotor - Källkod: 26 steg (med bilder)
[Arduino Robot] Hur man gör en Motion Capture Robot - Tummen Robot - Servomotor - Källkod: 26 steg (med bilder)

Video: [Arduino Robot] Hur man gör en Motion Capture Robot - Tummen Robot - Servomotor - Källkod: 26 steg (med bilder)

Video: [Arduino Robot] Hur man gör en Motion Capture Robot - Tummen Robot - Servomotor - Källkod: 26 steg (med bilder)
Video: Iron man De Agostini Unboxing uscite N 90, 91, 92 e 93 più l'uscita N 14 delle 15 della base premium 2024, November
Anonim
Image
Image
[Arduino Robot] Hur man gör en Motion Capture Robot | Tummen Robot | Servomotor | Källkod
[Arduino Robot] Hur man gör en Motion Capture Robot | Tummen Robot | Servomotor | Källkod

Tummen Robot. Använd en potentiometer för MG90S servomotor. Det är väldigt roligt och enkelt! Koden är väldigt enkel. Det är bara runt 30 rader. Det ser ut som en motion-capture.

Lämna gärna en fråga eller feedback!

[Instruktion]

  • Källkod
  • 3D -utskriftsfiler

[Om tillverkaren]

Youtube

Steg 1: ARDUINO -DELAR

ARDUINO DELAR
ARDUINO DELAR
ARDUINO DELAR
ARDUINO DELAR
ARDUINO DELAR
ARDUINO DELAR

Installera Arduino IDE

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

Installera CH340 -drivrutinen (för kinesisk version)

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

DOWNLOAD - källkod

  • https://github.com/happythingsmaker/ThumbsRobot
  • Som du kan se finns det en zip -fil. Extrahera all fil och dubbelklicka på källkodfilen.

Välj kort / Processor / Com -port

  • Arduino Nano
  • ATmega328P (Old Bootloader)

Anslut din arduino nano

Anslut USB -kabeln så visas en ny port

Hitta / välj kommande port

  • Klicka på porten som visas och tryck på uppladdningsknappen
  • Tryck på uppladdningsknappen

Steg 2: 3D -UTSKRIFTSDELAR

3D -UTSKRIFTSDELAR
3D -UTSKRIFTSDELAR

Ladda ner 3D -modelleringsfiler från Thingiverse

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

Skriv ut alla delar en efter en

Steg 3: Kretsdel

Kretsdel
Kretsdel

Använd Arduino Nano Expansionskort. Eftersom Arduino Nano i sig inte har många stift, måste du använda ett expansionskort.

När du tittar på kablarna som är anslutna till motorn kan du se tre färger. Gul, röd och brun. Brun måste anslutas till G (mark).

I följande steg kommer vi att titta närmare på det igen.

Steg 4: HARDWARE -DEL - Förbered alla delar

MASKINDEL - Förbered alla delar
MASKINDEL - Förbered alla delar

[Delar]

  • 1 x Arduino Nano
  • 1 x Arduino Nano Expansionskort
  • 6 x servomotorer
  • 2 x leksaksögonbollar
  • 12 x skruvbultar (2 * 6 mm)

[Verktyg]

  • 3D -skrivare (Anet A8)
  • Filament för 3D -tryck (PLA 1,75 mm)
  • Wire Nipper
  • Wire Stipper
  • Smältlimpistol
  • Skruvmejsel (+)
  • Elektronisk tejp
  • Lödverktyg (Hakko)
  • Lödhand
  • Elektrisk skruvmejsel

Steg 5: Ändra 3 servomotorer till positionssensor

Följande steg visar hur du ändrar en servomotor till lägesgivare. i princip har de flesta servomotorer en potentiometer eller kodare för att få ett vinkelvärde.

Vi kommer att använda själva potentiometern. vi måste öppna höljet, demontera kortet och dra om det igen.

Steg 6: Skruva loss 4 bultar på baksidan och öppna det främre fodralet

Skruva loss 4 bultar på baksidan och öppna det främre fodralet
Skruva loss 4 bultar på baksidan och öppna det främre fodralet
Skruva loss 4 bultar på baksidan och öppna det främre fodralet
Skruva loss 4 bultar på baksidan och öppna det främre fodralet

Du behöver en liten skruvmejsel eftersom de är för små. Motorn har tre delar - fram, kaross och bak.

När du öppnar framsidan ser du växlarna. Egentligen använder vi inte denna motor som "motor". Så, teorierna är inte längre nödvändiga teoretiskt. Men vi kommer att använda en del av dem så att operationsvinkeln fortfarande har begränsning av rotationen.

Steg 7: Ta bort den tredje växeln

Ta bort den tredje växeln
Ta bort den tredje växeln
Ta bort den tredje växeln
Ta bort den tredje växeln
Ta bort den tredje växeln
Ta bort den tredje växeln

Potentiometern i servomotorn har en vinkelbegränsning som är cirka 180 grader. Potentiometern har sin egen begränsningsmekanism men den är så svag. Det går lätt sönder ofta. För att skydda den ger växeln en annan mekanism. Den första växeln har en stötfångare av plast som kommer i kontakt med andra växeln.

Vi behöver definitivt den första växeln för den övergripande ramen, den andra växeln behövs för begränsningen. Så vi kan inte bli av med dem. Istället för dem kan vi ta bort den tredje växeln.

Du kanske undrar varför vi måste ta bort ett redskap. Dessa tre servomotorer kommer att användas för att få vinkelinformation. Om det finns växlar i dem blir rörelsen stel. Så vi måste bli av med en av redskapen från dem.

Steg 8: Omkoppling / lödning

Omkoppling / lödning
Omkoppling / lödning

Klipp av ledningarna som är anslutna till motorerna.

Steg 9: Använd ett lödverktyg och lossa kortet

Använd ett lödverktyg och lossa kortet
Använd ett lödverktyg och lossa kortet
Använd ett lödverktyg och lossa kortet
Använd ett lödverktyg och lossa kortet

Steg 10: Klipp en tråd och förbered dig för lödning

Klipp en tråd och förbered dig för lödning
Klipp en tråd och förbered dig för lödning
Klipp en tråd och förbered dig för lödning
Klipp en tråd och förbered dig för lödning

och lägg lite pasta och lägg lite bly på kabeln

Steg 11: Löd det

Löd det
Löd det
Löd det
Löd det
Löd det
Löd det
Löd det
Löd det

från mycket vänster sida rödgul och brun

Steg 12: Lägg lite lim på den

Sätt lite lim på den
Sätt lite lim på den
Sätt lite lim på den
Sätt lite lim på den

och återställa sin baksida

Vi behöver två potentiometrar till. gör samma arbete för två andra motorer

Steg 13: Gör det första gemensamma källaren

Gör den första gemensamma källaren
Gör den första gemensamma källaren
Gör den första gemensamma källaren
Gör den första gemensamma källaren
Gör den första gemensamma källaren
Gör den första gemensamma källaren

Jag använde en matlagningsbräda för att göra detta projekt. det är billigt och fast att använda det. För att fixera ramen på brädet måste du använda skruvar som har en skarp ände. Det gör hål och tråd samtidigt.

Det finns 6 motorer. 3 motorer på vänster sida är originalmotorerna. å andra sidan finns det 3 motorer som modifieras före steg.

Steg 14: Gör Yaw Joint

Gör Yaw Joint
Gör Yaw Joint
Gör Yaw Joint
Gör Yaw Joint

Du måste använda M2 * 6 mm skruvbult.

Steg 15: Montera Yaw Joint med den första motorn

Montera Yaw Joint med den första motorn
Montera Yaw Joint med den första motorn
Montera Yaw Joint med den första motorn
Montera Yaw Joint med den första motorn

Som du kan se den sista bilden måste du sätta fogen i horisontell riktning. Och platsen bör vara 90 grader av både motorn och potentiometern.

Med andra ord, du kan rotera dessa gaffelfogar 90 grader medsols och moturs från den platsen.

Steg 16: Montera Arduino Nano med Arduino Nano Expansionskort

Montera Arduino Nano med Arduino Nano Expansionskort
Montera Arduino Nano med Arduino Nano Expansionskort
Montera Arduino Nano med Arduino Nano Expansionskort
Montera Arduino Nano med Arduino Nano Expansionskort

Se till att riktningen. USB -porten kommer att vara på samma sida med DC -uttag.

Steg 17: Första lageranslutningen

Första lagersanslutningen
Första lagersanslutningen
Första lagersanslutningen
Första lagersanslutningen

Potentiometern är ansluten med analog 0 -stift på Arduino. Du måste ansluta den korrekt. Denna Arduino Nano har 8 -kanals ADC (Analog Digital Converter). I grund och botten ger potentiometern analog nivå eller volatage. Du kan läsa det voltvärdet med hjälp av ADC -stift

Å andra sidan är servomotorn ansluten till Arduino Digital 9. Servomotorer kan styras med PWM (Pulse Width Modulation). Arduino Nano har 6 -kanals PWM -stift (stift 9, 10, 11, 3, 5 och 6). Så vi kan använda upp till 6 servomotorer.

I det här steget ser källkoden ut så här

#omfatta

Servoservo [6]; ogiltig inställning () {pinMode (A0, INPUT); servo [0].attach (9);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (karta (tempADC [0], 0, 1023, 0, 180));}

Steg 18: Montera det andra lagret

Montera det andra lagret
Montera det andra lagret
Montera det andra lagret
Montera det andra lagret
Montera det andra lagret
Montera det andra lagret
Montera det andra lagret
Montera det andra lagret

Det andra lagret är också enkelt att göra. Vad du behöver vara försiktig med är att placera den på rätt plats när du ansluter kabeln till Arduino.

  • Den vänstra servomotorn är ansluten med stift 10
  • Den högra potentiometern är ansluten till A1

#omfatta

Servoservo [6]; ogiltig inställning () {pinMode (A0, INPUT); pinMode (A1, INPUT); servo [0]. fäst (9); servo [1].attach (10);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (karta (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (karta (tempADC [1], 0, 1023, 0, 180));}

Steg 19: Montera de 3 -lagers ramarna

Montera de 3 -lagers ramarna
Montera de 3 -lagers ramarna

Steg 20: Montera ramen med den andra motorn / potentiometern

Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern
Montera ramen med den andra motorn / potentiometern

Steg 21: Montera den tredje motorn i den gemensamma ramen

Montera den tredje motorn i den gemensamma ramen
Montera den tredje motorn i den gemensamma ramen
Montera den tredje motorn i den gemensamma ramen
Montera den tredje motorn i den gemensamma ramen

Steg 22: Anslut kabeln till Arduino

Anslut kabeln till Arduino
Anslut kabeln till Arduino
Anslut kabeln till Arduino
Anslut kabeln till Arduino
  • Den tredje motorn är ansluten med stift 11
  • Den tredje potentiometern är ansluten till A2

koden ser ut så här

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

Steg 23: Montera tummaramen

Montera tummaramen
Montera tummaramen
Montera tummaramen
Montera tummaramen

Steg 24: Testa och justera vinkeln

Testa och justera vinkeln
Testa och justera vinkeln
Testa och justera vinkeln
Testa och justera vinkeln
Testa och justera vinkeln
Testa och justera vinkeln

Sätt i USB -kabeln i valfri strömkälla och roboten slås på snart. Vinkeln kan vara något annorlunda. Justera vinkeln en efter en.

Steg 25: En robot till?

En robot till?
En robot till?
En robot till?
En robot till?

Om du vill göra en robot till kan du göra det. Anslut servon till 3, 5 och 6.

#inkludera Servoservo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); servo [0]. fäst (9); servo [1]. fäst (10); servo [2]. fäst (11); servo [3]. fäst (3); servo [4]. fäst (5); servo [5].attach (6);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (karta (tempADC [0], 0, 1023, 0, 180)); servo [3]. skriva (karta (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (karta (tempADC [1], 0, 1023, 0, 180)); servo [4].write (karta (tempADC [1], 0, 1023, 0, 180)); tempADC [2] = analogRead (A2); servo [2].write (karta (tempADC [2], 0, 1023, 0, 180)); servo [5].write (karta (tempADC [2], 0, 1023, 0, 180));}

Steg 26: Klar

Gjort!
Gjort!
Gjort!
Gjort!
Gjort!
Gjort!

Om du har några frågor får du gärna lämna det:)

Tävling för mikrokontroller
Tävling för mikrokontroller
Tävling för mikrokontroller
Tävling för mikrokontroller

Tvåa i Microcontroller -tävlingen

Rekommenderad: