annuncio

Comprimi
Ancora nessun annuncio.

Segnali dai gyro....

Comprimi
X
  • Filtro
  • Ora
  • Visualizza
Elimina tutto
nuovi messaggi

  • Segnali dai gyro....

    Risalve a tutti , il mio progetto quadricottero con pic 876 mi sa' che sia nato e morto col video postato qua :
    http://www.baronerosso.it/forum/mode...6f876-help.htm

    questo perche' non riesco ad ottere dal forum e dal web delle info che possano essermi utili per riprendere la guerra con questo meraviglioso mezzo. Scusate se il tono e' un attimino polemico ma era un progetto che mi stava (e mi sta tuttora) a cuore...

    tempo fa ho realizzato un balancing robot , in cui grazie a ' David P. Anderson ' che ha pubblicato sul suo sito una stupenda descrizione sia Hw che Sw della sua cratura Nbot .
    Qua' il link :
    nBot, a two wheel balancing robot

    seguendo il sito sono riuscito a realizzare un robot che si comporta egregiamente ma che al confronto dell Nbot e' veramente ridicolo , la soddisfazione e' stata grandissima e il merito sta in una semplicissima spiegazione dei valori da impostare nel PID in una sottopagina del sito....
    l'autore non si e' tenuto per se il ' sapere ' e anche senza rivelare i trucchi che rendono l'Nbot un robot capace di affrontare gare sui robot autocostruiti alla NASA ha reso partecipe tutto il web ...
    date un occhio qua :
    http://www.geology.smu.edu/~dpa-www/robo/nbot/bal2.txt

    Vi sarete gia' rotti a leggere.... comunque il mio problema e' che non trovo da nessuna parte come trattare i valori del gyro per elaborarli nella schedetta del mio quadri , non voglio comprare una sheda gia' fatta e pensata da altri , vorrei riuscire a realizzarla da solo.....

    Grazie comunque achi mi ha dato una mano col quadricoso e a chi me la dara' in futuro.... scusate lo sfogo....

    Da qualche parte ho letto : I PAZZI VANNO SEMPRE ASSECONDATI ; io mi esercito tutti i giorni con mia moglie !

  • #2
    ciao
    partire da zero è una bel impegno.
    prova a dare un'occhiata a un vecchio progetto fatto con un pic simile
    FrontPage - Wolferl - The Open Source Quadrocopter
    si era poi evoluto in UAVX con un 18f2620
    più di così non so come aiutarti.
    Sbagliare è umano, perseverare è diabolico!!

    Commenta


    • #3
      @nlenzini.

      poichè nel tuo intervento noto una certa vena polemica comune a quella di alcuni altri nuovi frequentatori del post mi permetto di rispondere senza polemica ma con una certa 'rudezza'.

      Continuo a leggere interventi di amatori che credono, perchè forse sanno scrivere 4 righe di codice, di essere in grado con pochissimo impegno personale di far volare un multicopter con elettronica self-made.

      Nel mondo esistono centinaia di ottimi programmatori, fisici, matematici, ingegneri elettronici e meccanici coinvolti in progetti simili che da anni investono tempo e denaro per realizzare qualcosa di valido e sono ancora distanti dalla meta, a voi niubbi 'faccio tutto io' non vi pare di essere un filino troppo presuntuosi ?

      Una buona regola per iniziare un proprio progetto è innanzitutto documentarsi su quanto fino ad ora sviluppato da altri, cercando di capire le filosofie di approccio, i componenti utilizzati, i lati positivi e negativi di ogni soluzione.

      Per fare ciò è indispensabile passare molto tempo a leggere data-sheet di integrati, studi sulla fisica del volo, studi sui controlli lineari e magari ripassarsi anche qualche regoletta di matematica e trigonometria.

      La risposta al tuo quesito la puoi trovare con un'attenta lettura dei data-sheet del gyro e dei repository contenenti miglia di righe di codice Open-source del buon Redfox o di altri progetti simili.

      Se non sei in grado di leggere un listato di programma sviluppato da altri forse è meglio che rimandi il tuo progetto, o ripartire utilizzando qualcosa di funzionante e poi applicargli piccole modifiche.

      Non credo che qui od altrove troverai la 'pappa fatta'.

      Peace & Love
      Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein)

      Commenta


      • #4
        ??? mi pare che per ogni questione postata ci sia stata una risposta...
        comunque:
        Su tutti i progetti che ho trovato i valori di lettura (di solo giroscopio) li trattano cosi:
        codice:
        //variabile globale
        const float FILTRO=0.9 //deve essere 0<=X<=1
        
        
        //nel loop
        float valoreAsseGiro=(valoreLetto*FILTRO)+( valoreVecchio*(1-filtro) );
        valoreVecchio=valoreLetto;
        //volendo si può moltiplicare il dt, in teoria la lettura viene più "matematica", ma nel caso di una lettura errata aumenta di molto l'errore
        valoreAsseGiro*=tempoImpiegatoDalCiclo;
        filtro passa alto(o passa basso? uff non ricordo mai) ma secondo me è molto inefficente se non accoppiato ad altri filtri (che possono derivare da altri sensori come no)

        poi vengono mandati al pid

        il PID devi implementartelo da solo, ma se ti serve una base di codice da cui partire, eccotela:
        versione basica: Arduino playground - BarebonesPIDForEspresso
        versione avanzata: Arduino playground - PIDLibrary

        Per i valori del pid.... NON esistono dei valori universali! dipendono dalla spinta dei tuoi motori, da come li hai disposti (distanza dal centro, eventuali inclinazioni), quante vibrazioni provocano, delle eliche che usi, dai tuoi sensori, da quanto subiscono le vibrazioni, potrei andare avanti per delle ore...
        Insomma, il PID implicitamente è una semplificazione di tutta la parte fisico-meccanica-statistica... Se poi vuoi avere pure i 3 valori già settati... chiedi a ciskje che valori default usa nel bironpilot

        Se non sei in grado di leggere un listato di programma sviluppato da altri forse è meglio che rimandi il tuo progetto, o ripartire utilizzando qualcosa di funzionante e poi applicargli piccole modifiche.
        questo è poco ma sicuro, ma non credo sia questo il caso


        io prima di iniziare mi son basato su aeroquad e KKboard, il primo principalmente per la scelta della motorizzazione, il secondo per la scelta dei sensori e il codice (se funziona bene solo con i giro, chissà aggiungendo in futuro altri sensori... peccato che sia scritto in ASM e usi solo 8mhz quando l'atmega arriva a 16mhz senza problemi, basta un cristallo esterno)

        Commenta

        Sto operando...
        X