LOCODUINO

Parlons Arduino => Vos projets => Discussion démarrée par: msport le décembre 17, 2019, 10:37:05 pm

Titre: La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté 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 )
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Thierry le décembre 19, 2019, 04:20:19 pm
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 ?
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Fantasio le février 02, 2020, 03:29:49 pm
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

Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Fantasio le février 13, 2020, 05:46:57 pm
Bonjour à tous.

Serai je l'un des seuls à utiliser l'ATtiny85?
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Dominique le février 13, 2020, 08:47:46 pm
Non non, il y a plein d’exemples ici.
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Fantasio le février 14, 2020, 01:44:46 am
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.
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Dominique le février 14, 2020, 09:01:49 am
Un Arduino Pro Mini est petit et pas plus cher qu’un ATTiny 85. J’ai un stock pour ces petites applications.
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: Jean-Luc le février 14, 2020, 04:01:02 pm
Bonjour,

L'ATtiny 84, pour le même prix, a un timer 16 bits et donc supporte la bibliothèque Servo
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: lambda95t3 le avril 01, 2020, 06:27:45 pm
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.
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: msport le avril 01, 2020, 11:15:48 pm
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.
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: CATPLUS le avril 02, 2020, 06:31:09 am
Bonjour

Va faire un tour, tu trouvera PEUT ETRE la réponse

http://digistump.com/board/
Titre: Re : La bibliothèque SlowMotionServo en 8 bits pour ATTiny
Posté par: lambda95t3 le avril 02, 2020, 04:02:40 pm
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).