Cours:RobotArrex : Différence entre versions
(→{{Bleu|Code de test de DRV8830}}) |
(→{{Bleu|Code de test de DRV8830}}) |
||
Ligne 118 : | Ligne 118 : | ||
*Sur arduino, menu Croquis, importer la bibliothèque puis add library | *Sur arduino, menu Croquis, importer la bibliothèque puis add library | ||
*'''Attention''' : Sur certains postes, vérifier dans les {{Rouge|préférences}} que le répertoire par défaut est correct ! | *'''Attention''' : Sur certains postes, vérifier dans les {{Rouge|préférences}} que le répertoire par défaut est correct ! | ||
+ | |||
+ | Vous pouvez vérifier le bon fonctionnement du programmateur en exécutant la ligne suivante dans un terminal | ||
+ | <source lang=bash> | ||
+ | avrdude -c avrisp2 -P usb -p m328p | ||
+ | </source> | ||
==={{Vert|Utilisation}}=== | ==={{Vert|Utilisation}}=== |
Version actuelle datée du 15 décembre 2016 à 12:42
Sommaire
Fabrication du robot
Le robot Arrex est composé de 2 cartes électronique, que vous allez fabriquer.
Pour ces 2 cartes et assez naturellement, le côté :
- TOP sera le côté vers le haut.
- BOTTOM sera le côté vers la table.
Il faudra donc nécessairement faire un "miroir" sur les photocoupleurs par réflexion CNY70.
Consignes globales
Lors de la conception des cartes électroniques, vous devrez respecter les critères suivants :
- les pistes devront:
- être larges
- idéalement 0,8mm ou 0,6mm (ou plus si possible)
- 0,4mm pour passer entre des pastilles
- ponctuellement 0,3mm (voir 0,2mm sans garanti d'absences de coupures !)
- être courtes
- être espacées
- être larges
- autant de vias que nécessaires (dans la limite de votre courage !)
- positionnement
- ne pas sortir du contour
- ne pas déplacer
- le contour
- les connecteurs
- les 3 perçages de centrage
- marquage
- prévoir l'inscription de vos noms
- vous pouvez éventuellement supprimer/réduire le texte proposé
Carte "capteurs"
Consignes
Les recommandations suivantes sont spécifiques à la carte capteur, à savoir :
- les capteurs seront :
- disposés juste au dessus de la ligne horizontale
- collés côte à côte
- disposés symétriquement par rapport à la ligne verticale
- attention au bon positionnement des capteurs (droite, milieu, côté ...)
- la carte doit être simple face (toutes les pistes sur la face TOP )
Documents
Vous avez à disposition les 2 fichiers suivants :
- Media:Arexx Carte base.sch : schéma électrique de la carte avec les connecteurs.
- Media:Arexx Carte base.brd : circuit imprimé (PCB) de la carte avec le contour et les positions imposées.
- Media:CNY70.lbr : librairie pour le photocoupleur par réflexion CNY70
Composants
Type | Composant/Boitier | Librairie Eagle | Référence eagle |
---|---|---|---|
Résistance | CMS : 1206 | rcl | R-EU_R1206 |
Photocoupleur | CNY70 | CNY70 | CNY70 |
Transistor NPN | CMS : SOT23 | transistor-npn | BC849SMD |
Led | 5mm ou 3mm | led | LED5MM ou LED3MM |
Connecteur | barrette femelle sécable | con-lstb | MA06-1 |
Carte "gestion"
Consignes
Les recommandations suivantes sont spécifiques à la carte de gestion, à savoir :
- les DRV8830 :
- seront alimentés par des pistes très larges ( GND / VDD )
- les pistes allant des DRV8830 aux moteurs doivent être les plus courtes et les plus larges possibles
- la pastille située au milieu du composant sert à évacuer la chaleur, il faut la relier à une piste de grande surface
- le TMA0505S :
- sera raccordé à des pistes très larges ( alimentations )
- les condensateurs C2, C3, C4 :
- devront être placés au plus près des DRV8830 et du microcontrôleur ( découplage des alimentations )
Documents
Vous avez à disposition les 2 fichiers suivants :
- Media:Arexx Carte gestion.sch : schéma électrique de la carte avec les connecteurs.
- Media:Arexx Carte gestion.brd : circuit imprimé (PCB) de la carte avec le contour et les positions imposées.
Si besoin, le fichier de librairie suivant contient, entre autre, le composant DRV8830
- Media:Troyesgeii.lbr : librairie eagle
Composants
Bouton | Arduino Pin | Port | Interruption | Niveau logique si bouton appuyé |
---|---|---|---|---|
Gauche | 4 | PD4 | 0 | |
Milieu | 3 | PD3 | int1 | 0 |
Droite | 2 | PD2 | int0 | 0 |
Programmation du robot
Code de test de DRV8830
Librairie drv8830
On utilise une librairie développée par sparkfun (https://github.com/sparkfun/SparkFun_MiniMoto_Arduino_Library)
- Télécharger le fichier suivant : Media:Minimoto.zip
- Sur arduino, menu Croquis, importer la bibliothèque puis add library
- Attention : Sur certains postes, vérifier dans les préférences que le répertoire par défaut est correct !
Vous pouvez vérifier le bon fonctionnement du programmateur en exécutant la ligne suivante dans un terminal
avrdude -c avrisp2 -P usb -p m328p
Utilisation
#include <SparkFunMiniMoto.h> // Include the MiniMoto library
// Create two MiniMoto instances, with different address settings.
MiniMoto motorG(0xC0); // moteur gauche
MiniMoto motorD(0xD0); // moteur droit
void setup()
{
....
}
void loop()
{
...
motorD.drive(i);
motorG.drive(j);
...
}
Classe | MiniMoto | ||
---|---|---|---|
Méthodes |
|