Aller au contenu


Photo
- - - - -

Codeur optique pour moteur avec ventilateur

moteur codeur

  • Veuillez vous connecter pour répondre
63 réponses à ce sujet

#1 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 02:42

Je partage avec vous ma bricole du soir. J'ai ressorti mes moteurs rs 775 que j'apprécie bien, pas cher et puissant, beaucoup de couple.

Bref la bricole concerne un codeur pour ce moteur. Seule la vitesse m'intéresse, donc voilà ce que j'ai fait:

20170303_021631.jpg

 

Fichier joint  support capteur.STL   33,29 Ko   21 téléchargement(s)
 

Une petite pièce en plastique dans laquelle j'ai mis un phototransistor et une led ir.

20170303_020909.jpg

J'ai collé ça sur une des ouvertures pour la ventilation, pour compter le passage des pales. Il y en a 10 en tout.


20170303_020831.jpg

Pour le prototypage j'ai utilisé le phototransistor en émetteur commun, la sortie est comparée à une tension que je règle grâce à un potar (aop en comparateur) pour avoir un signal tout ou rien.

J'ajuste le potar de façon à avoir un rapport cyclique de 50% pour aller le plus haut possible en fréquence.

Voici la vidéo du réglage



Voilà, un petit codeur à faire soi même rapidement.

Des idées pour l'améliorer ? :)



#2 Mike118

Mike118

    Pilier du forum

  • Administrateur
  • PipPipPipPipPip
  • 5 513 messages
  • Gender:Male

Posté 03 mars 2017 - 02:50

En mettre un deuxième ? =) 


Robot-Maker ne se résume pas que au forum !
Jetez un oeil au blog, aux tutoriels, aux ouvrages, au robotscope  et à la  boutique : le shop des makers   !
N'hésitez pas à contribuer à la communauté et à partager vos trucs et astuces : Ensemble nous irons plus loin ! =)
 

Robot-Maker a pour vocation de :

  • Permettre à des hobbyistes passionnés de s'entraider pour qu'ils puissent mener à bien leurs créations.
  • Permettre à des projets innovants de voir le jour dans le domaine de la robotique et des nouvelles technologies.

à très bientôt ! 


#3 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 03:06

En mettre un deuxième ? =) 

Je ferai l'essai demain :) ca devrait aller car les pales sont positionnées d'une façon différente d'une ouverture à l'autre.



#4 Ulysse

Ulysse

    Membre passionné

  • Membres
  • PipPipPip
  • 308 messages
  • Gender:Male
  • Location:Bretagne
  • Interests:Du moment qu'on s'amuse..

Posté 03 mars 2017 - 10:26

Tout en laissant une ouverture libre pour que ça respire. En tout cas ça fait très pro.
Est-ce que la seconde led perturbera le premier phototransistor ...
Parce qu' en fait on connaît le sens de rotation puisque on le pilote.

#5 Oliver17

Oliver17

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 056 messages
  • Gender:Male
  • Location:LR

Posté 03 mars 2017 - 10:29

Je n'ai pas vraiment compris l'utilité de la chose :(



#6 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 12:59

Même si parfois ça peut être utile de connaître le sens de rotation sans envoyer de commande au moteur, je voyais le 2eme codeur plutôt pour doubler la précision.

Mais du coup je viens de penser à un truc. J'observe ça quand je regarde par les ouvertures
20170303_124347.jpg
20170303_124324.jpg

Lorsqu'une pâle est au centre d'une ouverture, 2 pales sont sur les côtés pour l'autre ouverture. Donc comme je me suis arrangé pour avoir un signal carré, si je compte les fronts montants et descendants, l'info du 2eme codeur devient redondante pour mesurer la vitesse?

Par exemple le front montant d'un codeur correspond au front descendant de l'autre codeur?

J'imprime l'autre codeur, on verra bien^^

Oliver le codeur sur un moteur sert à mesurer la vitesse de rotation et/ou le sens de rotation. Ou une distance parcourue par une roue par exemple. La je me sers du ventilateur du moteur comme roue codeuse.

#7 Ulysse

Ulysse

    Membre passionné

  • Membres
  • PipPipPip
  • 308 messages
  • Gender:Male
  • Location:Bretagne
  • Interests:Du moment qu'on s'amuse..

Posté 03 mars 2017 - 02:00

Si on veut connaitre le sens de rotation, l'idée est d'obtenir deux signaux en quadrature. Et vu la disposition des pales ça marcherait parfaitement  :

  • hardware : avec une bascule D après les phototransistors (et donc avant l'entrée numérique qui va récupérer le signal)
  • software : les signaux déclenchent chacun une interruption qui bascule deux boolean

Dans les 2 cas on ne tiendrait compte que du front montant ou descendant. On ne doublerait pas la précision mais comme il doit y avoir une dizaine de pales, ça reste vraiment bien.



#8 Mike118

Mike118

    Pilier du forum

  • Administrateur
  • PipPipPipPipPip
  • 5 513 messages
  • Gender:Male

Posté 03 mars 2017 - 02:12

Moi je pense qu'avec deux tu auras des signaux en quadrature et qu'en plus de pouvoir lire le sens tu vas pouvoir doubler ta résolution si tu comptes à chaque changement . 

Pas comme dans ce code 

 

 

qui ne permet pas de double la résolution car je ne déclenche l'interruption que sur 1 port ^^

ce qui permet de facilement utiliser 2 moteurs avec encodeur juste en doublant le code et en le mettant sur le pin 3 et 5 par exemple .

Mais si c'est pour un seul moteur il est possible de mettre les encodeurs sur les pins  2 et 3 et faire une petite modif ;) 

Sinon c'est aussi possible de mettre 2 moteurs  avec encodeur en quadrature et la double résolution, mais par contre il faut utiliser un composant supplémentaire et sacrifier 2  pins de plus que pour la solution facile ...  ( perso c'est ce que j'utilise =) ) 

 


Robot-Maker ne se résume pas que au forum !
Jetez un oeil au blog, aux tutoriels, aux ouvrages, au robotscope  et à la  boutique : le shop des makers   !
N'hésitez pas à contribuer à la communauté et à partager vos trucs et astuces : Ensemble nous irons plus loin ! =)
 

Robot-Maker a pour vocation de :

  • Permettre à des hobbyistes passionnés de s'entraider pour qu'ils puissent mener à bien leurs créations.
  • Permettre à des projets innovants de voir le jour dans le domaine de la robotique et des nouvelles technologies.

à très bientôt ! 


#9 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 03:14

Les 2 codeurs sont montés

20170303_145247.jpg

Comme prévu, des beaux petits signaux en quadrature :)

videotogif_2017.03.03_15.16.22.gif

Merci pour l'exemple de code, les commentaires sont clairs ;)

Par contre je ne m'intéresse qu'à la vitesse et c'est pour un seul moteur. Du coup pour en revenir à ce que je disais, on voit que le front montant d'un codeur correspond au front descendant du 2eme codeur. Donc si on compte le nombre de tick sur chaque front, les informations du codeur 1 sont redondantes avec les informations du codeur 2?

(Je me dirige lentement mais sûrement dans la fabrication d'un super servo, j'y pense depuis que je n'ai pas trouvé les servomoteurs que je voulais quand je faisais mon quadrupède version grand format. Je dis ça pour mettre le bricolage de ce codeur dans son contexte, ce n'est pas pour faire tourner une roue par exemple.)



#10 Mike118

Mike118

    Pilier du forum

  • Administrateur
  • PipPipPipPipPip
  • 5 513 messages
  • Gender:Male

Posté 03 mars 2017 - 03:38

ok ton problème c'est que tu as réglé pour faire un "beau carré" il faudrait le faire deux fois moins grand en fait ^^ bon sinon après tu prends un moteur avec encodeur monté ;)


Robot-Maker ne se résume pas que au forum !
Jetez un oeil au blog, aux tutoriels, aux ouvrages, au robotscope  et à la  boutique : le shop des makers   !
N'hésitez pas à contribuer à la communauté et à partager vos trucs et astuces : Ensemble nous irons plus loin ! =)
 

Robot-Maker a pour vocation de :

  • Permettre à des hobbyistes passionnés de s'entraider pour qu'ils puissent mener à bien leurs créations.
  • Permettre à des projets innovants de voir le jour dans le domaine de la robotique et des nouvelles technologies.

à très bientôt ! 


#11 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 03:44

Le truc c'est que si je diminue le temps à l'état haut ou bas, je loupe des ticks à haute vitesse^^
Je vais essayer d'augmenter la sensibilité du capteur pour voir si je ne loupe plus de tick.

#12 Ulysse

Ulysse

    Membre passionné

  • Membres
  • PipPipPip
  • 308 messages
  • Gender:Male
  • Location:Bretagne
  • Interests:Du moment qu'on s'amuse..

Posté 03 mars 2017 - 04:17

 

Comme prévu, des beaux petits signaux en quadrature

 

Il me semble que sur le GIF les signaux sont en opposition et pas en quadrature .. je me trompe ?



#13 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 04:26

Exacte je me suis trompé! C'est logique puisque quand il y a une pale en face d'un codeur il y a un trou en face de l autre codeur. Donc faudrait décaler un codeur.. ou détecter le passage des pales plus précisément peut être.. Ca devient un peu hasardeux comme réglage^^

Dans l'état si j'ai 20 comptages par tour ça me convient.

 

 

Mike118, (le) 03 Mar 2017 - 3:38 PM, a écrit :

 bon sinon après tu prends un moteur avec encodeur monté ;)

je t'exaspère avec mon codeur c'est ça :P



#14 Mike118

Mike118

    Pilier du forum

  • Administrateur
  • PipPipPipPipPip
  • 5 513 messages
  • Gender:Male

Posté 03 mars 2017 - 06:27

Non pas du tout ! L'idée était très originale et est bien pensée =) 


Robot-Maker ne se résume pas que au forum !
Jetez un oeil au blog, aux tutoriels, aux ouvrages, au robotscope  et à la  boutique : le shop des makers   !
N'hésitez pas à contribuer à la communauté et à partager vos trucs et astuces : Ensemble nous irons plus loin ! =)
 

Robot-Maker a pour vocation de :

  • Permettre à des hobbyistes passionnés de s'entraider pour qu'ils puissent mener à bien leurs créations.
  • Permettre à des projets innovants de voir le jour dans le domaine de la robotique et des nouvelles technologies.

à très bientôt ! 


#15 Ulysse

Ulysse

    Membre passionné

  • Membres
  • PipPipPip
  • 308 messages
  • Gender:Male
  • Location:Bretagne
  • Interests:Du moment qu'on s'amuse..

Posté 03 mars 2017 - 07:05

Vu que c'est pour un système avec démultiplication mécanique ( c'est bien ça? ) c'est peut-être assez avec 10 par tour. C'est un bon projet.

#16 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 03 mars 2017 - 07:11

Oui c'est bien ça. En fait je me rends pas compte si c'est assez ou pas. Par exemple avec une réduction par 36 ça fait 360 comptage par tour. Est ce que c'est assez pour une régulation rapide, je sais pas..

#17 Telson

Telson

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 831 messages
  • Gender:Male
  • Location:Punaauai - Tahiti

Posté 04 mars 2017 - 05:19

Je trouve ton montage très intéressant.

 

Pourrais tu expliquer ton montage sur la board.

 

Merci.

 

++



#18 Oliver17

Oliver17

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 056 messages
  • Gender:Male
  • Location:LR

Posté 04 mars 2017 - 08:47

Oliver le codeur sur un moteur sert à mesurer la vitesse de rotation et/ou le sens de rotation. Ou une distance parcourue par une roue par exemple. La je me sers du ventilateur du moteur comme roue codeuse.

 

 

Ok, merci :)



#19 ashira

ashira

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 075 messages
  • Gender:Male

Posté 04 mars 2017 - 11:08

2017030411020600.jpg

Voilà le schéma! J'ai pris R1 à 470ohms et R2 à 470kohms. Comme je vais utiliser ça sur un arduino le schéma changera, celui ci c'est pour le test.

#20 Path

Path

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 297 messages
  • Gender:Male
  • Location:Paris

Posté 04 mars 2017 - 12:30

Comme d'ab'. Merci de partager tout ça !!


Soutenez ce forum, partagez et achetez sur le shop
Podcast Robot-Maker 





Aussi étiqueté avec au moins un de ces mots-clés : moteur, codeur

0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users