Servomotor Legatura 2_1
-
Upload
floriantudor -
Category
Documents
-
view
26 -
download
0
Transcript of Servomotor Legatura 2_1
16
II. REALIZAREA BLOCURILOR ELECTRONICE
II.1. Sistem de comanda a unui servo pentru actionare module
Pentru acţionarea modulelor sistemului robotic, una din solutiile fiabile o constituie
asa numitele servo-uri. In aceasta etapa, s-a proiectat, realizat practic si s-a testat o schema
originala având în structura un servomotor (servomecanism) Futaba S3151. Caracteristicile
mecanice, electrice şi cele geometrice ale acestui servo sunt prezentate în tabelul 1 si figura
II.1a.
Tabelul 1. Caracteristicile mecanice, electrice şi geometrice ale servomotorului.
Gabarit: ( mm )
Masa: ( g )
Cuplul la 4,8V
(Nmm)
Viteza: 0,16s/45° la
4,8V
Cuplul de mentinere
(Nmm) Tensiunea:
( V )
40,5x20x36,1 42 310 0,21 770 4,8 ÷ 6
a b Fig. II.1 Caracteristicile geometrice ale servo-ului
Ultimii ani au fost marcati de evoluţii reprezentative în ceea ce priveşte
dimensiunile, viteza de rotaţie şi cuplul motor al motoarelor de tip servo, a caror structură
de bază este dată în figura II.1b. Ultima îmbunătăţire o constituie dezvoltarea
servomotoarelor digitale ce au avantaje functionale semnificative faţă de servomotoarele
standard. În principiu, un servo digital este asemănător cu un servomotor standard, cu
excepţia unui microprocesor care analizează semnalele de intrare şi controlează motorul.
Una din diferenţe constă în modul de procesare a semnalelor de intrare şi transmiterea
puterii iniţiale de la servomotor, reducând timpul mort, crescând rezoluţia şi generând un
cuplu de menţinere superior. La motoarele servo convenţionale, în faza de repaus, nu se
alimentează servomotorul. În cazul servomotoarelor digitale, când este primit o comanda
de pornire a servo-motorului, sau când se aplică un cuplu la axul de ieşire, servo-ul
răspunde prin alimentarea cu tensiune a motorului. Această putere care este de fapt
tensiunea maxima, este pulsată sau transmisă on/off cu o rată fixă de 50 de cicluri pe
secunda, generând mici impulsuri de tensiune. Prin creşterea duratei fiecărui impuls se
17
creează un control al vitezei, până când se aplică motorului tensiunea maximă, accelerând
servo-braţul spre noua poziţie. Capătul de cursa a servo-ului este semnalat şi transmis
componentelor electronice ale servo-ului, şi astfel se reduc impulsurile de putere prin
scurtarea duratei lor până când nu mai exista tensiune şi servomotorul se opreşte.
Fig. II.2 Modul de comandă în impulsuri Fig. II.3 Caracteristica moment/impuls a servomotoarelor
În conformitate cu cele prezentate în figura II.2, un impuls de lăţime scurtă „On”,
urmat de o pauza scurtă, nu constituie pentru motor o comanda să se întoarcă, cu condiţia
să nu fie mai lunga pauza. Aceasta înseamnă un control al mişcării, care la întoarcere
trimite mici impulsuri iniţiale spre motor, este foarte ineficient, si de aceea este denumită
„banda moartă”.
Avantajele evidente ale servo-digitalelor sunt:
• În primul rând, datorita microprocesorului este posibil primirea de semnale de intrare
şi să aplice parametrii prezenţi la acest semnal, înainte de a-l trimite in impuls spre
servomotor. Aceasta înseamnă că durata impulsului, datorat însumării tensiunii trimise
să activeze motorul, poate fi ajustată prin programarea microprocesorului pentru a
potrivi funcţiile cerute şi mai mult pentru a optimiza performanţele servo-ului.
• În al doilea rând, un servomotor digital trimite impulsuri către motor la o frecvenţă
semnificativ mai mare. Aceasta înseamnă că, motorul în loc să primească 50 de
impulsuri /secunda va primii 300 impulsuri/secunda. Deşi durata pulsurilor se reduce
direct proporţional cu frecvenţa, pentru că tensiunea la motor se schimbă mult mai
frecvent, motorul are tendinţe mai mari de a se întoarce. Acest lucru înseamnă că
servomotoarele digitale vor răspunde mai rapid la comenzi.
18
În figura II.3 se poate observa comparativ variaţia momentului în timp pentru
servomotoarele standard şi servomotoarele digitale.
Astfel pentru comanda servomotoarelor S3151 s-a dezvoltat o schemă electronică
alcătuită dintr-un microcontroler Atmega8535 şi circuitul de comunicare pe serial cu PC-ul
Max232. În figura II.4 este prezentată schema electronică de acţionare a patru
servomotoare.
+5V
+5V
+5V
+5V
+5V
+5V
+5V
+5V
+5V
+5V
+5V
+5V
RxD
OC2
OC1B
LED
Reset
OC2
OC1A
LED
Rx
TxD
Reset
OC1A
TxD
OC0
RxD
OC1B
Rx
Reset
OC0
U3L7805/TO220
1
2
3VIN
GN
D
VOUT
R31k
J1
STK200
13579
2468
10
+++++
+++++
C21u
C61u
C11u
U2
MAX232
138
1110
134526
129147
16
15
R1INR2INT1INT2IN
C+C1-C2+C2-V+V-
R1OUTR2OUTT1OUTT2OUT
VCC
GND
J3
M1123
D2
LEDC7100n
+ C8100u
R21k
D1
LED
J5
M3123
C333p
+ C92200u
R122k
J2
RS232123
J6
M4123
U1
ATmega8535
9
1312
10
2928272625242322
14151617181920 21
12345678
4039383736353433
11 303132RESET
XTAL2XTAL1
VCC
PC7/TSOC2PC6/TOSC1
PC5PC4PC3PC2
PC1/SDAPC0/SCL
PD0/RXDPD1/TXDPD2/INT0PD3/INT1PD4/OC1BPD5/OC1APD6/ICP1 PD7/OC2
PB0/T0PB1/T1PB2/AIN0PB3/AIN1PB4/SSPB5/MOSIPB6/MISOPB7/SCK
PA0/AD0PA1/AD1PA2/AD2PA3/AD3PA4/AD4PA5/AD5PA6/AD6PA7/AD7
GND AVCCGND
AREF
C10100n
J8
AL12
Y14MHz
C51u
D31N4001
C433p
J4
M2123
J7
Reset12
Tx
Fig. II.4. Schema electronică de acţionare a servomotoarelor
Microcontrolerul Atmega8535
În aplicaţia de faţă s-a folosit un microcontroler produs de tip AVR de firma Atmel
şi anume Atmega8535. Microcontrolerele AVR de 8biţi produse de Amtel au o structură
internă asemănătoare cu cea a celorlalte tipuri de microcontrolere. Spre deosebire de
microcntrolere cu structuă clasică aceste tipuri de microcontrolere au 32 de registre cu
funcţie de acumulator iar majoritatea instrucţiunilor se execută într-o singură perioadă de
ceas. Principalele caracteristici sunt următoarele:
- 130 instrucţiuni sunt implementate
- memorie program 8k, flash
- 10000 de programări a memoriei flash
19
- biţi de securizare la scriere şi la citire
- memorie EEPROM – 512 octeţi se poate scrie/şterge de 100.000
- are 32 pini programabili intrare/ieşire (I/O)
- sistem de întreruperi externe date de timer/numărător
- UART – universal asincron receiver transmiter
- interfaţă SPI (master/slave serial interface)
- două numărătoare de 8 biţi cu prescaler şi mod de comparare separat
- un numărător de 16 biţi cu prescaler şi mod de comparare separat
- 8 canale CAD convertor analog digital de 10 biţi.
- 3 canale PWM
Pentru a putea programa un micontroler avem nevoie de sursă de alimentare,
oscilator, modul de comunicaţie cu calculatorul, circuit de reset.
La sursa de alimentare după cum se observă în figura II.5 este nevoie de un
stabilizator de 5V, LM7805, un condensator electrolitic cu capacitate ridicată, 1000uF ÷
4700uF, pentru a netezii riplurile provenite de la redresare, două condensatoare de menţine
a tensiunii stabilizate (filtrare) în cazul unor perturbaţii apărute de la reţea. Aceste
perturbaţii pot produce resetarea microcontrolerului. La ieşirea din modulul de alimentare
este ataşat un LED pentru a semnaliza prezenţa sau lipsa tensiunii. De obicei culoarea
LED-ului este verde.
Microcontrolerele pentru a funcţiona au nevoie de oscilatoare externe sau interne.
Oscilatoarele electronice reprezintă o clasă de circuite electronice neliniare care generează
semnale electrice (curent / tensiune) cu o lege de variaţie în timp aproape sinusoidală,
utilizând în acest scop, parţial, puterile de curent continuu livrate de sursele de alimentare.
Microcontrolerul folosit are propiul său oscilator intern care funcţionează la frecvenţa
f=1MHz. Pentru a creşte această frecvenţă se utilizează oscilator cu cuarţ, oscilator RC,
+5V
+
C161000u
U1LM7805C
1
2
3VIN
GN
D
VOUT
C18100n
+
C17100u
R4470
LED
D2AL1
12
7V - 20V
Fig. II.5 Modulul de alimentare a unui microcontroler
20
oscilator ceramic rezonator sau surse generatoare de semnal oscilant. În figura II.6 sunt
prezentate schemele recomandate de producător a fi folosite, unde a) şi b) sunt modurile de
conectare a oscilatoarelor, iar c) modul de conectare a semnalului de ceas extern. În
aplicaţia de faţă s-a folosit un oscilator cu cuarţ de 8MHz.
Microntrolerele AVR au trei surse pentru genrarea resetului şi anume: power-on
reset ( la căderea tensiunii), semnal extern aplicat la intrarea externă de reset şi ieşirea
numărătorului watchdog. Circuitul pentru semnalul extern de reset este redat în figura II.7.
Pentru programarea microcontrolerului s-a folosit un programator STK200 care este
descris în figura II.8. Acesta are avantajul că protejează portul paralel al PC-ului în
eventualitatea unui scurt-circuit apărut pe placa cu microcontroler. Protecţia este realizată
Fig. II.8 Programatorul STK200
a) b) c)
Fig. II.6. Moduri de conectare a oscilatorului la microcontroler
+5V
Reset
C5100n
SW1Buton
R122k
Fig. II.7 Circuitul de reset pentru microcontrolerul ATmega 8535
21
prin circuitul integrat 74LS245 care este un bus driver.
Comunicarea dintre placa cu microcontroler şi calculator s-a realizat prin
comunicaţie serială. Comunicaţiile seriale nu sunt nici mai rapide nici mai ieftine decât
cele paralele, dar permit transferul de informaţie între echipamente aflate la distanţe foarte
mari. Comunicaţia serială utilizează un număr redus de fire. În comunicaţia serială, datele
transmise trebuie serializate la transmisie şi deserializate la recepţie. Pentru aceasta, la
transmisie se utilizează un registru paralel-serie iar la recepţie un registru serie-paralel.
Pentru a permite compatibilitatea echipamentelor realizate de diferiţi producători, s-a
adoptat standardul numit RS232 realizat de EIA (Electronics Industries Association) în
1960, modificat apoi în mai multe rânduri. Deoarece standardul a fost adoptat înainte de
apariţia familiei logice TTL, standardul nu este compatibil cu nivelele TTL. Nivelul logic 1
este reprezentat de o tensiune electrică cuprinsă între -3V şi -25V iar nivelul logic 0 este
reprezentat de o tensiune electrică cuprinsă între +3V şi +25V, zona situată între -3V şi
3V fiind nedefinită. Pentru conversia de nivele TTL/RS232 se utilizează circuite
specializate.
De exemplu se poate utiliza circuitul MAX232 al firmei Maxim. Acest circuit
converteşte nivelele TTL în nivele RS232 şi invers (figura II.9). Un avantaj al acestui
circuit este faptul că utilizează o singură tensiune de 5 V. Conţine două canale deci se
poate utiliza pentru două interfeţe seriale RS232. Circuitul are nevoie de patru
condensatoare C1 ÷ C7 având valoarea cuprinsă între 1÷22 μF (de obicei 1 μF).
Din punct de vedere al conexiunilor se utilizează două tipuri de conectoare: cel de
25 de pini şi cel de 9 pini. În figura II.10 se poate vedea conectarea cu 9 pini, iar în tabelul
2 se descrie semnalele interfeţei RS232.
Fig. II.9. Circuitul de adaptare MAX232
22
Comanda
Comanda motoarelor sa realizat prin folosirea canalelor PWM (Pulse-Width
Modulation) ale microcontrolerului ATmega8535. Comanda cu PWM înseamnă comanda
prin lăţimea impulsurilor. Este una dintre cele mai moderne metode de reglare a vitezei
motoarelor de curent continuu. Comanda PWM se poate realiza în circuit deschis sau în
circuit închis. În cazul amplificatoarelor PWM impulsurile aplicate indusului reprezintă
trepte de amplitudine U şi perioadă T constantă, dar lăţime variabilă (t1,t2,t3....). Lăţimea
impulsurilor este proporţională cu tensiunea de intrare U, iar tensiunea medie de ieşire Uout
este proporţională cu durata impulsului. Astfel se obţine un amplificator cu dependenţă
liniară între Uout şi U. De asemenea din studiile de până acum s-a observat apariţia unui
histerezis între creştere perioadei t1 şi descreşterea ei. Acest mod de aplicare a impulsurilor
este arătat în figura II.11.a. Schema electrică pentru acţionarea unui motor de curent
continuu este redată în figura II.11.b.
Realizarea Pentru proiectarea schemei electronice s-a utilizat mediul de proiectare OrCAD 9.
Pachetul de programe ORCAD 9 este destinat proiectării asistate de calculator a schemelor
Tabelul 2 Interfata RS232 conector DB-9 1 Data carrier detect (DCD) 2 Received data (RxD) 3 Transmitted data (TxD) 4 Data terminal ready (DTR) 5 Signal ground (GND) 6 Data set ready (DSR) 7 Request to send (RTS) 8 Clear to send (CTS) 9 Ring indicator
a) b)
Fig. II.10. Modul de conectare pentru interfata RS232
+5V
+5V
+12V
C833p
C733p
U5
AT90S2313
145
20
1213141516171819
236789
11
RESETXTAL2XTAL1
VCC
PB0/AIN0PB1/AIN1
PB2PB3/OC1
PB4PB5/MOSIPB6/MISOPB7/SCK
PD0/RXDPD1/TXDPD2/INTOPD3/INT1PD4/TOPD5/T1PD6/ICP
R1922k
C91n
4MHz
D12LED
R20470
R181k
D111N4148
-
+
Motor DC
Q13BD135
SW8
J3
STK200
13579
246810
+++++
+++++
U
Uout
a) b) Fig. II.11. a) Forma de undă a tensiunii aplicate indusului;
b) Schema electrică de comandă în impulsuri PWM a unui motor de c.c.
23
şi plachetelor electronice. Este compus din două parţi: OrCAD CAPTURE, destinat
desenării, editării, procesării şi simulării schemelor electrice, şi OrCAD LAYOUT,
destinat proiectării plachetelor cu cablaje imprimate. Astfel s-a realizat schema electrică
din figura II.11 şi cablajul electronic din figura II.12. După realizarea cablajului în OrCAD
LAYOUT s-a rulat postprocesorul pentru prelucrarea cablajului pe o maşină CNC. Datele
s-au salvat într-un fişierul pentru standardul Gerber RS-274D. Maşina de frezat CNC
utilizată este CPM2018 de la Isel cu un spaţiu de lucru de 200x180x75mm. În fig.II.13 se
prezintă maşina de frezat şi câteva aplicaţii ce se pot realiza cu ea. Astfel odată fişierul
gerber obţinut s-a lansat programul de prelucrare Galaad 3. Importând fişierul s-au ales
parametrii de prelucrare, vitezele de aşchiere şi scula de lucru, o freză cu Φ0,8mm. În
figura II.14.a se poate observa simularea prelucrării cu traseele ce vor fi efectuate de scula
aşchietoare, iar în figura II.14.b,c. cablajul simulat şi cel realizat.
Fig. 14. Simularea realizării cablajului electronic
Fig.II.12 Cablajul electronic
Fig. II.13. Maşină de frezat CNC Isel CPM2018; Aplicaţii.
24
În figurile II.15 şi II.16 sunt prezentate fotografii ale sistemului de comanda realizat.
Fig. 15
Fig. 16
Concluzii
In vederea actionarii modulelor din structura sistemului robotic, a fost ales un
motor de tip servo digital. Pentru comanda lui a fost realizat un circuit electronic avand in
structura microcontrolerul ATMega 8535, principiul de comanda fiind cel al impulsurilor
modulate in latime. Placa are dimensiuni reduse, adaptate aplicatiei si permite dezvoltari si
imbunatatiri ulterioare. Testarea acesteia a dovedit o buna functionare.