Tableaux de bord complets arduino

Hello !
Lien : youtube (si ça marche pas taper bateau et nextion dans la recherche)


Nouveau sur le forum j'aimerai vous montrer ma réalisation : c'est un tableau de bord tactile avec 2 écrans 7 pouces et une carte arduino méga.
Les données sont prises directement sur les capteurs d'origine : un vieux mercruiser 3litres 4 cylindres. (pression, température, compte tour, trim ...)
La vitesse et le cap sont par gps.
Le ventilateur de cale est animé, il se déclenche au démarrage puis s'arrête, son déclenchement peut être manuel (tactile).
Au moment de la vidéo le régulateur était mort (17v) ais la protection du tableau de bord a marché.
Le trim peut être manuel ou automatique (plusieurs choix). Pour le mode automatique on peut choisir quel valeur donner au trim sur une autre page (mise en mémoire rom, reste mémorisé après extinction).
Ce qui est sympa c'est que je n'ai pas à régler le trim pour le tableau de bord, il suffit de le mettre à fond dans toutes les positions et de cliquer sur enregistrer)
Le fuseau horaire est aussi à enregistrer quand on le désire (automatisme trop lourd à programmer pour la petite carte)
Je me suis mis aussi un petit gadget finalement sympa : la position de la barre (utile à l'arrêt avant de démarrer), là j'ai rajouté un capteur derrière le volant (pour le connaisseurs un simple potentiomètre multi-tours)
Le dessin du bateau est animé (monte ou descend en fonction du trim).
Encore quelques petits trucs à affiner : le compte tour (j'attends un module chinois pour capter plus précisément vu le signal abominable donné par mon moteur).
Le trim automatique : je dois le calmer par programmation, trop précis il fait fonctionner trop souvent la pompe de trim.
Problème impossible à résoudre pour moi : ça brille en plein soleil. Les seuls écrans que je peux programmer ne sont pas assez brillants... Mais ça marche !
Au plaisir.

L'équipage
06 sept. 2021
06 sept. 202106 sept. 2021

Mec !!!!! c'est génial !!! Bravo !!

Tu as réaliser ce que je n'ai jamais eu le temps , ( ou compétence aussi et surtout^^.)

Pour le faisceau Moteur, Tu as utiliser un multiplexer ou convertisseur Analogique/digital classique ? Nmea de type Nexens pour exemple ?

De même pour les Résérvoirs.?
De ce que j'ai put voir jusqu' a présent sur mon boat et en général. La plupart des capteurs fonctionne en 10/180oHMS OU 250/0 POUR Certains. D'ou ma question xD

Et tu l'as programmer toi meme en C++? Ou tu as utiliser un code open source et que t'as rebidouiller ? sur base (Cult.re, automatiser, ou gestion solaire) ??

En tout cas Chapeau a toi l'ami !!!!!!


06 sept. 2021

Très belle réalisation.


06 sept. 2021

Merci !
L'arduino se programme en python (proche c++), les écrans se programment aussi et ont leur langage approchant (alléger les calculs de la carte par exemple ou pour programmer une animation).
Le moteur est vieux, tout est analogique, j'ai piqué directement sur le faisceau (c'est un petit défi que je me suis lancé, ne rien changer au moteur, tout prendre d'origine)
Par exemple pour la température le capteur est une simple résistance qui varie en fonction. Là ou je me suis amusé c'est qu'elle ne varie pas de façon linéaire, je l'ai donc démonté et testé dans une casserole d'eau que je chauffais avec un thermomètre.
J'ai rentré les données dans un tableur qui m'a donné une courbe puis une formule à rentrer dans mon programme.
Ainsi l'arduino me donne la température en fonction de la valeur de la résistance du capteur. Puis l'écran écrit la température et je peux même programmer l'écran pour calculer l'angle de l'aiguille si besoin en fonction de la température envoyée par l'arduino.
Pour la partie électronique il faut juste une autre résistance pour la carte Arduino de la même valeur que le maxi donné par le capteur.
Peu importe les capteurs, on adapte une résistance à quelques centimes derrière sur l'Arduino.
Voir :
zestedesavoir.com[...]esures/
(si j'avais eu cet article avant de construire mon machin...)
Pour le gps j'utilise des bibliothèques toutes faite : pourquoi s'embêter ?
J'attend un module chinois qui converti le compte tour en tension (tr/min en volts), qui sera hyper facile à programmer et allègera les calculs. Espérons que ça marche !


yantho:Bonjour Tout ce qui est arduino l'as-tu fait en python? Avec quoi sur le pc? Merci.·le 06 sept. 2021 16:08
06 sept. 2021

bravo, t'as assuré !!! tu partages ton code source ?


06 sept. 2021

Hello,

Belle réalisation, belle finition ! Bravo !

Par quoi le trim auto est-il piloté ? vitesse du bateau ? tours moteurs ? assiette du bateau ?

Comme F4HBG, le sketch m'intéresse.
J'avais en vu un montage Arduino Méga+ shield ecran 5 pouces TFT tactile à monter en intérieur et pas en extérieur, donc pas de pb de reflet ou de luminosité. Mais c'est casse-pied car ce genre d'écran utilise beaucoup de pins et entre en conflit avec le shield CAN Bus (NMEA2000). Aussi j'avais pensé remplacer le shield TFT par un Nextion qui semble plus frugal en matière de connectique. Mais je ne me suis pas encore lancé étant donné le prix d'un Nextion qui est 5 fois plus cher qu'un shield TFT.

Amicalement.
FX


06 sept. 2021

Merci encore, question très pertinente, bien que non opposé à partager, les problèmes sont les suivants :
- un an de travail quand même ! Au coin du feu devant la tv (oui j'ai un travail pour vivre aussi !)
- le programme n'est pas tout à fait au point, je n'ai pas eu le temps de le finir, il fait trop travailler le trim.
L'amélioration ne demande pas un gros travail (plutôt des mises au point)
Je vais changer complètement ma programmation du compte tour, il donne un temps de latence aux commandes (pour le trim) lorsque le moteur tourne. Je reçois le module électronique (10€) dans 10 jours pour cela qui soulagera la carte.
Ce n'est pas un programme mais un tas de sous-programmes. Sans compter le programme à rentrer dans les nextions (ainsi que les images). Il y a beaucoup de pages d'écriture.
Il me faudrait monter un site rien que pour expliquer les brochages pour connecter l'arduino.
J'ai aussi manqué de temps parce que mon moteur est une vieille rogne de Mercruiser que j'ai complètement refait cet hiver (j'ai même changé les pistons).
Je me pose toujours la question, partager ou not ? Je peux donner des sous-programmes comme réservoir, température...
Et puis je me vois mal le vendre, ce sera jamais un produit fini. Peut être faire du sur-mesure ? Et encore ça reviendrait trop cher, ceux qui ont les moyens achètent mieux que ça tout fait.

Mon travail de recherche a été passionnant, par exemple j'ai trouvé de la peinture pour jantes tuning (comme un latex qui se décolle) pour rendre étanche tous les circuits électroniques. ça n'abîme rien et en plus ça s'enlève comme une peau quand on veut y retravailler : génial !

Pour revenir sur le réglage du trim c'est en fonction de la vitesse du gps et la valeur est fixe (pour mon bateau 30km/h). Je vais aussi rendre cette valeur réglable comme la position optimale du trim. Assez simple à faire....mais faut le faire.
J'avais en projet de faire en fonction de la conso (j'ai acheté le capteur) mais... c'est en projet.

Le temps est mon ennemi, rien que pour partager etc... De plus je me sert de cette base pour d'autres projets : j'ai fait un tableau de bord pour la collection de mobylettes de mon frère. Dans les projets aussi des tableaux de bord pour austin, ww etc... c'est le même principe, même plus simple (pas de trim).

Explications du trim : plutôt qu'un pavé, une vidéo.


03 jan. 2024

Hello !
C'est toujours moi, voilà plus de 2 ans que j'ai mis au point le tableau de bord numérique tactile pour Mercruiser ou autre vieux moteur de bateau.
Je n'ai plus le temps de m'y consacrer, peut être quelques améliorations.
J'ai donc décider de partager toutes les astuces pour le faire, y compris la programmation mais seulement si quelqu'un m'aide à mettre en ligne tout le travail (un gros paquet quand même) par blog ou facebook, je ne sais pas encore.
Bonne année !


fxvt:Hello,
Pour ce type de publication, le mieux est encore de passer par github.Là tu auras une visibilité internationale.Amicalement.FX·le 03 jan. 07:08
03 jan. 202403 jan. 2024

Excellent M'sieur !!!
Bravo pour cette belle réalisation

Comme je suis un sale gosse très critique......j'ai quand même un doute sur la position de la barre prise par un capteur derrière la barre à roue. A moins que ce ne soit un câble qui fasse la direction.

En revanche si c'est une direction hydraulique, forcément le capteur lui fonctionne, mais avec les fuites internes de la pompe, c'est forcément erroné d'avance.

En tous cas, ce n'est qu'un détail et ça n'enlève rien à cette belle réalisation.

Pour ce qui est du Trim qui bouge de trop si j'ai bien compris, peut-être s'agit-il d'un réglage du PID dans l'Arduino. Est-ce qu'on a la main sur les réglages de PID sur ces bébêtes ? Quand bien même, c'est sûr que ce n'est pas facile de régler un PID, on peut facilement y passer la journée sans obtenir de très bons résultats.

Pour ce qui est des temps de latence, pour la petite anecdote, j'ai possédé une Audi A4 190 CV Quattro, automatique boite DSG7, une horreur, même en mode sport. Alors, faut pas trop se flageller avec ça quand on a tout réalisé soi même en mode prototypage.


03 jan. 2024

Beau boulot

pour le trim, il doit possible d'utiliser les librairies "MovingAveragePlus" ou "RunningAverage", dont les fonctions permettent de lisser les valeurs.

Les connaisseurs auront rectifié que l'Arduino se programme en C++, et que le C++ n'a que peu de rapports familiaux avec le langage Python.


03 jan. 2024

Merci,
- la barre est à câble donc aucune perte de précision. Je n'avais pas pensé à l'existence d'une barre hydraulique, sinon un capteur aurait été mis au plus près.

  • Pour la programmation, c'est assez spécial : j'utilise mblock 3 (oui oui un logiciel pour l'école !) c'est des blocs (sorte de bulles) tout beau tout graphique. Bien sûr pas assez puissant, donc pour les blocs manquant comme le gps j'utilise des blocs vides (une "customisation" du logiciel créée par un Américain) que je programme en c (je copie/colle des trucs presque tout faits). Le traitement des données est en python. Ainsi pas de problème de syntaxe et très rapide à programmer. L'écran Nextion "intelligent" a son propre langage proche du C, juste un petit programme pour animer le ventilateur.

  • le retour des capteurs de trim d'origine est un cauchemar sans compter le jeu de l'embase (un nombre entre 1 et 128 très fluctuant). J'essaierai les bibliothèques merci (quand j'aurai le temps haha). Une autre piste est de faire intervenir le temps (x secondes pour atteindre tel degré).


03 jan. 2024

J'ai oublié, le problème du compte tour à l'époque est complètement résolu malgré le signal pourri envoyé par l'allumage.
J'ai trouvé un nouveau module d'alimentation pour éviter de cramer le système après une panne du régulateur de tension (j'ai du tout changer !) il peut recevoir jusqu'à 60v et le mettre en 12v sans broncher ! On peut voir sur la vidéo du 17v affiché sur le tableau de bord. Evidemment la batterie a aussi cramé ! Ce système est en béton !
J'ai aussi trouvé des écrans plus lumineux contre le soleil (1000 nits) mais compliqués à changer.
Entre temps j'ai aussi programmé des messages d'alerte (pression huile, trim relevé, batterie)


Phare du monde

  • 4.5 (121)

2022