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 ... 89 90 [91] 92 93
1351
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 24, 2015, 04:07:08 pm »
Nickel !

1352
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 23, 2015, 03:11:25 pm »
Bonjour,

Voici la liste des composants : https://dl.dropboxusercontent.com/u/67740546/module-CAN.bom.html
Et le schéma : https://dl.dropboxusercontent.com/u/67740546/schematique_module_CAN.pdf

Les deux résistances de 4,7kΩ et la capa de 1nF manquent. Ces composants, avec la diode et le poussoir constituent la circuiterie de reset telle que décrite dans la datasheet du MCP2515. Ça fonctionne sans car la bibliothèque CAN du 2515 effectue une séquence de reset par soft.

Dans le sachet de composants, les deux capas crême marquées J163 (de mémoire) sont celles de 100nF. Les petites marrons en forme de lentille sont celle de 22pF.

Les branchements avec un Uno/Pro Mini/Nano

SPI

Module CAN <--> Arduino Uno/Pro Mini/Nano
SCK <--> 13 (SCK)
SO <--> 12 (MISO)
SI <--> 11 (MOSI)
CS <--> 10 (SS)
INT <--> 2 (INT0)

Alim

GND  <--> GND
VDD <--> 5V

Les straps

5V-RX : court-circuite le diviseur de tension sur RX. Mettre pour un Uno, ne pas mettre pour un Due
RX : connecte à sortie RX du 2515 au RX du 2551. Mettre pour un Uno, ne pas mettre pour un Due
TX : connecte à sortie TX du 2515 au TX du 2551. Mettre pour un Uno, ne pas mettre pour un Due
TERM : Termine l'extrémité du bus. Mettre sur les nœuds qui sont à chaque extrémité.

Le logiciel

La bibliothèque est ici :

https://github.com/Seeed-Studio/CAN_BUS_Shield

Bonne soudure !

1353
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 21, 2015, 08:30:46 am »
Bonjour,

Hier soir j'ai monté un second module et fait communiquer deux Arduino. Les essais précédents étaient entre ma carte Olimex et un Arduino Uno. J'ai fait une petite appli simple où le premier Arduino envoie un octet sur le CAN et où le deuxième le récupère et commande une PWM connectée sur une LED. La valeur varie continuement entre 0 et 255 et est envoyée toutes les 10 ms.

Tout marche bien.

La bibliothèque pour le 2515 est fonctionnellement correcte (à part le réglage de la vitesse du bus) mais je trouve son interface pas très agréable. Par exemple la broche permettant de sélectionner le circuit, SS, est en dur ce qui nécessite d'éditer le .h de la bibliothèque. Il n'y a pas d'objet pour représenter un message CAN, ce qui oblige à trimbaler dans le code l'identifiant, si la trame est standard ou étendue et sa taille. Ça serait plus sympa si on pouvait initialiser un objet message et ensuite l'utiliser en ne changeant que les données. Je vas arranger ça.

Je vais également faire un sketch de moniteur CAN, ce qui permettra de brancher un Arduino sur le bus et de l'espionner.

1354
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 19, 2015, 07:50:32 pm »
Merci Guillaume,

J'ai monté un module et ça fonctionne impec.



J'ai fait une vidéo du montage :


1355
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 19, 2015, 11:05:55 am »
La commande est arrivée. Nous avons 11 pièces du module CAN.

Une petite photo :




1356
Vos projets / Re : Un Arduino par canton
« le: janvier 18, 2015, 02:45:55 pm »
Il y a deux partie distinctes.

La première à réaliser est l'alimentation de la locomotive, ce que fait un décodeur de locomotive en numérique. La différence principale est qu'en analogique, c'est le canton qui est alimenté et non la locomotive. La locomotive change donc d'alimentation au fur et à mesure de son parcours.

Il y a deux façons de faire :
- avoir une collection d'alimentations centralisées, autant que tu veux avoir de locomotive en fonctionnement sur le réseau. Une série de relai permet de connecter chacune de ces alimentation a un ou plusieurs cantons.
- avoir une alimentation par canton sans relais pour l'y connecter.

Dans le premier cas, il y a énormément de câblage et la régulation de vitesse n'est probablement pas possible. Dans le second cas la regulation de vitesse est possible mais il faut que les PWM des alimentations soient synchronisées. Si on veut une marche régulière et de très bons ralentis, la seconde solution est la meilleure.

La 2ème partie est le suivi des convois sur les cantons. C'est la même problématique en analogique et en numérique. Habituellement c'est réalisé par un logiciel qui tourne sur un PC. Il y a deux parties dans cette partie : la sécurité c'est a dire éviter que les trains n'entrent en collisions via un bloc automatique. Le routage des trains pour automatiser la circulation. C'est a gérer de manière centralisée sur un Arduino dédié.

Mais ou, une fois tout cela en place, on peut piloter un réseau analogique comme un numérique.

Concernant SyncPWM, j'en suis l'auteur. C'est une des briques de base de la seconde solution. 

1357
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 18, 2015, 12:03:18 am »
Merci Guillaume j'espère qu'on pourra se rencontrer une prochaine fois.  ???

1358
Présentez vous ! / Re : Content d'être avec vous !
« le: janvier 17, 2015, 05:50:14 pm »
Ahhhhhhhhh ;D enfin !

1359
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 17, 2015, 12:05:13 pm »
Thierry, Dominique, comme on se voit jeudi 22, je vous remettrai le matériel en main propre.

1360
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 16, 2015, 11:48:52 am »
La commande est à Charles de Gaulle !  :o

1361
Vos projets / Un Arduino par canton
« le: janvier 15, 2015, 06:36:28 pm »
Bonjour,

Il s'agit ici de faire du cantonnement sur un réseau analogique. L'idée est de pouvoir piloter un réseau « comme en numérique » avec une grosse différence : les « décodeurs » sont associés aux cantons et non aux locomotives.

Ce n'est pas une idée nouvelle, feu Driving Railways faisait cela. Mais il s'agit d'aller un peu plus loin en ayant une régulation de vitesse (compensation de charge dans le jargon).

Une première solution est de faire un arbre de relais qui permet d'associer une alimentation à un ou plusieurs cantons.

Une autre solution consiste à associer une alimentation pilotée par un Arduino à chaque canton. En plus de l'alimentation du canton, il assure la détection de présence et, idéalement, la mesure de vitesse de la locomotive qui occupe le canton.

C'est cette seconde solution qui est choisie.

Une première chose à faire est de synchroniser les PWM de tous les cantons. En effet, si les PWM ne sont pas synchrones, une locomotive à cheval sur 2 cantons recevra une impulsion plus longue et verra sa vitesse modifiée tant qu'elle est à cheval. Elle fera donc potentiellement un petit bond à chaque passage d'un canton au suivant.

Voici donc une bibliothèque qui assure la synchronisation des PWM de plusieurs Arduino. Elle utilise le timer2 dans un mode de PWM particulier qui permet d'ajuster finement la fréquence.

Un Arduino maître diffuse un signal de synchronisation aux autres Arduino, le code exemple est dans MasterClock. Le signal de synchro sort sur la broche 3.

Avec l'exemple SyncPWM, chaque Arduino affecté à un canton génère une PWM synchronisée sur la broche 3 et reçoit le signal de synchro sur la broche 8.

La fréquence de la PWM est d'un peu moins d'1kHz. l'erreur maxi entre 2 PWM, du moins ce que j'ai pu mesurer à l'oscillo, est d'environ 8µs. Les valeurs possibles pour la PWM vont de 0 à 254.

À 1kHz, le signal de synchro devrait pouvoir voyager sur une certaine distance (combien ? faut voir). Au delà, il faut passer en différentiel.

Si vous avez des questions, n'hésitez pas.

La bibliothèque :

https://dl.dropboxusercontent.com/u/67740546/SyncPWM.zip

1362
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 12, 2015, 06:39:45 pm »
Bonsoir,

La commande a été expédiée de Chine hier. Stay tuned :)

1363
Infos et bonnes affaires / Re : Bonne Année
« le: janvier 10, 2015, 07:01:05 pm »
Bonjour Hubert et merci.

Bonne année et bienvenue parmi nous  ;)

1364
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 08, 2015, 08:59:14 am »
Bonjour,

ElectroDragon m'informe que les fichiers de production sont ok et que la fabrication a demarré.

1365
Bus CAN / Re : BreakoutBoard CAN
« le: janvier 07, 2015, 09:57:48 am »
La commande ElectroDragon est faite. Je vous tiens au courant de l'évolution des choses :)

Pages: 1 ... 89 90 [91] 92 93