home | area personale         schemi | tutorial | robotica | pic micro | recensioni         forum | chat irc         faq | contatti         store | Ordina PCB
username
password
cerca

 
FORUM: Robotica, CNC, 3D
Finalmente un posto dove poter discutere di robotica di CNC e stampanti 3D, scambiarsi idee, progetti ed opinioni. Partecipa anche tu...


aiuto per robot bilanciato a 2 ruote
     
Autore Messaggio opzioni
double_wrap




una ogni 100 livelli
una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli


postato il:
30.12.2015, alle ore 13:08
pippodue:
Un accelerometro tipo MEM ha come elemento sensibile interno una piccola massa di cui percepisce lo squilibrio, non potremmo usare direttamente la sua uscita come misura dello squilibrio da azzerare, senza bisogno di passare tramite l'inclinazione?

La discussione è interessante perchè vorrei anche io imparare qualcosa.

Un accelerometro misura solo una accelerazione (proiettata sui tre assi del chip) essendo sensibile ad una forza esterna (inerziale e/o gravitazionale) che agisce sulla massa mobile interna al chip.

L'unica informazione che esso può fornire è di quanto gli assi sono ruotati rispetto alla verticale e di quanto la velocità è variata in modulo e/o direzione. I calcoli complicati servono a separare i due effetti.

Per quel che ne so per stabilizzare un pendolo invertito serve necessariamente conoscerne l'inclinazione per poi rimetterlo in verticale. Non mi vengono in mente altri metodi a meno di integrare nel tempo per ricostruire la traiettoria tridimensionale delle due estremità del braccio ma senza un 'riferimento assoluto' periodico il tutto diventa del tutto ingestibile.





"se peso cado, ma se cado non peso"
adamatj.altervista.org
pippodue




una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli


postato il:
30.12.2015, alle ore 13:52
C'è ancora un altro approccio che è quello di tenere sotto contollo la posizione dell'estremo superiore del pendolo, da questo punto di vista converrebbe piazzare l'accelerometro in alto e non sull'asse delle ruote come solitamente consigliato. Mi rendo conto che il mio discorso non è del tutto chiaro e probabilmente è sbagliato, se riesco a fare qualche prova ne riparlerò e naturalmente seguo gli altri interventi.


anche i grandi uomini, come gli uomini comuni, possono talvolta cadere in errore (Voltaire)
dacolug



[pagine pubblicate]

postato il:
30.12.2015, alle ore 14:08
il problema è che l' accelerometro misura l' accelerazione di gravità.
per qualsiasi inclinazione alle tre uscite misureremo la componente verticale della forza applicata ai tre assi, e questo anche senza movimento.
per una inclinazione repentina che oltre alla direzione laterale ha anche una caduta verso il basso si misurerà una accelerazione opposta alla direzione di moto, la massa interna del sensore preme sulle facce del contenitore opposte alla direzione del moto, quindi comportamento opposto in quiete e in movimento.
Sempre di vettori si tratta.
non so se sono riuscito a spiegarmi, avevo trovato delle spiegazioni fatte bene, ma non ricordo dove, appena le trovo le posto.



L'Ottomana è quella cosa
di cotone oppur di lana
che si chiama l'ottomana
perché ha sempre quattro piedi
*SYSTEM*



[pagine pubblicate]

postato il:
30.12.2015, alle ore 14:50
https://www.google.it/search?q=inverted+pendulum&oq=inverted…

Speriamo che il link vada...
dacolug



[pagine pubblicate]

postato il:
30.12.2015, alle ore 15:06
flussoincrociato:
https://www.google.it/search?q=inverted+pendulum&oq=inverted…

Speriamo che il link vada...


si infatti, vedo spesso usare i due sensori in congiunzione.
comunque mi sono accorto di avere scritto una cavolata, non è che l' accelerometro nei movimenti legga una accelerazione negativa, ma la forza inerziale da questa provocata, che ha segno opposto

http://www.instructables.com/id/Accelerometer-Gyro-Tutorial/



L'Ottomana è quella cosa
di cotone oppur di lana
che si chiama l'ottomana
perché ha sempre quattro piedi
schottky





postato il:
31.12.2015, alle ore 17:29
In generale è poco indicato usare gli 'instructables' come sorgenti di informazione 'scientifica' der resto ci sono mari di libri.....


Il vantaggio di essere intelligente e' che si puo' sempre fare l'imbecille, mentre il contrario e' del tutto impossibile. -- W. Allen
pippodue




una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli


postato il:
06.01.2016, alle ore 09:26
pippodue:
piazzare l'accelerometro in alto e non sull'asse delle ruote

Tanto per non lasciare il discorso in sospeso, riferisco che ho fatto la prova e non va bene, si ottiene una grande vibrazione di tutto il castelletto senza nessun accenno di voler mantenere l'equilibrio.
Ma non è detta l'ultima parola, ormai che ho fatto il robottino forse proverò a farlo funzionare nel modo tradizionale (ma qual'è?).




anche i grandi uomini, come gli uomini comuni, possono talvolta cadere in errore (Voltaire)
Valerio81





postato il:
09.01.2016, alle ore 22:02
Salve a tutti e grazie ancora per le vostre copiose risposte e approfondimenti sull'argomento.... Chiedo scusa se non sono intervenuto ultimamente, in quanto ho aperto io la discussione, non perchè non mi interessasse più ma perchè non avevo tempo (lavoro).

Non ho specificato all'inizio cosa ho usato per costruire questo robot self balance:
PIC: 18F2520, su una schedina che ho costruito ad hoc, con quarzo a 20 Mhz.
MEM: accelerometro e giroscopio MPU6050, con valori accelerometro e giroscopio a 16 bit.
2 motori con rapporti per avere più coppia con tensione di lavoro circa 6V.
Schedina con doppio ponte H.
Ruote gommate.

l'MPU6050 comunica con il PIC con protocollo I2C.

Vorrei postare un paio di foto per farvi vedere e capire come sia fatto.






Come potete vedere in basso ha una scheda con un doppio ponte H, uno per motore, alimentato a parte da 4 batterie, mentre nella parte superiore c'è tutto il cervello, il PIC nella piccola scheda, l'MPU 6050, un display che sto usando per vedere il valore tirato fuori dall'MPU, ma che poi eliminerò, e il tutto alimentato da altre 4 batterie stilo ed alloggiato su una scheda bread board per i vari collegamenti.

Ora che vedete come sia fatto vorrei chiedervi se secondo voi è influente il fatto che sia basso rispetto alla sua larghezza, in quanto ho notato che, la caduta, da verticale a orizzontale è veramente breve.

E visto che sto facendo delle prove su questo robot, vi dico che l'MPU misura molto rumore, infatti i numeri sul display, almeno le unità, decine, e a volte anche le centinaia, non si riescono a capire, in quanto cambiano molto velocemente.
Al riguardo sto provando a fargli fare delle medie continuative per stabilizzare più o meno il valore da tirare fuori, ma ho fatto alcune ricerche su internet e c'è una funzione matematica chiamata Filtro di Kalman che appunto serve a eliminare il rumore dato dalla lettura dell'MPU e fornire una lettura adeguata, il problema è che non ho capito molto anzi per niente di come funzioni e quindi come implementarlo nel sorgente che andrò a compilare per il PIC.

Grazie ancora delle vostre risposte.



Le cose semplici funzionano sempre.
Noè fece l\'arca ma gli ingenieri fecero il titanic
schottky





postato il:
10.01.2016, alle ore 10:50
Forse rileggendo il mio primo intervento scoprirai i motivi del non funzionamento, tu ci racconti 'Quali copmonenti' ci hai messo ma nulla s 'Quale algoritmo'. Certo l'altezza limitata rende più problematica la cosa, ma dovresti studiare un poco per capirne il perchè. Il fatto che l'uscita del MPU vari rapidamnente è normale, proprio perchè l'oggetto si muove, in realtà varia molto più rapidamente di quanto il sistema 'misuratore-display-occhio' possa percepire. Il filtro di Kalman è lo strumento principe per la fusione di dati eterogenei, però ovviamente per costruirlo occorre sapere quali dati occorre fondere e con notevole accuratezza il modello amtematico di come i medesimi vengono dgenerati.
Nei sistemi di navigazione con MPU il Filtro di Kalman viene usato per correggere i dati di navigazione inerziale ottenuiti dall'integrazione dell'uscita del MPU con dei dati assoluti, vengono spesso usati dati generati da sistemi GPS oppure da una bussola elettronica, ma questo è un altro discorso.



Il vantaggio di essere intelligente e' che si puo' sempre fare l'imbecille, mentre il contrario e' del tutto impossibile. -- W. Allen
pippodue




una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli una ogni 10 livelli


postato il:
11.01.2016, alle ore 19:34
Sì. il peso va in alto specialmente per le prime prove. La IMU, almeno come accelerometro, non andrebbe messa vicino all'asse delle ruote?


anche i grandi uomini, come gli uomini comuni, possono talvolta cadere in errore (Voltaire)
segui questo thread con grixFC, per questa funzione devi aver installato il software grixFC

torna su
     

Come utente anonimo puoi leggere il contenuto di questo forum ma per aprire una discussione
o per partecipare ad una discussione esistente devi essere registrato ed accedere al sito




 







 
 
indietro | homepage | torna su copyright © 2004/2024 GRIX.IT - La community dell'elettronica Amatoriale