Instruments intelligents utilisant les communications sans fil
Transcript of Instruments intelligents utilisant les communications sans fil
Université du Québec à Chicoutimi
Projet de conception
Conception d’appareils de mesure intelligents utilisant les
communications sans fils
6GIN333
Département des Sciences Appliquées
Module d’ingénierie
Professeur M. Daniel Audet
Auteur(s)
David Gaudreault
François Simard
Avril 2010
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 1
Table des matières
1. Introduction ............................................................................................................................. 3
2. Présentation du projet ............................................................................................................ 3
2.1 Description de l’équipe de travail ................................................................................... 3
2.2 Problématique ................................................................................................................. 3
2.3 Objectifs du projet ........................................................................................................... 4
3. Aspects techniques et éléments de conception ...................................................................... 4
3.1 Recherche technologies existantes ................................................................................. 4
3.2 Présentation du module Bluetooth ................................................................................. 7
3.3 Recherche et choix du profil de communication ............................................................ 7
3.4 Microprocesseur .............................................................................................................. 8
3.5 Instruments intelligents utilisant la communication sans fil ........................................... 9
3.5.1 Instrument de mesure ............................................................................................. 9
3.5.2 Instrument de conversion de consigne ................................................................... 9
3.6 Protocole de communication ........................................................................................ 10
3.6.1 Communication entre le voltmètre et la station maîtresse .................................. 10
3.6.2 Communication entre convertisseur de tension et la station maîtresse .................... 11
3.7 La programmation des protocoles de communication des appareils de tests. ............ 13
3.7.1 Instrument de mesure (voltmètre)........................................................................ 13
3.7.2 Instrument de conversion (convertisseur de tension) .......................................... 15
3.8 Présentation des logiciels .............................................................................................. 17
3.8.1 HyperTerminal ....................................................................................................... 17
3.8.2 Visual studio ................................................................................................................. 18
3.9 Liaison directe entre l’ordinateur et un appareil de test ................................................... 18
4. Bilan des activités .................................................................................................................. 19
4.1 Arrimage ........................................................................................................................ 19
4.2 Travail d’équipe ............................................................................................................. 19
4.3 Respect de l’échéancier ................................................................................................. 20
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 2
4.4 Analyse et discussion ..................................................................................................... 20
5. Conclusion et recommandations ........................................................................................... 21
Annexe ........................................................................................................................................... 23
Annexe 1 Diagramme de Gantt ......................................................................................... 23
Annexe 2 Schéma de branchement de l’appareil de mesure ............................................ 25
Annexe 3 Schéma de branchement de l’appareil de conversion ...................................... 26
Annexe 4 Schéma de branchement entre l’ordinateur et le module WT11 ..................... 27
Recherche bibliographique ........................................................................................................... 28
Table des figures
Figure 1 : Module Xbee de Zigbee ................................................................................................... 5 Figure 2 : Module Bluetooth ........................................................................................................... 6 Figure 3 : Schéma bloc représentant l’instrument de mesure ........................................................ 9 Figure 4 : Schéma bloc représentant l’instrument de conversion de consigne ............................ 10 Figure 5 : Schéma bloc représentant le protocole de communication entre la station maîtresse et le voltmètre ................................................................................................................................... 11 Figure 6 : Schéma bloc représentant la communication entre l’ordinateur et le convertisseur de tension ........................................................................................................................................... 12 Figure 7: Configuration du port de communication série ............................................................. 17 Figure 8 Diagramme de Gantt ...................................................................................................... 23 Figure 9 Schéma de branchement de l’instrument de mesure ..................................................... 25 Figure 10 Schéma de branchement de l’instrument de conversion ............................................. 26 Figure 11 Schéma de branchement entre l’ordinateur et le module WT11 ................................. 27
Table des tableaux
Tableau 1 : Comparaison entre la technologie Bluetooth et Xbee ................................................. 6
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 3
1. Introduction
De nos jours, les industries se modernisent en faisant appel à de nouvelles technologies. De plus, en plus les procédés sont automatisés et contrôlés à distance. Pour assurer le bon contrôle de ceux-ci, des transferts de données sont nécessaires, tels que des mesures indiquant l’état du procédé ainsi que des consignes permettant de modifier l’état du procédé. Des mesures sont souvent aussi importantes lors d’opération de recherche de défauts et de travaux d’entretien. La technologie d’aujourd’hui vise souvent la disparition des câbles pour éviter certaines sources de problèmes, faciliter l’entretien et réduire les coûts d’installation.
2. Présentation du projet
2.1 Description de l’équipe de travail Coordonnateur : Jacques Paradis Promoteur : Daniel Audet Conseiller : Daniel Audet Coéquipiers : David Gaudreault
François Simard Support technique : Richard Martin, Francis Deschenes et Daniel Audet
2.2 Problématique
Dans l’industrie, il arrive fréquemment que des gens soient appelés à prendre des mesures dans des endroits difficiles d’accès en hauteur ou dans des espaces restreints. Des équipements sont souvent placés dans des emplacements qui présentent un danger potentiel très élevé pour la personne qui veut y circuler comme la présence de courroies, de sources de chaleur importante, d’objets en mouvement, de hautes tensions. La prise de mesure dans ces endroits présente un risque élevé d’accident pouvant entraîner des conséquences très graves. Parfois, prendre une mesure dans ces endroits nécessite un arrêt de production et une
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 4
procédure de mise à énergie zéro, donc entraîne des pertes de temps et de production qui, à la fin d’une année, peuvent être très considérables.
2.3 Objectifs du projet
Le projet consiste à développer un module de communication intelligent permettant d'interfacer un instrument de mesure rencontré fréquemment dans l’industrie (Ex. Thermomètre, voltmètre ... etc.). Ce dernier doit pouvoir être interrogé par communication sans fil via un ordinateur. Les modules de communication en question devront pouvoir :
- Permettre d'identifier de manière unique chaque appareil de mesure (soit indiquer de quel appareil il s’agit).
- Transmettre des informations en mode continu ou à la demande selon le choix de l'usager.
- Permettre la configuration de certains paramètres d'opération.
La section sur l’ordinateur devra pouvoir :
- Se connecter automatiquement par communication sans fil aux modules
des instruments. - Afficher les informations fournies par les modules. - Configurer les modules en fonction des paramètres configurables
permis par ceux-ci
3. Aspects techniques et éléments de conception
3.1 Recherche technologies existantes
Sur le marché, il existe plusieurs de technologies en matière de communication sans fil, pour cette raison, il a été nécessaire d’effectuer une recherche afin de trouver la meilleure technologie qui permettrait de satisfaire les exigences du projet.
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
La recherche a été faite en fonction des demandes du client. Ainsi, il était question de rechercher une technologie possédant une bonne vitesse de transmission, une bonne portée et une résistance au bruit en milieu industriel. Les technologies sans fils disponibles les plus souvent retrouvées pour des réseaux personnels sont : le Bluetooth, ultra wide band (UWB), Zigbee, RFID et le WI‐FI. Deux technologies parmi celles‐ci sont très semblables et occupent une place importante sur le marché des communications sans fil. Ces deux technologies possèdent les caractéristiques requises aux fins du cahier de charge, soit le Bluetooth et le Zigbee. Zigbee : Le Zigbee est une technologie qui se rapproche beaucoup du Bluetooth. Le module industriel Xbee utilisant le protocole Zigbee est un module qui possède plusieurs caractéristiques très intéressantes.
Figure 1 : Module Xbee de Zigbee Une recherche plus en profondeur sur cette technologie a permis d’établir les avantages et désavantages de cette communication. Plusieurs des caractéristiques du Xbee avaient une ressemblance énorme avec le Bluetooth, toutefois lorsque nous avons voulu avoir des informations techniques (logiciel de programmation) sur celle‐ci, le support technique ainsi que les ressources étaient plus difficiles à trouver. Bluetooth La technologie Bluetooth est beaucoup répandue dans le monde des télécommunications et dans les appareils sans fil. Depuis quelques années, cette technologie a subi plusieurs modifications et améliorations afin de percer le marché du monde industriel.
5
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
Figure 2 : Module Bluetooth Cette technologie retint l’attention, car elle possède une excellente portée, une bonne vitesse de transmission et plusieurs autres avantages. La recherche n’a pas été très complexe, car l’information était facilement disponible ainsi que le support technique. Des exemples de programmation et des documents possédant les commandes de programmation entre autres sont facilement accessibles. La simplicité des commandes et le support (documentation et accès à des professionnels) sont de très gros avantages. La technologie Bluetooth possède d’autres atouts, puisqu’il fallait établir la communication à partir d’un ordinateur portable et que les ordinateurs portables sont presque tous munis de cette technologie. Ceci pourrait permettre l’économie d’un module de communication. Le tableau 1 présente une comparaison des principales caractéristiques de chacune des technologies.
Tableau 1 : Comparaison entre la technologie Bluetooth et Xbee
Éléments Bluetooth Xbee Vitesse 2.1 Mbps 2.5 Mbps Portée 10 à 250 m 30 à 90 m Coût Faible coût (25 à 35 $) Faible coût (19 à 36 $)
Antenne Disponible pas nécessaire (interne)
Disponible (externe)
Réseau Non nécessaire Non nécessaire Communication UART Disponible Disponible
Logiciel Commande ASCII Commande ASCII
À la suite de cette recherche sur les technologies existantes et après en avoir retenue deux, il fallait faire un choix très important pour la suite du déroulement du projet. Bien que Xbee représentait une bonne option, le fait de ne pas avoir accès à un bon support et que la plupart des ordinateurs portables sont munis de la technologie Bluetooth, le Bluetooth était la meilleure option. Les avantages sont nombreux et notons que les ordinateurs portables sont de plus en plus munis d’un module interne Bluetooth.
6
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
3.2 Présentation du module Bluetooth
Bien que le choix de technologie de communication fût fait, il fallait choisir un module qui puisse avoir les bonnes fonctions afin de s’assurer d’une bonne communication sans fil en milieu industriel. Le choix s’est dirigé vers le module de Bluegiga WT‐11 de classe 1. Celui‐ci offre tout ce dont nous avons besoin pour réaliser une communication sans fil avec des appareils de mesures intelligents.
Antenne intégrée (250m).
7
Supporte le profil SPP. Communication UART, USB, SPI. Conçu application industrielle ‐40 à 85 oC Logiciel simple (IWRAP 3.0.) Faible coût
3.3 Recherche et choix du profil de communication Dans la communication Bluetooth, plusieurs profils de communication sont disponibles. Chaque profil possède ses propres applications, certains sont conçus pour le transfert de données, d’autre pour le transfert d’information audio ou vidéo. Il y a aussi des profils dédiés à des fonctionnalités très spécifiques par exemple : pour les mains libres, pour les fax, pour les imprimantes. Dans notre cas, nous recherchions un profil de transfert de données simples.
À la suite de la recherche sur les profils de communication, le profil SPP (Serial Port Profile) s’est avéré la solution la plus simple et efficace pour supporter un transfert de données. Ce profil permet d’émuler un port série virtuel sur les deux appareils qui sont reliés aux modules de communication sans fil. Toute demande peut être exécutée sur l’appareil en utilisant le port série virtuel comme s’il y avait un câble série réel qui relie des deux appareils.
Par contre, une seule connexion à la fois est traitée dans ce profil. Par conséquent, seules les configurations de point à point sont considérées. Toutefois, cela ne devrait pas être interprété comme étant une limitation face à la concurrence, puisqu’un seul appareil est
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 8
capable de digérer plusieurs exécutions simultanées. C’est‐à‐dire, qu’un même module Bluetooth peut entrer en communication avec 7 autres dispositifs en même temps. La communication établie entre chaque module séparément et le module maître sont traités comme étant une communication point à point utilisant le profil de communication SPP.
Les rôles suivants sont définis dans ce profil :
Le Dispositif A (DEVA) : C’est l’appareil qui prend l’initiative d’établir une connexion avec un autre appareil. Dans notre cas le module au niveau de l’ordinateur sera de ce type.
Le Dispositif B (DEVB) : C’est le dispositif qui attend qu’un autre appareil prenne l’initiative de se connecter avec lui. Dans le présent projet, les instruments de mesure seront de ce type.
3.4 Microprocesseur
Pour la mise en œuvre du projet, les instruments de tests ont été développés à l’aide d’un microprocesseur très puissant, qui possède plusieurs fonctions qui ne sont pas nécessaires pour le fonctionnement du projet. En réalité, le microprocesseur servira seulement à gérer le protocole de communication et quelques registres de mémoire pour traiter les données. Donc, les besoins réels du microprocesseur idéal seraient :
• Posséder un port EUSART pour la communication avec le module WT11.
• Une mémoire suffisante pour soutenir la programmation du protocole de communication.
• Baud rate pouvant atteindre 115 200 bps pour permettre la communication avec la vitesse de base du WT11.
La nécessité que le microprocesseur supporte une vitesse de communication pouvant atteindre 115 200 bps est pour pouvoir remplacer les modules de communication des instruments sans avoir à le programmer directement. Puisque la programmation comprise dans le microprocesseur rattaché directement au module possède tous les paramètres de bases pour configurer les modules de communication et que la vitesse de communication par défaut des modules WT11 est 115 200 bps, le changement de pièce se ferait très facilement et sans programmation à faire sur le module directement.
Le microprocesseur PIC12F1822 répond très bien à tous ces critères et de plus, il est beaucoup moins dispendieux que celui utilisé pour le montage du prototype.
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
3.5 Instruments intelligents utilisant la communication sans fil
3.5.1 Instrument de mesure
L’instrument de mesure qui a été développé est un voltmètre. Cet instrument à été réalisé à l’aide d’un microprocesseur de type PIC18F4680. Ce microprocesseur à été utilisé puisqu’il était disponible sur place et convenait aux besoins de programmation pour la confection d’un prototype fonctionnel. Pour effectuer une mesure, le microprocesseur devait être programmé en fonctionnement convertisseur analogique à numérique. La composante PIC utilisée permettant de convertir un signal pouvant varier de 0 à 5 volts en un signal numérique de 8 bits. La variation de mesure est faite à partir d’un potentiomètre qui fait varier la tension sur une patte d’entrée analogique.
Le signal numérique converti est transféré au module de communication sans fil par le port de communication UART (port de communication asynchrone) et la donnée est envoyée vers l’ordinateur par la voie hertzienne.
Figure 3 : Schéma bloc représentant l’instrument de mesure
3.5.2 Instrument de conversion de consigne
L’instrument de conversion de consigne qui a été développé est un convertisseur de tension. Cet instrument a été réalisé à l’aide d’un microprocesseur de type PIC18F4680. Ce microprocesseur a été utilisé puisqu’il était disponible sur place et convenait aux besoins de programmation pour la confection d’un prototype fonctionnel. Pour effectuer une conversion de signal de tension, le microprocesseur devait être programmé en fonctionnement modulation par largeur d’impulsion (PWM). La composante PIC utilisée permettant de convertir un signal numérique de 8 bits en un signal analogique pouvant varier de 0 à 5 volts. La valeur moyenne et le lissage du signal d’impulsion à largeur variable sont obtenus à l’aide d’un filtre passe‐bas. De plus, un
9
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
amplificateur opérationnel en mode suiveur est placé à la suite du filtre pour isoler le microprocesseur du reste du circuit pour le protéger contre tout éventuel retour de courant.
La consigne numérique part de la station maître et est transférée entre les deux modules de communication sans fil pour ensuite être reçue par le convertisseur de tension via son port de communication UART (port de communication sans fil). La station maîtresse peut aussi interroger l’instrument sur la consigne déjà en vigueur, cette donnée numérique fait le chemin contraire à la consigne.
Figure 4 : Schéma bloc représentant l’instrument de conversion de consigne
3.6 Protocole de communication
Le protocole de communication entre la station maîtresse permet d’identifier l’instrument en question, de l’interroger sur certains paramètres et de mettre fin à la communication à l’aide de commandes ASCII simples sur HyperTerminal. La mise sous tension des modules de communication fait automatiquement une séquence d’initialisation des paramètres de bases de chacun des modules et fait en sorte que les modules sont prêts à communiquer. Ensuite, l’opérateur peut procéder à un appel de l’instrument à interroger. Par la suite, le protocole est propre à chaque type d’instrument utilisé.
N.B. Les descriptions 3.6.1 et 3.6.2 qui suivent sont faites en fonction d’un opérateur utilisant l’interface HyperTerminal disponible sur la plupart des ordinateurs personnels.
3.6.1 Communication entre le voltmètre et la station maîtresse
Une fois que la liaison entre le voltmètre et l’ordinateur est établie, l’opérateur peut, à l’aide de la commande ‘’NOM’’ suivie de la touche ‘’entrée’’, identifier l’instrument avec lequel il communique. Ensuite, à l’aide de la commande ‘’MESURE’’ suivie de la touche ‘’entrée’’, l’opérateur peut interroger l’instrument sur la mesure prise. Lorsque
10
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
l’application est terminée, il suffit d’envoyer la commande ‘’FIN’’ suivie de la touche ‘’entrée’’ et le module de mesure fera une séquence pour mettre fin à la communication et se remet prêt pour la prochaine requête de communication. Par la suite, il suffit d’envoyer la commande ‘’+++’’ au module maître pour que lui ferme cette liaison et soit prêt à faire une nouvelle requête dès que l’utilisateur lui demandera.
Figure 5 : Schéma bloc représentant le protocole de communication entre la station maîtresse et le voltmètre
3.6.2 Communication entre convertisseur de tension et la station maîtresse
Une fois que la liaison entre le convertisseur de tension et l’ordinateur est établie, l’opérateur peut, à l’aide de la commande ‘’NOM’’ suivie de la touche ‘’entrée’’, identifier l’instrument avec lequel il communique. Ensuite, à l’aide de la commande ‘’Consigne’’ suivie de la touche ‘’entrée’’, l’opérateur interroge le convertisseur sur la consigne déjà présente dans l’instrument. Si la consigne en vigueur n’est plus la consigne souhaitée, il suffit de signifier le vœu de changement de consigne à l’aide de
11
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
la commande ‘’NOUVELLE’’ suivie de la touche ‘’entrée’’. Le convertisseur répondra avec le message ‘’ NOUVELLE CONSIGNE ?’’ pour signifier qu’il est prêt à recevoir une nouvelle consigne. Ensuite, entrez la nouvelle consigne ‘’valeur de la consigne’’ suivie de la touche ‘’entrée’’ et l’instrument de conversion donnera le message ‘’RECUE’’ pour signifier que la consigne a été reçue.
Lorsque l’opération est terminée, il suffit d’envoyer la commande ‘’FIN’’ suivie de la touche ‘’entrée’’ et le module de conversion de consigne fera une séquence pour mettre fin à la communication et se remettre prêt pour la prochaine requête de communication. Par la suite, il suffit d’envoyer la commande ‘’+++’’ au module maître pour que lui ferme cette liaison et soit prêt à faire une nouvelle requête dès que l’utilisateur lui demandera.
Figure 6 : Schéma bloc représentant la communication entre l’ordinateur et le convertisseur de tension
12
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
3.7 La programmation des protocoles de communication des appareils de tests.
Le protocole de communication de chaque appareil de tests est géré par le microprocesseur PIC18f4680. Ce microprocesseur est programmable à l’aide du logiciel MPLAB IDE. La programmation est faite en langage c. Ce langage est beaucoup plus simple que le langage assembleur qui est aussi disponible.
3.7.1 Instrument de mesure (voltmètre)
Voici la routine principale qui gère tout le protocole de communication de cet appareil :
13
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 14
La routine principale débute par l’appel de plusieurs sous‐routines soit :
‐ UART (): Servant à configurer le port de communication série asynchrone pour permettre la communication entre le module et le microprocesseur.
‐ AT() : Pour vérifier l’état du module, celui‐ci répondra par ‘’ok’’ s’il est correct.
‐ nom() : Cette routine permet au microprocesseur de nommer le module selon l’instrument auquel il est dédié.
‐ RESET() : Permet au module WT11 d’ingérer son nouveau nom.
‐ slave() : Cette commande configure le module en mode esclave.
‐ RESET() : Permet au module WT11 d’ingérer son nouveau rôle et de se mettre prêt à entrer en communication et à recevoir des commandes.
Une fois la routine d’initialisation terminée, le module est prêt à entrer en communication. L’opérateur doit effectuer une commande d’appel pour se brancher avec l’appareil.
La programmation attend d’avoir reçu une commande provenant de l’opérateur. La réception des commandes est gérée par interruptions programmées dans le microprocesseur. À chaque fois qu’un signal entre sur la patte RX du port série, la séquence d’interruption appelle une sous‐routine appelée réception(). C’est dans cette sous‐routine que la donnée est reçue et envoyée vers un registre interne permettant le traitement de cette donnée. Lorsque la réception est terminée, la variable ‘’recu = 1’’.
Une fois qu’une commande est reçue, la programmation vérifie si cela correspond soit : ‘’NOM’’ ou ‘’MESURE’’ ou ‘’FIN’’. La programmation procède alors à l’appel des sous‐routines comprises dans la commande reçu. Si la commande reçue est inexistante, la programmation réinitialise la variable ‘’recu’’ et attend une nouvelle commande.
‐ Si la commande est ‘’NOM’’ : la sous‐routine senommer() est appelée, ceci permet d’envoyer le nom de l’appareil de test (voltmètre) à l’interface. Ensuite, on réinitialise la réception et on est prêt à recevoir une nouvelle commande.
‐ Si la commande est ‘’MESURE’’ : la sous‐routine MESURE() est appelée, ceci permet de transmettre la mesure. Ensuite, on réinitialise la réception et on attend une nouvelle commande.
‐ Si la commande est ‘’FIN’’ : la sous‐routine fin() est appelée, ceci envoie trois fois le
caractère ‘’+’’ au module wt11 ce qui met fin à la communication. Ensuite, on réinitialise la réception et on attend une nouvelle requête de communication.
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
3.7.2 Instrument de conversion (convertisseur de tension)
Voici la routine principale qui gère tout le protocole de communication de cet appareil :
La routine principale débute par l’appel de plusieurs sous‐routines soit :
‐ UART (): Servant à configurer le port de communication série asynchrone pour permettre la communication entre le module et le microprocesseur.
‐ PWM() : Sert à configurer le fonctionnement en modulation de largeur d’impulsion, pour permettre la conversion de la commande numérique en un signal analogique de tension.
‐ AT() : Pour vérifier l’état du module, celui‐ci répondra par ‘’ok’’ s’il est correct.
‐ nom() : Cette routine permet au microprocesseur de nommer le module selon l’instrument auquel il est dédié.
‐ RESET() : Permet au module WT11 d’ingérer son nouveau nom.
15
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 16
Une fois la routine d’initialisation terminée, le module est prêt à entrer en communication. L’opérateur doit effectuer une commande d’appel pour se brancher avec l’appareil. La programmation attend d’avoir reçu une commande provenant de l’opérateur. Comme dans le cas du voltmètre, la réception des commandes est gérée par interruptions programmées dans le microprocesseur. À chaque fois qu’un signal entre sur la patte RX du port série, la séquence d’interruption appelle une sous‐routine appelée réception(). C’est dans cette sous‐routine que la donnée est reçue et envoyée vers un registre interne permettant le traitement de cette donnée. Lorsque la réception est terminée, la variable ‘’recu = 1’’. Une fois qu’une commande est reçue, on vérifie à quelle commande cela correspond soit : ‘’NOM’’ ou ‘’CONSIGNE’’ ou ‘’NOUVELLE’’ ou ‘’FIN’’. La programmation procède alors à l’appel des sous‐routines comprises dans la commande reçu. Si la commande ne correspond à aucune des commandes énumérées ci‐haut, la variable ‘’recu’’ est réinitialisée et on attend une nouvelle commande.
‐ Si la commande est ‘’NOM’’ : la sous‐routine senommer() est appelée, ceci permet d’envoyer le nom de l’appareil de test (convertisseur de tension) à l’interface. Ensuite, on réinitialise la réception et on est prêt à recevoir une nouvelle commande.
‐ Si la commande reçue est ‘’CONSIGNE’’ : la sous‐routine consigne_presente() est appelée, ceci permet d’envoyer la consigne en vigueur. Ensuite, on réinitialise la réception et on est prêt à recevoir une nouvelle commande.
‐ Si la commande reçue est ‘’NOUVELLE’’ : la sous‐routine consigne_nouvelle() est
appelée, ceci permet d’envoyer à l’interface qu’il est prêt à recevoir une nouvelle consigne et attend la nouvelle consigne. Ensuite, on réinitialise la réception et on est prêt à recevoir une nouvelle commande.
‐ Si la commande est ‘’FIN’’ : la sous routine fin() est appelée, ceci envoie trois fois
le caractère ‘’+’’ au module wt11 ce qui met fin à la communication. Ensuite, on réinitialise la réception et on attend une nouvelle requête de communication.
Les routines d’initialisation qui s’exécutent dans la routine principale à chaque fois que les modules sont alimentés font en sorte que si jamais un module WT11 brisait, il suffirait d’en mettre un nouveau en place et la configuration se ferait d’elle‐même. La programmation pourrait offrir une option lors de la routine d’initialisation permettant à l’opérateur de pouvoir nommer l’instrument comme bon il lui semble. Ceci permettrait à un client qui possède plusieurs instruments du même type de différencier facilement ses instruments. La configuration du nom à distance pourrait se programmer de la même manière qu’un changement de consigne.
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
3.8 Présentation des logiciels
3.8.1 HyperTerminal
Pour permettre la simulation et la communication avec les appareils de test, il fallait choisir un logiciel permettant de communiquer avec le module WT‐11, afin de pouvoir le configurer et faire les tests de transmission. Le logiciel HyperTerminal n’était pas inconnu dans notre cas ce qui a rendu le choix plus facile. De plus, ce logiciel est disponible sur la plupart des ordinateurs personnels.
Celui‐ci permet d’entrer en communication UART avec le module en spécifiant plusieurs caractéristiques de la communication qui suit :
Figure 7: Configuration du port de communication série
Les configurations les plus importantes dans notre cas était la vitesse de 115 200 bps et le contrôle de flux à aucun. Avec ces ajustements, la connexion au module était simple et efficace. Les autres options apparaissent par défaut dans la configuration et c’est exactement ce qu’il faut pour obtenir une connexion avec le module WT‐11.
Dans le cadre du projet, l’utilisation de ce logiciel a permis une communication directe avec les appareils de test et a aussi été utilisé à titre d’interface opérateur compte
17
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 18
tenu du manque de temps pour réaliser la page d’interface opérateur. L’affichage des données et les modifications de certains paramètres sont donc faits directement sur HyperTerminal.
3.8.2 Visual studio
Pour la construction d’une page d’interface opérateur, plusieurs logiciels restent disponibles pour la création de celle‐ci. Il est important de spécifier que les logiciels doivent nécessairement permettre la communication série (UART) pour entrer en communication avec le module. Visual C++ ou encore Visual Basic permettent de créer une interface pour opérer les instruments de manière tout à fait simple et transparente. Ces logiciels permettent de créer des boutons, des affichages et y insérer des éléments selon les appareils contrôlés. Cependant, cette étape n’a pas été réalisée vu l’échéancier très serré en fin de projet.
3.9 Liaison directe entre l’ordinateur et un appareil de test
Des tests ont permis d’établir la possibilité d’établir la connexion directement à partir de la composante Bluetooth intégrée dans un ordinateur portable avec un instrument de tests. À l’heure actuelle, la communication se fait très bien à l’aide de l’interface HyperTerminal, il est possible d’envoyer des données à partir de l’ordinateur vers le module WT11 et la donnée se transfère aussitôt jusqu’au microprocesseur, par contre les données ne font toujours pas le chemin contraire.
La reconnaissance des modules WT11 se fait très bien et automatiquement. Lorsque vient le temps de se connecter avec les modules, l’ordinateur demande un code de couplage. Ce code de couplage est en quelque sorte une sécurité que le périphérique Bluetooth de l’ordinateur exige. Les modules WT11 peuvent interagir ensemble sans sécurité, mais les paramètres intégrés dans l’ordinateur ne le permettent pas. Le code de couplage est programmable dans les paramètres des modules WT11 à l’aide de la commande : SET BT AUTH * 000000. Le code de couplage du module devient alors ‘’000000’’ et c’est ce code qui permet la communication entre la communication intégrée d’un ordinateur et un autre périphérique.
Une fois le couplage réussi, la communication peut être établie. Pour établir une communication, les périphériques Bluetooth émulent un port série, donc utilisent par défaut le profil SPP et définissent un port de communication virtuel pour permettre à un logiciel de communication sur l’ordinateur de communiquer avec le module WT11. Par
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 19
exemple, la communication avec le voltmètre devait être faite à partir du COM8. Donc, dans le logiciel utilisé pour communiquer, soit HyperTerminal dans le cas présent, il fallait signifier que la communication devait être faite via ce port.
4. Bilan des activités
4.1 Arrimage
Lors de notre formation universitaire, plusieurs connaissances acquises durant ces années nous ont été très utiles. Le plus grand défi de ce projet était la programmation du protocole de communication en langage C sur un microprocesseur PIC18F4680, donc les cours comme : introduction aux ordinateurs où le langage C et C++ nous a été présenté et le cours systèmes à microprocesseurs où le microprocesseur PIC a été introduit ainsi que le logiciel de programmation MPLAB IDE. De plus, nos cours d’électronique1 et électronique2 nous ont fourni les connaissances nécessaires afin trouver le moyen de simuler les instruments de mesure et de conversion. Ils nous ont aussi été nécessaires lorsqu’il fallait trouver le moyen de lisser la sortie de notre instrument de conversion de tension à l’aide d’un filtre passe-bas. Durant la mise en marche de ce projet, nous avons acquis plusieurs nouvelles connaissances, par exemple les commandes ASCII et le traitement des données ASCII, c’était aussi notre première expérience en communication sans fil alors toute réalisation dans ce domaine était de nouvelles connaissances pour nous. Cette expérience de projet et chacun des obstacles rencontrés (conflits d’horaires, charge de travail énorme à travers les autres cours, délais de commande des composantes…) nous ont permis de prendre conscience que le métier d’ingénieur n’est pas toujours facile et que gérer un projet même si celui-ci n’était pas de grande envergure ce n’est pas toujours évident, il faut sans cesse s’ajuster chaque jour tout dépendant des avancements, des embûches et des horaires de chacun.
4.2 Travail d’équipe
Au niveau du travail d’équipe, les choses se sont très bien déroulées. Chaque individu d’une équipe est important, chacun possède ses forces et ses lacunes et il est très important d’en être conscient et de le respecter. Un projet traite de plusieurs choses différentes et c’est la personne la plus à l’aise dans une situation
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 20
qui doit plus diriger et prendre les devants pour que le projet continue de progresser. Dans d’autres situations, c’est un autre membre de l’équipe qui prend plus de contrôle et c’est ce qui fait la force d’une équipe. Le plus grand problème survenu au cours de la session était les conflits d’horaire entre les deux étudiants, pour résoudre ce problème, nous avons été obligés de travailler beaucoup de soir et de fin de semaine et même parfois seul pour mener à terme ce projet.
4.3 Respect de l’échéancier
Notre projet s’est quand même bien déroulé dans les temps cédulés au départ jusqu’aux tâches où les tests de communication devaient commencer. Ces tâches ont toutes décalées d’environ 2 semaines à cause du long délai de montage des composantes Bluetooth sur circuit imprimé. Nous avons remis nos composantes au technicien qui était très débordé et a fait affaire avec une firme externe pour le montage. Les composantes montées nous sont revenues que 3 semaines plus tard. Nous étions prêts à commencer la programmation de l’interface seulement que vers le 12 avril et nous avions prévu commencer cette partie à la fin mars. Ce délai a fait en sorte que notre page d’interface n’était pas prête pour notre présentation de projet.
Un diagramme de Gantt est placé en annexe pour vous permettre me visualiser l’échéancier final.
4.4 Analyse et discussion
Les résultats obtenus démontrent que notre démarche de travail était quand même bien. Les objectifs de communication étant très bien remplis, il manquait seulement un peu de temps pour la page d’interface d’opération, ce détail est expliqué plus haut. Le point qui nous a semé le plus de doute dans notre projet a été la recherche sur les communications sans fil, nous voulions faire vite pour commander au plus vite et les informations sur les modules Bluetooth étaient beaucoup plus accessibles que les données sur le Xbee. Nous avons comparé les performances ainsi que les prix et le tout étant très comparables et adéquats pour nos besoins, nous avons opté pour la communication Bluetooth. De plus, les ordinateurs ont de plus en plus un émetteur-récepteur Bluetooth incorporé ce qui rendrait encore plus simple la communication entre l’ordinateur et les instruments. Une chose qui aurait pu être mieux gérée est la période d’attente des
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 21
modules Bluetooth montés sur circuit imprimé. Durant cette attente, une meilleure préparation pour la page d’interface aurait pu être effectuée. Cependant puisque nous ne savions pas vraiment toutes les configurations nécessaires pour les modules Bluetooth, quelles commandes nous aurions besoins, il nous était difficile de prévoir tous les besoins de notre protocole de communication. Donc, nous avions de la difficulté à trouver exactement comment nous allions concevoir et programmer notre page d’interface. Maintenant, que nous avons eu notre première expérience en matière de communication sans fil et d’établissement d’un protocole de communication, il nous serait plus facile de gérer cette période de latence en la comblant avec cette tâche.
5. Conclusion et recommandations
Plusieurs des objectifs du projet ont été atteints. La communication entre un ordinateur et un instrument de mesure et un convertisseur de tension est bien établie, elle permet d’identifier l’appareil auquel il est connecté et d’en modifier certains paramètres d’opération et de recueillir des données très utiles. Le seul objectif n’étant pas complètement atteint est l’interface qui rendrait l’utilisation de ces modules encore plus simple. Cet objectif n’est pas atteint à cause d’un délai inattendu d’arrivage des composantes Bluetooth sur circuit imprimé. Une page d’interface fonctionnelle sur Visual Studio devait être réalisée, l’opérateur aurait pu opérer les modules simplement en cliquant sur des boutons poussoirs et en écrivant ses consignes dans des boîtes de dialogue ou simplement un glissant un gradateur à l’aide de sa souris.
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 22
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
Annexe
Annexe 1 Diagramme de Gantt
Figure 8 Diagramme de Gantt
Le diagramme de Gantt représentant la réalité permet de visualiser la période d’attente des modules de communication Bluetooth, maintenant que nous avons plus d’expérience, cette période de latence ne se reproduirait pas. La tâche de création de la page d’interface serait entamée, maintenant que nous connaissons mieux les besoins à combler par une page d’interface pour le fonctionnement d’un protocole de communication fonctionnant à l’aide de commande ASCII.
6GIN333 23
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 24
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
Annexe 2 Schéma de branchement de l’appareil de mesure
Figure 9 Schéma de branchement de l’instrument de mesure
L’entrée analogique RA0 est établie dans la programmation. La boîte ‘’POT1’’ correspond à la pine sur la plaquette de prototypage qui est reliée au signal de sortie du potentiomètre #1 situé au bas de la plaquette. La variation du potentiomètre fait varier la tension entre 0 et 5 volts continus.
25
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
Annexe 3 Schéma de branchement de l’appareil de conversion
Figure 10 Schéma de branchement de l’instrument de conversion
La sortie analogique RC2 est établie par la programmation. Le signal de sortie du microprocesseur est un signal pulsé entre 0 et 5 volts. La boîte ‘’GND’’ correspond à la pine sur la plaquette qui est reliée à la masse.
26
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333
Annexe 4 Schéma de branchement entre l’ordinateur et le module WT11
Figure 11 Schéma de branchement entre l’ordinateur et le module WT11
La boîte ‘’Série USB 2.0’’ est un module qui permet la communication série via un port USB 2.0 branché sur un ordinateur.
27
Projet 2009‐116 [INSTRUMENTS INTELLIGENTS UTILISANT LES COMMUNICATIONS SANS FIL]
6GIN333 28
Recherche bibliographique Listes des références les plus utilisées.
Bluetooth :
http://developers.sun.com/mobility/midp/articles/bluetooth1/
http://www.bluegiga.com/home
http://bluegiga.com/as/3.0/doc/html/a3850.html
http://www.palowireless.com/INFOTOOTH/tutorial/k5_spp.asp#Protocol%20Stack
http://www.commentcamarche.net/contents/bluetooth/bluetooth-fonctionnement.php3
http://french.bluetooth.com/Bluetooth/Technology/Works/Compare/
Xbee :
http://www.digi.com/products/wireless/
http://www.commentcamarche.net/contents/wifi/wifiintro.php3
http://www.digi.com/technology/rf-articles/wireless-zigbee.jsp
http://www.jennic.com
Microprocesseur :
PIC Microcontroller and embedded systems, Using Assembly and C for PIC18, Muhammad Ali Mazidi, Rolin D.Mckinlay, Danny Causey.
Note de cours de système à microprocesseur 6GEI530, Jean‐Gabriel Mailloux.