Citazione:
Originalmente inviato da marcosinatti Beh, ad essere sincero non mi fido di dare l'ely ai miei pollici, figuriamoci al pic!
Per ora ho predispoto un canale che in pratica prende il segnale del canale 5 del giroscopio, quando da radio si imposta il gyro in AVCS entra in funzione anche lo stabilizzatore, ma questa è solo un idea dovuta al fatto che non ho altri canali liberi.
Il pic legge i segnali della rx e li miscela a quelli dei servi, però stò sviluppando un sistemino che permette al pic di distinguere la porzione di segnale del servo che fa parte della correzione data con lo stick, dalla porzione di segnale che viene data dalla percentuale di passo collettivo dato con lo stick del gas.
In questo modo posso far attuare la correzione solo in prossimità del centro degli stick, altrimenti quando voglio rollare (ad esempio) il pic non me lo permetterebbe.
Questo è un primo modo di funzionamento, altrimenti posso implementare un pid dove introduco il segnale (lo stick), leggo l'errore e applico la correzione, ma è più complicato e forse anche più laborioso da mettere in atto, in fondo se il mio apparecchio interviene solo per la stabilizzazione orizzontale, in teoria in caso che perdi il controllo dell'eli basta lasciare gli stick e lui dovrebbe riportarlo in orizzontale. Ottimista? Forse si, perchè quando piomba verso il terreno con assetti a dir poco impensabili non credo che si riesca a ritirarlo su
Comunque ancora non ho provato a vedere cosa succede in volo! |
Ho capito....
Un'altra domanda, l'accelerometro l'hai utilizzato così?
In asse con il rotore principale così da utilizzare l'asse Z per aumentare/diminuire il passo del ciclico, asse X per l'imbardata e l'Y per il beccheggio, e poi naturalmente il giroscopio per il rollio?
Come li "leggi" i segnali provenienti dal ricevitore?
Io di solito utilizzo TMR0, lo azzero all'inizio dell'impulso che esce da un canale, lo leggo appena l'impulso passa da 1 a 0 e memorizzo il dato letto, poi leggo l'accelerometro, mi tiro fuori un'altro numero da sommare al precedente letto dal RX e poi creo un terzo segnale "somma" dei primi due che mando al servo.
In questa maniera, supponendo x esempio ke il segnale vari da 0 a 100 Tclock ( 50 corrisponde servo al centro ) non puoi fare che se il segnale letto dalla ricevente se si trova tra 40 e 60 ( zona centrale dello stick ) allora viene miscelato al segnale degli accelerometri se no niente? che ne pensi?