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 - laurentr

Pages: [1] 2 3 ... 43
1
Vos projets / Re : RailCom: Générateur de CutOut avec booster
« le: mai 30, 2024, 01:24:37 pm »
Bonjour


Mes tests se poursuivent (mais le temps manque pour avancer aussi rapidement que souhaité!)

Pour des raisons de commodité j'ai porté aussi le code vers les AVRx ( AVRDx et Atmega serie0  x08 & x09).

Je me suis aussi aperçu à cette occasion d'une simple modification dont les effets de bords sont plus qu'appréciables et dont je vais devoir aussi consacre du temps de test.

En effet il ne s'agit ni plus ni moins que de pouvoir porter pour un décodeur mobile ( dit décodeur de fonctions) la capacité à emmètre des trames de messages railcom.
Le mécanisme d analyse de la trame DCC est similaire à celui déjà mis en œuvre dans cet exemple pour placer au bon moment la fenêtre CUTOUT et les actions qui en découlent.

Ici un noInterrupt() vient lors des conditions de mise en œuvre du cutout suspendre toutes les interruptions. avant de les rétablir une fois le fenêtre cutout close.
Si pour le booster ce mécanisme est suffisant pour laisser un blanc dans la trame d'émission, cela rend impossible d'utiliser d'autres interruptions pourtant nécessaires à d'autres usages dont justement Serial pour emmètre les trames de messages RAILCOM pour un décodeur mobile par exemple.

Quelle est la magie derrière? Juste une utilisation judicieuse/astucieuse des ressources des CPU et de leurs librairies.

Mon implémentation actuelle est "en dure": comprendre que j'ai volontairement choisi des attributions de broches de manière fixe et placer les alias dans le code. Aussi le mapping n'est pas dynamique avec l'utilisation de certaines ressources. Cela ne semble pas être un frein outre mesure, juste une contrainte de design de routage de PCB au plus et une portabilité réduite de la solution.
Cela fera peut-être l'objet d'un axe d'évolutions futures mais je n'ai pas trop envie de m'aventurer dans cette voie pour le moment. Si certains veulent s'en occuper... je n'ai rien contre! Bien au contraire même!! Et il faudra alors créer le post qui va bien pour discuter de cette solution... et de ses déclinaisons/usages

2
Bonjour Marc

J ai poursuivi mes tests.
Pour des raisons de commodité également j ai "refait le boulot" pour passer sur des AVRx (série ATmegax08 x09 et AVR Dx)

Une reprise complète du mapping est aussi de circonstance mais les principes restent inchangés.

Toutefois à la lumière des tests je me suis aussi aperçu d une petite modification supplémentaire à intégrer qui pourra simplifier ensuite l'usage de RAILCOM.
Les canaux d'EVENT supplémentaires sur les AVRx sont ici bienvenus pour porter le "reroutage" des éléments...

Encore des tests à faire mais le principe semble acquis pour fonctionner avec la LIB d AIKO PRAS ou des mécanismes similaires...

J en parlerai mieux sur le post liée au booster et railcom.

Ltr

3
le pricnipal alea que j ai du mal à "sizer" c est le montage COIL verd entree AVR ( ona une diode en // du coil) mais on glisse ou pas une resistance entre ce point et l entree d une broche analogique ou pas? Et si oui de quel valeur...

Car sinon je tourne le sujet mais j ai du mal...
Avec un raport disons de 300 pour 1A conso sur la voie on  a ~3mA a convertir via une resistance popur obetnir une tension...? 1000r serait bien... 3v33
Oui mais si on a 0.05 A on alors 0.16v et la on ne voit rien...
Ou alors un truc m echappe...
Rentrer directement en mA dans l AVR...? pas vu d application de ce genre encore mais pourquoi pas ( avec le resistance de PULLUP?)

Je sèche! Il va falloir sortir la plaque a essai pour expérimenter

4
Bonjour Bruno

Oui ce sont bien les 2 types de sorties
Mon montage n est pas satisfaisant au niveau des affichages led et de la commande de l opto sur la même sortie. Il faut donc les repartir sur une autres itération du PCB
Toutefois ceci ne gène en rien le bon fonctionnement du montage dont le rôle et d assurer une détection sur zone de façon binaire 0/1.

Ltr


5
Hello Marc

En montage unitaire le montage a base de NE555 reste moins chère à fabriquer que de passer par un MEGATINY come les 202 ou le  402.
Toutefois si on considère un bloc de N détecteurs rebasculer vers un CPU avec plus de broches tient la route. (mais chiffrage global à faire)

Il faudra échantillonner les mesures sur l ADC. Cela reste jouable.

Cependant dans le montage propose pour les sat autonomes V2 c est le cote unitaire et modulaire qui avait été retenu.

6
Discussions ouvertes / Re : La Cockerill au travail
« le: mai 24, 2024, 12:33:42 pm »
MAGNIFIQUE!

Du grand art (même si les mouvements paraissent à mon gout trop rapide...)

Bravo.

7
Discussions ouvertes / Re : Distrubution du Signal DCC
« le: mai 24, 2024, 12:30:39 pm »
Bonjour Bruno

On peut considérer plusieurs approches sur la problématique que tu soulignes.

Dans chacune des implémentations il y a toujours des avantages et des inconvénients.

Américains et européens ont d ailleurs des pratiques différentes.

Dans tous les cas il faut adapter les protection au niveau le plus adéquat et donc garantir que celles si sont calibrées au plus juste sur l ensemble de la chaine.

Si pour certains composants il y a des plages étendues de puissance ou de dissipation, leurs congénères dans les montages n'offrent pas toujours cette possibilité/facilité d intégration.

Protéger de 2 à 4A est souvent plus simple que de protéger au delà. (cout, choix de composants, volumes, ...)

Il faut éviter les puissance trop "excessives".
Etudier et estimer les besoins finement est une étape facteur clé de succès.
On peut pour des raisons de cout planifier des mises en œuvres intermédiaires et itératives.

On aura intérêt aussi à privilégier une uniformité dans les solutions ( bien qu'inter compatibles entre elles ( le plus souvent) , préférer rester au sein d une marque qui donne satisfaction ne présente pas que des désavantages!)

Plus pragmatiquement le problème des puissances repartie repose sur leur synchronisation inter zones. Il y a des solutions (ex le BTM-SG de LDT: https://www.ldt-infocenter.com/dokuwiki/doku.php?id=fr:ldt-infocenter)
Il faut donc étudier les mises en œuvre et viser à se simplifier les choses autant que possible.

Au niveau "bonnes pratiques" on peut considérer que l'approche 1 BOOSTER pour la TRACTION + 1 BOOSTER pour les accessoires +1 centrale est une base solide dont l'évolution et la maintenance sont simplifiés.
On ne se sert pas de la sortie track/voie de la centrale et on ne confie les conso que sur des boosters similaires pour des usages identiques.
On renforce au besoin par des boosters additionnels par secteurs.

A 20A pas de doute qu'on arrivera facilement à souder sur la voie le matériel moteur/capteur si les protections sont inadaptées.
Il faut surement se montrer plus raisonnable à ce niveau.
Quel est le bon calibre? 3A 4A 5A 8A? a chacun d y regarder de plus prêt avec les équipements mis en œuvre

Au plus prêt de la voie il est rare de dépasser 3A.( toutes échelles confondues <= au O) et on se situera plutôt à 50% de cette valeur mais plus on remonte et on consolide des sections et plus les appels peuvent arriver sur un chiffre élevé.
Il faut donc équilibrer au plus juste et plutôt "vers le bas"

Quelques dessins pourraient aider mais je n ai pas le temps la de m y coller...

Dsl
Ltr


8
Vos projets / Re : RailCom: Générateur de CutOut avec booster
« le: mai 22, 2024, 05:17:28 pm »
Bonjour

Comme je l'ai explique sur le post de présentation des fonctionnalités des AVR avec les librairies DXCORE MEGATINYCORE et MEGACOREX, je poursuis les tests en vue de la mise en œuvre.

Quelques corrections de syntaxes ont été rendues nécessaires.

Quelques tests aussi ont montré une impossibilité de combiner certains éléments (sortie PA7 du CCL0 (LUT0) sur un ATTINY826. Pas de raison identifiée. Elle est cependant opérationnelle sur un autre bloc.

Ces tests très utiles sont la pour bien vérifier le bon comportement comme attendu.

A suivre donc...

9
Bonjour

Malgré un emploi du temps pro bien chargé les tests se poursuivent.

J ai d abord des corrections à apporter dans les exemples fournis sur la partie EVENT.

Il faut en effet utiliser set_generator() en lieu et place de assign_generator() dans la syntaxe fournie


#include "Event.h"

void INIT_EVENT()
{
  //Event0.set_generator(gen0::pin_pa1); // OK BUT USE NEXT LINE FOR BETTER EFFCIENTCY
  Event0.set_generator(PIN_PA1); //BETTER & FASTER
  Event0.set_user(user::ccl2_event_a);          //EVENT A OF LUT2

  Event0.start();

  Event1.set_generator(gen::ccl2_out);
  //Event1.set_user_pin(user::evouta_pin_pa2); //route on PA2
  //Event1.set_user_pin(user::evouta_pin_pa7); //route on PA7
  Event1.set_user_pin(PIN_PA7); //route on PA7

  Event1.start();
 
}




Il est recommandé lorsque cela est possible de "passer en dur" certains éléments comme les broches d'entrée ou de sortie. ( on peut mettre des alias si besoin de portabilité et des simplifications de modifications en volume)( sinon se tourner vers assign_generator() (se rapporter aux notices des librairies)

Les tests se poursuivent.

Notez que lors de mes tests sur un ATTINY826 je ne suis pas parvenu à utiliser la sortie "MUX" vers PA7 du bloc CCL0 ( LUT0). BUG? 
Attention peu de PIN sont utilisables pour ces usages. (PORTx PIN 2 et PIN 7 si présentes!)
(voir datahseet du composant)

De plus si vous utiliser 1 sortie EVENOUTx c est exclusif sur le port en question, vous ne pouvez pas utiliser la pin alternative sur un autre event. ( en gros c est dessert OU fromage MAIS PAS LES DEUX!)
Donc vigilance dans les usages d'attribution!!

Il est donc prudent de tester unitairement aussi chaque élément!...



10
Attention dans le cas d usage du CPU vs le NE55X je ne suis pas certain de ton schéma

Voici la version de travail de laquelle j étais partie.( et qu il faut éprouver et reprendre au besoin)

Ltr


11
C est paracerque j ai déjà beaucoup travaillé en amont rien de plus!

Cette version dispose d un petit potentiomètre pour régler de façon externe au code la sensibilité du seuil de bascule ( dans le montage à base de NE555/NE556 cela se fait au 2/3 et 1/3 de V alim sur la lecture de la tension en entrée du NE55X.

Ici l idée est placer une valeur dans le code et de régler la tension lue en entrée via cet outils de réglage
Ainsi le CPU est une "boite noire" et tout se fait de façon externe.

Ce dispositif est tout aussi valable que le précèdent au rapport économique légèrement plus élevé.
Il aura peut être en revanche plus de réussite sur la bascule des led d indication que mon montage précèdent perfectible sur ce point.

12
Voila ce a quoi ressemble cette version à l étape de prototype à éprouver et completer


13
Bonjour Bruno

C est en effet une possibilité que j avais moi même aussi réalisé ( mais non publiée)

Economiquement elle semble toutefois plus onéreuse que la solution à base de NE555 que l'on va lui préféré dans ce cas.

Il faut vérifier que le montage dispose d un plot de programmation pour la broche UDPI pour un programme "in situ"

Cote code il n y a me semble t il pas trop de piège, on crée une boucle de lecture sur la broche d entrée venant de coil via le transistor et on permute les états en fonction d un seuil donné.( avec éventuellement un tempo si besoin)

On va regarder cote code ce que l on peut imaginer dessus.
Ce qui permettra de se familiariser aussi une fois encore avec cette famille de CPU.

Ltr

14
Bonjour

Le fonctionnement global de la carte de détection est validé.

Seul l inversion des leds selon l état est récalcitrant et n'est pas conforme à ce qui était attendu.
Toutefois le montage fonctionne avec un coil 1000 tours pour 1 à 4 passages sans soucis
L inversion d état en sortie se réalise bien avec la fermeture du pont de sélection.
La bascule s'opère au bout de 2.5 sec environ pour passer d'un état occupé à libre et d environ 1 sec pour un passage de libre à occupé.

Les tensions commuent alors de 0.5V à 5v et réciproquement.

Hormis donc la bascule des états des  leds selon les états qui devra être modifié au besoin tout fonctionne bien pour ce bouclier.



15
Vos projets / Re : RailCom: Générateur de CutOut avec booster
« le: mai 21, 2024, 10:49:32 am »
Bonjour Bruno

C est une option mais la mise en œuvre n'est pas si trivial.

Ltr

Pages: [1] 2 3 ... 43