Machine a graver

De troyesGEII
Révision datée du 2 avril 2014 à 16:27 par Troyesgeii (discussion | contributions) (Journal de bord)
Aller à : navigation, rechercher

Le but de notre projet est de programmer une machine à graver par USB. En utilisant gravostyle et en passant par le PIC32 USB STARTER KIT II et un module d'extension.

PIC32 USB Starter Kit II

photo de l'usb starter kit II

Le PIC32 USB Starter Kit II permet comme son nom l'indique de faire fonctionner des application utilisant principalement l'usb (esclave,maître,OTG). La carte fait aussi fonctionner la plus part des applications USB utilisant les microcontrôleur PIC32. Enfin elle peut être utilisée comme une carte d’extension.


Nous utiliserons cette carte pour gérer les fichier crée via Gravostyle et envoyer en USB.


Détail de la carte

Schéma avant:

Schéma numérotés du PIC32 usb starter kit II


  1. PIC32MX795F512L le fameux microcontrôleur 32 bits.
  2. LED verte qui indique la mise sous tension de la carte.
  3. Oscillateur a quartz embarquer (8Mhz).
  4. Connecteur USB Type mini-B pour la connexions en mode debugger.
  5. LED orange indiquant que la carte est en mode debugger.
  6. Boutons poussoirs pouvant être programmés.
  7. LEDs pouvant être programmés.
  8. Connecteur USB Type A (femelle) destinés aux applications en mode usb.
  9. connecteur pour cavalier d'alimentation.







schéma arrière:

Schéma numérotés du PIC32 usb starter kit II



  1. PIC32MX440F512H microcontrôleur qui gère l'USB.
  2. Régulateur +3.3V qui fournit la tension nécessaire a la carte pour fonctionner lorsqu'elle est connectée en USB ou via une carte d’extension.
  3. Connecteur pour d'autre carte d'extension.
  4. Permet l’alimentation des applications USB du Pic32 tournant sous USB OTG(on-the-go) ou en maître.
  5. connecteur USB type micro-AB pour l'usb OTG.










Les modes USB et les types de connecteur

Nous ne détaillerons pas le fonctionnement de L'USB en général mais les différents modes et connecteurs car le PIC32 SKII peut se configurer de telle sorte à gérés les différents modes USB.

Modes USB

Mode CDC

Le mode CDC(Convertisseur USB-Série) sert à simuler un port série (port obsolète mais encore utiliser par nos imprimante par ex). L'ordinateur voit le périphérique USB comme un port série, donc le dialogue utilise les même bibliothèques qu'un port série. Nous choisirons ce mode de communication car gravostyle communique avec des imprimante donc le PIC32 SKII devras fonctionner en CDC et simuler un port série.

Mode human interface device(HID)

Ce mode est utilisé pour les souris, claviers et autres périphérique du même type. transfert de données faible et a basse vitesse.

Mode Mass storage (MSD)

Mode utilisé par les clés USB, autres périphériques de stockage.

Mode Générique

Permet d'envoyer un nombre d'information a un vitesse de communication choisi(480 MBits/s, 12 MBits/s, 2Mbits/s).

Type de connecteur

Tableau des différents type de connecteur usb
TypeA.png
Type B.png
TypeMicro-AB.png
TypeMicro-B.png
TypeMini-B.png
TypeMini-A.png

MPLAB ® IDE X

Lien direct : www.microchip.com

MPLAB ® IDE X est un logiciel qui s'exécute sur un PC (Windows ® ,Mac OS ® , Linux ® ) pour développer des applications pour microcontrôleurs Microchip et contrôleurs de signaux numériques. Il est appelé un environnement de développement intégré (IDE), car il fournit un «environnement» intégrée à développer du code pour microcontrôleurs embarqués


Journal de bord

Voici notre journal de bord qui présente la progression du projet au fil des séances.

Séance 2 : 27.09.2013

Présentation du pic32 et du pic 32 starter kit II. Recherche et installation de MPLAB(X) IDE (L’environnement de développement).

Séance 3 : 04.10.2013

Installation de MPLAB(X) C32 (Compilateur C).

Séance 4 : 11.10.2013

Installation et configuration du logiciel Gravostyle.

Séance 5 : 18.10.2013

Mise en oeuvre de nouveau Port série et utilisation de Gravostyle.

Séance 6 : 23.10.2013

Etude d'un exemple de programme en C utilisant l'USB. C:\microchip_solution_v2013-06-15\usb\device-CDC-basic demo

Séance 7 : 22.11.2013

Programmation de la carte usb starter kit 2.Test de la communication en CDC grace a un hyper terminal (programme-accesoire-communication) Recherche sur la carte starter kit I/O Expansion Board (DM320002)

Séance 8 : 29.11.2013

Étude de la liaison port série entre deux pc(logiciel gravostyle(PC1)-->hyperterminal(PC2)).
Conclusion: On ne peut contrôler les données envoyées par le logiciel (bits ajoutés sur l'information essentiel), c'est pourquoi nous décidons de passer par une interface qui nous permettras de maîtriser les données envoyés.

Séance 9 : 6.12.2013

Programmation du logiciel en c avec interface graphique via National Instrument VCI (pour contrôler la communication entre les deux interfaces). Et étude du langage HPGL en parallèle.

Séance 10 : 13.12.2013

Test du logiciel créé la séance dernière, et observation de la communication via un hyperterminal.
Nous avons rencontré un problème. Dans les données il manque des retours chariots ce qui ne reflètent pas ce que l'on veut communiquer.

Séance 11 : 10.01.2014

Recherche sur la façon de pouvoir télécharger un fichier généré par le programme dans la mémoire RAM du PIC32. On compte le nombres de bits à communiquer.

Solution possible: envoyés une partie des informations et les stocker dans un tableau, ensuite quand ce tableau est remplie on envoie les données vers l'imprimante.

Séance 12 : 17.01.2014

Ecriture du programme gérant la communication entre le pc et le pic32:
-USB communique par paquet de 64 bit
-On envoie jusqu’à ce que le Pic sois plein (80% du maximum en réalité pour prévoir de la place)
-le pic envoie au pc un bit pour stopper l'envoie
-le pic traite les donné reçus et renvoie un bit pour reprendre la communication

Recherche des port du Pic occupé par les éléments de la carte:

  • led:

RD0 à RD2(PortD).

  • Bouton poussoir:

RD6,RD7,RD13.

Séance 13 : 14.02.2014

Recherche d’après les docs du pic32, nous allons déterminer les ports à utiliser pour commander les moteur pas a pas. recherche du fonctionnement des Timers utilisé par le PIC32 conclusion:
-Les Timer que l'on va utiliser sont dit de "Type B" (16 bit)
-Les Timers fonctionne seulement en compteur
Voir documentation Timer, chapitre 14.3.3 16-bit Synchronous Clock Counter Mode.


Séance 14 : 21.02.2014

Détermination des pattes connectés du PIC32 vers la carte d'extension via la documentation et réflexion sur le programme de contrôle des moteur via le fichier HPGL.

Séance 15 : 28.02.2014

Soudage des connecteurs sur la carte d'extension, et détermination de la fréquence correct pour commande des moteurs puis du sens.

Séance 16 : 14.03.2014

réalisation du connecteur carte via wraping.

Séance 17 : 21.03.2014

Programme pour commande de moteur. moteur axe X et Y maîtrisée.

Séance 18 : 28.03.2014

finalisation du projet.