Table des matières:

Enregistrer et restaurer les valeurs prédéfinies avec NFC (TfCD): 4 étapes
Enregistrer et restaurer les valeurs prédéfinies avec NFC (TfCD): 4 étapes

Vidéo: Enregistrer et restaurer les valeurs prédéfinies avec NFC (TfCD): 4 étapes

Vidéo: Enregistrer et restaurer les valeurs prédéfinies avec NFC (TfCD): 4 étapes
Vidéo: Transférer mes données sur mon nouveau téléphone, par Catherine 2024, Juillet
Anonim
Image
Image
Collecter du matériel
Collecter du matériel

Nous voulons tester comment cela fonctionne pour ajuster une certaine valeur ou un certain paramètre et rappeler plus tard ce paramètre. Pour cette expérience, nous avons utilisé une balise NFC pour lire puis enregistrer la valeur dessus. Plus tard, le tag peut être scanné à nouveau et renvoyer la valeur pour restaurer un certain paramètre. Pour simuler l'interaction, nous avons utilisé un Arduino Uno comme contrôleur et un anneau LED RVB comme partie réglable. Avec un potentiomètre, la teinte RVB peut être réglée. La communication entre l'Arduino et le tag NFC a été mise en place avec un shield NFC.

(Ce projet était un exercice pour la TU Delft, Integrated Product Design, cours: TfCD)

Étape 1: Collecter le matériel

Nous avons utilisé pour ce projet le matériel suivant:

- Arduino uno- NFC shield & tag (https://www.elecrow.com/wiki/index.php?title=NFC_Shield)- Mokugi t-WS2812B-8LED- Potentiomètre (10 3B 42 5V) - Switch- Résistance 10K Ohm - (Planche à pain)

Étape 2: Utilisez le potentiomètre pour ajuster la LED RVB

Utilisez le potentiomètre pour ajuster la LED RVB
Utilisez le potentiomètre pour ajuster la LED RVB
Utilisez le potentiomètre pour ajuster la LED RVB
Utilisez le potentiomètre pour ajuster la LED RVB

Assurez-vous d'abord que la LED avec laquelle vous travaillez fonctionne, en exécutant un autre code de test. Ensuite, vous pouvez connecter le potentiomètre pour régler le RVB de la LED. Pour cela, construisez le circuit comme indiqué sur l'image. Connectez-vous à l'alimentation (5V) et à la terre, et connectez le potentiomètre à la broche A0.

Si vous souhaitez mettre à l'échelle le modèle et enregistrer plus tard plusieurs valeurs différentes, vous pouvez déjà utiliser plus de potentiomètres à cette étape.

Le code de ce test est également joint. Pour que le code fonctionne, vous devez télécharger la bibliothèque Adafruit_NeoPixel.h.

Nous mélangeons la teinte de la LED RVB comme suit: Nous avons choisi d'avoir du rouge allumé en continu et de l'ajuster vers le violet en mélangeant du bleu. Si le potentiomètre est haut, le bleu est complètement allumé, quand il est bas, le bleu est éteint. Pour cela on cartographie la lecture du potmètre:

void ReadPot(){ val = analogRead(Pot); val = carte(val, 0, 1023, 0, 255);

Afin d'éviter une dérive de la valeur d'entrée du potentiomètre, nous ne modifions la nouvelle valeur de la LED bleue que lorsque la différence entre la valeur actuelle et la valeur précédente du pot est suffisamment élevée:

int diff = abs(val-oldVal);

if (diff > TOLÉRANCE) { ChangeLED();

Étape 3: Intégrer NFC

Intégrer NFC
Intégrer NFC
Intégrer NFC
Intégrer NFC

L'étape suivante consiste à intégrer le NFC. Connectez d'abord le shield NFC à l'Arduino.

Ajoutez également l'interrupteur comme indiqué sur les photos. Le commutateur est utilisé pour basculer entre la lecture et l'écriture sur le tag NFC.

Téléchargez la librairie PN532.h pour le shield NFC. Le code ci-joint est une adaptation des exemples de codes fournis dans la bibliothèque. Il est modifié de cette manière que la valeur RVB de la LED est transférée.

Vous pouvez aussi d'abord tester uniquement la lecture ou l'écriture avec les deux codes qui sont attachés séparément.

Explication code final

Tout d'abord, toutes les variables utilisées sont initialisées.

Ensuite, dans la configuration void, la connexion nfc est configurée.

La boucle vide commence par la lecture de l'état du commutateur.

Le cas 0 est lorsque l'état du bouton est ÉLEVÉ. Dans ce cas, la fonction Reading() est d'abord appelée. Cela lit la valeur RVB enregistrée dans le bloc 8 de la balise NFC à la première place du tableau (Bleu = bloc[0];). Ensuite, la fonction ChangeLEDRead() est appelée, ce qui modifie la teinte de la LED à la valeur qui vient d'être lue à partir de la balise NFC.

Le cas 1 est lorsque l'état du bouton est BAS. Dans ce cas, la fonction ReadPot() est d'abord appelée, ce qui signifie que vous pouvez maintenant régler manuellement la teinte des LED avec le potentiomètre. Cette entrée du potmètre est ensuite mappée sur une valeur comprise entre 0 et 255. La fonction ChangeLEDPot() contrôle alors la couleur de la LED à l'aide de l'entrée du potmètre. Dans ce cas également, la fonction Writing() est appelée. Cela garantit que dès qu'une étiquette NFC est placée près du bouclier, la valeur actuelle du bleu sera écrite dessus à la première place du bloc 8.

Étape 4: Adaptations possibles

Le même principe pourrait également être utilisé dans d'autres cas et n'est pas seulement limité au NFC.

Pensez par exemple à un lieu de travail partagé, où vous ajustez la hauteur de votre chaise, l'angle du dossier et la hauteur de la table selon vos préférences personnelles. Vous enregistrez votre préférence en numérisant rapidement avec une étiquette NFC. Lorsque vous revenez un autre jour, vous scannez à nouveau votre étiquette et le lieu de travail change selon vos paramètres.

Au lieu d'une puce NFC, vous pouvez également utiliser votre smartphone. Une application spéciale ou un site Web peut être utilisé comme interface.

Une autre mise en œuvre pourrait être par exemple de scanner une empreinte digitale au lieu de scanner le tag NFC. L'empreinte digitale peut ensuite être liée à un certain profil d'utilisateur où les préférences sont enregistrées.

Conseillé: