Micro-robots communicants : Différence entre versions
(→Semaine 2) |
(→Semaine 6) |
||
(71 révisions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 33 : | Ligne 33 : | ||
<gallery widths=600px heights=300px> | <gallery widths=600px heights=300px> | ||
Fichier:xxy3.png|Partie USB | Fichier:xxy3.png|Partie USB | ||
− | Fichier:xxy4.png|Partiemicro-controleur | + | Fichier:xxy4.png|Partiemicro-controleur à la prémière version |
</gallery> | </gallery> | ||
Ligne 40 : | Ligne 40 : | ||
=== <span style="color:#6FB7B7">Semaine 2</span> === | === <span style="color:#6FB7B7">Semaine 2</span> === | ||
− | Dans la deuxième semaine, j'ai modifié un peu la schématique pour ajouter un quartz de plus faibles dimensions, comme ça, lors du soudage de la carte on pourra choisir de | + | Dans la deuxième semaine, j'ai modifié un peu la partie micro-contrôleur de la schématique pour ajouter un quartz de plus faibles dimensions, comme ça, lors du soudage de la carte on pourra choisir de souder l'un ou l'autre. |
− | souder l'un ou l'autre. | ||
− | + | Et j'ai ajouté les leds aussi. | |
− | + | J'ai ensuite terminé le routage. | |
− | [[Fichier:xxy6.png|thumb| | + | [[Fichier:xxy5.png|thumb|600px|left|Partie micro-contrôleur modifiée avec 2 quartz]] |
+ | |||
+ | [[Fichier:xxy6.png|thumb|400px|right|Carte routée]] | ||
<br style="clear: both;" /> | <br style="clear: both;" /> | ||
Ligne 66 : | Ligne 67 : | ||
| 1 | | 1 | ||
| http://fr.farnell.com/atmel/atmega328p-au/mcu-8bit-atmega-20mhz-tqfp-32/dp/1715486 | | http://fr.farnell.com/atmel/atmega328p-au/mcu-8bit-atmega-20mhz-tqfp-32/dp/1715486 | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
| Condensateur 100nF | | Condensateur 100nF | ||
Ligne 100 : | Ligne 101 : | ||
| | | | ||
|- | |- | ||
− | |||
| FA238 | | FA238 | ||
| EPSON | | EPSON | ||
Ligne 107 : | Ligne 107 : | ||
| 1 | | 1 | ||
| http://www.mouser.fr/ProductDetail/Epson-Timing/TSX-3225-160000MF09Z-AC3/?qs=sGAEpiMZZMsBj6bBr9Q9acukpafrIaZ1%2fpqCtYImzz0%3d | | http://www.mouser.fr/ProductDetail/Epson-Timing/TSX-3225-160000MF09Z-AC3/?qs=sGAEpiMZZMsBj6bBr9Q9acukpafrIaZ1%2fpqCtYImzz0%3d | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
− | |||
| Servo moteur | | Servo moteur | ||
| Fitec | | Fitec | ||
Ligne 117 : | Ligne 116 : | ||
| http://www.robotshop.com/eu/fr/micro-servomoteur-9g-48v.html | | http://www.robotshop.com/eu/fr/micro-servomoteur-9g-48v.html | ||
| | | | ||
− | |||
|- | |- | ||
| Blue LED | | Blue LED | ||
Ligne 125 : | Ligne 123 : | ||
| 2 | | 2 | ||
| http://www.mouser.fr/ProductDetail/Kingbright/APHB1608LVBDZGKC/?qs=sGAEpiMZZMseGfSY3csMkcwbVq2rhH5Mu7mYFMpmGAhvgXBy5N%252b7kA%3d%3d | | http://www.mouser.fr/ProductDetail/Kingbright/APHB1608LVBDZGKC/?qs=sGAEpiMZZMseGfSY3csMkcwbVq2rhH5Mu7mYFMpmGAhvgXBy5N%252b7kA%3d%3d | ||
− | | | + | | |
− | |||
|- | |- | ||
| Green LED | | Green LED | ||
Ligne 136 : | Ligne 133 : | ||
| | | | ||
|- | |- | ||
− | |||
| Red LED | | Red LED | ||
| KingBright | | KingBright | ||
Ligne 145 : | Ligne 141 : | ||
| | | | ||
|- | |- | ||
− | |||
| Yellow LED | | Yellow LED | ||
| KingBright | | KingBright | ||
Ligne 153 : | Ligne 148 : | ||
| http://www.mouser.fr/ProductDetail/Kingbright/APT1608SYCK/?qs=sGAEpiMZZMsQtlBhqKq43Wn3QbM4OLG1 | | http://www.mouser.fr/ProductDetail/Kingbright/APT1608SYCK/?qs=sGAEpiMZZMsQtlBhqKq43Wn3QbM4OLG1 | ||
| | | | ||
− | |||
|- | |- | ||
| Orange LED | | Orange LED | ||
Ligne 162 : | Ligne 156 : | ||
| http://www.mouser.fr/ProductDetail/Kingbright/APTD1608SECK/?qs=sGAEpiMZZMt82OzCyDsLFNLWq0AjqZj1Bh9swU8LC68%3d | | http://www.mouser.fr/ProductDetail/Kingbright/APTD1608SECK/?qs=sGAEpiMZZMt82OzCyDsLFNLWq0AjqZj1Bh9swU8LC68%3d | ||
| | | | ||
− | |||
|- | |- | ||
| White LED 6200K | | White LED 6200K | ||
Ligne 171 : | Ligne 164 : | ||
| http://www.mouser.fr/ProductDetail/OSRAM-Opto-Semiconductors/LW-L283-Q1R2-3K8L-1-Z/?qs=sGAEpiMZZMsgSGrx0WqTbPUyJ8s29bGV | | http://www.mouser.fr/ProductDetail/OSRAM-Opto-Semiconductors/LW-L283-Q1R2-3K8L-1-Z/?qs=sGAEpiMZZMsgSGrx0WqTbPUyJ8s29bGV | ||
| | | | ||
− | |||
|- | |- | ||
| Infrarouge | | Infrarouge | ||
| OSRAM Opto Semiconductors | | OSRAM Opto Semiconductors | ||
− | | SFH | + | | SFH 4845 |
− | | | + | | mouser |
| 1 | | 1 | ||
− | | http://fr.rs-online.com/web/p/phototransistors/6548047/ | + | | http://fr.rshttp://fr.rs-online.com/web/p/phototransistors/6548047/-online.com/web/p/phototransistors/6548047/ |
| | | | ||
− | |||
|- | |- | ||
| 1kΩ Resistor | | 1kΩ Resistor | ||
Ligne 189 : | Ligne 180 : | ||
| http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ102/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejvfM9hA7acow%3d | | http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ102/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejvfM9hA7acow%3d | ||
| | | | ||
− | |||
|- | |- | ||
| 10kΩ Resistor | | 10kΩ Resistor | ||
Ligne 198 : | Ligne 188 : | ||
| http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ103/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejZIagwiN2IRk%3d | | http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ103/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejZIagwiN2IRk%3d | ||
| | | | ||
− | |||
|- | |- | ||
| 1MΩ Resistor | | 1MΩ Resistor | ||
Ligne 207 : | Ligne 196 : | ||
| http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ105/?qs=sGAEpiMZZMu61qfTUdNhG79AcIiSWYOgHx87yIE%2f9KKMdGhl9FJu5g%3d%3d | | http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ105/?qs=sGAEpiMZZMu61qfTUdNhG79AcIiSWYOgHx87yIE%2f9KKMdGhl9FJu5g%3d%3d | ||
| | | | ||
− | |||
|- | |- | ||
| 470Ω Resistor | | 470Ω Resistor | ||
Ligne 216 : | Ligne 204 : | ||
| http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/KTR03EZPJ471/?qs=sGAEpiMZZMu61qfTUdNhGwzMi690UM7UxxZFBtRl4vg%3d | | http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/KTR03EZPJ471/?qs=sGAEpiMZZMu61qfTUdNhGwzMi690UM7UxxZFBtRl4vg%3d | ||
| | | | ||
− | |||
|- | |- | ||
| 330Ω Resistor | | 330Ω Resistor | ||
Ligne 225 : | Ligne 212 : | ||
| http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ331/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejYH%2fBWzzt0Tg%3d | | http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ331/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejYH%2fBWzzt0Tg%3d | ||
| | | | ||
− | |||
|- | |- | ||
| 220Ω Resistor | | 220Ω Resistor | ||
Ligne 234 : | Ligne 220 : | ||
| http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ221/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejce8FZC1%2fFYU%3d | | http://www.mouser.fr/ProductDetail/ROHM-Semiconductor/ESR03EZPJ221/?qs=sGAEpiMZZMu61qfTUdNhG1IKPAnaLGejce8FZC1%2fFYU%3d | ||
| | | | ||
− | |||
|- | |- | ||
| switch | | switch | ||
Ligne 242 : | Ligne 227 : | ||
| 1 | | 1 | ||
| http://www.mouser.fr/ProductDetail/ALPS/SKQGADE010/?qs=sGAEpiMZZMsqIr59i2oRcrO5GDYRXDIX6cdtN26xmPE%3d | | http://www.mouser.fr/ProductDetail/ALPS/SKQGADE010/?qs=sGAEpiMZZMsqIr59i2oRcrO5GDYRXDIX6cdtN26xmPE%3d | ||
− | | | + | | <font style="color: green;">disponible</font> |
− | |||
|- | |- | ||
| USB Chip | | USB Chip | ||
Ligne 251 : | Ligne 235 : | ||
| 1 | | 1 | ||
| http://www.mouser.fr/ProductDetail/FTDI/FT232RL-REEL/?qs=sGAEpiMZZMs5ceO8zL%252bTxyQLQIH6hE7q | | http://www.mouser.fr/ProductDetail/FTDI/FT232RL-REEL/?qs=sGAEpiMZZMs5ceO8zL%252bTxyQLQIH6hE7q | ||
− | | | + | | <font style="color: green;">disponible</font> |
− | |||
|- | |- | ||
| USB Connecteur | | USB Connecteur | ||
Ligne 260 : | Ligne 243 : | ||
| 1 | | 1 | ||
| / | | / | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
|- | |- | ||
− | | | + | | LM1117IMPX-5 |
− | | | + | | Régulateur 5v |
| / | | / | ||
| / | | / | ||
| 1 | | 1 | ||
| / | | / | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
|- | |- | ||
| TB6612FNG | | TB6612FNG | ||
− | | | + | | Contrôleur moteurs |
| / | | / | ||
| / | | / | ||
| 1 | | 1 | ||
| / | | / | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
|- | |- | ||
− | | | + | | Quartz |
| ECS | | ECS | ||
| ECS-160-20-3X-TR | | ECS-160-20-3X-TR | ||
Ligne 287 : | Ligne 270 : | ||
| 1 | | 1 | ||
| http://www.mouser.fr/ProductDetail/ECS/ECS-160-20-3X-TR/?qs=sGAEpiMZZMvAbnEMxb34PZ9bYWrwSXiB | | http://www.mouser.fr/ProductDetail/ECS/ECS-160-20-3X-TR/?qs=sGAEpiMZZMvAbnEMxb34PZ9bYWrwSXiB | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
| infrarouge récepteur | | infrarouge récepteur | ||
Ligne 311 : | Ligne 294 : | ||
| 2 | | 2 | ||
| http://www.mouser.fr/ProductDetail/Parallax/28821/?qs=sGAEpiMZZMu7pzTmx5q0Qavt7B3%252b7HBc | | http://www.mouser.fr/ProductDetail/Parallax/28821/?qs=sGAEpiMZZMu7pzTmx5q0Qavt7B3%252b7HBc | ||
− | | | + | | <font style="color: green;">disponible</font> |
|- | |- | ||
| Roue de balance | | Roue de balance | ||
Ligne 323 : | Ligne 306 : | ||
|} | |} | ||
− | + | ===Chassis=== | |
+ | |||
+ | Après avoir établie la liste des composants, j'ai commencé à concevoir les 2 chassis : | ||
− | + | *un chassis pour le robot avec servo-moteurs ; | |
+ | *un chassis pour le robot avec les vibreurs. | ||
− | Les chassis | + | Les chassis ont été réalisés avec une découpeuse laser sur du plexiglass. Les découpes ont été dessinées avec le logiciel <code>inkscape</code>. |
− | + | [[Fichier:xxy88.png|thumb|600px|left|Chassis servo-moteurs]] | |
+ | |||
+ | [[Fichier:xxy7.png|thumb|600px|right|Chassis vibreurs]] | ||
− | + | <br style="clear: both;" /> | |
+ | === <span style="color:#6FB7B7">Semaine 3</span> === | ||
− | + | *Après beaucoup d'essais j'ai fabriqué le chassis comme montré sur la figure suivante : | |
− | |||
− | |||
− | + | [[Fichier:xxy18.png|thumb|500px|left|Chassis servo-moteurs]] | |
+ | [[Fichier:xxy28.png|thumb|500px|right|Chassis vibreurs]] | ||
+ | <br style="clear: both;" /> | ||
+ | *Dans la troisième semaine, j'ai soudé les composants de la carte. | ||
+ | [[Fichier:xinyue14.png|thumb|400px|left|la carte]] | ||
+ | <br style="clear: both;" /> | ||
=== <span style="color:#6FB7B7">Semaine 4</span> === | === <span style="color:#6FB7B7">Semaine 4</span> === | ||
+ | *Dans la quatrième semaine, j'ai assemblé le robot et testé les fonctionnements des servo-moteurs et les vibreurs. Et ça marche bien. | ||
+ | |||
+ | [[Fichier:xxy123.png]] | ||
+ | |||
+ | *J'ai étudié les codes de servo-moteur continu et les protocoles infrarouge. | ||
+ | *J'ai écrit les codes et réalisé le contrôle de mouvement avec une télécommande IR de PHILIPS. | ||
+ | |||
+ | [[Fichier:code_infra_servo.zip]] | ||
+ | |||
+ | |||
+ | *J'ai rencontré des problèmes : | ||
+ | #L'orientation de TSOP1 est inversée sur le PCB, il faut le souder en croisant des pattes. | ||
+ | #les TSOPs doivent être liés à des broches d'interruption mais ils sont liés à des broches ADC, il faut modifier. | ||
+ | #Pour la partie d'alimentation, il faut ajouter un interrupteur pour économiser la pile. | ||
+ | #On va lier le VCC de chaque TSOP directement sur des sorties de l'ATmega pour choisir celui à utiliser. | ||
=== <span style="color:#6FB7B7">Semaine 5</span> === | === <span style="color:#6FB7B7">Semaine 5</span> === | ||
+ | * Le chassis "servo-moteur" n'est pas très stable, chaque fois que le robot avance et recule vite, il tombe. Donc j'ai modifié le chassis pour poser la pile à plat et j'ai changé les roues par des modèles plus petits. | ||
+ | |||
+ | [[Fichier:chassiservomo2di.png]] | ||
+ | |||
+ | [[Fichier:chassiservoas.jpg|thumb|left|500px|Chassis servo-moteurs]] | ||
+ | |||
+ | <br style="clear: both;" /> | ||
+ | * J'ai aussi modifié le chassis "vibreur", j'ai ajouté des dents pour que les vibreurs puissent faire avancer le robot dans une direction donnée. | ||
+ | [[Fichier:chassivibe.png]] | ||
+ | |||
+ | [[Fichier:chassivibeas.jpg|thumb|left|500px|Chassis vibreur]] | ||
+ | |||
+ | <br style="clear: both;" /> | ||
+ | |||
+ | * J'ai conçu un chassis "moto-réducteur", il est semblable au chassis "servo-moteur", mais la taille de moteur est un peu plus grande : | ||
+ | |||
+ | [[Fichier:chassi motord1dd.png]] | ||
+ | |||
+ | [[Fichier:chassimotoras.jpg|thumb|left|500px|Chassis moteur]] | ||
+ | <br style="clear: both;" /> | ||
=== <span style="color:#6FB7B7">Semaine 6</span> === | === <span style="color:#6FB7B7">Semaine 6</span> === | ||
+ | |||
+ | Dans la dernière semaine, j'ai soudé 2 autres cartes. Une pour le robot vibreur et l'autre pour le robot à base de moto-réducteur. J'ai aussi essayé d'écrire les codes en C pour le robot à base de moto-réducteur. | ||
+ | |||
+ | Pour le robot à base de moto-réducteur, il y a 7 broches à contrôler : | ||
+ | |||
+ | *STBY est pour activer le circuit. Si STBY est LOW le circuit est désactivé, si STBY est High, le circuit est activer. | ||
+ | |||
+ | *Chaque moteur est contrôlé par trois signaux PWM: AIN1 AIN2 et PWMA pour moteur A, BIN1 BIN2 et PWMB pour moteur B. PWMA va fixer la vitesse de rotation (de 0 à 255). AIN1 et AIN2 vont fixer le sens de rotation en commandant les sorties moteurs A01 et A02. | ||
+ | |||
+ | [[Fichier:xxy1654.png]] | ||
+ | |||
+ | Du coup j'ai essayé d'initialiser toutes les broches en C, et écrit les fonctions en C, normalement il doit marcher mais la fonction delay marche pas bien, et il ne peut pas reculer. Il y a peut être quelques problèmes avec les régistres. | ||
+ | |||
+ | J'ai préparé le soutenance et écrit le rapport. | ||
== <span style="color:#D94600"> Fiches rendus</span> == | == <span style="color:#D94600"> Fiches rendus</span> == | ||
+ | |||
+ | ==Rapport== | ||
+ | |||
+ | * [[Media:rapport de stage de XUXinyue.pdf]] | ||
+ | |||
+ | ==Les fichiers== | ||
+ | |||
+ | * [[Fichier:3 châssis des robots.zip]] | ||
+ | * [[Fichier:code_infra_servo.zip]] | ||
+ | * [[Fichier:code_moteur base à réducteur.zip]] |
Version actuelle datée du 21 juillet 2017 à 17:11
Sommaire
Cahier des charges
Présentation générale du projet
Objectif du stage
L'objet de ce projet est de concevoir et fabriquer des robots mobiles relativement petits, simples et peu coûteux. Les robots devront pouvoir communiquer entre eux par infrarouge. La simplicité et le bas côut de fabrication des robots doit permettre d'en fabriquer en nombre suffisant pour simuler des comportements d'essaim d'insectes.
Description du stage
L'objectif de mon stage est de réaliser une petite carte de contrôle de robot mobile. Les robots pourront avoir trois types de motorisations : vibreurs, servo-moteurs continus et micro-moteurs.
I faut d'abord concevoir la carte en se basant sur les cartes déjà conçues à l'école. Il m'est demandé de partir d'une carte basée sur un ATMega328p et un contrôleur Ethernet. J'ai retiré ce dernier, le convertisseur de niveaux et d'autres composants inutiles pour mon projet. Il faut ajouter un contrôleur de moteur (TB6612), des détecteurs infrarouges (3 TSOP IR) , une LED infrarouge et des lignes pour les servo-moteurs. La carte doit être la plus petite possible, il a été un temps envisagé de positionner le contrôleur de moteurs sur la face inférieure.
Par la suite, il faudra écrire le code ATMega328p pour générer les PWM nécessaires aux servo-moteurs ou au contrôleur de moteurs. Pour la communication nous utiliserons le protocole RC5 qui permet une certaine immunité à la lumière ambiante.
Enfin, nous allons tester les trois motorisations: vibreurs, servo-moteurs continus et micro-moteurs pour vérifier le bon fonctionnement de la carte. Si plusieurs robots fonctionnent certains seront programmés pour repérer les autres et les poursuivre.
Avancement du stage
Semaine 1
Durant la première semaine, j'ai d'abord consulté quelques documents pour mieux comprendre ce projet.
Ensuite j'ai réalisé le schématique de la carte contrôleur à l'aide du logiciel Fritzing principalement en ajoutant la partie contrôle de moteurs.
Les figures suivantes constituent la schématique de la carte :
Après la schématique, je me suis attaqué au routage de la carte.
Semaine 2
Dans la deuxième semaine, j'ai modifié un peu la partie micro-contrôleur de la schématique pour ajouter un quartz de plus faibles dimensions, comme ça, lors du soudage de la carte on pourra choisir de souder l'un ou l'autre.
Et j'ai ajouté les leds aussi.
J'ai ensuite terminé le routage.
Liste de composants
Il m'a été demandé la liste exhaustive des composants nécessaires pour les micro-robots.
Le micro servo-moteur a rotation continue sélectionné est un FS90 [1]. Ses dimensions sont 23,2 X 12,5 X 22 mm.
Chassis
Après avoir établie la liste des composants, j'ai commencé à concevoir les 2 chassis :
- un chassis pour le robot avec servo-moteurs ;
- un chassis pour le robot avec les vibreurs.
Les chassis ont été réalisés avec une découpeuse laser sur du plexiglass. Les découpes ont été dessinées avec le logiciel inkscape
.
Semaine 3
- Après beaucoup d'essais j'ai fabriqué le chassis comme montré sur la figure suivante :
- Dans la troisième semaine, j'ai soudé les composants de la carte.
Semaine 4
- Dans la quatrième semaine, j'ai assemblé le robot et testé les fonctionnements des servo-moteurs et les vibreurs. Et ça marche bien.
- J'ai étudié les codes de servo-moteur continu et les protocoles infrarouge.
- J'ai écrit les codes et réalisé le contrôle de mouvement avec une télécommande IR de PHILIPS.
- J'ai rencontré des problèmes :
- L'orientation de TSOP1 est inversée sur le PCB, il faut le souder en croisant des pattes.
- les TSOPs doivent être liés à des broches d'interruption mais ils sont liés à des broches ADC, il faut modifier.
- Pour la partie d'alimentation, il faut ajouter un interrupteur pour économiser la pile.
- On va lier le VCC de chaque TSOP directement sur des sorties de l'ATmega pour choisir celui à utiliser.
Semaine 5
- Le chassis "servo-moteur" n'est pas très stable, chaque fois que le robot avance et recule vite, il tombe. Donc j'ai modifié le chassis pour poser la pile à plat et j'ai changé les roues par des modèles plus petits.
- J'ai aussi modifié le chassis "vibreur", j'ai ajouté des dents pour que les vibreurs puissent faire avancer le robot dans une direction donnée.
- J'ai conçu un chassis "moto-réducteur", il est semblable au chassis "servo-moteur", mais la taille de moteur est un peu plus grande :
Semaine 6
Dans la dernière semaine, j'ai soudé 2 autres cartes. Une pour le robot vibreur et l'autre pour le robot à base de moto-réducteur. J'ai aussi essayé d'écrire les codes en C pour le robot à base de moto-réducteur.
Pour le robot à base de moto-réducteur, il y a 7 broches à contrôler :
- STBY est pour activer le circuit. Si STBY est LOW le circuit est désactivé, si STBY est High, le circuit est activer.
- Chaque moteur est contrôlé par trois signaux PWM: AIN1 AIN2 et PWMA pour moteur A, BIN1 BIN2 et PWMB pour moteur B. PWMA va fixer la vitesse de rotation (de 0 à 255). AIN1 et AIN2 vont fixer le sens de rotation en commandant les sorties moteurs A01 et A02.
Du coup j'ai essayé d'initialiser toutes les broches en C, et écrit les fonctions en C, normalement il doit marcher mais la fonction delay marche pas bien, et il ne peut pas reculer. Il y a peut être quelques problèmes avec les régistres.
J'ai préparé le soutenance et écrit le rapport.