Sunteți pe pagina 1din 88

4

Cap. I

Introducere



Tehnologia informaiei sau i Tehnologia informaiei i a comunicaiilor, abreviat
TI respectiv TIC, este tehnologia necesar pentru prelucrarea (procurarea, procesarea,
stocarea, convertirea i transmiterea) informaiei, n particular prin folosirea computerelor
(calculatoarelor electronice).Responsabil pentru dezvoltarea roboticii este tehnologia
informaiei.
Tehnologia informaiei gsete aplicare pe multiple domenii legate de date i
informaii, cum ar fi: procesoare, calculatoare, hardware i software, limbaje de
programare, structuri de date i altele. Sunt considerate ca fcnd parte din largul domeniu
IT toate elementele care prelucreaz, ntr-un fel sau altul, date, informaii sau cunotine.

Ocupaiile specialitilor din acest domeniu sunt foarte variate, de la instalarea de
software aplicaie i pn la proiectarea unor reele de calculatoare complexe i a bazelor
de date de informaii. Cteva sarcini tipice sunt: managementul datelor, construcia de
hardware pentru calculatoare, proiectarea de software, administrarea unor ntregi sisteme
informaionale. n ultimii ani sfera de rspndire s-a lrgit mult, cuprinznd acum nu
numai calculatoare i reelele lor, dar i telefoane mobile celulare, intelifoane
(smartphones), televizoare cuplabile la Internet, automatizarea automobilelor, aplicaii
militare i multe altele.

1.1 Conceptul de mecatronic: definiie; modele
Termenul mecatronic (MECAnic + elecTRONIC) a fost conceput n 1969
de un inginer al firmei japoneze Yaskawa Electric i protejat pn n 1982 ca marc a
acestei firme. Se referea iniial la complectarea structurilor mecanice din construcia
aparatelor cu componente electronice. n prezent termenul definete o tiin inginereasc
interdisciplinar, care, bazndu-se pe mbinarea armonioas a elementelor din construcia
de maini, electrotehnic i informatic, i propune s imbunteasc performanele i
funcionalitatea sistemelor tehnice.

1.2 Clasificarea sistemelor mecatronice

O imagine asupra diversitii i complexitii domeniilor care sunt incluse n vasta
noiune de Mecatronic poate fi furnizat de tematica seciunilor primei conferine
IFAC (International Conference of Automatic Control) de Sisteme Mecatronice,
organizat ntre 18 i 20 septembrie 2000 la Darmstadt (Germania):
Seciunea A Sisteme mecatronice, incluznd vehicule mecatronice, motoare i
maini mecatronice, trenuri mecatronice i sisteme spaiale mecatronice;
Seciunea B - Componente mecatronice, cu temele actuatori i dispozitive
mecatronice i lagre magnetice;
5

Seciunea C Roboi i maini pitoare, cuprinznd roboi mecatronici, sisteme
robotice mobile, maini pitoare;
Seciunea D Proiectarea sistemelor mecatronice a avut ca centre de greutate:
modelarea i identificarea; instrumente software; simularea n timp real i
hardware-in-the-loop;
Seciunea E Controlul automat al sistemelor mecatronice, s-a concentrat asupra
metodelor de control, a controlului micrii i vibraiilor i a sistemelor
mecatronice pentru detectarea i diagnosticarea erorilor.

Conceptul de sistem mecatronic

Un sistem mecatronic este un sistem tehnic care integreaz, ntr-o configuraie
flexibil, componente mecanice, electronice i de comand cu sisteme numerice de
calcul, pentru generarea unui control inteligent al micrilor, n vederea obinerii unei
multitudini de funcii. Diagrama bloc a unui sistem mecatronic este prezentat n fig1.



















Fig.1
1.3 Roboti mobili umanoizi

ROBOTI MOBILI reprezint, cea mai spectaculoas i reprezentativ categorie
de sisteme mecatronice, mai ales datorit ncercrii de a copia i de a se apropia de
modele din lumea vie.
un robot mobil are o structur mecanic complex, motoare de acionare care asigur
deplasarea n mediul nconjurtor, senzori care i permit orientarea, identificarea i
evitarea obstacolelor i un creier, constituit dintr-unul sau mai multe procesoare
numerice, care asigur comanda ntregului sistem.
Clasificare :
n funcie de dimensiuni: macro-, micro- i nano-roboi.
6


n funcie de mediul n care acioneaz:
roboi tereti se deplaseaz pe sol, roboi
subacvatici n ap,
roboi zburtori n aer,
roboi extrateretri pe solul altor planete sau n spaiul
cosmic;
n funcie de sistemul care le permite deplasarea n mediul n care
acioneaz,exist, de exemplu, pentru deplasarea pe sol:
- roboi pe roi sau enile;
- roboi pitori: bipezi, patrupezi, hexapozi, miriapozi;
- roboi crtori:
- roboi trtori: care imit micarea unui arpe, care imit
micarea unei rme etc;
- roboi sritori, care imit deplasarea broatelor, cangurilor - roboi de form
sferic (se deplaseaz prin rostogolire) etc.

Utilizri, Exemple:
-micro roboii i gsesc utilizarea n medicin, fiind capabili s se deplaseze de-a lungul
vaselor i tuburilor corpului omenesc, n scopul investigaiilor, interveniilor chirurgicale,
dozrii i distribuirii de medicamente
- macro-roboii :
n domeniul industrial, agricol, forestier: n domeniul industrial roboii mobili
sunt reprezentai de AGV-uri (Automated-Guided Vehicles), vehicule pe roi, cu ghidare
automat, care transport i manipuleaz piese, constituind o alternativ flexibil la
benzile de montaj; n agricultur exist tractoare i maini agricole fr pilot, capabile s
execute singure lucrrile pe suprafeele pentru care au fost programate; n domeniul
forestier roboii mobili pot escalada copacii nali pentru asanarea lor de crengile uscate
etc.;
n domeniul militar: este luat n considerare de ctre armata american
perspectiva nlocuirii soldailor combatani cu roboi, pentru a reduce riscul pierderilor
umane n lupt; roboi mobili de cele mai ingenioase i robuste configuraii sunt aruncai
n cldiri i incinte din zone de conflict, n scopuri de investigare i chiar anihilare a
inamicului;
n domeniul utilitilor publice: inspectarea conductelor de combustibili gazoi i
lichizi i a canalelor de canalizare. De exemplu, reeaua de canalizare a Germaniei
nsumeaz 400.000 km, iar inspectarea i curirea acesteia este presupune costuri de 36
Euro pe metru. Numai 20% din conducte sunt accesibile, iar utilizarea roboilor poate
reduce costurile cu un sfert. Problemele pe care le au de rezolvat astfel de roboi sunt
complexe, ntr-un mediu parial necunoscut, modificat permanent prin sedimentare,
surpare, coroziune, racorduri ilegale;
n domeniul distractiv i recreativ: sunt roboii-jucrii, roboii pentru competiii
etc.;
n domeniul serviciilor: Exist posibiliti deosebit de largi de implementare.
Sunt roboi pentru: deservirea bolnavilor n spitale; ajutorarea persoanelor btrne sau cu
7

diferite handicapuri; ghidarea i informarea publicului n muzee; aspirarea i curirea
ncperilor; splarea geamurilor i a pereilor cldirilor; executarea de activiti casnice.
n domeniul securitii: Multe operaii de inspectare i dezamorsare a unor
obiecte i bagaje suspecte sunt executate de roboi;
n domeniul operaiilor de salvare: Roboii salvatori (Rescue robots) sunt
utilizai n operaiile de salvare a victimelor unor calamiti: cutremure, incendii,
inundaii

MERSUL BIPED Avantaje :

-mobilitatea mai mare pe terenuri accidentate,
-facilitatea de a se deplasa n medii construite pentru oameni,
-punctul nalt al sistemului de vedere,
-posibilitatea utilizrii picioarelor i n alte scopuri dect pentru deplasare
-facilizarea utilizrii membrelor anterioare pentru operaii de manipulare.

Astfel roboii umanoizi pot lovi o minge, pot aciona pedalele unai vehicul, pot
urmri podeaua, utiliznd picioarele, sau pot deschide ui, pot manevra obiecte de pe
rafturi, pot aciona butoane i comutatoare cu mna. n ceea ce privete viteza,
mobilitatea, stabilitatea sau complexitatea, mersul cu patru sau mai multe picioare este
mult mai eficient.
Dezavantaje:
- centru de greutate nalt cu o suprafa mic de contact cu solul,
- echilibru mic ( instabil) al corpului,


Un robot umanoid este un robot cu aspectul su global bazat pe cea a corpului
uman, care s permit interaciunea cu instrumente sau medii. n general humanoid
roboii au un trunchi cu un cap, dou brae i dou picioare, cu toate c unele forme de
roboti humanoizi sunt prevazuti cu doar o a corpului, de exemplu, de la bru n sus.
Un robot umanoid este un robot autonom, pentru c poate s se adapteze la
schimbrile din mediul nconjurtor sau de sine i a continua s-i ating scopul.Aceasta
este principala diferenta dintre humanoid i alte tipuri de roboi. n acest context, o parte
din capacitile de un robot humanoid pot include, printre altele:
- auto-ntreinere (rencrcare propriu-zis)
- nvarea autonom (nva sau obine noi capaciti fr afara de asisten, ajusta
strategiile pe baza mprejurimilor i s se adapteze la situaii noi)
- evita situaiile duntoare pentru oameni, de distrugere a unor proprietati
interactiunea cu fiine umane i a mediului
- robotii humanoizi sunt creati pentru a imita unele sarcini pe care oamenii sunt supusi
zilnic sa le execute din aceeasi categorie cu cele fizice i mentale.


8


Cap II
2 Introducere in Softul Anybody

2.1 Procedura de instalare

1. Accesul la software-ul:
(a) In auto-instalarea programului atat de pe cd-ul cu care a fost trimis impreuna cu cheia
hardware este recomandat o descarcare a executabilului de la adresa de mai jos:
www.anybodytech.com/download.html?did=anybody.3.xx
Not Acest lucru necesit inregistrarea la BodyTM Web-user login. Dac nu suntei un
utilizator nregistrat web deja, o poti face urmnd link-ul de la pagina de conectare.
(b) Setup.exe din rdcina dvs. CD-ul de instalare (CD-uri nu fac parte din toate
distribuiile i trebuie s fie comandate separat).

2. Instalarea i lansarea AnyBodyTM:

(a) Executare a InstallShield (fie pe setup.exe sau de "Install" buton de pe pagina de web)
i urmai expertul de instalare.
(b) Custom-ul de instalare v permite s selectai directorul de instalare i selectai
componente.
Observai c in a instala expertul ,acesta alege directorul ,pregtete pentru coexistena cu
viitorele versiuni.
(c) n perioada de finalizare de instalare, driver-ele pentru AnyBodyTM de licenta
hardware sunt instalate corect, dac nu a fost gsit driver-ele sunt de pe computerul
dumneavoastr.
(d) Finalizai:
i. Alegei s lanseze AnyBodyTM ca ultimul pas; aceasta v va duce la Pasul 3.
ii. Alege pentru a deschide Adugare / eliminare programe pentru a elimina versiunile
9

mai vechi ale AnyBodyTM.
Acest lucru poate fi fcut ntotdeauna mai trziu.

3. nregistrai licen (e):

(a) n cazul AnyBodyTM este instalat pentru prima oar AnyBodyTM de licen manager
va aprea :
Cnd lansezi AnyBodyTM.
(b) Selectai tipul de hardware-ul dvs. de licen este obligat sa. Dac nu avei nici o
licen deja cumparata
Trebuie s selectai un demo de licen. Licena tipuri sunt:
i. cheie-obligatorie: Insereaz cheia nainte de a apsa "cheie-legata de licen".
ii. Computer-obligat: Acest tip de licen necesit un adaptor de reea n calculator.
Licena se refer la un computer de identificare, care este MAC adica numrul placii de
retea asociat adaptorului.
III. Demo: licentele demi speciale sunt de fapt licente valabile timp de 30 de zile. Daca
alegeti aceasta varianta in momentul inregistrarii la AnybodyTM veti primi automat si o
licenta de evaluare prin e-mail .
IV. Network: Acest lucru necesit o licen s ruleze cu un administrator de reea cu o
cheie hardware special instalata pe un server din reea. Observai firewalul poate bloca
accesul la retea al softului AnyBody.
(c) Tastai sau inserai chei de licen i apsai ENTER.
(d) Va puteti inregistra mai multe licente n licen manager.
(e) Va puteti inregistra noi licente mai trziu, n meniul Ajutor-> de inregistrare.
4. Not:
(a) n cazul n care avei probleme cu instalarea, v rugm s contactai AnyBodyTM la
adresa support@anybodytech.com sau telefon +45 9635 4286.
(b) V rugm s observai c un forum gratuit ofera sprijin si este disponibil prin
intermediul AnyScriptTM
Yahoo-grup, http://groups.yahoo.com/group/anyscript/. V rugm s urmai instruciunile
10

Yahoo pe pagina web pentru a va nregistra i de a ncepe s utilizai acest grup.


2.2 Terminologie

Primul i cel mai evident lucru s-ar putea s-l fi observat deja, este ca o multime de
lucruri sunt numite "Any'-ceva.Principiul este c numele tuturor tipurilor de date (de
exemplu, toate numele de clas) ncep cu "Any". Motivul este c acestea sunt clase a
sfotului AnyBodyTM de modelare de limb, i numele de "Any" implic faptul c acesta
este un sistem pentru a face modele de orice tip, fie c este vorba de un om, un cine, sau
a unui dinozaur. n mod similar,s-ar putea s se gndeasc la o clas, ca baz pentru a
face orice obiect de acest tip, de exemplu o clasa de baz , pentru orice tip de obiect este
numit AnyObject, cu alte cuvinte, toate obiectele sunt, de asemenea, AnyObjects.
Dac v-ai sturat de multe Any'ies, putei s srii peste ei de multe ori n
comunicarea oral, fr a pierde sensul. Vom vorbi de obiecte, dosare, segmente, etc
chiar dei ar fi mai corect s vorbim strict de obiecte de tipuri AnyObject, AnyFolder, i
AnySeg. Cred c vei aprecia acest lucru.
Restul de o parte din aceast seciune conine scurte explicaii de termeni care vor fi
folositi n mod frecvent n timp ce descriem detalii din limbajul AnyScriptTM.
Se face referire n calitate de instane de clase, de exemplu, putei avea mai multe obiecte
(instane) din aceeai clas.
Clasele: O clasa este un obiect de tip caiet de sarcini. Cursurile pot fi obinute de la
alte clase care pot moteni proprietile ei de la clasa din care sunt derivate De obicei le
adugam mai multe proprieti motenite de la cele din care provin, pentru existena lor
de a fi justificat. n AnyScriptTM toate clasele sunt provenite de la o clasa, ceea ce
implic faptul c toate clasele pot fi organizate ntr-un copac, cu o rdcin n funcie de
surs. Exist trei categorii de clase n AnyScriptTM:
Creaarea de clase :sunt clase care pot fi folosite de fapt, ceea ce nseamn c putei
defini obiecte din aceste clase.
Rezumat clase: Clasele de obiecte abstracte nu poate fi declarate n AnyScriptTM
deoarece exista o lipsa intr-o anumita parte din informaiile necesare pentru a fi pe
11

deplin operaional cu entitatile associate modelului.Scopul lor este de a ofere unele
derivate de rudenie ntre clase, pentru ca acestea sunt de obicei gsite n marea clasa
ierarhica.
Exista clase ascunse de alte clase care sunt n primul rnd, existentiale pentru
organizarea programului sifuncionalitatea acestuia. Astfel de cunostiinte despre acesta
va avea o mica relevan pentru un utilizator standard.
Clasa copac sau clasa ierarhica este structurata de clase ordonate n funcie de motenire.
n legtur relationala cu locaia de clase din structura copac, urmtorii termeni sunt
folositi:Clasa tata sau clas de baz sunt nume pentru o anumit clas de clas care este
derivata din clasa de baz sau de clas din rdcina unui copac din toate clasele derivate
din acesta. Clasele Copil sunt derivate din clasa de nume de clase, care sunt derivate
dintr-o alt clas, de baz clas.
Obiectul copac sau obiect ierarhie este arborele de obiecte. Aceasta este o hart a
obiectelor existente ntr-un model, si se poate da browse n interfaa utilizator a
sistemului propriu de ncrcare dup ce a fost creeat un model n AnyBodyTM. Exist,
n principiu, dou tipuri de obiecte: cele care pot s conin altele, precum i cele care nu
pot. Clase de baz din aceste doua tipuri sunt AnyFolder, care poate conine i alte
obiecte, i AnyValue, care este societatea mam a tuturor claselor care dein valori, de
exemplu, datele de baz. AnyFolder este mam pentru cele mai multe clase, pentru c
orice obiect de obicei, de modelare a datelor ine de date introduse de utilizator i
producia de rezultate; asta e ceea ce face ca funcia de clasa accesibile. Urmtoarele
termeni sunt utilizai pentru a descrie relaia obiect n obiect de arbore:
Proprietarii sunt obiectele care conin alte obiecte. Aceasta implic faptul c un proprietar
este de clas AnyFolder sau derivate din AnyFolder.
Proprieti sunt valorile stocate n membri, aa nct am putea vorbi de proprieti
de-o anumit clasa (proprietarul bunului-exploataie membru), de exemplu, masa unui
segment.
Acest lucru nseamn c proprietile sunt depozitate n clase care sunt derivate din
AnyValue.
Folderul de scopuri: Fiierele AnyScriptTM sunt mprite n scopuri delimitate de
acolade, "(" i ")". Sfera de aplicare a unui dosar este deschis de "<foldername> = (" i
12

nchis de ctre ")". Domeniul de aplicare a unui dosar poate conine iniializarea existente
de membri i declaraii de noi membri, i anume, initializare pentru folder. Folderul
domeniul de aplicare poate fi gandit ca "valoarea" unui dosar. Descrierea generala poate
folosi i ca acces de domenii. Principalul domeniu de aplicare este, ntr-un model de
AnyScriptTM.. Principal este un folder special, care este predefinit n sistem, astfel nct
el sa poata fi umplut (iniializat) fr declaraie. De aceea, toate modelele de start
AnyScriptTM cu fraza "Pagina principal = (" care se deschide n principal pentru
domeniul de aplicare. Exist doar un singur dosar principal i este un limitat de cuvinte
cheie. La fel ca si functia Main, Global este un folder special, care este predefinit de
sistem. Domeniul de aplicare a Global nu este accesibil pentru iniializarea de ctre
utilizator, dar ea trebuie s conin funcii predefinite, sistemul putand sa pun la
dispoziia utilizatorului. Accesul la aceste obiecte este facilitat de un mecanism special
de AnyScriptTM compilator care face toate obiectele din dosarul Global sa fie
disponibile oriunde in script-ul, de exemplu, din orice domeniu de aplicare. Pentru
utilizator se pare ca i cum aceste obiecte de la nivel mondial exist n toate scopurile. In
afara de Main, tipic coninutul Global este matematic construit doar pentru constante i
funcii. Cuvinte cheie restricionate sunt toate cuvintele care nu pot fi folosite pentru
numele de obiecte. Toate numele sunt de clas limitata de cuvinte cheie, precum i pentru
toate numele membrilor Global. Mai mult dect att, toate numele predefinite de membri
pot aprea ca limitat de cuvinte cheie n domeniul dat.
Numele de Obiect: Toate obiectele sunt identificate prin nume,object name. Un
obiect este unic identificat de numele su i dosarul este membru al sau, de exemplu,
poate exista un singur obiect cu un anumit nume, n fiecare dosar. Obiectul nume poate fi
compus din litere (majuscule / minuscule), cifre (nu n primul rnd) i sublinieri.
Adugarea identificatoare de la dosar, n partea din fa a obiectului nume, poate s fie
unica facand referire un anumit obiect. Acest lucru va fi acoperit n mai multe detalii n
urmtoarele seciuni.
Clasa operaiuni: Conceptul de clas operaiunilor este introdus n AnyBodyTM
versiunea 3.0. Acest lucru ar putea fi, de asemenea, interpretat ca funciile membru sau
membru operaiuni. Prin urmare, am venit cu un nou nume pentru acest tip de operaiuni
care sunt asociate cu un obiect de clasa sa, prin definiie. n prezent, operaiunile de clas
13

nu sunt documentate n clasa pagini de referin, dar vei vedea-le n AnyBodyTM in
interfa grafic, atunci cnd facei clic dreapta n obiecte arbore de obiect (de exemplu,
Model Tree ataat la cea mai mare parte a AnyBodyTM lui Windows). Clasa
operaiunilor de obicei, este atasata sa prevad un fel de interfa ntre utilizator i datele
din obiect. Lucrul acesta nseamn, ca obiecte pot fi realizate pentru a furniza mai multe
informaii dect n mod normal, disponibile doar prin navigarea pe membrii de obiect.
Obiectul Descriere: Obiectul Descriere este cea mai de baz clasa de funcionare, care
este asociata cu AnyObject i, prin urmare, toate celelalte clase. Este practica deoarece
imprim un mesaj cu tot felul de informaii cu privire la obiecte. Observai c n
AnyBodyTM de GUI acest mesaje vor fi prezentate ntr-o fereastr special cu link-uri
active, care v permite s va deplasati n jurul unui sistem, n funcie de informaiile
prezentate. Acesta este un simplu, dar singura sursa de informaii despre obiecte.
Comentarii n codul: Comentarii n cod este un concept cunoscut n toate mediile
dezvoltate de limbaje de programare i anume, textul scris n fiierele surs care numai
pentru a servi documentului, dar , fr a fi compilat. n AnyScript comentarii arata la fel
ca n C + .n AnyScriptTM exist dou tipuri de comentarii.
Sursa de cod .Comentarii sunt comentarii documentare referitoare la codul sursa cunoscut
ca de la cel mai alte limbaje de programare. Ele sunt complet ignorate de ctre
AnyScriptTM compilator i singura lor ca obiective este de a ajuta cititorul de cod surs.
Comentarii din Documentaie sunt asociate cu obiecte din model. Ele sunt n mod clar
marcate n codu i, prin urmare, pot fi citite de AnyScriptTM parser i depozitate
mpreun cu obiectele. Mai trziu, aceste comentarii de la modelul programator poate fi
folosite de AnyBodyTM sistem pentru a ajuta utilizatorul modelului sa inteleaga mai bine
modul de operare al programului.

2.3 Clasele importante

n aceast seciune, vom descrie o serie de baz i clasele importante,detailate in
descriere a acestor clase sunt n mod natural n propriile pagini de manual, dar de aici
servete pentru a oferi o imagine de ansamblu a modului n care este conceput limbajul
AnyScriptTM. Dup cum s-ar putea s descoperi multe dintre aceste clase sunt
14

importante clase de baza abstracte, deci importana lor de fapt vine de la rolul de a defini
noiunile de baz n aceast limb.
AnyObject Aceasta este clase de toate clasele. Cu alte cuvinte, toate obiectele din
AnyScriptTM sunt AnyObjects.
AnyValue reprezinta valoarea obiectelor, obiecte care pot conine valori de tipuri
specifice. De fapt, tipurile de date sunt definite n AnyValue fiind derivate de clase. Ca
atare AnyValue ca si obiect, sunt clase de baz pentru toate valoare sau toate variabilele.
AnyRefObject este obiect de referin, care face o legtur ntre un loc n cod i existenta
unui obiect in alta parte. Nu poti declara un AnyRefObject direct; pentru ca este ca si
cum ai declara un obiect de tipul referire de referin i de ctre operator "si"v indic
faptul c aceasta este o referire. Astfel, de referin deine informaii de la obiecte de
puncte la aceasta, precum i un tip (clasa) indicator.
AnyFolder sau AnyFolders sunt recipiente de alte obiecte. Cele mai multe clase sunt de
fapt, derivate din AnyFolder datorate de aceast proprietate, dar de asemenea, AnyFolder
in sine, este important pentru colectarea i organizarea de modele sistematice.
Un AnyConfigFolder special se afla in ramura de AnyFolders este AnyConfigFolders.
AnyConfigFolder derived pocess indica clase speciale pentru funcionalitatea loadtime
de configurare. Acest lucru este necesar pentru multe clase care au un nucleu de calcul n
scopul de a configura aceste calcule i relaia lor cu alte clase / obiecte.
Funcia AnyFunction reprezinta o ramura de clase derivate din AnyFunction. O funcie
clas este definite de functiile AnyScriptTM care pot intra n expresii, funcii
matematice de exemplu. Numele de funcie devine obiect de identificare, de aceea
trebuie s utilizai pentru a apel o funcie de o expresie cunoscuta programului. Cea mai
mare parte a AnyFunction-clase derivate sunt, pur i simplu standarde (matematice) si
funcii, care sunt predefinite la nivel global. De exemplu sinus i cosinus sunt definite de
clase AnyFunSin i AnyFunCos, i acestea dou sunt predefinite global de obiecte numite
"sinus" i "cos", respectiv, construite s furnizeze utilizatorului capacitatea ateptata a
valorilor pe care acesta doreste sa le calculeze. Oricum, unele clase sunt funcia declarat
de utilizator, ceea ce implic faptul c tu de fapt, poate declara uncod script. Acest lucru
v ofer un fel de functie locala i de obicei, o astfel de funcie de iniializare necesit
anumite atribute care fac instan de funcii speciale.
15

Clasele AnyStudy sunt derivate din fisierul si scriptul atatasat acestuia cu acelasi nume
AnyStudy. Un studiu de clas este o colecie de faciliti care s defineasc un anumit tip
de anchet pe care le-ar putea s dorii s facei. Aceasta implic faptul c studiul de
clasa consta in funcionalitate, de exemplu, rutine matematice i algoritmi, pentru
stabilirea i rezolvarea unei probleme. De exemplu AnyMechStudy (i clasele derivate)
sunt studii pentru efectuarea unei simulri a sistemelor mecanice. n plus fa de valoarea
real a capacitilor de investigare n cauz, conine, de asemenea, un studiu de
funcionalitate pentru nfiinarea unei anchete, de exemplu, prin intermediul unor alte
clase. De exemplu, AnyMech - Studiul analizeaz toate AnyMechObjects ce conine;
acestea fiind definiii mecanice pentru ca sistemul sa le poata analiza.
AnyOperation sunt o parte important din interfaa dintre model i orice -BodyTM din
interfa cu utilizatorul. Operaii sunt AnyFolders, dar pe care le-au special de faptul c
funcia defineste anumite aciuni care pot fi efectuate pe model. De obicei, un studiu care
conine unul sau mai multe operaiuni care permit utilizatorului s execute investigaii.
Nite operaiuni pot totui de sine stttoare, fr a fi parte a unui studiu.Baza de clase
AnyMechObject este pentru toate obiectele care sunt folosite pentru a defini un model
mecanic. Obiecte mecanice sunt blocurile de baz, folosind dinamica multibody .
Clasele de baza AnyDrawObject sunt pentru pentru a desena obiecte care pot fi afiate
vizual n modelul New Object(new). Acest lucru este demn de atenie, pentru c
ilustreaz diferentele generale ntre modelul de vedere classic cu ajutorul altor programe
i programul AnyScriptTM. Un element de mecanic, n modelu nu este oferit implicit in
modul de vedere afisabil. Acest lucru ofer utilizatorului libertatea pentru a defini o
vedere care s se potriveasc cu un anumit scop.


2.4 Descrierea Barei de Meniuri a softului AnyBody

Incep prin a prezenta interfata de comenzi si meniurile disponibile din AnyBody:
16



In meniul File putem face open la proiecte deja existente , putem importa/exporta ,putem
imprima pe hartie programe sau portiuni din programe si modele ; nu in ultimul rand
putem inchide programul prin comanda exit
In meniul Edit putem edita programe prin obtiunile copy/cut/paste ,comenta anumite
fragmente din program sau pentru a putea scrie comentarii despre program.
In meniul View putem vizualiza daca am inserat in modelul nostru fisiere sau formule
matematice de calcul anumiti parametri sau intregul model visual creat de noi sau deja
existent cu posibilitatea de urmarire cu exactitate a miscarilor pe care acesta le executa
In meniul Window avem posibilitatea de a deschide mai multe ferestre de lucru in acelasi
timp chiar si de vizualizare a claselor si obiectelor deja create sau la care putem face
referire.
In meniul Help avem posibilitatea de a vizualiza helpul softului de a inregistra programul
de a vizualiza sectiunea demo pe care acesta o are incorporate intr-un fisier numit
repozitory ,putand chiar face up-date in timp real la aceasta mica baza de date sau chiar
importand modelele deja create de noi insine ca fiind by-default.
Acestea sunt prezentate si mai jos pentru a usura lucrul ultilizatorului cu programul.

In partea stanga dupa compilarea programului vor aparea doua meniuri
Primul cand programul nu a fost compilat

Cel de-al doilea va afisa modelul mathematic deja compilat cu functiile cu care a fost
inzestrat programul.
17



O alta parte foarte importanta este faptul ca programul atunci cand apasam pe butonul de
M (make/compile) ne arata in timp real erorile si toti timpii de realizare a programului
(ceea ce uneori sunt foarte importanti ).


Programul pe care l-am realizat pentru a putea sustine mai bine necesitatea creearii unei
proteze umane pentru oamenii cu incapacitate de a se ridica de pe un scaun sau chiar de a
merge a fost doar pentru a vedea si putea extrage datele necesare creari programului
pentru (piciorul proteza) softul celor de la Trajecsia.
18


O prima imagine este cea a unei persoane asezate pe un scaun care doreste sa se ridice
,urmand sa vedem cu incetinitorul toti pasii necesari in ridicare ,urmand mai apoi sa va
prezint toate datele precum aceleratii musculare ,viteze si pozitii unghiulare.


























19

In cele ce urmeaza voi incerca sa prezint doar o parte din pozitiile ,acceleratiile si vitezele
unghiulare de care am avut nevoie pentru a putea sa incerc sa creez un model de ridicare
avand in vedere ca omul nu poate face nimic cu ambele picioare necesitand in prima faza
un studiu amanuntit al caracteristicilor sale aici putand face referire la greutate inaltime
conformatie si altele .
Voi pleca din a exemplifica un greafic cu marja de eroare generate de program in functie
de parametri impusi de mine apoi urmand sa prezint pentru o articulatie cele necesare
constand in aceleratii si viteze unghiulare ;urmatoarele putand fi vizualizate la rularea
progamului cu ajutorul ferestrei de vizualizare AnyChart.



20



21




22


23


24


25


26


27

















28


Cap III

CONTROLUL MICRII FOLOSIND SISTEMUL
TRAJEXIA

3.1 Sistemul Trajexia

3.1.1 Introducere

Trajexia este o platform de micare realizat de OMRON care ofer performan i
uurin n utilizarea unui sistem de micare dedicat. Trejexia este un sistem modular care
permite o flexibilitate maxim. In inima Trajexiei se afl coordonatorul de micare multi-
tasking TJ1. Alimentat de un 32 bit DSP, poate realiza task-uri de micare cum ar fi
came, motoare, control al nregistrrii i interpolrii, toate necesitnd comenzi simple de
micare.

Trajexia ofer un control de pna la 16 axe, utiliznd o magistral de micare
MECHATROLINK-II. Setul de instruciuni de micare face ca programarea s devin
intuitiv i uoar. Exist o gam larg de servo-driver-e de cea mai bun clas, att
rotative, liniare ct i directe, din care orice utilizator poate alege asemeni productorilor.
Sistemul poate fi scalat pna la 16 axe i 8 invertoare i module de intrare-ieire. (Figura
3.1)

29


Figura 3.1
3.1.2 Componentele hardware ale sistemului Trajexia

Sistemul Trajexia ofer urmtoarele avantaje:

- Conectivitate direct prin Ethernet
Portul Ethernet pentru Trajexia prevede o conectivitate direct i rapid ctre PC-
uri, PLC-uri i alte dispozitive, n timp ce ofer transparen total n josul
actuatorului de nivel, fcnd posibil accesul comenzii la distan.
- Port serial i local I/O
Un port serial prevede o conectivitate direct cu orice PLC OMRON sau orice alt
dispozitiv din orice mediu. 16 intrri i 8 ieiri sunt liber configurabile pentru a
permite adaptarea Trajexiei la design-ul dorit al mainii utilizatorului.
- Master-ul MECHATROLINK-II
Master-ul MECHATROLINK-II realizeaz controlul a pna la 16 servo-driver-e,
invertoare sau module I/O n timp ce permite o transparen complet pe ntreg
sistemul. Acesta ofer rapidiatea de comunicare i acuratee a timpului, eseniale
pentru a garanta un control perfect al micrii servo-driver-elor. Ciclul de timp al
micrii este selectabil ntre 0.5 ms, 1ms sau 2 ms.


30

- TJ1-FL02 (Unitatea flexibil a axelor)
Aceasta permite controlul complet a doi actuatori printr-o ieire analoag sau un
tren de impulsuri. Modulul susine protocol-urile decodificatorului principal
absolut, permind conexiunea unui decodificator extern la sistem.
- Driver-e i invertoare
O larg algere a servo-driver-elor rotative, liniare i directe este oferit, iar
invertoarele sunt disponibile pentru a potrivi necesitile fiecruia n compactitate
i performan. Invertoarele conectate la MECHATROLINK-II sunt conduse la
acelai ciclu de timp ca i servo-driver-ele.
- Comanda I/O
Modulele I/O la magistrala de micare MECHATROLINK-II sunt prevzute
pentru expansiunea sistemului, n timp ce dispozitivele dunt pstrate sub o
magistral de micare.
- PROFIBUS-DP
Slave-ul PROFIBUS-DP permite conectivitatea la reeaua PROFIBUS-DP
- DeviceNet
Slavel-ul DeviceNet permite conectivitatea cu reeaua DeviceNet

3.1.3 Programarea multitasking BASIC

Unitile TJ1-MC (Unitatea de control a micrii) caracterizeaz o versiune
multitasking n limbajul de programare BASIC. Multitasking-ul este simplu de setat i
folosit i permite programarea unor maini foarte complexe. Multitasking-ul ofer TJ1-
MC, un semnifiant avantaj peste sistemele single-tasking echivalente. El permite
aplicaii modulare unde procesele logice de conectare pot fi grupate mpreun n acelai
task, asta simplificnd arhitectura codului i design-ul. TJ1-MC poate suporta pna la 14
programe dac memoria i permite. Execuia programelor este uzual controlat folosinf
BASIC.

3.1.4 Programarea BASIC

31

Limbajul BASIC este format din comenzi, funcii i parametrii. Aceste expuneri
BASIC reprezint blocurile constructive prevzute pentru controlul operaiei TJ1-MC.

- Comenzile sunt cuvinte recunoscute de procesorul care efectueaz o anumit
aciune dar care nu red o valoare. De exemplu, PRINT este un cuvnt
recunoscut, care va cauza valorii urmtoarelor funcii sau variabile care vor fi
listate la un anumit dispozitiv de ieire.
- Funciile sunt cuvinte recunoscute de procesorul care efectueaz o anumit
actiune i returneaz o valoare relatat aciunii. De exemplu, ABS va lua valoarea
parametrilor si i va returna valoarea absolut a ei pentru a fi folositde alte
funcii sau comenzi.
- Parametrii sunt cuvinte recunoscute de procesorul care conin o anumit valoare.
Aceast valoare poate fi citit i, dac nu este read-only, poate fi i scris. Ei sunt
folosii pentru a determina i monotoriza comportamentul sistemului. De
exemplu, ACCEL determin rata de accelerare a micrii pentru o anumit ax.

3.1.4.1. Expunerile axelor, task-urilor i a sistemului

Comenzile, funciile i parametrii sunt aplicate att unei axe, ct i unor task-uri n
funciune sau sistemului general.

- Expunerile axelor
Comenzile pentru controlul micrii i parametrii axelor sunt aplicate uneia sau
mai multor axe. Parametrii axelor determin i monitorizeaz care sunt reaciile
axelor asupra comenzilor primite i cum reacioneaz la lumea exterioar. Fiecare
ax are un set de parametrii, astfel toate axele putnd lucra independent una fa
de cealalt. Comenzile pentru controlul micrii pot s controleze una sau mai
multe axe simultan, n timp ce fiecare ax are comportarea sa. Aceti parametrii ai
axelor sunt resetai la valorile lor iniiale la fiecare nou nceput. Comenzile i
parametrii lucreaz pe aceleai axe de baz sau grup de axe, specificate de
comanda BASE. Aceast comand este folosit pentru a schimba grupul axelor de
32

baz i fiecare task are propriul grup care poate fi schimbat la orice moment de
timp. Baza de axe iniial este 0. Comenzile sau parametrii individuali dependeni
ai axelor pot fi deasemenea programate s lucreze pe o baz de axe temporal
incluznd funcia AXIS ca una de modificare n comenzile dependente ale axelor.
O baz temporal de axe este efectiv doar pentru comanda sau parametrul dup
care AXIS apare.
- Expunerile task
Parametrii task sunt aplicai unui singur task. Acetia monitorizeaz taskul, de
exemplu pentru a se ocupa de o eroare. Funcia de modificare PROC permite
utilizatorului s acceseze un parametru al unui anumit task. Fr PROC , taskul
curent este atribuit. Comanda BASE este un task specific i poate fi utilizat cu
Funcia de modificare PROC.
- Expunerile de sistem
Aceste expuneri indrum caracterizrile sistemului , n general, care sunt de fapt,
toate expunerile care nu aparin primelor dou grupe de mai sus.





3.1.4.2 Zonele de memorie

Unitatea de control a micrii Trajexia prezint trei zone principale de memorie:
- memoria I/O
- memoria VR
- memoria TABLE

Memoria I/O este folosit pentru a menine statutul dispozitivelor de intrare i ieire
conectat la sistemul Trajexia. Aceasta este divizat n dou sub-zone: una pentru
memoria digital I/O i una pentru memoria analogic I/O. Memoria digital I/O menine
statuturile de intrare i ieire a dispozitivelor digitale I/O. Capacitatea lor este de 256 bii
33

pentru intrri i 256 bii pentru ieiri. Intrrile n aceast memorie pot fi accesate folosind
comanda IN. Ieirile pot fi accesate utiliynd comanda OUT. Memoria analogic menine
valorile intrrilor i ieirilor dispozitivelor I/O. Capacitatea sa este de 36 de canale de
intrri i 36 de canale de ieiri. Canalele anologice de intrare pot fi accesate prin comanda
AIN, iar cele de ieire prin comanda AOUT.

Memoria VR este folosit des atunci cnd unele date sau valori necesit a fi globale,
ceea ce nseamn c este accesibil de la toate programele n proiect, la acelai moment
de timp. Dimensiunea acestei memorii este de 1024 sloturi cu indexuri de le 0 la 1023.
Un slot de memorie este adresat folosind VR(x) macro, unde x este indexul de la slotul de
memorie VR. Memoria VR este accesibil pentru citire i scriere. Scrierea este realizat
prin asignarea matematic folosind comanda = n program. Coninutul acestei memorii
este inut n bateria de acumulare a memoriei RAM i este protejat n timp ce se afl n
power off. Totodat, aceast memorie este protejat la schimbarea bateriei, dac acest
lucru este realizat repede.

Memoria TABLE este deseori folosit dac anumite date necesit a fi globale, ceea ce
nseamn c este accesibil de la toate programele din proiect la celai moment de timp.
n timp ce memoria VR este folosit pentru scopuri similare pentru a defini diferite date
i valori globale, memoria TABLE este utilizat pentru cantiti mult mai mari de date
globale, care necesit deasemenea de a fi aranjate ntr-o anumit ordine. Din acest motiv,
memoria TABLE este folosit pentru a stoca date TABLE, profile de micare, date de
logare, etc. Cteva comenzi BASIC care prevede acest tip i dimensiune de date, de
exemplu SCOPE, CAM, CAMBOX, etc, cer utilizarea memoriei TABLE pentru scrierea
rezultatelor. Mrimea meoriei acestea este de 64000 de sloturi cu indexuri de la 0 la
63999. TABLE-ul este accesibil pentru citire i scriere, dar calea prin care este accesat
difer pentru aceste dou operaii. nainte de a fi citit, un slot particular de memorie
necesit a fi definit i scris mai nti, utiliznd comanda TABLE(x, value1, value2,...)
unde x este indexul de start al slotului de memorie TABLE, iar value1, value2,... sunt
valorile scrise n memoria TABLE la indexii x, x+1,... Odat definit i scris, slotul de
memorie TABLE poate fi citit folosind comanda TABLE(x), unde x reprezint indexul
34

slotului de memorie TABLE. Memoria TABLE este protejat la schimbarea bateriei,
dac acest lucru este realizat repede.

3.1.4.3. Structuri de date i variabile

Programele BASIC pot stoca datele numerice n numeroase tipuri de variabile.
Cteva variabile au funcii predefinite, la fel ca parametrii axelor i parametrii sistemului,
iar altele sunt disponibile pentru programator s defineasc precum se cere n pragramare.

Variabilele TABLE
TABLE este o structur de tip vector care conine o serie de numere. Aceste numere sunt
folosite n instan, pentru a specifica poziiile n profil pentru o comand CAM sau
CAMBOX. Ele pot fi foflosite totodat pentru a stoca datele pentru a fi folosite mai
trziu, de exemplu pentru a stoca parametrii folosii pentru a defini o pies de lucru
pentru a fi procesat. TABLE-ul este comun pentru toate taskurile la TJ1-MC. Acest
lucru nseamn c valorile scrise n TABLE de la un task pot fi citite de alte taskuri.
Valorile TABLE pot fi scrise i citite folosind comanda TABLE. Lungimea maxim a
vectorului este de 64000 de elemente, de la TABLE(0) la TABLE(63999). Vectorul
TABLE este iniializat pna la elementul cel mai sus definit.



Variabile globale
Variabilele globale, definite n memoria VR, sunt comune la toate taskurile la TJ1-MC.
Acest lucru nseamn c, dac un program merge n taskul 2 se seteaz VR(25) la o
anumit valoare, atunci orice alt program mergnd ntr-un alt task poate citi aceeai
valoare din VR(25). Acest lucru este foarte folositor pentru a sincroniza dou sau mai
multe taskuri, dar trebuie avut grij pentru a evita scrierea mai multor programe la
aceeai variabile n acelai moment de timp. Controler-ul are 1024 de variabile globale,
VR(0) la VR(1023). Variabilele sunt citite i scrise utiliznd comanda VR.

35

Variabile locale
Acestea pot fi declarate n programe i sunt locale pentru task. Acest lucru nseamn c
dou sau mai multe programe n rulare la diferite task-uri, pot folosi acelai nume de
variabile, dar valorile lor trebuie s fie diferite. Variabilele locale nu pot fi citite din orice
task, exceptnd pe acelea n care ele sunt declarate. Variabilele sunt ntotdeauna terse
cnd un program este pornit. Ele pot fi terse fie folosind comanda CLEAR, fie folosind
comanda RESET.
Pot fi declarate maxim 255 de variabile locale. Doar primele 16 caractere din nume sunt
semnifiante. Variabilele locale nedefinite se ntorc la valoarea zero. Acest tip de
variabile nu pot fi declarate n linia de comand.

Etichete
Programele BASIC sunt executate n ordine descresctoare a liniilor. Etichetele pot fi
folosite pentru a altera fluctuaia execuiei folosind comanzile GOTO i GOSUB. Pentru
a defini o etichet, ea trebuie s apar ca nceputul unei linii i trebuie s se ncheie cu (:).
Etichetele pot fi caractere string de orice lungime, dar doar primele 15 caractere sunt
importante.


Utilizarea variabilelor i a etichetelor
Fiecare task are propiile lui variabile locale i etichete.
Dac se dorete meninerea datelor n comun ntre dou sau mai multe programe, trebuie
s se utilizeze variabilele VR. Sau dac volumul de date ce trebuie meninut este foarte
mare atunci variabilele TABLE trebuiesc a fi folosite.
Pentru a face un program s fie mai bine neles folosind variabilele globale VR, exist
dou soluii. Prima este aceea n care este utilizat o variabil local numit ca o
constant n variabilele VR. Variabila local constant, trebuie s fie declarat n fiecare
program folosind variabilele globale VR. Cea de-a doua soluie este aceea n care se
folosete comanda GLOBAL pentru a declara numele ca o referin la una dintre
variabilele globale VR.

36

3.1.5 Execuia micrii

Fiecare task la TJ1-MC are un set de memorii tampon care rein informaia de la
comanda de micare dat.


3.1.5.1 Generator de micare

Generatorul de micare are un set de dou memorii tampon de micare pentru fiecare
ax. Prima memorie, numit MTYPE, pstreza Micarea Actual, care este micarea
curent care se execut pe axe. Cealalt memorie tampon numit NTYPE, pstreaz
Micarea Urmtoare, care este executat dup ce Micarea Actual este terminat.
Programele BASIC sunt separate de programul generator de micare, care controleaz
micrile axelor. Generatorul de micare are funcii separate pentru fiecare ax, pentru
ca fiecare ax s fie capabil a fi programat cu proprii si parametrii ai axelor i s se
poat muta independent i simultan, sau pot fi legate mpreun folosind comenzi
specifice.

Cnd o comand de micare este procesat, generatorul de micare ateapt pn ce
micarea este terminat i memoria tampon pentru axele cerute a devenit goal, i apoi
ncarc aceste memorii cu informaii specifice micrii urmtoare.

Dac memoriile tampon ale unui task sunt pline, execuia programului este oprit pn
ce aceste memorii sunt valabile din nou. Acest lucru afecteaz i la linia de comand a
taskului , astfel nici o comand nu poate fi dat n aceast perioad i spaiul de lucru al
Trajexiei va fi deconectat. Parametrul task PMOVE va fi setat pe TRUE atunci cnd
memoria tampon a task-ului este plin i va fi resetat la FALSE cnd memoria este
valabil din nou.

37


Figura 4.2
3.1.5.2 Secvenierea

La fiecare ntrerupere a servo ciclului, generatorul de micare examineaz memeoriile
tampon NTYPE pentru a vedea dac vreuna dintre ele este valabil. Dac sunt valabile,
atunci verific memoriile task tampon pentru a vedea dac exist o micare care ateapt
s fie ncrcat. Dac o micare poate fi ncrcat, atunci datele pentru toate axele
specificate sunt ncrcate din memoriile task tampon n memoriile NTYPE i memoriile
task corespunztoare sunt marcate ca fiind neuzabile. Acest proces este numit
secveniere.

3.1.5.3 ncarcrea micrii

Dup ce secvenierea a fost terminat, memoriile tampon MTYPE sunt verificate pentru
a vedea dac exist micari ce pot fi ncrcate. Dac memoria MTYPE cerut este
valabil, atunci micarea este ncrcat din memoria NTYPE ctre MTYPE i cele
NTYPE sunta marcate ca neuzabile. Acest prices este numit ncrcarea micrii. Dac
este o micare valid n memoriile tampon MTYPE, atunci aceasta este procesat. Cnd
micarea este complet, memoriile MTYPE devin neuzabile.
38


3.1.6 Interfaa liniei de comand

Aceast interfa ofer o interfa direct pentru utilizator s execute comenzile i s
acceseze parametrii din sistem. TJ1-MC pune ultimele 10 comenzi date n linia de
program ntr-o memorie tampon.

3.1.7 Programe BASIC

TJ1-MC poate stoca pna la 14 programe n memorie, dac capacitatea memoriei nu
este suprancrcat. Software-ul pentru spaiul de lucru cu Trajexia este utilizat pentru a
stoca i ncrca programe ctre i de la un calculator pentru arhivare, listare i editare.

3.1.8.1 Menajarea programelor

Spaiul de lucru creeaz automat un proiect care conine programele pentru fi utilizate
pentru o aplicaie. Programele proiectului sunt pstrate att n controler ct i n
calculator. Oricnd un program este creat sau editat, ele este salvat de ctre soft-ul de
lucru n dou exemplare. El verofic dac cele dou variante sunt identice folosind o
verificare ciclic redundant, Dac cele dou sunt diferite, sift-ul permite copierea
versiunii din TJ1-MC ctre disc i invers.
Programele din calculator sunt stocate n fiiere text ASCII. Ele pot fi listate ulterior,
editate sau copiate folosind un simplu editor de text. Programele surs sunt inute n TJ1-
MC.

Stocarea programelor
Programele n TJ1-MC sunt inute n bateria de alimentare a memoriei RAM i este
protejat n timpul opririi. Acest lucru este similar ca la memoria VR sau TABLE.
Coninutul programului memoriei RAM este protejat atunci cnd bateria este in TJ1-MC.
Deasemenea programele sunt protejate la schimbarea bateriei dac acest lucru este
realizat repede.
39



3.1.8.2 Compilarea programelor

Sistemul TJ1-MC compileaz programe automat la cerere. Nu se cere in mod normal ca
TJ1-MC sa fie forat sa compileze programe, dar programele pot fi compilate in meniul
Programului n spatiul de lucru al Trajexiei. TJ1-MC compileaz automat programe n
situaiile urmtoare:
- Programul selectat este compilat nainte de a fi executat daca a fost editat.
- Programul selectat este compilat dac a fost editat nainte de a schimba programul
selectat cu alt program.
- Programul selectat este compilat folosind comanda Compile.

Sintaxa :i structura programului sunt verificate n timpul compilrii. Dac compilarea
nu a avut succes, se va afia un mesaj i niciun cod al programului nu va fi generat. O
linie roie va aprea n cutia directorului n spaiul de lucru al Trajexiei.
Programele nu pot rula atunci cand apare o eroare de compilare. Erorile ar trebui
corectate i programele recompilate.
Procesul de compilare include deasemenea i urmtoarele:
- nlturarea comentariilor.
- Numerele compilrii n formatul procesorului intern.
- Convertirea expresiilor n formatul Reverse Polish Notation pentru execuie.
- Precalcularea locaiilor variabile.
- Calcularea structurii destinaiilor buclei.

Procesul de compilare necesit nite memorie liber, astfel pot aprea erori de compilare
neateptate atunci cnd nu este destule memorie.




40

3.1.8.3 Executia programelor

Timpul execuiei pentru diferitele task-uri si remprospatarea modulelor de I/O a TJ1-
MC se nvrte n jurul perioadei ciclului servo a sistemului. Perioasa ciclul servo este
determinat de sistemul parametru periada servo. TJ-MC va avea ori o perioada a
ciclului servo a 0.5, 1.0 sau 2.0 ms.
Remprosptarea I/O
Statutul I/O a TJ-MC este remprosptat la nceputul fiecrui ciclu servo.
- Statutul captat al intrrilor digitale este transferat n variabila de intrare IN a
sistemului.
- Ieirile analogice pentru viteza de referina sunt reactualizate.
- Ieirile digitale sunt reactualizate conform statutului variabilei de ieire OP a
sistemului.
- Statutul ieirilor digitale este captat.

Observm ca niciun proces automat al semnalelor I/O nu are loc, exceptnd cele pentru
registrare. Aceasta implic ca toate aciunile trebuie programate in programe BASIC.

Comenzi relevante
Spaiul de lucru al Trajexiei conine cateva feluri de execuie, pauz si oprire ale
programelor folosind butoane din control panel si fereastrele de editare. Urmatoarele
comenzi pot fi date comenzii linie pentru a controla execuia.

Setarea programelor pentru a rula la pornire
Programele pot fi setate sa ruleze automat la diferite prioritai cnd puterea este oprita.
Daca se cere, calculatorul poate fi lsat conectat ca un operator de interfaa sau poate fi
ndeprtat iau programele sa ruleze singure.
Programele sunt setate in spaiul de lucru al Trajexiei pentru a rula automat la pornire
folosind Set Power Up Mode din meniul programului. Aceasta operaie stabilete care
program ruleaz automat si care ruleaz prioritar. Aceasta poate fi indeplinita i prin
comanda RUNTYPE BASIC. Statutul curent poate fi vzut folosind comanda DIR.
41

3.2 Filosofia sistemului Trajexia

3.2.1 Introducere

Filosofia sistemului este centrat n jurul relaiilor dintre:
- arhitectura sistemului
- momentul de ciclu
- controlul programului i activitaile multiple
- secvena de micare i axele
- memoriile tampon ale micrii
O ntelegere clar a relaiei dintre aceste concepte este necesar pentru a obine cele mai
bune rezultate de la sistemul Trajexia.

3.2.2 Lexic

- Secvena de micare este folosit pentru a controla poziia axelor.
- Perioada de servo definete frecvena la care este executat secvena de miscare de
micare. Se recomand setarile: 0.5 ms, 1ms sau 2ms.
- Timpul de ciclu este timpul de care este nevoie s se execute ciclul de operaii in TJ1-
MC. Timpul de ciclu este mparit n patru pari de lungime de timp egale, denumite
Taskuri ale CPU.
- Activitaile CPU:



n urmatorul tabel vom introduce operaiile executate n fiecare CPU.

Activitai CPU Operaii
Prima activitate CPU Secvena de micare
Prioritate scazut
A doua activitate CPU Prioritate ridicat
42


A treia activitate CPU Secvena de micare (numai dac perioada
de servo este egal cu 0.5 ms)
Prioritate ridicat
A patra activitate CPU Comunicaii externe
Tabel 3.1

- Program: Un program este o bucat din codul BASIC.
- Proces: Este un program in executare cu o prioritate sigur desemnat. Astfel ntre 0 i
12 are prioritate scazut i proces 13 i 14 au prioritate ridicat. Mai nti prioritatea de
proces, nalt sau sczut, i dupa aceea procesul s nsumeze, de la nalt la jos la care
activitate va fii desemnat procesul.


3.2.3 Concepte de control al micarii

Trajexia ofer urmatoarele tipuri de a poziiona operaiile de control:
- Control punct la punct (PTP)
- Control continuu pe traiectorie (CP)
- Control angrenat electronic (EG)
- Sistem de coordonate.

Operaiile executate de TJ1-MC sunt bazate pe o ax a sistemului de coordonate.
Trajexia transform informaiile de poziie da le ori conectate la servodriver sau
decodificator conectat intr-un sistem de coordonate intern absolut.


Se pot definii distane care permit pentru fiecare ax, separat definire liber.
Transformarea este executat{ prin folosirea unui factor de conversie, care este definit prin
parametrul axei UNITS. Punctul de origine al sistemului de coordonate poate fii
43

determinat folosind comanda DEFPOS . Aceast comand aduce poziia curent la 0 sau
la orice alt valoare n cazul n care este specificat.

O micare este definit n termeni absolui sau relativi. O micare absolut duce axa A
ntr-o poziie specific predefinit care ine cont de punctul de origine. O micare relativ
duce axa de la poziia curent ntr-o poziie care este definit relativ la poziia curent. n
figura urmatoare sunt reprezentate cele dou tipuri de micari liniare. Comenzile folosite
pentru acestea sunt comanda MOVE pentru micare relativ, respectiv MOVEABS
pentru micare absolut.

Figura 3. 3

3.2.3.1 Controlul PTP

n acesta modalitate de control fiecare ax este mutat independent de celelalte axe. Se
pot realiza urmatoarele operaii:
- Micare relativ
- Micare absolut
- Micare continu nainte
- Micare continu invers
- Micarile relative i absolute:
44

Pentru a mica o sigur ax comnda este MOVE pentru micare relativ i MOVEABS
pentru o micare absolut. Fiecare ax are propriile caracteristici de micare, care sunt
prin parametrii axelor.
Presupunem c un program trebuie s mute din origine pe axa numarul 0 (A) la
coordonata 100 i axa numarul 1 (B) la coordonata 50. Daca parametrul de vitez este
acelai pentru ambele axe, i ratele de accelerare i decelerare sunt suficient de mari,
micarea pe axele 0 i 1 arat ca n figura urmtoare:


Figura 3.4

La nceput ambele axe se deplaseaz n acelai timp pn la coordonata 50. n acest
punct axa 1 se oprete iar axa 0 continu sa se deplaseze pna la coordonata 100.
Parametrii axelor sunt:

Parametri Descriere
UNITS Coeficient de transformare de unitate
ACCEL Rata de accelerare a unei axe. [uniti/s
2
]

DECEL Rata de decelerare; [uniti/s
2
]
SPEED Viteza necesar pentru fiecare ax.
[uniti/s
2
]
Tabel 3.2
45

Definirea micarii
n figura urmatoare este reprezentat o operaie simpla MOVE. Axa A este timpul, axa B
este viteza. Parametrul UNITS pentru aceste axe a fost definit n metri. Cererea maxim
de vitez a fost setat la 10m/s. Pentru a agunge la aceast vitez si deasemenea pentru a
frna la 0 ntr-o secund, ratele de accelerare i decelerare trebuie sa fie setate la 10 m/s.

Figura 3.5

Distana total parcurs este suma distanelor parcurse pe durata accelerarii i decelerarii
cu vitez constant. Distana de deplasare este de 40m.

Calculul micrii:
Pentru a calcula timpul total de micare al axelor sunt folosite urmatoarele ecuaii.
- Distana micrii pentru comanda MOVE este D
- Cererea de vitez este V
- Rata de accelerare este a
- Rata de decelerare este d
- Timpul de accelerare = V/a
- Distana de accelerare=V
2
/2a
- Timpul de decelerare=V/d
-Distana de decelerare= V
2
/d
- Distana de vitez constant=
ad
d a V
D
2
) (
2
+


46

- Timpul total=
ad
d a V
V
D
2
) ( +
+



- Micarea continu:

Comenzile FORWARD i REVERSE pot fii utilizate pentru a porni o micare continu
cu vitez constant pentru fiecare ax. Comanda FORWARD deplaseaz axa n direcie
pozitiv, iar comanda REVERSE n direcie negativ. Pentru aceste comenzi se pot aplica
deasemenea parametrii axelor ACCEL i SPEED pentru rata de accelerare i cererea de
vitez. Ambele micari pot fii anulate folosind una din comenzile CANCEL sau
RAPIDSTOP. Prima comand anuleaz micarea pentru una din axe iar cea de-a doua
pentru ambele axe.

3.2.3.2 Controlul continuu (CP)

Permite o cale de de control specific ntre poziia de nceput i de sfrsit a micrii
pentru una sau mai multe axe. Trajexia permite urmatoarele operaii:
- Interpolare liniar
- Interpolare circular
- Control de cama
- Interpolare liniar

n aplicaii poate fi cerut un set de motricitate efectund operaii de micare pentru
dintr-o poziie n alta n linie dreapt. Comenzile MOVE i MOVEABS sunt folosite
deamsemenea n interpolare. n acest caz comenzile vor avea argumente multiple
specifice micarii relative sau absolute pentru fiecare ax.
Considerm trei axe de micare ntr-un plan tridimoesional ca n figura 4.6

Este corespondentul comenzii MOVE(50, 50, 50). Profilul vitezei micarii de-a lungul
traiectoriei este dat n diagram. Parametrii SPEED, ACCEL, DECEL sunt parametrii
47

corespondeni axei de baz, ei determin micarea axelor. A este axa timplui, iar B este
axa vitezei.


Figura 3.6

Interpolarea circular
Este utilizat pentru deplasare dintr-un punct de pornire spre un punct de sfrsit pentru o
traiectorie descris printr-un arc de cerc. n acest caz micarea se comanda cu
instruciunea MOVECIRC. Consideram diagrama din figura urmatoare. Aceasta
corespunde comenzii MOVECIRC(-100,0,-50,0,0).

48

Figura 3. 7

Sunt specificate punctul central i punctul final dorit relativ la cel de nceput i direcia
micarii. Ca i n cazul interpolarii liniare comenzile ACCEL,DECEL i SPEED asociate
axei de baz determin profilul vitezei de-a lungul micarii circulare.

Controlul de cam
Pe lng micarile de standard, Trajexia ofer o posibilitate de a defini profilul poziiei
pentru o micare a axei. Comanda CAM deplasea axele n conformitate cu poziiile
memorate n tabelul de vectori ai Trajexiei. Figura 4. corespunde comenzii
CAM(0,99,100,20).

Figura 3.8

Controlul elecronic de angrenare
Acest control ne permite s conectm axe ntre ele. Se pot realiza urmtoarele operaii:
- cutie de viteze automat
- cam electronic
- micare legat
- conectarea axelor

Cutie de viteze electronic
Trajexia este capabil s aib o legatur ntre dou axe care sunt conectate fizic ntre ele
ca n tabelul urmtor:
49


Tabelul 3.3
Diagrama corespunzatoare celor trei cazuri prezentate n tabelul de mai sus este urma-
toarea unde A este axa master iar B este axa conectat.

Figura 3. 9

n program se folosete comanda CONNECT. Sunt specificate raportul de viteza i axa
care va fii condus. n tabelul de mai sus A este axa master iar B este axa conectat.

Cam electronic
Este furnizat o unealt pentru a lega profilul camei la o alt ax. Comanda care creaz
legtura este CAMBOX. Aceast comand are urmtorii parametri: punct de start, punct
de sfrsit, factor de multiplicare a valorii, axa care se leag, pozitia absolut unde se
realizeaz legatura. Viteza de deplasare nu este determinat de parametrii de ax ea este
dat de poziia axelor legate.
50


Figura 3.10


Micarea legat
Comanda MOVELINK permite o cale de a atribui o micare specific unei axe master.
Micarea este mparit n accelerare, decelerare i o vitez constant pe parcursul care i
este specificat. Aceasta poate fii n particular folosit pentru sincronizarea a dou axe pe
o perioad stabilit. n figura 4.11 A este axa timpului, B axa vitezei, C axa master (1),
D sincronizarea, E axa obinut cu comanda MOVELINK (0).

Figura 3.11

Conectarea axelor
Este foarte folositor s putem aduna toate de pe o ax pe alta. O aplicaie posibil este
s modificam punctul de plecare a dou axe legate printr-o cutie electronic. Trajexia
51

ofer aceast posibilitate folosind comanda ADAXX. Micarea axei legate va conine
toate micarile axei actuale plus micarea axei master.
Figura 3.12
3.2.3.3 Alte operaii

Anularea micarii
ntr-o operaie normal sau n caz de urgena este necesar oprirea micrii curente din
memoria tampon. n momentul n care sunt date comenzile CANCEL sau RAPIDSTOP
va fii anulat micarea toturor axelor care sunt selectate.

Detectarea punctului de origine
Numrul de impulsuri dat pe calea invers a decodificatorui incrementeaz poziia. Astfel
fiecare micare trebuie sa aib definit un punct de plecare. Comanda care este folosit
pentru a detecta un punct de plecare este DATUM.

nregistrare tiparit
Trajexia poate pstra poziia unei axe ntr-un registru dac se petrece un eveniment
important. Aceast poziie poate fii folosit ulterior pentru a corecta erori ntre pozitia
actual i poziia dorit. Acest lucru se poate realiza cu ajutorul comenzii REGIST.
52

Poziia este nregistrat pe suportul fizic eliminnd necesitatea existenei unui program de
tratare a intreruperii.


mbinarea micrilor
Comanda specifica este MERGE. Daca parametru axei este setat la 1 atunci micarea este
intotdeuna urmat de o subsecvena de micari fr oprire. n figura urmatoare este
ilustrat tranziia a doua micri cu valoarea comenzii MERGE 0 i 1.

Figura 3.13


3.2.4 Principiul servodriverului

3.2.4.1 Bucla semi-inchis a sistemului

Sistemul detecteaz micarea altual a mainii i o compar cu valoarea inta.
Calculeaz erorile dintre valoarea inta i micarea acuala i reduce aceste erori prin bucla
de reacie.

3.2.4.2. Operaiile interne ale TJ1-MC

Figura urmtoare arat principiul de baz al servosisitemului utilizat de TJ1-MC
53

Execut controlul de poziie real. Intrarea controlerului este Following Error, care este
diferena dintre poziia cerut i poziia actual masurat.
Poziia controlerului calculeaz cererea de vitez determinat de Following Error,
dintre poziia cerut si cea masurat. Viteza de referina este dat de servodriver.
Servodriverul controleaz viteza de rotaie a servomotorului corespunzator cu viteza de
referina.
Decodificatorul controleaz prin bucl de reacie invers la servodriver viteza iar la TJ1-
MC poziia.

Figura 3.14

n figura de mai sus s-au notat:
A - TJ1-MC
B - Servodriverul
C - Poziia cerut
D - Controlul poziiei
E - Viteza de referina
F - Controlul vitezei
G - Motor
H -Decodificator
I - Viteza masurat
J - Poziia masurat




54

3.2.4.3 Algoritmul de control al micrii

Servomecanismul de control al motorului este ajustat n permanena de viteza de
referina a servodriverului. Algoritmul de control folosete poziia cerut (A), poziia
masurat (D) i erorile caculate (B) (diferena dintre valoarea dorit i cea masurat)
pentru a determina viteza de referina. Poziia dorit, poziia masurat i erorile sunt
reprezentate prin parametrii axelor MPOS, DPOS i FE. Pentru a putea configura corect
controlul fiecrei aplicaii au fost implementate 5 valori ale catigului:
C este ieirea semnalului.

1. Catigul proporional creez o ieire O
p
care este proportional cu eroarea E
O
p
= K
p
* E
Toate aplicaiile folosesc acest tip de ctig, pentru unele fiind chiar suficient. CA
parametru al axei este numit P_GAIN.

2. Cstigul integral
Creaz o ieire O
i
care este proporional cu suma erorilor ce au fost nregistrate de-a
operaiei sistemului.
O
i
= K
i
* E
Ctigul integral poate provoca depairi i este folosit la sistemele care lucreaz la viteza
constant sau cu acceleraie redus. Ca parametru al axei se folosete I_GAIN.

3.Cstigul derivativ
Produce o ieire proporional cu diferenele de erori i viteza de raspuns la schimbare.
O
d
=K
d
* E
Cstigul derivativ poate da un raspuns cu valori nalte care pot oscila.
Este folosit prin notaia D_GAIN.
4.Ctig al vitezei de ieire
Produce o ieire proporional cu schimbarile n masurarea poziiei
Pm
i crete
amortizarea sistemului.
O
OV
=K
OV
*P
m
55

Acest cstig poate genera erori mari ntre valorile int i valorile masurate. CA
parametru al axelor este folosit prin notaia OV_GAIN.

5. Ctigul vitezei de alimentare
Acest cstig ofer o ieire proporional cu poziia cerut i minimalizeaz erorile
sistemului.
Ovff = Kvff * Pd
Este notat cu VFF_GAIN.
Valorile implicite ale acestor catiguri sunt date n tabelul de mai jos:
Cstig Valoare implicita
Catigul proporional 0.1
Cstigul integral 0.0
Cstigul derivativ 0.0
Ctig al vitezei de ieire 0.0
Ctigul vitezei de alimentare 0.0
Tabel 3.4

3.3 Arhitectura sistemului Trajexia

Arhitectura sistemului Trajexia depinde de urmatoarele concepte:
- Controlul programului
-Secvena de micare
- Memoria tampon a micrii
- Comunicaie
- Periferice

Controlul programului:
Programarea sistemului se realizeaz ntr-un mod definit. Programele sunt scrise ntr-un
limbaj asemntor libajului BASIC i are control asupra axelor i a modulelor.
Pot fii executate n paralel 14 programe. Programele care sunt setate sa locreze pot fii
pornite i oprite de alte programe executate de spatiu de lucru al Trajexiei.
56


Secvena de micare:
Controleaz poziia pe toate cele 16 axe cu urmatoarele actiuni:
- Citete micarea din memoria tampon
- Citete poziia masurat curent (MPOS)
- Calculeaz urmatoarea poziie cerut
- Execut bucla pozitiei
- Trimite comanda la axe


Memoria tampon a micrii
Reprezint legatura dintre comenzile BASIC i controlul axelor. Cnd o micare din
BASIC este executat, comanda este stocat ntr-o memorie tampon. Pn la urmatoarea
secvena de micare se execut micarea corespunzator informaiilor din memoria
tampon. Cnd se termin micarea comanda de micare este mutat din aceast memorie.

Comunicaia
Toate comunicaiile sunt executate n al patrulea task al CPU. Un set din comunicaiile de
baz sunt folosite pentru a configura comunicaiile. Cnd Trajexia este un slave de
comunicare este doar necesar s configuram comunicaiile n task-ul iniial. Valorile sunt
schimbate de la variabilele configurate global ntr-un mod transparent. Cnd Trajexia este
master de comunicaie, comenzile BASIC de comunicare sunt folosite pentru a scrie i a
citi.

Perifericele
Toate intrrile i ieirile sunt folosite cu un set de parametri (IN, OP, AIN, AOUT).
Intrrile i ieirile sunt automat detectate i afiate n Trajexia. Comenzile BASIC le
controleaz.Diverse module de intrare i ieire MECHATROLINK-II pot fii conectate la
o unitate TJ1-MC.


57



3.4 Interfaa de lucru cu Trajexia tools

3.4.1 Introducere

Aceast soft permite programarea sistemului Trajexia. El permite realizarea de proiecte i
editarea de programe. Soft-ul include instrumente cum ar fi: programe individuale
Run/Stop/Step, adugarea de puncte de ntrerupere, executarea direct a comenzilor
variabilelor de citire/scriere, funcii de osciposcop i programarea Servo Driver-elor.

Conexiunea cu TJ1-MC este prin Ethernet. Este necesar s se seteze comunicaiile
nainte de a conecta unitatea. Soft-ul Trajexia Tools a fost proiectat s lucreze on-line cu
unul dintre TJ1-MC. El include:
- Soft-ul pentru TJ1-MC (Motion Perfect)
- Serverul CX
- Drive-ul CX pentru programarea i setarea Servo Driver-ului i Invertorului
3.4.2 Proiecte

3.4.2.1 Proiecte Trajexia

Proiectele reprezint proiectarea i dezvoltarea proceselor i aplicaiilor mai uor. O copie
hard disk a tuturor programelor, parametrilor i datelor este valabil pe PC pentru a
programa sistemul. Utilizatorul definete un proiect, iar soft-ul Trajexia menine
consistena ntre proiectul din PC i sistemul Trajexia. Programele ce sunt editate sunt
automat duplicate n PC.
Un proiect Trajexia const dintr-un project.prj care conine configuraia Trajexia,
parametrii Servo Driver-elor i un set de programe .bas. Acestea sunt stocate ntr-un
folder cu acelai nume cu fiierul .prj.

58


Figura 3.15

3.4.2.2 Verificarea ferestrei proiect

Soft-ul Trajexia ncepe cu o fereastr Check Project atunci cnd se conecteaz la sistemul
Trajexia. O comparaie este fcut ntre fiierele de program din Trajexia i fiierele din
PC.
Dac aceste fiiere sunt diferite, atunci feereastra Check Projects afieaz:
- Save
- Load
- Change
- New
- Resolve
- Cancel
59

Figura 3.16
Save
ncarc proiectul care este n sistemul Trajexia n PC. Un proiect cu acelei nume este
rescris n PC. nainte de a salva n PC trebuie s se asigure c programul din PC are mai
ntai o copie pentru siguran.

Load
Descarc proiectul din PC n sistemul Trajexia. Proiectul din sistemul Trajexia este
rescris. nainte de a ncrca n sistemul Trajexia, trebuie s se asigure c programul din
sistem are o copie pentru siguran.

Change
Permite deschiderea proiectului care se afl n PC i care este diferit de proiectul iniial.
Dac proiectul din sistemul Trajexia i din Pc nu sunt aceleai, se poate utiliza opiunea
Change pentru a selecta un proiect diferit din PC. Soft-ul verific din nou ambele
proiecte. Acest lucru este necesar atunci cnd se lucreaz cu aplicaii multiple cu proiecte
diferite.

New
terge proiectul care se afl n sistemul Trajexia i ncepe un nou proiect pe PC. Soft-ul
Trajexia creeaz un nou director cu numele proiectului care conine noul fiier proiect.
60

Numele acestui director trebuie s fie acelai cu numele proiectului, altfel proiectul nu
poate fi deschis.



Resolve
Compar proiectul aflat n soft-ul Trajexia cu proiectul din PC. Aceast opiune ofer
posibilitatea de a salva, ncrca i examina diferenele individual pentru fiecare program
individual din cadrul unui proiect. Resolve permite modificarea programului off-line
folosind simulatorul i descrcarea aceluiai program n TJ1-MC. Aceast opiune
permite mai multor persoane s lucreze la acelai proiect n acelai timp.

Cancel
Oprete procesul conectat. Soft-ul ncepe operarea n modul deconectat.



3.4.2.3 Fereastra de aplicare Trajexia

Aceast fereastr este format din urmtoarele pri:
1. Control Panel
2. Menu bar
3. Toolbar
4. Workspace
5. Status bar

61


Figura 3.17



Control Panel
Permite o cale rapid i uoar de a ccesa cele mai comun utilizate controluri pentru a
ngriji i nfaptui un proiect.

Menu bar
Menu bar conine:
- Project
- Controller
- Program
- Tools
- External
- Options
- Window
- Help


62

Toolbar






63


3.5 Aplicaie Trajexia
'Start Standard Section
' Axis Parameters
BASE(0) 'SELECTEAZA AXA 0
ATYPE=44 ' DEFINESTE TIPUL DE AXA - IN CAZUL DE FATA: SERVO
P_GAIN=0.3 'CONSTANTE PID
I_GAIN=0.0 'CONSTANTE PID
D_GAIN=0.0 'CONSTANTE PID
OV_GAIN=0.0
VFF_GAIN=0.0
UNITS=16384*4*10/3600 'SCALARE IN ZECIMI DE GRAD
SPEED=50 'VALOARE INITIALA VITEZA
ACCEL=1000.0
DECEL=1000.0
CREEP=100.0
JOGSPEED=100.0
FE_LIMIT=20000.0
DAC=0
SERVO=1 'ACTIVEAZA CONTROLUL SERVO
REP_DIST=36000
FWD_IN=-1
REV_IN=-1
DATUM_IN=-1
FHOLD_IN=-1
FS_LIMIT=20000000.0
RS_LIMIT=-20000000.0
DAC_SCALE=-1


64

BASE(1)
ATYPE=44
P_GAIN=1.0
I_GAIN=0.0
D_GAIN=0.0
OV_GAIN=0.0
VFF_GAIN=0.0
UNITS=16384*4*10/3600
SPEED=1500
ACCEL=1000.0
DECEL=1000.0
CREEP=100.0
JOGSPEED=100.0
FE_LIMIT=2000.0
DAC=0
SERVO=1
REP_DIST=36000
FWD_IN=-1
REV_IN=-1
DATUM_IN=-1
FHOLD_IN=-1
FS_LIMIT=20000000.0
RS_LIMIT=-20000000.0
DAC_SCALE=-1

BASE(2)
ATYPE=44
P_GAIN=3.0
I_GAIN=0.0
D_GAIN=0.0
OV_GAIN=0.0
VFF_GAIN=0.0
UNITS=16384*4*10/3600
SPEED=200
ACCEL=1000.0
DECEL=1000.0
CREEP=100.0
JOGSPEED=100.0
FE_LIMIT=2000.0
DAC=0
SERVO=1
REP_DIST=36000
FWD_IN=-1
REV_IN=-1
DATUM_IN=-1
FHOLD_IN=-1
65

FS_LIMIT=20000000.0
RS_LIMIT=-20000000.0
DAC_SCALE=-1

BASE(3)
ATYPE=44
P_GAIN=1.0
I_GAIN=0.0
D_GAIN=0.0
OV_GAIN=0.0
VFF_GAIN=0.0
UNITS=16384*4*10*2/3600
SPEED=200
ACCEL=1000.0
DECEL=1000.0
CREEP=100.0
JOGSPEED=100.0
FE_LIMIT=2000.0
DAC=0
SERVO=1
REP_DIST=36000
FWD_IN=-1
REV_IN=-1
DATUM_IN=-1
FHOLD_IN=-1
FS_LIMIT=20000000.0
RS_LIMIT=-20000000.0
DAC_SCALE=-1

BASE(4)
ATYPE=44
P_GAIN=1.0
I_GAIN=0.0
D_GAIN=0.0
OV_GAIN=0.0
VFF_GAIN=0.0
UNITS=16384*4*10/3600
SPEED=100
ACCEL=1000.0
DECEL=1000.0
CREEP=100.0
JOGSPEED=100.0
FE_LIMIT=2000.0
DAC=0
SERVO=1
REP_DIST=36000
66

FWD_IN=-1
REV_IN=-1
DATUM_IN=-1
FHOLD_IN=-1
FS_LIMIT=20000000.0
RS_LIMIT=-20000000.0
DAC_SCALE=-1

RAPIDSTOP
WA(2)
RAPIDSTOP
WA(2)
RAPIDSTOP
WA(2)
RAPIDSTOP
WA(2)
WDOG=ON 'RUN SERVODRIVERE
WA(200)
OP(8,ON) 'DECONECTARE FRANE

loop:

WAIT UNTIL VR(1)=0 'conditie de start succesiune miscare
WAIT UNTIL VR(1)=1 'semnalul se activeaza
'doar la trcerea din zeo in unu a lui V
IF VR(0)=1 THEN 'PRIMA SUCCESIUNE DE MISCARI
TRIGGER
BASE(1)
MOVE(300)
BASE(2)
MOVE(-400)
BASE(3)
MOVE(-200)
ENDIF

IF VR(0)=2 THEN 'A DOUA SUCCESIUNE DE MISCARI
BASE(1)
MOVE(-300)
BASE(2)
MOVE(400)
BASE(3)
MOVE(200)
ENDIF

GOTO loop
'Stop Standard Section
67



Cap IV


4 FORMULRI MATRICIALE BAZATE PE METODA LAGRANGE N
SCRIEREA MODELELOR MATEMATICE LA MICRI CONTINUE ALE
LANURILOR CINEMATICE CU ELEMENTE RIGIDE

Fie un lan cinematic format din "n" elemente rigide mobile. Dac notm T
energia cinetic total a lanului cinematic atunci ecuaiile Lagrange (scrise n coordonate
dependente) iau forma unitar, scris matricial, cunoscut:


{ }
| | { } { } Q B
q
T
q
T
dt
d
t
= +
)
`

c
c

)
`

c
c
-
;
(4.1)

unde:
| | B este matricea asociat sistemului de legturi "suplimentare" la care este supus
lanul cinematic, n condiiile unui caz total olonom;
{ } { }
t
m 2 1
;...; ; = este vectorul multiplicatorilor lui Lagrange;
{ } Q este vectorul forelor generalizate aferente att ncrcrilor conservative ct
i celor neconservative.
Dac { } { }
t
n 6 2 1
Q ;...; Q ; Q Q = atunci componenta n 6 , 1 j ; Q
j
= este dat
de:


-

c
e c
+
c
c
=
) k (
j
k 0
k
) i (
j
0
i
i j
q
M
q
r
F Q ;
(4.2)

unde am notat:
68

0
i
r

este vectorul de poziie al punctului de aplicaie al forei exterioare


concentrate (conservativ sau neconservativ)

i
F n raport cu
0
T ;
k 0
e este viteza unghiular a solidului rigid k asupra cruia acioneaz cuplul
concentrat

k
M .
S observm c dac notm
-

=
0
i
0
i
r v viteza fa de
0
T a punctului de aplicaie
al forei

i
F , se poate arta:

j
0
i
i
j
0
i
i
q
v
F
q
r
F
-

c
c
=
c
c
;

Energia cinetic a solidului "k" dintr-un lan cinematic este:

(
(

e e + =


k 0
C
k 0
0
C
0
C k k
k K K
J
2
1
v v m
2
1
T
;
(4.3)

unde
k
m este masa elementului cinematic "k";

0
k
C
v

este viteza centrului de mas al elementului "k";


k
C
J este tensorul de inerie al elementului "k" fa de un reper cu originea n
centrul de mas al elementului "k", notat
k
C .
Reperul propriu
k
T poate avea originea
k
O chiar i diferit de
k
C ; tensorul de
inerie se va calcula ns, pentru uurin, considernd reperul
k
T cu originea n
k
C
(avnd deci
k
O
k
C ) i avnd de preferin axele orientate dup direciile principale de
inerie.
Cu aceste precizri (3.171) se scrie matricial:

69

{ } { } { } | |{ }
k 0
C
t
k 0 0
C
t
0
C
k k
k
k k
J
2
1
v v m
2
1
T e e + = ;
(4.4)

notaiile fiind cele cunoscute.
n reperul
k
T relaia (3.172) devine:

{ } { } { } | |{ }
k
) k (
0
C
t
k
) k (
0 0
) k ( C
t
0
) k ( C
k k
k
k k
J
2
1
v v m
2
1
T e e + = ;
(4.5)

iar n reperul fix
0
T :




{ } { } { } | | | || |{ }
k
) 0 (
0 k 0
C
t
k 0
t
k
) 0 (
0 0
) 0 ( C
t
0
) 0 ( C
k k
S J S
2
1
v v m
2
1
T
k
k k
e e + =
;
(4.6)

unde, evident:

{ } | | { }
0
) k ( C
t
k 0 0
C
k k
v S v =

{ } { } | |
k 0
t
0
) k ( C
t
0
) 0 ( C
S v v
k k
=

{ } | | { }
k
) k (
0
t
k 0 k
) 0 (
0
S e = e

{ } { } | |
k 0
t
k
) k (
0
t
k
) 0 (
0
S e = e

| || | | | | | | |
3 3
k 0
t
k 0
t
k 0 k 0
I S S S S

= =
(4.6)

S observm c dac punem (3.174') n (3.174) se obine (3.173).
70

Conform relaiei (2.167) putem scrie, referitor la punctul
k
C (centrul de mas al
alementului k):

| | | |
| |

)

(
(
(
(
(

)
`

=

-

0
k
T
k
R
t
t
0
) 0 ( C
i
v
v R
q v
K
;
(4.7)

Rezult imediat:

{ } | | | | | |
)
`

(
(
(

=
-
q v ; R v v
t
k
T
t
k
R
0
) 0 ( C
K
;
(4.8)
{ }
| | | |
| |
(
(
(
(
(

)
`

=
-
k
T
k
R
t
t
t
0
) 0 ( C
v
v R
q v
K
;
(4.8)

Cu (4.8) i (4.8) avem:

{ } { }
| | | |
| |
| | | | | |
)
`

(
(
(

(
(
(
(
(

)
`

=
- -
q v ; R v
v
v R
q m v v m
t
k
T
t
k
R
k
T
k
R
t
t
k
0
) 0 ( C
t
0
) 0 ( C
k
k k
;
(
4.9)

De asemenea se mai scrie:

71

| | | | =

= e

-
0 k t
t
R
k 0
) 0 (
i q
| | | |
| |

)

(
(
(
(

-
-
0
3 n 3
k t
t
T
R
i
0
q
q
;
(4.10)

Din (4.10) concluzionm:

{ } | | | | | |
)
`

(
(
(

e = e
-

q 0 ;
n 3 3
t
k k
) 0 (
0
;
(4.11)

{ }
| | | |
| |
(
(
(
(

e
)
`

= e

-
3 n 3
k t t
t
k
) 0 (
0
0
q
;
(4.12)

Cu (4.11) i (4.12) rezult:

{ } | | | || |{ }
| | | |
| |
| | | || |
(
(
(
(

e
)
`

= e e

-
k 0
C
t
k 0
3 n 3
k t t
k
) 0 (
0 k 0
C
t
k 0
t
k
) 0 (
0
S J S
0
q S J S
K K

| | | | | |
)
`

(
(
(

e
-

q 0 ;
n 3 3
t
k
;
(4.13)

Dac notm:
72


| |
k
k
k
k
m
m 0 0
0 m 0
0 0 m
=
(
(
(
(
(
(
(

;
(4.14)

atunci (4.9) se mai scrie nc:

{ } { }
| | | |
| |
| | | | | | | |
)
`

(
(
(

(
(
(
(
(

)
`

=
- -
q v ; R v m
v
v R
q v v m
t
k
T
t
k
R k
k
T
k
R
t
t
0
C
t
0
) 0 ( C
k
k k
;
(4.9)

Utiliznd relaiile (4.9) i (4.13) i (4.6) avem:


| | | |
| |
| | | | | | | |
| | | |
| |

(
(
(
(

e
+
(
(
(

(
(
(
(
(

)
`

-
3 n 3
k t
t
k
T
t
k
R k
k
T
k
R
t
t
k
0
v ; R v m
v
v R
q
2
1
T

| | | || | | | | | | |
)
`

(
(
(

e
-

q 0 ; S J S
n 3 3
t
k k 0
C
t
k 0
K
;
(4.15)

Sau nc:
73


| | | |
| | | |
| |
| |
| | | | | |
| | | |
| | | |
| | | |
| | | |
| |
| |

(
(
(
(

e
(
(
(
(

+
(
(
(
(

(
(

(
(
(
(
(

(
(
(
(

)
`

=
-
0 0 ; 0
0 ;
0 ; 0
0 ; R
v ; v m
v
v
I ; 0
0 ; R
q
2
1
T
k t
k
T
k
R k
k
T
k
R
t t
k

| | | || | | | | |
| | | |
| | | | )
`

(
(
(
(

(
(
(
(
(

(
(

e
-
q
0 ; 0
0 ;
0 ; S J S
k k 0
C
t
k 0
k
;
(4.16)
n cazul olonom, un numr de coordonate generalizate din vectorul
{ } q
este de
obicei suficient pentru a determina micarea, datorit faptului c ntre coordonatele
vectorului
{ } q
se pot scrie ecuaii de constrngere de forma:

| | { } { } 0 b q B = +
)
`

-
;
(4.17)

unde | | | |
n 6 m
B B

= , cu n 6 m < , are componente care depind n general de
componentele lui
{ } q
i de timp iar { } { }
1 m
b b

= este un vector cu componente care
depind tot de componentele lui
{ } q
i de timp.
Apar astfel un numr de m n 6 coordonate, de fapt coordonatele generalizate,
n funcie de care se pot exprima celelalte m coordonate.
Cel mai des ntlnite sunt cazurile n care legturile din sistem sunt scleronome. n
acest caz n ecuaiile de constrngere de tipul:

{ } ( ) m , 1 i ; 0 t , q f
i
= = ,
(4.18)

care conduc la (3.124) timpul nu mai apare explicit:

74

{ } ( ) m , 1 i ; 0 q f
i
= = .
(4.19)

n acest caz energia cinetic a sistemului ia forma unei forme ptratice, n
componentele
)
`

-
q , pozitiv definit i nesingular. Notnd | |
k
M matricea din (3.183)
astfel nct s se pun sub forma:




| |
)
`

)
`

=
- -
q M q
2
1
T
k
t
k
;
(4.16)

atunci, dac legturile sunt scleronome, | |
k
M depinde doar de componentele lui
{ } q
.
Legturile fiind olonome i scleronome, formele difereniale (4.17) se pot integra,
conducnd la forme de tipul (4.19).
Astfel (de obicei din considerente geometrice) dac vom considera primele
m n 6 coordonate ca fiind independente (coordonate generalizate) se pot face
urmtoarele explicitri:

( )
( )

=
=

+ +
m n 6 1 n 6 n 6
m n 6 1 1 m n 6 1 m n 6
q ;...; q q q
.. .......... ..........
q ;...; q q q

(4.20)

Derivnd n (4.20) n raport cu timpul se obine:

75

c
c
+ +
c
c
=
c
c
+ +
c
c
=

- -

+
-
+
+
-
m n 6
m n 6
n 6
1
1
n 6
n 6
m n 6
m n 6
1 m n 6
1
1
1 m n 6
1 m n 6
q
q
q
... q
q
q
q
.. .......... ..........
q
q
q
... q
q
q
q
;
(4.21)

Astfel,
)
`

-
q se poate scrie, utiliznd un formalism matricial ceva mai extins, ntr-
o form concentrat:





( ) ( )
( )
)
`

(
(
(
(
(
(
(
(
(
(
(
(
(
(

(
(
(
(
(
(
(

c
c
c
c
c
c
c
c
(
(
(
(

=
)
`

+ +

-
g
m n 6 m
m n 6
n 6
1
n 6
m n 6
1 m n 6
1
1 m n 6
m n 6 m n 6
q
q
q
.; ;.........
q
q
... .......... .......... ..........
q
q
; ... ;
q
q
1 0 ... 0 0
... ... ... ... ...
0 ... 1 0 0
0 ... 0 1 0
0 ... 0 0 1
q
;
(4.22)

unde
76

t
m n 6 2 1 g
q ;...; q ; q q

- -
-
este vectorul vitezelor generalizate independente
i, evident:
{ } { }
t
m n 6 2 1 g
q ;...; q ; q q

= este vectorul coordonatelor generalizate
independente.
Relaia (3.189) se mai scrie:

| |
)
`

=
)
`

- -
g k
q N q ;
(4.23)

semnificaia matricii
| |
k
N
fiind evident.
Cu acestea (3.183') se mai scrie:


| | | || |
)
`

)
`

=
- -
g
k k
t
k
t
g
k
q N M N q
2
1
T
;
(4.24)

Trebuie fcut observaia c atunci cnd se lucreaz n coordonate independente,
matricea | |
k
M se va exprima n coordonate independente cu ajutorul relaiilor (3.187);
concret matricile | | R ; | |
k
R
v ;
| |
k
T
v ; | | ; | |
k
e i | |
k 0
S se vor exprima n
coordonate independente.


Dac se opteaz pentru lucrul n coordonate dependente atunci energia cinetic a
ntregului sistem este dat de:

| |
)
`

)
`

= =
-
=
-
=

q M q
2
1
T
k
n
1 k
t
n
1 k
k
T
;
(4.25)

sau:

77

| |
)
`

(
(

)
`

=
-
=
-

q M q
2
1
T
n
1 k
k
t
;
(4.26)

sau:


| |
)
`

)
`

=
- -
q M q
2
1
T
t

(4.27)

matricea | | M putnd fi numit matricea de mas a sistemului. Se poate arta |11|:


| |
)
`

)
`

c
c
-
-
q M
q
T
;
(4.28)

i cu aceasta:


| |
)
`

+
)
`

)
`

c
c
- - - -
-
q M q M
q
T
dt
d
;
(4.29)

De asemenea avem:

78

{ }
| |
| |

)
`


)
`

)
`


)
`

=
c
c
- -
- -
q M q
. .......... ..........
q M q
2
1
q
T
n 6
1
q ,
t
q ,
t
;
(4.30)

unde am notat:

| | | | n 6 , 1 j ; M
q
M
j
q ,
j
=
c
c
= ;
(4.31)

Astfel (4.1) se poate pune sub forma:

| |
2
1
q M q M
)
`

+
)
`

- - - -
| |
| |
| | { } { } Q B
q M q
. .......... ..........
q M q
t
q ,
t
q ,
t
n 6
1
= +

)
`


)
`

)
`


)
`

- -
- -
;
(4.32)

n acest caz n care energia cinetic este form ptratic pozitiv definit i
nesingular exist procedee |11| pentru determinarea direct, fr parcurgerea formal a
algoritmului de analiz cinematic de tip matricial, a matricii de mas.
Dac se opteaz pentru lucrul n coordonate generalizate independente atunci,
exprimnd matricile | |
k
M n componentele vectorului { }
g
q se obine:

| |

)

=
- -
g
g
k
t
g k
q M q
2
1
T
;
(4.33)

unde, evident
79



| | | | | | | |
k k
t
k
g
k
N M N M =
;
(4.34)

Atunci energia cinetic a ntregului lan cinematic va fi:


| |

)

(
(

=
-
=
-
g
n
1 k
g
k
t
g
q M q
2
1
T
;
(4.35)

Sau:

| |{ }
g
g
t
g
q M q
2
1
T

=
-
;
(4.36)

Ecuaiile Lagrange capt forma:

| |
2
1
q M q M
g
g
g
g

(
(

- - - -
| |
| |
{ }
g
g
q ,
g
t
g
g
q ,
g
t
g
Q
q M q
. .......... ..........
q M q
m n 6
1
=

- -
- -

;
(4.37)
notaia { }
g
Q desemnnd faptul c, evident, vectorul forelor generalizate are acum
m n 6 componente, aferente celor m n 6 coordonate independente.
Evident, matricea | | B dispare, avnd dimensiunea "0". n cazul lucrului n
coordonate dependente, Buculei M. i Rinderu P. n |11| fac urmtoarele consideraii -
80

care vor fi citate identic, cu notaii adaptate, pentru unitatea expunerii - asupra vectorului
{ } Q .
n general, se poate scrie:

{ } { } { }
HN a
Q Q Q + = ;
(4.38)

unde:
{ }
a
Q este vectorul for generalizat asociat forelor i cuplurilor active
exterioare
{ }
HN
Q este vectorul for generalizat asociat legturilor de tip Hooke i
Newton
Fie astfel:

{ } { }

0 t
i
0
3 i 2 i 1 i i
i F i F ; F ; F F
;
(4.39)

o for exterioar aplicat ntr-un punct M al solidului "i" din lanul cinematic i fie


{ } { }

0 t
k
0
3 k 2 k 1 k k
i M i M ; M ; M M
;
(4.40)

un cuplu exterior aplicat asupra solidului "k".
Fora generalizat asociat coordonatei generalizate
j
q este:


-

c
e c
+
c
c
=
) k (
j
k 0
k
) i (
j
0
M
i ja
q
M
q
v
F Q
,
(4.41)

vectorul { }
a
Q fiind, deci:

81

{ } { }
t
na 6 a 2 a 1
a
Q : ... ; Q ; Q Q = .
(4.42)

Dac inem seamae cuatiile anterioare atunci, considernd (4.41) i (4.42), se
poate scrie:


{ }
| | | |
| |
{ } | | | |{ }
k
) k (
k t
i
) i (
i
T
i
R
t
a
M F
v
v R
Q

e + +
(
(
(
(
(

=
;
(4.43)

unde | |
i
R
v i | |
i
T
v se refer la punctul M al elementului "i".
n legtur cu vectorul { }
HN
Q , se fac urmtoarele consideraii:
Fie dou elemente "vecine" "i" i "k" legate ntre ele printr-un element liniar
elastic de tip translaie cu amortizare, cu constanta elastic "k" i constanta de amortizare
C.
Punctul de legtur pe elementul "i" este
i
A iar pe "k" este
k
A . Notm:

u versorul direciei

k i
A A

= o
k i ik
A A .
n acest caz fora

i
F datorat acestui tip de legtur care acioneaz asupra
elementului "i" va fi egal cu cea care acioneaz asupra elementului "k" luat cu semn
schimbat

k
F :



=
k i
F F ;


= u F F
i i
.
(4.44)

Avem, evident:

82

( )
|
|
.
|

\
|
o o o o =
-
-
0
ik
ik
0
ik
ik i
C k F
;
(4.45)
unde
0
ik
o
este elongaia iniial relativ, iar
0
ik
-
o este viteza iniial relativ pe direcia

k i
A A .
n acelai mod, dac dou elemente "vecine" "i" i "k" sunt legate ntre ele printr-
un element liniar elastic de tip rotaie, cu constanta elastic
1
k i avnd i el amortizarea
newtonian cu constanta
1
C , atunci cuplul datorat legturii care acioneaz asupra lui "i"
este egal i de sens contrar celui care acioneaz asupra lui "k":



=
k i
M M ;
(4.46)

Fie

1
u direcia lui

i
M . Avem:



=
1 i i
u M M ;


( )
(
(

u u u u =
-
-
0
ik
ik
1
0
ik
ik 1 i
C k M
,
(4.47)
unde
0
ik
u
este "elongaia de rotaie" iniial, iar
0
ik
-
u este viteza de rotaie relativ pe
direcia lui

1
u .
Avem, cu notaiile obinuite:


{ }

o t
i i
i F F
;

83


{ }

o t
i i
i M M
.
(4.48)

Observnd (3.212) i (3.210) i alegnd coordonata generalizat care
caracterizeaz translaia elementelor "i" i "k": chiar lungimea
ik
o pe direcia

u avem
pentru legtura elastic de tip translaie:


{ }
| | | |
| |
| | | |
| |
{ }
i
k
T
k
R
t
i
T
i
R
t
HN
F
v
v R
v
v R
Q
(
(
(
(
(

(
(
(
(
(

(
(
(
(
(

=
;
(4.49)

unde | |
i
R
v i | |
i
T
v se refer la
i
A , iar | |
k
R
v i
| |
k
T
v se refer la
k
A .
Consideraii analoage conduc la concluzia pentru legtura elastic de tip rotaie:


{ } | | | | | | | | { }
i
k t i t
HN
M Q
(
(

e + e + =
;
(4.50)















84


4.1 Cazul Particular

Masele elementelor:
cunoscute m m m m m
5 , 4 3 2 1
, , ,
Lungimile axiale:
5 51 4
4 4
3
3 3
2
2 2
1 1
c
C
C
C
L C C
L D C
L BD
L B C
L AB
L A C
L A C
=
=
=
=
=
=
=

Sensul pozitiv al unei coordinate este cel care da sensul pozitiv al axei in jurul careia are
loc rotatia.
0
1 0
5
1 5 5
0
3 0
4
3 4 4
0
3 0
3
3 3 3
0
3 0
2
3 2 2
0
1 0
1
1 1 1
;
;
;
;
;
x O x C q
x O x C q
x O x C q
x O x C q
x O x C q
=
=
=
=
=








Cazul din Film
1
q 0(inghetat)
2
q 0
3
q activ
4
q activ
5
q 0
Se considera calculate si deci cunoscute,doar pentru cazul studiat,momentele de inertie
axiale J
3
c si J
4
c fata de axele perpendiculare pe planul
0
3
0
2 0
x x O in
3
c si
4
c , mijlocul
barelor BD si DE,deoarece aceste bare au montate rigid pe ele alte mase. Se cunoaste
deasemenea unghiul pe care segmentul
4
c
5
c il face cu directia negative a axei
0
1 0
x O
(unghi ascutit):
85

a) Vectorii de pozitie ai centrelor de masa din Fig.2
+ + + + =
0
3
3
0
2
3
0
1
3
) sin ( ) cos (
3 2 1 3
i
c
i
c
i
c
q L L L q L O r
(4.1.1)
+ + + + + + =
0
3
3
0
2
4 3
0
1
4
) sin sin ( ) cos cos (
4 4 3 2 1 4 3
i
c c
i
c c
i
c
q L q L L L q L q L O r
(4.1.2)
+ + + + + + =
0
3
3
0
2
4 3
0
1
5 5
) sin sin ( ) cos cos ( ) cos (
4 4 3 2 1 4 3
i
c c
i
c c
i
c c
q L q L L L q L q L L r o

(4.1.3)
Vectorii de pozitie sunt calculati fata de reperul fix,
0
R si in versorii lui
0
R .
b) Vitezele centrelor de masa din Fig.2:
+ + = =
0
3
3
0
2
3
0
1 3 3
) cos ( ) sin (
3 3 3 3
i
C
i
C
i r V
q L q q L q O
C C

(4.1.4)
+ + + = =
0
3
43 3
0
2
43 3
0
1 4 4
) cos cos ( ) sin sin (
4
'
4 3
'
3 4
'
4 3
'
3
'
i
C C
i
C C
i r V
q L q q L q q L q q L q O
C C

(4.1.5)
+ + + = =
0
3
43 3
0
2
43 3
0
1 4 5
) cos cos ( ) sin sin (
4
'
4 3
'
3 4
'
4 3
'
3
'
i
C C
i
C C
i r V
q L q q L q q L q q L q O
C C

(4.1.6)
Vitezele centrelor de masa
5 4 3
, , C C C sunt calculate,fata de reperul fix
0
R .
2 2 '
3 3
2 2 2 '
3 3
2 2 2 '
3
2
3 3 3
3
cos sin
C C C
V
L q q L q q L q
C
= + =
(4.1.7)

) cos( 2
cos 2 cos cos sin 2 sin sin
4 3
4
'
3
' 2 2 '
4
2
3
2 '
3
4 3
4
'
3
'
4
2 2 2 '
4 3
2 2 2 '
3 4 3 4 3 4
2 2 2 '
4 3
2 2 2 '
3
2
4 3 4
4 3 4 3 4 3 4 3
4
q q L L q q L q L q
q q L L q q q L q q L q q q L L q q q L q q L q
C C C
C C C C C C C C
V
C
+ + =
+ + + + + =


(4.1.8)
) cos( 2
4 3
4
'
3
' 2 2 '
4
2
3
2 '
3
2
4 3 4
5
q q L L q q L q L q
C C C
V
C
+ + =
(4.1.9)
Sa observam ca ,pentru cazul din film,vitezele unghiulare ale elementelor 3 si 4 sunt
vectori perpendiculari pe planul
0
3
0
2 0
x x O .Elementul 5 este solidar cu 4,putand
deci,considera ca asupra elementului 4,pe langa greutatea
4
G
,actioneaza si greutatea

5
G
plasata in
5
C ,masa segmentului virtual
5 4
C C fiind 0.
Cum aratam anterior ,vitezele unghiulare vor fi :
=
0
1
3
3 0
i
e
e

(4.1.10)
=
0
1
4
4 0
i
e
e

86

(4.1.11)
La orice moment de timp planul
3
3
3
2 3
x x C si planul
4
3
4
2 4
x x C raman paralele cu
0
3
0
2 0
x x O .
Prin urmare exista relatiile:
=
0
1
3
1
i i

(4.1.12)
=
0
1
4
1
i i

(4.1.13)
Cu relatiile (12) si (13) ,relatiile (10) si (11) devin:
= =
3
1
0
1
3 3
3 0
i i
e e
e

(4.1.10)
= =
4
1
0
1
4 4
4 0
i i
e e
e

(4.1.11)

Evident in aceste conditii avem:
'
3 3
q = e

(4.1.14)
'
4 4
q = e

(4.1.15)
Rezulta: = =
3
1
0
1
'
3
'
3
3 0
i i
q q
e

(4.1.10)
= =
4
1
0
1
'
4
'
4
4 0
i i
q q
e


(4.1.11)
e) Momentele de inertie
3
C
J si
4
C
J mentionate in enunt sunt calculate in reperul
3
R ,
respective
4
R .Se presupune ca
3
R si
4
R definesc simetrii geometrice si masice pentru
elementele corespondente.La fel se pune problema si pentru
5
C
J in
5
R ,dar , in aceasta
discutie,
5
C
J nu conteaza.Se iveste insa o problema: elementele 4 si 5 formeaza acum o
piesa rigida,cu masa si moment de inertie unice.

Vom nota C
6
centrul de masa al acestei entitati i

momentul de inertie axial


corespunzator.Masa entitati va fi:
m
6
=m
4
+m
5
; (14)
Vectorul de pozitie,fata de R
0
si in versorii lui R
0
,al lui C
6
va fi:

;
(4.1.15)
Se considera ca segmentul C
4
C
5
defineste o directie || cu planul O
0

.
Cu (4.1.2) si
(4.1.3), relatia (4.1.15) devine:
87

=(

+(L
3
cosq
3
+

cosq
4
)

+(L
1
+L
2
+L
3
sinq
3
+

sinq
4
)

;
(4.1.16)
Rezulta,elementar:

=O

+(-q
3
L
3
sinq
3
-

sinq
4
)

+(

+q
4

cosq
4
)

;
(4.1.17)
Si:

+2

L
3

cos(q
4
-q
3
) ; (4.1.18)
f)In conditiile expuse mai sus exista doua entitati in miscare:
- elementul
- entitatea

Momentul de inertie

in raport cu axa C
6

poate fi exprimat in functie de

si


sau,mai bine, calculat direct,pe baza datelor concrete.Oricum,

se considera cunoscut.
Energia cinetica a elementului este:

T
3
=

m
3



)
2
=(4.1.7) si (4.1.10)=

m
3

;

(4.1.19)
Energia cinetica a entitatii este:
T
6
=

m
6



)
2
;
(4.1.20)
Din motive evidente avem:
T
6
=

m
6
[

+2

L
3

cos(q
4
-q
3
)]+

;
(4.1.21)
Energia cinetica totala a sistemului este:
T=T
3
+T
6
;
(4.1.23)
Cu (4.1.19) si (4.1.22), relatia (4.1.23) devine:
T=

m
3

m
6

m
6

+m
6

L
3
L
4
cos(q
4
-q
3
)+

) ;
(4.1.24)
g)Este necesar calculul fortelor generalizate Q
3
si Q
4
aferente coordonatelor generalizate
independente q
3
si q
4
.
Exista relatiile:
Q
3
=

;
(4.1.25)
Q
4
=

;
(4.1.26)
Avem:

=-m
3
g

; M
3
=M
3

; (M
3
>0)

=-m
6
g

; M
4
=-M
4

; (M
4
>0) (4.1.27)
Din (4.1.1) rezulta:
6
3
3
6
88

=O

+(-

sinq
3
)

+(

cosq
3
)

;
(4.1.28)

= O

+ O

;
(4.1.29)
Din (4.1.16) rezulta:

= O

+(-L
3
sinq
3
)

+(L
3
cosq
3
)

;
(4.1.30)

= O

+(-L
4
sinq
4
)

+(

cosq
4
)

;
(4.1.31)
Din (4.1.10) avem:

;
(4.1.32)

=O ;
(4.1.33)
Din (4.1.11) avem:

=O ;
(4.1.34)

;
(4.1.35)
Cu (4.1.27),( 4.1.28),( 4.1.30),( 4.1.32) si (4.1.33),relatia (4.1.25) devine:
Q
3
=-m
3
g

cosq
3
-m
6
gL
3
cosq
3
+M
3
;
(4.1.35)
Cu (4.1.27),( 4.1.29),( 4.1.31),( 4.1.33),( 4.1.34) si (4.1.35),relatia (4.1.26) devine:
Q
4
=m
6
g

cosq
4
-M
4
;
(4.1.36)
h) Se scriu ecuatiile Lagrange aferente celor doua coordinate generalizate independente:
3
3
'
3
) ( Q
q
t
q
t
dt
d
=
c
c

c
c

(4.1.37)
4
4
'
4
) ( Q
q
t
q
t
dt
d
=
c
c

c
c

(4.1.38)
Din (4.1.24) rezulta:
'
3 3 4 3
'
4 6
2 '
3 3
3
3 4 3
) cos( q J q q L L q m L q m
q
t
C C C
+ + =
c
c

(4.1.39)
Din (4.1.39) rezulta:
89

) sin(
) cos( ) sin( ) ( ) (
3 4 3
' '
4 6
3 4 3
' '
4 6 3 4 3
'
4
'
3 6
2
3 6
2
3
' '
3
'
3
4
4 4 3 3
q q L L q m
q q L L q m q q L L q q m J L m L m q
q
t
dt
d
C
C C C C

+ + + + =
c
c


(4.1.40)
Din (4.1.24) rezulta:
'
4 3 4 3
'
3 6
2 '
4 6
'
4
6 4 4
) cos( q J q q L L q m L q m
q
t
C C C
+ + =
c
c

(4.1.41)
Din (4.1.41) rezulta:
) sin( ) sin( ) cos( ) ( ) (
3 4 3
2 '
3 6 3 4 3
'
4
'
3 6 3 4 3
' '
3 6
2
6
' '
4
'
4
4 4 4 6
4
q q L L q m q q L L q q m q q L L q m J L m q
q
t
dt
d
C C C C
C
+ + + =
c
c


(4.1.42)
Din (4.1.24) rezulta:
) sin(
3 4 3
'
4
'
3 6
3
4
q q L L q q m
q
t
C
=
c
c

(4.1.43)
) sin(
3 4 3
'
4
'
3 6
4
4
q q L L q q m
q
t
C
=
c
c

(4.1.44)
i) Modelul matematic al miscarii sistemului este format din doua ecuatii diferentiale
de ordinul 2 ,cu necunoscutele
3
q si
4
q .Sistemul este nelinear.Sistemul rezulta punand
(4.1.40) ,( 4.1.43)si (4.1.35) in (4.1.37),precum si punand (4.1.42) in (4.1.44) si (4.1.36)
in (4.1.38) :
3 3 3 6 3 3 3 4 3
2 '
4 6
3 4 3
'
4
'
3 6 3 4 3 6
' '
4
2
3 6
2
3
' '
3
cos cos ) sin(
) sin( 2 ) cos( ) (
3 4
4 4 3 3
M q gL m q gL m q q L L q m
q q L L q q m q q L L m q J L m L m q
C C
C C C C
+ =
+ + + +


(4.1.45)
4 3 3 4 3
2 '
3 6
3 4 3
'
4
'
3 6 3 4 3 6
' '
3
2
6
' '
4
4 4
4 4 6 4
) sin(
) sin( 2 ) cos( ) (
M gL m q q L L q m
q q L L q q m q q L L m q J L m q
C C
C C C C
=
+ + +

(4.1.46)





90






Cap. V



. Concluzii i perpective


Analiza micrii umane este un prim factor determinant n atingerea scopului
dorit, dar este totodat i o micare destul de complex fapt pentru care am privit-o ca
fiind realizat din micri simple de translaie i rotaie. Cu ct se simplific mai mult
micarea cu att rezultatele obinute sunt mai grosiere. Trebuie menionat faptul ca un
model matematic concret al corpului uman nu s-a obinut nc.

Prin intermediul sistemului Anybody se poate realiza analiza cimematic
complex a micrii. Rezultatele obinute sunt apropiate de micarea uman, n concluzie
putem folosi aceste date fie n format .txt, fie n format grafic pentru a controla servo-
motoarele Trajexia n vederea obinerii micrii umane. Rezultatele folosite se refer la
poziiile relative ale articulaiilor studiate (coaps, genunchi, maleola), la vitezele
obinute cu ajutorul coordonatelor standard furnizate de Anybody i la acceleraiile
acestora.
Trajexia ofera un control de pna la 16 axe, utiliznd o magistral de micare
MECHATROLINK-II Exist o gam larg de servo-driver-e de cea mai bun clas, att
rotative, liniare ct i directe, din care orice utilizator poate alege asemeni productorilor.
Sistemul poate fi scalat pna la 16 axe i 8 invertoare i module de intrare-ieire, deci este
ideal pentru a fii programat pentru simularea micrii realizat n articulaiile membrului
superior. Controlul se poate realiza n poziie, vitez i cuplu, datele de poziie i vitez
obinandu-se destul de repede cu ajutorul soft-ului AnyBody Technology.
.

Cu ajutorul funciilor predefinite ale Trajexiei, dar i prin implementarea unor
funcii noi, n curnd vom simula micarea n articulaii. Spre exemplu ntre articulaia
91

cores-punztoare coapsei i cea corespunztoare genunchiului se poate folosi funcia de
micare legat, articulaia coapsei fiind folosit ca ax master, cea a genunchiului fiind
legat de ea realiznd o deplasare cu un anumit unghi care corespunde rotaiei axei
master.








Bibliografie


http://ro.wikipedia.org/wiki/Tehnologia_informaiei
http://en.wikipedia.org/wiki/Mechatronics
www.didactic.ro/files/13/roboti.ppt
www.termo.utcluj.ro/confstud07/lucrari/bothazan.doc
http://en.wikipedia.org/wiki/Humanoid_robot
Tutorial Anybody :AnyScript Reference
Tutorial Anybody :Installation Guide

S-ar putea să vă placă și