PulseGenerator : CR 28-02-2014

De Wiki_du_Réseau_des_Electroniciens_du_CNRS
Aller à la navigationAller à la recherche



Compte rendu de la visioconférence du vendredi 28 février 2014

Les personnes présentes étaient: Arnauld Biganzoli (AB) ; Cedric Toussaint (CT) ; Odile Coeur-Joly (OCJ) ; Loïc Drigo (LD), Belkacem Messaoudi (BM) et Christophe Halgand (CH). Abdelouahed Lasfar (AL) n’a malheureusement pas pu se connecter. Il est resté coincé à la validation du mot de passe.

Rédacteurs: CH et AB

Pour éviter tout problème de connection, la prochaine visioconférence n’aura pas de mot de passe une fois connecté au service SeeVogh.


Introduction

La séance a commencer par une présentation de l’organisation de la documentation sur le Wiki et le SVN. Notre petit groupe est très actif. Il est donc maintenant utile pour la visibilité des informations déposées pour nous et les autres membres du réseau de clarifier l’organisation. CH a donc fait une proposition qui est approuvée.

Le Wiki sera donc en maintenance un soir pour éviter tout problème, même si il est possible de travailler à plusieurs sur les pages du Wiki, il faut noté qu’un message vous averti si une personne à publié avant vous des modifications sur la page que vous êtes entrain de modifier. CH enverra un mail de prévention afin d’éviter ce désagrément, le principe étant de ne pas laisser une page en cours de modification trop longtemps sans la “Publier”. Notez que lors de petites modifications sur une page, vous devez cocher la case “Modification mineure”, et que vous pouvez avoir le rendu de vos ajout en cliquant sur “Prévisualiser”, sans oublier de cliquer sur “Publier” lorsque vous aurez terminé. Le Wiki accèpte que vous éditiez plusieurs pages en même temps, ceci est bien pratique pour observer et récupérer des exemples de syntaxe dans une page déjà en ligne.

Rien n’est semble-t-il à modifier sur le SVN. Attention toutefois à suivre les recommandations de AB et CT pour que le dépôt de projet ne comporte que des fichiers strictement nécessaire. On retrouvera sur le Wiki les recommandations dans la section “Partage du projet MPLAB X sur le SVN” pour le PIC et “...” pour le CPLD.


Côté PIC

AB a besoin de plus de temps pour approfondir la mise en oeuvre d’MPLAB® Harmony. Il nous propose donc de reporter sa présentation à la prochaine visio du 28 mars en nous montrant des démos sur l’USB Device CDC et Host.

La section du Wiki traitant de l’USB Device CDC vs UART sera à compléter par AB et BM et permettra après une description de la mise en oeuvre de chacun des périphériques, d’attirer l’attention sur les conséquences du choix de l’un ou de l’autre. Dans le cadre de notre projet AB propose de partir plutôt sur le firmware USB Host et d’utiliser la connection UART (en passant par la puce FTDI) avec le PC, cela permettra de garder le port USB A de la carte pour communiquer avec une clé USB.

AB a abordé le protocole SCPI en disant que le terrain est quasi prêt, voir la démo “..\Groupe_PIC\PIC32_Tutoriel\UART_To_PC\Firmware_v04r01_API_UART_STD” sur le SVN. Il faudra néanmoins attendre le(s) scénario(s) qui seront définis lors de la visio du 25 avril. Une concertation sur les commandes SCPI devra être prévue dans la foulée.

AB nous a montré son code épuré pour la communication SPI du PIC32 en mode maître et à réaliser une démo en envoyant 8, puis 32 bits, en modifiant 2 lignes.

En plus de démos utilisant l’USB via Harmony, AB nous prépare une démo d’interfaçage du PIC avec une “face avant” (IHM: 5 boutons, écran LCD 4x20, LED...). Si vous êtes intéressé pour participer à ces démos, c’est à vous de vous manifester auprès d’Arnauld qui sera prêt à prendre le temps nécessaire pour que vous évoluez avec lui vers les démos choisies.

Côté CPLD

LD nous a montré la communication SPI d’un octet avec le PIC. AL a proposé également une autre manière de programmer la communication SPI. Une erreur dans le référence manuel de la carte CoolRunner-II a fait perdre beaucoup de temps, AB à contacter support@digilentinc.com afin de leur en faire part et a reçu rapidement une réponse en précisant que celles-ci seraient corrigées.

La suite du développement pour le 28 mars prochain est d’utiliser une liaison SPI 32 bits pour charger un compteur et réaliser un pulse qui sera déclenché par la détection d’un Trigger externe. Dans la foulée, LD va tester les performances que l’on peut espérer en ajoutant un oscillateur externe, par exemple un 100 MHz, qui donnerai une résolution de 10 ns, soit une durée de pulse maximum de (1/100e6)*4294967295= 42,95 sec.

Comme pour la partie PIC, LD est ouvert à la collaboration. N’hésitez donc pas à le contacter pour travailler de concert sur cette thématique. On ne peut également que recommander d’utiliser la liste de diffusion pour demander de l’aide lors de blocage sur nos projets CPLD et PIC, aussi pour que les autres puissent être au courant et collaborer avec nous.


Côté PC

CH a présenté l’idée d’interfacer le générateur de pulse avec une interface graphique pour l’utilisateur final. On a en même temps recensé les connaissances de chacuns en terme de programmation. On en trouve en LabVIEW, Python, JAVA, C++, C, C# et MATLAB. Après un tour de table “virtuelle”, nous semblons tous intéressés par du développement en python. AL? CT ou BM se propose de créer une page sur le Wiki pour nous guider dans l’installation d’un environnement de développement Python(x,y) et de présenter la manière de communiquer avec un port série. CH en profitera pour présenter une solution équivalente sous MATLAB, les sources seront déposé sur le SVN. Nous pourrions également faire de même avec LabVIEW sachant qu’il existe sur le Wiki une présentation spécifique pour ARM, voir LabVIEW for ARM.

Le développement d’une interface PC pour notre projet n’est pas encore d’actualité, mais le besoin devrait se faire ressentir pour certains d’entre nous.

Côté Formation

CT et LD nous ont fait une excellente introduction le 18 février dernier, lors de la "Visio pour débutant sur CPLD, VHDL et Xilinx" et à permis de s'initier à la techno du CPLD et à la programmation VHDL associée. On les remercie encore ;-)

L’utilisation de Python à grandement intéressé notre groupe. BM pourra nous faire un premier tuto sur le Wiki pour communiquer avec la carte PIC, puis si cela est réclamé, BM pourrai nous faire une visio sur ce thème si il en a la possibilité. AB et CH feront remonter l’envie de voir une proposition de formation Python pour les électroniciens et instrumentalistes.


En conclusion

Il est demandé à tous les intéressés qui souhaitent réaliser un générateur d’impulsion ou un séquenceur, de lister l’ensemble des caractéristiques qu’il souhaite avoir (connectique au PC, vitesse de communication, largeur d’impulsion, interface d’entrée/sortie, etc...). Faites en un document, nous ferons un tour de table virtuelle le 28 mars prochain. Bien sûr nous ne pourrons donner satisfaction à tout le monde, mais les différents besoins pourront guider la conception de notre premier prototype qui devra être simple afin de rester sur notre idée de base qui était de permettre à travers ce projet de s’initier à divers technologies.

Si cela convient au plus grand nombre, nous proposons de conserver les horaires 9h-12h. De même, le format sans trop détailler les codes développés semble convenir, sachant que les sources sont disponibles sur le SVN pour toute la communauté de notre réseau. Nous acceptons toute nouvelle personne qui souhaite participer ou simplement suivre le projet.


.:: Retour à la page principale du projet "Pulse Generator" ::.