Programmation

Les codes et programmes d’Interface-Z

Accueil > Matériel > Captation et interfaces > Capteurs autonomes > Carte RFID en Max

Carte RFID en Max

Mis à jour le jeudi 9 mars 2017, par zandrine

 

Patches de test

RFID avec Max / MSP Abstraction Max : Obtention des données du module RFID vers Midi

Patch max pour le module RFID vers Midi.
Fichier reception_rfid.maxpat
pour recueillir les données d’identification des tags.

Existe aussi pour :

La carte RFID envoie une séquence de nombre lors de chaque identification de tag. Ce patch permet de tester le capteur et de sortir les résultats bruts en tant que séquence de chiffres. Ces séquences de chiffres sont spécifiques des tags.

L’entrée permet de paramétrer le canal Midi correspondant à celui de la carte RFID. Ce numéro de canal est également donné en argument de l’abstraction reception_rfid.

RFID Abstraction Max : Identification du tag détecté

Une fois les données arrivées dans le logiciel, et sorties de l’abstraction précédente, elles permettent d’identifier précisément le tag. Cette nouvelle abstraction permet d’enregistrer une séquence de nombres spécifique d’un tag et de la comparer ensuite aux séquences des différents tags détectés.

Il faut poser une abstraction par badge.

Patches max pour le module RFID vers Midi.
Fichier identification_rfid.maxpat
pour recueillir les données d’identification des tags.

Existe aussi pour :

3 entrées :

  • À gauche : Séquence d’identification provenant de l’abstraction précédente ;/li>
  • Au milieu : Signal d’enregistrement, pour garder en mémoire la séquence associée au badge ;
  • À droite : Numero de badge, aussi donné en argument. Ce numéro est attribué arbitrairement.

3 sorties :

  • À gauche : réponse 1 ou 0, 1 pour "vrai" et 0 pour "faux, ce badge n’est pas celui que j’ai en mémoire" ;
  • Au milieu : Numéro de badge, correspondant à l’argument, renvoyé à chaque identification positive.
  • À droite : Liste contenant le numéro de badge et la séquence spécifique, pour envoyer dans un objet coll qui permet d’enregistrer les badges choisis.

Cette abstraction fonctionne avec le sous-patch "enregistre_config" du patch suivant, pour l’enregistrement des badges.

Elle suffit, avec l’abstraction de réception, à faire un test et à faire fonctionner un patch. Cependant, sans les objets dédiés à l’enregistrement de la configuration, l’assignation des badges (l’identification 1, 2, 3, etc) ne sera pas conservée à la fermeture du patch.

RFID Fichier max : Exemple d’utilisation du module RFID vers Midi avec deux tags, mémorisation des badges

Première utilisation du patch :

  1. Vérifier que des séquences de 11 nombres s’affichent dans la fenêtre texte de Max chaque fois qu’un badge est passé sur l’antenne.
  2. Poser autant d’abstractions "identification_rfid" que vous utilisez de badges, en les numérotant à partir de 1. Le patch est prévu pour 10 badges mais peut être modifié pour plus.
    Assignation des badges aux numéros : Passer les badges disponibles un à un sur l’antenne de la carte RFID. Pour chacun, choisir un numéro d’identification_rfid et cliquer sur le Bang d’enregistrement correspondant, connecté sur l’entrée du milieu de l’abstraction.
  3. Enregistrer l’ensemble de la configuration en cliquant sur le Bang connecté au sous-patch "enregistre_config". L’assignation des badges aux numéros dans le patch peut être modifiée à tout moment, mais il faut toujours enregistrer l’ensemble avec ce Bang pour que les modifications soient conservées après la fermeture du patch.

Exemple d'identification de badge.
Fichier rfid.maxpat
pour recueillir les données d’identification des tags.

Existe aussi pour :

Le sous-patch enregistre_config est donné ci-dessous :

Sous-patch d'enregistrement.

L’enregistrement de la configuration se fait grâce à un objet coll et un fichier texte (badges.txt) qui doit être laissé dans le même dossier que le patch. Ce patch supporte jusqu’à 10 tags. Pour en ajouter, il faut ajouter des messages au-dessus du "t i i" et des abstractions identifications_rfid dans le patch principal.

Utilisations suivantes :

  1. Lors de chaque reconnaissance d’un badge, la première sortie des abstractions donne l’information positive et la deuxième donne le numéro du badge reconnu.
  2. Les séquences de chiffres détectées apparaissent simultanément dans toutes les abstractions identification_rfid, mais seule l’abstraction correspondant au tag enregistré donne un 1 en sortie. Les identifications_rfid sont tous indépendants les uns des autres et permettent d’enregistrer et d’individualiser autant de tags que l’on veut.

RFID Fichier max : Exemple avec deux tags et animations lumineuses

Exemple d'application RFID - carte Transistors.
Archive cap-rfid-ex_m6.zip

Existe aussi pour :

Ce patch associe deux tags à des animations lumineuses, chaque tag correspondant à une ampoule différente branchée sur une carte 8 Transistors PWM. Les animations sont pilotées par des objets line.

Pour mémoriser les badges, mixer avec le patch précédent et ajouter le sous-patch enregistre_config.

Patch réalisé par Rémy Perot.