Échange entre cartes

Bonjour les amis,

Avant tout pardonnez-moi si le sujet a déjà été abordé mais malgré mes recherches je n'ai pas trouvé de réponses tranchées.
Avant de m'embarquer dans cette affaire et d'acheter le matériel je voulais demander vos avis éclairés.
Je voudrais relier 2 cartes Arduino au moyen d'un câble Ethernet cat. 6A 4 paires de 100 mètres environ, si ça peut marcher pour plus tant mieux.

Ma première question est de savoir s'il faut absolument des shields Ethernet ou pas.
Quelles sont les longueurs de câble atteignables avec ou sans shield?

Ma seconde question concerne les échanges de signaux.
J'utilise plus d'entrées et sorties qu'il n'y a de fils dans le câble.
Aucune action ou réception ne se feront en même temps, c'est-à-dire que je pourrai recevoir un signal de la carte esclave tous les x temps et envoyer des signaux vers la carte esclave tous les y temps.
Une paire du câble sera dédiée en permanence à une caméra, ce signal devra être amplifié ou pas ?
Donc je voulais utiliser une paire pour les entrées analogiques, une pour les sorties analogiques et une dernière pour les entrées/sorties numériques.
Il suffit dans le programme de choisir telle ou telle sortie et lire telle ou telle entrée tous les x temps.
Est-ce réaliste jusque là ?

La dernière question concerne la carte de réception.
Disposant de quelques cartes Nano je voulais essayer d'en utiliser 2 pour couvrir les entrées et sorties nécessaires dans mon application plutôt que de racheter une autre Mega2560.
En jouant avec les TX et RX des cartes ça peut suffire ou faut-il quand même utiliser une carte unique ?

Merci à vous.

BB

Salut

S'il s'agit simplement de transmettre des données analogiques et numériques, pas de dialogue IP donc ?
Si c'est bien le cas, pas besoin d’Ethernet.
A moins que la caméra elle-même soit IP ? Dans ce cas, 100m sont une limite à ne pas dépasser.
Quant à transmettre des données analogiques sur 100m, tout dépend du niveau, des impédances en jeu, etc.
Et je n'ai pas parlé de la mise en œuvre. Aérienne, enterrée ?
J'ai déjà tiré un câble Ethernet sur 40m mais c'était temporaire et jamais le câble n'aurait tenu bien longtemps en plein soleil.
Il va falloir décrire tout ça plus précisément.

@+

Merci pour ces premiers éclaircissements.
En fait mon intention est de faire de la télésurveillance en général.
Je l'appliquerais ici à des étables avec possibilités d'agir sur des appareils ou de recevoir des données, température, bruits, ...
Je ne trouvais que des cas entre 2 cartes et je ne comprenais pas comment relier le maître aux esclaves sachant que je devais repartir du 1er esclave vers le 2ème.
En fouillant sur le net j'ai trouvé la réponse l'échange entre le maître et le premier esclave se fait en USB, donc ce point est réglé enfin si tu as d'accord ça.
Mon câble sera gainé et hors intempérie.
Il me resterait le problème de la longueur des câbles, si jamais tu avais un lien sur la théorie qui traite de ça, ça m'arrangerait bien car si tout fonctionne j'étendrais l'application à tous les bâtiments.

@+

De l'USB entre ADUINOs ? je suppose que tu veux dire RS232 ?
S'il s'agit de faire communiquer un maître et plusieurs esclaves, la RS232 n'es pas adaptée. Plutôt RS485.
Et là il te faudra autant d'adaptateurs RS485 que de cartes ARDUINO.
Et au niveau logiciel, cela risque d'être complexe.

Ceci peut peut-être aider :
https://forum.arduino.cc/index.php?topic=202851.0

Une bonne solution serait d'utiliser une carte RASPBERRY PI comme maître, avec des esclaves ARDUINO+shield Ethernet, tout le monde étant connecté à un switch Ethernet, caméras y compris
La réalisation logicielle s'en trouverait certainement simplifiée.

Encore une fois ton projet semble assez brouillon. Un schéma et une description matérielle serait bien venus :

  • capteurs
  • caméras
  • etc.

Bonjour,

une solution est de tout traiter par un réseau local ethernet :

au bout de ton câble, vers 80m (à préciser selon la configuration des lieux), tu mets un petit switch ethernet qui va séparer ton câble en 2 portions d'environ 20m, donc :
le 1er câble raccorde la caméra, et le 2ème câble raccorde un arduino n°2 (via un shield ethernet) qui te fera l'interface de tous les capteurs et autres que tu souhaites y raccorder

à l'origine de ton câble, donc vers 0m exactement, il y a plusieurs solutions, j'en cite 2 :

  1. tu mets un PC qui te servira de moniteur pour la caméra, et de console pour visualiser ou enregistrer les données en provenance de l'arduino n°2
  2. ou tu mets un autre petit switch auquel tu raccordes d'une part un moniteur pour la caméra, et d'autre part un arduino n°1 avec un affichage qui te permet de voir les donnés en provenance de l'arduino n°2

ainsi tu pourras tout faire, et seras déjà paré pour de futures extensions

Ahh merci Marco voilà la réponse que j'attendais donc d'office des shields internet.
J'ai lu tant de choses contradictoires, mettre des résistances, des condensateurs, réduire les bauds, etc.
Si jamais tu avais un lien vers la théorie des échanges de signaux par câble ça me permettrait peut-être de comprendre les limitations ou les choix de tel ou tel système, tu me ferais bien plaisir.
Une dernière question, connais-tu les limites de longueur admissible de câble et que fait-on lorsqu'on les dépasse?

Désolé Hbachetti, si j'ai posé ces questions c'est parce qu'après avoir passé beaucoup d'heures à lire sur les forums, sites etc je n'avais pas trouvé la réponse à mes questions.
Mon problème principal concernait la distance entre cartes.
Pour l'USB c'est aussi une liaison série non? en tout le S veut dire ça.
J'avais lu que la carte maître devait être connectée au PC par exemple sur le port USB pour pouvoir communiquer avec elle. Pour les autres on travaillait avec les Tx et Rx.
Pour le brouillon il n'est pas terminé mais la gaine du câble est déjà installée pour le protéger des intempéries.
Je ne vois pas en quoi mon schéma aurait rallongé mes câbles.

@+

Si jamais tu avais un lien vers la théorie des échanges de signaux par câble ça me permettrait peut-être de comprendre

les limites de longueur admissible de câble et que fait-on lorsqu'on les dépasse ?

Bonjour,
je t'ai suggéré de rester en ethernet. Tu trouveras les réponses à ces questions en googlant là dessus

que fait-on lorsqu'on les dépasse ?

on fait mal ...
dans ma proposition, j'ai mis un switch au bout de 80m de câble, cela permet de rajouter 80m supplémentaires après le switch

J'avais lu que la carte maître devait être connectée au PC par exemple

pas forcément, l'installation peut-être autonome. Dans tous les cas il faut connecter au PC (il y a plusieurs méthodes) pour programmer la carte

Pour les autres on travaillait avec les Tx et Rx

je présume que ce que tu nommes tx / rx est une liaison série immédiatement issue de l'arduino, soit la liaison série hardware ou le software serial
oui si les liaisons sont courtes
oui si elles sont longues et tu utilises par exemple du rs485 pour le transporter
non si tu utilises de l'ethernet, ou un autre support qui ne nécessite pas le tx / rx

Okkk Marco, je ne sais pas encore tout mais tu m'as tout dit.
Merci mille fois.

BB