annuncio

Comprimi
Ancora nessun annuncio.

Quadricottero fai da te : fallimento... :(

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

  • Quadricottero fai da te : fallimento... :(

    ciao,

    scrivo sul forum per cercare aiuto sul mio caso.
    Circa un anno fa ho iniziato a documentarmi sul mondo affascinante dei multicotteri.
    Dopo aver letto molti forum italiani e non, ho deciso di acquistare del materiale sfuso per iniziare l'avventura.

    Come software mi sono orientato sul multiwii peche' volevo utilizzare le componenti della console Wii che avevo in sovrappiu'..

    Nel tempo libero ho iniziato l'assemblaggio..e durante i primi test solo con l'elettronica e la gui del multiwii sembrava che il tutto rispondesse correttamente.

    Ho preso un ArduinoMega come cervello ( così magari lo uso anche per altro..) , degli ESC da 30A presi su Hobbyking, motori da 1100Kv, un frame in fibra di carbonio preso su ebay..con dei bracci da 35mm .
    Tutto insieme..e' bellino..ed e' stato divertente montarlo, scoprire degli errori elettrici...programmarlo...ecc.ecc..

    Ora pero', e' venuto il momento di vederlo in azione : un disastro...

    Se attivo l'accelerometro per avere un volo piu' stabile, l'elicottero...quasi si ribalta..
    eppure, ho seguito un sacco di guide e immagini per l'orientamento corretto.

    Senza accelerometro, quando do gas, si alza un po' barcollante e poi si sposta per fatti suoi...e non riesco a controllarlo..e quindi spengo la radio...per vederlo precipitare..

    Non riesco a capire se il problema e' meccanico oppure elettronico..

    Quali test mi suggerite di effettuare per capire se l'elettronica si comporta come il software vuole ?
    Oppure se e' meccanico da cosa lo posso capire ?

    Premetto che ho tentato anche un PID tuning...seguendo le vari eguide che ho trovato...ma non sono riuscito ad ottenere granche'..


    Approfitto , per chi ha letto tutto il testo, per chiedere se esiste un posto di ritrovo per appassionati del settore multicopter in piemonte, nella zona tra vercelli e torino.

    Grazia a tutti per l'attenzione.

    -=[ Ninjam ]=-

  • #2
    Io sono a Vercelli, non sono un genio ma un po' d'esperienza ce l'ho e sono a tua diaposizione se vuoi! Hai provato a settarli facendolo tenere fisso sopra la testa ad un volontario? Anche solo per prenderci confidenza e vedere come reagisce alle sollecitazioni.

    Commenta


    • #3
      Ciao,
      certo tutto l'aiuto che trovo e' ben accetto.

      Al momento mi sono costruito un banco di prova..diciamo.

      Una X di legno che tiente l'elicottero sollevato fisso per due braccia in modo che possa oscillare liberamente . L'ho visto su un video su youtube.

      Un tizio appendeva un peso ad un braccio e il PID daceva il resto...e tornava in assetto da solo..

      Io ho provato, ma appena lo tocco...va in oscillazione..e sbatte.

      E come se i motori del lato destro funzionino ad una velocita' maggiore del sinistro..

      anche quando cerco di farlo alzare in volo..si alza sempre dalla parte destra.

      Insomma, parte gia' obliquo...per poi ribaltarsi..

      Questo senza accellerometro.. Se attivo l'accelerometro...peggio ancora..


      Ho provato ad alzare il P...protato ad abbassare... ma non trovo un equilibrio..

      Diciamo che non ho ancora capito bene tutte quelle triplette di PID che prevede la GUI cosa fanno...

      un PID per il PITCH, uno per il ROLL, uno per lo YAW...e così via..

      Se bisogna trovare la combinazione giusta su una ventina di valori...non ce la faro' mai con la poca esperienza che ho maturato fino ad ora..

      Comunque, mi rimane il dubbio che ci sia ancora qualche problema elettronico...

      Hai dei suggerimenti su delle prove da fare e quali risultati si devono ottenere per capire se e' una questione solo di PID tuning o c'e' altro ?

      Ciao e grazie.

      -=[ Ninjam ]=-

      Commenta


      • #4
        fatta la calibrazione dei regolatori ?

        Calibrare i regolatori
        Il modo per farlo è il seguente (per motivi di sicurezza, rimuovere l'elica del motore che si sta calibrando).
        SENZA batteria collegata, collegare il spina a tre punte del ESC che si desidera calibrare nel canale 3 del ricevitore RC.
        Accendere il trasmettitore e spingere la posizione della valvola a farfalla a pieno GAS (full throttle).
        Alimentare l'ESC
        Si sentirà una serie di beep. Ora abbassare l'acceleratore completamente in basso. Si sentirà una serie di segnali acustici differenti. È ora possibile scollegare la LiPo. Il tuo ESC è calibrato.
        Ripetere l'operazione per gli altri tre ESC.
        Spegnere e riaccendere la RC, collegare gli esc al canale e dare alimentazione ora accellerando i motori riceveranno tutti la stessa potenza.
        -"Non vi è velivolo più pilotato di un velivolo senza pilota"-
        -"Impara dagli errori altrui, non vivrai abbastanza a lungo per farli tutti tu"-

        Commenta


        • #5
          Ciao,

          si l'ho rifatta un paio di volte, prima con l'uscita del ricevitore dei vari canali , poi , visto che gli ESC sono controllati dall' ATMEGA, ho provato con uno schetch che genera le stesse forme d'onda del software, impostando il MAXTHROTTLE a 1850 e poi impostando il MINTHROTTLE a 1050 ( i due estremi che il software utilizza. )

          Prima li ho calibrati singolarmente, poi ho anche letto che e' meglio calibrarli tutti insieme, per evitare sfasamenti di microsec....

          Ma il comportamento e' sempre uguale... non e' stabile..

          Tra l'altro , la cosa che mi fa pensare a qualche problema elettronico e' questo :

          senza eliche, guardando la GUI, dopo che armo i motori e inzio ad aumentare il throttle, mi aspetterei che i valori dei quattro motori salgano proporzionalemente con il throttle..

          Invece , non e' così, il Front Left non arriva mai al massimo, rimane circa di un valore di 100 in meno..

          O meglio, al valore di maxthrottle ci arriva solo il motore RearLeft . Il Rear Right si attesta sul 1800, mentre i due Front, prima arrivano a 1850..e poi calano a 1750..

          Questo senza fare nulla....io mi aspetterei, che rimanessero stabili a 1850, tutti...

          Ma non e' così... Non vorrei che delle vibrazioni , mandassero in tilt il giroscopio...
          eppure il grafico che ottengo...e' quasi una linea dritta....

          Non so se sto dicendo delle cose sensate...o no..

          Grazie comunque a tutti per l'interessamento.

          Ciao.

          Commenta


          • #6
            Originariamente inviato da ninjam Visualizza il messaggio
            Ciao,

            si l'ho rifatta un paio di volte, prima con l'uscita del ricevitore dei vari canali , poi , visto che gli ESC sono controllati dall' ATMEGA, ho provato con uno schetch che genera le stesse forme d'onda del software, impostando il MAXTHROTTLE a 1850 e poi impostando il MINTHROTTLE a 1050 ( i due estremi che il software utilizza. )

            Prima li ho calibrati singolarmente, poi ho anche letto che e' meglio calibrarli tutti insieme, per evitare sfasamenti di microsec....

            Ma il comportamento e' sempre uguale... non e' stabile..

            Tra l'altro , la cosa che mi fa pensare a qualche problema elettronico e' questo :

            senza eliche, guardando la GUI, dopo che armo i motori e inzio ad aumentare il throttle, mi aspetterei che i valori dei quattro motori salgano proporzionalemente con il throttle..

            Invece , non e' così, il Front Left non arriva mai al massimo, rimane circa di un valore di 100 in meno..

            O meglio, al valore di maxthrottle ci arriva solo il motore RearLeft . Il Rear Right si attesta sul 1800, mentre i due Front, prima arrivano a 1850..e poi calano a 1750..

            Questo senza fare nulla....io mi aspetterei, che rimanessero stabili a 1850, tutti...

            Ma non e' così... Non vorrei che delle vibrazioni , mandassero in tilt il giroscopio...
            eppure il grafico che ottengo...e' quasi una linea dritta....

            Non so se sto dicendo delle cose sensate...o no..

            Grazie comunque a tutti per l'interessamento.

            Ciao.
            Scusa ti conviene andare per gradi se no fai il risotto
            Inizia a provare solo con i giroscopi . se tutto e' a quad fermo i motori devono salirti tutti assieme. Controlla anche che i canali della radio siano in situazione di riposo al centro esatto .
            Ora su multiwii non so come sia nella versione che usi se devi settare dei define a 1500 e il MINGAS e usare i trim per mettere tutto a riposo.
            Inizia a portarti in quella condizione .
            Poi se dai gas devono venire su tutti assieme. Poi se sei in configurazione a X con solo Gyro con il quad in mano senza eliche ... dando una botta verso destra al quad vedrai che i due motori a destra della tua configurazione reagiranno e ti daranno piu' giri , questo vale in tutte le 4 direzioni. Lo fanno per un attimo , quando sentono la velocita' angolare ovvio che se tu continui a ruotare dovresti continuare a vederli reagire.
            Fatto questo test lo puoi fare con lo stick della radio . I motori da neutro reagiranno in modo opposto ai gyro cioe' quando dai stick roll a destra per esempio i giri dei motori a destra diminuiranno mentre quelli a sinistra aumenteranno . Fai le prove con un mingas basso cosi i motori tenderanno quasi a fermarsi quando dai stick nella direzione che ti interessa provare.
            Fammi sapere che succede dopo queste prove. Io non sono un esperto di multiwii ma di arducopter pero' alla fine i principi sono i medesimi , cambiano le dichiarazione di variabile e un po' di algoritmi ma la fisica del volo e' quella e i test pre volo sono esattamente gli stessi
            Redfox74
            Virtual Robotix ( Arducopter DEVTEAM )
            http://www.virtualrobotix.com
            Canale di supporto FB
            https://www.facebook.com/groups/1606596929592397/

            Commenta


            • #7
              come sarebbe che "spengi la radio per vederlo precipitare?"

              Commenta


              • #8
                Originariamente inviato da ninjam Visualizza il messaggio
                Ciao,

                si l'ho rifatta un paio di volte, prima con l'uscita del ricevitore dei vari canali , poi , visto che gli ESC sono controllati dall' ATMEGA, ho provato con uno schetch che genera le stesse forme d'onda del software, impostando il MAXTHROTTLE a 1850 e poi impostando il MINTHROTTLE a 1050 ( i due estremi che il software utilizza. )
                Non so se ti possa aiutare ma nella ultima multiwii c'e' un sistema ufficiale di autocalibrazione degli esc, se necessiti

                senza eliche, guardando la GUI, dopo che armo i motori e inzio ad aumentare il throttle, mi aspetterei che i valori dei quattro motori salgano proporzionalemente con il throttle..
                Invece , non e' così, il Front Left non arriva mai al massimo, rimane circa di un valore di 100 in meno..
                Su questo mi sento di rassicurarti. Il mio fa cosi' da sempre, ma vola.

                Mi domando, ma se muovi il cottero nella gui lo vedi identico a come lo stai muovendo?

                Forza!
                Fede
                multiwii e quadrirotore: http://www.multirotors.org
                software e invenzioni: http://www.sideralis.org

                Commenta


                • #9
                  Originariamente inviato da ninjam Visualizza il messaggio
                  Ciao,

                  si l'ho rifatta un paio di volte, prima con l'uscita del ricevitore dei vari canali , poi , visto che gli ESC sono controllati dall' ATMEGA, ho provato con uno schetch che genera le stesse forme d'onda del software, impostando il MAXTHROTTLE a 1850 e poi impostando il MINTHROTTLE a 1050 ( i due estremi che il software utilizza. )

                  Prima li ho calibrati singolarmente, poi ho anche letto che e' meglio calibrarli tutti insieme, per evitare sfasamenti di microsec....

                  Ma il comportamento e' sempre uguale... non e' stabile..

                  Tra l'altro , la cosa che mi fa pensare a qualche problema elettronico e' questo :

                  senza eliche, guardando la GUI, dopo che armo i motori e inzio ad aumentare il throttle, mi aspetterei che i valori dei quattro motori salgano proporzionalemente con il throttle..

                  Invece , non e' così, il Front Left non arriva mai al massimo, rimane circa di un valore di 100 in meno..

                  O meglio, al valore di maxthrottle ci arriva solo il motore RearLeft . Il Rear Right si attesta sul 1800, mentre i due Front, prima arrivano a 1850..e poi calano a 1750..

                  Questo senza fare nulla....io mi aspetterei, che rimanessero stabili a 1850, tutti...

                  Ma non e' così... Non vorrei che delle vibrazioni , mandassero in tilt il giroscopio...
                  eppure il grafico che ottengo...e' quasi una linea dritta....

                  Non so se sto dicendo delle cose sensate...o no..

                  Grazie comunque a tutti per l'interessamento.

                  Ciao.
                  Come prima cosa ti suggerisco di settare i PID di default, che in genere anche se da ottimizzare dovrebbero funzionare.

                  l'acc va calibrato, devi avere Roll e Pitch = 0 e z = a 256 (o 512) nel configuratore con il quad livellato.

                  se presente va calibrato anche il Mag

                  Almeno in un primo momento non aggiungere in configurazioni filtrature (LPF, MM etc) che potrebbero falsare le letture che farai in seguito

                  Il fatto che i livelli dei motori non si allineano può dipendere da diversi fattori tutti normali:

                  • il valore di I è diverso da zero in ROLL,PITCH,YAW, LEVEL
                  • è avenuta una rotazione che richiede la compensazione dello yaw
                  • con acc attivo il quad non livellato
                  • etc



                  questi valori in genere tornano normali al decollo se non c'è qualcosa di errato.

                  Per prima cosa a motori spenti e con quad alimentato via USB (senza LIPO connessa)verifica che tutto sia normale cioè:

                  I sensori leggano valori coerenti ai movimenti
                  i segnali radio siano congruenti per intensità e canale

                  sempre senza batteria, prova a fare le normali funzioni del comando e simula un volo quindi in modo solo Gyro:

                  • Arma i motori
                  • Alza il Throttle
                  • prova Roll,Pitch e Yaw
                  • Disarma i motori


                  vedi se sul configuratore tutto risponde come atteso.
                  Come detto prima se hai i valori di I diversi da zero tieni conto che il valore dei motori potrà apparire con livelli diversi, eventualmente per provare metti i valori di I a zero in un primo momento.

                  Una volta verificato che tutto sia a posto

                  Se le ESC sono calibrate, devi verificare che i motori girino nel verso giusto, per fare questo togli le eliche, collega la batteria e prova ad armare,

                  prova ad aumentare il throttle ed a simulare delle manovre per vedere che tutto sia coerente ai comandi dati.

                  A questo punto puoi provare a montare le eliche facendo attenzione al corretto verso di rotazione e provare il quad sullo stand che ti sei costruito oppure a fare la procedura di regolazione dei PID che trovi nel Tread specifico di questo forum, comunque i PID di default in genere dovrebbero già funzionare decentemente e devi solo verificare che la risposta alle sollecitazioni sia quella attesa, fai molta attenzione nel maneggiare il mezzo con le eliche in moto, è veramente molto pericoloso, fatti aiutare da qualcuno sempre con le dovute precauzioni

                  Sempre con il quad sullo stand abituati a gestire i comandi con la giusta intensità per evitare in fase di volo reale risposte brusche o impreviste.

                  A questo punto se tutto Ti sembra a posto puoi provare a fare un semplice decollo, se non sei molto esperto nel pilotare prova a trovare un "multirotorista" della tua zona che ti dia una mano o ad usare un simulatore.

                  I primi test falli in modo solo Gyro, in un posto dove ti senti sicuro e con spazio sufficiente a garantire la sicurezza Tua, degli altri, del mezzo e che ti diano il tempo di valutare la risposta , non è necessario andare alti basta 1 metro, abituati a subito a gestire l'altezza e non spegnere mai il comando quando i motori sono accesi, potresti perdere il controllo del mezzo con conseguenze pericolose, usa il Throttle con la dovuta delicatezza ma anche con decisione.

                  Tieni presente che pilotare un multirotore non è proprio banalissimo ed il modo Level da solo non semplifica la cosa più di tanto. Poi un quad appena sviluppato è ancora più imprevedibile. Pensa che io costruisco quad ormai da un paio di anni e li piloto portandoli ad una certa altezza solo da alcune settimane , dopo che ho sviluppato nel SW una modalità di volo super easy (molto semplificata) con decollo ed atterraggio assistiti, altitude (throttle) compensation, etc.

                  Comunque la cosa migliore è che Ti faccia aiutare da qualcuno esperto della tua zona, sul forum sicuramente troverai qualcuno .... ormai i multirotoristi sono più numerosi dei cinesi

                  Per aspera ad Astra

                  Scusa se sono stato sintetico e non ho approfondito le singole procedure

                  Spero di esserti stato utile ....

                  Ciao

                  Josè
                  Ultima modifica di ziojos; 27 maggio 12, 06:11.

                  Commenta


                  • #10
                    ciao,
                    grazie a tutti dei suggerimenti.
                    Bene o male sono informazioni che avevo e che ho gia' testato.
                    comunque, cancello i valori della EEPROM e riparto da zero.

                    Non l'ho scritto prima, ma uso la versione 2.0 di Multiwii, ricompilato con l'IDE Arduino 1.0

                    Mi incuriosisce la funzionalita' di autocalibrazione degli ESC. Non ho trovato info la riguardo.
                    Potete darmi ulteriori dettagli ?

                    Intanto riprovo quanto mi avete suggerito.

                    Vi faro' sapere.

                    Grazie ancora

                    -=[ Ninjam ]=-

                    Commenta


                    • #11
                      Forse si trova solo nella versione DEV, ed e' questa parte di codice nel config.h

                      codice:
                      /********************************************************************/
                        /**** ESCs calibration ****/
                        /********************************************************************/
                      
                          /* to calibrate all ESCs connected to MWii at the same time (useful to avoid unplugging/re-plugging each ESC) */
                          /* Warning: this creates a special version of MultiWii Code */
                          /* You cannot fly with this special version. It is only to be used for calibrating ESCs */
                          /* Read How To at ESCsCalibration - multiwii - feature: ESCs calibration via MultiWii. - MultiWii is a software to control a RC multi copter - Google Project Hosting */
                          #define ESC_CALIB_LOW MINCOMMAND
                          #define ESC_CALIB_HIGH 2000
                          //#define ESC_CALIB_CANNOT_FLY // uncomment to activate
                      Sostanzialmente per utilizzarlo decommenti l'ultima riga e carichi il codice, accendi e spegni il quadri, ricommenti e ricarichi il codice. Non credo pero' che ti risolva...
                      multiwii e quadrirotore: http://www.multirotors.org
                      software e invenzioni: http://www.sideralis.org

                      Commenta


                      • #12
                        Ciao,

                        sto eseguendo un po' di test nuovamente dall'inizio.

                        La prima cosa che mi incuriosisce e' la visualizzazione grafica di ROLL e PITCH.
                        Ma deve corrispondere alla realta' ?

                        Mi spiego: il movimento che ottengo e' si quello della realta', se piego in avanti il pitch indica il basso, se mi piego a destra, il roll scende verso destra.
                        Pero'..non corrispondono i gradi di inclinazione.

                        Quando inclino l'elicottero di 10 gradi in qualsiasi verso, graficamente il pitch o il roll si inclinano di 90 gradi..

                        E' come se i dati dell'acceleromenetro fossero troppo elevati rispetto a quando si aspetta il software.

                        Non vorrei che sia questo che fa si che il software , in base a questi valori, agisca in maniera errata e quindi mi mandi crisi il tutto.

                        Che ne pensate ?

                        Ciao e grazie.

                        -=[ Ninjam ]=-

                        Commenta


                        • #13
                          Originariamente inviato da ninjam Visualizza il messaggio
                          Ciao,

                          sto eseguendo un po' di test nuovamente dall'inizio.

                          La prima cosa che mi incuriosisce e' la visualizzazione grafica di ROLL e PITCH.
                          Ma deve corrispondere alla realta' ?

                          Mi spiego: il movimento che ottengo e' si quello della realta', se piego in avanti il pitch indica il basso, se mi piego a destra, il roll scende verso destra.
                          Pero'..non corrispondono i gradi di inclinazione.

                          Quando inclino l'elicottero di 10 gradi in qualsiasi verso, graficamente il pitch o il roll si inclinano di 90 gradi..

                          E' come se i dati dell'acceleromenetro fossero troppo elevati rispetto a quando si aspetta il software.

                          Non vorrei che sia questo che fa si che il software , in base a questi valori, agisca in maniera errata e quindi mi mandi crisi il tutto.

                          Che ne pensate ?

                          Ciao e grazie.


                          -=[ Ninjam ]=-
                          Be, potresti avere due tipi di problema,
                          L'orientamento dei sensori nel SW non corrisponde a quello reale di Gyro e/o acc
                          Puoi cambiare il senso dei sensori nel file config oppure in sensor oppure puoi ruotare fisicamente i sensori (facendoli corrispondere alla configurazione)
                          Se il verso che vedi sul conf sembra il più delle volte giusto, potrebbe essere errato il senso di uno solo dei sensori (magari è sotto sopra). Aiutati pure con i grafici dei sensori che ti danno ampiessa e segno della lettura.

                          Con la punta in avanti:

                          Per per il Roll e Yaw Segno positivo in senso orario
                          Per Pitch Segno positio in picchiata
                          z cresce se accelleri verso l'alto

                          Meno probabilmente potrebbe essere che il fattore di scala di Gyro e/ o acc sia sbagliato, potrebbe succedere con sensori Wii compatibili di scarsa qualità.

                          Spero di essere stato utile

                          Ciao

                          Josè

                          Commenta


                          • #14
                            Originariamente inviato da ziojos Visualizza il messaggio
                            Puoi cambiare il senso dei sensori nel file config oppure in sensor oppure puoi ruotare fisicamente i sensori (facendoli corrispondere alla configurazione)
                            Scusa, erroneamente ho citato il file config, il verso si cambia in def.h per le IMU supportate qualora siano installate con un verso diverso da quello di default, se usi i sensori Wii puoi gestire il verso in Sensors proprio nelle prime righe del file

                            codice:
                            #if !defined(ACC_ORIENTATION) 
                              #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = X; accADC[PITCH]  = Y; accADC[YAW]  = Z;}
                            #endif
                            #if !defined(GYRO_ORIENTATION) 
                              #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = X; gyroADC[PITCH] = Y; gyroADC[YAW] = Z;}
                            #endif
                            #if !defined(MAG_ORIENTATION) 
                              #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  = X; magADC[PITCH]  = Y; magADC[YAW]  = Z;}
                            #endif
                            cambiando il segno ai termini delle #define

                            Commenta


                            • #15
                              Ciao Ninjaman ,
                              complimenti per la tua avventura !! vedrai che pian piano risolverai tutto !!!
                              io non mi intendo molto di multiwii, ma ti poso assicurare che quando inclini il modello di 10 gradi , sul monitor il movimento deve corrispondere quasi esattamente !! sicuramente quello è un problema da risolvere
                              Ciao Francesco

                              Commenta

                              Sto operando...
                              X