annuncio

Comprimi
Ancora nessun annuncio.

ArmQuad quadricottero per riprese aeree e volo acrobatico

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

  • #31
    Originariamente inviato da ciskje Visualizza il messaggio
    Dan, conoscevi questi altri ARM copteri?

    Comparison - UAVP-NG - The Next Generation multicopter
    UAVP-X che pero' non ha un arm ma un PIC lo possiedo, ho anche il Mikrokopter, gli altri li conosco a parte l' HB-Kopter di cui ignoravo l'esistenza.

    Ho appena visto le foto della tua disavventura, mi spiace ma vedo che in parecchi ti stanno dando solidarieta'.
    Volevo chiederti una cosa, dal wii in i2c e dal nunchuck i dati ti escono normali o in complemento a 2 ?
    Dal mio gyro e acc a 16 bit mi escono in i2c 2 byte, 1 byte msb e 1 lsb.
    Ricompongo la word a 16bit ma e' in complemento a 2 quindi devo trasformarla in decimale, e qui viene lo sbattimento.
    Esempio, a gyro fermo leggo
    11111111 11111111

    che l'armbasic interpreta come 65535 in decimale
    se ora faccio l'operazione in complemento a 1 e aggiungo 1 per ottenere il valore con segno ottengo -65536 mentre in realta' dovrei ottenere -1.
    Quindi ho capito che devo operare bit a bit e qui viene il bello perche l'armbasic interpreta tutto in sistema decimale.
    Quadricottero News
    http://www.facebook.com/Quadricottero

    Commenta


    • #32
      Fantastico rileggendo il mio post ho trovato la soluzione semplice e immediata W il FORUM

      codice:
      if dato > 32767 then 
      dato = dato - 65536
      else dato = dato
      end if
      Quadricottero News
      http://www.facebook.com/Quadricottero

      Commenta


      • #33
        Originariamente inviato da danveal Visualizza il messaggio
        Fantastico rileggendo il mio post ho trovato la soluzione semplice e immediata W il FORUM

        codice:
        if dato > 32767 then 
        dato = dato - 65536
        else dato = dato
        end if
        Credo sia arrivato proprio la tua ora di passare al C.
        Comunque i dati dei gyro potrebbero pure essere in complemento a due, ma non essendo numeri negativi (a gyro fermo leggi valori intorno al 8192 sui 10 bit disponibili), non capisco la tua domanda.

        Tieni conto che se non inizializzi correttamente i dati sono cryptati.
        Informatico Professionista, Amante dei 4x4 e delle auto ibride, costruttore di quadricotteri.

        Commenta


        • #34
          Originariamente inviato da ciskje Visualizza il messaggio
          Credo sia arrivato proprio la tua ora di passare al C.
          Comunque i dati dei gyro potrebbero pure essere in complemento a due, ma non essendo numeri negativi (a gyro fermo leggi valori intorno al 8192 sui 10 bit disponibili), non capisco la tua domanda.

          Tieni conto che se non inizializzi correttamente i dati sono cryptati.
          Hai frainteso, chiedevo se con il wii avevi i dati a complemento a 2 per chiederti come avevi risolto.
          Il gyro che utilizzo io non e' quello del wii, ma l'itg-3200

          Ciao
          Quadricottero News
          http://www.facebook.com/Quadricottero

          Commenta


          • #35
            Originariamente inviato da ciskje Visualizza il messaggio
            .....
            (a gyro fermo leggi valori intorno al 8192 sui 10 bit disponibili), non capisco la tua domanda.

            Tieni conto che se non inizializzi correttamente i dati sono cryptati.
            Non voglio avviare polemiche, solo cercare di essere precisi poichè trattiamo di cose tecniche:

            con 10 bit si arriva al massimo a leggere 1023.

            @danveal: l' "else dato = dato" nel tuo codice non serve se if è vero dato viene modificato altrimenti resta com'è l' else è una ridondanza che rallenta la velocità di esecuzione.

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

            Commenta


            • #36
              Originariamente inviato da ElNonino Visualizza il messaggio
              @danveal: l' "else dato = dato" nel tuo codice non serve se if è vero dato viene modificato altrimenti resta com'è l' else è una ridondanza che rallenta la velocità di esecuzione.

              Giustissimo, thanks, e' stato un automatismo "mentale" in genere poi quando un codice funziona faccio una revisione e l' ottimizzazione, ma prevenire e' meglio che curare quindi correggo subito.

              Ciao
              Quadricottero News
              http://www.facebook.com/Quadricottero

              Commenta


              • #37
                Originariamente inviato da danveal Visualizza il messaggio
                Hai frainteso, chiedevo se con il wii avevi i dati a complemento a 2 per chiederti come avevi risolto.
                Il gyro che utilizzo io non e' quello del wii, ma l'itg-3200

                Ciao
                Ops, no con i2c non ho dati invertiti (e sarebbe una bella rogna).

                Originariamente inviato da ElNonino Visualizza il messaggio
                Non voglio avviare polemiche, solo cercare di essere precisi poichè trattiamo di cose tecniche:

                con 10 bit si arriva al massimo a leggere 1023.
                Ops giustissimo, ho swappato i 10bit degli accel con i 14 dei gyro, e su queste cose è meglio essere precisi.
                Informatico Professionista, Amante dei 4x4 e delle auto ibride, costruttore di quadricotteri.

                Commenta


                • #38
                  Originariamente inviato da ciskje Visualizza il messaggio
                  Ops, no con i2c non ho dati invertiti (e sarebbe una bella rogna).
                  Nel mio caso sono riuscito a risolvere semplicemente per la conversione in decimale del valore binario in complemento a 2.
                  Oggi ho provato il nuovo gyro a 16bit in i2c, per il confronto ho utilizzato la routine di volo che usavo con il gyro del wii.motion e quindi solo il controllo P.
                  Il miglioramento e' notevole, arrivo ad amplificare il gain del gyro molto piu di prima ma la cosa notevole e' che mentre prima tramite trimmaggi riuscivo con lo stick al centro a volare in hovering senza toccare lo stick per qualche secondo e poi il quad se ne andava per i fatti suoi, ora senza trimmare nulla lasciando lo stick al centro sta in posizione per qualche secondo poi appena si muove traslando anche leggermente ( esempio 1 metro ) i gyro se ne accorgono e fa un contromovimento di ritorno, in pratica come se avesse già un accelerometro e il controllo PID completo con il calcolo integrale dell'errore, anche se in questo caso l'effetto e' molto più grossolano ovviamente.
                  Quadricottero News
                  http://www.facebook.com/Quadricottero

                  Commenta


                  • #39
                    Originariamente inviato da danveal Visualizza il messaggio
                    Nel mio caso sono riuscito a risolvere semplicemente per la conversione in decimale del valore binario in complemento a 2.
                    Oggi ho provato il nuovo gyro a 16bit in i2c, per il confronto ho utilizzato la routine di volo che usavo con il gyro del wii.motion e quindi solo il controllo P.
                    Il miglioramento e' notevole, arrivo ad amplificare il gain del gyro molto piu di prima ma la cosa notevole e' che mentre prima tramite trimmaggi riuscivo con lo stick al centro a volare in hovering senza toccare lo stick per qualche secondo e poi il quad se ne andava per i fatti suoi, ora senza trimmare nulla lasciando lo stick al centro sta in posizione per qualche secondo poi appena si muove traslando anche leggermente ( esempio 1 metro ) i gyro se ne accorgono e fa un contromovimento di ritorno, in pratica come se avesse già un accelerometro e il controllo PID completo con il calcolo integrale dell'errore, anche se in questo caso l'effetto e' molto più grossolano ovviamente.
                    E il video?
                    Informatico Professionista, Amante dei 4x4 e delle auto ibride, costruttore di quadricotteri.

                    Commenta


                    • #40
                      Originariamente inviato da ciskje Visualizza il messaggio
                      E il video?
                      Ancora qualche giorno, quando finisco il PID.
                      Quadricottero News
                      http://www.facebook.com/Quadricottero

                      Commenta


                      • #41
                        Aggiornamento ArmQuad

                        Sono passati parecchi giorni dall'ultimo post, nel frattempo ho lavorato parecchio.
                        Finito la modalita ACRO mi sono dedicato alla modalità autolivellante "stabile".
                        Essendo un progetto tutto nuovo ho impiegato parecchio tempo nel determinare i giusti valori di amplificazione dei Gyro, dell'influenza degli stick, e dei valori del PID.

                        Ho notato che abbassando la frequenza di taglio dei gyro la stabilita' aumenta sensibilmente ma il rovescio della medaglia e' che nei movimenti veloci si "imbarca"facilmente non riuscendo piu' a recuperare l'hovering.
                        Aumentando la frequenza di taglio il comportamento dinamico va bene ma per avere la stessa stabilita' bisogna aumentare i vari valori del PID sopratutto il P
                        Aumentando i valori del PID pero' escono fuori tutte le magagne derivanti dalle eliche sbilanciate, motori che vibrano troppo etc.
                        Bisogna trovare la giusta alchimia tra P I e D. Nei miei lunghi test ho notato che oltre all' I anche il D e' parecchio importante, a parita di gain aiuta ad eliminare le oscillazioni, ovviamente se si esagera' e' lui stesso ad innescarle.

                        A questo punto anche se appena nata , la modalita' autolivellante mi soddisfa parecchio, ancora una settimana per affinare il tutto ed eseguirò test con relativi video di volo.

                        Un Saluto a tutti i lettori di questo thread
                        Quadricottero News
                        http://www.facebook.com/Quadricottero

                        Commenta


                        • #42
                          Originariamente inviato da danveal Visualizza il messaggio
                          anche il D e' parecchio importante
                          Il D in un PID sull'assetto, è equivalente al P con un controllo con i classici giroscopi. (la derivata dell'angolo è la sua variazione cioè proprio l'output dei giroscopi).
                          Informatico Professionista, Amante dei 4x4 e delle auto ibride, costruttore di quadricotteri.

                          Commenta


                          • #43
                            Stable Mode

                            Il team di sviluppo dell' ArmQuad, composto da Dan e da Veal , oggi ha testato la modalita' volo stabile.
                            A disturbare il volo c'era un leggero vento, quando si vede il braccio alzato e' perchè lasciavo gli stick e alzavo il radiocomando pensando di riuscire a inquadrare il "senza mani" , purtroppo viene inquadrato a volte solo lo stick del pitch & roll. Nel finale piccolo crash senza danni, ho perso l'orientamento del quad perche avevo lasciato gli stick e quando li ho ripresi ho sbagliato comando.
                            Prossimo step oltre all'affinamento della modalità stabile, il barometro per mantenere l'altezza costante. Di questo passo il prossimo secolo raggiungo il Mikrokopter

                            Quadricottero News
                            http://www.facebook.com/Quadricottero

                            Commenta


                            • #44
                              Quadricottero News
                              http://www.facebook.com/Quadricottero

                              Commenta


                              • #45
                                Originariamente inviato da danveal Visualizza il messaggio
                                Bravo,
                                complimenti per il tuo primo volo stabile e al tuo team sia a Dam che a Veal ;)
                                Poi nella prossima conference call ci racconti
                                Buona giornata.
                                Roberto
                                Redfox74
                                Virtual Robotix ( Arducopter DEVTEAM )
                                http://www.virtualrobotix.com
                                Canale di supporto FB
                                https://www.facebook.com/groups/1606596929592397/

                                Commenta

                                Sto operando...
                                X