Creeaza.com - informatii profesionale despre


Evidentiem nevoile sociale din educatie - Referate profesionale unice
Acasa » tehnologie » electronica electricitate
Conducerea de la distanta a minirobotilor cu deplasari autonome

Conducerea de la distanta a minirobotilor cu deplasari autonome


Conducerea de la distanta a minirobotilor cu deplasari autonome

The remote control of autonomous motions minirobots

Articolul prezinta o modalitate de comanda de la distanta a unui minitobot cu deplasari autonome. Fiind realizat in intregime in cadrul catedrei, sunt prezentate toate etapele realizarii proiectului. Sunt mentionate modul de calcul si proiectare al principalelor elemente mecanice si electronice insa accentul este pus pe solutia hard-soft pentru controlul de la distanta al minirobotului. Aceasta se incadreaza in tendintele moderne de comanda de la distanta prin utilizarea Etherntului (cablat sau wireless) ca suport de transmisie a datelor. Aceasta solutie, ofera minirobotul posibilitatea de a fi controlat si monitorizat din orice locatie ce are acces la Internet.

This study presents a remote control method of a minirobot with autonomous motions. Because it was made entirely in our department, there are presented all the project's development stages. There are mentioned the proceeding of the calculation and the design of the important mechanical and electrical elements, but it is emphasize the hardware-software solution for the minirobot's remote control. This is included in the modern trends of the remote control using the Ethernet (wired or wireless) support for the data transmission. This solution, gives the possibility to the minirobot to be controlled and monitored from any location with the Internet access.



1. Introducere

1. Introduction

Lucrarea prezinta o aplicatie de control de la distanta, ce poate fi inclusa in seria operatiilor denumite generic teleoperare. In principal, este vorba despre transmiterea la distanta, utilizand protocolul Ethernet, a comenzilor adresate unui echipament, decise de un operator sau in baza unei secvente prestabilite. In mod generic, transmiterea comenzilor catre echipamentul aflat la distanta este numita teleoperare, indiferent daca cel care decide comenzile este un operator uman sau un sistem de conducere automata.

This paper presents a remote control application which can be included in the operations area generally called teleoperation. Mainly, it's all about the distantly commands' transmission to an equipment, using the Ethernet protocol, decided by an operator or by a preseted sequence. Generally, the distantly commands' transmission to a remote equipment is called teleoperation, no matter whether those how decide the commands is an operator or an automated drive system.

Scopul acestei aplicatii este comanda la distanta, si poate fi regasita in una din situatiile:

. echipamentul (minirobot mobil) opereaza intr-un mediu ostil, periculos pentru operatorului uman, cum ar fi: dezamorsari de bombe, reactoarele nucleare, etc,

. echipamentul trebuie sa preia informatii din zone inaccesibile operatorului (spatiul extraterestru, spatii inguste),

. echipamentul este disponibil intr-un numar mic de exemplare si trebuie folosit de mai multi utilizatori, aflati in zone geografice diferite (cazul invatamantului la distanta).

The goal of this application is the remote control which can be founded in one of the situations:

. the equipment (a mobile minirobot) operates in a hostile environment, dangerous for the human operator, such as: bombs deactivation, nuclear reactors, etc.

. the equipment is got to get the information from inaccessible area for the operator (the extra-terrestrial space, the narrow spaces)

. the equipment is available in a small number of exemplars and it must be used by many users, placed in different geographical areas (the case of e-learning).

In scopul realizarii unor astfel de aplicatii, este prezentat un sistem de comanda de la distanta a unui minirobot autonom cu deplasare pe senile. Structura a reprezentat un model functional pe care s-au dezvoltat cercetari experimentale ce au avut ca obiect validarea abordarilor teoretice si optimizarea performantelor functionale.

In order to design this kind of applications, it's presented a remote control system of an autonomous minirobot with crawler moving. The structure has been a functional model upon which has been developed the experimental researches that had the objective of the validation for the theoretical considerations and the functional performances optimization.

2. Descrierea si functionarea robotului

2. The describing and the function of the minirobot

Pentru constructia mecanica a minirobotului cu deplasari autonome, proiectarea s-a realizat utilizand programul SolidWorks.

For the mechanical structure of the minirobot with autonomous motions, the design was made using the SolidWorks software.

2.1 Prezentarea generala a minirobotului

Minirobotul proiectat este propulsat pe senile intrucat s-a tinut cont ca aceasta reprezinta o varianta mai buna decat rotile in cazul deplasarii pe un relief variat. Faptul ca viteza de miscare este mai mica decat in cazul rotilor reprezinta un dejavantaj neglijabil. Minirobotul (fig.1) este alcatuit dintr-o parte mecanica formata din: sasiu(2),role active(4) actionate de servomotoare electrice, role pasive(5) si role pentru intinderea senilei (6), pe care sunt plasate modulul electronic de comanda si control(1) precum si un numar de 3 senzori ultrasonici de proximitate (8,9,10). Cu toate ca minirobotul a avut in dotare acesti senzori de la inceput, ei nu au fost folositi in cadrul testelor aferente acestei lucrari, urmand a fi utilizati in alte aplicatii.

Fig. 1. Vedere din stanga a minirobotului cu senile (Left view of the crawler minirobot)

1-modulul electronic electronic module

2- structura mecanica mechanical structure

3-senila crawler belt

4-rola active active roll

5-rola pasiva passive roll

6-rola pentru intinderea senilei the roll for the of the crawler belt's tension

7-suport senzor ultrasonic Ping the support for the ultrasonic Ping sensor

8-senzor ultrasonic dreapta right ultrasonic sensor

9-senzor ultrasonic centru central ultrasonic sensor

10-senzor ultrasonic stanga left ultrasonic sensor

In figura 2 se pot observa cele 2 servomotoare de actionare (3,4), precum si cei 4 acumulatori ce genereaza energia electrica necesara alimentarii intregului minirobot - atat partea de actionare cat si partea de comanda si control.

Fig. 2. Elementele partii inferioare ale minirobotului cu senile (Bottom elements of the crawler minirobot)

1-suport acumulatori

2-acumulatori

3-servomotor stanga

4-servomotor dreapta

2.2 Elementele geometrice ale sistemului de actionare a minirobotului

2.2 The geometric elements of the minirobot's drive system

Fig. 3. Elementele geometrice ale sistemului de actionare

Fig. 3. The geometric elements of the minirobot's drive system

d1= 40 mm

d2 = 15 mm

df1= 5 mm

df2= 4 mm

b = 27 mm

c = 31 mm

e = 17 mm

h = 3.4 mm

h1= 0.5 mm

h2= 2.9 mm

hc= 1.4 mm


h1 = h/2 pozitia liniei primitive , la nivelul insertiei curelei de transmisie a miscarii

h1 = h/2 the primal line position, at the insertion's level of the motion's belt drive

Diametrele echivalente de calcul:

The equivalent diameters for calculation:

Calculul unghiului ψ

The determination of the ψ angle

Fig. 4. Elementele geometrice pentru calculul unghiului ψ

Fig. 4. The geometrical elements for the determination of the ψ angle

Determinarea distantei intre axe a

The determination of the "a" distance between axes

Fig. 5. Elementele geometrice pentru calculul distantei a

Fig. 5. The geometrical elements for the determination of the "a" distance

Se cunoaste lungimea primitiva a curelei : Lp = 362 mm

It is known the primal line of the belt is:

Lp = 2a - 2c +de1 α1 + de2 α2 + 2q in final se obtine a = 0.118 m

in the end it is got

2.3 Alegerea servomotorului

Pentru determinarea puterii necesare s-au considerat:

, unde urmatorii parametrii reprezinta:

,inclinarea traseului; ,acceleratia in miscare; ,viteza de deplasare

va rezulta

Tinand cont ca :

viteza de deplasare a minirobotului este 0.25 m/s ,

rola activa are diametrul de 0.04 m,

conform formulei v=ωr ,unde r=d/2 se afla ω (viteza unghiulara in rad/s ) => ω=12.5 rad/s, iar

turatia, rezulta astfel

Tinand cont ca puterea consumata calculata pentru deplasarea robotului mobil este de 1,692W si estimand randamentul reductorului η=0.6 rezulta o putere necesara (utila) la iesirea din reductor de 2.82W

Considerand un coeficient de suprasarcina c=1.3 (eventual pentru viteze de deplasare superioare celei stabilite de 0.25 m/s ) rezulta o putere necesara la iesirea din servomotor Pe=3.7 W

In functie de acesti parametrii, la nivelul iesirii din motoreductor (n, Pe) s-a facut alegerea electromotorului.

S-a optat pentru un servomotor cu turatia in gol (fara sarcina) respectiv cuplul motor superioare celor determinate.

Pentru alegerea servomotorului au fost consultate cataloagele principalelor firme din domeniu:

- Maxon Motor produce servomotoare de curent continuu in gama variata de puteri si de tensiuni de alimentare, cu diametre ale motorului incepand de la 12mm, reductoare (cilindrice cu dinti drepti, planetare, armonice) si blocuri electronice de comanda

- Portescap este specializata in micromotoare de curent continuu de ordinul watilor si produce si reductoare compatibile cu micromotoarele.

- Futaba este specializata in realizarea de servotoare de curent continuu de puteri relativ mici cu aplicatii in robotica ,si colaboreaza cu firma Parallax-U.S.A care produce module electronice de comanda in acelasi domeniu pentru o compatibilitate mai mare intre servomotor si modulul electronic de comanda.

Tinand cont de acest lucru, s-a ales firma Futaba

Alegerea tipului de servomotor Futaba (!!!b!https://www.futaba-rc.com/servos/brushlessservos.html

Fig. 5. Elementele unui servomotor de tip Futaba ()

In prima faza s-au considerat doua servomotoare cu caracteristici compatibile cu cerintele impuse, respectiv:

1 servomotorul-tip BLS251 (FUTM0521) cu caracteristicile:

-tensiune de alimentare 6V

-cuplu 53 oz inch

-viteza unghiulara

2 servomotorul-tip BLS253 (FUTM0523) cu caracteristicile:

-tensiune de alimentare 6V

-cuplu 62 oz inch

-viteza unghiulara

In unitati de masura S.I, tinand cont de conversia 1 inch=0.024 m si1 kg=32.15 oz, rezulta:

- pentru servomotorul 1: M1=422.9 Nmm, n1=166

- pentru servomotorul 2: M1=494.7 Nmm, n1=111.1

Concluzie: Servomotorul 2 nu corespunde cerintelor tehnice necesare referitoare la turatia de iesire n2=111.1 <119 si tinand cont ca datele tehnice specificate in catalogul Futaba sunt fara sarcina la iesire (in gol)

Se alege servomotorul tip BLS251 cu datele tehnice principale mentionate : : M1=422.9 Nmm, n1=166

si tinand cont de gradientul [] asigura actionarea minirobotului in regim optim si pentru parametrii superiori impusi(inclinarea traseului,acceleratia,viteza)

Alte caracteristici tehnice ale servomotorului ales, sunt:.

-intensitatea curentului fara sarcina 160mA;

-dimensiuni 40,6mm x 20mm x 37.8mm;

-greutate(massa)=50g;

- reductor cu 4 trepte de transmisie si raport de transmisie i=113.9

3. Modulul electronic

Pentru realizarea modulului electronic de comada s-a utilizat softul de proiectare electronica Protel.

In schema circuitului de alimentare (fig. 5) se observa ca partea electronica poate fi alimentata separat de servomotoare in situatia cand jumperul JP1 nu este utilizat. Pentru obtinrea tensiunii de 3,3V necesara modului WiFi, s-a utilizat un regulator de tensiune pentru se putea utilizata aceeasi singura sursa de tensiune pentru toata partea electronica.

Fig. 5. Schema circuitului de alimentare (The power supply circuit)

Figura 6 contine schema partii de comanda si control. Dupa cum se poate vedea si in figura, ea este compusa din 3 elemente principale:

1-contine un microcontroler de tipul PIC16F87, produs de firma Microchip[!!!b!], ce este elemenul de baza al intregului modul electronic. Microcontrolerul realizeaza atat comanda servomotoarelor, prelucrarea datelor primate de la senzori cat si comunicatia seriala cu calculatorul. Comunicatia se poate face prin intermediul variantei cablate sau a celei wireless. Alegerea modului de comunicatie se face cu junperii JP1 respectiv JP2. De microcontroller mai sunt atasati cativa conectori pentru legatura cu diversi senzorii.

2-realizeaza convesia nivelelor de tensiune necesara pentru comunicatia cu PC. Astfel se poate realiza o legatura cablata de comunicatie ce va utiliza protocolul RS232. Pentru aceasta este utilizat un circuit integrat de tipul MAX232 produs de firma Maxim[!!!b!].

3-modul de comunicatie WiFi de tipul MatchPortBG produs de firma Lantronix[!!!b!]. Acesta impreuna cu driverul instalat pe calculator emuleaza o conexiune seriala wireless. Pentru a fi posibil acest tip de comunicatie este necesar ca sa existe in apropiere un Access Point care sa permita modulului de pe robot sa intre in retea si deci sa fie accesat prin ethernet. Acest modul poate fi setat dintr-un browser web. Datorita driverului instalat pe PC se creeaza un port serial virtual. Astfel accesul se face foarte simplu, ca si in cazul oricarui port serial hardware al calculatorului.

Fig. 6. Schema modulului electronic de comanda si control ()

Fig. 7. Vedere a modulului electronic de comanda si control ()

Montajul ofera posibilitatea programarii microcontrolerului in circuit prin intermediul conectorul J1.Acest lucru este foarte important in fazele de test. Astfel, cand microcontrolerul este reprogramat foarte des, nu este necesara scoaterea lui din circuit la fiecare scriere a programului fapt ce-l putea deterioara fizic.

Programarea microcontrolerului

Programul pentru microcontrollerul de tip PIC16F87 a fost scris in limbaj C si compilat cu ajutorul mikroC produs de mikroElektronika (!!!b!www.mikroe.com). Astfel, s-au utilizat principiile programarii de nivel inalt ce este mult mai usor de inteles si folosit de catre orice utilizator familiarizat cu ideile generale de programare. Interfata compilatorului utilizat este prezentata in figura 8.

Fig. 8. Interfata grafica a compilatorului mikroC ()

Structura de principiu a programului scris in C pentru microcontroller este:

The basic structure of the C software program for the microcontroller is:

void move_forward();

void move_backward();

void rotate_right();

void rotate_left();

void move_stop();

void move_fw_ri();

void move_fw_le();

void move_bw_ri();

void move_bw_le();

void main() // if no data is received

rec_ch = USART_Read(); // read the received data

switch(rec_ch)//for }

}//swich

}//while

}//main

Fisierul .hex rezultat in urma compilarii cu mikroC, a fost scris in microcontroller cu ajutorul uneltelor de dezvoltare de la Microchip:

* programator software - MPLAB v8.10

* programator hardware - ICD2

4. Aplicatia software de interfata cu utilizatorul

Aplicatia pentru PC, de transmitere a comenzilor catre minirobot, a fost realizata in LabView deoarece se permite dezvoltarea facila a aplicatiilor precum si modificarea lor ulterioara in caz ca este necesar. Ea este formata din doua sectiuni:

- comanda manuala a minirobotului de catre operator (fig. 9 si fig. 10)

- efectuarea automata a unui set de instructiuni prestabilite. (fig. 10 si fig. 11)

Fig. 9. Interfata grafica pentru comanda manuala ()

In figura 9 se observa ca, in cazul acestei sectiuni, operatorul are controlul asuprea fiecarui tip de comanda prin apasarea butonului corespunzator. Trebuie mentionat ca pentru o functionare corecta a minirobotului portul de comunicatie trebuie ales la inceputul pornirii aplicatiei. In cazul indicarii unui port serial gresit datele se pierd astfel ca minirobotul nu va executa nici o miscare.

Fig. 10. Diagrama aferenta sectiunii de comanda manuala ()

In diagrama aferenta sectiunii comanda manuala se poate identifica algoritmul de functinare al aplicatiei. Astfel ca dupa ce se porneste aplicatia, aceasta citeste portul aferent comunicatiei dupa care intra intr-o bucla "while" in care sunt monitorizate in permaneta toate butoanele interfetei. In momentul in care se apasa un buton aplicatia selecteaza, intr-o structura de tip "case", caracterul aferent butonului apasat si il scrie pe portul serial selectat la inceput. Robotul receptioneaza caracterul, il interpreteaza si executa imediat comanda corespunzatoare.

Fig. 11. Interfata grafica pentru comanda dupa program ()

In cazul sectiunii de comanda dupa program (fig. 11) utilizatorul poate scrie in partea din stanga o serie de comenzi. Sintaxa acestor comenzi este formata din numarul ciclilor de executie urmati de tipul comenzii. Tipurile comenzilor sunt trecute si in partea din dreapta pentru ca utilizatorul sa nu fie constrans sa le memoreze. In final, pentru a fi lansat setul de comenzi, utilizatorul trebuie sa apese butonul OK. Odata inceputa executia comenzilor, aplicatia indica in partea de sus comanda curenta si pozitia ei in setul de comenzi, precum si corectitudinea sintaxei. Astfel, daca sintaxa comenzii curente nu este una corecta, culoarea indicatorului "Starea comenzii" devine rosie, indicand o eroare. Programul semnaleaza eroarea timp de 5 secunde dupa care, continua cu executia urmatoarei comenzi din lista.

Fig. 12. Diagrama aferenta sectiunii de comanda dupa program()

Diagrama corespunzatoare comenzilor dupa program este mai complexa in comparatie cu cea anterioara. Acesta contine un interpretor de comenzi care analizeaza sintaxa fiecarei comenzi in parte. In urma validarii comenzii si extragerii continutului sub forma numar de cicli si tip comanda, se trimit pe portul serial catre monirobot datele aferente fiecarei comenzi. Similar cazului anterior, minirobotul prelucreaza datele si executa comanda cerespunzatoare datelor primite. Astfel pentru minibot nu conteaza din ce sectiune a aplicatiei i-au fost trimise datele. In aceasta situatie singura problema o reprezinta doar mentinerea permenta a legaturii cu calculatorul. Din acest punct de vedere transmisia wireless poate fi nesigura in anumite circumstante legate in special de distanta dintre minirobot si punctul de acces la retea (Access Point) sau de anumite interferente ce pot apare in cazul unor canale de transmisiune. Astfel putem considera ca pretul platit pentru mobilitate ar fi in anumite situatii nesiguranta legaturii de date. Totusi, aceste probleme pot fi rezolvate in urma unor teste in prealabil.Se poate stabili o raza de lucru in care minirobotul se poate deplasa in siguranta, precum si canalele de comunicatie in care nu exista interferente in zona respectiva sau unde acestea sunt cele mai slabe.

Pentru verificarea preciziei de executie a comenzilor s-a utilizat un traductor optoelectronic care face parte dintr-o familie de traductoare optoelectronice dezvoltata in cadrul catedrei noastre. Acest traductor foloseste principiul triangulatiei pentru a obtine locatia minirobotului. Elementul de identificare este reprezantat de o sursa luminoasa atasata, in acest scop, minirobotului. Utilizarea acestui traductor a permis aprecierea cu o precizie foarte buna a pozitiei si vitezei de deplasare a minirobotului.

For the precision verification of the commands' execution, was used an optoelectronic transducer which is part of an optoelectronic family of transducers developed in our department. This transducer uses the triangulation principle to get the location of the minirobot. The identification element is represented by a lighting source attached to the minirobot for this porpouse. The usage of this transducer has permitted to appreciate with a very good precision the position and the moving speed of the minirobot.

5. Concluzii

Principiul utilizat poate fi aplicat cu mici modificari si la realizarea lucrarilor de laborator prin Internet, in contextul conceptului de laborator deschis pentru utilizatori multipli, dar si in Intranet, atunci cand lucrarile de laborator trebuie efectuate individual, fara a fi necesar (sau chiar posibil) accesul studentului in vecinatatea lor.

Prezenta lucrare deschide noi posibilitati pentru studiul problemelor generate in aplicatiile de teleprezenta si teleoperare. Cercetarile experimentale su validat functionarea si au evidentiat dificultatile legate de viteza de comunicatie si solutia software aleasa. Pentru dezvoltarile ulterioare se au in vedere comanda direct din browser web, cuplarea altor dispozitive de intrare/iesire (camera web, joystick).

B I B L I O G R A F I E

[1] Laurentiu Frangu, Claudiu Chiculita, Aplicatii de teleprezenta si teleoperare, Raport de cercetare 2002, Centrul de Cercetare pentru Conducere Automata Avansata a Proceselor, Universitatea "Dunarea de Jos" din Galati

[2] Traian Demian, Elemente constructive de mecanica fina, Editura Didactica si Pedagogica, Bucuresti, 1980

[3] Mihai Musat, Gina Stoica, Indrumar de proiectare pentru transmisii mecanice, Editura Printech, 1998

[4] Constantin Udrea, Horia Panaitopol, Nicolae Alexandrescu, Mihai Avram, Tudor Catalin Apostolescu, Bazele Constructive ale Robotilor Industriali, Editura Universitara, 2006

[5] https://www.futaba-rc.com/servos/brushlessservos.html

[6] www.microchip.com

[7] www.maxim-ic.com

[8] https://www.lantronix.com/device-networking/embedded-device-servers/matchport.html

[9] www.mikroe.com

[] pt traductor optoelectronic





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.