Tcrt5000 Bouger une souris avec la tête

Bonjour
Je cherche à développer ce qu'on appelle un head mouse, c'est une pastille réfléchissantes que l’on pose sur le front, et du coup lorsque l'on bouge la tête cela fait bouger la souris.

J'ai recherché différents modules Arduino qui pourrait faire ça et je suis tombé sur le module « tcrt5000 »

Est-ce que d'après vous il serait possible de faire un head mouse ?

Merci

Je lis sur le site :

Distance de détection: 1 mm ~ 8 mm

Il va falloir avoir la tête très très près du capteur...

Tu pourrais peut-être tester un gyromètre (MPU6050) ou un accéléromètre (ADXL335) pour mesurer l'orientation du front de la personne. Le problème c'est que ce système doit être alimenté, donc ça implique des fils pour le relier à l'Arduino.

Peut-être qu'une ESP-cam pourrait suivre les mouvements d'un patch de couleur collé sur le front. Ce serait moins intrusif.
En cherchant un peu, je suis tombé sur ce projet :

qui combine une ESP cam et un programme en python sur PC qui fait le tracking. Ca pourrait être une base.

Bonjour
Et en effet, je viens de remarquer que la distance de détection est très petit. En mettant un système de loupe est-ce que cela agrandiraient le champ de détection ?

Une sorte de téléobjectif ? Peut-être, il faudrait bien le construire. Ca ne doit pas être simple.

Il n'y a pas moyen d'augmenter la distance du capteur IR

Bonjour,

Tu peux toujours augmenter l'intensité dans la led (dans la limite de admissible par celle ci).
Mais en admettant que tu réussisses à augmenter la portée, comment tu espères pouvoir détecter dans quel sens (et éventuellement de combien) la cible s'est déplacée avec ce système?
A mon avis la solution serait celle suggérée par @lesept, c'est à dire une cible suivie par une caméra.

@lesept c'est vrai que si je regarde la vidéo ça ressemble vraiment à ce que je cherche. Mais je suis un capable de faire ça !

Le forum est là pour t'aider, et une grande partie est déjà faite sur le tuto.
Tu peux déjà commencer par acquérir le matos et tester le tutoriel.

Pour information le principe utilisé par une WiiRemote, qui peut être utilisé pour un "head mouse" utilise une camera et calcule le déplacement des deux sources de IR.
soit la reconnaissance de forme un programme python, soit d'avoir un capteur CDD pour essayer de faire une reconnaissance rudimentaire avec une source IR à coté du capteur dirigé vers le réflecteur.
Mais ce n'est pas un sujet hyper simple à mettre en œuvre :slight_smile:

@terwal tu ne m'encourage pas lol

Ha si on contraire je t'encourage un maximun :slight_smile:
Très beau projet :muscle:

J'ai bien trouvé un truc avec openCV qui fonctionne bien sur Windows le problème c'est comment l'adapter sur Android ?

Pourquoi pour android?
OpenCV, marche aussi sur esp32, je crois, sur Raspberry c'est sure.
Je suppose que c'est ce qui est utilisé dans le lien de @lesept

Si tu cherche "openCV esp32-cam" sur Qwant, tu devrais trouver plusieurs tutoriels

Le système décrit dans le lien que j'ai posté est en deux parties :

  1. Un ESP32 Cam qui acquiert et transmet des images
  2. Un code python qui tourne sur PC et analyse l'image avec OpenCV

Je ne pense pas qu'on puisse faire tourner OpenCV sur un ESP32, même en Circuit Python. Mais sur un RasPi, pas de problème.

@terwal je suis tétraplégique, je ne peux donc pas utiliser mes bras donc pour pouvoir utiliser une tablette Android je suis obligé d'utiliser une souris. C'est pour ça que je souhaite créer un système Head mouse pour Android

Je crois avoir vu des trucs directement sur esp32, peut être ça

Ha oui effectivement, cela serait idéal, il n'existe aucune application pour android, qui utilise la caméra du mobile et modifie la position de ta souris ?
La souris est du coup virtuel ou il est possible d'en brancher une en USB?

Oui, mais il n'y a pas tout. Est-ce suffisant pour le besoin ?

@terwal si il existe des applications mais elles ne sont pas aussi précise que le headmouse et souvent ca plante

Je ne sais pas, c'est forcément moins puissant qu'avec un Raspberry.
Je n'ai aucune idée de la puissance nécessaire pour reconnaitre un rond dans un image.

Mais du coup comment tu pense que l'esp32 peut piloter la souris, par USB ?