Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Erik84750

Pages: 1 [2] 3
16
JMRI et Arduino / nopxor: extensions sur carte 24in/48out
« le: janvier 07, 2020, 06:14:35 pm »
Bonjour,
après avoir modifié la fantastique carte de nopxor 24in/48out à une version SMD, et y inclus des connecteurs IDC 16p j'ai entrepris un nouveau défi:
comment utiliser la carte nopxor pour commander des servos?

La résolution que je vous présente est ainsi: une carte-mère avec 1 Pro-Mini, recevant toutes les sorties de 1 ou plusieurs carte 24/48 sur plusieures cartes 16ch avec MCP23017, et sorties pour autant de servos. La Pro Mini lit les changements provenant à travers les MCP23017 depuis la (les) carte(s) 24/48. Chaque changement d'état se traduit en une commande appropriée (gauche, droite) pour le servo correspondant à la sortie appropriée depuis la (les) carte(s) nopxor 24/48.

Ci dessous se trouvent les images du progrès actuel à ces différents cartes (sauf carte-mère qui se trouve encore sur mon bureau d'étude pour exécution les jours/semaines à venir.

Donc en résumé, il s'agît d'une carte-mère avec 1 Pro-Mini (faisant tout le travail) de 100x100mm, prévue pour 8x carte MCP23017 (16ch) et un nombre à déterminer en fonction de la place restante pour des cartes PCA96685 (utilisant la version Adafruit PWM 16 ch servo controller https://www.adafruit.com/product/815 en "piggy-back").

Toutes les connections se font à travers des cables "flat" 16p et connecteurs IDC: facile à construire, commun, bon marché et fiable pour ce projet à des distances jusqu'à 10m (ou au delà, à prouver au terrain).

Les communications CMRI à travers JMRI se font vers la carte nopxor 24/48. Depuis là il n'y a que des signaux "1" ou "0" selon le besion de changer l'état d'une aiguille.

Planning: d'ici quelques semaines ces cartes seront prêts pour envoi au fabriquant, ensuite le temps me permettant quelques mois pour tout assembler + tester.




17
JMRI et Arduino / Re : Interface Arduino JMRI Cats
« le: janvier 05, 2020, 07:51:25 am »
Contrôle de signalisation, automatisation de traffic, interaction/intégration avec JMRI à travers RS485 et C/MRI,.. professionellement fait: http://cats4ctc.wikidot.com/. Et gratuit en plus; une réalisation intéressante.
A voire aussi, concernant CATS: https://www.youtube.com/playlist?list=PLrUAV9zC5JCTvqQ-XOu_xJj97GJ8Tpuk7

18
JMRI et Arduino / Re : Bibliothèque C/MRI
« le: janvier 05, 2020, 07:29:53 am »
Cela m'étonne qu'il n'y a pas eu de commentaires à ce poste très intéressant. Commander des tables tournantes en JMRI ouvre des perspectifs fascinants, et à la fois des défis de conception pas faciles (précision d'allignement).
Seul inconvénient ici c'est que la conception est limité à des tables spécifiques inclus dans la librairie JMRI; par contre cette bibliothèque sera sans doute élargi au fur et à mesure.
J'ai "book-marqué" ce poste; merci nopxor.

19
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: janvier 03, 2020, 10:14:22 pm »
Entretemps j'ai fait une version v3a de la carte nopxor 24in/48out avec des connecteurs IDC pour les 48  sorties.

changements:
1. 3x IDC connecteur 16 poles
2. enlever jumpers TX & RX car pas besoin avec Pro Mini
3. élargir les connecteurs Vcc et RS485 en modèles plus solides et plus commun
4. réduire connecteurs doubles RS485 en un connecteur RS485


20
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 30, 2019, 07:55:06 am »
Bonjour Dominique,

merci de ta réponse, ça met les choses en perspective. Je continue à explorer; ce forum est très intéressant.
Regardant ton réseau il est bien composé.
Dans ton cas je peux bien m'imaginer qu'expérimenter avec un CAN bus pose une solution élégante. Je me trouve souvant sur des forums anglophiles et je remarque que souvent leurs réseaux sont de taille différentes; donc je me demande si on a des dizaines (voire parfois de centaines) d'aiguillages, de sensors, d'animations à controller ou lire comment choisir son mode (layer 1) et protocol (layer 2) de communications.

Par example Geoff Bunza semble adhérer au concept de multiples bus DCC; un bus à travers les rails pour les loco's, des bus pour les aiguillages et autres (dont il propose un décodeur statique de fonctions qui peux controller des servos, etc..).
Ou l'approche C/MRI: bus RS485, quand-même éprouvé robuste et industriel..
Ou l'approche CAN ou ses frères (OpenLCB, CBUS)
Tout les autres: https://www.jmri.org/help/en/webtoc.shtml
Un tableau de comparaison en fonction de type et dimension de layout?

Moi en ce moment je ne vois pas la forêt à travers les arbres.

Erik

EDIT: la charpente dans to chambre est adorable! le sol c'est du parquet? Et quel joli tapis, j'en ai aussi un comme ça de mes grand-parents prêt pour mon local.

21
JMRI et Arduino / Re : Protocole de pilotage
« le: décembre 30, 2019, 07:33:46 am »
Bonjour Jean-Luc,

sujet très intéressant, et ton travail mérite énormément de respect! Concernant ta dernière réaction

Citer
PS : J'ai examiné la bibliothèque de madleech : https://github.com/madleech/ArduinoCMRI. Elle ne me satisfait pas.
Au moins deux bugs sont présents : lignes 115 et 130 les tests sont faux
La transmission fait une attente active (appel de delay) de 50ms, bloquant les autres opérations sur la carte
La transmission est monolithique et bloque potentiellement sur le buffer d'émission.

ne serait-il pas utile de lancer un "issue" sur le github de madleech? Son site est fortement recommandé dans le milieu modelisme anglophile. Donc ta contribution serait bien appréciée je pense.

Salutations,
Erik

22
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 29, 2019, 07:15:37 pm »
CAN ou I2C ou...

I2C: J'ai fait un peu de recherche et il est bien documenté que I2C est conçu pour communications sur pcb, distances de qq centimètres. Il y a évidemment des projets pour but de prouver que des distances de plusieurs mètres soient faisables, il y a des chips (PCA9615 et autres) ayant pour but de communiquer par I2C sur des dizaines de mètres mais fin du jour I2C n'est pas conçu pour ça. Donc même si j'ai commandé quelques IC's pour expérimenter, ce sera tout ce que j'en ferais.

CAN: conçu par Bosch pour automobile, ensuite un standard industriel, selon ce que j'ai lû il s'agit non seulement d'un layer physique (model OSI layer 1), c'est également un protocol layer 2: très performant mais à mon avis, pour le modelisme, c'est comme tirer dessus une moustique avec un calibre .50. Le débugging au niveau de microcontrolleur est très difficile, les spécifications sont loin au dessus de ce que exigerait le modelisme féroviaire, et l'appliquer pour des simples contrôles d'aiguillages je pense ne pas passer mon temps.

RS485: mode de transmissions adhéré par C/MRI, OSI layer 1 (physique, pas de protocol standard; le protocol utilisé en modelisme est celui développé par Bruce Chubb), bien établi, multinode, half-duplex (physiquement le même que ethernet sauf que lui c'est full duplex et de point à point), et bien éprouvé pour le modelisme; puisque C/MRI l'utilise, à mon avis la route que je choisirait.

Mais maintenant à propos des modules d'ici dessus: un bon ami vient de me demander si c'est bien choisi de commander 48 servos depuis une node. Sauf qu'n cas d'un yard gigantesque il n'y aurait pas vraiment besoin. Reste donc à déterminer quel est le montant d'aiguillages qu'il faudrait commander depuis une node pour un modelisme de train moyen: six, dix, quinze,.. mais peu probable que ce soit plus.
Donc il s"avère que ce serait plus pratique d'avoir plusieures nodes repartis sur un layout ayant chaque au maximum une dixaine, max 16 aiguilles à commander.

Et alors, pourquoi ne pas utiliser l'approche de Geoff Bunza: https://model-railroad-hobbyist.com/node/24316?page=51 ? Où utiliser C/MRI mais avec des nodes controllant les aiguilles aux allentours de quelques mètres maxi?



23
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 28, 2019, 09:26:29 pm »
Bonjour Dominique,
merci pour ces infos! J'explore le CAN bus. S'il est plus utilitaire, c'est la façon de procéder.
Salutations,
Erik

24
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 28, 2019, 06:40:16 pm »
Bonjour Eric,

oui tu avais fait un travail très original et bien recherché.
Merci pour ta réponse.

Entretemps j'avais réfléchi comment réaliser une interface pour 48 servos.
Je pense le faire de manière suivante:
1. fabriquer une carte (SMD) pour 4 MCP23017, adressable, I2C, utilisant interrupts sur Pro Mini, 16ch input, un peu comme ici http://macetech.com/store/index.php?main_page=product_info&products_id=23, mais pour moins de 4EUR tot inclus, pcb avec composants soldés.
2. Pro Mini (software from https://www.best-microcontroller-projects.com/mcp23017-interrupt.html et https://learn.adafruit.com/16-channel-pwm-servo-driver
3. fabriquer une carte (SMD) interface pour PCA9685 I2C 16ch PWM controlleur (lien ici dessus)
4. songer à une façon de lier les trois (ou pas, comme c'est du I2C).

Les MCP23017 sont déjà commandés, pas bon marché: le mieux j'ai trouvé à 11EUR/20 transport inclus. Les PCA9685 aussi commandés; tout en SOP.
Quelques semaines (il faut quand-même digérer le Nouvel An) de délai.

Bonne Année à tous!
Erik


25
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 27, 2019, 10:07:41 pm »
Cette carte donne 48 output digital. Pour commander 48 moteurs servo, comment procéder le mieux?
1. intermédiaire avec Mega plus module Adafruit I2C 16 channels PWM?
2. intermédiaire avec Uno plus matrice pour réduire le nombre d'input digital requis plus module Adafruit I2C 16 channels PWM?
3. autre?

26
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 27, 2019, 09:55:41 am »
Et voici une version de PCB (version 2c) avec trou de montage M4 inclus.

27
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 27, 2019, 09:54:03 am »
Voice la liste des composants.

La PCB vient d'être lancé hier soir, 2 semaines pour arriver, et si le temps permets, une ou deux semaines pour assembler: photo sera posée ici.
Salutations,
Erik

28
JMRI et Arduino / Re : 24 IN / 48 OUT card for JMRI
« le: décembre 26, 2019, 07:42:53 pm »
Oui tout à fait! Quelle honneur pour moi!
Je souhaite toute l'équipe de Locoduino des très bonnes fêtes de fin d'année, et j'espère vous rencontrer à Lille au foire du modelisme trains (à Pâques?).
Erik

29
JMRI et Arduino / 24 IN / 48 OUT card for JMRI
« le: décembre 26, 2019, 02:57:27 pm »
Bonjour, suite à un article par NOPXOR sur https://www.trainboard.com/highball/index.php?threads/24-in-48-out-card-for-jmri.116454/#post-1118030 , dont je pouvais déduire qu'il est français, je voudrais faire un suivi sur ce forum.
L'article par nopxor concerne une module Input & Output parallel qui communique avec JMRI à travers USB (sortie JMRI) transformé en RS485 (conforme protocol C/MRI).
La beauté de ce projet est qu'il conforme à tous les requis C/MRI, qu'il fait émulation transparent du hardware C/MRI, qu'il est équipé de software développé par nopxor, et qu'il peut être équipé d'un MCU Arduino Nano (version nopxor) ou d'un MCU Arduino Pro Mini (ma version adaptée).

En plus, ce qui est merveilleux, c'est que nopxor a mis disponible tout le nécessaire pour la fabrication: le hardware (Eagle .sch, .brd et le partslist) ainsi que le software pour l'Arduino (tout en annexe)!

En ce qui concerne l'architecture, il s'agit d'une module connectable par JMRI (à travers le protocol C/MRI), et que plusieurs peuvent être installé en réseau "daisy-chained" (en série) sur le layout des trains (communications par RS485: 2 fils "twisted", une seule porte USB). Les commandes pour les sorties peuvent être automatisés à travers JMRI, les entrées peuvent être utilisés par JMRI également.
On peut par example même utiliser les sorties pour commander de aiguilages servo (il faut alors ajouter un interface avec un controlleur qui est programmé pour servos: il y a pleines de possibilités, par example des modules Adafruit (ou Ali Express) 16 channels PWM, I2C https://www.adafruit.com/product/815.

Ma contribution est que j'ai adapté le projet de nopxor en module pour SMD, pour Arduino Pro Mini, et ayant réduit les dimensions du pcb par la moitié.

Les fiches gerber sont utilisables chez elecrow.com.

EDIT: j'ai remplacé version 2a par version 2b: fonctionellement complètement identique, mais avec une toute petite modification esthétique de l'emplacement de quelques condensateurs: C5, C8 et C9.

EDIT 3/1/2020: il y a une erreur de connection dans la version dessous ainsi que dans la version 2b; une trace oubliée entre IC15 pin 13 et terre. Cette erreur est corrigée dans les version v2c et v3, inclus plus bas dans mes messages.

30
Bonjour @ tous  8)

Le problème j'ai rencontré n'est pas lié à un type de décodeur, mais était identique avec plusieurs décodeurs testés.

J'étais en version DCC++ : Mega + shield Ethernet + shield Motor. Connexion Ethernet avec JMRI

La simple lecture / identification d'une machine via DecoderPro prenait......  5 minutes ! ! ! Avec aléatoirement des erreurs de lectures.

Je passe en version DCC++ : Mega + shield Motor. Connexion USB avec JMRI

Disparition totale du problème, lecture / identification <15 secondes.

Je me dis mon shied Ethernet est HS. Je monte une centrale DCC++ Mega + Ethernet + Motor complètement neuve : Lecture / identification problématique. On passe en USB sans enlever le shield Ethernet : aucun souci lecture / identification < 15 secondes.

J'ai arrêté de chercher, mais je n'aime pas ne pas comprendre.....

Voila Christophe ma contribution   ;) ;) ;)

Bonnes vacances @ ceux qui y sont, bon courage aux autres

Bonjour,

il y a des problèmes de termination des signaux ethernet sur certaines modules ethernet shield pour Arduino: https://forum.arduino.cc/index.php?topic=389325.0

Changer ces résistances n'est pas un travail ordinaire, mais faisable avec un fer à souder pour des SMD.

Salutations,
Erik

Pages: 1 [2] 3