Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

makey makey étendre le nombre de touches


Sujet :

Arduino

  1. #1
    Membre averti
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    octobre 2019
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2019
    Messages : 101
    Points : 375
    Points
    375
    Par défaut makey makey étendre le nombre de touches
    Bonjour, j'ai acheté un makey makey pour transformer un vieux tableau de commande en clavier pour caractère spéciaux.

    je sais comment remaper mes touches par exemple pour changer la lettre 'a' du makey makey en 'α' par exemple.
    Mais je suis limité avec le makey makey à seulement 12 touches wasd..etc.
    j'aimerais étendre le nombre de touche possible à 50 mais je trouve pas de doc sur le net pour le faire.

    Es ce possible ?

    Pourquoi ? car j'ai la flemme de taper des combinaisons dans mon clavier pour générer des caractères spéciaux que j'utilise souventn j'aimerais avoir un 2ieme clavier spécial pour cette tache avec des touches comme alpha, beta, ç, des touches G1-G6, R1-R6 pour certains jeux comme arma3...etc.

    par avance merci

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Ancien développeur matériel électronique (Hard/Soft)
    Inscrit en
    avril 2002
    Messages
    2 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ancien développeur matériel électronique (Hard/Soft)
    Secteur : Service public

    Informations forums :
    Inscription : avril 2002
    Messages : 2 583
    Points : 8 862
    Points
    8 862
    Par défaut
    Salut,
    Pour ce genre de question il faut impérativement donner les liens correspondants car je suis presque sur que tu étais le seul à savoir ce qu'était un makey makey

    Nom : 52e95fafce395fa67b8b4569.png
Affichages : 39
Taille : 311,7 Ko

    Le GitHub : https://github.com/sparkfun/makeymakey
    Le schéma :
    Nom : im0001.png
Affichages : 41
Taille : 148,5 Ko

    Malheureusement tu ne peux pas aller au delà de 18 touches car le hardware est à son maximum. Cependant avec un peu de persévérance tu peux reproduire ce phénomène dont le principe de fonctionnement est simple mais pas du tout fiable suivant l'endroit où sera le clavier. Les vraies solutions tactiles (contacts aux touchés) utilisent l'effet capacitif qui est bien plus robuste qu'un principe reposant sur des entrées hautes impédances. Je prends A0 comme exemple mais c'est le même principe pour les autres entrées. Celles ci sont connectées à des résistances de pull-up de 22MΩ afin de fixer le potentiel de l'entrée à 5V, si une personne tenant dans une main la masse du montage, touche, de l'autre main l'entrée A0 il va y avoir la connexion de l'impédance (la résistance) du corps sur cette entrée. Sachant que celle-ci est bien inférieure à 22MΩ (de mémoire elle doit être très inférieure à 1kΩ entre le doigt de pied et un doigt de la main), le schéma équivalent n'est rien d'autre qu'un simple pont diviseur de tension amenant le potentiel de l'entrée A0 vers la masse. C'est ça le principe de détection. Bien entendu, on peut insérer d'autres faibles impédances en série avec le corps humain, une banane dans une main et de l'eau dans l'autre etc...

    Nom : im0002.png
Affichages : 40
Taille : 89,3 Ko

    Côté soft, le micro se comporte comme un clavier une fois connecté au PC, ce micro implémente simplement la pile USB HID et PC le prend comme tel. Le micro ne fait que lire l'état des broches et à chaque changement d'état (quand quelqu'un touche une broche) il envoie une touche que tu peux toi même déterminer dans le soft du micro.

    Si on regarde les grosses faiblesses de ce montage on voit ceci dans le code :
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    ///////////////////////////
    // NOISE CANCELLATION /////
    ///////////////////////////
    #define SWITCH_THRESHOLD_OFFSET_PERC  5    // number between 1 and 49
                                               // larger value protects better against noise oscillations, but makes it harder to press and release
                                               // recommended values are between 2 and 20
                                               // default value is 5
     
    #define SWITCH_THRESHOLD_CENTER_BIAS 55   // number between 1 and 99
                                              // larger value makes it easier to "release" keys, but harder to "press"
                                              // smaller value makes it easier to "press" keys, but harder to "release"
                                              // recommended values are between 30 and 70
                                              // 50 is "middle" 2.5 volt center
                                              // default value is 55
                                              // 100 = 5V (never use this high)
                                              // 0 = 0 V (never use this low

    Le premier problème est le bruit que va capter une entrée sur laquelle on a placé une résistance de pull-up "énorme" de 22MΩ. C'est une vraie antenne qui va ramasser tous les bruits électromagnétiques qui se baladent, je ne serai pas surpris qu'a proximité d'un petit moteur, plus rien ne fonctionne. D'où l'introduction d'une sorte de tempo pour s'assurer que le changement d'état d'une entrée est causé par le touché du corps humain et pas à cause d'un briquet électronique par exemple.

    Le second problème est que le corps humain, mais aussi celui d'un fuit, est complexe. Ce n'est pas qu'une résistance, il y a aussi une réactance capacitive et donc quand le corps humain va toucher l'entrée du micro, la tension va chuter mais pas de manière abrupte plutôt de manière exponentielle. Cela introduira en plus des temps différents entre l'appuie et le relâché d'une touche.
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  3. #3
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    avril 2004
    Messages
    7 259
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 7 259
    Points : 10 230
    Points
    10 230
    Par défaut
    Bonjour,

    je ne connais pas le makey-makey.... Mais pourquoi utiliser le corps humain ? Et pas des switch associés à différentes valeurs de résistances ?

    Il y a 6 entrées analogiques. En mettant 9 switch par entrée on peut s'en doute s'en sortir ? Mais tout va dépendre de la résolution du CAN du microcontrôleur.
    Je pense à un schéma d'un CNA de type R-2R. Comme ceci par exemple : https://electronics.stackexchange.co...r-value/331663 Pour que cela fonctionne bien, il faut bien choisir les résistances et surtout avec une faible incertitude sur la valeur.

    D'ailleurs, d'après le schéma on peut supprimer le 5V sur les résistances de 22M (il y a un point de connexion "sj" - j'ai oublié le nom exact -). Malheureusement, même si cette liaison est supprimée toutes les voies sont reliées entre elles par les résistances. Et pourquoi pas les relier à la masse ?

  4. #4
    Membre averti
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    octobre 2019
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2019
    Messages : 101
    Points : 375
    Points
    375
    Par défaut
    merci pour vos réponses
    je vais regarder du coup du coté des switch.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PC portable] Problème avec un certains nombre de touche
    Par moumini2018 dans le forum Ordinateurs
    Réponses: 4
    Dernier message: 30/06/2019, 13h44
  2. Nombre de touches du clavier pressées limité.
    Par Mortlhomme dans le forum VB.NET
    Réponses: 2
    Dernier message: 10/11/2015, 21h30
  3. Compter le nombre de touche appuyée
    Par Khleo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/05/2013, 19h59
  4. Touch TAB changer le nombre d'espaces.
    Par Simonake dans le forum Langage
    Réponses: 2
    Dernier message: 17/12/2009, 10h29
  5. Réponses: 2
    Dernier message: 07/01/2006, 00h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo