Robot type "hånd. Robo-arm med handske og Arduino fjernbetjening

Vil først blive påvirket generelle spørgsmål, Derefter specifikationer resultater, detaljer og i sidste ende selve montageprocessen.

I det hele taget og generelt

Skabelse denne enhed bør generelt ikke volde nogen vanskeligheder. Det vil være nødvendigt kun kvalitativt at tænke over de muligheder, som vil være ret vanskelige at implementere med fysisk punkt syn, således at manipulatorarmen udfører de opgaver, den er tildelt.

Tekniske karakteristika for resultatet

En prøve med længde/højde/bredde parametre på henholdsvis 228/380/160 millimeter vil blive overvejet. Vægten vil være cirka 1 kg. Kablet til kontrol fjern. Estimeret montagetid med erfaring - cirka 6-8 timer. Hvis den ikke er der, så kan det tage dage, uger og med måneders overbevisning, før manipulatorarmen bliver samlet. Med dine egne hænder og alene i sådanne tilfælde er det værd at gøre undtagen for din egen interesse. Samlermotorer bruges til at flytte komponenterne. Med tilstrækkelig indsats kan du lave en enhed, der vil rotere 360 ​​grader. For at gøre arbejdet nemmere skal du ud over standardværktøjer som loddekolbe og loddekolbe også opbevare:

  1. Lang næsetang.
  2. Sideklippere.
  3. Krydsskruetrækker.
  4. 4 D batterier.

Fjernbetjeningen kan implementeres ved hjælp af knapper og en mikrocontroller. Hvis du vil lave trådløs fjernstyring, skal du bruge et handlingskontrolelement i manipulatorarmen. Som tilføjelser vil kun enheder (kondensatorer, modstande, transistorer) være nødvendige, der vil stabilisere kredsløbet og transmittere en strøm af den nødvendige størrelse gennem det på det rigtige tidspunkt.

Små dele

For at regulere antallet af omdrejninger kan du bruge overgangshjulene. De vil gøre manipulatorarmens bevægelse glat.

Du skal også sørge for, at ledningerne ikke komplicerer dens bevægelse. Det ville være optimalt at lægge dem inde i strukturen. Du kan gøre alt udefra, denne tilgang vil spare tid, men kan potentielt føre til vanskeligheder med at flytte individuelle noder eller hele enheden. Og nu: hvordan laver man en manipulator?

Forsamling generelt

Nu fortsætter vi direkte til oprettelsen af ​​manipulatorarmen. Vi tager udgangspunkt i fundamentet. Det er nødvendigt at sikre, at enheden kan drejes i alle retninger. god beslutning den vil blive placeret på en diskplatform, som drives af en enkelt motor. For at den kan rotere i begge retninger, er der to muligheder:

  1. Installation af to motorer. Hver af dem vil være ansvarlig for at vende i en bestemt retning. Når den ene arbejder, er den anden i ro.
  2. Installation af en motor med et kredsløb, der kan få den til at dreje i begge retninger.

Hvilken af ​​de foreslåede muligheder at vælge afhænger udelukkende af dig. Dernæst kommer hovedstrukturen. Af hensyn til arbejdets komfort er der brug for to "led". Fastgjort til platformen skal kunne læne sig ind forskellige sider, hvilket løses ved hjælp af motorer placeret ved dens base. Et andet eller et par bør placeres ved bøjningen af ​​albuen, så gribedelen kan bevæges langs koordinatsystemets vandrette og lodrette linjer. Yderligere, hvis du ønsker at få maksimale muligheder, kan du installere en anden motor ved håndleddet. Yderligere det mest nødvendige, uden hvilket manipulatorarmen ikke kan forestilles. Med dine egne hænder skal du lave selve optagelsesenheden. Der er mange implementeringsmuligheder her. Du kan give et tip om de to mest populære:

  1. Der bruges kun to fingre, som samtidig klemmer og løsner genstanden for fangst. Det er den enkleste implementering, som dog normalt ikke kan prale af en betydelig nyttelast.
  2. En prototype af en menneskelig hånd er ved at blive skabt. Her kan én motor bruges til alle fingre, ved hjælp af hvilken bøjning/udbøjning vil blive udført. Men du kan gøre designet mere kompliceret. Så du kan tilslutte en motor til hver finger og styre dem separat.

Dernæst er det tilbage at lave en fjernbetjening, ved hjælp af hvilken individuelle motorer og tempoet i deres arbejde vil blive påvirket. Og du kan begynde at eksperimentere med en gør-det-selv robotarm.

Mulige skematiske fremstillinger af resultatet

Giver rig mulighed for kreativ tænkning. Derfor er der givet flere implementeringer til din opmærksomhed, som du kan tage som grundlag for at skabe din egen egen enhed lignende formål.

Ethvert præsenteret skema af manipulatoren kan forbedres.

Konklusion

Det vigtige inden for robotteknologi er, at der praktisk talt ikke er nogen grænse for funktionel forbedring. Derfor, hvis du ønsker at skabe et rigtigt kunstværk, er det ikke svært. Når vi taler om mulige måder til yderligere forbedringer, skal det bemærkes kranmanipulatoren. Det vil ikke være svært at lave en sådan enhed med dine egne hænder, samtidig vil det give dig mulighed for at vænne børn til kreativt arbejde, videnskab og design. Og dette kan til gengæld påvirke deres fremtidige liv positivt. Vil det være svært at lave en kranmanipulator med egne hænder? Dette er ikke så problematisk, som det kan se ud ved første øjekast. Er det værd at tage sig af tilgængeligheden af ​​yderligere små dele som et kabel og hjul, som det vil dreje på.

Der er to hovedtilgange til spørgsmålet om robotarm. Det er muligt at skabe en robotarm med simple lineære bevægelser, med to eller tre fingre til at gribe de fleste objekter. Eller ret kompleks, med alle fem fingre, designet til fuldstændig at efterligne menneskehænder, der har bestået millioner af års evolution. Og det lykkedes dem at udvikle sådan en hånd, så hvis du vil have din robot til at udføre så mange bevægelser som muligt og have en humanoid hånd, er det nu blevet muligt.

På grund af den komplekse struktur af en ægte menneskelig hånd er biomimetiske antropomorfe hænder uundgåeligt forbundet med stor mængde problemer: du skal få dem til at fungere på en bestemt måde og bevare formen på den menneskelige hånd. Zhe Xu og Emanuel Todorov fra University of Washington i Seattle er gået amok og skabt den mest nøjagtige biomimetiske antropomorfe robotarm, man kan forestille sig, for fuldstændig at erstatte en menneskelig.

Ifølge Zhe Xu var det meget vigtigt for dem at udvikle sig den nye slags robotarm:

"Den traditionelle tilgang til at designe en antropomorf robotarm involverer mekanisering af biologiske dele ved hjælp af hængsler, stænger, ophæng for betydelig forenkling. Denne tilgang er uden tvivl nyttig til at forstå og tilnærme den menneskelige hånds kinematik generelt, men introducerer uundgåeligt dissonans mellem robot- og menneskehånden, da de fleste af de vigtige biomekaniske egenskaber ved den menneskelige hånd ikke tages i betragtning i mekaniseringsprocessen . Det iboende misforhold mellem mekanismerne i en robotarm og biomekanikken i en menneskelig hånd forhindrer os i det væsentlige i at bruge naturlige håndbevægelser til at kontrollere direkte. På nuværende tidspunkt er der således ikke en eneste antropomorf robothånd, der fuldt ud kan sammenlignes med en menneskelig.

Xu og Todorov besluttede at starte fra bunden og automatisk duplikere den menneskelige hånds bevægelser. De laserscannede først skelettet af en menneskelig hånd og derefter 3D-printede kunstige knogler, så de kunne duplikere de ufikserede ledakser, vi har.

Xu siger:

For eksempel bevægelser tommelfinger stole på kompleks form trapezknogle placeret i håndens carpometacarpale led. På grund af den uregelmæssige form af trapezknoglen er den nøjagtige placering af ledakserne i carpometacarpalleddet ikke fastlagt. Ingen af ​​de eksisterende eksempler på en antropomorf robothånd kan således gengive tommelfingerens naturlige bevægelser, da konventionelle mekaniske led kræver en fast rotationsakse. Ved at bruge laserscanning af en menneskelig håndmodel og 3D-print af kunstige fingerled, har vi opnået en række bevægelser, stivhed og dynamiske egenskaber meget tæt på menneskelige modparter. Vores robotarm bevarer unikt vigtig biomekanisk information på det anatomiske niveau."

Ledbåndene (som stabiliserer leddene og kontrollerer deres bevægelsesområde) er lavet af højstyrke Spectra-fibre, der bruger laserskåret gummiplader til at erstatte blødt væv.

Seneekstensorer og fleksorer (til fingerfleksion og -ekstension) er også laserskåret af Spectra-fibre og gummiplader til senebeklædningen og ekstensormusklen, som er en kompleks struktur med svømmehud, flerlagsstruktur, der vikler sig rundt om fingrene for bedre at styre fleksibiliteten og drejningsmoment. Musklerne består af et array af 10 Dynamixel servoer, hvorfra kablerne er ført for tæt at efterligne det menneskelige håndled.

Ud over at være nærmest et kunstværk, er hånden i stand til meget præcist at simulere en række forskellige greb, når den styres fra en fjernmanipulator. Operatører kan også udføre komplekse ikke-feedback-håndmanipulationer, da håndens kinematik matcher en rigtig menneskehånds.

Dette er et reelt gennembrud: det faktum, at hånden er designet til at efterligne den menneskelige hånd, hvilket betyder, at den efterligner den menneskelige hånd, primært på grund af dens design, ikke programmering. Dette har en masse potentielle fordele ved telemanipulation, da operatøren kan bruge sin egen håndfærdighed mere organisk.

Forskerne spekulerer i, at deres arme kan bruges "som 3D-stilladser til regenerering af lemmer."

Xu siger:

"Hændernes og føddernes arbejde afhænger i høj grad af den menneskelige hjerne. Derfor kunne neuroprotetiske teknologier blive meget mere effektive, hvis designet af protesen var mere som dens biologiske modstykke. Biokompatible materialer kan nu udskrives som knoglestrukturer, biologisk kunstige ledbånd kan bruges til at erstatte et afrevet forreste korsbånd, menneskelige muskler kan med succes dyrkes i en petriskål (en klar, fladcylindret laboratoriekar), og perifere nerver kan også blive regenereret af gunstige forhold. Alle disse lovende teknologier kræver passende stilladser til vækst af transplanterede celler. Vi vil samarbejde med biovidenskabsfolk og vævsingeniørforskere for yderligere at udforske perspektiverne og skabe bioenheder, stilladser inden for de nye områder inden for neuroprotetik og lemmerregenerering."

Udviklingen af ​​en biomimetisk antropomorf robotarm til regenerering af lemmer af Zhe Xu og Emanuel Todorov fra University of Washington vil blive præsenteret på ICRA i Stockholm til maj.

Abonner på Qibble på Viber og Telegram for at holde dig ajour med de mest interessante begivenheder.

Vi har udviklet en robotarm, som alle kan samle på egen hånd. I denne artikel vil vi tale om, hvordan man samler de mekaniske dele af vores manipulator.

Bemærk! Dette er en gammel artikel! Du kan læse den, hvis du er interesseret i projektets historie. Nuværende version.

Site manipulator

Her er en video af hendes arbejde:

Designbeskrivelse

Som grundlag tog vi manipulatoren præsenteret på Kickstarters hjemmeside, som hed uArm. Forfatterne af dette projekt lovede, at de efter færdiggørelsen af ​​virksomheden ville lægge alle kildekoderne ud, men dette skete ikke. Deres projekt er en fremragende kombination af vellavet hardware og software. Inspireret af deres erfaring besluttede vi at lave en lignende manipulator på egen hånd.
De fleste af de eksisterende manipulatorer antager placeringen af ​​motorerne direkte i leddene. Dette er strukturelt enklere, men det viser sig, at motorerne ikke kun skal løfte nyttelast men også andre motorer. Kickstarter-projektet har ikke denne ulempe, da kræfterne overføres gennem stængerne, og alle motorerne er placeret i bunden.
Den anden fordel ved designet er, at platformen til placering af værktøjet (greb, sugekop osv.) altid er parallel med arbejdsfladen.

Som et resultat har manipulatoren tre servoer (tre frihedsgrader), som gør det muligt for den at flytte værktøjet langs alle tre akser.

Servo drev

Til vores manipulator brugte vi Hitec HS-485 servoer. Disse er ret dyre digitale servoer, men for deres penge giver de en ærlig kraft på 4,8 kg/cm, nøjagtig positionering og acceptabel hastighed.
De kan udskiftes med andre med samme dimensioner.

Manipulator udvikling

Til at begynde med lavede vi en model i SketchUp. Vi tjekkede designet for montering og mobilitet.

Vi var nødt til at forenkle designet en smule. Det originale projekt brugte lejer, der er svære at få. Det besluttede vi også indledende fase ikke fange. Til at begynde med planlægger vi at lave en kontrolleret lampe ud af manipulatoren.
Vi besluttede at lave manipulatoren af ​​plexiglas. Det er ret billigt, ser godt ud og er nemt at skære med laser. Til skæring er det nok at tegne de nødvendige detaljer i enhver vektoreditor. Vi gjorde det i NanoCad:

Plexiglasskæring

Vi bestiller udskæring af plexiglas fra et firma beliggende nær Jekaterinburg. De gør det hurtigt, effektivt og afviser ikke små ordrer. Skæring af sådanne dele vil koste omkring 800 rubler. Som et resultat vil du få udskårne dele på begge sider, som der er polyethylen film. Denne film er nødvendig for at beskytte materialet mod dannelse af skalaer.

Denne film skal fjernes fra begge sider.

Vi bestilte også gravering på overfladen af ​​nogle dele. Til gravering skal du blot tegne billedet på et separat lag og angive dette ved bestilling. Indgraveringssteder skal rengøres med en tandbørste og gnides med støv. Det blev meget godt:

Som et resultat, efter at have fjernet filmen og fugemassen, fik vi dette:

Montering af manipulatoren

Først skal du samle fem dele:






I bunden er det nødvendigt at bruge skruer med madlavning i gryde. Du bliver nødt til at bore lidt huller, så armen kan dreje.


Efter at disse dele er samlet, er det kun tilbage at skrue dem på servoarmene og smide stængerne på for at placere værktøjet. Det er ret svært at skrue nøjagtigt to drev i bunden:

Først skal du installere en 40 mm lang hårnål (vist med den gule linje på billedet), og derefter skrue gyngestolene.
Til hængslerne brugte vi almindelige M3-skruer og nylonindsatsmøtrikker for at forhindre selvløsning. Disse møtrikker er tydeligt synlige for enden af ​​manipulatoren:

Indtil videre er dette kun et fladt område, som vi planlægger at montere en pære på til at begynde med.

Samlet manipulator

Resultater

Nu arbejder vi på elektronik og software og vil snart fortælle dig om projektets fortsættelse, så vi har indtil videre ikke mulighed for at demonstrere dets arbejde.
I fremtiden planlægger vi at udstyre manipulatoren med en griber og tilføje lejer.
Hvis du har et ønske om at lave din egen manipulator, kan du downloade filen til klipning .
Liste over skruer, du skal bruge:

  1. M4x10 topskrue, 12 stk
  2. M3x60 skrue, 1 stk
  3. M3x40 hårnål, 1 stk (du skal muligvis forkorte den lidt med en fil)
  4. M3x16 hovedskrue under h/h, 4 stk
  5. M3x16 forsænket skrue, 8 stk
  6. M3x12 hovedskrue under h/v, 6 stk
  7. M3x10 hovedskrue under h/h, 22 stk
  8. M3x10 forsænket skrue, 8 stk
  9. M2x6 skrue med hoved. under h/h, 12 stk
  10. M3x40 messing hun-hun stander, 8 stk
  11. M3x27 messing kvinde-mor stativ, 5 stk
  12. M4 møtrik, 12 stk
  13. M3 møtrik, 33 stk
  14. M3 møtrik med nylonlås, 11 stk
  15. M2 møtrik, 12 stk
  16. skiver

UPD1

Der er gået meget tid siden publiceringen af ​​denne artikel. Hendes første formation var gul, og hun var ekstremt forfærdelig. Den røde arm var ikke længere flov at vise på pladsen, men uden lejer fungerede den stadig ikke godt nok, og den var også svær at samle.
Vi lavede en gennemsigtig version med lejer, der fungerede meget bedre, og montageprocessen var bedre gennemtænkt. Denne version af manipulatoren nåede endda at besøge flere udstillinger.

MeArm robotarmen er en lommeversion af en industriarm. MeArm er en let at samle og styre robot, mekanisk arm. Manipulatoren har fire frihedsgrader, som gør det nemt at gribe og flytte forskellige små genstande.

Dette produkt præsenteres som et samlesæt. Indeholder følgende dele:

  • et sæt dele lavet af gennemsigtig akryl til montering af en mekanisk manipulator;
  • 4 servoer;
  • kontroltavle indeholdende Arduino mikrocontroller Pro micro og Nokia 5110 grafisk display;
  • joystick board indeholdende to to-koordinat analoge joysticks;
  • USB-kabel ernæring.


Før du samler en mekanisk manipulator, er det nødvendigt at kalibrere servoerne. Til kalibrering vil vi bruge Arduino-controlleren. Vi forbinder servoerne til Arduino-kortet (en ekstern strømforsyning 5-6V 2A er påkrævet).

Servo midt, venstre, højre, klo ; // opret 4 Servo objekter

Ugyldig opsætning()
{
Serial.begin(9600);
midt.vedhæft(11); // forbinder en servo til pin 11 for platformsrotation
venstre.vedhæft(10); // forbinder en servo til pin 10 på venstre skulder
højre.vedhæft(9); // forbinder en servo til pin 11 på højre skulder
klo.vedhæfte(6); // fastgør servo til pin 6 klo (fangst)
}

Ugyldig løkke()
{
// indstiller servoens position efter værdi (i grader)
middle.write(90);
venstre.skriv(90);
højre.skriv(90);
claw.write(25);
forsinkelse(300);
}
Brug en markør til at tegne en streg gennem servomotorhuset og spindlen. Tilslut plastikvippen fra sættet til servoen som vist nedenfor ved hjælp af den lille skrue fra servomonteringssættet. Vi vil bruge dem i denne position, når vi samler den mekaniske del af MeArm. Pas på ikke at flytte spindelpositionen.


Nu kan du samle den mekaniske manipulator.
Tag basen og fastgør benene til dens hjørner. Derefter installerer vi fire 20 mm bolte og skruer møtrikker på dem (halvdelen af ​​den samlede længde).

Nu fastgør vi centerservoen med to 8 mm bolte til en lille plade og fastgør den resulterende struktur til basen med 20 mm bolte.

Vi samler den venstre del af strukturen.

Vi samler den rigtige del af strukturen.

Nu skal du forbinde venstre og højre sektion. Først går jeg til adapterpladen

Så den rigtige, og vi får

Forbindelse af strukturen til platformen

Og vi samler "kloen"

Vi fastgør "kloen"

Til montering kan du bruge følgende manual (på engelsk) eller monteringsvejledningen til en lignende manipulator (på russisk).

Pinout

Nu kan du begynde at skrive Arduino-kode. For at styre manipulatoren, sammen med evnen til at styre styringen ved hjælp af et joystick, ville det være rart at dirigere manipulatoren til et bestemt punkt Cartesiske koordinater(x, y, z). Der er et tilsvarende bibliotek, der kan downloades fra github - https://github.com/mimeindustries/MeArm/tree/master/Code/Arduino/BobStonesArduinoCode.
Koordinaterne måles i mm fra rotationscentrum. Udgangspositionen er ved (0, 100, 50), dvs. 100 mm frem fra basen og 50 mm fra jorden.
Et eksempel på brug af biblioteket til at indstille manipulatoren til et bestemt punkt i kartesiske koordinater:

#include "meArm.h"
#omfatte

Ugyldig opsætning() (
arm.begin(11, 10, 9, 6);
arm.openGripper();
}

void loop() (
// op og til venstre
arm.gotoPoint(-80.100.140);
// fange
arm.closeGripper();
// ned, skade og ret
arm.gotoPoint(70,200,10);
// slip greb
arm.openGripper();
// retur med udgangspunkt
arm.gotoPoint(0,100,50);
}

meArm klasse metoder:

ugyldig begynde(int pinBase, int pinSkulder, int pinAlbue, int pinGripper) - start meArm, tilslutningsstifter til midterste, venstre, højre, kloservoer er angivet. Skal kaldes i setup();
ugyldig openGripper() - åben fangst;
ugyldig lukGripper() - fange;
ugyldig gotoPoint(flyde x, flyde y, flyde z) - flyt manipulatoren til positionen af ​​kartesiske koordinater (x, y, z);
flyde getX() - nuværende X-koordinat;
flyde fåY() - nuværende Y-koordinat;
flyde getZ() - nuværende Z-koordinat.

Monteringsvejledning

Dette projekt er en modulær opgave på flere niveauer. Den første fase af projektet er samlingen af ​​robotarmmodulet, der leveres som et sæt dele. Den anden fase af opgaven vil være at samle IBM PC-grænsefladen også fra et sæt dele. Endelig er den tredje fase af opgaven oprettelsen af ​​stemmestyringsmodulet.

Robotarmen kan betjenes manuelt ved hjælp af håndbetjeningen, der er inkluderet i sættet. Robotarmen kan også styres enten via et samlet IBM PC-interface eller ved hjælp af et stemmestyringsmodul. IBM PC-interfacesættet giver dig mulighed for at styre og programmere robottens handlinger gennem en IBM PC-arbejdscomputer. Stemmestyringsenheden giver dig mulighed for at styre robottens arm ved hjælp af stemmekommandoer.

Alle disse moduler udgør tilsammen funktionel enhed, som giver dig mulighed for at udføre eksperimenter og programmere automatiserede sekvenser af handlinger, eller endda "animere" en fuldt "kablet" manipulatorarm.

PC-grænsefladen giver dig mulighed for at programmere manipulatorarmen til en kæde af automatiske handlinger ved hjælp af en personlig computer eller at "genoplive" den. Der er også en mulighed, hvor du kan styre hånden interaktivt ved hjælp af enten håndcontrolleren eller et Windows 95/98-program. Håndens "animation" er "underholdnings"-delen af ​​kæden af ​​programmerede automatiserede handlinger. For eksempel, hvis du sætter en babyhandskedukke på en manipulatorarm og programmerer enheden til at vise et lille show, så vil du programmere den elektroniske dukke til at "animere". Programmering af automatiserede handlinger finder bred anvendelse i industrien og underholdningsindustrien.

Den mest udbredte robot i industrien er robotarmen. Robotarmen er et ekstremt fleksibelt værktøj, om ikke andet fordi endesegmentet af armmanipulatoren kan være det passende værktøj, der kræves til en bestemt opgave eller produktion. For eksempel kan en leddelt svejsearm bruges til punktsvejsning, en sprøjtedyse kan bruges til at male forskellige dele og samlinger, og en griber kan bruges til at klemme og fastholde genstande, for blot at nævne nogle få.

Så som vi kan se, udfører robotarmen mange nyttige funktioner og kan tjene som et ideelt værktøj til at studere forskellige processer. Men at skabe en robotarm fra bunden er vanskelig opgave. Det er meget lettere at samle en hånd fra detaljerne i det færdige sæt. OWI sælger nok gode sæt manipulatorarme, tilgængelige fra mange elektronikforhandlere (se reservedelslisten i slutningen af ​​dette kapitel). Ved hjælp af grænsefladen kan du tilslutte den samlede manipulatorarm til printerporten på en fungerende computer. Du kan bruge en IBM PC-serie eller en kompatibel maskine, der understøtter DOS eller Windows 95/98, som din arbejdscomputer.

Når først den er tilsluttet computerens printerport, kan robotarmen styres interaktivt eller programmatisk fra computeren. Håndbetjening i interaktiv tilstand er meget enkel. For at gøre dette skal du blot klikke på en af ​​funktionstasterne for at sende en kommando til robotten om at udføre en bestemt bevægelse. Et tryk på tasten en anden gang afslutter kommandoen.

Programmering af en kæde af automatiserede handlinger er heller ikke svært. Klik først på knappen Program for at gå ind i programtilstand. I denne mod fungerer hånden nøjagtigt som beskrevet ovenfor, men derudover er hver funktion og tidspunktet for dens handling fastsat i script-filen. En scriptfil kan indeholde op til 99 forskellige funktioner, inklusive pauser. Selve scriptfilen kan afspilles 99 gange. Optagelse af forskellige script-filer giver dig mulighed for at eksperimentere med en computerstyret sekvens af automatiserede handlinger og "genoplive" hånden. Arbejde med programmet under Windows 95/98 er beskrevet mere detaljeret nedenfor. Windows-programmet er inkluderet i robotarminterfacesættet eller kan downloades gratis fra internettet http://www.imagesco.com.

I tillæg til Windows program hånd kan styres ved hjælp af BASIC eller QBASIC. DOS-niveauprogrammet er indeholdt på de disketter, der følger med interfacesættet. DOS-programmet tillader dog kun interaktiv styring ved hjælp af tastaturet (se udskrift af BASIC-programmet på en af ​​disketterne). DOS-niveauprogrammet tillader dig ikke at oprette scriptfiler. Men hvis du har GRUNDLÆGGENDE programmeringserfaring, så kan manipulatorarmens bevægelsessekvens programmeres på samme måde som scriptfilen brugt i Windows-programmet. Rækkefølgen af ​​bevægelser kan gentages, som man gør i mange "animerede" robotter.

Robotarm

Manipulatorarmen (se fig. 15.1) har tre grader af bevægelsesfrihed. Albueleddet kan bevæge sig lodret op og ned i en bue på cirka 135°. Skulder "leddet" bevæger grebet frem og tilbage i en bue på cirka 120°. Armen kan drejes på basen med eller mod uret i en vinkel på cirka 350°. Robotarmgriberen kan opfange og holde genstande op til 5 cm i diameter og rotere omkring 340° omkring håndleddet.

Ris. 15.1. Kinematisk skema bevægelser og drejninger af robotarmen


OWI Robotic Arm Trainer brugte fem miniature DC-motorer til at drive armen. Motorer giver håndkontrol med ledninger. Denne "kablede" kontrol betyder, at hver funktion af robottens bevægelse (dvs. betjeningen af ​​den tilsvarende motor) styres af separate ledninger (påføring af spænding). Hver af de fem DC-motorer styrer sin egen armbevægelse. Kablet kontrol giver dig mulighed for at lave en håndkontrolenhed, der reagerer direkte på elektriske signaler. Dette forenkler layoutet af robotarmgrænsefladen, der forbinder til printerporten.

Armen er lavet af letvægtsplastik. De fleste af de dele, der bærer hovedbelastningen, er også lavet af plastik. DC-motorerne, der bruges i armdesignet, er miniaturemotorer med høj hastighed og lavt drejningsmoment. For at øge drejningsmomentet er hver motor forbundet til en gearkasse. Motorerne sammen med gearkasserne er installeret inde i strukturen af ​​manipulatorarmen. Selvom gearkassen øger drejningsmomentet, kan robotarmen ikke løfte eller bære tunge nok genstande. Anbefalet maksimum tilladt vægt når hævet er 130 g.

Robotarmsættet og dets komponenter er vist i figur 15.2 og 15.3.


Ris. 15.2. Robotarmsæt



Ris. 15.3. Gearkasse før montering

Motorstyringsprincip

For at forstå, hvordan styring via ledning fungerer, lad os se på, hvordan et digitalt signal styrer driften af ​​en enkelt DC-motor. To komplementære transistorer er nødvendige for at styre motoren. Den ene transistor har ledningsevne af PNP-type, den anden har henholdsvis ledningsevne af NPN-type. Hver transistor fungerer som en elektronisk omskifter, der styrer strømmen gennem DC-motoren. Retningen af ​​strømstrømmen, der styres af hver af transistorerne, er modsatte. Strømretningen bestemmer motorens rotationsretning, henholdsvis med eller mod uret. På fig. Figur 15.4 viser et testkredsløb, som du kan samle, før du laver en grænseflade. Bemærk, at når begge transistorer er slukket, er motoren slukket. Kun én transistor bør være tændt ad gangen. Hvis begge transistorer ved et uheld tændes på et tidspunkt, vil dette føre til en kortslutning. Hver motor drives af to grænsefladetransistorer, der fungerer på samme måde.


Ris. 15.4. Checker Diagram

PC interface design

PC-grænsefladediagrammet er vist i fig. 15.5. Sættet af pc-grænsefladedele inkluderer et printkort, hvorpå delenes placering er vist i fig. 15.6.


Ris. 15.5. kredsløbsdiagram PC interface



Ris. 15.6. Layout af PC interface dele


Først og fremmest skal du bestemme siden af ​​det trykte kredsløb. På monteringssiden er der tegnet hvide linjer for at repræsentere modstande, transistorer, dioder, IC'er og et DB25-stik. Alle dele indsættes i pladen fra monteringssiden.

Generel bemærkning: Efter lodning af delen til PCB-lederne fjernes for lange ledninger fra printsiden. Det er meget praktisk at følge en bestemt rækkefølge, når du monterer dele. Monter først 100 kΩ modstandene (farvede ringe: brun, sort, gul, guld eller sølv), som er mærket R1-R10. Monter derefter 5 dioder D1-D5 og sørg for, at den sorte stribe på dioderne er mod DB25-stikket som vist med de hvide streger markeret på monteringssiden af ​​printkortet. Monter derefter 15 kΩ modstandene (farvekodet brun, grøn, orange, guld eller sølv) mærket R11 og R13. Ved position R12 skal du lodde en rød LED til kortet. LED'ens anode svarer til hullet til R12, markeret med et +-tegn. Monter derefter de 14- og 20-benede stik under U1 og U2 IC'erne. Monter og lod vinkeltype DB25-stikket. Forsøg ikke at skubbe stikbenene ind i kortet med for meget kraft, kun præcision er påkrævet her. Ryst forsigtigt stikket om nødvendigt, og pas på ikke at bøje stiftbenene. Fastgør skydekontakten og spændingsregulator af type 7805. Klip fire stykker ledning til den ønskede længde og lod til toppen af ​​kontakten. Hold ledningsarrangementet som vist på figuren. Indsæt og lod transistorerne TIP 120 og TIP 125. Lod til sidst 8-bens sokkel og 75 mm tilslutningskabel. Basen er monteret, så de længste terminaler kigger op. Indsæt to IC'er - 74LS373 og 74LS164 - i deres respektive stik. Sørg for, at nøglepositionen for IC'en på dækslet matcher nøglen, der er markeret med hvide streger på printkortet. Du har måske bemærket, at der er plads tilbage på tavlen til yderligere dele. Denne placering er til netværksadapteren. På fig. 15.7 viser et fotografi af den færdige grænseflade fra monteringssiden.


Ris. 15.7. PC-interface samlet. Udsigt fra oven

Sådan fungerer grænsefladen

Manipulatorarmen har fem jævnstrømsmotorer. Derfor har vi brug for 10 input/output busser til at styre hver motor, inklusive rotationsretningen. Den parallelle (printer) port på IBM PC'en og kompatible maskiner indeholder kun otte I/O-busser. For at øge antallet af styrebusser i robotarmgrænsefladen bruges IC 74LS164, som er en seriel-til-parallel (SIPO) konverter. Ved kun at bruge to parallelle portbusser D0 og D1, som sender seriekoden til IC'en, kan vi få otte ekstra I/O-busser. Som nævnt kan der oprettes otte I/O-busser, men denne grænseflade bruger fem af dem.

Når en seriel kode indlæses til 74LS164 IC, vises den tilsvarende parallelle kode ved udgangen af ​​IC. Hvis udgangene på 74LS164 var direkte forbundet med indgangene på kontroltransistorerne, ville individuelle funktioner på manipulatorarmen tændes og slukkes i tide med afsendelsen af ​​seriekoden. Denne situation er naturligvis uacceptabel. For at undgå dette indføres en anden IC 74LS373 i interfacekredsløbet - en styret otte-kanals elektronisk nøgle.

74LS373 otte-kanals switcher har otte input og otte output busser. Den binære information, der er til stede på indgangsbusserne, sendes kun til de tilsvarende udgange på IC'en, hvis aktiveringssignalet påføres IC'en. Efter at have slukket for aktiveringssignalet Nuværende tilstand af busudgangene gemmes (lagres). I denne tilstand har signalerne ved indgangen til IC'en ingen effekt på udgangsbussernes tilstand.

Efter at den serielle pakke med information er blevet sendt til 74LS164, sender D2-pinden på parallelporten et aktiveringssignal til 74LS373. Dette giver dig mulighed for at overføre information allerede i parallel kode fra indgangen på IC 74LS174 til dens udgangsbusser. Udgangsbussernes tilstand styres af TIP 120 transistorerne, som igen styrer manipulatorarmens funktioner. Processen gentages for hver nyt hold på manipulatorens hånd. Parallelportbusserne D3-D7 driver TIP 125-transistorerne direkte.

Tilslutning af grænsefladen til manipulatorarmen

Robotarmen er drevet af en 6 V strømforsyning bestående af fire D-elementer placeret i bunden af ​​strukturen. PC-grænsefladen er også drevet af denne 6V-forsyning. Strømforsyningen er bipolær og giver ±3V-spændinger. Strøm leveres til grænsefladen gennem et otte-benet Molex-stik, der er fastgjort til manipulatorens bund.

Tilslut interfacet til manipulatorarmen ved hjælp af et 75 mm otte-leder Molex-kabel. Molex-kablet forbindes til stikket placeret i bunden af ​​manipulatoren (se figur 15.8). Kontroller, at stikket er sat korrekt og sikkert i. For at forbinde interfacekortet til computeren bruges et 180 cm langt DB25-kabel, som medfølger i sættet. Den ene ende af kablet sluttes til printerporten. Den anden ende forbindes til DB25-stikket på interfacekortet.


Ris. 15.8. Tilslutning af pc-grænsefladen til robotarmen


I de fleste tilfælde er en printer normalt tilsluttet printerporten. For at undgå besværet med at tilslutte og frakoble stik, hver gang du vil bruge pagajen, er det en god idé at købe en A/B Printer Bus On/Off Switch Box (DB25). Tilslut manipulatorinterfacestikket til indgang A og printeren til indgang B. Nu kan du bruge kontakten til at forbinde computeren til enten printeren eller interfacet.

Installation af programmet under Windows 95

Indsæt en 3,5" diskette mærket "Disc 1" i diskettedrevet og kør installationsprogrammet (setup.exe). Installationsprogrammet vil oprette en mappe med navnet "Billeder" på din harddisk og kopiere de nødvendige filer til denne mappe. Start Billedikonet vises i menuen For at starte programmet skal du klikke på Billeder-ikonet i startmenuen.

Arbejder med programmet under Windows 95

Tilslut interfacet til computerens printerport med et 180 cm langt DB 25-kabel. Tilslut interfacet til bunden af ​​manipulatorarmen. Indtil et bestemt tidspunkt skal du holde grænsefladen i slukket tilstand. Hvis interfacet er tændt på dette tidspunkt, kan de oplysninger, der er gemt i printerporten, forårsage bevægelser af manipulatorarmen.

Start programmet ved at dobbeltklikke på ikonet Billeder i startmenuen. Programvinduet er vist i fig. 15.9. Når programmet kører, bør den røde LED på interfacekortet blinke. Bemærk: grænsefladen behøver ikke at være tændt for at LED'en begynder at blinke. LED'ens blinkhastighed bestemmes af hastigheden på din computers processor. Lysdiodens flimren kan være meget svag; for at bemærke dette, skal du muligvis dæmpe lyset i rummet og folde håndfladerne sammen for at observere LED'en. Hvis LED'en ikke blinker, kan programmet få adgang til den forkerte portadresse (LPT-port). For at skifte grænsefladen til en anden portadresse (LPT-port), skal du gå til boksen Printerportindstillinger i øverste højre hjørne af skærmen. Vælg en anden mulighed. Korrekt installation portadresse vil få LED'en til at blinke.


Ris. 15.9. Skærmbillede af pc-grænsefladeprogrammet under Windows


Når LED'en blinker, skal du klikke på Puuse-ikonet og først derefter tænde for grænsefladen. Et klik på den tilsvarende funktionstast vil forårsage responsbevægelsen af ​​manipulatorarmen. Hvis du klikker igen, stoppes bevægelsen. Brug af funktionstasterne til at styre hånden kaldes interaktiv modekontrol.

Oprettelse af en script-fil

Script-filer bruges til at programmere bevægelser og automatiserede sekvenser af handlinger af manipulatorarmen. Scriptfilen indeholder en liste over midlertidige kommandoer, der styrer manipulatorarmens bevægelser. Det er meget nemt at oprette en script-fil. For at oprette en fil skal du klikke på programtasten. Denne handling vil give dig mulighed for at gå ind i måden at "programmere" scriptfilen. Ved at trykke på funktionstasterne vil vi kontrollere håndens bevægelser, som vi allerede gjorde, men informationen om kommandoerne vil blive registreret i den gule scripttabel, der er placeret i nederste venstre hjørne af skærmen. Trinnummeret, startende fra et, vil blive angivet i venstre kolonne, og for hver ny kommando vil det øges med én. Bevægelsestypen (funktion) er angivet i den midterste kolonne. Når funktionstasten klikkes igen, stopper bevægelsesudførelsen, og værdien af ​​bevægelsesudførelsestiden fra dens begyndelse til slutningen vises i tredje kolonne. Bevægelsens udførelsestid er angivet med en nøjagtighed på et kvart sekund. Fortsat på samme måde kan brugeren programmere op til 99 bevægelser ind i script-filen, inklusive pauser i tid. Derefter kan scriptfilen gemmes og senere indlæses fra en hvilken som helst mappe. Udførelsen af ​​script-fil-kommandoer kan gentages op til 99 gange, hvor du skal indtaste antallet af gentagelser i Gentag-vinduet og klikke på Start. For at afslutte skrivningen til scriptfilen skal du trykke på den interaktive tast. Denne kommando vil bringe computeren tilbage i interaktiv tilstand.

"Genoplivning" af objekter

Script-filer kan bruges til computerautomatisering af handlinger eller til "animation" af objekter. I tilfælde af "animation" af objekter er det kontrollerede robotmekaniske "skelet" normalt dækket af en ydre skal og er ikke i sig selv synligt. Husker du handskedukken beskrevet i begyndelsen af ​​kapitlet? Den ydre skal kan tage form af en person (delvist eller helt), en alien, et dyr, en plante, en sten og alt muligt andet.

Ansøgningsgrænser

Hvis du vil nå fagligt niveau ved at udføre automatiserede handlinger eller "animere" objekter, så, så at sige, for at opretholde brandet, bør positioneringsnøjagtigheden ved udførelse af bevægelser i hvert øjeblik nærme sig 100%.

Du kan dog bemærke, at når sekvensen af ​​handlinger, der er registreret i scriptfilen, gentages, vil positionen af ​​manipulatorarmen (bevægelsesmønsteret) afvige fra den originale. Dette sker af flere årsager. Efterhånden som armstrømforsyningens batterier aflades, resulterer reduktionen i strømforsyningen til DC-motorerne i en reduktion i motorernes drejningsmoment og hastighed. Således vil længden af ​​manipulatorens bevægelse og højden af ​​den løftede last i samme tidsrum være forskellig for døde og "friske" batterier. Men årsagen er ikke kun dette. Selv med en stabiliseret strømforsyning vil motorakselhastigheden svinge, fordi der ikke er nogen motorhastighedsregulator. For hver fast tidslængde vil antallet af omdrejninger være lidt forskelligt hver gang. Dette vil føre til, at hver gang positionen af ​​manipulatorarmen også vil variere. For at toppe det er der et vist slør i gearkassens gear, som der heller ikke er taget højde for. Under påvirkning af alle disse faktorer, som vi har undersøgt i detaljer her, når en cyklus af gentagne kommandoer af en scriptfil udføres, vil positionen af ​​manipulatorarmen være en smule anderledes hver gang.

Søgning på hjemmeposition

Du kan forbedre betjeningen af ​​enheden ved at tilføje et feedbackkredsløb, der overvåger manipulatorarmens position. Denne information kan indtastes i en computer for at bestemme manipulatorens absolutte position. Med et sådant positionsfeedbacksystem er det muligt at indstille positionen af ​​manipulatorarmen til det samme punkt i begyndelsen af ​​udførelsen af ​​hver sekvens af kommandoer, der er registreret i scriptfilen.

Det er der mange muligheder for. I en af ​​hovedmetoderne er positionskontrol på hvert punkt ikke tilvejebragt. I stedet bruges et sæt endestopkontakter, der svarer til den oprindelige "start"-position. Endeafbrydere bestemmer nøjagtigt kun én position - når manipulatoren når "start"-positionen. For at gøre dette skal du indstille rækkefølgen af ​​endestopkontakter (knapper) på en sådan måde, at de lukker, når manipulatoren når yderpositionen i en eller anden retning. For eksempel kan en endestopkontakt installeres på bunden af ​​manipulatoren. Kontakten bør kun fungere, når armen når sin endeposition, når den drejes med uret. Andre endestopkontakter skal monteres på skulder- og albueleddet. De bør aktiveres, når det tilsvarende led er helt udstrakt. En anden kontakt er monteret på børsten og aktiveres, når børsten drejes helt med uret. Den sidste endestopkontakt monteres på grebet og lukker, når den er helt åben. For at nulstille manipulatoren udføres hver mulig bevægelse af manipulatoren i den nødvendige retning for at lukke den tilsvarende endestop, indtil denne kontakt lukker. Efter at startpositionen for hver bevægelse er nået, vil computeren nøjagtigt "kende" den sande position af manipulatorarmen.

Efter at have nået den oprindelige position, kan vi genstarte programmet skrevet i script-filen, baseret på den antagelse, at positioneringsfejlen under udførelsen af ​​hver cyklus vil akkumulere langsomt nok til at det ikke vil føre til for store afvigelser af manipulatorens position fra den ønskede. Efter at scriptfilen er udført, sættes hånden til sin oprindelige position, og scriptfilens cyklus gentages.

I nogle sekvenser er det ikke nok at kende kun startpositionen, for eksempel når man løfter et æg uden risiko for at knuse dets skal. I sådanne tilfælde er der behov for et mere komplekst og præcist positionsfeedbacksystem. Signalerne fra sensorerne kan behandles ved hjælp af ADC. De modtagne signaler kan bruges til at bestemme værdierne af parametre som position, tryk, hastighed og drejningsmoment. Det følgende enkle eksempel kan tjene som illustration. Forestil dig, at du har knyttet en lille lineær variabel modstand til capture-noden. Den variable modstand er indstillet på en sådan måde, at bevægelsen af ​​dens skyder frem og tilbage er forbundet med åbning og lukning af grebet. Afhængig af graden af ​​åbning af grebet ændres modstanden af ​​den variable modstand således. Efter kalibrering kan du ved at måle den variable modstands nuværende modstand indstille åbningsvinklen for gribeklemmerne nøjagtigt.

Oprettelse af et sådant feedbacksystem introducerer et andet kompleksitetsniveau i enheden og fører følgelig til dens prisstigning. Derfor mere enkel mulighed er indførelsen af ​​systemet manuel kontrol at korrigere manipulatorarmens position og bevægelser under udførelsen af ​​scriptprogrammet.

Manuelt interface kontrolsystem

Når du har verificeret, at grænsefladen fungerer korrekt, kan du bruge det 8-benede flade stik til at forbinde den manuelle kontrolenhed til den. Kontroller forbindelsespositionen af ​​det 8-benede Molex stik til stikhovedet på interfacekortet som vist i fig. 15.10. Indsæt forsigtigt stikket, indtil det er sikkert forbundet. Derefter kan manipulatorarmen til enhver tid styres fra håndbetjeningen. Det er ligegyldigt, om grænsefladen er tilsluttet en computer eller ej.


Ris. 15.10. Tilslutning af den manuelle styring

DOS-tastaturkontrolprogram

Der er et DOS-program, der giver dig mulighed for at styre betjeningen af ​​manipulatorarmen fra computerens tastatur i interaktiv tilstand. Listen over nøgler, der svarer til udførelsen af ​​en bestemt funktion, er angivet i tabellen.

Ved stemmestyring af manipulatorarmen anvendes et talegenkendelsessæt (SCR), som er beskrevet i Kap. 7. I dette kapitel vil vi lave en grænseflade, der forbinder URR med manipulatorarmen. Denne grænseflade er også tilgængelig som et sæt fra Images SI, Inc.

Interfacediagrammet for RRR er vist i fig. 15.11. Interfacet bruger en 16F84 mikrocontroller. Programmet til mikrocontrolleren ser sådan ud:


'URR interface program

Symbol Port A = 5

Symbol TRISA = 133

Symbol Port B = 6

Symbol TRISB = 134

Hvis bit4 = 0, udløs 'Hvis skrivning til trigger er aktiveret, læs skema

Gå til start 'Gentag

pause 500 'Vent 0,5 sek

Peek PortB, B0 'Læs BCD-kode

Hvis bit5 = 1, så send 'Output kode

skal du starte 'Gentag

kig PortA, b0 'Læs port A

hvis bit4 = 1 så elleve 'Er tallet 11?

stikke PortB, b0 'Output kode

skal du starte 'Gentag

hvis bit0 = 0, så ti

skal du starte 'Gentag

skal du starte 'Gentag



Ris. 15.11. Skema af URR-controlleren til en robotarm


Softwareopdatering under 16F84 kan downloades gratis fra http://www.imagesco.com

URR interface programmering

Programmeringen af ​​RRS-grænsefladen svarer til programmeringen af ​​RRS'en fra det sæt, der er beskrevet i kap. 7. For korrekt betjening arm, skal du programmere kommandoordene efter de tal, der svarer til manipulatorens specifikke bevægelse. I tabel. 15.1 viser eksempler på kommandoord, der styrer betjeningen af ​​manipulatorarmen. Du kan vælge kommandoord efter din smag.

Tabel 15.1

Reservedelsliste til pc-interface

(5) NPN TIP120 transistor

(5) Transistor PNP TIP 125

(1) IC 74164 kodekonverter

(1) IC 74LS373 otte nøgler

(1) LED rød

(5) Diode 1N914

(1) 8-benet Molex stikdåse

(1) Molex kabel 8-leder, 75 mm langt

(1) DIP-switch

(1) DB25 vinkelstik

(1) 1,8 m DB 25 kabel med to M-type stik.

(1) Printplade

(3) Modstand 15kΩ, 0,25W


Alle de nævnte elementer er inkluderet i sættet.

Deleliste til talegenkendelsesgrænseflade

(5) NPN TIP 120 transistor

(5) Transistor PNP TIP 125

(1) IC 4011 NOR port

(1) IC 4049 - 6 buffere

(1) IC 741 operationsforstærker

(1) Modstand 5,6 kΩ, 0,25 W

(1) Modstand 15 kΩ, 0,25 W

(1) 8-benet Molex-stikhoved

(1) Molex kabel 8 ledere, længde 75 mm

(10) Modstand 100 kΩ, 0,25 W

(1) Modstand 4,7 kΩ, 0,25 W

(1) 7805 spændingsregulator IC

(1) IC PIC 16F84 mikrocontroller

(1) 4,0 MHz kvartskrystal

Robotarmgrænsefladesæt

OWI manipulatorarmsæt

Talegenkendelsesgrænseflade til manipulatorarm

Enheden til talegenkendelse


Dele kan bestilles hos:

Images, S.I., Inc.