CHIEDI UN PREVENTIVO
Tel: 0039.0575.383429 - Email: info[at]sintraconsulting.it
Sintra Consulting srl
Home Studi e ricerche
DANIELE FONTANI
Università degli studi di Siena, Facoltà di Ingegneria
Anno Accademico 2006-2007 
Candidato: Daniele Fontani
Relatore: Prof. Andrea Garulli
Correlatore: Ing. Marco Mina
Tesi di Laurea in Ingegneria dell'Automazione

Implementazione del sistema di controllo per un manipolatore cartesiano a due assi


Introduzione


Il presente progetto di tesi ha riguardato lo sviluppo di un sistema di controllo per un manipolatore a due assi lineari. In particolare, ci si è posti l'obiettivo di controllare moduli lineari Adept mediante il controllore “Guidance Controller” della Precise Automation, e di realizzare un'interfaccia utente per l'esecuzione di test di verifica sulle traiettorie del manipolatore.
Il progetto è stato svolto in collaborazione di ARS s.r.l, azienda di Arezzo che si occupa della progettazione di impianti industriali robotizzati.
Il controllore scelto ha il pregio di essere semplice e di basso costo; tuttavia il suo limite principale è quello di essere progettato per robot della stessa casa produttrice, molto precisi ma costosi e lenti. In molte applicazioni industriali la velocità di esecuzione dei movimenti, e quindi il tempo ciclo, è un requisito più importante della precisione e quindi l'uso dei moduli
lineari "Precise Automation" è poco conveniente.

La soluzione ovvia consisterebbe nell'uso di moduli lineari meno precisi, ma più veloci e magari anche più economici. Purtroppo l'integrazione con robot ed assi lineari di altre case produttrici non è immediata, poiché ognuna adotta connettori e tecnologie costruttive diverse.
La soluzione adottata nel presente lavoro è stata quella di interfacciare i moduli lineari che soddisfino i requisiti dell'applicazione, nella fattispecie dei moduli lineari Adept, con il controllore della "Precise Automation". Il primo problema che insorge è che le uscite e gli ingressi dei due apparati non sono compatibili perché hanno connettori di tipologia diversa.
Inoltre non esistono in commercio cavi che riescano a mettere in comunicazione i due mondi.
Tale incompatibilità riguarda sia i cavi che connettono le uscite del controller ai motori, sia i cavi che connettono gli encoder posti sui moduli lineari agli ingressi del controller. Per aggirare questo ostacolo sono stati modificati dei cavi che vengono comunemente utilizzati per la connessioni tra dispositivi Adept, in modo da renderli compatibili ad entrambe le tipologie di
connettori.
A questo punto è stato necessario impostare il controllore in modo da renderlo compatibile con i due moduli sia in termini di tensione\corrente per i motori, sia per i parametri degli encoder ( numero di poli, ticks per giro, etc..).
I due moduli lineari sono stati accoppiati mediante una piastra metallica per realizzare un robot cartesiano. Successivamente è stato necessario configurare adeguatamente il controllore per supportare la cinematica del manipolatore a due assi. Poiché il controllore prevede la gestione di quattro motori e implementa solo cinematiche a quattro giunti, sono stati disabilitati i due assi non utilizzati affinché il controller supportasse la cinematica del robot. Gli altri parametri necessari al controller per la completa gestione della cinematica, quali i valori dei fine corsa, i parametri dei controllori PID dei singoli assi e gli stop software, sono stati calcolati e inseriti.
Come ultimo passo della configurazione è stato necessario determinare la modalità con cui il robot si posiziona nella configurazione iniziale. Visto che il manipolatore realizzato non è dotato di sensori che ne determinino la posizione di home, è stata utilizzata la seguente sequenza di homing: gli assi si muovono in una direzione fino ad arrivare a battuta, quindi il
controllore riconosce che il motore è fermo e lo fa muovere in senso opposto fino al riconoscimento di un impulso di “zero-index” da parte dell'encoder.

Per verificare la capacità del robot di posizionarsi correttamente e di eseguire traiettorie è stata realizzata una apposita applicazione. L'ambiente di sviluppo utilizzato è quello fornito dalla "Precise Automation": GDS (Guidance Developement Suite). GDS utilizza il linguaggio GPL (Guidance Programming Language) che rispetta la sintassi VB.net e che implementa tutte le
classi per la gestione del robot, per la sua movimentazione e per la gestione della cinematica.
Per verificare le prestazioni del robot è stata collegata una penna ad inchiostro liquido al secondo modulo lineare. Quidi è stata realizzata un'applicazione per PC che permette di disegnare le traiettorie necessarie per i test e di farle eseguire al robot. Il software è in grado di importare file autocad e riprodurre i contorni delle immagini attraverso polilinee, e descrivere il disegno su carta indicando al robot dove muoversi e come. L'elenco delle figure da disegnare viene trasmesso tramite FTP al robot. Questo interpreta l'elenco di istruzioni che gli sono arrivate e riproduce il disegno attraverso la penna collegata all'end effector.

Conclusioni


Lo sviluppo di un'applicazione robotica in campo industriale è un'attività complessa che
richiede competenze multidisciplinari. Anche la semplice applicazione realizzata in questo
lavoro di tesi coinvolge in maniera trasversale la meccanica
, l'elettronica e l'informatica.
L'utilizzo di componenti meccanici e di strumenti di automazione commerciali consente
attualmente di raggiungere risultati generalmente molto soddisfacenti. Ogni elemento utilizzato
nell'applicazione è frutto di studi complessi effettuati da team di ricerca che hanno alle spalle
anni di esperienza.

Lo sviluppo di una applicazione specifica si basa principalmente sull'integrazione di tutte le componenti hardware e software necessarie. In questo contesto il compito del progettista consiste principalmente nello scegliere i vari moduli e nell'individuare le soluzioni più efficaci per la loro interconnessione e per il coordinamento di tutte le funzioni
richieste.

Tra le possibili evoluzioni dell'applicazione realizzata in questo lavoro, vi è in primo luogo
l'aggiunta di un terzo asse lineare. Con il terzo giunto il manipolatore riuscirebbe infatti a
muoversi nelle tre dimensioni, anche se con un solo orientamento. Questa funzione
permetterebbe di gestire un workspace tridimensionale, e quindi anche sollevare l'endeffector
dal piano
: in questo modo sarebbe possibile disegnare più forme geometriche senza collegarle
tra loro con un tratto lineare (come avviene attualmente) . A questo scopo, sarebbe sufficiente
modificare altri due cavi, identici ai precedenti, e integrare il software aggiungendo una nuova
dimensione ai punti. In secondo luogo, si potrebbe sfruttare l'ultima linea per i motori,
disponibile sul controller, per aggiungere un nuovo giunto.

Un'altro sviluppo possibile , potrebbe riguardare il collegamento del robot alla rete in modo tale
da permettere a un PC dotato del software realizzato e connesso ad internet di controllare il
robot a distanza. Proseguendo in questa direzione si potrebbe montare un sistema di visione sul
piano in modo da avere un feedback su quanto sta facendo il robot. La comunicazione delle
immagini può essere fatta tramite una webcam collegata ad un pc connesso in rete che funzioni
come server oppure utilizzando il modulo di visione e la telecamera previsti dalla Precise
Automation.

Nella prima ipotesi potrebbe essere interessante realizzare all'interno del server
un'applicazione web con le stesse funzioni di quella realizzata per PC. In questo modo sarebbe
possibile connettersi tramite web da qualsiasi parte del mondo, regolamentando facilmente gli
accessi al robot, e visualizzare quello che sta facendo il manipolatore attraverso la telecamera.
La seconda alternativa, è più semplice da realizzare in quanto le telecamere ethernet utilizzate
dalla Precise Automation sono compatibili con il protocollo Tcp\Ip e le immagini catturate
potrebbero essere facilemente scambiate con i dispositivi connessi in rete. Questa seconda
soluzione risulta molto più costosa, ma espanderebbe le capacità di interazione del manipolatore
con il mondo esterno.

Nella prima ipotesi il sistema di visione fornisce un'informazione su cosa
sta facendo il robot utile solo all'utente
, mentre nel secondo caso anche il controllore può usare
le immagini catturate dalla camera per prendere decisioni. Nel secondo caso il robot potrebbe
eseguire operazioni complesse come effettuare misure, identificare e selezionare oggetti diversi,
ed eseguire controlli di qualità e verifiche.

Tecnologie sviluppate
I Partner della ricerca
Tesi per argomento
2000-2014 © Sintra Consulting srl P.Iva: 01671150512 Ultimo aggiornamento: 29/10/2014 C.C.I.A.A. R.E.A. AR-130275 ; C.F. e Registro Imprese 01671150512
P.IVA: 01671150512 - Capitale sociale Euro 10.000 i.v