polito.it
Politecnico di Torino (logo)

Pendolo inverso con controllo Fuzzy, implementato su scheda Arduino = Inverse pendulum with Fuzzy control, implemented on Arduino board

Marco Ghia

Pendolo inverso con controllo Fuzzy, implementato su scheda Arduino = Inverse pendulum with Fuzzy control, implemented on Arduino board.

Rel. Terenziano Raparelli, Luigi Mazza, Federico Colombo. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Meccanica, 2020

[img]
Preview
PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (14MB) | Preview
Abstract:

Lo scopo principale di questa tesi è il controllo del pendolo inverso azionato mediante un attuatore pneumatico, ovvero un sistema altamente instabile. Per il controllo del sistema si è scelto di usare una scheda Arduino, ovvero un controllore a basso costo, implementando logica fuzzy. In luce dell’emergenza sanitaria, che ha portato alla chiusura dei dai laboratori didattici del Politecnico Torino, per lo sviluppo di un controllo si è sfruttato un modello Simulink del banco prova fornito da un precedente tesista [1], in cui si sono provati a sviluppare tre controllori fuzzy differenti. Per il controllo del pendolo si è scelta l’implementazione della logica fuzzy (la cui traduzione letterale è “sfuocata”), che non è adatta a problemi di elevata precisione, mentre funziona bene in presenza di margini d’incertezza. Va evidenziato che in molte applicazioni, come nel pendolo inverso, non è necessaria un elevata precisione, viene infatti sfruttato in controlli di automobili, elettrodomestici, messa a fuoco fotocamere, ovvero in quelle applicazioni dove non è presente una logica binaria, ma si sfrutta una logica più graduale “sfuocata” per l’attuazione [2]. Completata la taratura dei controllori fuzzy in Simulink, quindi simulando anche il controllore della scheda Arduino, si è proceduto con lo sviluppo dei programmi dei soli controllori in Arduino IDE per una possibile futura implementazione sulla scheda del banco prova. Per valutare l’effettivo funzionamento dei programmi sviluppati per la scheda Arduino si è proceduto utilizzando Proteus, un software di simulazione di circuiti elettronici, che mediante la implementazione di librerie esterne Arduino consente la simulazione dei programmi scritti in Arduino IDE, il cui funzionamento non era prima verificabile in assenza della scheda. Si è scelto successivamente di acquistare la scheda Arduino Meda 2560, la medesima del banco, per verificare il corretto funzionamento del simulatore su Proteus. La motivazione principale dell’acquisto è stata la possibilità di programmare la scheda Arduino sfruttando le estensioni di Matlab: MATLAB Support Package for Arduino Hardware e Simulink Support Package for Arduino Hardware, che consentono di sfruttare i vantaggi di un linguaggio di alto livello, e di un post processing più semplice e veloce rispetto all’utilizzo di Arduino IDE. In conclusione, si è usato Simscape-Multibody per simulare le equazioni di equilibrio del pendolo inverso, per ridurre il grado di approssimazione del modello utilizzato.

Relators: Terenziano Raparelli, Luigi Mazza, Federico Colombo
Academic year: 2019/20
Publication type: Electronic
Number of Pages: 160
Subjects:
Corso di laurea: Corso di laurea magistrale in Ingegneria Meccanica
Classe di laurea: New organization > Master science > LM-33 - MECHANICAL ENGINEERING
Aziende collaboratrici: UNSPECIFIED
URI: http://webthesis.biblio.polito.it/id/eprint/15436
Modify record (reserved for operators) Modify record (reserved for operators)