PulseGenerator : Gestion du projet

De Wiki_du_Réseau_des_Electroniciens_du_CNRS
Aller à : navigation, rechercher
Accueil - Projet Pulse Generator

Présentation - Cahier des charges - Gestion du projet - Côté PC - Côté PIC - Côté CPLD - Membres

Nuvola filesystems folder.png Gestion du Projet

  • Notre objectif premier est de réfléchir à la création d'un prototype fonctionnel d'un instrument de laboratoire collaboratif et d’appréhender les différentes technologies utilisées ;-) Les défis à relever sont donc nombreux et nous sollicitons toutes les personnes qui souhaitent s'investir dans ce projet, soit par nécessité professionnel, soit pour l’intérêt scientifique et l'enrichissement, tant professionnel qu'organisationnel, que le projet peut apporter à chacun.
  • Nous avions proposé de rythmer l'évolution de ce projet par des visioconférences tout les derniers vendredi de chaque mois durant le premier semestre 2014. Toutes les dates prévues sont disponibles ci-dessous. En parallèle à ces visioconférences pour faire un point sur les différentes avancées et préparer la suite, nous avons mis en place une liste de discussion. Si vous souhaitez y participer ou suivre nos discussions, n'hésitez pas à contacter Nuvola apps korn.png notre animateur communication. De plus, nous nous efforçons de mettre en place des tutos, démos sur le serveur subversion mais également des Nuvola apps edu miscellaneous.png formations demandées par les membres qui suivent ce projet.
  • Suite à la préparation et à la définition de notre prototype, nous avons créer une page sur ce wiki pour nous repérer dans l'avancement des différentes étapes de développement : Nuvola apps kate.png Planification des tâches à réaliser (To do)
  • La première phase du projet sur la réflexion de la mise des technos s’achevant fin juin 2014, la deuxième phase qui démarrera naturellement en suivant sera consacré essentiellement à la réalisation pratique du prototype et à l'écriture du code.
  • Nous espérons être fin près pour présenter lors des 16èmes Rencontres Electronique du CNRS le prototype du Pulse Generator ainsi réalisé par chacune des contributions bénévoles des participants au projet. Un atelier sur les outils collaboratifs et un poster du PG seront également présenter lors de ces rencontres.


Nuvola apps kdict.png Avancement du projet

  • Réalisation du prototype (entre septembre et fin novembre 2014)
    → Saisie du schéma avec Altium Designer (LD)
    → Revue de schéma et synthèse de la commande (tout le monde)
    → Commande du matériel pour la réalisation du proto (LD)
    → Réalisation du routage du PCB (LD)
    → Revue du routage et de l’intégration dans le boitier (tout le monde)
    → Réalisation des cartes électroniques et montage (GB)
    → Test et intégration dans le boitier (LD, AB et GB)


Farm-Fresh plenum.png Ordre du Jour des Visioconférences entre janvier et juin 2014

Nuvola apps krfb.png Séminaire/Visio, le vendredi 27 juin à 14h au LNCMI

  • "Test du prototype" → "Pulse Generator 6 sur 6"
    → Tour d'horizon du projet et des pages du Wiki et démonstration d'une modification de page
    → échange entre les participants autour de leurs besoins spécifiques en lien avec le projet
    → avancement de la partie mécanique (intégration dans un boitier 4U, choix des composants)
    → test du code sur carte CPLD/FPGA
    → démo de l'interface utilisateur (librairie Keypad)
    → prise en compte des commandes du protocole SCPI implémentées
    >>> Inscription/Questions <<<

Nuvola apps krfb.png Visio du 23 mai

  • "IHM côté PC + Implémentation du ou des scénario(s)" → "Pulse Generator 5 sur 6"
    • Présentation côté PIC → (30 min)
      → implémentation du projet IHM pour le Générateur de Pulse
      → communication avec le CPLD pour le fonctionnement et la configuration du Générateur
      → implémentation du protocole SCPI pour la communication avec le PC
    • Présentation côté CPLD → (30 min)
      → mise en place de la documentation du projet de la carte CPLD du Pulse Generator sur le Wiki
      → rédiger les démos basic (Comm SPI mode 0 et 1) sur le VHDL (carte CoolRunner) sur le Wiki
    • Présentation côté PC → (30 min)
      → mise en place du protocole SCPI

Nuvola apps krfb.png Visio du 25 avril

  • "Bilan CPLD et PIC + Réflexion sur le scénario du générateur de pulse" → "Pulse Generator 4 sur 6"
    • Présentation des différents scénarios étudiés par rapport au besoin de chacun, afin d'en sortir un choix pouvant découlé d'une combinaison des différentes idées
      Il a été demandé aux membres du groupe de préciser leurs idées sur les pages suivantes :
      IHM Hardware
      Protocole de communication SPI MCU/CPLD
    • Présentation côté PIC → (15 + 30 + 30 min)
      → validation de l'IHM Hardware en fonction des propositions faites par le groupe, AB présente le document "IHM LCD 4x20"
      • nombre de boutons ?
      • mode de scrutation, câblage directe ou matricé ou analogique ?
      • gestion du menu sur écran LCD 4x20 ?
      → évaluation de HarmonyAB présentation du document "Microchip Harmony"
      → implémentation du firmware USB Host sur la carte PIC32 → Sauvegarde et restauration de configuration utilisateur + fichier LOG sur clef USB → AB, ..., ?
    • Présentation côté CPLD → (30 + 20 min)
      → validation du Protocole de communication SPI MCU/CPLD en fonction des propositions faites par le groupe
      → discussion autour de l'implémentation du code VHDL à implémenter en fonction du nombres de voies souhaités pour le proto v01 (à réaliser maintenant pour la fin juin...), notamment du aux limitations de la carte cible Coolrunner-II
      2 choix s'offre à nous :
      • garder la carte Coolrunner-II pour implémenter 2 sorties maximum, cela permettrai de tenir nos objectifs de tutoriels et de réalisation d'un premier proto, validant la faisabilité et implémentant le code VHDL qui pourra être réutilisé sur une autre cible pour une version étendu du Pulse Generator
      • faire acheter une autre carte (ex: Nexys™3 Spartan-6 FPGA Board) par l'un des labos en DR14 participant au projet pour tester l'implémentation des 32 voies, puis réaliser une carte fond de panier avec le FPGA cible et les interfaces d'entrée/sortie
    • Présentation côté PC → (20 min)
      les membres du groupe doivent préciser leurs besoins

Nuvola apps krfb.png Visio du 28 mars

  • "CPLD: Mise en oeuvre d'impulsions calibrées, détection de Trigger / PIC: IHM face avant" → "Pulse Generator 3 sur 6", voir le Compte Rendu
    • Présentation côté PIC → (30 min + discussion sur l'implémentation des menus)
      → tutoriel sur la mise en oeuvre de menu sur une IHM hardware, écran LCD 4x20 + switch → AB, OCJ
    • Présentation côté CPLD → (LD: 45 min, CT: 45 min)
      Test de la carte CoolRunner pour être poussé au maximum de ces capacités (ajout d'un quartz externe de Fq plus élevés afin d'avoir une meilleure résolution pour la génération d'impulsion)
      → liaison SPI esclave 32 bits en mode 0 pour le chargement d'un compteur → LD, CT
      → tâches internes: impulsions calibrées à partir d'un compteur, détection de Trigger sur front montant ou descendant → LD, CT
      → interfaçage électrique des signaux entrées/sorties → tout le monde
    • Présentation côté PC → (60 min)
      → initiation à Python pour la communication PC ↔ PIC → CH, ..., ?
    • Proto Pulse Generator → (30 min)
      → tour de table des caractéristiques hardware que chacun souhaiterait pour sa réalisation d'un générateur d’impulsion ou d'un séquenceur et sélection des critères les plus commun à l'ensemble de notre groupe pour la mise en oeuvre de notre proto, voir "Cahier des charges du générateur d'impulsion" ci-dessous

Nuvola apps krfb.png Visio du 28 février

  • "Initiation CPLD et Mise en place des communications" → "Pulse Generator 2 sur 6", voir le Compte Rendu
    • Point sur le Wiki et le SVN → CH (10 min)
    • Présentation côté PIC → (35 min)
      → bilan UART vs USB, choix de l'interface pour la communication avec le PC (en fonction des discussions et avis du groupe) → AB, BM
      → discussion du firmware USB Host
      → communication SPI (PIC ↔ CPLD) → AB
      code source tutoriel SPI master mode 0 en C, librairie XC32:
      ..\Groupe_PIC\PIC32_Tutoriel\SPI
    • Présentation côté CPLD → (60 min)
      → initiation à la communication SPI, échange d'un octet (PIC ↔ CPLD) → LD
      codes sources tutoriel SPI slave mode 0 en VHDL:
      ..\Groupe_FPGA_CPLD\Tutoriel\SPI_Slave_v01
    • Présentation côté PC → (10 min)
      → communication (PC ↔ PIC) → CH
      → langage interface utilisateur (Python, C++, MATLAB, LabVIEW, Java, C#...)
    • Bilan des besoins en formationCH (10 min)
      → visio sur comm SPI, USB HOST, protocole SCPI... ?

Nuvola apps krfb.png Visio du 31 janvier

  • "Prise de contact et Démarrage du projet" → Présentation "Pulse Generator 1 sur 6"
    • mise en oeuvre “PIC32 et USB Device CDC pour IHM Générateur de Pulse
      → Demo de l’utilisation de Microchip Libraries for Applications (MLA), le code source est disponible sur le SVN dans les répertoires:
      ..\Groupe_PIC\_Demo\GenPulse_USB_Device_CDC
      → comparaison entre une interface USB et UART (différence d'architecture projet? / difficulté de mise en oeuvre?)
      → choix de l'interface pour la communication avec le PC (n'a pas pu être abordé → reporté au 28/02)
    • énumération des prochaines étapes et répartition des tâches
      → créer une page permettant de s'initier à la technologie des CPLD (langage VHDL)
      → communication SPI sur PIC32 et CPLD
      → mise en place des fonctions SCPI à implémenter


Nuvola apps edu miscellaneous.png Formations

Visio du 19 juin Nuvola apps edu miscellaneous.png

  • de 14h00 à 17h00, "Initiation à la programmation en Python d'interface utilisateur sur PC"
    • recherche des ports séries disponibles
    • communication avec la carte microcontrôleur: envoie et réception d'une chaîne ASCII
    • discussion sur la programmation d'interface utilisateur, démo de l'utilisation de Qt Creator et du passage vers Python

Visio du 18 février Nuvola apps ksim.png

  • de 13h30 à 17h30, "Visio pour débutant sur CPLD, VHDL et Xilinx"
    3 démos on permis à 7 personnes d’appréhender les bases de la mise en oeuvre de la carte CPLD en réalisant les manipulations en même temps que la présentation, ont été abordé:
    • technologie des CPLD
    • environnement de développement “Xilinx”
    • langage VHDL
    → vous pouvez reproduire les démos en suivant les tutoriels présents sur la page "Mise en oeuvre du CPLD"
    → les codes sources sont disponible sur le SVN du réseau RdE dans les répertoires:
    ..\Groupe_FPGA_CPLD\Tutoriel\RdE_Pulse_Generator_Tuto...

Formation du 9 au 13 Décembre 2013 (DR14 - Toulouse)

"Introduction à la conception modulaire d'instruments de laboratoire à base de microcontrôleur PIC 32 bits et de CPLD"

Description : Cette session fait partie d’un cursus de formation autour de la conception modulaire et collaborative d’instruments de laboratoire basée sur la mise en œuvre de microcontrôleurs PIC 32 bits de Microchip et de circuits logiques programmables type CPLD de chez Xilinx®. L’objectif premier est de fédérer une communauté d’utilisateurs désireux d’apprendre et de partager leurs efforts de développement autour de ces 2 technologies, tout en leurs donnant les connaissances nécessaires pour être autonome dans l’utilisation des microcontrôleurs PIC.