IMA4 2016/2017 ECP5 : Différence entre versions
(→Impression & Soudage) |
|||
Ligne 341 : | Ligne 341 : | ||
===Impression & Soudage=== | ===Impression & Soudage=== | ||
+ | |||
+ | L'impression et le soudage de la carte ont été réalisés à l'atelier de Polytech (sous l'encadrement de M. Thierry Flamen que je remercie pour le temps qu'il m'a consacré afin que je mène à bien la réalisation de ma carte). | ||
+ | |||
+ | Une fois que mon PCB a été conforme aux normes d'impression de la machine de Polytech, la carte a été validée et imprimée. | ||
+ | |||
+ | Le soudage des composants CMS a été réalisé avec l'application de pâte à braser suivi d'un passage au four. Le connecteur femelle CMS 1*6 n'ayant pas tenu, il a été soudé à la main par la suite. | ||
+ | |||
+ | Les vias ne pouvant pas être rendus conducteurs (Polytech ne possède pas l'encre nécessaire), il a été soudé un fil au travers de chacun d'eux. Cela explique l'impossibilité de placer un via sous un composant CMS (car cette soudure créée un relief trop important). Il a fallu faire de même avec un fil plus fin pour les trous des connecteurs qui possédaient une liaison sur la face opposée à la soudure (afin de permettre aux pâtes de passer dans les trous en plus du fil. | ||
+ | |||
+ | Les traversants ont ensuite été soudés à la main. | ||
+ | |||
+ | Finalement, un fil a été rajouté sur la piste correspondant au signal 'reset' de l'Atmega afin de pouvoir la connecter à la branche 'reset' du connecteur SPI. Cette liaison a en effet été oubliée au moment de la conception du circuit. | ||
===Programmation de l'Atmega=== | ===Programmation de l'Atmega=== |
Version du 5 juillet 2017 à 17:11
Sommaire
Cahier des charges
Contexte
L'élève est en stage à l'INRIA donc peut se déplacer à l'école.
Présentation générale du projet
Il est vous est demandé de réaliser une carte électronique avec des composants de surface pour gérer une matrice de LEDs. Appuyez-vous sur les erreurs commises dans le projet original pour obtenir une carte opérationnelle : Carte_contrôleur_de_matrice_de_LEDs.
En particulier l'empreinte pour le buffer n'était pas correcte ni le câblage des connecteurs. Le routage n'était pas optimal non plus.
Il est aussi demandé de partir sur la même liste de composants (voir ci-après).
Liste de composants
Avancement du Projet
Choix techniques
- La carte sera alimenté avec une tension continue de 5V; l'alimentation se fera par connecteur SPI ;
- Un montage oscillateur à quartz sera implémenté afin de fournir un signal d'horloge d'une fréquence de 16 MHz au microcontrôlleur ;
- La matrice de LED 8x8 sera connectée avec des barrettes de connexion femelles située sur la couche 'bottom' de notre carte ;
- Un registre à décalage (fonctionnant en SIPO de l'Atmega vers la matrice) permettra de choisir directement les rangées de la matrice à activer via l'Atmega ;
- Un buffer permettra de réaliser une amplification de courant en entrée de la matrice et permettra d'activer les colonnes de la matrice ;
- Un Spi-header permettra de programmer l'Atmega de notre carte ;
- Une LED de contrôle est ajoutée pour s'assurer de la qualité du soudage qui sera effectué ;
- Le logiciel Eagle sera utilisé pour la conception de la carte ;
Liste des composants
Aucun composant n'a été commandé, tout a été réalisé avec les stocks de l'école. De ce fait, je n'ai pas eu accès aux références de composants comme les résistances ou les condensateurs utilisés.
Schématique
La bibliothèque Sparkfun a été utilisée afin d'avoir des modèles pour les composants utilisés. La schématique proposée se base sur celle proposée l'an dernier. Plusieurs différences sont à noter:
- Le modèle de l'Atmega utilisé semble différent (au moins pour sa représentation sur PCB) ;
- De même pour le modèle du registre à décalage (désormais de la bonne dimension) ;
- Les connecteurs utilisés sont bien des connecteurs femelles CMS contrairement à l'année dernière où il s'agissait de connecteurs traversants ;
- Le buffer a été modifié et possède désormais un modèle correspondant à la taille réelle du composant (c'était l'un des problèmes majeur de l'année dernière) ;
- Les branchements entre le registre à décalage et la matrice, et entre le buffer et la matrice ont été réalisés en suivant la documentation de la matrice de LED (ci-dessous).
La première schematic proposée est la suivante:
Après multiples modifications, la schematic finale proposée est présentée ci-dessous. Toutes les modifications apportées ne sont pas nécessairement visibles sur la schématic, parfois seul le modèle du composant sur le PCB change. On peut cependant remarquer ici que:
- Le modèle de l'Atmega a été modifié et comporte désormais le bon nombre de 4*8=32 broches (contre 33 sur le modèle précédent) ;
- Le modèle du quartz a également été modifié et les condensateurs qui l'accompagne ont été corrigés et sont désormais de 22pF, valeur usuelle utilisée pour un tel montage d'oscillateur à quartz ;
- Les composants accompagnant la LED ont été modifiés, la valeur de la résistance étant désormais adaptée à la LED utilisée et à la tension de 5V sous laquelle on souhaite travailler.
PCB
Pour la réalisation du PCB le point le plus important est de correctement placer les connecteurs pour la matrice. Le modèle de la carte à comme dimension 59,7*59,7mm. Comme visible sur le PCB, les connecteurs de la matrice ont été espacés de 45,72 mm ce qui correspond à la valeur recommandée sur la documentation de la matrice LED. De plus, il a fallut s'assurer de placer l'un des connecteurs dans le sens inverse (pivoté de 180°) afin de s'assurer que les branchements avec la matrice soient conformes.
Les connecteurs pour la matrice ont été placés sur la face bottom. Après avoir fait au mieux pour placer tous les composants, il a été décidé de tous les conserver sur la face top car après modélisation, le routage ne gagnait pas vraiment en efficacité en plaçant des composants supplémentaires sur la face bottom.
Finalement, seul le circuit de la LED de contrôle semble un peu trop éloigné.
Le premier PCB proposé est le suivant:
Après de multiples considérations auprès de M. Thierry Flamen, le PCb a été revu et optimisé à plusieurs reprises. La solution finale proposée est présentée ci-dessous. On remarquera les modifications suivantes:
- Les barrettes de connexion pour la matrice ont été modifiées pour être des composants traversants. De toute évidence, il aurait été quasi impossible de connecter la matrice à des connecteurs de surface, ceux-ci auraient été beaucoup trop fragiles ;
- Le micro-contrôleur possède désormais un modèle plus grand et donc correct ;
- Le quartz possède désormais un modèle plus grand et donc correct ;
- L'orientation des composants a été largement modifiée afin d'optimiser le routage ;
- Les via situés sous certains composants ont été proscrits car ils ne peuvent pas être réalisés à l'atelier de Polytech (cf Impression & Soudage pour plus de détail) ;
- Les tailles des vias et des pistes ont été augmentées ;
- Le connecteur de droite s'étant finalement avéré dispensable, il n'a pas été routé.
Impression & Soudage
L'impression et le soudage de la carte ont été réalisés à l'atelier de Polytech (sous l'encadrement de M. Thierry Flamen que je remercie pour le temps qu'il m'a consacré afin que je mène à bien la réalisation de ma carte).
Une fois que mon PCB a été conforme aux normes d'impression de la machine de Polytech, la carte a été validée et imprimée.
Le soudage des composants CMS a été réalisé avec l'application de pâte à braser suivi d'un passage au four. Le connecteur femelle CMS 1*6 n'ayant pas tenu, il a été soudé à la main par la suite.
Les vias ne pouvant pas être rendus conducteurs (Polytech ne possède pas l'encre nécessaire), il a été soudé un fil au travers de chacun d'eux. Cela explique l'impossibilité de placer un via sous un composant CMS (car cette soudure créée un relief trop important). Il a fallu faire de même avec un fil plus fin pour les trous des connecteurs qui possédaient une liaison sur la face opposée à la soudure (afin de permettre aux pâtes de passer dans les trous en plus du fil.
Les traversants ont ensuite été soudés à la main.
Finalement, un fil a été rajouté sur la piste correspondant au signal 'reset' de l'Atmega afin de pouvoir la connecter à la branche 'reset' du connecteur SPI. Cette liaison a en effet été oubliée au moment de la conception du circuit.