Bonjour à tous,
Quelques commentaires pour alimenter la discution :
En ce qui concerne le choix du coup de poing d’urgence qui met à VCC (5V, donc en simulant un court-circuit ) les entrées A0 et A1, donc la sortie de l’ampli op, cela induit un temps de réponse non négligeable du fait du lissage de la mesure de courant.
Pourquoi n’avoir pas branché ce coup de poing sur une autre pin du Nano?
La différence principale entre l'utilisation d'un coup de poing et la détection d'un court-circuit est la temporalité. Dans le cas du coup de poing, le modéliste est (normalement) en avance de phase par rapport à l'arrivée de l'évènement fâcheux. Il va s'avancer le plus rapidement possible vers sa centrale pour arrêter la génération du signal. Ce temps nécessaire au déplacement est énorme si on se place à la vitesse du microcontrôleur. Aucune commune mesure avec la détection d'un court-circuit pour laquelle la réaction doit être la plus rapide possible.
Donc, à mon avis, il n'est pas utile de dédier une broche spécifique à cette alerte et de surcroit, effectuer une mesure supplémentaire dans la boucle de génération du signal DCC qui est déjà suffisamment chargée pour un Nano.
Si je posais le cadre c est pour une question simple d une application que j ai en tète: le auto sens de phase entre booster differents ou la gestion de boucle de retournement ( type LENZ LK200)
qui repose sur le principe d une détection très rapide de court-circuit pour une inversion de phase
Pour ma part, je trouve hallucinant de la part des fabricants de vouloir utiliser un court-circuit pour effectuer un changement d'état. Là où j'ai vraiment du mal, c'est comment faire la distinction entre une véritable alternance d'alimentation et un court-circuit qui se produirait sur l’aiguillage !
Ma réflexion pour ce type de montage est déjà avancée : j'utiliserai deux cantons en début et en fin de boucle pour détecter une entrée. Lorsque la loco atteint le canton de sortie, l'aiguillage est modifié et le changement d'alimentation est réalisé par un relais bistable (consommation ponctuelle de courant). Le montage sera entièrement autonome. La loco suivante qui entrera dans la boucle, fera son demi-tour dans l'autre sens.
Ce genre de circuit doit déjà exister. Mais c'est le plaisir de le réaliser soi-même...
Je pense que, comme cela a été un long débat pour les réseau locaux, le bus I2C avec sa gestion des collisions n'a pas de temps de transmission déterministe. Problème si il faut gérer un court-circuit alors que l'I2C est occupé ailleurs.
Entièrement d'accord avec msport ! Ajouter un délai supplémentaire (trame I2C) pour transférer une information de consommation de courant ne me paraît pas aller dans le bon sens. En général, on essaye de réduire au maximum le délai de transmission de l'information.
Du coup, tous ces échanges ont alimentés ma réflexion concernant le temps de détection d'un court-circuit par le Nano dans le cadre de la micro centrale (on revient au sujet de ce fil).
J'ai fais plusieurs tests en modifiant les paramètres de mesure de courant et en affichant le timing du microcontrôleur.
J'obtiens cette suite au moment de la détection du court-circuit :
<horodatage> <valeur mesurée>
1721717 21.00
1721726 20.00
1721734 20.00
1721746 21.00
1721758 385.00
<p2>
1721773 222.00
1721781 192.00
1721791 166.00
1721804 143.00
Le seuil du paramètre CURRENT_SAMPLE_MAX est fixé à 300. Le court-circuit se produit entre 1721746 et 1721758, soit un délai maxi de 12 ms. On peut voir le retour de la commande d'arrêt (<p2>).
Pour arriver à ce délai avec un Nano voici les paramètres modifiés :
CURRENT_SAMPLE_SMOOTHING 1
CURRENT_SAMPLE_TIME 5
Avec ce paramétrage, le lissage n'est plus réalisé. Le circuit de mesure du courant à base d'ampli opérationnel permet donc de ne plus avoir à réaliser de lissage et ainsi optimiser le temps nécessaire à la détection d'un court-circuit.
Qu'en pensez-vous ?
NitraThor.