Platforme controlate prin gesturi

T&T Plus

de Theodor Setelecan

Platforme controlate prin gesturi

Tendința oamenilor este de a trece la lucruri cât mai simple și cât mai accesi­bile posibil. De aceea am cercetat și am realizat un sistem care va permite des­chiderea către un alt domeniu de studiu, în optimizarea procesului de interacțiune umană cu mașinăriile.

Acest lucru este posibil prin intermediul device-ului dezvoltat de către o echipă din California, numit LeapMotion. Un sistem ce încorporează două camere cu infraroșu, care pot detecta poziția mâinilor, un Kinect al membrelor superioare.

LeapMotion este alcătuit din șase straturi:

  • Primul strat este alcătuit din sticlă protectoare, colorată.
  • Cel de-al doilea start conține un set de lentile.
  • Cel de-al treilea strat conține placa de baza și camerele de recuperare a imaginilor.
  • Cel de-al patrulea strat este un pat suport realizat prin injecție mase plastice.

 FOTO 1. Detalii despre realizarea practică a sistemului de interpretare a gesturilor LeapMotion

  • Cel de-al cincilea strat este format dintr-un aluminiu fin prelucrat.
  • Ultimul strat conține un strat de polimer ce este aderent la majoritatea suprafețelor, care permite menținerea poziției, fără a fi necesare prea multe eforturi, deoarece inamicul cel mai mare este elas­ticitatea firului, aruncând device-ul de multe ori în poziții nefavorabile.

Dispozitivul fiind de dimensiuni mici 127x127x20mm, câștigă foarte mult la aspectul de portabilitate. El conține în pachetul de bază 2 cabluri de transfer informații, de dimensiuni diferite, făcând astfel adaptarea ușoară pentru cei ce utilizează sistemul când pe sistemele de tip laptop, când pe sistemele de tip desktop.

Softul sistemului LeapMotion este realizat în așa fel încât permite vizualizarea falangelor, a palmei și a antebrațului pentru a recunoaște dacă sunt utilizate una sau mai multe mâini sau pentru a identifica mâna folosită. Programul poate oferi pozițiile degetelor, chiar si a centrelor din podul palmelor (foto 2), pe toate cele trei axe, dar și înclinarea funcție de sistemul de coordonate ales, astfel putându-se obține și vectorii (rezultă cu ușurință din proprietățile acestora direcția și sensul de orientare/deplasare).

FOTO 2. Interpretarea gesturilor și exemplificarea unor gesturi ce pot fi identificate, întregis­trate și programate pen­tru a oferi un feedback sub forma de semnal, în urma procesării, de către algoritmul de recunoaștere a membrelor superioare

Aplicaţie

Vorbind despre LeapMotion știm deja că este necesară o arie destul de mare de lucru. L-am tes­tat personal și a fost suficient spațiul de pe birou (aceasta însemnând că am pus device-ul în dreptul tastaturii, undeva la o jumătate de braț distanță de corp, și am utilizat aria dintre mine și cele două monitoare de 21 de inch, pe înălțime fiind suficienți 500mm). Cu ajutorul softului realizat de către cei de la LeapMotion experiența se poate extinde la două monitoare, cu ,,extended displays”. Un alt atu al softu­lui este că poate citi cele două mâini ale utilizatorului și poate reda în plină formă coordonatele, precum și toate celelalte informații despre fiecare falangă în parte sau chiar despre palmă. În unele aplicații dedicate am observat că se pot intercala și un alt set de brațe, neprovocând discrepanțe foarte mari între realitate și mediul virtual.

Cu ajutorul informațiilor extrase din librăriile Java ale sistemului LeapMotion, am creat și dezvoltat o secvență de cod care să extragă eficient câteva ges­turi ale mâinii și să le poată comunica mai departe către un Arduino Dueminalonve, pe care l-am folosit ca și implementare de tip consolă, către o placă de drivere 4-axis TB6560, ce poate susține 4 axe comandate numeric, unde am conectat cu succes 4 motoare pas-cu-pas Nema 23.

FIGURA 3. Principiul de funcţionare al sistemului dezvoltat

Principiul utilizat este următorul:

  • pentru a efectua mișcări fizice este nevoie de motor (NEMA23)
  • pentru a comanda un motor este nevoie de un driver (TB6560)
  • pentru a comanda driver este nevoie de un impuls (ARDUINO)
  • pentru a citi comenzile implementate este nevoie de un device (LeapMotion)
  • pentru a interpreta acele comenzi și a le trimite mai departe către COM3 este nevoie de un program (JAVA)

 

FOTO 4. Sistemul în curs de testare

Fiind absolvent de Mașini-Unelte și Sisteme de Producție din cadrul Universității Politehnica din București, am optat pentru realizarea unei structuri asemănătoare cu cea a unei mașini-unelte de prelu­crat prin așchiere în 4 axe comandate numeric.

Sistemul dezvoltat pentru a controla platforma, are nevoie de o sursă de 24 de volți, alimentând astfel placa de drivere TB6560, care poate interpola cele 4 axe comandate. Am creat o platformă din com­pozit pentru a testa practic sistemul, iar pentru asta am folosit următoarele setări: axa X- fiind în sens pozitiv, deplasarea dinspre utilizator în planul de jos al mini-mașinii de prelucrat în 4 axe, și anume pe batiul mașinii (foto 4); axa Y- este o implementare a sistemului de coordonate piesă, această decizie având ca și consecință schimbarea semnului axei Z. Păstrând, de asemenea, pentru motorul ce deplasează culisa pe traversa mașinii, legea îndepărtării de utilizator și totodată îndepărtarea dinspre traseul firelor, care conduceau semnalele de la placa de drivere către motoare, axa Z- fiind cu semn schim­bat. Axa fost implementată ca și axă de deplasare a arborelui principal de la o mașină de prelucrat prin frezare în 4 axe, sensul pozitiv fiind către masa mașinii. Iar Axa C - am păstrat sensul de rotație în jurul axei Z, dar amplasarea acesteia fiind pe masa deplasabilă a mașinii.

Placa TB6560 poate funcționa direct din PC LPT, dar softul Mach 3 oferit de către producătorul kit-ului pe care l-am achiziționat, nu poate rula din păcate pe sistemele de operare noi apărute. El fiind dedicat sistemului de operare Windows XP. Astfel m-a determinat să utilizez o altă funcție a plăcii TB6560 și anume, cea de a conecta un joystick și de a controla motoarele prin această metodă. Utilizând astfel o placă de Arduino duemilanove programată să dea impulsuri pentru [Enable X] [Enable Y] [Enable Z] [Enable C], [Direction X] [Direction Y] [Direction Z] [Direction C], [Frecvența X] [Frecvența Y] [Frecvența Z] [Frecvența C].

Datorită faptului că unele circuite nu au funcționat ca în documentația tehnică primită la achiziționarea kit-ului, țin să menționez că placa pe care am folosit-o a fost rutată astfel: axa X și axa Y având [Frecventa X]=[Frecventa Y], iar axa Z și axa C având [Enable Z]=[Enable C]. Ținând seama de acest lucru, îi sfătuiesc pe cei ce vor să implementeze un astfel de sistem să aibă grijă la alegerea plăcuțelor ce au ca scop comandarea motoarelor. Se poate jongla chiar și în acest caz cu parametrii aceștia, dar nu este foarte plăcut deoarece este nevoie de o putere de calcul mai mare, iar codul/algoritmul trebuie foarte bine sincronizat cu mișcările utilizatorului.

FOTO 5. Tendințele de aplicare a sistemului dez­voltat sunt atât pe piața largă de consum, cât și în sectoarele dedicate ale ingineriei la distanță

Posibile aplicații: imprimante 3D pentru construirea locuințelor în caz de calamități naturale (foto 5b); automatizarea sistemelor în vederea optimizării pozițiilor ecranelor sau a sistemelor cu factor ridicat de interacțiune umană, în special pentru domeniul militar (foto 5a); teleoperarea roboților industriali ce au ca scop învățarea medicilor, inginerilor, cât și implemen­tarea de sisteme adiacente în executarea de munci grele cu ajutorul brațelor articulate sau chiar a structurilor de tip portal (foto 5c). Se pot găsi foarte ușor aplicații și în teleoperările sistemelor de tip DaVinci laparoscop, a aplicațiior militare de tipul celor de la Boston Dynamics cu sistemele de Big Dog, sau a sistemelor de reperare a obuzelor nedetonate, a explozibililor, utilizate de geniști. Cu atât mai mult se folosesc în sistemele de detectare a substanțelor chimice contagioase și extrem de nocive pentru oameni.


Theodor Setelecan este Masterand Universitatea Politehnică București Facultatea Ingineria și Managementul Sistemelor Tehnologice



Accept cookie

www.ttonline.ro utilizează fişiere de tip cookie pentru a personaliza și îmbunătăți experiența ta pe Website-ul nostru.

Te informăm că ne-am actualizat politicile pentru a integra în acestea și în activitatea curentă a www.ttonline.ro cele mai recente modificări propuse de Regulamentul (UE) 2016/679 privind protecția persoanelor fizice în ceea ce privește prelucrarea datelor cu caracter personal și privind libera
circulație a acestor date. Înainte de a continua navigarea pe Website-ul nostru, te rugăm să aloci timpul necesar pentru a citi și înțelege conținutul Politicii de Cookie.

Prin continuarea navigării pe Website-ul nostru confirmi acceptarea utilizării fişierelor de tip cookie conform Politicii de Cookie. Îți mulțumim pentru acest accept și nu uita totuși că poți modifica în orice moment setările acestor fişiere cookie urmând instrucțiunile din Politica de Cookie.

Da, sunt de acord