Aller au contenu


Photo
- - - - -

Hack logitech ls1


2 réponses à ce sujet

#1 octopus

octopus

    Nouveau membre

  • Membres
  • 2 messages

Posté 23 juillet 2012 - 03:54

Bonjour,
Je suis actuellement sur un projet de robotique et une des parties consiste à hacker une souris comme capteur pour détecter les erreurs de mouvements pour rectifier la trajectoire de notre robot.

Nous avons suivi un tutoriel sur une souris muni d'un sensor ADNS2051 :
http://lightmouton.free.fr/TIPE%20V2/Document%20texte/Souris%20Optique/Arduino%20Forum%20-%20%5BAPL%5D%20Voir%20au%20travers%20d'une%20souris.htm

Le résultat fut concluant.

La souris ne marchant, malheureusement, pas sur feuille blanche, nous nous sommes rabattus sur la Logitech LS1, munie d'un sensor ADNS7550.

Image IPB

Pour les soudures nous avons relié SCLK à la pin 2, MISO (output) à la pin 3 ; GND sur GND et VDD5 sur VDD5 de la Arduino.

Le code utilisé, est un dérivé de celui-ci afin qu'il soit compatible avec notre sensor :
http://www.martijnthe.nl/2009/07/interfacing-an-optical-mouse-sensor-to-your-arduino/

Nous avons juste eu à changer les adresses de registres.

Par contre, sur ce test là, nous avons des valeurs incohérentes.

Nous avons des doutes sur les soudures, en effet, sur la ADNS2051 il n'y avait qu'une patte du capteur qui s'occupait de l'entrée et de la sortie tandis que sur l'ADN7550 il y a un MISO et un MOSI.

Est-ce que vous auriez une idée sur le problème ? Et sur comment le rectifier ?

#2 Astondb8

Astondb8

    Pilier du forum

  • Membres
  • PipPipPipPipPip
  • 1 111 messages
  • Gender:Male
  • Location:Paris

Posté 23 juillet 2012 - 05:21

La réponse est simple Une sourie ne travaille que dans un seul sens.

Tu as une liaison maitre vers ésclave (MOSI)
et une liaison esclave vers maitre (MISO)
Ta sourie est donc ésclave ton µC est maitre.
Il n'y a effectivement aucune communication MISO dans ce cas.
Alors que ton composant sait gerer les deux sens.

Cdlt
Yves

 


#3 octopus

octopus

    Nouveau membre

  • Membres
  • 2 messages

Posté 24 juillet 2012 - 04:39

Après une réponse sur un autre forum, nous avons remarqué qu'il fallait utiliser la bibliothèque SPI d'Arduino pour implémenter le SPI. Après de nouveaux tests, impossible de recevoir des données correctes; les deltas x et y restent à zéro.
Après relecture de la datasheet, nous avons remarqué qu'on pouvait modifier l'intensité du laser (il est peut être même nécessaire de l'allumer) et qu'il fallait initialiser la puce avant de pouvoir l'utiliser (une longue liste d’opérations en conséquence).

Nous nous demandons si c'est effectivement la direction à prendre.
La datasheet est ici: http://www.avagotech.com/pages/en/navigation_interface_devices/navigation_sensors/laserstream/adns-7550/

Après des recherches sur google, personne n'a jamais montré qu'il avais réussi à utiliser une souris laser avec une Arduino Uno, c'est à chaque fois des souris optiques.
Nous avons testé avec une souris optique mais celle-ci fonctionne très mal sur feuille blanche et n'est pas précise, il nous faut vraiment une souris laser.

Auriez vous des suggestions à nous apporter ? ou simplement confirmer que nous ne partons pas complètement dans le mur.

Merci.



Répondre à ce sujet



  


0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users