Rappel des discussions:
pour la mesure par plusieurs télémètres ultra-sons, il est apparemment possible d'émettre sur plusieurs sonars en même temps et de mesurer la réponse en retour de chaque capteur. Je ne pourrais malheureusement pas tester ça sur BOB3, car je suis limité par le PICBASIC qui ne sait pas faire ce genre de choses. Par contre, pour le robot suivant, ça serait à tester.
Ah bon ? il me semblait justement qu'il n'était pas possible d'émettre sur plusieurs en même temps pour des raisons de perturbations entre capteurs justement. Sauf peut être si on s'arrange pour travailler sur des fréquences sonores différentes. Enfin si tu as plus d'info je suis preneur.
Apparemment, si tu envoies les pulses EXACTEMENT en même temps, les capteurs ne se perturbent pas. Ils inhibent en effet la réception lors de l'émission de leur propre pulse. Après, pour la réception, les capteurs sont suffisamment directifs pour ne pas recevoir le pulse du voisin. J'essaye de retrouver des infos, et je compte bien tester ça également.
Perso j'y crois pas trop au système d'émettre les US en même temps :/
D'abord parce que vu le % de tolérance sur les composant +-20% pour un condo par exemple il risque d'y avoir des décalages entre les émissions de chaque émetteur, sans compter les multiples réfractions possibles qui sont déphasées (en temps donc) à la réception.
Personnellement, je pense que ça fonctionne. Je ferais l'essai en temps et en heure, et je vous dirais bien évidemment si ça fonctionne ou non. Pourquoi je pense qua ça fonctionne? D'abord, parce que la génération du pulse est réalisée en software, donc quand on dit que c'est émis exactement en même temps, c'est vraiment très précis: delta inférieur à la microseconde. Ensuite, pour les réflexions multiples, il faut que l'angle de réception soit précis (à +/-30°), ce qui limite sacrément le risque. J'ai du mal à me représenter un schéma géométrique de rebond multiple qui arriverai AVANT le rebond principal d'un capteur, et dans un cône de 30°. Mais bon, je suis preneur de toute démonstration géométrique que ça peut exister.
Bilan des courses: ça fonctionne!... si, si, ça fonctionne. En fait, il faut que tous les pulses soient émis dans un laps de temps très court. J'ai réussi à envoyer 4 pulses en moins de 1.5ms, et ça fonctionne. J'ai utilisé la platine "capteurs" de BOB4 que vous pouvez voir ici
Elle est équipée de 4 sonars SRF02. J'ai testé dans plein de positions différentes, pendant plusieurs minutes, à une cadence de 5 mesures par seconde, il n'y a pas d'interférence entre les capteurs.
MAIS... il y a toujours un mais:
le controleur que j'utilise dans BOB4 (Embedded Master) est une vraie merde du point de vue de la gestion du bus I2C. Il y a des limitations complètement incompréhensibles. Pour utiliser successivement plusieurs périphériques I2C, il faut libérer une instance "I2C device" avant d'en re-déclarer une autre. Cette opération (libération/déclaration) prend 1ms à chaque fois, c'est fatal ici. C'est idiot! Je testerai plus tard avec d'autres drivers I2C qui fonctionnent différemment, mais j'ai d'autres problèmes à résoudre sur BOB4. Ce n'est pas la seule limitation de cette carte (Embedded Master). Ca a clairement été pensé par des informaticiens et pour des informaticiens, sans réfléchir aux contraintes électroniques...
L'essai ci dessus a donc été réalisé avec un autre contrôleur, à une fréquence de bus I2C de 200kHz, avec un délai très court entre les trames I2C.
Leon.