annuncio

Comprimi
Ancora nessun annuncio.

BaronPilot - Autostabilizzatore Molto Economico

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

  • Perryosio
    ha risposto
    Originariamente inviato da ciskje Visualizza il messaggio
    No, se fa cosi' l'accelerometro non funziona/non è orientato correttamente usa il comando 'ai' che ti da' gli angoli istantanei solo dall'accelerometro (V52).
    Allora, installata la V51, eliminando la modalità Advanced (per riuscire a fare la compilazione ho eliminato tutti gli "elif" dove si impiantava compilando).
    Bene ecco come calibra:

    Calibrating...
    Gyro... 7957.14;7806.68;8015.15;Error
    Accel... 0;0;0;Error
    Ready.

    Come si dice qui: "ghè ergot che 'l va mia". Error?
    Inoltre il led lampeggia più velocemente (circa 350 ms).

    Lascia un commento:


  • leonking
    ha risposto
    ho inserito questo codice per vedere i valori pid digitati.
    che ne pensi Francesco?

    if (Serial.available()) {
    readString(command);

    if (cmpString(command,"pwp"))
    {
    acroPitch.kp=readFloatSerial();
    acroPitch.ki=readFloatSerial();
    acroPitch.kd=readFloatSerial();

    // per vedere il valore immesso
    Serial.print("WRITE PWP >");
    Serial.print(acroPitch.kp);
    separator();
    Serial.print(acroPitch.ki);
    separator();
    Serial.println(acroPitch.kd);
    ok();
    //--------------------------------------
    }
    else if (cmpString(command,"pwr")) // roll
    {
    acroRoll.kp=readFloatSerial();
    acroRoll.ki=readFloatSerial();
    acroRoll.kd=readFloatSerial();

    // per vedere il valore immesso
    Serial.print("WRITE PWR >");
    Serial.print(acroRoll.kp);
    separator();
    Serial.print(acroRoll.ki);
    separator();
    Serial.println(acroRoll.kd);
    ok();
    //--------------------------------------
    se lo ottimizzi io lo posso inserire per i comandi Write.
    Ciao.

    Lascia un commento:


  • Perryosio
    ha risposto
    Originariamente inviato da ciskje Visualizza il messaggio
    No, se fa cosi' l'accelerometro non funziona/non è orientato correttamente usa il comando 'ai' che ti da' gli angoli istantanei solo dall'accelerometro (V52).
    Purtroppo non ho la V52; ho appena provato la 51 ma non va (calibrating....e non succede nulla).
    Dando AI con la V42 che sto adoperando il risultato è lo stesso che si ha dando il comando A.
    Inoltre i valori che compaiono non sono 2 ma 4. Ecco una stringa d'esempio:
    0.00;0.00;-0.65;-0.69
    Ultima modifica di Perryosio; 08 settembre 10, 23:23.

    Lascia un commento:


  • MarcAntonio
    ha risposto
    Originariamente inviato da ciskje Visualizza il messaggio
    Basta togliere le resistenze di pull-up sul WM+ e mettercene due esterne sui 5v, e va una bellezza a 400Khz (molto molto molto più reattivo).
    Bellissimo...

    ti vedo molto attivo adesso.

    Aspetto un paio di settimane prima di cominciare a romperti i maroni ahaha

    Lascia un commento:


  • ciskje
    ha risposto
    Originariamente inviato da Perryosio Visualizza il messaggio
    Come indicato nel sito di baronpilot, seguendo le istruzioni per testare la modalità Stable mode, si deve dare il comando VS; poi con A verificare che i valori dati siano prossimi allo zero.
    E fin qui tutto ok.
    Poi si deve provare a mettere il velivolo in verticale (nose up) e si deve leggere il valore 90; e infatti questo succede, tuttavia tale valore, pur mantenendo "in piedi" il velivolo, scende e tende a zero; ci impiega 10 secondi. E' corretto che succeda così?
    No, se fa cosi' l'accelerometro non funziona/non è orientato correttamente usa il comando 'ai' che ti da' gli angoli istantanei solo dall'accelerometro (V52).

    Lascia un commento:


  • ciskje
    ha risposto
    Originariamente inviato da Perryosio Visualizza il messaggio
    Provata la V51; si apre il Serial Monitor compare ..Calibrating... e non succede più nulla; la luce del led D13 non lampeggia, rimane fissa.
    Provato ad eliminare

    #ifdef ADVANCED
    TWBR = TWI400KHZ; // 400Khz
    #endif

    così

    //#ifdef ADVANCED
    TWBR = TWI400KHZ; // 400Khz
    //#endif

    ma il comportamento resta invariato.

    Come si può fare?
    Mmmmmmm, in setup.h devi togliere #define ADVANCED

    Lascia un commento:


  • ciskje
    ha risposto
    Originariamente inviato da MarcAntonio Visualizza il messaggio
    se può interessarvi per lo sviluppo del Baronpilot,
    sul triwiicopter stanno abbassando la velocità dell I2C a 100khz perchè hanno problemi....

    stesso hardware di Baronpilot.
    Basta togliere le resistenze di pull-up sul WM+ e mettercene due esterne sui 5v, e va una bellezza a 400Khz (molto molto molto più reattivo).

    Lascia un commento:


  • Perryosio
    ha risposto
    Test stable mode

    Come indicato nel sito di baronpilot, seguendo le istruzioni per testare la modalità Stable mode, si deve dare il comando VS; poi con A verificare che i valori dati siano prossimi allo zero.
    E fin qui tutto ok.
    Poi si deve provare a mettere il velivolo in verticale (nose up) e si deve leggere il valore 90; e infatti questo succede, tuttavia tale valore, pur mantenendo "in piedi" il velivolo, scende e tende a zero; ci impiega 10 secondi. E' corretto che succeda così?

    Lascia un commento:


  • MarcAntonio
    ha risposto
    se può interessarvi per lo sviluppo del Baronpilot,
    sul triwiicopter stanno abbassando la velocità dell I2C a 100khz perchè hanno problemi....

    stesso hardware di Baronpilot.

    Lascia un commento:


  • leonking
    ha risposto
    Originariamente inviato da ciskje Visualizza il messaggio
    Il quinto valore (404) è il canale MODE che dovrebbe essere oltre 490 per poter far partire i motori, puoi estendere il range dalla radio?

    si, esteso a 128 e il (404) è diventato 500. adesso "m" funziona.

    avevo il giro montato sottosopra, è bastato cambiare segno ed adesso tutto ok.
    capisco che sei molto impegnato, ma ti suggerisco di inserire, magari piano piano ci studio io (forse), nel sistema CLI relativo ai PID la possibilità di rivedere dopo OK il comando ed il valore appena digitato.
    Questo visto che rimane visibile avere la conferma di aver digitato valori esatti.

    domani altre prove ciao...

    Lascia un commento:


  • Perryosio
    ha risposto
    Originariamente inviato da ciskje Visualizza il messaggio
    É stata aumentata (di 4 volte) la velocita' di comunicazione wii, nel caso non riuscisse a comunicare si blocca proprio in quel punto. Devi solo togliere il define con i 400khz di i2c.
    Provata la V51; si apre il Serial Monitor compare ..Calibrating... e non succede più nulla; la luce del led D13 non lampeggia, rimane fissa.
    Provato ad eliminare

    #ifdef ADVANCED
    TWBR = TWI400KHZ; // 400Khz
    #endif

    così

    //#ifdef ADVANCED
    TWBR = TWI400KHZ; // 400Khz
    //#endif

    ma il comportamento resta invariato.

    Come si può fare?

    Lascia un commento:


  • ciskje
    ha risposto
    Originariamente inviato da leonking Visualizza il messaggio
    valori di "tr" OK come sempre....
    Valori di "t":
    12.00;0.00;-492.00;4.00;404.00;
    12.00;0.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;404.00;
    12.00;0.00;-492.00;4.00;408.00;
    8.00;0.00;-492.00;8.00;408.00;
    12.00;0.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;408.00;
    12.00;0.00;-492.00;4.00;404.00;
    8.00;4.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;408.00;
    12.00;0.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;404.00;
    stick a centro corsa e trh a zero.... bo..


    valori "m" bloccati a -500...
    Il quinto valore (404) è il canale MODE che dovrebbe essere oltre 490 per poter far partire i motori, puoi estendere il range dalla radio?

    Lascia un commento:


  • leonking
    ha risposto
    valori di "tr" OK come sempre....
    Valori di "t":
    12.00;0.00;-492.00;4.00;404.00;
    12.00;0.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;404.00;
    12.00;0.00;-492.00;4.00;408.00;
    8.00;0.00;-492.00;8.00;408.00;
    12.00;0.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;408.00;
    12.00;0.00;-492.00;4.00;404.00;
    8.00;4.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;408.00;
    12.00;0.00;-492.00;8.00;404.00;
    8.00;4.00;-492.00;8.00;404.00;
    stick a centro corsa e trh a zero.... bo..


    valori "m" bloccati a -500...

    Lascia un commento:


  • leonking
    ha risposto
    ciao,
    ho trovato in "#ifdef ADVANCED" riga 57 "Main" e riga 52 e 63 "Mixing" che al posto di else hai messo elif. Questo genera una errore se escludi #define ADVANCED su Sutup.h.

    THR sinistra Acro Mode, destra Stabile Mode.... Trovato.....

    Ma se do "m" i valori rimangono piantati a -500 in qualsiasi posizione degli stick.
    C'e un'altro comando per far partire i motori e vederli con "m"?

    Ciao Grazie.

    Lascia un commento:


  • ciskje
    ha risposto
    Originariamente inviato da emerge Visualizza il messaggio
    perché con la v42 l'arduino sulla seriale dice calibrating, i tre valori e poi se gli dico "m" mi risponde; con l'ultima versione dopo essersi calibrato non risponde nè ai comandi dalla radio nè a quelli sulla seriale.
    É stata aumentata (di 4 volte) la velocita' di comunicazione wii, nel caso non riuscisse a comunicare si blocca proprio in quel punto. Devi solo togliere il define con i 400khz di i2c.

    Lascia un commento:

Sto operando...
X