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.


Sujets - Jean-Luc

Pages: 1 [2] 3 4
16
Bibliothèques / Bibliothèque KeepMeAlive
« le: décembre 22, 2018, 11:26:26 am »
Bonjour,

Je viens de pousser une bibliothèque pour utiliser le Watchdog Timer des ATMega328 (Arduino Uno, Nano, Pro Mini). Ça marche peut être sur Mega, je n'ai pas testé. Mais l'idée est de l'étendre aux autres Arduino.

Pour savoir à quoi ça sert vous pouvez consulter l'article sur Wikipedia

C'est une fonction importante si vous devez déployer plusieurs Arduino, pas toujours très accessibles, sur votre réseau.

La bibliothèque n'est pour l'instant pas disponible dans le gestionnaire de bibliothèque, il faut la télécharger ici : https://github.com/Locoduino/KeepMeAlive/releases/tag/1.0

 

17
Vie du forum / Problème technique sur l'hébergement
« le: décembre 05, 2018, 09:50:39 am »
Bonjour,

Depuis hier je constate des problèmes d'accès au serveur MySQL chez l'hébergeur. Je n'ai aucune info pour l'instant. J'imagine que ce serveur tourne sur une autre machine et que pour une raison X ou Y, une partie des requêtes échouent.

Les conséquences sont :
  • Côté forum (SMF) des messages apparaissent vides ou incomplets et parfois l'encodage des caractères se fait mal (UTF8 pas interprété en tant que tel)
  • Côté rédactionnel (SPIP) un message explicite s'affiche

Je ne peux rien faire de mon côté pour remédier à cela. Je vais mettre un ticket à l'hébergeur.

MAJ: Le ticket a été ouvert ce matin

18
Bus CAN / Contrôleur CAN MCP2517FD
« le: novembre 19, 2018, 11:31:05 am »
Bonjour,

Actuellement le contrôleur CAN utilisé conjointement avec les Arduino est le MCP2515. Ce composant est sorti en 2003. Il possède 3 buffers d'émission et deux buffers de réception (RXB0 et RXB1). Pour sélectionner uniquement les messages qui sont pertinents, RXB0 possède 1 masque et 2 filtres et RXB1 1 masque et 4 filtres

En 2017 Microchip a sorti un nouveau contrôleur, le MCP2517FD. Ce composant possède une RAM interne de 2ko pour les buffers (hé oui autant que l'Arduino Uno) et permet de configurer 31 FIFO de messages en émission ou en réception, 32 masques ou filtres. L'interêt immédiat est :
  • de libérer la mémoire de l'Arduino qui sert au stockage des messages en réception
  • d'avoir beaucoup de place pour stocker les messages en réception
  • de bénéficier d'une FIFO en émission gratuitement en terme de mémoire pour que l'émission ne soit pas bloquante si le message précédent n'est pas parti

En mode CAN2.0B, il est évidemment compatible avec le 2515

Mon collègue Pierre a écrit un driver pour ce composant : https://github.com/pierremolinaro/acan2517
Cette bibliothèque est téléchargeable via le gestionnaire de bibliothèques de l'IDE

J'ai dessiné une petite carte que je vais bientôt faire fabriquer pour essayer, je vous tiens au courant.

19
Vie du forum / Demandes d'épinglage
« le: juin 05, 2018, 11:18:56 am »
Bonjour,

Epingler un sujet n'est pas un système qui marche utilisateur par utilisateur. C'est un attribut global d'un sujet. Ce n'est pas forcément à la modération de décider quel sujet doit être épinglé.

Ce fil sert poster vos demandes d'épinglage

Et il est lui même épinglé :)

20
Shields et Modules / Mini décodeur à base d'ATTiny 84
« le: juin 02, 2018, 08:36:35 am »
Voici les infos sur cette carte avec le BOM et le schéma

Si vous vous souvenez, cette carte est hybride. Elle peut également être utilisée sans l'ATTiny.

Avec l'ATTiny

Souder S2, S3, S4 et S5 mais pas S1

Le connecteur K2 donne accès aux broches de programmation

Deux sorties peuvent être amplifiées (transistor NPN en collecteur ouvert), la 9 et la 10. Par défaut elles le sont mais vous pouvez avoir une sortie directe en soudant dis 9 (pour la sortie 9) et dis 10 (pour la sortie 10).

Sans l'ATTiny

Souder S1 mais pas les autres. L'ATTiny ne sera pas alimenté. La broche 4 du connecteur K2 donne accès au signal DCC.

21
Bibliothèques / LightDimmer : une bibliothèque pour les feux
« le: mars 29, 2018, 09:40:14 am »
Hier j’ai programmé une bibliothèque pour faire de l’allumage et de l’extinction progressive des ampoules des feux de signalisation. On peut voir ça dans la vidéo de l’article http://www.locoduino.org/spip.php?article47. Le filament des ampoules à incandescence ayant beaucoup d’inertie, il faut 250ms pour qu’ils s’éteignent ou s’allument. Il faut bien sûr une sortie PWM.

La bibliothèque est en bêta, c’est ici :

https://github.com/Locoduino/LightDimmer/releases

Un peu de doc :

https://github.com/Locoduino/LightDimmer/blob/master/README.md

22
Bibliothèques / Hardware packages
« le: février 09, 2018, 05:21:11 pm »
Bonjour,

Je propose de rassembler ici les liens vers les « hardware packages », collections logicielles qui permettent d'ajouter le support d'une carte ou d'un micro-contrôleur à l'IDE Arduino, rendant ce matériel compatible avec le logiciel Arduino.

Au fur et à mesure des contributions, je les ajouterai en tête de fil.



MicroCore https://github.com/MCUdude/MicroCore

Ajoute le support des ATtiny13, ATtiny13A et ATtiny13V.



ATTinyCore https://github.com/SpenceKonde/ATTinyCore

Ajoute le support des ATtiny2313, 4313, ATtiny24, 44, 84, ATtiny25, 45, 85, ATtiny261, 461, 861, ATTiny87, 167 (with or without Optiboot boot loader), ATTiny48, 88, ATTiny441, 841 (With or without Optiboot boot loader), ATTiny1634 (With or without Optiboot boot loader), ATTiny828 (With or without Optiboot bootloader)

23
Bus CAN / Les cartes CAN en 8MHz
« le: septembre 12, 2017, 06:21:10 pm »
Comme je suis en train de faire ma propre bibliothèque pour le 2515, je regarde en détails son fonctionnement ainsi que les normes et recommandations pour la mise en œuvre d'un bus CAN.

Via la configuration on détermine le débit du bus.

La durée d'un bit est quantifiée en TQ (Time Quantum). Cette durée est divisées en 4 segments successifs dans le temps :
1 - Le segment de synchronisation (SyncSeg) qui est de durée fixe : 1 TQ
2 - Le segment de propagation (PropSeg) qui permet de tenir compte du temps de propagation du signal dans le bus. Il peut être programmé de 1 à 8 TQ
3 - Le segment de phase 1 (PS1), également programmable entre 1 et 8 TQ
4 - Le segment de phase 2 (PS2), programmable entre 2 et 8 TQ (plus loin dans la datasheet, c'est de 1 à 8, enfin passons)

Par ailleurs il y a des contraintes :
a - PropSeg + PS1 ≥ PS2
b - PropSeg + PS1 ≥ 2

l'échantillonnage du bit présent sur le bus est réalisé à la fin de PS1 et doit se situé entre 60 et 70% de la durée du bit d'après Microchip mais pour CANOpen et DeviceNet c'est 87,5 et la norme ARINC dit 75%.

TQ est dérivé de l'oscillateur dédié au 2515 (Fosc = 16MHz habituellement, 8MHz sur les cartes chinoises) via un Baud Rate Prescaler (BRP) sur 6 bits et qui peut donc avoir une valeur comprise entre 0 et 63 :

TQ = 2 x (BRP + 1) / Fosc

Donc avec Fosc = 16MHz et BRP = 0 (division minimum), on a TQ = 125µs et pour faire un bit, il faut 8 x TQ

Par exemple, la bibliothèque mcp_can utilise les valeurs suivantes pour un bus à 1Mbits :

BRP = 0 (TQ = 125µs)
PropSeg =  1 TQ (0)
PS1 = 3 TQ (2)
PS2 = 3 TQ (2)

Avec le SyncSeg qui dure 1 TQ, on a bien 8 TQ. L'échantillonnage est à 5/8 = 62,5%

Avec un carte à 8MHz, on a 4 x TQ de 250µs pour faire la durée du bit. Comme le SyncSeg prend 1 TQ, il en reste 3 (PropSeg = 1, PS1 = 1 et PS2 = 1) et ça coince car à priori PS2 est au mini à 2 TQ. Je ne suis pas persuadé qu'on puisse atteindre 1Mb avec un quartz à 8MHz.

24
Bus CAN / Composants : transceivers et contrôleurs
« le: juin 17, 2017, 12:01:31 pm »
Bonjour,

J'attire votre attention sur deux composants :

Le premier est un transceiver CAN de Microchip, le 2562. Il est similaire au et compatible avec le 2551. La différence est qu'il dispose de deux alimentations. La première est destinée à l'interface avec le microcontrôleur et la seconde pour le bus CAN. Ceci permet de connecter un microcontrôleur alimenté en 3,3V au réseau CAN qui lui est alimenté en 5V sans composants supplémentaires pour adapter les niveau logiques.



http://www.tme.eu/fr/details/mcp2562-e_p/circuits-integres-interface-can/microchip-technology/

Le second, le 25625, est un 2515 et un 2562 dans le même boîtier. Il permet donc d'économiser aussi des composants.



http://www.tme.eu/fr/details/mcp25625-e_ss/circuits-integres-interface-can/microchip-technology/

Le défaut est que le boîtier le plus accessible pour nous est le SSOP 28 broches, boîtier CMS avec un pas de 0,65mm. Ça se soude mais c'est un peu délicat :)

25
Vos projets / Tablette de commande du réseau
« le: juin 16, 2017, 12:08:14 pm »
Bonjour,

J'ouvre ce fil pour exposer le projet que nous avons de développer une tablette à base d'Arduino. Il s'agit d'un projet collectif mené avec deux camarades, Pierre et Philippe, dans lequel je ne suis pas le programmeur principal et ma part y est pour l'instant extrêmement faible. Je vais donc présenter un travail qui n'est pas le mien car ni Pierre ni Philippe ne participent au forum.

Pour commencer je vais présenter rapidement le système d'exploitation de réseau que nous avons conçu. Il s'agit d'un système de pilotage analogique. Le réseau est donc divisé en zones alimentées séparément. On distingue deux types de zones :
1 - les cantons dans lesquels un convoi peut être à l'arrêt. Le plus petit canton du réseau en longueur de rails définit la longueur maximum d'une rame. les cantons ont une zone de pleine voie et une zone d'arrêt dans chaque sens
2 - les zones d'aiguille

Chaque zone alimentée est gérée par un microcontrôleur et de l'électronique associée : l'alimentation traction.
Une alimentation traction remplit les fonctions suivantes :
* détection en zone de pleine voie et en zone d'arrêt
* mesure du courant (détection des court circuits)
* mesure de la vitesse du convoi (toutes les 10ms)
* calcul de la PWM par un asservissement proportionnel intégral
* alimentation du convoi
* éclairage permanent du convoi

Les alimentations traction sont reliées par un bus CAN à 727Kbits/s à un contrôleur central qui
- diffuse deux signaux de synchronisation pour la synchronisation des PWM (à 32kHz) et la mesure de vitesse (à100Hz)
- reçoit des alimentations traction les informations de détection de présence, de mesure de courant, etc
- envoie aux alimentations traction des ordres d'affection de convoi (gains de l'asservissement), les consignes de vitesse

Un second bus CAN dédié aux accessoires (aiguillages, signaux, ponts tournants, portes de remises, ...) permet de communiquer entre le contrôleur central et les cartes de pilotage des accessoires.

Le contrôleur central contrôle le déplacement des convois et assure la sécurité : block system habituel. Il contrôle également la signalisation. Il reçoit des souhaits de positionnement des aiguillages. Ces derniers sont effectivement positionnés lorsque par le contrôleur central lorsque les contraintes de sécurité le permettent.Le logiciel de suivi de convois, Caniche, a été développé par Pierre.

Toute cette électronique n'est pas entièrement Arduino. Pour ma part, j'ai deux cartes construites autour d'un Arduino Nano : la carte pont tournant et une carte servo pour les portes de remises. Toutefois, pour des évolutions futures, nous pensons remplacer le contrôleur central (actuellement une carte Olimex avec un ARM 7 TDMI à ~60MHz) par un Teensy 3.6 qui dispose de deux contrôleur CAN.

Comme nous ne souhaitons pas avoir un ordinateur de bureau ou portable dans la boucle, l'interface homme-machine pour piloter le réseau choisi est une tablette (entre autre).

Pour répondre à une question qui ne manquera pas d'arriver, pourquoi ne pas avoir utilisé une tablette existante fonctionnant sous iOS ou Android ? Effectivement nous réalisons une tablette qui est plus épaisse et moins performante sans être pour autant vraiment moins chère. Mais un critère essentiel à nos yeux est de ne pas être dépendant d'une infrastructure logicielle complexe et de politique de développement et déploiement évolutives, casse pieds et imprévisibles.

Le hard

Pour l'instant Pierre a développé un prototype composé de :
- Un écran tactile 7" avec interface parallèle :



- Un Teensy 3.6



- Une connectique CAN
- Un ampli audio LM386 (pour faire des blip)
- Un encodeur rotatif (qui n'est pas monté et qui je pense ne le sera pas)

le tout intégré sur une carte.

À l'étude :

- Intégration dans un boîtier
- Alimentation sur batterie LiPo
- Lien radio avec un NRF24

Le soft

Le logiciel Arduino bien sûr,
UTFT, bibliothèque de gestion des écrans LCD
Une bibliothèque de gestion du tactile, URTouch étant mal écrite et buggée
AW (Arduino Widgets), bibliothèque développée par Pierre qui affiche des widgets, gère leur superposition et l'interaction avec l'écran tactile et qui sera disponible bientôt.

Des photos vont suivre :)

26
Infos et bonnes affaires / Selectronic c'est terminé
« le: mai 07, 2017, 02:37:53 pm »
La société a déposé le bilan.

27
Infos et bonnes affaires / PCB chez SeeedStudio
« le: mai 04, 2017, 09:29:33 am »
Bonjour,

Comme j'avais besoin de tirer des cartes plus grandes que 10x10, j'ai essayé le service PCB de SeeedStudio : https://www.seeedstudio.com/fusion_pcb.html

Pour du 10x10 et inférieur, les prix étaient comparables à ceux d'ElectroDragon : 10€ les 10. Récemment, SeeedStudio est passé à moins de 5€ les 10. En revanche le port est un petit peu plus élevé et peut être un peu plus long.

Le résultat est comparable : nickel


28
Les réseaux / Projet Jean-Luc
« le: février 13, 2017, 05:47:35 pm »
Bonjour,

Après un bon bout de temps passé sans toucher à mon réseau, je me suis décidé à revoir ma copie. Je casse et je recommence.

J'étais parti sur quelque chose de trop grand (2m70 x 1m20) par rapport à la place disponible et à vrai dire pas bien fichu. Le plateau est trop haut, bloque l'accès au velux et il n'y a pas assez de place pour travailler autour. Le plateau étant trop haut, 1m, c'est un bazar pour mettre en place un éclairage avec le toit mansardé. Par ailleurs le velux sera à changer dans les 5 ans à vue de nez et une fois le réseau terminé, ça ne sera plus possible sans risquer de l'endommager.

L'ancien projet :



J'avais fait une vidéo :

Tous ces inconvénients m'avaient fait perdre ma motivation et mon épouse avait été bien trop gentille de me laisser installer ce gros machin...

Je repars donc sur quelque chose de plus modeste : un réseau en L de 2 mètres sur 1m18, les branches du L faisant 60cm de profondeur. L'accessibilité est meilleures, tout est à portée de bras. Il sera également plus bas sur pattes, 70cm pour le 0 du réseau, pas plus bas pour pouvoir s'asseoir avec les genoux dessous. C'est un réseau pour manœuvrer, pas pour regarder passer les trains, quoiqu'en automatisant la circulation, tout est permis.



Aucun rail n'était fixé définitivement, je ne perds que du bois, un peu de trackbed woodland scenic, le travail que j'avais effectué sur le TCO et du temps.

Exit la double voie, on est sur de la voie unique, ligne secondaire, gare terminus avec un petit dépôt vapeur.

Je garde les éléments qui me plaisaient le plus : la gare, le dépôt. J'enlève la double voie et le port. Au premier plan, en contrebas de la gare et du dépôt, il y a une voie de parade. Eventuellement je peux mettre un pont au niveau de la ligne droite de la voie de parade.

Je garde le principe de la gare cachée qui fait boucle de retournement :



La gare cachée est au niveau 0, la gare terminus et le dépôt sont à +90mm. La pente est de 2%. Comme l'ancien, le réseau sera sur roulettes afin de pouvoir le déplacer et notamment accéder à l'arrière qui sera ouvert pour pouvoir facilement régler un problème dans la gare cachée.

Les TJD, TJS et aiguillages qui ont la malchance d'être au dessus d'une voie de la gare cachée recevront une commande de servomoteur déportée.

Enfin comme la taille est plus modeste, j'envisage de pouvoir le poser sur la tranche afin d'accéder plus facilement au dessous : câblage,  mécanique et électronique. Essentiellement pour l'installation initiale. Il pourra être également déplacé dans la pièce voisine en cas de travaux à effectuer dans la pièce où il est installé (comme par exemple changer le velux  :))

Voilà, à un moment il faut convenir que les choix étaient mauvais et les remettre en question.

29
Shields et Modules / Module WIFI
« le: juin 17, 2016, 06:15:10 pm »
(le but est de connecter l'électronique du réseau à la box de la maison pour dialoguer via un ordi, une tablette ou un téléphone)

Il y a quelques temps, nous avions parlé des modules ESP8266 d'expressif qui permettent de faire du TCP/IP en wifi à partir d'un Arduino (entre autre). Ayant lu dans Open Silicium que ce n'était pas très stable et que le firmware était un peu écrit avec les pieds, j'avais un jugement plus que réservé :)

Entre-temps mon ami Pierre a découvert un module CC3000 commercialisé par Adafruit. Le module est construit autour du CC3000 de Texas Instruments avec lequel on dialogue via des commandes SPI. Il supporte 4 sockets. TI étant une maison sérieuse, nous étions assez enthousiastes à propos de ce module.

Après plusieurs mois de tests et d'essais, Pierre ne mâche pas ses mots « j'abandonne, c'est de la ***** ». Soft instable, ping de durée aléatoire, les données partent et arrivent au bout d'un certain temps ou pas. La documentation est incomplète, certaines commandes ne sont pas détaillées. C'est peut être suffisant pour faire un capteur intelligent qui envoie une donnée toutes les 5 secondes mais pour le reste c'est nettement insuffisant.

Nous sommes donc repartis avec un Particle Photon. L'avantage est qu'il est Open Hardware et que son firmware est OpenSource. Grosso modo c'est une carte un peu plus petite qu'un Arduino Nano et qui se programme comme un Arduino. Elle coûte entre 20 et 25€. Elle comporte un module Wifi et un ARM Cortex M3 à 120MHz avec une interface CAN. Toutes les bibliothèques qui vont bien sont livrées. L'idée est de faire une passerelle Wifi/TCP/IP-CAN toute simple. La tablette ou le smartphone envoie et reçoit des trames CAN encapsulées dans du TCP/IP, le Photon extrait les trames CAN et les envoies sur le CAN et inversement il reçoit les trames CAN et les envoie via TCP/IP.

https://docs.particle.io/datasheets/photon-datasheet/

Je vous tiens au courant :)

30
Shields et Modules / Testeur de câble RJ11
« le: mai 01, 2016, 12:26:13 pm »
Coucou,

Je vais bientôt envoyer 2 cartes à la fabrication (la semaine prochaine) :
  • La carte de commande de pont tournant
  • La carte 8 servomoteurs manuelle + platines servo pour les fins de course

La partie platines servo correspond à http://modelleisenbahn.triskell.org/spip.php?article35 mais avec le brochage des cartes servomoteurs CAN + DCC et manuelle. D'ailleurs cet article va être mis à jour car mes nouvelles cartes à base de PIC ont le même brochage que les cartes Arduino

Donc sur une carte 50x100mm, je case 6 platines. Avec 12 cartes, ça fait 72 platines. Mais je n'en ai besoin que de 42. Si je ne mets que 4 platines, j'ai 48 platines ce qui me suffit et je dégage la place pour une carte 33x50. Sur cette carte, on peut mettre 2 prises RJ11 et un connecteur vers l'Arduino pour faire un testeur de câbles. Il y aurait donc 12 testeurs disponibles. Si vous êtes intéressés, dites le ci-dessous ;)

Pages: 1 [2] 3 4