Go Down

Topic: Matrice de Potentiometres et Encodeurs (Read 9281 times) previous topic - next topic

Artouste

#15
Aug 16, 2012, 12:52 pm Last Edit: Aug 16, 2012, 01:00 pm by Artouste Reason: 1



...
Comme je me doutais que les Encodeurs seraient le plus délicat je revois la nombre a 16 en règle générale ils assurent que peu de fonctions :


Bonsoir
ce n'est pas tellement ce qu'il sont censés faire qui est là important, c'est surtout de déterminer quel est le taux maximum de changement d'etats pour une periode de temps donnée.
mais evidemment reduire de 64 à 16 les encodeurs augmente le temps de traitement disponible pour les des actions à suivre sur changement d'etat.



Bonsoir,
Peut tu approfondir si tu veux bien ? ou me faire un petit schémas ?
A bientot
Djé

bonjour
ce qui est important c'est de ne pas louper de pas (changement d'etat)
il faut donc prealablement déterminer la capacité max de lecture de changement d'etat de l'arduino.

ça passe donc déjà par le choix des encodeurs = nombre d'encodeurs et pas des encodeurs
si l'echelle de temps de scan des états est trop grand , le risque de se retrouver avec des lecture erronées (non lues) est important
avec des encodeurs en quadrature c'est la comparaison sur etat ancien/etat nouveau qui determine le sens du taux d'incrementation.
si la fenetre de lecture est trop large, il y a perte d'information.

C'est donc à toi déjà de faire la selection des encodeurs selon ton confort d'utilisation.
comme repondu plus haut : en événements musique/lumiere , le taux de changement d'etats est faible vu du temps, par facilité je le met à ~  +/- 16 changements d'etats max par seconde, ça correspond à un tour sur un encodeur 16/tours

onoff


Si si, tu t'es bien exprimé... C'est juste que matériellement, 64 potars et 64 encodeurs, ça prend de la place physiquement, car ça représente pas loin d'une façade de 15 x 30cm au grand minimum, et aussi en gestion électronique.

J'imagine que tu souhaites créer des "modules" que tu intègrerais en fonction du besoin final de chaque appareil. Je pense que ton projet est arrivé à la phase où il faut poser les besoins sur papier pour pouvoir ensuite définir la solution matérielle qui y répondra...

Je te donnais juste des idées...


Oui c'est ça,
La carte "mere"(arduino+shield) gérera toutes les I/Os et pour le front-panel (facade pots/encoders/fader etc) il y a un super truc
modulaire que je compte utiliser chez Livid Instruments

http://lividinstruments.com/hardware_builder.php


L'omiBoard


Des Exemples

et ils vendent touts les switchs pot enc fad etc...
une carte coute 15usd et les comps sont pas bien plus cher que le prix marché

onoff





...
Comme je me doutais que les Encodeurs seraient le plus délicat je revois la nombre a 16 en règle générale ils assurent que peu de fonctions :


Bonsoir
ce n'est pas tellement ce qu'il sont censés faire qui est là important, c'est surtout de déterminer quel est le taux maximum de changement d'etats pour une periode de temps donnée.
mais evidemment reduire de 64 à 16 les encodeurs augmente le temps de traitement disponible pour les des actions à suivre sur changement d'etat.



Bonsoir,
Peut tu approfondir si tu veux bien ? ou me faire un petit schémas ?
A bientot
Djé

bonjour
ce qui est important c'est de ne pas louper de pas (changement d'etat)
il faut donc prealablement déterminer la capacité max de lecture de changement d'etat de l'arduino.

ça passe donc déjà par le choix des encodeurs = nombre d'encodeurs et pas des encodeurs
si l'echelle de temps de scan des états est trop grand , le risque de se retrouver avec des lecture erronées (non lues) est important
avec des encodeurs en quadrature c'est la comparaison sur etat ancien/etat nouveau qui determine le sens du taux d'incrementation.
si la fenetre de lecture est trop large, il y a perte d'information.

C'est donc à toi déjà de faire la selection des encodeurs selon ton confort d'utilisation.
comme repondu plus haut : en événements musique/lumiere , le taux de changement d'etats est faible vu du temps, par facilité je le met à ~  +/- 16 changements d'etats max par seconde, ça correspond à un tour sur un encodeur 16/tours



Bien noté mais comme je disait plus haut le nombre de Pot/enc/switch sera variable en fonction des besoins de chaque materiels
Pour le choix des composants je vais devoir utiliser ce que fournit Livid instrument mais je pense que c'est plutot 20/24 pulses par tours
Merci
Djé

Super_Cinci

Il est sûr que les encodeurs vont "jouer" un rôle important dans le choix technique d'acquisition. Mais là où on peut se retrouver, c'est qu'on n'en tournera qu'un seul à la fois, voire deux. En tablant sur une MEGA qui propose une vingtaine de PCINT, on peut réaliser un truc du genre, avec un encodeur par PCINT. mais il existe des systèmes (comme la ST32F4 par exemple) possédant bien plus de PCINT... Il te faut donc définir les limites maximum de contrôles gérables par ta carte mère (en fonction de la technologie adoptée) puis voir si tu peux y connecter les cartes filles en nombre suffisant.

Artouste




...
et ils vendent touts les switchs pot enc fad etc...
une carte coute 15usd et les comps sont pas bien plus cher que le prix marché

sauf mauvaise lecture de la photo , ce sont de A/B en 24/tours avec "peut être une détente"  :
c'est ce qui se rencontre facilement/couramment  dans ce genre d'application.

la détente est un contact  = l'appui/relache de  l'axe de l'encodeur = contact ou disparition
ça peut etre une bonne voie si c'est bien le cas pour initier une interruption differenciée de traitement

barbudor

Ces produits LividInstruments sont bien pensés
Étonnant qu'il n'y ai pas de projet OpenSource similaire (peut être y a t'il ?)

A priori le Brain tourne sur un PIC18F4550 qui est assez proche finalement d'un 328P ou même d'un 32U4 sauf qu'il tourne à 48MHz contre 16MHz pour nos ATmega. Serait-il donc plus puissant ?
Coté RAM/Flash c'est similaire (2KO/32KO). Coté I/O aussi, c'est un TQFP 44 broches. Il a juste un peu plus d'entrées analogiques mais comme il ne s'agit que d'un multiplexeur sur 1 seul d'ADC ca ne change rien sur la capacité de traitement des canaux analogiques.

Pour les encodeurs, la page produit est claire :
Quote
•  20 ppr
•  non-detented

Ils disent d'aillleurs "128 buttons or 64 encoders" ce qui donne 2 entrées numérique par encodeur. Juste A/B.

Si on considère qu'un énervé va au pire tourner à 2 tours par seconde (en faisant rouler sur son doigt) ca fait 40Hz par signal. Pour pouvoir analyser proprement la quadrature il faut donc échantillonner à au moins 4 fois la fréquence soit 160Hz.
On peut aussi supposer qu'il n'y a pas plus de 2 encodeurs manipulés simultanément. Donc l'algo peut scanner globalement tous les signaux A à 100Hz pour détecter un mouvement et se concentrer sur 1 ou 2 encodeurs s'il détecte ce mouvement afin d'assurer une mesure correcte.

Pour ce qui est d'utiliser des OmniBoards telles qu'elles, il faudrait avoir plus de détail sur leur câblage si tu compte les utiliser avec une carte perso à base d'Arduino.
Il y a plusieurs jeux de connecteurs 10 points : LED MATRIX, BUTTONS, POT 1-8, POT 9-16, ENC ROW, Slide...

Si tu veux utiliser ces modules, il va te falloir faire un peu de reverse-engineering dessus pour comprendre le type d'interface qu'ils ont besoin. A partir de là tu pourra orienter te choix de conception en prenant en compte cette contrainte.

onoff


Ces produits LividInstruments sont bien pensés
Étonnant qu'il n'y ai pas de projet OpenSource similaire (peut être y a t'il ?



Le seul projet OpenSource qui tienne la route (enfin a mon sens) c'est uCApps (MIDIBox)

http://ucapps.de/

d'une part ça me forcerait a réaliser pas mal de cartes sans compter les OmiBoards ensuite niveau Sysex d'après le concepteur se serait possible mais "galère" de plus j'ai déjà modifié une Shield Arduino et je compte reprendre certaines choses de  la "system board"

http://www.beat707.com/forum/viewtopic.php?f=6&t=126

Au passage Si quelqu'un est intéressé par le projet j'ai tous ce qui faut.




Si on considère qu'un énervé va au pire tourner à 2 tours par seconde (en faisant rouler sur son doigt) ca fait 40Hz par signal. Pour pouvoir analyser proprement la quadrature il faut donc échantillonner à au moins 4 fois la fréquence soit 160Hz.
On peut aussi supposer qu'il n'y a pas plus de 2 encodeurs manipulés simultanément. Donc l'algo peut scanner globalement tous les signaux A à 100Hz pour détecter un mouvement et se concentrer sur 1 ou 2 encodeurs s'il détecte ce mouvement afin d'assurer une mesure correcte.


Niveau utilisation Les encodeurs sont plutôt utilisé pour des réglages précis Accord des oscillateurs sélection des formes d'ondes Etc...
C'est plutôt sur les pots que l'on s'énerve (filtre) ]:D ]:D
j'ai fait le test avec une Novation Remote ZERO avec  encodeur 30 pas j'arrive pas a aller a moins de 3"20 pour 2 tours et sans chercher
a obtenir une valeur sinon pour passer par ex de 100 a 40 il faut plus de 4" et je suis pas mauvais en changement de valeur  :D
Le fait de ne pouvoir utiliser q'un encodeur a la fois peu être envisageable car en règle générale faut garder une main pour jouer sur le clavier "au pire dans le cas d'une séquence la on a les 2 mains libre donc si c'est pas contraignant duo d'encodeurs sinon mono.



Pour ce qui est d'utiliser des OmniBoards telles qu'elles, il faudrait avoir plus de détail sur leur câblage si tu compte les utiliser avec une carte perso à base d'Arduino.
Il y a plusieurs jeux de connecteurs 10 points : LED MATRIX, BUTTONS, POT 1-8, POT 9-16, ENC ROW, Slide...

Si tu veux utiliser ces modules, il va te falloir faire un peu de reverse-engineering dessus pour comprendre le type d'interface qu'ils ont besoin. A partir de là tu pourra orienter te choix de conception en prenant en compte cette contrainte.


Livid a du penser a nous
http://wiki.lividinstruments.com/wiki/Omni_Board#Overview


A bientot
Djé


Artouste



Niveau utilisation Les encodeurs sont plutôt utilisé pour des réglages précis Accord des oscillateurs sélection des formes d'ondes Etc...
C'est plutôt sur les pots que l'on s'énerve (filtre) ]:D ]:D
j'ai fait le test avec une Novation Remote ZERO avec  encodeur 30 pas j'arrive pas a aller a moins de 3"20 pour 2 tours et sans chercher
a obtenir une valeur sinon pour passer par ex de 100 a 40 il faut plus de 4" et je suis pas mauvais en changement de valeur  :D
Le fait de ne pouvoir utiliser q'un encodeur a la fois peu être envisageable car en règle générale faut garder une main pour jouer sur le clavier "au pire dans le cas d'une séquence la on a les 2 mains libre donc si c'est pas contraignant duo d'encodeurs sinon mono.



les encodeurs A/B sont agreables à utiliser, tu a peut etre un compromis à faire entre tes 64 de departs et un seul à l'arrivée  :smiley-mr-green:
Tout dépend de l'ergonomie que tu souhaite :
Entre chercher par une methode ou une autre le bon parametre à modifier parmi 64 ( pour la demo) pour ensuite modifier/valider sa valeur avec un seul encodeur et faire des tranches modulables de 4(ou x) paramètres sélectionnables avec modif par encodeur, il y a des choix à faire.

Ergonomiquement parlant , l'important est : "est ce que je sais bien d'un rapide coup d'œil/action quel paramètre je vais modifier, si je bouge cet encodeur"

Mais ton projet est sympa, ça me donnerais presque envie d'enfin ressortir mon vieux Korg M1 de la cave (de toutes façon, il va falloir que je lui fasse prendre l'air dans quelques mois   :smiley-mr-green:  )

barbudor

Midibox ne va pas dans ce sens. Ils ont des synthé, séquenceur, .. mais pas de surface de contrôle.

Quote
C'est plutôt sur les pots que l'on s'énerve (filtre)

WoouuuaaaaaaziiiivFsssswoouuuuaaa XD

Livid a du penser a nous
http://wiki.lividinstruments.com/wiki/Omni_Board#Overview


J'avais vu. Mais c'est orienté comment câbler une Omni board pour certains cas, considérant que derrière tu branches à un Brain ou Brain v2, pas à une Arduino avec un shield perso.
Perso, je ne trouve pas çà assez clair pour comprendre comment est fait une Omni board, comment créer le shield et comment le soft va devoir gérer derrière.

Au fait, le JX-3P c'est juste pour l'illustration où tu utilises encore ?

onoff


Midibox ne va pas dans ce sens. Ils ont des synthé, séquenceur, .. mais pas de surface de contrôle.

Quote
C'est plutôt sur les pots que l'on s'énerve (filtre)

WoouuuaaaaaaziiiivFsssswoouuuuaaa XD

Livid a du penser a nous
http://wiki.lividinstruments.com/wiki/Omni_Board#Overview


J'avais vu. Mais c'est orienté comment câbler une Omni board pour certains cas, considérant que derrière tu branches à un Brain ou Brain v2, pas à une Arduino avec un shield perso.
Perso, je ne trouve pas çà assez clair pour comprendre comment est fait une Omni board, comment créer le shield et comment le soft va devoir gérer derrière.

Au fait, le JX-3P c'est juste pour l'illustration où tu utilises encore ?


MIDIbox 64,MIDIbox64E,MIDIbox LC sont des surfaces de controle
Pour l'omiBoard je vais leurs expliquer le projet voir ce qu'ils peuvent me donner ou acheter un set pour test.
Les pics du JX3P ne sont pas les miennes,moi j'ai pas le PG200.

onoff




les encodeurs A/B sont agreables à utiliser, tu a peut etre un compromis à faire entre tes 64 de departs et un seul à l'arrivée  :smiley-mr-green:
Tout dépend de l'ergonomie que tu souhaite :
Entre chercher par une methode ou une autre le bon parametre à modifier parmi 64 ( pour la demo) pour ensuite modifier/valider sa valeur avec un seul encodeur et faire des tranches modulables de 4(ou x) paramètres sélectionnables avec modif par encodeur, il y a des choix à faire.

Ergonomiquement parlant , l'important est : "est ce que je sais bien d'un rapide coup d'œil/action quel paramètre je vais modifier, si je bouge cet encodeur"




Ce que je cherche a faire avec ce système je peux déjà le faire avec ce que j ai a ma disposition je m'explique en prenant par exemple
-Le JX3P (encore lui)
-La remote Zero(surface de contrôle) 8 encodeurs,8pots,8faders,32switchs avec tous types de controles parametrables 2 grand ecrans LCD pour visualiser le noms de parametres(et leurs valeurs) 40 pages que l'on peux transformer en layers(320 encodeurs ahhhh) il n'y a pas d'équivalents sur le marché .
-et lOGIC (soft MAO généraliste)

Donc je programme ma remote (comble du bonheur il y a un soft pour ca ) je mets tous les paramètres du JX3P mettons sur 4 pages ça me laisse de la marge pour les autres synthés.
Pendant le jeu ou en programmation je passe par le séquenceur et en plus je peux enregistrer les modifications de paramètre en temps réel.et il les rejouera en séquence.
jusque la tout est super tu a ton synth ta surface de contrôle a portée de main.
Maintenant  imagine que tu a 8 claviers Et 9 rack (synth en boite sans clavier) il te faut une deuxième surface de contrôle et avec un clavier vu que tu a des synthé en rack faut bien pourvoir jouer les notes,
et comme tu peux pas empiler tous ça devant toi (les boites a rythme les stepsequenceurs la console de mix les cartes sons les interfaces midi etc etc...), c'est comme si tu avais ton clavier d'ordi devant toi et l'écran derrière.
Vu le type de matériel que j'utilise la solution c'est d'intégrer (physiquement) directement dans certaines de mes machines un panel de contrôle (avec reprise de la sérigraphie) et dans certains cas de transformer des synth en rack en version clavier (création du châssis sérigraphie etc...). de la découle cette sorte de carte "universelle" dont le nombre d'encodeurs,pot,faders,switchs dépendra des besoins propres a chaque machine.
j'espère ne pas avoir été trop long
Djé

Artouste


de la découle cette sorte de carte "universelle" dont le nombre d'encodeurs,pot,faders,switchs dépendra des besoins propres a chaque machine.
j'espère ne pas avoir été trop long
Djé

Bonjour
non, non, ce n'est pas trop long, c'est même très intéressant, mais c'est aussi pour ça qu'avant de partir  sur le hard, il faut déjà  bien reflechir à la notion d'ergonomie, parce qu'une fois la tranche definie en hard, il sera dur de revenir ensuite sur le concept.

hazerty565

voici un petit lien, c'est un peu la bible des systemes midi, totalement open source, et avec cela, on peux faire n'importe quoi.
style monome, mixer ...
http://www.ucapps.de/
niveau design, perso, je trouve assez "moche" mais on peux modifer le design c'est pas un soucis..

onoff



de la découle cette sorte de carte "universelle" dont le nombre d'encodeurs,pot,faders,switchs dépendra des besoins propres a chaque machine.
j'espère ne pas avoir été trop long
Djé

Bonjour
non, non, ce n'est pas trop long, c'est même très intéressant, mais c'est aussi pour ça qu'avant de partir  sur le hard, il faut déjà  bien reflechir à la notion d'ergonomie, parce qu'une fois la tranche definie en hard, il sera dur de revenir ensuite sur le concept.



Yep exact, mais comme je vois vraiment que les Omniboards comme front panel L'ergonomie me serra plus ou moins imposée;
Pour revenir au besoins 128 Switch ou 64 encodeurs(AB) ca sonne bien pour moi 64 Entrées analogique et 128 sorties led aussi
plus quelques entrées pour sélecteurs (on va dire de 2 a 8 positions).
Maintenant faut que je passe a l'engineering enfin quand je dit "Je" suivez mon regard...
A bientot
Djé

onoff

#29
Aug 18, 2012, 02:29 pm Last Edit: Aug 18, 2012, 04:27 pm by onoff Reason: 1
Bonjour TLM,
Voici la synotique un peu plus detaillée


UMIC Shield (Universal MIDI Controler Interface)

-UART-1 : Port MIDI pour Keyboard set (Key/pitch-Mod Wheel) ou tout autres système midi servant a déclencher des Notes. OUT non utilisé.

-UART-2 :
Port MIDI pour générateur de son.

-UART-3 :
Port MIDI pour communication Externe (Séquenceur)

-INPUT   pinage-1    :  Entrées pour Switchs et encodeurs
-INPUT    Pinage-2   : Entrées pour Pot/faders (j'ai oublié des les différencier sur la synoptique)
-OUTPUT Pinage   : Sortie pour Leds

UART-1 Selector Local On/Off :
ON- L'entrée MIDI UART-1 est dirigée vers la la Sortie UART-2
OFF- L'entrée MIDI UART-1 est dirigée vers la sortie UART-3

OmniBoards Local On/Off :
ON-   Les Controles venant des Omniboards ( convertis en Messages MIDI) sont dirigés vers la Sortie UART-2
OFF-Les Controles venant des Omniboards ( convertis en Messages MIDI) sont dirigés vers la Sortie UART-3

Glob MIDI Chanel selector : Selection du canal MIDI global (1-16)

A+ et bon WE
Djé


Go Up