IL ÉTAIT UN PETIT NAVIRE !

Allusion à cette contine populaire dans laquelle le petit navire «n’avait ja ja jamais navigué». Mon petit démonstrateur non plus n’ira pas sur l’eau, c’est juste une maquette symbolique pour servir de prétexte à programmer un Arduino.

Avec mon post sur La barre à babord ou a tribord ? - Français - Arduino Forum je vous avais présenté mon projet d’automatisation de la barre d’un supposé petit voilier. Et surtout posé de nombreuses questions, notamment relatives au choix Bâbord ou Tribord pour corriger le CAP.
C’est fait, mon projet est achevé et fonctionne divinement bien. Pour vous remercier de vos aides respectives, je me sentais un peu votre « obligé », et je croix normal de vous présenter les grandes lignes de cet amusement informatique. J’ai préféré ouvrir un nouveau sujet, car l’ancien « fil » est bien encombré.
Mon problème le plus épineux est résumé sur la Fig.1 qui montre la solution tout compte fait facile pour déterminer de quel coté tourner. En réalité mon problème résultait de calculs erronés suite à une non homogénéité des variables. (Mélange de int et de long dans une expression arithmétique)

La Fig.2 présente le comportement de la barre. Elle ne doit pas dévier le safran de plus de 30°. Pour des déviations de route correspondant « au neutre » elle est placée dans l’axe. Plus la route s’écarte du CAP désiré, plus le rappel de barre est énergique.
Comme montré sur la Fig.3, quand on donne au servomoteur la consigne de rappel central, le palonnier de ce dernier mécaniquement n’est pas forcément dans l’axe. Naturellement le programme effectue la correction qui s’impose.

Comme Arduino présente beaucoup plus d’E/S que je n’en avais besoin, j’ai ajouté des compléments lumineux. Par exemple les LED de la Fig.4 qui s’allument en fonction de la consigne de barre. Elles sont éteintes quand le safran est dans l’axe du bateau. Plus le gouvernail est décalé, plus la couleur de la LED est « chaude », et ce pour chaque coté de la correction de route.
Comme symbolisé sur la Fig.5 une option de correction de dérive permet de compenser la navigation « en crabe » qui résulte du dérapage dû au vent ou d’un courant traversier, car rien n’interdit de faire traverser une rivière à notre navire, surtout si à proximité un pont permet d’aller le récupérer en face. On peut compenser jusqu’à 15° de dérive ce qui doit probablement couvrir tous les besoins.

Pour le plaisir je vous livre ci-dessous l’organigramme qui décrit la logique de ma boucle de base. Comme en général sur presque tous mes programmes, la boucle principale ne présente qu’une suite d’appels à procédures. C’est fondamental pour la lisibilité d’un programme et facilite considérablement sa mise au point.


CONCLUSION : La première remarque concerne le concept. Il s’agissait de mettre en œuvre une boussole électronique et un servomoteur. Mais automatiser un voilier par son cap magnétique n’est pas une très bonne idée. Si le vent change quand il est au centre du lac et que notre beau navire se retrouve face au vent … YAPLUKA aller le chercher à la nage. Pour un voilier, il vaudrait mieux l’asservir sur l’amure … mais c’est un autre projet.
Il s’agissait d’un amusement informatique. Pari réussi, car j’ai avec ce prétexte à programmer appris beaucoup de choses sur Arduino, et tout particulièrement à me méfier et à traiter les problèmes d’homogénéité des variables dans les calculs.
VLA les Amis, encore merci pour vos remarques, conseils et aides diverses.
Amicalement : Nulentout.

Bonjour,
Merci pour les informations.
S'agit-il d'un projet terminé? Y-a-t-il possibilité d'avoir le code arduino?
:wink:

Oui, c'est un petit projet "amusant" pour lequel je désirais gérer la barre d'un petit voilier (Encore que toute maquette à moteur peut l'utiliser) en asservissement à une consigne de route magnétique.
Naturellement je peux fournir le code :

GNARF GNARF GNARF pas moyen de l'insérer, car je dépasse les 9500 caractères et le "forum" n'accepte pas mon "post".
Ceci dit, je peux t'envoyer le fichie INO.
De plus, chaque fois que je me fais une petite expérience en Arduino, je me rédige un petit "livre personnel" dans lequel je détaille les schémas électroniques, les choix des E/S etc. Actuellement ce petit livre fait déjà 47 pages. Pour certains capteurs testés une page suffit, mais pour des modules plus "conséquents" plusieurs pages peuvent traiter de l'expérience. Par exemple pour ce petit projet huit pages A4 entières sont nécessaires. Si tu désires avoir ce document, je peux te le l'envoyer, il te suffit de me communiquer une adresse internet quelconque. Le format est en PDF donc utilisable par tous.

je me rédige un petit "livre personnel" dans lequel je détaille les schémas électroniques, les choix des E/S etc. Actuellement ce petit livre fait déjà 47 pages

Ah la la.. c'est beau la méthode.. Snif ! Moi qui fais tout à l'arrache sur feuilles volantes qui partent à la poubelle au fur et à mesure.
Et le super compte rendu ! Avec organigramme...
Vraiment: Chapeau !!!

nulentout:
GNARF GNARF GNARF pas moyen de l'insérer, car je dépasse les 9500 caractères et le "forum" n'accepte pas mon "post".
Ceci dit, je peux t'envoyer le fichie INO.

Tu peux mettre une pièce jointe en cliquant sur Additional Options... sous la fenêtre d'édition du message puis sur Attach

Je vais tenter cette procédure. (Pour l'usage des forums je ne suis vraiment pas doué :slight_smile: )
Je joins le programme et la petite documentation personnelle.
Bonne lecture les Amis ...

Barre_automatique_MC1811.ino (9.51 KB)

Petit navire.pdf (1.03 MB)

Joli boulot, j'aimerai être aussi organisé :astonished:
pour la méthode j'ai un bon vieux carnet papier et un tableau en liège pour accrocher mes schéma idée, bref un beau bordel :wink:
tu utilises quel logiciel pour réaliser tes logigrammes?

nulentout:
Je vais tenter cette procédure. (Pour l'usage des forums je ne suis vraiment pas doué :slight_smile: )
Je joins le programme et la petite documentation personnelle.
Bonne lecture les Amis ...

joli travail bien documenté
lorsque j'aurais le temps , je testerais avec en remplacement du "pov potard" 8) limité en course
un AS5043 en sortie ana

Pour faire mes organigrammes j'utilise un logiciel nommé SPLAN6.
Actuellement pour la version 7 il est disponible sur :
http://www.lextronic.fr/P5-logiciel-splan-70.html
51.26 € peut sembler une somme élevée, mais c'est un progiciel de dessin extrèmement convivial.
Avec je fais TOUS MES DESSINS, que ce soit des circuits imprimés, mes chémas électriques, les dessins qui accompagnent mon petit document sur mon "petit navire".
En fait on peut même faire du dessin artistique avec.
Voici un exemple de dessin fait avec ce logiciel :


C'est une image que j'ai insété dans un tutoriel pour piloter les vaisseaux Mercury dans l'espace.
Le dessin est fait sous SPLAN6, puis passé et colorié dans PAINT.
Voici un autre exemple :

Un dernier pour te montrer que l'on peut réaliser de belles gravures avec ce logiciel :

C'est le tableau de bord principal du module de service d'Apollo qui a emmené les Américains sur la Lune. Je l'ai inclus dans un tutoriel qui explique commant piloter Apollo pour partir vers la Lune, s'y poser et ... en revenir ce qui n'est pas du tout élémentaire.
C'est simple, je fais mon dessin avec SPLAN6, puis je le sors en BMP. Ensuite je retravaille un peu les couleurs sous PAINT.
Quand je dis artistique, voici à quoi je fais allusion :

C'est un petit dessin que j'ai réalisé dans SPLAN6 pour illutrer un petit roman que j'ai écrit et qui parle du tout premier voyage sur Mars. Un amusement sans plus. Ce dessin est réalisé à partir d'une photographie d'une personne qui lisait sur une plage. J'avais trouvé son attitude très belle. Sur le dessin j'ai changé son apparence en jeune fille, mais c'est pour le roman. Dans la réalité c'est une personne du troisième âge.
C'est un outils dont je ne pourrais plus me passer, et franchement pour le prix d'un simple jeu sur ordinateur, on a un Progiciel qui nous sert pendant des années. C'est un bon rapport Qualité/Prix.

N.B : Je n'ai pas d'actions chez eux !

nulentout:
Pour faire mes organigrammes j'utilise un logiciel nommé SPLAN6.
...
Le dessin est fait sous SPLAN6, puis passé et colorié dans PAINT.
...
C'est simple, je fais mon dessin avec SPLAN6, puis je le sors en BMP. Ensuite je retravaille un peu les couleurs sous PAINT.
...

Bonsoir nulentout
le resultat est interessant/joli à voir , mais la manip fait un peu usine à gaz :grin:

mais si ça te convient et que tu maitrise , pas de raisons que tu change :grin:

tu a jeté un oeil sur "inskape" , le format SVG ?

Salut nulentout, je n'ai fait que survoler ta «documentation personnelle» (comme d'autres l'ont dit j'aimerai être aussi organisé...) et il me semble que tu mélanges allègrement les termes SPI et I2C à plusieurs endroits, or ce sont 2 bus très différents. Il y a même à un moment une référence à OneWire, qui est encore un autre type de bus.

Je ne sais pas si ceci résulte d'une réelle incompréhension de ta part ou de fautes de frappe/de copié-collé, mais dans le premier cas je me permets de te conseiller de te renseigner un peu plus sur ces différent bus, sinon tu vas tôt ou tard avoir des soucis que tu auras du mal à résoudre si c'est vraiment flou à ce point dans ton esprit.

bonjour j'emerais avoir le plant de branchement du projet ( il etait un petit navire) car j'ai un probleme comment brancher les 2 potensiometre et si je peut changer le hmc6252 pour hmc5883l merci pour ce petit projet tres interessant

Bonjour, la j'en reste sur le c......l ou complètement abasourdi devant tant de savoir en plus ce charmant Monsieur nous sert le programme complet et tout ce qui va avec.
Je ne l'ai pas essayé mais l'envie de remercier Mr Nulentout me démangeais le clavier. Comment peut on être aussi serviable, surtout à notre époque.
Cela dit je vais le monter et l'essayer non pas dans un bateau mais dans un ULM pour corriger la dérive en vol, je veux aller à tel cap et le maintenir.
A la place du potentio serait-il possible de mettre un compteur/décompteur, avec deux boutons poussoirs pour afficher sur un SH1106 les degrés et bien sur des flèches indiquant de quel coté aller??
En tout cas MERCI Monsieur.
Un jeune de 70 printemps qui se met à l'arduino !!