Forums LR PRESSE

Où il est question de trains, petits et grands

  • Advertisement

iChooChoo : Pilotage et automatisation de réseau

Toutes les discussions sur l'Arduino !

Modérateur: MOD

iChooChoo : Pilotage et automatisation de réseau

Publié: Mar 12 Jan 2016, 16:54 
Bonjour à tous !

Je suis inscrit depuis quelques semaines sur un forum dédié au N, je viens m'inscrire désormais ici à la fois pour découvrir de nouvelles choses liées au modélisme ferroviaire, et pour vous faire part de l'ouverture de mon nouveau petit site sans prétentions présentant mon projet nommé "iChooChoo" qui consiste à réaliser un système de pilotage et/ou automatisation de réseau de modélisme ferroviaire, à base d'Arduino et Raspberry Pi, et pilotable par Smartphone/Tablette/PC.

Je suis fan de l'échelle N par choix tout personnel, mais les principes de ce système n'ont évidemment aucun lien avec l'échelle, je me suis donc dit que ça pourrait intéresser du monde ici, d'ailleurs je n'ai rien à vendre ;)

Il ne s'agit pas de concurrencer Locoduino, bien au contraire, mais plutôt de le compléter car il ne s'agit pas de présenter comment utiliser un Arduino pour effectuer des tâches sur le réseau, mais plutôt de présenter un système bien plus complet qui utilise l'Arduino comme esclave en fin de chaîne pour exécuter les ordres.

Mon but est de rendre le système totalement "OpenSource", afin que tout le monde puisse en profiter ! Cela dit, je n'en suis qu'au début donc il faudra plutôt suivre le projet au fil du temps avant d'avoir une première version utilisable Wink

J'espère que ça en passionnera plus d'un !

Le site : http://ichoochoo.ztb.fr
Sierramike
 
Messages: 12
Inscrit le: Mar 12 Jan 2016, 16:47
Echelle pratiquée: N
Prénom: Stéphane

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Mar 12 Jan 2016, 23:56 
Bonjour,

Je suis aussi parti sur l'idée d'un système dans lequel l'informatique (un petit Pi doit être largement suffisant) est le centre de contrôle qui envoie des commandes à une Arduino qui elle-même les répercute vers d'autres Arduino branchées en réseau à la première. J'ai déjà présenté sur ce forum un module pour piloter de signaux SNCF. Je pense qu'on peut réaliser dans la même optique un module pour piloter des aiguillages (un à déjà été présenté par Zébulon91), ou encore un pour la rétrosignalisation (à base de détecteurs à ultrasons ?)

Mais contrairement à Locoduino, je ne veux pas me lancer dans du tout DCC car je pense que les accessoires (feux, aiguillages, ...) n'ont pas besoin d'un telle artillerie lourde (protocole complexe, circuit 12-14V) pour être pilotés.
notix
 
Messages: 29
Inscrit le: Lun 09 Mars 2015, 22:52
Echelle pratiquée: N

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Mer 13 Jan 2016, 00:04 
Mais il ne s'agit pas forcément de piloter les accessoires en DCC sur Locoduino. C'est nécessaire si on utilise une centrale du commerce mais si on fait soi même, ça ne l'est pas.

Personnellement je suis en analogique
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Mer 13 Jan 2016, 23:37 
jlb a écrit:Mais il ne s'agit pas forcément de piloter les accessoires en DCC sur Locoduino.

Mea culpa, mon clavier a fourché, je pensais au projet "MyCube" qui est du "DIY" pour faire une centrale DCC avec une SPROG et un Raspberry Pi. Mais je garde sous le coude les articles de Locoduino pour piloter des trains en DCC avec une Arduino (mais pas les accessoires :mrgreen: ).
notix
 
Messages: 29
Inscrit le: Lun 09 Mars 2015, 22:52
Echelle pratiquée: N

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Jeu 14 Jan 2016, 12:59 
Bonjour,
Quand j'essaie de me connecter sur l'adresse: http://ichoochoo.ztb.fr
internet me renvoie un message d'erreur : Error establishing a database connection. Est-ce que l'adresse est exacte?
Choisir, c'est déjà renoncer!
Petitrain
 
Messages: 29
Inscrit le: Ven 04 Juil 2014, 12:09
Localisation: Haut-Var
Âge: 66
Echelle pratiquée: HO
Prénom: Gérard
Club: CMMF Mouans-Sartout

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Jeu 14 Jan 2016, 13:55 
Oui c'est la bonne adresse. C'est corrigé, j'ai des petits soucis de serveur, je vais transférer prochainement chez OVH, ça ira mieux !
Sierramike
 
Messages: 12
Inscrit le: Mar 12 Jan 2016, 16:47
Echelle pratiquée: N
Prénom: Stéphane

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Dim 17 Jan 2016, 11:56 
Hello,
J'ai parcouru (certes un peu rapidement) ton projet que semble bien alléchant !
Mais je vais me permettre de partager une expérience décevante dans le domaine, puisque, comme tu as pu le voir, je suis depuis quelques temps sur un projet du même ordre que le tient, ou tout du moins qui pourrait être complémentaire.
Bref, tu envisages d'utiliser un bus I2C : c'est là que le bas blesse ! C'était aussi mon idée de base, mais après mise en pratique sur un réseau de dimensions moyennes (3m x 1.70), j'ai éprouvé de grandes difficultés à stabiliser le système. En effet, le bus I2C dans sa version de base est assez sensible aux parasites, particulièrement aux harmoniques générées par nos engins aux prises de courant (rails/roues) assez douteuses, et encore plus particulièrement lors de l'utilisation du DCC à "proximité" des cartes...
C'est après de longues heures de recherche de ce qui paraissait au début comme un bug logiciel que j'ai repris toute l'architecture du bus pour le convertir en RS485 (bus différentiel), et m'affranchir de la problématique des parasites.
Voilà ce petit retour d'expérience...

Bonne continuation ;)
Zebulon91
Bavard
 
Messages: 68
Inscrit le: Dim 16 Mars 2014, 18:39
Localisation: Villebon sur Yvette (91)
Âge: 48
Echelle pratiquée: HO
Prénom: Michel
Club: AMF Villebon/Yvette

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Sam 23 Jan 2016, 00:17 
Bonsoir, j'ajouterais à ce qu'a dit Zébulon qu'avec un bus 485 tu auras bien plus de libertés pour l'adressage des modules sur ton réseau, en théorie jusqu'à 32. Sur un bus I2C de nombreux constructeurs n'autorisent que 2 ou 3 bit d'adresse pour leur composant.
notix
 
Messages: 29
Inscrit le: Lun 09 Mars 2015, 22:52
Echelle pratiquée: N

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Sam 23 Jan 2016, 09:25 
Pour ma part je conseillerais plutot le bus CAN.

Le RS485 ne définit que la couche physique. Toutes les couches protocolaires sont à gérer en logiciel, sont complexes et mangeront beaucoup de performances ne serait-ce que parce que tous les nœuds devront déterminer par logiciel si le message leur est destiné ou pas. Un contrôleur CAN gère toutes les couches jusqu'à la couche applicative.

Voir :
http://www.locoduino.org/spip.php?article130
http://www.locoduino.org/spip.php?article148
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Sam 23 Jan 2016, 18:39 
Oui le CAN a l'air pas mal, mais peux-tu nous proposer un module prêt à être utiliser comme on trouve des modules RS-485 pour 1,5 € les deux ? Le module que tu as conçu est bien mais ça fait du boulot de soudure et il faut avoir les PCB.

Pour le protocole sur le RS-485 j'ai repris celui proposé par Zébulon, ça fonctionne mais il faut quelques lignes de code. Alors que pour attaquer ton module CAN on passe par le bus SPI. Effectivement c'est plus simple.

Mais étant plus informaticien que électronicien (et surtout que soudeur :mdr2: ) je préfère les lignes de code :mrgreen:
notix
 
Messages: 29
Inscrit le: Lun 09 Mars 2015, 22:52
Echelle pratiquée: N

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Sam 23 Jan 2016, 18:51 
Je pense également que le RS485 est (très) loin derrière concernant les performances. En perfs brutes c'est 6 fois moins rapide (au moins) puisque limité par le débit de la ligne série et comme l'arbitrage (à moins que vous ne soyez pas multimaître), le CRC, l'acquittement et le filtrage sont gérés en logiciel c'est sans doute bien moins. De plus vous perdez la ligne série pour le debug.

J'ai fait mon module CAN à une époque où il n'y avait pas d'offre à prix raisonnable. Depuis de l'eau a coulé sous les ponts :

http://www.electrodragon.com/product/mc ... board-spi/
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Sam 23 Jan 2016, 20:21 
Bonjour à tous,

Cette discussion entre les modes de communication est fort intéressante. Le bus CAN est effectivement un excellent choix je pense en matière de flexibilité, d'ailleurs je rêve de le maîtriser dans ma voiture pour y faire quelques ajouts ;)

Cela dit, il impose de rajouter une certaine complexité au niveau du raccordement et un coût supplémentaire pour chaque sous module. Sans compter que le bus SPI consomme tout de suite au moins 4 pins. Evidemment sur un Arduino Mega ce n'est pas grand chose, mais sur un Nano c'est déjà beaucoup. J'ai fait un choix d'architecture où je privilégie la généricité, donc des petits modules standards et peu chers. Un Mega c'est tout de suite plus cher, et avec tant de pins, il y a fort à parier que chacun aura des raccordements bien différents et qu'il faudra un programme dédié à chaque module.

Côté espace d'adressage, comme les esclaves sont des Arduinos, c'est moi qui décide de l'adresse que je veux lui donner, et à ce titre, j'ai (si je ne me trompe), au moins 112 adresses disponibles, donc bien plus que les 32 du RS485. (Sur le réseau de mon frère en tour de pièce, 32 modules Nano risquent de ne pas suffire).

Sinon, je retiens les remarques concernant les interférences, as-tu testé en faisant un raccordement avec du câble Ethernet FTP (c'est à dire blindé) ? Ce type de câble ne coûte plus très cher ...
Sierramike
 
Messages: 12
Inscrit le: Mar 12 Jan 2016, 16:47
Echelle pratiquée: N
Prénom: Stéphane

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Sam 23 Jan 2016, 20:37 
Le nombre de pins occupées n'est pas méchant. On a quand même pas mal de pins disponibles sur un Nano pour implémenter ses fonctions. On peut par exemple piloter 8 servomoteurs avec un Nano privées des 4 broches nécessaires au SPI. Au pire il y a des expanseurs (MCP23S17 de Microchip en SPI) qui ajoute 16 I/O numériques.

L'inconvénient de l'I2C (en plus du manque de fiabilité, c'est un bus conçu pour la communication entre composants sur une même carte) est que tu ne peux pas facilement être multimaître en tout cas pas avec des connexion longues. L'architecture logicielle est donc plus complexe puisque le contrôleur doit interroger tous les nœuds pour connaître l'état des capteurs.

L'adressage dans le bus CAN est très différent. Un message n'est pas destiné à un nœud en particulier, un message possède un identifiant qui caractérise le paquet de données qu'il contient. Les nœuds intéressés par cette donnée reçoivent ce message, les autres l'ignorent sans intervention du logiciel. On peut donc facilement diffuser une information à plusieurs nœuds. C'est extrêmement souple et modulaire.
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Dim 24 Jan 2016, 00:59 
jlb a écrit:De plus vous perdez la ligne série pour le debug.

Je gère mon réseau RS-485 avec Software Serial donc je garde le port série pour le debug.
J'ai fait mon module CAN à une époque où il n'y avait pas d'offre à prix raisonnable. Depuis de l'eau a coulé sous les ponts :

http://www.electrodragon.com/product/mc ... board-spi/

En fouillant un peu sur le net, on trouve un module identique sur eBay, sous la référence "MCP2515 TJA1050" pour un peu plus de $2.00. Je vais m'en commander deux pour essayer.
Y a-t-il un nombre limité d'éléments sur le réseau comme en RS-485 ?
serriamike a écrit:Côté espace d'adressage, comme les esclaves sont des Arduinos, c'est moi qui décide de l'adresse que je veux lui donner, et à ce titre, j'ai (si je ne me trompe), au moins 112 adresses disponibles, donc bien plus que les 32 du RS485. (Sur le réseau de mon frère en tour de pièce, 32 modules Nano risquent de ne pas suffire).

Pour augmenter l'adressage en RS-485, tu peux essayer d'utiliser deux ports par Software Serial. A priori il faut un peu bricoler si tu veux recevoir de données sur les deux ports en même temps, mais il n'y a pas l'air d'avoir de soucis pour émettre.
notix
 
Messages: 29
Inscrit le: Lun 09 Mars 2015, 22:52
Echelle pratiquée: N

Re: iChooChoo : Pilotage et automatisation de réseau

Publié: Dim 24 Jan 2016, 01:34 
Comme je ne suis pas quelqu'un de têtu, je viens de commander 5 de ces modules CAN pour 1,60€ pièce, pour faire quelques essais !

Mais je vais tout de même continuer les tests I2C car j'aime valider ou infirmer mes choix par mes propres constatations ;)

Néanmoins merci pour le tuyau des modules CAN à bas prix, ça m'a convaincu, car à €7+ je serais directement parti sur une connexion Ethernet !
Sierramike
 
Messages: 12
Inscrit le: Mar 12 Jan 2016, 16:47
Echelle pratiquée: N
Prénom: Stéphane

Suivant

Retour vers Arduino

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 3 invité(s)