|
Communication sans fil
1) But
Le but de la communication sans fil est de libérer le robot du fil de communication série qui le relie à l'ordinateur. Le principal défi de cette partie du projet est de remplacer le fil par un lien sans fil sans qu'il n'y ait de modifications à apporter aux autres parties du projet. Le lien doit donc être efficace et ne pas créer de contraintes supplémentaires sur les autres sections du projet.
2) Lien avec les autres parties du projet
Cette section du projet n'a pas vraiment de liens directs avec la plupart des autres parties du projet, comme la puissance ou le traitement de l'image. Cependant, il fallait travailler en collaboration avec les concepteurs du protocole de communication entre le robot et le PC. En effet, il fallait tenir compte des particularités de nos modules de communication. Par exemple, lorsque l'un des modules transmet, il reçoit également les données qu'il transmet. Il faut donc que le protocole de communication ignore cet "echo" pour éviter que de fausses commandes soient exécutées.
Schéma bloc
3) Réalisation du projet
A- Choix du type de lien
Voici les contraintes à respecter pour le système de communication sans fil :
Communication bidirectionnelle
Transparent pour le robot et l'ordinateur
Excellente fiabilité du lien
Faible coût
À partir des contraintes énumérées ci-dessus, deux types de lien de communication sont possibles. Un lien à fréquence radio et un lien infrarouge. Le lien infrarouge est plus délicat à utiliser, puisqu'il faut avoir un trajet direct entre le transmetteur et le récepteur. Ce qui implique que le capteur et l'émetteur sur le robot doivent être alignés dynamiquement lors des déplacements du robot. Cet alignement rend l'implantation de ce type de lien très difficile. De plus, les liens infrarouges ont une très courte portée. À cause de ces deux désavantages majeurs nous avons choisi le lien à fréquence radio.
Un lien à fréquence radio comporte des avantages très appréciés dans le cadre de ce projet. Il n'est pas nécessaire d'avoir un trajet direct entre l'émetteur et le récepteur et la portée est plus grande qu'un lien infrarouge. De plus, les antennes pour les émetteurs et récepteurs sont très faciles à fabriquer, deux bouts de fils suffisent. Étant donné le fait que la fréquence utilisée est relativement élevée, la longueur des antennes est raisonnable.
B- Choix des composantes
Deux avenues sont possibles pour mettre en place le lien radio. La première consiste à construire un système de communication sur mesure pour le projet à l'aide de pièces détachées. Cette façon de faire est intéressante, puisque nous pouvons produire un système répondant exactement à nos besoins. Cependant, notre expérience nous a démontré que l'ajustement d'un tel système est très délicat. De plus, à des fréquences aussi élevées, il faut adapter les diverses composantes du système afin d'éviter les réflexions. Encore une fois, notre expérience nous a permis de réaliser la difficulté technique de l'adaptation entre les différentes pièces.
La seconde avenue consiste à utiliser des transmetteurs et récepteurs commerciaux prêts à utiliser et à les adapter à notre système. Après une recherche sur Internet des différents fabriquants de modules de communication, nous avons choisi des modules qui comprennent à la fois un transmetteur et un récepteur. De cette façon, deux modules suffisent pour assurer la communication bidirectionnelle entre le robot et l'ordinateur. Nous réduisons donc le nombre de pièces nécessaires et par le fait même le coût de cette section du projet. Les modules sont fabriqués par la compagnie Abacom Technologies.
C- Implication des composantes choisies sur les autres parties du projet
Les modules choisis peuvent fonctionner à un taux de transfert maximal de 2400 bps. Le robot quant à lui fonctionne normalement à un taux de 9600 bps. Après vérification il est possible de changer le taux de transfert à 2400 bps pour permettre l'utilisation des modules Abacom. Cette modification du taux de transfert se fait dans notre protocole de communication qui est, soit dit en passant, très efficace. Le protocole est expliqué en détails dans une autre section du rapport. Les tests effectués à un taux de 2400 bps ont été concluants et nous assurent de pouvoir transmettre toutes les informations nécessaires de l'ordinateur au robot et vice versa.
D- Construction du module de communication sans fil
Afin de pouvoir utiliser les modules de transmission et réception, il faut tout d'abord convertir les signaux RS232 à des signaux TTL. L'ordinateur et le robot communiquent entre eux selon le standard RS232. Les modules quant à eux acceptent et produisent des signaux TTL. Cette conversion est facile à réaliser à l'aide des circuits MAX232 de la compagnie Maxim. Chaque puce peut convertir de TTL vers RS232 et de RS232 vers TTL en même temps. Deux puces serviront donc de modules de conversions à l'entrée et à la sortie du système de communication sans fil. Leur simplicité d'utilisation et leur faible coût ne viennent pas ajouter de nouvelles contraintes sur le système.
Pour alimenter les cartes Abacom et les autres composantes du système, nous utilisons une batterie 9V et un régulateur de tension. Le régulateur abaisse la tension à 5V continu et nous fourni assez de puissance pour alimenter toutes les puces et cartes. De plus cette alimentation séparée nous permet d'éviter plusieurs sources de bruit et de placer le module à l'endroit le plus approprié sur le robot sans contrainte de fils d'alimentation.
La prochaine étape de la réalisation du système consiste à fabriquer les antennes nécessaires à la transmission et la réception des signaux radios. Le type d'antenne que nous avons choisi est le monopôle quart d'onde. Ce type d'antenne est très efficace aux fréquences radio et est très facile à construire. Le monopôle quart d'onde est en fait l'équivalent électromagnétique d'un dipôle demi-longueur d'onde. Le dipôle demi-longueur correspond à la longueur minimale pour laquelle un segment de fil entre en résonance. La différence entre le monopôle et le dipôle est la suivante : le dipôle a deux bras physiques alors que le monopôle a un seul bras physique et un bras virtuel. Le bras virtuel du monopôle vient de l'image du bras physique, le sol agissant comme réflecteur. En pratique, le monopôle est plus simple à construire et sa directivité est meilleure.
La fréquence d'opération des modules Abacom est de 433,92 MHz. Voici les calculs pour le design des antennes :
c = fl
l
= c/f l
= (3*108) / (433.92*106) = 0,6914 m
Longueurs d'antennes = L = l
/4 L = 0,6914 / 4 = 0,1729 m
Deux bouts de fils d'une longueur de 0,1729 m agiront comme antennes pour le système de communication sans fil. Étant donné les conditions d'opération du système, ces antennes devraient amplement suffire pour assurer une bonne transmission des données.
Puisque les modules de transmission ne peuvent émettre une grande puissance, il ne sera pas nécessaire d'aviser le CRTC de notre utilisation de la fréquence 433,92 MHz.
4) Problèmes et solutions
L'emploi des modules Abacom ne permet la transmission des données que dans une seule direction à la fois. L'utilisation d'une fréquence unique est responsable de cette limitation de notre système de transmission sans fil. Cette contrainte ne pose pas de problèmes pour notre équipe, puisque le protocole déjà développé transmet des données dans une seule direction à la fois. Après un envoi de données, le protocole attend une réponse de l'autre section du système.
Après une série d'essais infructueux, nous avons fait face à un problème déroutant. Les deux modules utilisés séparément fonctionnaient parfaitement, mais lorsque nous transmettions d'un module à un autre, aucun signal n'était reçu, bien que parfaitement émis par l'autre carte. Voici la nature du problème que nous avons décelé et la solution l'accompagnant.
Lorsque le port de l'ordinateur est inactif, le système de conversion RS232 à TTL produit 5V continu à sa sortie. Cette tension alimente la patte d'entrée des signaux TTL du module Abacom. Donc le module transmet la porteuse de façon continue. Cette transmission de la porteuse rend le récepteur du même module inutilisable. Et cette situation se produit lorsque l'ordinateur attend les signaux de l'autre carte Abacom.
Nous avons réglé le problème de façon simple et élégante. Une inversion du signal TTL avant transmission et une autre après transmission. La double inversion n'affecte pas le signal transmis et permet de désactiver le transmetteur lorsqu'il n'est pas utilisé.
Par la suite, lors de l'intégration avec le protocole de communication, nous avons fait face à un autre problème difficile à régler. Puisque le transmetteur et le récepteur utilisent la même antenne, les informations transmises sont reçues par le module récepteur des deux cartes. Lorsque l'ordinateur envoie une instruction au robot, par exemple, il reçoit cette même instruction. Nous avons effectué deux tentatives pour régler le problème. La première consiste à éteindre le récepteur de la carte qui émet lorsqu'il y a des données à transmettre. Nous avons implanté cette solution sur les cartes des modules de transmission sans fil. Le temps de réponse du récepteur est trop lent pour permettre d'obtenir des résultats concluants. Une bonne partie des signaux transmis est éliminée, mais il reste des vestiges dus à la capacité limitée de commutation du récepteur. Les vestiges prennent, pour l'ordinateur, l'aspect de données erronées. Nous avons donc rejeté cette façon de faire.
La seconde tentative pour régler le problème fut concluante. Le protocole de communication entre le robot et l'ordinateur a été modifié pour tenir compte de la réception des données transmises. Lorsque des données sont envoyées de l'ordinateur, il reçoit ces mêmes données dans sa mémoire tampon. La solution apportée consiste donc à effacer de la mémoire tampon exactement le même nombre de bits que l'on a trasmis. Le même processus est effectué par le robot. De cette façon l'ordinateur et le robot ne voient pas les données qu'ils viennent de transmettre comme des données reçues.
Un autre problème auquel nous avons eu à faire face, celui-là d'ordre plus pratique que théorique, concerne les connexions et les soudures sur notre plaquette. Les cartes Abacom ont des pattes très minces, ce qui cause de mauvais contacts lors de l'utilisation de"sockets". Nous utilisons des "sockets" que nous soudons sur la plaquette, ce qui évite de souder directement les cartes et les puces. Le fait de souder directement les composantes pourrait endommager l'intérieur de ces dernières. Nous n'avons pas vraiment trouvé de solution miracle à ce problème, à part manipuler avec soin nos plaquettes et vérifier souvent leur bon fonctionnement. Par exemple, il peut arriver que le récepteur de l'une des cartes ne soit plus actif à cause d'une mauvaise connexion, ce qui rendrait la communication impossible.
Nous avons atteint les buts fixés pour cette partie du projet. Le lien est opérationnel et dispose d'assez de largeur de bande pour transmettre toutes les informations nécessaires au projet. Il a nécessité quelques ajustement mineur au protocole de communication afin de tenir compte des limitations que les cartes Abacom nous ont imposées. Cependant, si il devait y avoir un ajout important dans les données à transmettre, nous ne pourrions probablement pas suffire à la demande avec le matériel présentement utilisé. Si les modules devaient être produits en grand nombre ou utilisé dans un environnement, il faudrait les rendre beaucoup plus robustes. Il manque une boîte de protection et une antenne flexible pour rendre les cartes plus facile à manier.
5) Conclusion
Nous avons atteint les buts fixés pour cette partie du projet. Le lien est opérationnel et dispose d'assez de largeur de bande pour transmettre toutes les informations nécessaires au projet. Il a nécessité quelques ajustement mineur au protocole de communication afin de tenir compte des limitations que les cartes Abacom nous ont imposées. Cependant, si il devait y avoir un ajout important dans les données à transmettre, nous ne pourrions probablement pas suffire à la demande avec le matériel présentement utilisé. Si les modules devaient être produits en grand nombre ou utilisé dans un environnement, il faudrait les rendre beaucoup plus robustes. Il manque une boîte de protection et une antenne flexible pour rendre les cartes plus facile à manier.
| | |