Étape 8: Construction d’un écran tactile : améliorer les essais de conception et de la vitesse
Comme nous pouvons le voir sur la photo, cette méthode n’est pas vraiment parfaite. Avec 15 LEDs sur une face, vous pouvez voir sur la photo 1 il existe encore de nombreux domaines, que nous ne pouvons pas détecter.
Alors, comment allons-nous pour agrandir la zone de détection ?
- La solution la plus simple consisterait à ajouter quelques LED qui pointent vers les capteurs. Cette solution, vous pouvez le voir sur la photo 2, permettrait de couvrir toute la zone centrale, mais pas celui plus proche de la LED. Il n’est pas que bon qu’il aurait besoin de beaucoup de LED, qui rendrait notre système aller plus lentement.
- Les zones non détectés sont sur les côtés. Une solution intéressante pourrait être d’améliorer la distance entre le LED et le capteur de l’écran. Cela permettrait de résoudre une partie du problème dans les zones non-détecté comme vous pouvez le voir sur la photo 3. Mais plus encore les LEDs sont des capteurs, le plus nous allons avoir d’interférences.
- Après un peu de tests, j’ai décidé d’ajouter quelques miroirs réfléchissants sur les deux côtés. Grâce à cette solution, si vous ajoutez quelques LEDs qui pointer vers le côté à travers le miroir, vous pouvez recouvrir une zone étendue. Comme vous pouvez le voir sur la photo 4.
- On pourrait imaginer une solution mixte comme sur la photo 5
- Une autre solution pourrait être une combinaison des trois points précédents. Les capteurs et les LEDs sont un peu loin de l’écran, certains miroirs couvrent la plupart des côtés haut et bas. Il est proche de la figure 6. Vous pouvez probablement ajouter quelques LED pour couvrir les angles comme sur la photo 5. Toujours pas parfait, mais presque entièrement couverts !
À l’aide de 2 capteurs CCD
Ma nouvelle solution était d’ajouter un second capteur CCD (photo 7). Maintenant, la totalité de l’écran est presque couvert ! Mais comme deux capteurs ralentit le système, je peux jouer avec le nombre de LED que j’utilise et avec le nombre de pixels. De cette façon je suis calme souple sur la couverture, la précision et la vitesse que je veux !
Par exemple, si j’ai besoin d’émuler un clavier pour une Nintendo Nes, j’ai besoin seulement 8 boutons. Je peux diviser mon écran en 8 parties et détecter si quelque chose est sur cette zone. Seulement 30 pixels (15 par capteur) et 8 LEDs est assez moyen pour le faire et je peux atteindre environ 40 Hz vitesse.
Si je veux émuler une souris j’ai besoin d’accéder à la totalité de l’écran avec une certaine précision. Donc j’ai ll utilisation 100 pixels (ou plus) et 16 LEDs. La vitesse va baisser jusqu'à 15 Hz, mais je peux cliquer là où je veux!
Sur la vidéo, je montre le programme de traitement en cours d’exécution sur le Raspberry Pi. J’ai seulement utilisé un CCD comme il était avant la mise à niveau 2 de la CCD, mais la position prend toujours un certain temps pour synchroniser. Ce problème est seulement parce que le traitement est un programme lourd, donc le Raspberry Pi a du mal à rafraîchir et synchroniser l’écran et le port série rapide. J’ai dû ajouter un retard sur le programme Teensy pour ralentir la communication. Si vous essayez l’interface graphique de traitement sur un ordinateur plus puissant, il sera parfaitement synchroniser.
Comme mes voyants n’ont un angle assez grand pour couvrir les deux capteurs, j’ai ajouté une deuxième LED en parallèle pointant vers une autre direction. J’ai juste eu à s’adapter à la résistance d’avoir deux fois le pouvoir, et c’est fait !