Page 1 sur 3

Encodeur rotatif pour sélectionner les sources

Posté : sam. 30 mai 2020 21:19
par guyome
Bonjour tlm,

Je sais que le sujet a déjà été évoqué et résolu par un interrupteur rotatif alps (on) off (on), mais je voudrais savoir s'il n'existerait pas un schéma simple pour sélectionner la source avec un encodeur rotatif et un petit montage...

Merci !

Re: Encodeur rotatif pour sélectionner les sources

Posté : sam. 30 mai 2020 22:07
par thierryvalk
Un bascule D devrait pouvoir le faire, mais devient vite compliqué si l'on veut gérer correctement les rebonds.
L'idéal est un petit microcontrôleur pour gérer le sens et envoyer sur 2 sorties les signaux + et -.
Il existe peut-être (certainement) des encodeurs + mini carte électroniques qui font cette fonction.

Re: Encodeur rotatif pour sélectionner les sources

Posté : sam. 30 mai 2020 22:36
par guyome
Ce serait possible avec un arduino : http://idehack.com/blog/tutoriel-arduin ... r-rotatif/

En lui faisant commander en sortie 2 relais, cela devrait le faire - reste à savoir comment faire...

Re: Encodeur rotatif pour sélectionner les sources

Posté : sam. 30 mai 2020 22:55
par guyome
Et voici pour contrôler un relais : http://idehack.com/blog/utilisation-dun ... -larduino/

Reste à savoir se servir d'un arduino :mrgreen:

Re: Encodeur rotatif pour sélectionner les sources

Posté : dim. 31 mai 2020 08:38
par alka
un arduino saura faire. C'est un peu usine a gaz pour obtenir deux boutons poussoirs, mais pourquoi pas. Le sketch que t'as mis en lien donne tout ce qu'il faut. Faudra trouver un encodeur avec peu de crans ou ajouter un délai pour éviter d'envoyer une rafale d'impulsions (et autant de changement de source) quand tu tournes le bouton :hehe:
Pas besoin de relais. Suffit d'alimenter l'arduino avec la meme alim que le DSPiy. Juste faire attention au niveau logique 5V coté arduino et 3V3 coté DSPiy. Peut etre faudra t il deux diviseurs a résistances.

Re: Encodeur rotatif pour sélectionner les sources

Posté : dim. 31 mai 2020 08:50
par alka
d'ailleurs, pour faire une fonction aussi rikiki, un attiny85 suffit ;)
Image

Re: Encodeur rotatif pour sélectionner les sources

Posté : dim. 31 mai 2020 13:38
par guyome
Je vais partir sur l'Arduino - je trouverai bien quelques choses d'autre à faire en plus :mrgreen:

Par contre, comment fonctionnent les boutons du DSPIY ? Cela connecte la masse ou le +3,3V ?

Re: Encodeur rotatif pour sélectionner les sources

Posté : dim. 31 mai 2020 13:41
par guyome
Si c'est du 3,3V, un pont diviseur de tension avec 10k et 20k serait correct ? Merci encore !

Re: Encodeur rotatif pour sélectionner les sources

Posté : dim. 31 mai 2020 22:03
par alka
les boutons DSPIy c'est mise au gnd quand appuyé. Il y a un petit shcma quelque part dans la doc.

pour le diviseur: je ne connais pas le processeur nxp utilisé sur DSPiy. Pour ceux que je connais, on utiliserait plutot des valeurs plus élevées, du genre 100K et 200K pour ne pas interférer avec les résistances internes au µC qui sont de l'ordre de 10K à 20K justement.

Re: Encodeur rotatif pour sélectionner les sources

Posté : dim. 31 mai 2020 22:26
par guyome
Le schéma est là : viewtopic.php?p=5236#p5236 ;)

Je vais faire simple, je vais prendre 2 cartes relais :mrgreen:

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 09:41
par alka
guyome a écrit :Je vais faire simple, je vais prendre 2 cartes relais :mrgreen:

je trouve ça plus encombrant, plus bruyant et pas pas plus simple avec deux cartes relais, mais c'est toi qui vois.

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 11:21
par thierryvalk
Il faut éviter de mettre des relais.
Le pont diviseur ne fonctionnera pas vu la résistance de 1k8 en pull-up du DSPiy.
Pour faire du 3V3 à partir d'un 5V on peut mettre une LED rouge, mais ne fonctionnera non-plus ou tout juste.
L'idéal est de l'open-drain. Je ne connais pas l'Arduino et apparemment pas possible de configurer les GPIO en open-drain.
Par contre les lignes SDA et SCL de l'I2C sont open-drain, suffit de les utiliser pour cette fonction si le bus I2C n'est pas utilisé.

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 11:49
par alka
ah oui c'est juste, j'avais en tete les BPs simples qui n'ont pas de pull up. il faut réfléchir un peu plus.
grosse betise, ils ont tous une pull up !

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 17:50
par guyome
Et avec des optocoupleurs :/ ?

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 18:42
par thierryvalk
Oui, c'est le top.

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 18:50
par alka
Et avec des optocoupleurs :/ ?


On peut toujours trouver des solutions compliquées a un problème simple.

Ca arrive très souvent de devoir piloter quelquechose qui est a une autre tension. La solution archi classique avec arduino est d'utiliser un transistor mosfet externe et une résistance pullup.

Dans notre cas, pas besoin de résistance pullp up car le DSPiy la fournit déjà.
Schéma de principe:
Image
Rx est celle pour décider quel BP tu veux. Il faudra la prévoir dans tous les cas.

Si tu ne veux pas faire de pcb, il existe des cartelettes avec mosfet et des picots. Mais bon, deux petits mosfets+résistance pour deux BPs ça tient sur un petit bout de plaque a trou. Et si elle est bien pensée, elle se met direct sur les picots de l'arduino. Pas a réfléchir a la fixer dans le boitier.


Sinon, si on veut éviter l'utilisation de composants externes, il faut utiliser une GPIO en open drain. Il n'y en a pas sur arduin0 .... sauf l'idée proposée par Thierry d'utiliser les pins du bus I2C. C'est une astuce qui semble connue dans le monde arduino. J'ai jamais fait, mais ça doit marcher. Ca permet d'économiser le mosfet.

après, on peut imaginer des centaines de solutions très compliquées pour faire le service. Une télécommande IR par exemple ;)

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 19:04
par guyome
OK, merci pour ta réponse ;)

Pour le Mosfet, je prends un IRF520 ?

Re: Encodeur rotatif pour sélectionner les sources

Posté : lun. 1 juin 2020 19:48
par guyome
Ou un 2N7000 ?