Cours:Servomoteur
Sommaire
Documents
- datasheet atmega328p pages 131 et suivantes
- https://www.tinkercad.com/things/eobVEqIeLc6
- https://jamboard.google.com/d/1k4UKSvwl5C4Dgmn_d7etFfWvTS0Ey8keTnaGxuPSymE/viewer
Travail à réaliser
Commande du servomoteur
La figure ci contre montre le type de signal à générer pour piloter un servomoteur. Ce signal est donc de type MLI (ou PWM) avec les caractéristiques suivantes :
|
On utilisera le timer1 de l'atmega328p pour piloter ce servomoteur.
Sur quelles broches peut-on le relier ?
Faire un programme qui utilise le mode 14 du timer (cf p133 datasheet) et faire tourner le servomoteur de 0° à 180°
Potentiomètre et servomoteur
On ajoute un potentiomètre qui doit permettre de déplacer le servomoteur facilement.
Il faudra bien évidemment configurer le CAN pour observer le potentiomètre.
Ecrire un programme qui répond à ce cahier des charges, vous pouvez vous aider de l'algorithme suivant :
- configurer broche en sortie
- configurer timer1 en mode 14
- configurer le can
- répéter
- lancer une mesure analogique
- attendre la fin de la mesure (bit ADSC passe à 0 lorsque la mesure est terminée)
- lire la valeur de l'adc
- modifier le rapport cyclique
- ajouter un delay pour fonctionnement de tinkercad