Robotska roka - naredi sam: 5 korakov
Robotska roka - naredi sam: 5 korakov
Anonim
Robotska roka - naredi sam
Robotska roka - naredi sam

Že kot otrok sem si vedno želel narediti nekaj res kul. Na žalost za mlajšega takrat nisem imel dovolj znanja, da bi kaj naredil. Zdaj pa poznam malo elektronike in ta projekt sem polepšal med zimskimi počitnicami.

V bistvu sem ustvaril robotsko roko iz kartona, servomotorjev in drugih stvari, s katerimi bi lahko premikali prste s senzorji upogibanja v skladu z gibanjem lastnih prstov.

Če imate predloge, jih pustite v komentarjih.

1. korak: Potrebne komponente:

  1. Servomotorji
  2. Upogljivi senzorji (5)
  3. Karton
  4. Trak
  5. Strune
  6. Arduino
  7. Upor (5 x 1 k ohmov)

2. korak: Senzorji Flex:

Upogljivi senzorji
Upogljivi senzorji
Upogljivi senzorji
Upogljivi senzorji

Kaj so oni?

Upogljivi senzorji so senzorji, ki spreminjajo upor, če so upognjeni od prvotnega stanja. V bistvu gre za spremenljiv upor.

Vmesnik z Arduinom:

Arduino ne more brati uporov, lahko pa prebere napetosti prek svojega analognega zatiča. Tako ustvarimo vezje delilnika napetosti.

Ne pozabite pa, da so ti senzorji zelo krhki, zato jih poskušajte varovati in z njimi ne ravnajte grobo.

Senzor flex priklopite na Arduino, kot je prikazano na zgornji sliki. Ko jih povežete, priključite Arduino na prenosni računalnik in računalnik ter odprite Arduino IDE. Uporabite spodnjo kodo, da dobite največjo in najmanjšo vrednost. V svojem prvotnem stanju bo dala minimalno vrednost. Ko senzor upognete pod kotom 90 stopinj, boste dobili največjo vrednost. Ko naložite kodo, odprite serijski monitor in poiščite te vrednosti. Zapišite te vrednosti.

int flexsensor = A0; int val;

void setup () {

Serial.begin (9600);

}

void loop () {

val = analogRead (flexsensor);

Serial.println (val);

zamuda (50);

}

Z dovoljenjem slik: Google

3. korak: Servomotorji:

Ne bom govoril o tem, kako servomotorji delujejo v tem navodilu. Na spletu obstajajo še druge vaje, ki vam bodo pri tem pomagale.

Servomotorji imajo tri priključke GND (rjava), Vcc (rdeča) in signal (rumena ali oranžna). Priključite Vcc na 5V Arduina in GND servo na ozemljitev Arduina. Signal gre na PWM nožice Arduina, ki jih predstavlja simbol '~' (tilda). Druga stvar, ki jo morate vedeti, je, da se servomotorji premikajo od 0 do 180 stopinj. Tako ima Arduino IDE knjižnico za pošiljanje signalov, ki pošiljajo stopnje na servomotorje.

Senzor Flex bo pritrjen na naše prste, zato se s premikanjem prstov premaknejo tudi senzorji Flex, zato se upor spremeni. Zaradi tega Arduino bere različne vrednosti s svojega analognega zatiča.

Ne pozabite, da smo od zadnjega koraka iz senzorja dobili največje in najmanjše vrednosti. Te vrednosti bomo uporabili za preslikavo na 0 do 180 stopinj.

#includeServo x; // definiramo objekt

int flexpin = A0;

int val;

int maxval = 870; // na novo določite maxval glede na vaš senzor

int minval = 750; // na novo določite minval glede na vaš senzor

void setup ()

{

x.priključek (9); // Servo priključek na pin 9

}

void loop ()

{

val = analogRead (flexpin);

val = zemljevid (val, maxval, minval, 180, 0); // Preslikajte vrednosti od 0 do 180

x.write (val);

zamuda (10);

}

Zgornja koda velja za 1 servo in 1 fleks senzor.

4. korak: Mehanski prsti:

Mehanski prsti
Mehanski prsti

www.dropbox.com/s/m3jh0iiqwm2vx0e/robotic%…

To sem dobil od izdelovalca igrač Science

sciencetoymaker.org/

Prenesite sliko in si jo natisnite ter jo prilepite na tanek list kartona.

Prerežite vzdolž črt (neprekinjeno) in naredite gube vzdolž črtkanih črt. Po tem boste dobili pravokoten kuboid, ki bo zelo podoben prstu. Obstajata dva dela slike, levi je prilagodljiv, desni pa za stabilnost. Nisem uporabil pravega, vendar ga lahko uporabite, če želite.

Enako ponovite za ostale štiri prste. Nato jih položite na podlago, ki predstavlja dlan. Vrvico pritrdite z vrha prsta skozi votlino v notranjosti in nazadnje na dno. Če je vse narejeno pravilno, se mora prst premakniti, če potegnete vrvico.

5. korak: pritrdite vse:

Vse servomotorje postavite na dno. Servomotorje najprej premaknite na 0 stopinj. Po tem namestite nastavek, ki ga dobite s servomotorji. Pritrdite strune na servomotorje. Ponovite vse povezave za servomotorje, senzorje Flex za ostale štiri prste.

Imel sem samo en senzor upogibanja, zato sem z njim upravljal vseh 5 servomotorjev. Tukaj sem ga spremenil tako, da vsak senzor upogibanja upravlja 5 neodvisnih servomotorjev.

#includeServo x;

Servo y;

Servo z;

Servo a;

Servo b;

int flexpin = A0;

int val;

int maxval = 850;

int minval = 700;

void setup ()

{

Serial.begin (9600);

x.priključek (9);

y.priključek (10);

z.priključek (11);

a.priključek (5);

b. pritrdite (6);

}

void loop ()

{

val = analogRead (flexpin);

val = zemljevid (val, maxval, minval, 180, 0);

Serial.println (val);

x.write (val);

y.write (val);

z.write (val);

a.write (val);

b.piši (val);

zamuda (10);

}