Table of Contents

Radu-Adrian OANCEA (25620) - Platformă auto-stabilizatoare

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul constă într-o platformă a cărei normale este reglată automat pe direcția indicată de un accelerometru în centrul ei (accelerația "proper"). Această reglare ar trebui să prevină răsturnarea unui obiect pus pe platformă, atât timp cât nu i se imprimă o accelerație foarte mare și o orientare extremă. Ar trebui să păstreze, spre exemplu, un obiect pe platformă aflat într-o mașină în timpul mersului.

Am ales acest proiect pentru a experimenta o aplicație cu reglare automată.

Descriere generală

Considerăm platforma în sistemul de referință neinterțial cu planul Oxy pe platformă și direcția Oz spre normala ei. Dacă platforma urmărește această orientare, avănd o reglare perfectă, și în absența frecării cu aerul, un obiect plasat pe centrul ei nu ar resimți forțe laterale, astfel prevenind răsturnarea lui.

Hardware Design

Am folosit placa de bază oferită pentru proiecte "PM 2016":

Descriere: link
Schemă: link (Eagle Schematic)
Cablaj: link (Eagle Board) Componente folosite:

Pentru comunicarea cu calculatorul am folosit:

Placă cu accelerometru ADXL345:

Fără brand, se găsește pe google
Și are schema: link

Două servomotoare HS-311, dimensiune standard

Ansamblul cu platforma și servomotoarele este conectat prin două cabluri de 1.5m.
Ansamblul este alcătuit astfel:
Un servomotor este “mânerul”, care rotește celălalt servomotor (oferă gradul de libertate pitch), care la rândul său rotește un marker (oferă gradul de libertate roll), care susține platforma.
Platforma este o plăcuță de test, iar pe ea (deasupra markerului) este pus accelerometrul.

Software Design

Dezvoltare realizată pe linux, avr-gcc 6.1.1, arv-libc 2.0.0.

Makefile-ul include regulile:

Fișiere:

Pentru testare, vezi fișierele din testing/.
De asemenea, am implementat SPI (inutil - schema accelerometrului nu permite folosirea SPI) în not_working\spi.h.

Control automat

Pentru controlul automat am folosit un sistem PID. Intrarea regulatorului (eroarea) este diferența de înclinație a normalei platformei față de direcția verticală. Ieșirea regulatorului este ajustarea care se realizează semnalului de control către servomotoare.

Probleme întâmpinate

Au existat mai multe probleme întâmpinate pe parcurs:

Rezultate Obţinute

Am reușit să îmbin elementele și să realizez platforma auto-stabilzatoare.
Totuși, performanța nu e cea pe car o dorisem inițial (reglarea cu modificări puternice brusce durează mai mult - 1-2 secunde).

Printre neajunsuri se numără:

video

Concluzii

Este un proiect practic interesant, care poate fi îmbunătățit ulterior din multe puncte de vedere; aș fi vrut să fac ceva mai robust și mai performant, dar necesita mai mult timp - lucrul cu hardware-ul necesită multă planificare - schemă tehnică, materiale, componente etc., greșelile de proiectare fiind mai costisitoare. Sper că o să îl mai îmbunătățesc pe viitor.

Sfaturi pentru alte proiecte

Download

Sursă

Resurse