Costruzione pilota automatico per barca a vela
#21
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);}
Cita messaggio
#22
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
Cita messaggio
#23
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.


Cita messaggio
#24
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.


Cita messaggio
#25
(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
Cita messaggio
#26
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
Cita messaggio
#27
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
Cita messaggio
#28
... Nella board non scorgo il ponte ad H per il controllo del motore 21
Andrea
Cita messaggio
#29
(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
Cita messaggio
#30
(17-02-2016, 22:23)Andomast Ha scritto: ... Nella board non scorgo il ponte ad H per il controllo del motore 21

Si sarà fatto.
Al momento qua l'inghippo è andato tutto in tilt.91919191
Il destino mescola le carte, ma siamo noi a giocarle.


Cita messaggio
#31
Quale senore avete usato per la bussola?
Andrea
Cita messaggio
#32
[hide]
.jpeg   2016-02-18-08-15-58-1024274227.jpeg (Dimensione: 4,98 KB / Download: 12) [/hide][hide]
.jpg   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.


Cita messaggio
#33
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.


Cita messaggio
#34
In attesa che arrivi il nuovo sensore googola cercando hard iron e soft iorn calibration.
Andrea
Cita messaggio
#35
[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.


Cita messaggio
#36
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.


Cita messaggio
#37
In attesa del tuo braccio mettiamo il mio se vuoi
Ma lo hai già incapsulato in un contenitore adatto alla barca? E i relais?
Cita messaggio
#38
è in costruzione adesso.
Il destino mescola le carte, ma siamo noi a giocarle.


Cita messaggio
#39
Ma come dice Andomast, va calibrato il sensore, in primis.
Il destino mescola le carte, ma siamo noi a giocarle.


Cita messaggio
#40
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.
Cita messaggio


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
  Pilota B&G network devia rotta in modo anomalo sergiot 9 614 13-10-2025, 16:21
Ultimo messaggio: magior
  Blocco pilota automatico P70 Raymarine Frangi 4 422 21-09-2025, 09:11
Ultimo messaggio: maema
  pilota raymarine stlk fail monte88 17 8.143 07-09-2025, 15:51
Ultimo messaggio: Jonah11
  Calcolo automatico polari Nexus Race Matteo Gagliardi 2 477 03-06-2025, 18:43
Ultimo messaggio: Matteo Gagliardi
  Pilota SPX30 + GPS : possibile aggiungere antenna con uscita NMEA ? acquafredda 10 1.228 31-01-2025, 21:37
Ultimo messaggio: acquafredda
  Pilota raymarine che si sgancia pasdik 13 2.070 07-10-2024, 15:04
Ultimo messaggio: pasdik
  NMEA0183 - problema di comunicazione plotter - pilota automatico gadisac 4 1.019 08-08-2024, 18:54
Ultimo messaggio: NicolaBologna
Photo Tensioni corrente su centralina Pilota St7000 lupo planante 0 584 16-07-2024, 23:01
Ultimo messaggio: lupo planante
  Pilota st4000 impazzito Francescobissotwo 5 1.364 16-07-2024, 12:15
Ultimo messaggio: Rickymat
  Problemi pilota automatico ST 7000 luka62 0 476 25-06-2024, 15:10
Ultimo messaggio: luka62

Vai al forum:


Utenti che stanno guardando questa discussione: