Mehanički ručni manipulator uradi sam. Uradi sam stoni robotski manipulator za ruke od pleksiglasa na servo pogonima. Montaža mehaničkog dela

Hej Geektimes!

Projekat uArm iz uFactory-a prikupio je sredstva na kickstarteru prije više od dvije godine. Od samog početka su govorili da će to biti otvoren projekat, ali odmah po završetku kompanije nisu žurili s uploadom izvornog koda. Hteo sam samo da isečem pleksiglas po njihovim crtežima i to je to, ali pošto nije bilo izvornih kodova i nije bilo predviđeno u dogledno vreme, počeo sam da ponavljam dizajn sa fotografija.

Sada moja robo ruka izgleda ovako:

Radeći polako za dvije godine, uspio sam napraviti četiri verzije i stekao veliko iskustvo. Opis, istorija projekta i svi projektni fajlovi koje možete pronaći ispod reza.

pokušaja i greške

Kada sam počeo da radim na nacrtima, želeo sam ne samo da ponovim uArm, već da ga poboljšam. Činilo mi se da je u mojim uslovima sasvim moguće bez ležajeva. Također mi se nije svidjela činjenica da se elektronika okreće cijelom rukom i želio sam pojednostaviti dizajn donjeg dijela šarke. Osim toga, počeo sam da ga crtam odmah malo manje.

Sa ovim inputima sam nacrtao prvu verziju. Nažalost, nisam imao nijednu fotografiju te verzije manipulatora (koji je napravljen u žuta). Greške u njemu bile su samo epske. Prvo, bilo je gotovo nemoguće sastaviti. U pravilu, mehanika koju sam nacrtao prije manipulatora bila je prilično jednostavna i nisam morao razmišljati o procesu sklapanja. Ali ipak, sakupio sam ga i pokušao da ga pokrenem, a ruka se jedva pomerila! Svi dijelovi su se vrtjeli oko šrafova i ako sam ih zategnuo tako da je bilo manje zračnosti, nije se mogla pomaknuti. Ako sam ga olabavio da se može pomaknuti, pojavio se nevjerovatan zazor. Kao rezultat toga, koncept nije poživio ni tri dana. I počeo sam raditi na drugoj verziji manipulatora.

Crvena je već bila sasvim sposobna za posao. Obično se sklapao i mogao se kretati uz podmazivanje. Uspio sam testirati softver na njemu, ali ipak nedostatak ležajeva i veliki gubici na različitim šipkama učinili su ga vrlo slabim.

Tada sam na neko vrijeme odustao od projekta, ali sam ubrzo odlučio da ga sjetim. Odlučio sam koristiti moćnije i popularnije servo, povećati veličinu i dodati ležajeve. I odlučio sam da neću pokušavati da sve bude savršeno odjednom. Nacrtao sam crteže za na brzinu, bez crtanja lijepih drugarica, i naručio sečenje od prozirnog pleksiglasa. Na rezultirajućem manipulatoru uspio sam otkloniti greške u procesu montaže, identificirao mjesta kojima je potrebno dodatno pojačanje i naučio kako koristiti ležajeve.

Nakon što sam se do mile volje poigrao prozirnim manipulatorom, sjeo sam da nacrtam konačnu bijelu verziju. Dakle, sada je sva mehanika u potpunosti otklonjena, odgovara mi i spremna je da izjavim da ne želim ništa više mijenjati u ovom dizajnu:

Deprimira me što nisam mogao da unesem ništa suštinski novo u projekat uArm. U trenutku kada sam počeo da crtam konačnu verziju, već su stavili 3D modele na GrabCad. Na kraju sam samo malo pojednostavio kandžu, pripremio datoteke u prikladnom formatu i koristio vrlo jednostavne i standardne komponente.

Karakteristike manipulatora

Prije pojave uArma, desktop manipulatori ovog razreda izgledao prilično dosadno. Ili uopće nisu imali elektroniku, ili su imali neku vrstu kontrole s otpornicima, ili su imali svoj vlastiti softver. Drugo, obično nisu imali sistem paralelnih šarki i sam hvat je mijenjao svoj položaj tokom rada. Ako saberemo sve prednosti mog manipulatora, dobićemo prilično dugu listu:
  1. Sistem šipki koji vam omogućava postavljanje snažnih i teških motora u bazu manipulatora, kao i držanje hvataljke paralelno ili okomito na bazu
  2. Jednostavan set komponenti koje je lako kupiti ili izrezati od pleksiglasa
  3. Ležajevi u gotovo svim čvorovima manipulatora
  4. Jednostavna montaža. Ispostavilo se da je to istina izazovan zadatak. Posebno je bilo teško razmišljati o procesu sastavljanja baze
  5. Položaj rukohvata se može promeniti za 90 stepeni
  6. Otvoreni izvor i dokumentacija. Sve je pripremljeno u pristupačnim formatima. Dat ću linkove za preuzimanje za 3D modele, datoteke za sečenje, listu materijala, elektroniku i softver
  7. Arduino kompatibilan. Ima mnogo protivnika Arduina, ali vjerujem da je ovo prilika da proširimo publiku. Profesionalci mogu lako napisati svoj softver u C - to je običan kontroler iz Atmela!

Mehanika

Za montažu je potrebno izrezati dijelove od pleksiglasa debljine 5 mm:

Naplatili su mi oko 10 dolara za rezanje svih ovih dijelova.

Baza je postavljena na veliki ležaj:

Posebno je bilo teško razmišljati o bazi sa stanovišta procesa montaže, ali sam zavirivao u inženjere iz uArma. Stolice za ljuljanje sjede na iglu prečnika 6 mm. Treba napomenuti da mi potisak lakta leži na držaču u obliku slova U, a za uFactory na držaču u obliku slova L. Teško je objasniti u čemu je razlika, ali mislim da sam bolje prošao.

Snimanje se prikuplja zasebno. Može se rotirati oko svoje ose. Sama kandža se nalazi direktno na osovini motora:

Na kraju članka dat ću vezu do super detaljnih uputa za montažu na fotografijama. Za par sati možete samouvjereno sve to izvrnuti, ako vam je sve što vam treba pri ruci. Pripremio sam i 3D model besplatni program skicirati. Možete ga preuzeti, uvrnuti i vidjeti šta se i kako prikuplja.

Elektronika

Da bi ruka radila, sve što trebate učiniti je spojiti pet servo uređaja na Arduino i napajati ih iz dobrog izvora. uArm je koristio neke motore sa povratne informacije. Isporučio sam tri obična MG995 motora i dva mala metalna zupčasta motora za kontrolu držanja.

Ovdje je moja priča usko isprepletena s prethodnim projektima. Već neko vrijeme počinjem podučavati Arduino programiranje i čak sam pripremio vlastitu Arduino kompatibilnu ploču za tu svrhu. S druge strane, jednom sam dobio priliku da jeftino pravim ploče (o čemu sam i pisao). Na kraju se sve završilo činjenicom da sam koristio svoju Arduino kompatibilnu ploču i specijalizirani štit za kontrolu manipulatora.

Ovaj štit je zapravo vrlo jednostavan. Ima četiri varijabilna otpornika, dva dugmeta, pet servo konektora i konektor za napajanje. Ovo je vrlo zgodno sa stanovišta otklanjanja grešaka. Možete učitati probnu skicu i napisati neku vrstu makroa za kontrolu ili nešto slično. Također ću dati link za preuzimanje fajla ploče na kraju članka, ali on je pripremljen za proizvodnju sa oblaganjem rupa, tako da nije baš pogodan za kućnu proizvodnju.

Programiranje

Najzanimljivije je upravljanje manipulatorom sa računara. uArm ima zgodnu aplikaciju za upravljanje manipulatorom i protokol za rad s njim. Računar šalje 11 bajtova na COM port. Prvi je uvijek 0xFF, drugi je 0xAA, a neki od ostalih su servo signali. Dalje, ovi podaci se normalizuju i daju motorima na testiranje. Imam servo spojene na digitalni I/O 9-12, ali to se lako može promijeniti.

Terminalni program iz uArma vam omogućava da promijenite pet parametara prilikom upravljanja mišem. Prilikom pomicanja miša preko površine mijenja se pozicija manipulatora u XY ravni. Okrenite kotač - promijenite visinu. LMB / RMB - stisnite / otpustite kandžu. RMB + kotač - rotacija drške. Zapravo vrlo zgodno. Ako želite, možete napisati bilo koji terminalski softver koji će komunicirati s manipulatorom koristeći isti protokol.

Ovdje neću davati skice - možete ih preuzeti na kraju članka.

Video snimak rada

I, na kraju, video rada samog manipulatora. Prikazuje kontrolu miša, otpornika i prema unaprijed snimljenom programu.

Linkovi

Datoteke za rezanje pleksiglasa, 3D modele, listu za kupovinu, crteže ploča i softver možete preuzeti na kraju mog

Prvo će biti pogođeno opšta pitanja, Onda specifikacije rezultate, detalje i na kraju sam proces sklapanja.

U cjelini i općenito

Stvaranje ovog uređaja u cjelini ne bi trebalo uzrokovati poteškoće. Bit će potrebno kvalitativno razmisliti samo o mogućnostima mehaničkih pokreta, koje će biti prilično teško implementirati s fizičke tačke gledišta, kako bi ruka manipulatora mogla obavljati svoje zadatke.

Tehničke karakteristike rezultata

Razmatrat će se uzorak s parametrima dužine/visine/širine od 228/380/160 milimetara. Težina ruke manipulatora "uradi sam" bit će približno 1 kilogram. Ožičeni za kontrolu daljinski. Predviđeno vrijeme montaže s iskustvom - oko 6-8 sati. Ako ga nema, onda će možda trebati dani, sedmice i uz popuštanje mjesecima da se sklopi ruka manipulatora. Svojim rukama i sami u takvim slučajevima to vrijedi učiniti osim u svom interesu. Za pomicanje komponenti koriste se kolektorski motori. Uz dovoljno truda, možete napraviti uređaj koji će se rotirati za 360 stepeni. Također, za praktičnost rada, pored standardnih alata kao što su lemilica i lem, morate nabaviti:

  1. Duga kliješta.
  2. Bočne makaze.
  3. Križni odvijač.
  4. 4 D baterije.

Daljinski upravljac daljinski upravljač može se implementirati pomoću dugmadi i mikrokontrolera. Ako želite napraviti daljinsko bežično upravljanje, trebat će vam element za kontrolu akcije u ruci manipulatora. Kao dodaci, bit će potrebni samo uređaji (kondenzatori, otpornici, tranzistori) koji će omogućiti stabilizaciju kruga i prijenos struje potrebne veličine kroz njega u pravo vrijeme.

Mali dijelovi

Da biste regulirali broj okretaja, možete koristiti prijelazne kotače. Oni će učiniti kretanje ruke manipulatora glatkim.

Također morate biti sigurni da žice ne otežavaju njegovo kretanje. Bilo bi optimalno postaviti ih unutar strukture. Sve možete raditi izvana, ovaj pristup će uštedjeti vrijeme, ali potencijalno može dovesti do poteškoća u pomicanju pojedinačnih čvorova ili cijelog uređaja. A sada: kako napraviti manipulator?

Skupština uopšte

Sada prelazimo direktno na kreiranje ruke manipulatora. Počinjemo od temelja. Potrebno je osigurati da se uređaj može rotirati u svim smjerovima. dobra odluka biće postavljen na disk platformu, koju pokreće jedan motor. Da bi se mogao rotirati u oba smjera, postoje dvije opcije:

  1. Montaža dva motora. Svaki od njih će biti odgovoran za skretanje u određenom smjeru. Kada jedan radi, drugi miruje.
  2. Instaliranje jednog motora sa strujnim krugom koji ga može pokrenuti u oba smjera.

Koju od predloženih opcija odabrati ovisi isključivo o vama. Slijedi glavna struktura. Za udobnost rada potrebna su dva "jointa". Zakačen za platformu, mora se moći naginjati u različitim smjerovima, što se rješava uz pomoć motora koji se nalaze u njegovoj bazi. Drugi ili par treba postaviti na pregib lakta tako da se dio hvataljke može pomicati duž horizontalnih i okomitih linija koordinatnog sistema. Nadalje, ako želite dobiti maksimalne mogućnosti, možete instalirati još jedan motor na zglobu. Dalje, najneophodnije, bez kojih se ne može zamisliti ruka manipulatora. Svojim rukama morate napraviti sam uređaj za hvatanje. Ovdje postoje mnoge mogućnosti implementacije. Možete dati savjet o dvije najpopularnije:

  1. Koriste se samo dva prsta koji istovremeno stišću i otpuštaju predmet hvatanja. To je najjednostavnija implementacija, koja se, međutim, obično ne može pohvaliti značajnim opterećenjem.
  2. Stvara se prototip ljudske ruke. Ovdje se može koristiti jedan motor za sve prste, uz pomoć kojih će se vršiti savijanje / savijanje. Ali dizajn možete učiniti složenijim. Dakle, možete spojiti motor na svaki prst i upravljati njime zasebno.

Zatim ostaje napraviti daljinski upravljač, uz pomoć kojeg će se utjecati na pojedine motore i tempo njihovog rada. I možete početi eksperimentirati koristeći robotsku ruku uradi sam.

Mogući šematski prikazi rezultata

Ruka manipulatora uradi sam pruža široke mogućnosti za kreativne izume. Stoga vam je na raspolaganju nekoliko implementacija koje se mogu uzeti kao osnova za kreiranje vlastitog uređaja ove namjene.

Bilo koja predstavljena shema manipulatora može se poboljšati.

Zaključak

Ono što je važno u robotici je da praktično nema ograničenja za funkcionalno poboljšanje. Stoga, ako želite stvoriti pravo umjetničko djelo, nije teško. Govoreći o mogućim načinima dodatnog poboljšanja, treba napomenuti kran-manipulator. Neće biti teško napraviti takav uređaj vlastitim rukama, a istovremeno će vam omogućiti da naviknete djecu na kreativan rad, nauku i dizajn. A to, zauzvrat, može pozitivno utjecati na njihov budući život. Hoće li biti teško napraviti kran-manipulator vlastitim rukama? Ovo nije tako problematično kao što se na prvi pogled čini. Vrijedi li voditi računa o prisutnosti dodatnih sitnih detalja poput sajle i kotača na kojima će se okretati.

Kreiramo robotsku ruku pomoću daljinomjera, implementiramo pozadinsko osvjetljenje.

Izrezat ćemo bazu od akrila. Koristimo servo kao motore.

Opšti opis projekta robotske ruke

U projektu je korišteno 6 servomotora. Za mehanički dio korišten je akril debljine 2 mm. Kao stativ je dobro došla baza od disko kugle (jedan od motora je ugrađen unutra). Korišteni su i ultrazvučni senzor udaljenosti i LED dioda od 10 mm.

Arduino ploča se koristi za upravljanje robotom. Samo napajanje je napajanje računara.

Projekat pruža sveobuhvatna objašnjenja za razvoj robotske ruke. Pitanja ishrane razvijenog dizajna razmatraju se odvojeno.

Osnovni čvorovi za projekat manipulatora

Počnimo sa razvojem. trebat će vam:

  • 6 servo (koristio sam 2 mg946, 2 mg995, 2 futuba s3003 (mg995/mg946 su bolji od futuba s3003 ali mnogo jeftiniji)
  • akril debljine 2 mm (i mali komad debljine 4 mm);
  • ultrazvučni senzor udaljenosti hc-sr04 ;
  • LED diode 10 mm (boja - po vašem nahođenju);
  • tronožac (koristi se kao baza);
  • aluminijumska hvataljka (košta oko 10-15 dolara).

Za menadžment:

  • Arduino Uno ploča (korišteni projekat domaća tabla, koji je potpuno sličan Arduinu);
  • ploča za napajanje (morat ćete je sami napraviti, kasnije ćemo se vratiti na ovo pitanje, zahtijeva posebnu pažnju);
  • napajanje (u ovom slučaju se koristi kompjutersko napajanje);
  • kompjuter za programiranje vaše robotske ruke (ako koristite Arduino za programiranje, onda Arduino IDE)

Naravno, trebat će vam kablovi i neki osnovni alati poput odvijača itd. Sada možemo preći na izgradnju.

Montaža mehaničkog dela

Prije početka razvoja mehaničkog dijela manipulatora, vrijedi napomenuti da nemam crteže. Svi čvorovi su napravljeni "na kolenima". Ali princip je vrlo jednostavan. Imate dvije akrilne veze između kojih trebate ugraditi servomotore. I druga dva linka. Takođe za ugradnju motora. Pa, sam hvat. Takav hvat najlakše je kupiti na internetu. Skoro sve se montira vijcima.

Dužina prvog dijela je oko 19 cm; drugi - oko 17,5; dužina prednje poluge je oko 5,5 cm.Preostale dimenzije odaberite u skladu sa dimenzijama vašeg projekta. U principu, veličine ostalih čvorova nisu toliko važne.

Mehanička ruka mora omogućiti rotaciju od 180 stepeni na bazi. Dakle, servomotor moramo ugraditi odozdo. U ovom slučaju se ugrađuje u istu disko kuglu. U vašem slučaju, to može biti bilo koja prikladna kutija. Robot je montiran na ovaj servomotor. Moguće je, kao što je prikazano na slici, ugraditi dodatnu metalnu prstenastu prirubnicu. Možete i bez toga.

Za ugradnju ultrazvučnog senzora koristi se akril debljine 2 mm. Ovdje također možete instalirati LED diodu odozdo.

Teško je detaljno objasniti kako dizajnirati takav manipulator. Mnogo zavisi od komponenti i delova koje imate na lageru ili kupujete. Na primjer, ako su dimenzije vaših servo uređaja različite, akrilne veze će se također promijeniti. Ako se dimenzije promijene, kalibracija manipulatora će također biti drugačija.

Svakako ćete morati produžiti kablove servomotora nakon što se završi mehanički dio manipulatora. U te svrhe u ovom projektu korištene su žice iz internet kabela. Kako bi sve ovo izgledalo, nemojte biti lijeni i na slobodne krajeve izduženih kablova ugradite adaptere - majka ili otac, ovisno o izlazima vaše Arduino ploče, štita ili napajanja.

Nakon sklapanja mehaničkog dijela, možemo prijeći na "mozak" našeg manipulatora.

Drška manipulatora

Za ugradnju hvataljke trebat će vam servo motor i nekoliko vijaka.

Dakle, šta tačno treba uraditi.

Uzmite stolicu za ljuljanje od servo i skratite je dok ne stane u vaš hvat. Nakon toga zategnite dva mala vijka.

Nakon ugradnje servo, okrenite ga u krajnji lijevi položaj i stisnite čeljusti ručke.

Sada možete instalirati servo na 4 vijka. Istovremeno, pazite da je motor još uvijek u krajnjem lijevom položaju i da su čeljusti hvataljke zatvorene.

Možete spojiti servo na Arduino ploča i provjerite performanse ručke.

Imajte na umu da može doći do problema s radom hvataljke ako su vijci/zavrtnji previše zategnuti.

Dodavanje osvjetljenja manipulatoru

Svoj projekat možete učiniti svjetlijim dodavanjem naglasaka. Za to su korištene LED diode. Lako je za napraviti, a u mraku izgleda vrlo impresivno.

Mjesta za ugradnju LED dioda ovise o vašoj kreativnosti i mašti.

dijagram ožičenja

Možete koristiti potenciometar od 100 kΩ umjesto otpornika R1 za ručno podešavanje svjetline. Kao otpor R2 korišteni su otpornici od 118 oma.

Lista glavnih čvorova koji su korišteni:

  • R1 - 100 kΩ otpornik
  • R2 - otpornik 118 oma
  • tranzistor bc547
  • fotootpornik
  • 7 LED dioda
  • Prekidač
  • Povezivanje na Arduino ploču

Kao mikrokontroler je korištena Arduino ploča. Korišteno napajanje je bilo PC. Povezivanjem multimetra na crveni i crni kabl, vidjet ćete 5 volti (koji se koriste za servo motore i ultrazvučni senzor udaljenosti). Žuta i crna će vam dati 12 volti (za Arduino). Izrađujemo 5 konektora za servo, paralelno spajamo plus na 5V, a minus na masu. Isto je i sa senzorom udaljenosti.

Nakon toga spojite preostale konektore (po jedan sa svakog servo i dva iz daljinomjera) na ploču koju smo zalemili i Arduino. Istovremeno, ne zaboravite ispravno naznačiti pinove koje ste ubuduće koristili u programu.

Osim toga, na ploči za napajanje je instalirana LED dioda za napajanje. Lako je implementirati. Dodatno, korišten je otpornik od 100 oma između 5 V i uzemljenja.

LED dioda od 10 mm na robotu je također povezana sa Arduinom. Otpornik od 100 oma ide od pina 13 do pozitivnog kraka LED diode. Negativno - do zemlje. Možete ga isključiti u programu.

Za 6 servomotora koristi se 6 konektora jer 2 servomotora na dnu koriste isti kontrolni signal. Odgovarajući provodnici su povezani i povezani na jedan pin.

Ponavljam da se kao napajanje koristi napajanje sa personalnog kompjutera. Ili, naravno, možete kupiti zasebno napajanje. Ali s obzirom na to da imamo 6 pogona, od kojih svaki može potrošiti oko 2 A, tako snažno napajanje će biti skupo.

Imajte na umu da su konektori servo uređaja povezani na PWM izlaze Arduina. U blizini svake takve igle na ploči se nalazi simbol~. Ultrazvučni senzor udaljenosti može se povezati na pinove 6, 7. LED se može spojiti na pin 13 i uzemljenje. Ovo su sve igle koje nam trebaju.

Sada možemo prijeći na Arduino programiranje.

Prije povezivanja ploče preko usb-a na računar, obavezno isključite napajanje. Kada testirate program, također isključite napajanje robotske ruke. Ako se napajanje ne isključi, Arduino će dobiti 5 volti iz USB-a i 12 volti iz napajanja. Shodno tome, struja sa usb-a će se prenijeti na izvor napajanja i on će malo "popustiti".

Dijagram ožičenja pokazuje da su potenciometri dodani za kontrolu servo uređaja. Potenciometri su opcioni, ali gornji kod neće raditi bez njih. Potenciometri se mogu spojiti na pinove 0,1,2,3 i 4.

Programiranje i prvi start

Za kontrolu je korišteno 5 potenciometara (ovo je sasvim moguće zamijeniti 1 potenciometrom i dva džojstika). Šema povezivanja sa potenciometrima prikazana je u prethodnom dijelu. Arduino skica je ovdje.

Ispod su nekoliko video zapisa robotske ruke u akciji. Nadam se da ćete uživati.

Gornji video prikazuje najnovije modifikacije arma. Morao sam malo promijeniti dizajn i zamijeniti nekoliko dijelova. Ispostavilo se da su servo futuba s3003 prilično slabi. Ispostavilo se da se koriste samo za hvatanje ili okretanje ruke. Pa je umjesto njih instaliran mg995. Pa, mg946 će općenito biti odlična opcija.

Kontrolni program i objašnjenja za njega

// vođen pogonom varijabilni otpornici- potenciometri.

int potpin = 0; // analogni pin za povezivanje potenciometra

int vrijednost; // varijabla za čitanje podataka sa analognog pina

myservo1.attach(3);

myservo2.attach(5);

myservo3.attach(9);

myservo4.attach(10);

myservo5.attach(11);

pinMode (led, OUTPUT);

( //servo 1 analogni pin 0

val = analogRead(potpin); // čita vrijednost potenciometra (vrijednost između 0 i 1023)

// skalira primljenu vrijednost za korištenje sa servosom (dobijamo vrijednost u rasponu od 0 do 180)

myservo1.write(val); // dovodi servo u položaj prema izračunatoj vrijednosti

kašnjenje(15); // čeka da servomotor dostigne zadanu poziciju

val = analogRead(potpin1); // servo 2 na analognom pinu 1

val = map(val, 0, 1023, 0, 179);

myservo2.write(val);

val = analogRead(potpin2); // servo 3 na analognom pinu 2

val = map(val, 0, 1023, 0, 179);

myservo3.write(val);

val = analogRead(potpin3); // servo 4 na analognom pinu 3

val = map(val, 0, 1023, 0, 179);

myservo4.write(val);

val = analogRead(potpin4); //server 5 na analognom pinu 4

val = map(val, 0, 1023, 0, 179);

myservo5.write(val);

Skicirajte pomoću ultrazvučnog senzora udaljenosti

Ovo je vjerovatno jedan od najspektakularnijih dijelova projekta. Na manipulatoru je ugrađen senzor udaljenosti koji reagira na prepreke u blizini.

Glavna objašnjenja za kod su data u nastavku.

#define trigPin 7

Sljedeći dio koda:

Dodijelili smo nazive za svih 5 signala (za 6 pogona) (mogu biti bilo koji)

sljedeće:

Serial.begin(9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

pinMode (led, OUTPUT);

myservo1.attach(3);

myservo2.attach(5);

myservo3.attach(9);

myservo4.attach(10);

myservo5.attach(11);

Mi govorimo Arduino ploči na koju su spojene LED diode, servos i senzor udaljenosti. Tu nema šta da se menja.

nevažeći položaj1()(

digitalWrite(led, HIGH);

myservo2.writeMicroseconds(1300);

myservo4.writeMicroseconds(800);

myservo5.writeMicroseconds(1000);

Postoje neke stvari koje se ovdje mogu promijeniti. Postavio sam poziciju i nazvao je position1. Koristit će se u sljedećem programu. Ako želite dati drugačije kretanje, promijenite vrijednosti u zagradama između 0 i 3000.

Poslije toga:

void position2()(

digitalWrite(led,LOW);

myservo2.writeMicroseconds(1200);

myservo3.writeMicroseconds(1300);

myservo4.writeMicroseconds(1400);

myservo5.writeMicroseconds(2200);

Slično prethodnom komadu, samo u ovom slučaju to je pozicija2. Po istom principu možete dodati nove pozicije za kretanje.

dugo trajanje, udaljenost;

digitalWrite(trigPin, LOW);

kašnjenje mikrosekunde(2);

digitalWrite(trigPin, HIGH);

kašnjenje mikrosekunde(10);

digitalWrite(trigPin, LOW);

trajanje = pulseIn(echoPin, HIGH);

udaljenost = (trajanje/2) / 29,1;

Sada počinje raditi glavni kod programa. Ne bi trebao to mijenjati. Glavni zadatak gornjih linija je postavljanje senzora udaljenosti.

Poslije toga:

ako (udaljenost<= 30) {

ako (udaljenost< 10) {

myservo5.writeMicroseconds(2200); // otvoreni zahvat

myservo5.writeMicroseconds(1000); // bliski zahvat

Sada možete dodati nove pokrete ovisno o udaljenosti koju mjeri ultrazvučni senzor.

if(udaljenost<=30){ // данная строка обеспечивает переход в position1, если расстояние меньше 30 см.

pozicija1(); // u stvari, ruka će razraditi sve što navedete između zagrada ( )

else( // ako je udaljenost veća od 30 cm, idi na poziciju2

position()2 // isto kao i prethodni red

Možete promijeniti udaljenost u kodu i raditi šta god želite.

Zadnji redovi koda

if (udaljenost > 30 || udaljenost<= 0){

Serial.println("van dometa"); //izlaz u serijski monitor poruke da smo otišli izvan navedenog raspona

Serijski ispis (udaljenost);

Serial.println("cm"); //udaljenost u centimetrima

kašnjenje (500); //kašnjenje u 0,5 sekundi

Naravno, ovdje možete sve pretvoriti u milimetre, metre, promijeniti prikazanu poruku itd. Možete se malo poigrati sa kašnjenjem.

To je sve. Uživajte, nadogradite vlastite manipulatore, podijelite ideje i rezultate!

Ima pozadinsko osvetljenje. Ukupno, robot radi na 6 servomotora. Za izradu mehaničkog dijela korišten je akril debljine dva milimetra. Za izradu stativa, baza je uzeta od disko kugle, dok je jedan motor ugrađen direktno u nju.

Robot radi na Arduino ploči. Kao izvor napajanja koristi se kompjuterska jedinica.

Materijali i alati:
- 6 servo motora;
- akril debljine 2 mm (i još jedan manji komad debljine 4 mm);
- stativ (za stvaranje baze);
- ultrazvučni senzor udaljenosti tipa hc-sr04;
- Arduino Uno kontroler;
- regulator snage (proizveden samostalno);
- napajanje iz računara;
- kompjuter (potreban za Arduino programiranje);
- žice, alati itd.



Proces proizvodnje:

Prvi korak. Sastavljanje mehaničkog dijela robota
Mehanički dio se vrlo lako sklapa. Dva komada akrila moraju biti povezana pomoću servo motora. Druge dvije veze su povezane na sličan način. Što se tiče gripa, najbolje ga je kupiti preko interneta. Svi elementi su pričvršćeni vijcima.

Dužina prvog dijela je oko 19 cm, a drugog oko 17,5 cm, prednja karika je dužine 5,5 cm. Što se tiče ostalih elemenata, njihove dimenzije birate po vlastitom nahođenju.





Ugao rotacije na dnu mehaničke ruke mora biti 180 stepeni, tako da se servo motor mora ugraditi odozdo. U našem slučaju, potrebno ga je ugraditi u disko kuglu. Robot je već instaliran na servomotor.

Za ugradnju ultrazvučnog senzora trebat će vam komad akrila debljine 2 cm.

Za ugradnju hvataljke trebat će vam nekoliko vijaka i servomotor. Morate uzeti klackalicu sa servomotora i skratiti je dok ne stane u rukohvat. Zatim možete zategnuti dva mala vijka. Nakon ugradnje, servomotor se mora okrenuti u krajnji lijevi položaj i spojiti usne za hvatanje.

Sada je servomotor montiran na 4 vijka, pri čemu je važno osigurati da je u krajnjem lijevom položaju, a usne spojene.
Sada se servo može spojiti na ploču i provjeriti radi li grip.








Drugi korak. Robotsko osvjetljenje
Kako bi robot bio zanimljiviji, može biti osvijetljen. To se radi pomoću LED dioda različitih boja.


Treći korak. Povezivanje elektronskog dijela
Glavni kontroler za robota je Arduino ploča. Kao izvor napajanja koristi se kompjuterska jedinica, na njenim izlazima mora se naći napon od 5 volti. Trebalo bi biti ako multimetrom mjerite napon na crvenoj i crnoj žici. Ovaj napon je potreban za napajanje servomotora i senzora udaljenosti. Žute i crne žice bloka već proizvode 12 volti, potrebne su da Arduino radi.

Za servo, potrebno je napraviti pet konektora. Povezujemo 5V na plus, a minus na masu. Senzor udaljenosti je povezan na isti način.

Na ploči se nalazi i LED indikator napajanja. Za povezivanje koristi se otpornik od 100 oma između +5V i mase.










Izlazi servo uređaja su povezani sa PWM izlazima na Arduinu. Takve igle na ploči su označene znakom "~". Što se tiče ultrazvučnog senzora udaljenosti, on se može spojiti na pinove 6 i 7. LED je spojen na masu i 13. pin.

Sada možete početi sa programiranjem. Prije povezivanja putem USB-a, morate biti sigurni da je napajanje potpuno isključeno. Prilikom testiranja programa potrebno je isključiti i napajanje robota. Ako se to ne učini, kontroler će dobiti 5V sa USB-a i 12V iz napajanja.

Na dijagramu možete vidjeti da su potenciometri dodani za kontrolu servo motora. Oni nisu neophodna komponenta robota, ali predloženi kod neće raditi bez njih. Potenciometri su spojeni na pinove 0,1,2,3 i 4.

U krugu se nalazi otpornik R1, može se zamijeniti potenciometrom od 100 kΩ. Ovo će vam omogućiti da ručno podesite svjetlinu. Što se tiče otpornika R2, njihova vrijednost je 118 oma.

Evo liste glavnih čvorova koji su korišteni:
- 7 LED dioda;
- R2 - 118 Ohm otpornik;
- R1 - otpornik 100 kOhm;
- prekidač;
- fotootpornik;
- tranzistor bc547.

Četvrti korak. Programiranje i prvo lansiranje robota
Za upravljanje robotom korišteno je 5 potenciometara. Sasvim je realno takav sklop zamijeniti jednim potenciometrom i dva džojstika. Kako spojiti potenciometar je prikazano u prethodnom koraku. Nakon instaliranja skice, robot se može testirati.

Prvi testovi robota su pokazali da su instalirani servomotori tipa futuba s3003 slabi za robota. Mogu se koristiti samo za okretanje ruke ili hvatanje. Umjesto toga, autor je instalirao motore mg995. Idealna opcija bi bili motori mg946.

Od karakteristika ovog robota na Arduino platformi, može se primijetiti složenost njegovog dizajna. Roboarm se sastoji od mnogo poluga koje mu omogućavaju da se kreće u svim osovinama, hvata i pomiče razne stvari koristeći samo 4 servo motora. Nakon što ste sastavili takvog robota vlastitim rukama, sigurno ćete moći iznenaditi svoje prijatelje i rođake mogućnostima i ugodnim izgledom ovog uređaja! Zapamtite da uvijek možete koristiti naše RobotON Studio grafičko okruženje za programiranje!

Ako imate bilo kakvih pitanja ili komentara, uvijek smo u kontaktu! Kreirajte i podijelite svoje rezultate!

Posebnosti:

Za sastavljanje DIY robotske ruke trebat će vam dosta komponenti. Glavni dio zauzimaju 3D printani dijelovi, ima ih oko 18 (nije potrebno štampati slajd).Ako ste preuzeli i odštampali sve što vam treba, onda će vam trebati vijci, matice i elektronika:

  • 5 vijaka M4 20 mm, 1 x 40 mm i odgovarajuće matice protiv rotacije
  • 6 vijaka M3 10 mm, 1 x 20 mm i pripadajuće matice
  • Matična ploča sa spojnim žicama ili štitom
  • Arduino Nano
  • 4 servo motora SG 90

Nakon sastavljanja kućišta, VAŽNO je osigurati da se može slobodno kretati. Ako se ključne komponente Roboarm-a pomiču s poteškoćama, servo motori možda neće moći podnijeti opterećenje. Prilikom sastavljanja elektronike, morate imati na umu da je bolje spojiti krug na napajanje nakon potpune provjere veza. Da biste izbjegli oštećenje servosa SG 90, ne morate ručno okretati sam motor, ako nije potrebno. U slučaju da trebate razviti SG 90, morate glatko pomicati osovinu motora u različitim smjerovima.

karakteristike:
  • Jednostavno programiranje zbog prisustva malog broja motora, a istog tipa
  • Prisustvo mrtvih zona za neke servo
  • Široka primjena robota u svakodnevnom životu
  • Zanimljiv inženjerski rad
  • Potreba za korištenjem 3D štampača