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 - Jean-Luc

Pages: 1 ... 82 83 [84] 85 86 ... 93
1246
Vos projets / Re : Re : Un Arduino par canton
« le: mai 20, 2015, 05:07:16 pm »
Par contre comment gères-tu l'étage de puissance, avec des MOSFET ou un pont en H ? J'ai l'impression que les ponts commutent suffisamment vite pour suivre la fréquence de la PWM.

MOSFET car l'inversion de marche est faite via un ou des relais.

Citer
Sinon, faut-il supprimer les condos et les selfs sur les locos analogiques ? Je partais du principe que oui, vu qu'il faut le faire lors d'une digitalisation...

Condos oui, impératif. Selfs non

1247
Vos projets / Re : Un Arduino par canton
« le: mai 16, 2015, 04:36:31 pm »
Bonjour Marc-Henri

Une synchronisation est nécessaire. Sinon, les PWM peuvent se trouver carrément en opposition de phase. Même un déphasage pas très important se traduit par une accélération de la machine quand elle passe d'un canton a l'autre :



La PWM est à 32kHz

Amicalement

1248
Vos projets / Re : Bus I2C
« le: mai 13, 2015, 11:27:49 am »
Je dirais même CRC / acquittement et re-émission

Une architecture multicontrôleur pas trop compliquée est de faire un système avec un seul micro-contrôleur maitre, le contrôleur central, et une série de capteurs/actionneurs intelligents en réseau qui sont en quelque sorte des périphériques. Le contrôleur central envoie périodiquement à chaque actionneur une consigne. Vue du contrôleur ces consignes sont dans des variables et en tâche de fond ces variables sont envoyées sur le réseau. Chaque actionneur envoie périodiquement (CAN) ou est interrogé périodiquement (I2C) et fournie donc un état des capteurs. Vue du contrôleur les informations des capteurs sont des variables rafraichies périodiquement. L'avantage d'utiliser des variables rafraichies plutôt que des événements est la robustesse.

De cette manière tu évacues beaucoup de problèmes de concurrence et de partage de ressources.

Concernant l'interface I2C commandante par Linux : tu envisage de piloter le réseau via un PC ?

1249
Bibliothèques / Re : Re : Bibliothèque SlowMotionServo
« le: mai 11, 2015, 02:44:40 pm »
J'ai découvert cette semaine la librairie VarSpeedServo, avec la quelle j'ai un peu joué. C'est pratique, on peut régler la vitesse mais elle n'intègre pas de courbes à proprement parler.

C'est une modification de la bibliothèque Servo originale. Effectivement le mouvement est seulement linéaire et on ne peut pas avoir une courbe de position en fonction du temps donc pas de possibilité de simuler des accélérations et décélérations, ni des rebonds.

SlowMotionServo intègre aussi un détachement automatique quand le servo a fini son mouvement avec un délai avant détachement programmable. Cela permet d'éviter qu'il ne grogne en butée contre une force de rappel, typiquement ce que l'on a sur un aiguillage.

La contrainte de SlowMotionServo est d'appeler répétitivement update dans loop.

1250
Bibliothèques / Re : Re : Re : Bibliothèque SlowMotionServo
« le: mai 11, 2015, 12:12:37 pm »
A quoi correspond le paramètre vitesse? est ce qu'il y a une conversion à faire entre la valeur qu'on rentre dans le paramètre et la valeur de la vitesse réelle?

La position du servo est une fonction du temps. Le temps est la durée en millisecondes depuis l'instant initial où le mouvement est lancé. La vitesse est en fait un facteur multiplicatif du temps. Le temps est normalisé entre 0.0 (position initiale) et 1.0 (position finale). Par défaut la vitesse est de 1, ce qui correspond à 0,0001 de facteur multiplicatif. C'est à dire que pour atteindre un temps normalisé de 1, il faudra 10s. Dans l'exemple la vitesse est mise à 2, il faut donc 5s pour accomplir le mouvement. La position est aussi normalisée en fonction des positions min et max. la vitesse angulaire sera donc différente selon l'écart max-min.

Citer
Ceci m'amène à une autre question : Ayant commencé la programmation par l'assembleur (sur PIC), je me demandais si avec le C++ on pouvait, tout comme en assembleur, compter le nombre de cycles d'horloge utilisés par instruction? Le C++ étant un language haut niveau, il me parait difficile de déduire des temps précis uniquement grace au programme. Mais peut être que je me trompe?

On peut mais il faut aller voir le code assembleur généré par le compilateur. Quoiqu'il en soit, ici le temps en compté via un timer et est donc indépendant du code qui s'exécute.

1251
Présentez vous ! / Re : Le retour du lapin
« le: mai 11, 2015, 10:02:12 am »
Bonjour RailRabbit et bienvenue. Il y a un design de carte alimentation traction avec asservissement de vitesse ici : http://forum.locoduino.org/index.php?topic=36.0
Je n'ai pas encore donné beaucoup de détails mais ça va venir. La carte est conçue pour alimenter un canton et plusieurs cartes se synchronisent.

1252
Bibliothèques / Re : Bibliothèque LcdUI
« le: mai 04, 2015, 05:17:26 pm »
Je vais regarder ça ;)

J'en ai profité pour scinder le sujet initial

1253
Bibliothèques / Re : Bibliothèque LcdUI
« le: mai 04, 2015, 12:06:08 pm »
Oui j'ai vu  :D. Le readme est également celui d'UAD

1254
Bibliothèques / Bibliothèque LcdUI
« le: mai 04, 2015, 11:51:50 am »
Viendra ensuite LcdUI qui permet de réaliser -assez- facilement une interface utilisateur un peu évoluée (Splash Screen, écrans de saisie entier, chaine, booléen, choix multiples, enchaînements d'écrans et messages d'interruption...).

J'ai vu que tu as comité ce projet hier sur framasoft. Ça m'intéresse :) Je cherchais justement ce type de bibliothèque et je veux bien utiliser/tester ;)

1255
Présentez vous ! / Re : Bonjour d'un petit nouveau
« le: mai 04, 2015, 07:16:48 am »
Bonjour et bienvenue Athena62.  :)

Quels sont tes projets d'automatisation ?

1256
Shields et Modules / Re : Carte « Cerveau du réseau »
« le: avril 29, 2015, 09:31:48 am »
C'est l'idée oui.

Concernant XPressNet, comme cette carte est une centrale DCC, je voyais plus, comme Guillaume, la possibilité de brancher une multisouris (même si le prix de cet engin est honteux !) ou des accessoires XPressNet. C'est assez léger à mettre : une prise et un MAX485

Au niveau électronique, cette carte est simple.

1257
Shields et Modules / Re : Re : Carte « Cerveau du réseau »
« le: avril 27, 2015, 03:58:04 pm »
Comme la carte centrale sait où sont les trains, on peut peut-être envisager que la carte centrale envoie l'info (DCC/analogique) au canton précédent, alors qu'il est vide ?

Il y a une grande partie de la carte canton qui est commune :
Même en DCC, il faut inverser le sens des rails (par exemple en sortie de boucle).
Il faut bien détecter la présence des trains.

Enfin, si c'est trop dur, on peut faire des sessions DCC puis des sessions analogiques distinctes. C'est déjà pas mal.

Malheureusement ça ne peut pas marcher. Si tu examines les schémas de la carte traction que je t'ai envoyé, tu verras qu'en DCC, la diode roue libre court-circuite le signal DCC sur une 1/2 alternance.
Il faudrait un moyen de mettre cette diode hors-circuit mais ça rajoute de la complexité sur cette carte qui n'en a pas besoin.

Pour moi, soit tu fais du numérique, soit tu fais de l'analogique. Vouloir faire les deux avec la même électronique, c'est aller dans le mur : plus coûteux, plus complexe => marche jamais.

Donc je préfère faire moins mais le faire bien.

Au pire, quelqu'un voulant faire un réseau qui fait les deux peut intercaler un relai entre les alim traction et les rails afin de les déconnecter et ajouter des détections séparées pour le DCC qui seraient également déconnectées sur la condition inverse. Ça fait un peu de matériel en plus mais seul celui qui veut fromage ET dessert le paye et se débrouille avec  :)

1258
Shields et Modules / Re : Carte « Cerveau du réseau »
« le: avril 27, 2015, 10:01:28 am »
Mettre un connecteur Xpressnet (RJ12) n'est pas un problème. Il suffit de rajouter un emplacement pour ce connecteur et un MAX485.
Ce que j'avais retenu de l'article de Nicolas sur son TCO XPressnet est qu'il faut une liaison série 9 bits. Bouni a un patch pour avoir une ligne série 9 bits sur tous les Arduino : https://github.com/Bouni/Arduino/tree/ide-1.5.x-hardware-serial-9-bit

1259
Shields et Modules / Re : Carte « Cerveau du réseau »
« le: avril 26, 2015, 09:46:54 am »
Après étude du contrôleur d'interruptions du micro contrôleur qui équipe le Due, j'ai acquis la certitude que l'on peut générer des signaux DCC temporellement précis sans l'aide d'un Nano. Exit le Nano.

1260
Bibliothèques / Re : Sauvegarde de l'état en EEPROM
« le: avril 26, 2015, 09:43:37 am »
Bonjour,

La durée de vie de l'EEPROM reste un vrai problème. Si ele doit mémoriser tous les changements d'état si le réseau est piloté par ordinateur, ça fait vraiment beaucoup d'écritures. Les données constructeur sur la durée de vie sont assez conservatives et ça ne m'étonne pas que l'on puisse arriver à un million. Mais rien ne prouve que ca sera systématiquement le cas.

SavignyExpress m'avait déjà parlé de cette solution et l'idée d'en faire une bibliothèque permettant son exploitation de la manière la plus transparente possible est séduisante. 

Pages: 1 ... 82 83 [84] 85 86 ... 93