Taula de continguts:

[Arduino Robot] Com fer un robot de captura de moviment - Thumbs Robot - Servomotor - Codi font: 26 passos (amb imatges)
[Arduino Robot] Com fer un robot de captura de moviment - Thumbs Robot - Servomotor - Codi font: 26 passos (amb imatges)

Vídeo: [Arduino Robot] Com fer un robot de captura de moviment - Thumbs Robot - Servomotor - Codi font: 26 passos (amb imatges)

Vídeo: [Arduino Robot] Com fer un robot de captura de moviment - Thumbs Robot - Servomotor - Codi font: 26 passos (amb imatges)
Vídeo: Burning electric car 2024, Desembre
Anonim
Image
Image
[Arduino Robot] Com fer un robot de captura de moviment | Thumbs Robot | Servomotor | Codi font
[Arduino Robot] Com fer un robot de captura de moviment | Thumbs Robot | Servomotor | Codi font

Thumbs Robot. S'ha utilitzat un potenciòmetre de servomotor MG90S. És molt divertit i fàcil! El codi és molt senzill. Només ronda les 30 línies. Sembla una captura de moviment.

Deixeu qualsevol pregunta o comentari.

[Instrucció]

  • Codi font
  • Fitxers d’impressió 3D

[Sobre el creador]

Youtube

Pas 1: PARTS ARDUINO

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

Instal·leu Arduino IDE

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

Instal·leu el controlador CH340 (per a la versió xinesa)

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

DESCÀRREGA: codi font

  • https://github.com/happythingsmaker/ThumbsRobot
  • Com podeu veure hi ha un fitxer zip. Extraieu tot el fitxer i feu doble clic al fitxer del codi font.

Seleccioneu la placa / processador / port Com

  • Arduino Nano
  • ATmega328P (carregador d'arrencada antic)

Connecteu el vostre arduino nano

Connecteu el cable USB i apareixerà un port nou

Cerqueu / seleccioneu el port de com emergent

  • Feu clic al port que apareix i premeu el botó de càrrega
  • Feu clic al botó de càrrega

Pas 2: PARTS D'IMPRESSIÓ 3D

PARTS D'IMPRESSIÓ 3D
PARTS D'IMPRESSIÓ 3D

Descarregueu fitxers de modelatge 3D de Thingiverse

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

Imprimiu totes les parts una per una

Pas 3: part del circuit

Part del circuit
Part del circuit

Utilitzeu la placa d’expansió Arduino Nano. Com que el propi Arduino Nano no té molts pins, haureu d’utilitzar una placa d’expansió.

Quan mireu el cablejat connectat al motor, podeu veure tres colors. Groc, vermell i marró. El marró ha d'estar connectat amb G (terra).

En els passos següents, ho tornarem a mirar de prop.

Pas 4: PART DE HARDWARE: prepareu totes les parts

PART DE HARDWARE: prepara totes les parts
PART DE HARDWARE: prepara totes les parts

[Parts]

  • 1 x Arduino Nano
  • 1 x placa d’expansió Arduino Nano
  • 6 x servomotors
  • 2 x boles d'ulls de joguina
  • 12 x perns de cargol (2 * 6 mm)

[Eines]

  • Impressora 3D (Anet A8)
  • Filament per a impressió en 3D (PLA 1,75 mm)
  • Wire Nipper
  • Wire Stipper
  • Pistola de cola en calent
  • Tornavís (+)
  • Cinta electrònica
  • Eines de soldadura (Hakko)
  • Mà de soldadura
  • Tornavís elèctric

Pas 5: Modifiqueu 3 servomotors al sensor de posició

Els passos següents mostren com modificar un servomotor en un sensor de posició. bàsicament, la majoria dels servomotors tenen un potenciòmetre o un codificador per obtenir un valor d’angle.

Utilitzarem aquest potenciòmetre en si mateix. hem d’obrir la caixa, desmuntar la placa i tornar-la a connectar.

Pas 6: descargoleu 4 perns a la part posterior i obriu la caixa frontal

Descargoleu 4 perns a la part posterior i obriu la caixa frontal
Descargoleu 4 perns a la part posterior i obriu la caixa frontal
Descargoleu 4 perns a la part posterior i obriu la caixa frontal
Descargoleu 4 perns a la part posterior i obriu la caixa frontal

Necessitareu un tornavís petit perquè són massa petits. El motor té 3 parts: frontal, cos i darrere.

Quan obriu la part frontal, veureu els engranatges. En realitat, no fem servir aquest motor com a "motor". Per tant, els engranatges ja no són necessaris teòricament. Però farem servir alguna part d’ells perquè l’angle de funcionament encara tingui limitacions de rotació.

Pas 7: traieu la 3a marxa

Traieu la 3a marxa
Traieu la 3a marxa
Traieu la 3a marxa
Traieu la 3a marxa
Traieu la 3a marxa
Traieu la 3a marxa

El potenciòmetre del servomotor té una limitació angular que ronda els 180 graus. El potenciòmetre té el seu propi mecanisme de limitació, però és tan feble. Es trenca fàcilment sovint. Per protegir-lo, l’engranatge dóna un altre mecanisme. La primera marxa té un para-xocs de plàstic que estarà en contacte amb la segona marxa.

Definitivament necessitem la primera marxa per al quadre general, la segona marxa és necessària per a la limitació. Per tant, no podem desfer-nos-en. En lloc d’ells, podem treure la tercera marxa.

Us podeu preguntar per què hem de treure un equip. Aquests tres servomotors s’utilitzaran per obtenir informació d’angle. Si hi ha engranatges, el moviment serà rígid. Per tant, hem de desfer-ne un dels equips.

Pas 8: tornar a connectar / soldar

Re-cablejat / soldadura
Re-cablejat / soldadura

Talleu els cables que estan connectats amb els motors.

Pas 9: utilitzeu una eina de soldadura i desconnecteu el tauler

Utilitzeu una eina de soldadura i separeu el tauler
Utilitzeu una eina de soldadura i separeu el tauler
Utilitzeu una eina de soldadura i separeu el tauler
Utilitzeu una eina de soldadura i separeu el tauler

Pas 10: tallar un cable i preparar-se per soldar

Tallar un cable i preparar-se per soldar
Tallar un cable i preparar-se per soldar
Tallar un cable i preparar-se per soldar
Tallar un cable i preparar-se per soldar

i poseu una mica de pasta i poseu una mica de plom al cable

Pas 11: Soldeu-lo

Soldar-ho
Soldar-ho
Soldar-ho
Soldar-ho
Soldar-ho
Soldar-ho
Soldar-ho
Soldar-ho

des del costat esquerre molt vermell groc i marró

Pas 12: poseu-hi una mica de cola

Poseu-hi una mica de cola
Poseu-hi una mica de cola
Poseu-hi una mica de cola
Poseu-hi una mica de cola

i recuperar la seva part posterior

Necessitem 2 potenciòmetres més. feu el mateix treball per a altres dos motors

Pas 13: feu el primer soterrani conjunt

Feu el primer soterrani conjunt
Feu el primer soterrani conjunt
Feu el primer soterrani conjunt
Feu el primer soterrani conjunt
Feu el primer soterrani conjunt
Feu el primer soterrani conjunt

Vaig fer servir una placa de cuina per fer aquest projecte. és barat i ferm d’utilitzar-lo. Per fixar el marc al tauler, haureu d’utilitzar cargols que tinguin un extrem afilat. Fa forats i fils al mateix temps.

Hi ha 6 motors. 3 motors al costat esquerre són els motors originals. d'altra banda, hi ha 3 motors que es modifiquen abans del pas.

Pas 14: Feu la junta articulada

Feu l’articulació de Yaw
Feu l’articulació de Yaw
Feu l’articulació de Yaw
Feu l’articulació de Yaw

Haureu d’utilitzar un cargol M2 * 6mm.

Pas 15: munteu la junta de guijada amb el primer motor

Munteu la junta de guijada amb el primer motor
Munteu la junta de guijada amb el primer motor
Munteu la junta de guijada amb el primer motor
Munteu la junta de guijada amb el primer motor

Com podeu veure la darrera imatge, haureu de posar la junta en direcció horitzontal. I la ubicació ha de ser de 90 graus tant del motor com del potenciòmetre.

Dit d’una altra manera, podeu girar les articulacions de mordassa de 90 graus en sentit horari i antihorari des d’aquesta ubicació.

Pas 16: munteu l’Arduino Nano amb la placa d’expansió Arduino Nano

Munteu l’Arduino Nano amb la placa d’expansió Arduino Nano
Munteu l’Arduino Nano amb la placa d’expansió Arduino Nano
Munteu l’Arduino Nano amb la placa d’expansió Arduino Nano
Munteu l’Arduino Nano amb la placa d’expansió Arduino Nano

Assegureu-vos de la direcció. El port USB tindrà el mateix costat que el connector DC.

Pas 17: la connexió de primera capa

La primera connexió de capa
La primera connexió de capa
La primera connexió de capa
La primera connexió de capa

El potenciòmetre està connectat amb el pin Analog 0 de l'Arduino. Cal connectar-lo correctament. Aquest Arduino Nano té ADC de 8 canals (convertidor digital analògic). Bàsicament, el potenciòmetre dóna un nivell analògic o volatatge. Podeu llegir aquest valor de voltatge mitjançant pins ADC

D'altra banda, el servomotor està connectat amb el Digital 9 de l'Arduino. Els servomotors es poden controlar utilitzant PWM (Pulse Width Modulation). L'Arduino Nano té un pin PWM de 6 canals (pin 9, 10, 11, 3, 5 i 6). Per tant, podem utilitzar fins a 6 servomotors.

En aquest pas, el codi font té aquest aspecte

#incloure

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));}

Pas 18: munteu la segona capa

Muntar la segona capa
Muntar la segona capa
Muntar la segona capa
Muntar la segona capa
Muntar la segona capa
Muntar la segona capa
Muntar la segona capa
Muntar la segona capa

La segona capa també és senzilla de fer. El que heu de tenir en compte és situar-lo a la ubicació correcta quan connecteu el cable a l’Arduino.

  • El servomotor esquerre està connectat amb el pin 10
  • El potenciòmetre dret està connectat amb A1

#incloure

Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); servo [0].attach (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));}

Pas 19: Munteu els marcs de tercera capa

Muntar els marcs de tercera capa
Muntar els marcs de tercera capa

Pas 20: munteu el marc amb el segon motor / potenciòmetre

Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre
Muntatge del marc amb el segon motor / potenciòmetre

Pas 21: munteu el tercer motor al marc conjunt

Munteu el tercer motor al marc conjunt
Munteu el tercer motor al marc conjunt
Munteu el tercer motor al marc conjunt
Munteu el tercer motor al marc conjunt

Pas 22: connecteu el cable a l'Arduino

Connecteu el cable a l'Arduino
Connecteu el cable a l'Arduino
Connecteu el cable a l'Arduino
Connecteu el cable a l'Arduino
  • El tercer motor es connecta amb el pin 11
  • El tercer potenciòmetre està connectat amb A2

el codi té aquest aspecte

#include Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); servo [0].attach (9); servo [1].attach (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));}

Pas 23: munteu el marc Thumbs

Muntar el marc Thumbs
Muntar el marc Thumbs
Muntar el marc Thumbs
Muntar el marc Thumbs

Pas 24: proveu i ajusteu l'angle

Proveu i ajusteu l'angle
Proveu i ajusteu l'angle
Proveu i ajusteu l'angle
Proveu i ajusteu l'angle
Proveu i ajusteu l'angle
Proveu i ajusteu l'angle

Introduïu el cable USB a qualsevol font d'alimentació i el robot s'encendrà aviat. L'angle pot ser lleugerament diferent. Ajusteu l’angle d’un en un.

Pas 25: un robot més?

Un robot més?
Un robot més?
Un robot més?
Un robot més?

Si voleu fer un robot més, el podeu fer. Connecteu els servos a 3, 5 i 6.

#include Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); 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].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));}

Pas 26: Fet

Fet!
Fet!
Fet!
Fet!
Fet!
Fet!

Si teniu alguna pregunta, no dubteu a deixar-la:)

Concurs de microcontroladors
Concurs de microcontroladors
Concurs de microcontroladors
Concurs de microcontroladors

Accèssit al concurs de microcontroladors

Recomanat: