Cours:ChenillardShield
Vous allez fabriquer une carte d'extension arduino (appelée communément "shield") que vous programmerez par la suite pour réaliser un chenillard.
Matériel nécessaire
Nous utiliserons :
- 1 carte arduino nano
- 1 plaque à essais
- 1 sachet fils M-M
- 6 leds de même couleur
- 6 résistances de 330Ω
- 1 potentiomètre avec fils M
- 1 interrupteur
- 1 bouton poussoir (carré gris)
- 2 résistances de 10kΩ
Câblage
Vous ferez le câblage des différents composants en respectant les contraintes suivantes
Composants | numéro de broche arduino | direction | Fonction |
---|---|---|---|
6 leds | 8 à 13 | sortie ! | affichage du chenillard |
1 potentiomètre | A1 | entrée | modification de la vitesse |
1 bouton poussoir | A2 | entrée | start/stop |
1 interrupteur | A3 | entrée | changement du sens |
Remarques :
- les leds seront connectées en cathodes communes (cf figure)
- on utilisera une résistance de 330Ω avec les leds
- pour le bouton et l'interrupteur, on mettra une résistance de pull-up de 10kΩ
- pour retrouver le câblage d'une résistance de tirage, lire cette page
Contraintes de routage
- PCB simple face
- la dimension du "shield" ne devra pas dépasser celle de la carte arduino UNO sur la hauteur et être la moins large possible
- piste de largeur maximale (extra-large)
- ne pas utiliser la borne GND du bornier côté entrées/sorties de la carte arduino
- nom de l'étudiant inscrit en cuivre "côté cuivre"
- leds alignées et dans l'ordre des sorties
- interrupteur, bouton poussoir et potentiomètre facilement accessibles
Critères de notation
Critères | pénalités |
---|---|
Non respect de la date de remise du typon | - 1pt/jour |
Fichier non exploitable (mauvais fichier ou échelle modifiée) | - 3pts |
Nom de l’étudiant non lisible côté piste | - 3pts |
Erreur de routage / pistes du mauvais côté / raccordement aux mauvaises bornes …. | -3 pts / faute |
Non respect des dimensions imposées pour le PCB | - 3pts |
Non respect de la largeur des pistes (largeur = extra larges) | - 2pts |
Esthétique (composants non alignés / en biais / mal répartis) | - 2pts maxi |
Pistes trop rapprochées (des pistes ou des pastilles) | - 2pts maxi |
Pistes trop longues | - 2 pts maxi |
Réalisation des typons
Une fois le routage terminé, après avoir vérifié que les pistes sont du bon côté et que votre nom apparaît bien "côté cuivre", suivre la procédure suivante :
- 1- faire Fichier / Exporter / pour la Production / créer en (SVG)... puis définir un emplacement pour la sauvegarde
- 2- ouvrir un document texte de type .odt (LibreOffice) ou .docx (Word)
- 3- a partir de l'emplacement ou vous avez sauvegardé vos fichiers .SVG, sélectionner le fichier nomFichier_etch_copper_bottom et placez-le sur le document texte SANS EN CHANGER L'ECHELLE
- 4- vérifiez que votre nom apparaît bien en transparence (écrit à l'envers), sinon il faut le changer de face sur le typon (sur Fritzing) et recommencer la procédure ...
- 5- transmettez ce fichier à votre enseignant, il servira pour imprimer le typon sur un calque
- 6- ouvrez le fichier nomFichier_etch_silk_top et faites-en une photo ou une copie, il vous sera nécessaire pour implanter vos composants lors de la réalisation du shield.
Dossier de conception
Voici un contenu type pour le dossier de conception que vous devez rédiger. Ce dossier doit permettre à quiconque de refaire votre carte à l'identique et/ou de la dépanner en un minimum de temps. Il doit donc contenir toutes les informations et les documents nécessaires pour remplir ces objectifs :
Présentation du produit
Prérequis
liste des connaissances et compétences nécessaires pour réaliser le chenillard
Fabrication des cartes PCB
-liste du matériel nécessaire (outillage)
-typons (routage)
-nomenclature (liste des composants)
-implantation
-conseils de fabrication
Simulation sur Tinkercard
insérer vues des différents tests
Tests
-procédure de tests
-procédures de dépannage
Foire aux questions
Programmation
Gestion des leds
Notion de port
En observant attentivement la figure ci-contre, on constate que les pattes utilisées pour commander les leds n'ont pas été choisies au hasard.
En effet, nous utilisons les pattes 8 à 13, qui correspondent pour le µcontrôleur au PORTB (PB0, PB1, PB2, ...).
Ainsi, il devient possible de modifier l'état de toutes ces sorties/leds, en une seule instruction :
void setup()
{
// déclarer toutes les pattes en sortie :
}
void loop()
{
//mettre toutes les sorties à '1'
PORTB = 0b00111111;
delay(200);
//mettre toutes les sorties à '0'
PORTB = 0b00000000; // ou PORTB = 0x00; ou encore PORTB = 0;
delay(200);
}
Utilisation
En vous inspirant du programme précédent, faire un programme affichant successivement ces 2 motifs pendant 0,5s.
Chenillard
Écrire le programme du chenillard
Il s'agit d'allumer une seule led et de faire en sorte qu'elle se "déplace" de droite à gauche :
Remarque : Rappelez-vous qu'il y a déjà une "boucle" dans votre programme .... la fonction loop !
Pour réaliser un chenillard simple, nous devons envoyer successivement les valeurs suivantes sur le port :
Remarque : Une solution élégante consiste à utiliser les opérateurs de décalage |
Changer la vitesse
Modifier votre programme pour que la vitesse du chenillard dépende du potentiomètre
Remarque : il s'agit bien évidemment de faire une lecture analogique.
Changer le sens de "rotation"
Modifier votre programme pour que le sens de rotation dépende de la position de l'interrupteur
Mise en route/arrêt
On souhaite pouvoir arrêter/démarrer le chenillard à chaque appui sur le bouton poussoir.
Faire les modifications nécessaires pour répondre à ce nouveau cahier des charges.
Allons plus loin
Pour les 2 programmes suivants, en cas de besoin, vous pouvez chercher des informations sur cette page.
Chenillard double
Pour un chenillard double, 2 leds se déplacent en sens opposé.
Écrire le programme correspondant.
Chenillard à entassement
un chenillard à entassement est un chenillard simple avec une led qui se déplace, mais une fois arrivée à l'extrémité la led reste allumée et on en rajoute une au départ, qui se déplace et s'empile sur la précédente ....
Écrire le programme correspondant.
Plusieurs mode
Faire en sorte que chaque appui sur le bouton poussoir change le type de chenillard :
- arrêté
- simple
- double
- entassement