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
|
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) |