Reseau communication arduino voiture

salut a tous dans le but d'interconnecter les 3 Arduino que va comporter ma voiture (moteur, commande séquentielle de boite et tableau de bord) on ma parler du RS485 et modbus

Modbus est un protocole de communication qui a été développé par modicon (télémécanique maintenant Schneider) pour échanger des données entre automates en milieu industriel.

RS485 est une couche physique mais ce n’est pas un protocole.

Les deux choses sont différentes et il ne faut pas mélanger.

ok du coup concrètement je peut m'y prendre comment ?

et bien il faut 2 choses différentes:

  • trouver une interface RS485 pour Arduino, c-à-d une interface TTL/RS485, genre ce truc
  • trouver une bibliothèque MODBUS pour Arduino

donc il faut bien les 2 pour que sa marche ?

on ma aussi parler de maitre/esclave ?

j'aurait donc 3 Arduino

Le 1° sera un méga 2560 en speeduino pour le calculateur moteur, il recevra tous les capteurs que j'ai besoin tempé d'eau, niveau essence, tempé/pression d'huile, ratio air/essence et compte tour qu'il devra envoyer au 2° Arduino (soit un nano ou un uno) qui lui s'occupera du tableau de bord il aura un module gps pour calculer la vitesse, le 3° Arduino (un mega 2560 pro mini) s'occupera de la commande de boite et devra transmettre au 1° l'info point mort et si le 1° reçoit l'info point mort autorise le démarrage

si c'est possible j'aimerait aussi que le 3° envoi au 2° l'infos du rapport engagé mais sa c'est accessoires

J'ai oublié un truc:

  • se renseigner sur le protocole MODBUS et son fonctionnement :wink:

Mais, questions quand même (se méfier des "on m'a parlé")
il est où le MODBUS dans ton système ?
Tu as des capteurs qui utilisent MODBUS ?
Tu as déjà choisi tes capteurs ?

tu vois le nombre de questions qui arrivent (et nécessaires pour te fournir une aide)
STP essaye d'anticiper les questions en décrivant précisément ce que tu as déjà fait.

C’est pour ça que j’ai précisé que modbus ça vient d’automate industriel. Je ne vois pas l’interêt ici pour mettre en réseau 3 cartes Arduino.

Autant le RS485 a du sens mais pas modbus (mais ce n’est que mon avis)

Bon alors, c'est quoi ta question ?

ben en fait j'ai poser la question sur un discord et c'est les réponse que j'ai eu: liaison physique en rs485 et communication via le protocole Modbus

moi j'y connait rien a sa je ne sait même pas coder par moi même pour l'instant

je cherche donc bien sur la solution la plus simple la moins chéré et la plus fiable

le tous va etre monté dans une voiture destiné a la piste donc en usage sévère

Je serais toi, je commencerais par chercher les capteurs dont j'ai besoin.

les capteurs je l'ai est deja et c'est le calculateur moteur qui les reçoit et les utilise en premier

le calculateur moteur est donc un speeduino et dans les parametrages je vient de voir une option canbus

est ce que je peut pas utiliser cette fonction ?

voila ce qui est dit dans le manuel

Lire les valeurs de données analogiques et numériques d'autres appareils sur le BUS, y compris celles des appareils OEM/ECU. (à venir bientôt)``

par contre je ne sait pas si c'est la fonction complète qui est pour bientôt ou si c'est juste pour les ecu oem "edit" apparemment sa dépend des version de la carte, la version dropbear la deja en fonction c'est surement celle qui est utilisé juste en dessous

un gars c'est fait un digital dash complet avec un raspberry

Le bus CAN est utilisé en automobile pour les échanges entre calculateurs.
C'est un bus robuste et redondé donc c'est plutôt bien adapté au besoin.
Pour la nano et la mega 2560 il faudra ajouter des cartes d'interface.
Je ne connais pas la taille des librairies pour faire tourner une interface CAN et je ne sais pas si cela peut tourner sur une nano.

au pire même si je doit coller un uno sur le tdb c'est pas bien grave

je trouve ce genre de truc pour le can bus

par contre il disent "récepteur" alors que bus can c'est émetteur/récepteur normalement ?

a savoir que certaines version de la carte speeduino prenne en charge le can bus en natif

Salut.
Tu es optimiste. une UNO en usage sévère. Tu penses vraiment que ce genre de carte et ses fils DUPONT résisteront aux vibrations ?

je squiz le fils dupont,les fils seront soudé directement sur la carte au moment de l'installation dans la voiture

Pense aussi aux modules RS485 que tu as choisi, avec leurs connecteurs mâles. Il n'y a rien de pire que les connexions fils DUPONT femelle sur connecteur DUPONT mâle.
Beaucoup de travail de dessoudure en perspective, mais si tu es un spécialiste de la tresse à dessouder, pourquoi pas ?

je ne pensez pas souder dessouder et compagnie donc pas plus de boulot que sa mais c'est juste si j'arrive a trouver une solution fiable et éprouvé presque clé en main quoi

j'ai trouver un gars qui a fait une communication can entre un speeduino et un tdb digital drivé par un Raspberry je lui est posé des questions sur quel version il a utilisé et co

@nico0540 je ne sais pas si tu as bien compris la remarque de @hbachetti,
Sois tu ne dessoude rien sur ton Arduino et ton MCP2515, dans ce cas tu utilise des fils Dupond.
Sois tu dessoude tous les connecteurs pour souder les fils de connections entre tes deux PCB. je pense qu'il est aussi possible de souder directement les fils au verso du PCB contenant le MCP2515

Après il y a la carte elle même qui doit pouvoir résister au vibration, ce qui n'est pas du tout évident. de ce que j'ai vue sur le net, il y a quand même beaucoup composant traversant avec notamment des transistors monté verticalement.
Je ne dis pas ça pour te décourager, mais il faut être conscient des problématiques potentielles.

Moi je verrais plutôt un PCB (plaquette à pastilles), regroupant une carte NANO et le module RS485, ainsi que des connecteurs fiables pour l'alimentation, capteurs, etc.

Un exemple personnel :

Oui cela est aussi une possibilité, je me pose la question sur la tenu dans le temps des soudures avec le déport des masses?