Messaggi: 6.325
Discussioni: 225
Registrato: Aug 2015
17-02-2016, 15:13
(Questo messaggio è stato modificato l'ultima volta il: 17-02-2016, 15:32 da marcofailla.)
diff = rotta - angle;
if (diff < -180) {diff = diff + 360;}
if (diff > 180) {diff = diff - 360;}
scostamento = abs(diff);
if (diff < -3){digitalWrite(3, HIGH); delay(scostamento * 100);digitalWrite(3, LOW); delay(100);}
if (diff > 3){digitalWrite(2, HIGH); delay(scostamento * 100);digitalWrite(2, LOW); delay(100);}
Messaggi: 1.248
Discussioni: 38
Registrato: Nov 2009
1) Per sicurezza devi iterare le operazioni di riduzione entro l'intervallo -180,+180 fino a quando sei sicuro di esserci.
2) controllare con "scostamento" il tempo di azione del relè è un po' azzardato. Ti faccio un esempio: supponi che il pilota ha già fatto una correzione dando una certa barra e la barca sta effettivamente tornando in rotta. Durante l'accostata il pilota fa un'altra misura e trova ancora la prua fuori rotta per cui aumenta ulteriormente l'angolo di barra - magari di poco perché lo scostamento nel frattempo è diminuito ma quanto basta per andare, probabilmente, al di là della rotta impostata. Invece di diminuire gradatamente l'angolo di barra man mano che si raggiunge la rotta, l'autopilota lo aumenta! Non va! Il sistema tende ad oscillare.
Il problema sorge perché controllare solo il tempo di azione dei relè non tiene conto di dove si trova effettivamente la barra in quel momento.
Devo insistere? L'autopilota DEVE conoscere la posizione del timone!!!!!!!!!
Effettivamente esistono dei piloti che non hanno il Rudder Reference ma, in compenso, utilizzano dei motori passo passo in grado di controllare accuratamente la posizione del timone (fino a quando non vanno fuori fase!).
Daniele
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
Ciao Daniel, noto che segui la discussione con interesse, se ti va allego l'ultimo Sketch e con l'apposito programma scaricabile dal sito https://www.arduino.cc/ puoi apportare le tue idee, e con copia incolla io testerò l'esito.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
Ok Marco, l'ultimo Sketch che ai mandato, di primo acchitto funzione, praticamente cosi nelle formule si mette in ballo azimut e contro azimut, l'unico dubbio sembra che i tempi di azionamento del relè con una differenza alta tra rotta e angle siano un pò altini. Comunque questa è una prima sensazione.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 1.248
Discussioni: 38
Registrato: Nov 2009
(17-02-2016, 18:30)pepilene Ha scritto: Ok Marco, l'ultimo Sketch che ai mandato, di primo acchitto funzione, praticamente cosi nelle formule si mette in ballo azimut e contro azimut, l'unico dubbio sembra che i tempi di azionamento del relè con una differenza alta tra rotta e angle siano un pò altini. Comunque questa è una prima sensazione. Torno nella discussione quando avrete effettivamente messo su un motore che aziona un potenziometro a filo da 500 Ohm (per ora non c'è bisogno che agisca anche su un timone!) e la sua resistenza (posizione del cursore rispetto al centro) venga letta dal processore...
Buon lavoro!
Daniele
Messaggi: 384
Discussioni: 25
Registrato: Jun 2012
17-02-2016, 21:57
(Questo messaggio è stato modificato l'ultima volta il: 17-02-2016, 22:34 da Andomast.)
Conviene implementare un algoritmo di correzione cha abbia una componenete proporzionale al delta fra prua e bussola - (meno) un fattore correttivo che tenga conto della differenza di due delta successivi... In questo modo la correzione si riduce se l'intervento precedente ha ridotto l'errore fra bussola e prua. I fattori di proporzionalità per i due contributi (proporzionale "H" e differenziale "K") del calcolo vanno trovati sperimentalemente.
Utilizza una variabile per "sommare" (W) tutte le correzioni eseguite in un dato verso, appena il delta rientra dentro un "dead angle" nel quale il pilota non interviene, azioni il pilota in senso opposto così da avere una correzione pari a -W... e la barra "dovrebbe tornare al centro"... occhio che per far cio' devi verificare se la barca arriva dentro l'angolo morto da dritta o da sinistra...
Buon lavoro!
Andrea
Messaggi: 6.325
Discussioni: 225
Registrato: Aug 2015
Si può fare... Attendiamo il braccio motore con la sua escursione e velocità per fare queste cose
Peró ragazzi... Pepilene si deve fare il caffè mentre il pilota va mia deve fare la vendee globe...
Io nel mio piccolo ho un raymarine spx5 gp e non ha né rudder reference ne tantomeno alcun motore passo passo e il mediterraneo lha tagliato in lungo e in largo
Basta che vada dritto... Lui si fa la sua tazzuliella di café e siamo tutti contenti
Messaggi: 384
Discussioni: 25
Registrato: Jun 2012
... Nella board non scorgo il ponte ad H per il controllo del motore
Andrea
Messaggi: 1.248
Discussioni: 38
Registrato: Nov 2009
(17-02-2016, 21:57)Andomast Ha scritto: Conviene implementare un algoritmo di correzione cha abbia una componenete proporzionale al delta fra prua e bussola - (meno) un fattore correttivo che tenga conto della differenza di due delta successivi... In questo modo la correzione si riduce se l'intervento precedente ha ridotto l'errore fra bussola e prua. I fattori di proporzionalità per i due contributi (proporzionale "H" e differenziale "K") del calcolo vanno trovati sperimentalemente.
Utilizza una variabile per "sommare" (W) tutte le correzioni eseguite in un dato verso, appena il delta rientra dentro un "dead angle" nel quale il pilota non interviene, azioni il pilota in senso opposto così da avere una correzione pari a -W... e la barra "dovrebbe tornare al centro"... occhio che per far cio' devi verificare se la barca arriva dentro l'angolo morto da dritta o da sinistra...
Buon lavoro! In parole povere è importante calcolare non solo la deviazione dalla rotta ma anche la sua derivata temporale. Mi sembra giusto!
D'altra parte l'SPX nominato è piuttosto "intelligente" tanto che impara da solo! Giovani, se non volete mettere la Rudder Reference probabilmente riuscite ugualmente a fare qualcosa di funzionante, ma dovete fare un bel programmone - altroché 20 misere istruzioni in fila!
Rudder Reference => programma relativamente semplice.
No Rudder Reference => Intelligenza Artificiale o giù di li.
A voi la scelta.
Daniele
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 384
Discussioni: 25
Registrato: Jun 2012
18-02-2016, 08:33
(Questo messaggio è stato modificato l'ultima volta il: 18-02-2016, 08:40 da Andomast.)
Quale senore avete usato per la bussola?
Andrea
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
[hide]
2016-02-18-08-15-58-1024274227.jpeg (Dimensione: 4,98 KB / Download: 12)
[/hide][hide]
261233654470_11.jpg (Dimensione: 20,22 KB / Download: 11)
[/hide]
il sensore è un 5888 L , ma nel i due adattatori viene fuori che l'arduino, non legge più il sensore.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
18-02-2016, 20:57
(Questo messaggio è stato modificato l'ultima volta il: 18-02-2016, 21:06 da pepilene.)
Riacquistato nuovo sensore, pazienza cè d'aspettare.
In questi giorni mi sono interpellato con un altro forum, specifico per arduino, ma non volendo giudicare male, avessi avuto un'aiutino.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 384
Discussioni: 25
Registrato: Jun 2012
In attesa che arrivi il nuovo sensore googola cercando hard iron e soft iorn calibration.
Andrea
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
[hide]

[/hide]
Ok trovato il problema, era questo adattatore che non fa partire il programma, qualcuno sa come vengono montati questi adattatori?
A chiedere nel forum dedicato non provo neanche.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
Ok risolto il problema piccolo difetto di costruzione, adesso funziona, resta solo da regolare in navigazione.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 6.325
Discussioni: 225
Registrato: Aug 2015
24-02-2016, 09:49
(Questo messaggio è stato modificato l'ultima volta il: 24-02-2016, 11:17 da marcofailla.)
In attesa del tuo braccio mettiamo il mio se vuoi
Ma lo hai già incapsulato in un contenitore adatto alla barca? E i relais?
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
è in costruzione adesso.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 2.559
Discussioni: 120
Registrato: Jun 2012
Ma come dice Andomast, va calibrato il sensore, in primis.
Il destino mescola le carte, ma siamo noi a giocarle.
Messaggi: 80
Discussioni: 7
Registrato: Sep 2010
Pepilene volevo chiederti, ma il display di quello strumento multi della Navman di cui hai usato lo chassis, è funzionante? Perchè ho uno strumanto uguale con LCD completamente sbiadito al centro.
|