LOCODUINO
Parlons Arduino => Vos projets => Discussion démarrée par: msport le décembre 17, 2019, 10:37:05 pm
-
Suite à la discussion http://locoduino.org/spip.php?article159#forum4306 visant à utiliser la bibliothèque SlowMotionServo pour les ATTiny donc en 8 bits et aux indications de Jean-Luc, je l'ai copiée la modifiant et renommée en SlowMotionServo8Bit pour éviter l’incompatibilité de l'original modifié avec les Arduino.
A tester, mais elle compile avec l'exemple Remise.ino (modifié avec Servo8Bit.h )
-
Est ce qu'il ne vaudrait pas mieux modifier la bibliothèque originale et utiliser des #ifdef en fonction du modèle d'Arduino pour compiler ?
-
Bonjour à tous.
J'ai testé la nouvelle version de Remise.ino avec la bibliothèque SlowMotion8Bit avec un attiny85.
Je confirme que la compilation se fait sans problème mais hélas les servos ne bougent pas... :(
J'avais défini les pins comme ceci:
const byte pinServoDroitRemise1 = 2;
const byte pinServoGaucheRemise1 = 1;
const byte pinBoutonRemise1 = 0;
Je précise que le fonctionnement des servos a été validé avant et après par un testeur de servo.
J'ai utilisé deux attiny85 à 8Mhz qui ont donné le même résultat, ils ont été vérifiés avant et après au moyen d'un petit montage de test pour m'assurer que les pins n'étaient pas défectueuses...
Quelqu'un d'autre aurait il testé cette nouvelle version de la bibliothèque?
Merci par avance
-
Bonjour à tous.
Serai je l'un des seuls à utiliser l'ATtiny85?
-
Non non, il y a plein d’exemples ici.
-
Je le sais bien Dominique, mais j' espérais que quelqu'un d'autre que moi aurait testé la bibliothèque SlowMotion8bit avec un ATtiny85.
Pourquoi je m'obstine sur ce petit microcontrôleur?
C'est tout simplement que je n'utilise pas un canon pour tuer les mouches :)
Quand un montage ne nécessite pas un grand nombre d'entrées/sorties qui imposerait un arduino Uno par exemple, cette petite puce convient parfaitement.
En fait je vérifie avec le Uno et je finalise avec l'Attiny.
De même je me suis lancé sur l'ATtiny84 en adaptant le projet proposé par LIKIKI relatif à'l'affichage de la vitesse des trains sur un LCD.
-
Un Arduino Pro Mini est petit et pas plus cher qu’un ATTiny 85. J’ai un stock pour ces petites applications.
-
Bonjour,
L'ATtiny 84, pour le même prix, a un timer 16 bits et donc supporte la bibliothèque Servo
-
Bonjour,
j'ai un servo actionnant automatiquement une aiguille par détecteur infra-rouge et Arduino. Le programme a été testé sur Uno avec la bibliothèque Servo et fonctionne sans problème.
J'ai ensuite essayé d'utiliser un ATtiny85, avec la bibliothèque Servo8bit.h pour les mêmes raisons que Fantasio.
J'utilise un kit Digispark programmé par l'IDE avec l'USB; testé OK avec le programme Exemples>Digispark_Exemples>Start
Le servo a été testé OK indépendamment.
J'ai rédigé un programme d'essai très simple pour essayer de piloter mon servo, un Modelcraft ES-030:
- j'inclus la bibliothèque dans le programme Digispark_Exemples>Start avec
#include <Servo8Bit.h>
- j'ajoute les instructions qui vont bien pour allouer la sortie vers le servo:
pinAig = de zéro à 4 sauf 1
pinMode(pinAig, OUTPUT);
MotAig.attach(pinAig);
- dans le loop, j'ajoute une instruction pour bouger le moteur dans un sens quand la LED Builtin s'allume, et dans l'autre sens quand elle s'éteint:
MotAig.write(angle);
Même résultat: compilation et téléversement sans problème mais rien ne se passe.
Pire: il semble que le programme ne fonctionne plus du tout car la LED builtin ne clignote plus.
J'ai essayé avec le servo branché et débranché: pas de différence.
J'ai essayé successivement les sorties P0 à P4 du Digispark (sauf P1 qui sert à la LED): même échec.
Précision complémentaire: j'ai par ailleurs fait fonctionner sans problème le programme Locoduino de chenillard pour ATtiny.
Comme il semble que je ne sois pas le seul à rencontrer ce problème de pilotage de servo avec ATtiny, je pense que je vais devoir retourner au Uno, sauf si un expert propose une solution que je serai enchanté de tester.
-
Je pense qu'il vaut mieux s'en tenir à la proposition de Jean-Luc et de passer à l'ATTiny84 avec la bibliothèque 16 bits.
-
Bonjour
Va faire un tour, tu trouvera PEUT ETRE la réponse
http://digistump.com/board/
-
Merci pour la suggestion, que j'ai suivie (je lis l'anglais) mais sans succès.
Le lien qui me semble le plus intéressant est:
http://www.cunningturtle.com/attiny4585-servo-library/
mais je n'ai pas réussi à compiler le programme de démonstration proposé. J'ai seulement des rudiments de programmation et je ne comprends pas les erreurs signalées.
La lecture des autres liens et forums me laisse penser qu'il faudrait vraiment se plonger au cœur de la programmation de ces petites bêtes..
Comme je ne veux pas y passer trop de temps (mon hobby, c'est le train HO, pas la programmation), je vais en revenir à mon idée: Uno.
J'ai songé à utiliser un ATtiny84 mais c'est bien moins commode que le kit Digispark car on ne peut le (re)programmer directement via l'IDE: il faut un Uno. Pour une faible différence financière, le Uno (éventuellement clone) l'emporte encore par sa simplicité (du moins pour un non spécialiste).