P12AB01 Carte Télécommande pour Pilonne Eolien Windela¶
Projet GE2-GE3 2012
N° P12AB01¶
- Entreprise : WINDELA (http://www.windela.fr/)
- Client : M. AUDUBERT
- Tuteur Industriel : M. FICKINGER
- Responsable projet : M. LAFFONT
- Equipe projet : Said LAKBAIDI / Sylvain THIERY
TABLE DES MATIERES¶
1. Résumé
2. Abstract
3. Introduction
4. Présentation du sujet
5. Cahier des charges
6. Développement
1. Mode Manuel
2. Extinction de la vasque
3. Gestion du Temps
1. Module GPS
2. Evolution du temps
4. Réduction de la taille de la télécommande
5. Réduction de la consommation de la carte réceptrice
1. Coupure d’alimentations du GPS
2. Augmentation de la valeur des résistances
3. Changement des régulateurs de tension
4. Mise en basse consommation du module Xbee
5. Mise en basse consommation du microcontrôleur
6. Bilan de consommation
6. Communication avec les capteurs
1. Capteur crépusculaire
2. Capteur de présence
7. Communication télécommande/carte réceptrice
1. Présentation Xbee S2
2. Gestion de la communication
1) Résumé¶
Ce projet concernant la gestion de l'éclairage d'un pylône éolien est fourni par la société WINDELA. Celle-ci commercialise des pylônes d’éclairage public autonomes en énergie et souhaiterait pouvoir maîtriser la consommation de ces pylônes.
Lors de l’année scolaire 2010/2011 (projet P11A06) , un groupe d'étudiants a travaillé sur un système qui permet à l’utilisateur de définir certains paramètres d’allumage de la vasque en fonction de :
- La présence d’une personne,
- La luminosité ambiante,
- La détection d’une tranche horaire.
Pour cela ils ont réalisé deux cartes. La carte « réceptrice » est implantée sur le pylône éolien et elle comporte les différents capteurs qui permettent de détecter les personnes, la luminosité extérieure ainsi que l’heure de la journée. De plus cette carte peut recevoir des données qui proviennent de la carte télécommande. Cette dernière, détenue par l’utilisateur, permet de régler la puissance d’éclairage de la vasque en fonction des différents paramètres énoncés ci-dessus.
L'objectif est, dans un premier temps, de finaliser le système qui a été conçu l'an dernier, puis d'apporter des améliorations supplémentaires.
Mots Clefs : Énergie renouvelable, liaison sans fil, puissance d'éclairage, gestionnaire d'énergie, réseaux.
Haut de page
2) Abstract¶
Our project on the management of the lighting of a wind tower is provided by the company Windela. The latter makes autonomous public lighting towers and would be able to control the consumption of pylons.
Last year (2010/2011), a group of students worked on a system that will allow the user to define parameters of lighting depending on :
- Presence of a person,
- Ambient light,
- Detection of a time slot.
For this, they made two cards. The first one called reception card is located on the wind tower and includes the various sensors to detect people, the ambient light, and the time. Also this card can receive datas from the remote control card. The latter, owned by the user adjusts the light output of the basin as a function of various parameters listed above.
Firstly, our purpose is to conclude the device designed by our predecessors and then we have to bring some additional improvements.
Haut de page
3) Introduction¶
Dans le cadre de leurs études en Génie Electrique à Polytech’Clermont-ferrand, anciennement CUST, les étudiants réalisent un projet industriel proposé par une entreprise. Ce projet représente un volume horaire de 50 heures en deuxième année pendant lesquelles ils doivent réaliser une étude de faisabilité et de 250 heures en troisième année afin de réaliser le produit final.
Ce projet industriel a pour objectif de familiariser les étudiants à la gestion d’un projet et ainsi de les rendre autonomes dans leur futur métier d’ingénieur. Pour cela, ils sont encadrés par des professionnels.
Windela travaille sur les thématiques de réduction de consommation d'énergie en proposant une solution dans l'éclairage public. Elle commercialise des pylônes d'éclairage public autonomes utilisant l'énergie éolienne (voir figure 1). Ces systèmes répondent à la forte demande du marché, et respectent les exigences des clients au niveau de l'autonomie et de la basse consommation.
Ce système d’éclairage se présente sous la forme d’un pylône de 6 mètres pourvu à son sommet d’une éolienne qui permet de charger des batteries qui servent à alimenter une vasque équipée de LEDs ce qui réduit la consommation d’électricité.
p=
figure 1 : Pylône Eolien¶
L'étude porte sur la réalisation d’une carte télécommande qui permettra à l’utilisateur de régler l’intensité lumineuse de la vasque en fonction de la détection de présence, de la luminosité ambiante ainsi que des plages horaires prédéfinies.
La réalisation d'une carte réceptrice qui sera implantée sur le pylône est également nécessaire. Celle-ci recevra les données provenant de la télécommande pour réguler l’éclairage en fonction de ces paramètres.
Un tel projet se justifie par une demande des clients de Windela qui souhaitent pouvoir régler la puissance d'éclairage de leurs pylônes, mais également pour minimiser le temps de maintenance dépensé par les techniciens de l'entreprise.
L'objectif est, dans un premier temps, de finaliser le travail effectué par nos prédécesseurs, puis d'apporter des améliorations comme la conception d'un système qui mesure l'état des batteries des pylônes, la mise en réseau des pylônes pour une configuration groupée de ces derniers, la réduction de consommation des cartes réceptrices et la réduction de la taille de la télécommande éventuellement avec un écran tactile.
Dans un premier temps, nous présenterons le sujet plus en détail ainsi que le cahier des charges qui a été établi, puis nous décrirons les solutions choisies pour la finalisation et les améliorations apportées au produit. Pour terminer, nous présenterons l'organisation et la gestion mise en place pour mener à bien notre projet.
Haut de page
Présentation du Sujet¶
La forte demande du marché des systèmes autonomes et la concurrence ont mené l'entreprise Windela à nous confier ce sujet qui consiste à concevoir un système de gestion d'éclairage à basse consommation, qui ne nécessitera aucun apport d'énergie extérieure.
Ce système existe déjà sur le marché sous la forme d’un pylône de 4m avec une éolienne à son sommet, une vasque d’éclairage économique à LEDs et un pack de batteries à sa base. Le but de ce projet est d'optimiser sa consommation au maximum, c'est à dire que l'éclairage se règlera selon trois facteurs:
- La présence d'une personne à proximité
- La détection d'une plage horaire programmée
- La luminosité insuffisante.
Représentés sur cette figure 2:
Haut de page
Cahier des Charges¶
Notre projet consiste à concevoir deux cartes électroniques :
La carte réceptrice qui sera implantée sur le pylône, elle gérera la puissance de l’éclairage et sera munie d’un microcontrôleur qui va assurer les contraintes listées dans le tableau ci-dessous :
figure 3 : Cahier des Charges 1¶
La deuxième carte est la carte télécommande. Elle sera l’interface à travers laquelle l’utilisateur pourra modifier la configuration de la carte réceptrice et ainsi changer la puissance de l’éclairage de la vasque, cette carte remplira les fonctionnalités et les contraintes énoncées ci-dessous :
figure 4 : Cahier des Charges 2¶
FP : Fonctionnalité principale.
C : contraintes.
Vert : les contraintes et fonctionnalités assurées.
Orange: les contraintes et fonctionnalités en cours de développement.
Rouge: les contraintes et fonctionnalités non assurées.
Haut de page
6) Développement¶
Dans ce chapitre, nous allons présenter concrètement les études que nous avons menées ainsi que les modifications sur les cartes que nous allons réaliser pour arriver au produit final. Une bonne partie de la conception est présente sur le wiki du groupe d'étudiants qui nous a précédé.
6.1) Mode Manuel¶
Le cahier des charges impose une fonctionnalité qui permet de pouvoir commander l'éclairage de la vasque à tout moment. Ainsi, le client peut, grâce à la télécommande, voir en temps réel quelle puissance d'éclairage sera appropriée pour la configuration future du pylône. Pour effectuer cette fonctionnalité, nous avons mis en place un mode de communication spécial entre la télécommande et la carte réceptrice du pylône. Le fonctionnement de ce mode est accessible à l'utilisateur grâce aux étapes décrites ci-dessous :
1) Appui sur le bouton « Manuel » de la télécommande
2) Réglage en temps réel de l'éclairage avec les boutons d'incrémentation et de décrémentation de la télécommande
3) Fin du mode « Manuel » avec le bouton « Annuler »
Ce mode suit des algorithmes sur les deux cartes qui sont les suivants :
figure 5 : Algorithmes du mode manuel¶
Haut de page
6.2) Extinction de la vasque¶
Le système doit prévoir l'extinction de la vasque si les batteries des pylônes sont presque déchargées. Le pylône stocke dans les batteries de l'électricité créée par une éolienne. Si l'éolienne n'est pas en fonctionnement, les batteries, qui alimentent la vasque d'éclairage, vont se décharger petit à petit. Pour éviter la décharge complète des batteries, notre carte réceptrice ne doit plus commander l'éclairage des vasques lorsque la tension d'alimentation de la carte passe en dessous de 12 V. Cette baisse d'alimentation est la conséquence de la décharge des batteries.
La commande d’extinction des vasques nécessite tout d'abord la lecture de la tension d'entrée de la carte par le microcontrôleur. Nous utilisons pour cela un pont diviseur de tension qui adapte la tension d'entrée de 12V à la tension d'alimentation du microcontrôleur qui est de 3.3V grâce à des valeurs de résistances bien définies. Cette tension est ensuite convertie avec un convertisseur analogique numérique interne au microcontrôleur. Dans le programme, la valeur lue va permettre de décider s'il faut, oui ou non, commander la vasque en comparant la valeur lue avec une valeur seuil.
figure 6 : Solution implémentée pour l'extinction¶
Haut de page
6.3) Gestion du Temps¶
Il est important que notre système est une information sur le temps pour fonctionner correctement. En effet, notre carte réceptrice commande l'éclairage en fonction des scénarios qui ont été programmés grâce à la télécommande. Les scénarios sont définis sur des plages horaires, la carte réceptrice doit donc connaître l'heure à tout moment pour appliquer le bon scénario.
Pour réaliser cela, if faut tout d'abord introduire un module qui puisse lire l'heure par liaison sans fil avec une antenne public. Cependant le temps évolue et notre carte ne peut pas passer son temps à lire l'heure sur ce module, donc après avoir stocké l'heure lue par ce module, il faut que notre carte puisse générer une horloge interne initialisée avec l'heure qui a été lue.
6.3.1) Module GPS¶
Nous avons choisi un module GPS EM-406A pour pouvoir lire l'heure. Ce module coûte environ 30 € et permet de lire l'heure grâce à la communication par satellite. Ainsi, un pylône pourra lire l'heure à n'importe quel moment y compris en milieu encombré. De plus, ce module permet de gérer le changement d'heure été-hiver.
figure 7 : GPS EM-406¶
Le GPS peut communiquer avec le microcontrôleur grâce à une liaison série à 4800 baud. Le GPS doit être alimenté en 5V. Nous avons prévu un bornier sur notre carte pour connecter le GPS avec les broches d’alimentation (VCC, GND) et les broches de la liaison série reliées au microcontrôleur (Tx, Rx). Dans notre microcontrôleur, pour communiquer avec la liaison série, nous utilisons le périphérique UART0 réglé aux caractéristiques suivantes :
- Mode asynchrone
- 8 bits de données
- Horloge interne non divisée
- 1 bit de stop
- Pas de parité
- Vitesse de transmission et réception : 4800 baud
- Pas de contrôle de flux
figure 8 : Connexion du GPS au microcontrôleur¶
Lorsque le GPS est allumé et qu'il a réussi à communiquer avec un satellite, il envoi des trames de type NMEA en continu au microcontrôleur.
La trame que l'on doit traiter doit contenir l'heure et la date pour gérer les changements d'heure été-hiver. Parmi les trames envoyées par le GPS, la trame GPRMC nous donne ces deux informations.
figure 9 : Trames utilisées¶
Le programme que nous avons mis en place sur le microcontrôleur génère une interruption lorsqu'il y a une réception des données. Dans cette interruption, on regarde s'il s'agit d'une trame GPRMC, si c'est le cas on récupère l'heure, les minutes et la date. La date nous permet de rectifier l'heure reçue en la comparant aux périodes d'été ou hiver. De plus, la trame n'est lue que si elle est valide (Status = A) pour plus de sécurité. Pour éviter les erreurs de lecture, nous vérifions également que les valeurs de date et d'heure soient dans les valeurs standards ( ex : 0 < mois <= 12).
De cette façon, notre carte réceptrice possède l'information horaire nécessaire pour pouvoir gérer les plages horaires configurables de notre système.
6.3.2) Evolution du temps¶
Après avoir été capable de lire l'heure publique, nous avons mis en place une gestion du temps interne à notre carte pour éviter de lire indéfiniment l'heure sur notre module GPS et ainsi permettre à notre carte de s'occuper des autres fonctionnalités comme la communication avec la télécommande ou la gestion des capteurs.
Notre solution consiste à utiliser des périphériques présents sur notre microcontrôleur qui sont des timers. Un timer est un module qui permet de compter à partir d'une base de temps, il permet également de générer une interruption lorsqu'il a fini un cycle de comptage.
Nous utilisons trois timers avec des valeurs de comptage bien définies pour pouvoir générer une interruption toutes les minutes et faire évoluer notre temps :
- Timer 1 avec comme base de temps l'horloge du microcontrôleur nous permet de générer une fin de comptage toutes les millisecondes.
- Timer 2 avec comme base de temps le timer 1 (1 ms) nous permet de générer une fin de comptage toutes les secondes.
- Timer 3 avec comme base de temps le timer 2 (1 s) nous permet de générer une fin de comptage toutes les minutes et également de générer une interruption qui permet de faire évoluer la valeur du temps.
Haut de page
6.4) Réduction de la taille de la télécommande¶
Durant le déroulement de notre projet, nous avons eu recours à la sous traitance des élèves de génie électrique deuxième année. Nous avons sous-traité la CAO des deux cartes télécommande et réceptrice. La schématique de la carte réceptrice a été modifiée pour plusieurs raisons que nous évoquerons par la suite. Pour la CAO de la télécommande, la schématique reste inchangée, ils ont eu pour mission de réduire sa taille le mieux possible grâce à l'utilisation de composants montés en surface (CMS). Grâce au logiciel Solidworks, ils ont créé un prototype de la télécommande.
figure 10 : Simulation 3D de la télécommande¶
Leur solution a été de créer une carte principale contenant le microcontrôleur, le module Xbee, les régulateurs.. Ils ont également créé une carte clavier qui contient tous les boutons de la télécommande et qui vient se connecter sur la carte principale, l'afficheur vient également se connecter à la carte principale. On obtient au final une télécommande à deux étages qui peut être placée dans un boîtier de dimensions 120x95x40 mm. La pile 9V rechargeable se situe sous les deux cartes. Après avoir créé, soudé et mis en boîtier les cartes, nous obtenons le résultat présenté sur la photo ci-dessous :
figure 11 : Prototype final de la télécomande¶
Cette télécommande a été réduite de plus de la moitié par rapport à l'ancien prototype et devient donc bien plus maniable pour le client et bien plus satisfaisante par rapport à la contrainte du cahier des charges.
Haut de page
6.5) Réduction de la consommation de la carte réceptrice¶
Une contrainte du cahier des charges nous impose une consommation inférieure à 1 mA. Pour satisfaire cette contrainte, nous avons mis en place plusieurs solutions qui interviennent sur la schématique de la carte, les choix de composants ainsi que sur l’utilisation de mode basse consommation de certains composants présents sur la carte.
6.5.1) Coupure d’alimentations du GPS¶
Tout d’abord nous avons changé la schématique de la carte réceptrice pour couper l’alimentation du GPS. Le GPS est un module qui consomme 70 mA lorsqu’il est activé et il n’est utilisé qu’une fois par jour pendant deux minutes environ. Nous l’allumons donc seulement pendant deux minutes et l’éteignons le reste de la journée. Pour commander l’arrêt du GPS, nous utilisons le montage suivant :
figure 12 : Coupure d’alimentations du GPS¶
La broche du microcontrôleur est une sortie que nous commandons à l’aide de notre programme. Lorsqu’elle est à 0, la base du transistor est bloquée et l’alimentation fournie au GPS est coupée. Si la broche est à 1, le transistor est commandé à la fermeture, le GPS est alors bien alimenté.
Nous avons également mis en place le même système pour l’alimentation du capteur crépusculaire car il consomme 500 µA, nous l’éteindrons donc en pleine journée si nos résultats sur la consommation sont insuffisants.
6.5.2) Augmentation de la valeur des résistances¶
Nous avons augmenté la valeur des résistances sur les ponts diviseurs de tension pour minimiser la consommation.
figure 13 : Pont diviseur de tension¶
En considérant que Re est très grand devant R2, donc ie proche de 0 A, si on veut par exemple avoir VE2 = 5 V avec VE1 = 10 V :
VE2 = VE1 x R2 / (R1 + R2)
il faut donc R2 = R1
Pour R1 = R2 = 1kΩ :
Le courant perdu consommé par ce pont est le courant i1 qui est de :
i1 = VE2/R1 = 5/1000 = 5 mA
Pour R1 = R2 = 100kΩ :
Le courant perdu est de :
i1 = VE2/R1 = 5/100000 = 50 µA
La consommation a baissé, nous avons donc choisi des résistances supérieures à 100 kΩ pour tous les ponts diviseurs de tension utilisés.
6.5.3) Changement des régulateurs de tension¶
Le régulateur de tension utilisé auparavant sur la carte réceptrice pour baisser la tension d'entrée de 12V à 5V était un LM7805, nous avons constaté que sa consommation interne était de 6mA (quiescent current Iq) quelque soit la charge connectée en sortie du régulateur.
Nous avons donc choisi un nouveau régulateur basse consommation (low-Iq) qui est le MIC5295-5.0YD qui fournit une tension de sortie de 5 V pour une tension d'entrée de 12 V. Son courant de sortie peut aller jusqu'à 150 mA ce qui est suffisant dans notre cas car le courant maximum que peut consommer notre carte lorsque tous les modules sont actifs n'excédera pas 120 mA. Le courant consommé par ce régulateur est de 18 µA. La schématique reste pratiquement la même, la valeur des condensateurs a changé.
figure 14 : Régulateur de tension¶
Ce nouveau choix de régulateur nous a permis de réduire la consommation de la carte réceptrice d'environ 6 mA.
6.5.4) Mise en basse consommation du module Xbee¶
Le module Xbee possède une broche « SLEEP_RQ » qui permet de passer le module dans un état de basse consommation. Ainsi la consommation passe de 40 mA à moins de 10 µA. Nous avons donc connecté cette broche à notre microcontrôleur.
Nous endormons le module pendant environ 5 secondes et le réveillons pendant 50 millisecondes grâce au microcontrôleur. Le module est donc en veille 99% du temps. Pendant la période de veille, le module est incapable de recevoir des données de la télécommande. Il est capable de recevoir 13 ms après que le module soit réveillé (pendant 37 ms).
Ce délai laisse très peu de temps pour la réception d'un tableau de scénarii par exemple. De plus, le tableau a très peu de chance d'être reçu exactement dans cet intervalle sans perte de données. Nous avons donc mis en place un nouveau protocole de communication que nous développons plus en détail dans la partie 6.7.2.
6.5.5) Mise en basse consommation du microcontrôleur¶
Pour minimiser la consommation du microcontrôleur, plusieurs techniques ont été utilisées :
- Mettre en sortie toutes les broches inutilisées (réduction de 2 mA environ)
- Baisser la fréquence d'alimentation
- Baisser la tension d'alimentation
- Utiliser le mode « wait » du microcontrôleur
Mode wait :
Le mode « wait » est un mode spécial du microcontrôleur qui permet de bloquer la fréquence du CPU, la fréquence des périphériques reste active et lorsqu'une interruption est générée par un de ces périphériques, le microcontrôleur redémarre ainsi que la fréquence du CPU. Ce mode permet donc d'éviter d’exécuter des instructions inutilement lorsque le microcontrôleur n'a rien a faire et donc d'éviter de consommer plus. Nous rentrons dans ce mode à chaque fin d'itération de notre programme. Le microcontrôleur peut être réveillé par un timer, ou par les capteurs.
Baisse de la fréquence :
La consommation d'un microcontrôleur est liée à la fréquence et à la tension d'alimentation comme montré sur la formule suivante :
figure 15 : Pertes par commutation d'un microcontrôleur¶
Nous avons réduit la fréquence en passant de 20 MHz à 1 MHz. Ce changement a permis une forte réduction de consommation. Il engendre également des changements de vitesse dans la communication avec le module Xbee qui était de 115200 baud. Cette vitesse est trop rapide à gérer avec la nouvelle fréquence du microcontrôleur, nous sommes donc passé à 4800 baud. La gestion du temps effectuée en interne dans le microcontrôleur pour la considération des plages horaires (timers générant le comptage des minutes) a également été recalculée.
Baisse de la tension d'alimentation :
Comme pour la fréquence, la baisse de la tension d'alimentation du microcontrôleur permet de baisser la consommation (voir formule précédente). Nous avons donc baissé la tension de 5V à 3,3V qui est la tension minimale que peut supporter le microcontrôleur.
Cette baisse d'alimentation implique beaucoup de changements dans la schématique de la carte car plusieurs modules communiquent avec le microcontrôleur avec des tensions différentes. Voici un récapitulatif des tensions d'alimentation des modules principaux :
- Microcontrôleur M32C87 : 3.3V
- Module Xbee : 3.3V
- Capteur crépusculaire SFH5711 : 3.3V
- Capteur de présence PAPIRS EKMB1101111 : 5V
- Module GPS EM-406 : 5V
La communication entre le microcontrôleur et le module Xbee ou entre le microcontrôleur et le capteur crépusculaire se fait en liaison directe sans adaptation de tension. Cependant, pour faire communiquer le microcontrôleur avec le GPS ou le capteur de présence, nous avons utilisé le composant ADG3304.
figure 16 : ADG3304¶
Ce composant est un buffer bidirectionnel qui permet d'adapter la tension entre le côté A et le côté Y. Les deux tensions d'alimentation doivent être fournies, dans notre cas VccA? = EN = 3.3V et VccY? = 5V. De plus ce composant consomme très peu puisque son courant de consommation est inférieur à 5µA.
Nous avons utilisé ce composant comme intermédiaire sur la liaison série entre le GPS et le microcontrôleur ainsi qu'entre la sortie du capteur de présence et le microcontrôleur.
6.5.6) Bilan de consommation¶
Après la mise en place de tous ces changements, la consommation globale de la carte réceptrice qui était au départ de 95 mA est maintenant comprise entre 1 et 2 mA en mode veille. Ce résultat se rapproche beaucoup plus de la valeur souhaitée qui est de moins d'1 mA en mode veille.
Si nous faisons une approximation de la consommation totale journalière nous obtenons les résultats suivants:
Système en veille 98% du temps
Consommation en mode veille :
2mA x 98% Jour = 47,04 mA. H
Consommation en mode normal :
42mA x 2% Jour + 70 mA x 2 min = 22.49 mA. H
Les 40 mA concernent la consommation du module Xbee en mode normal et les 70 mA concernent la consommation du GPS qui est allumé 2 minutes par jour.
Au final, la consommation journalière est de 69.53 mA. H.
En sachant que le client utilise des packs de batteries comme montré sur la figure ci-dessous:
figure 17 : Pack de batteries¶
La batterie est dotée d'une capacité résiduelle de 42A.H, donc dans un cas parfait (sans auto décharge ni influence liée à l'âge et à la température ni aux pertes liées au raccordement), cette batterie pourra alimenter la carte réceptrice pendant 604 jours en étant déconnectée de sa source de charge (éolienne).
42A.H / 69.53 mA.H = 604 jours
Haut de page
6.6) Communication avec les capteurs¶
6.6.1) Capteur crépusculaire¶
Un capteur crépusculaire est utilisé sur la carte réceptrice et permet de couper l'alimentation de la vasque si la luminosité extérieure est suffisante. L'utilisateur peut choisir d'activer ou non ce capteur mais également de définir le seuil crépusculaire pour l'extinction de la vasque ainsi que la plage horaire d'utilisation.
La liaison du capteur crépusculaire SFH5711 a déjà été développée dans le wiki de nos prédécesseurs. Cependant la valeur de tension de sortie du capteur a changé. Elle varie désormais de 0 à 3.3V. Le réglage du capteur crépusculaire est compris, dans notre cas, entre 5 et 100 lux ce qui correspond à des intensités délivrées par le capteur crépusculaire de 5µA à 20 µA soit des tensions comprises entre 0.5 V et 2V pour une résistance de 100 kΩ. Le dimensionnement de cette résistance est donc correct car les tensions minimales et maximales qui nous intéressent sont comprises dans la plage de tension lisible par le convertisseur analogique numérique du microcontrôleur.
La valeur lue sur le capteur crépusculaire est ensuite comparée dans le microcontrôleur avec la valeur programmée par le client pour décider de commander ou non la vasque.
6.6.2) Capteur de présence¶
Le capteur utilisé est un PAPIRS EKMB110111, il y en a deux qui sont présents sur la carte et qui serviront à détecter la présence d'une personne de part et d'autre du pylône. L'utilisateur peut activer ou non ce capteur ainsi que définir la plage horaire d'utilisation.
L'alimentation de ce capteur est de 4.5 V, nous avons donc utilisé l'alimentation de 5V de la carte mise en série avec une diode qui permet de réduire l'alimentation de 5 V à 4.4V pour le capteur (tension de seuil de la diode de 0.6 V).
Le capteur fournit en sortie une tension tout ou rien 0V-5V. Lorsque la sortie est à 5V, cela signifie qu'une personne a été détectée. Une résistance de pull-down d'environ 1 kΩ doit être placée en sortie pour forcer la tension à 0V lorsque personne n'est détectée.
figure 18 : Connections du capteur de présence¶
La tension de sortie est ensuite connectée à une broche du microcontrôleur par l'intermédiaire du composant ADG3304 qui adapte la tension à 3.3V. Lorsque la broche du microcontrôleur passe au niveau haut, une interruption est générée pour traiter la détection de personne. Lorsqu'une personne est détectée, la puissance d'éclairage de la vasque passe de l'état de veille à l'état de détection qui a été configuré par l'utilisateur.
Haut de page
6.7) Communication télécommande/carte réceptrice¶
6.7.1) Présentation Xbee S2¶
Les modules XBee serie 2 se présentent sous la forme de circuits comme sur l’image ci-dessous. Le circuit est équipé de sa propre antenne planaire ou filaire et dispose d’une sortie antenne sur connecteur pour les applications nécessitant le déport de l’antenne externe.
figure 19 : Xbee Série 2¶
Les modules Xbee fabriqués par Maxtream (Digi) sont conçus pour opérer avec le protocole Zigbee, une communication radio 2.4Ghz.
Ces modules utilisent des versions de firmwares qui peuvent être mis à jour par téléchargement manuel depuis le site de Digi ou à travers le logiciel X-CTU.
Les modules XBee Serie 2, en version normale, ont une portée de 30 à 100m en terrain découvert. La version PRO a une puissance supérieure et est destinée à couvrir des distances de 100 à 1600m.
Les deux versions sont totalement compatibles et peuvent communiquer entre elles mais le plus judicieux est d’utiliser la même version et pour obtenir une consommation minime, il est conseillé d’utiliser les Xbee S2 version normale.
Caractéristiques de la version Xbee Série 2 normale:
- Portée intérieure : jusqu’à 30 m
- Portée extérieure en champs libre: jusqu’à 100m
- Puissance d’émission RF: 1 mW
- Courant de repos: < 10 μA
- Fréquence de fonctionnement: 2.4 GHz
- Vitesse de transmission RF: 250Kbps
- Tension d’alimentation entre 2,8 et 3,4V
Il existe deux modes de fonctionnement du module Xbee. Il y a le mode AT qui utilise les commandes AT pour configurer le module où l’envoi et la réception se font de façon simple. Le deuxième mode est le mode API qui nécessite de concevoir les trames à envoyer par l’utilisateur même. Pour des raisons de simplicité (temps de configuration et taille du programme), nous avons adopté le mode AT pour la suite de ce projet.
Configuration de liaison série :
Le module XBee S2 utilise une liaison série asynchrone pour communiquer avec le microcontrôleur. On configure la liaison (Vitesse, parité, start et stop, contrôle de flux) à l’aide du logiciel X-CTU ou à travers des commandes AT par le terminal de communication.
figure 20 : Connexion du module Xbee¶
Constitution d'un réseau Xbee :
Le mode de fonctionnement des deux cartes (télécommande et réceptrice) impose de configurer le module Xbee de la carte télécommande en tant que Coordinateur du réseau, et le module de la carte réceptrice en tant que « routeur » ou « end-device ». Ainsi, nous avons établi une communication « unicast ».
Pour cela, voici les paramètres à configurer:
- PAN ID : Représente un identifiant qui va permettre au module de communiquer seulement avec les modules qui se trouvent sur le même canal et qui portent le même PAN ID, ainsi on empêche les interférences avec d'autres modules non concernés par la communication.
- CH : Contient le numéro du canal utilisé par les modules pour communiquer, c'est le coordinateur qui fait un balayage des canaux de communication jusqu'à trouver son correspondant (routeur/end-device).
- SH et SL : Contiennent les numéros de série usine des modules.
- DH et DL : Contiennent les parties hautes et basses des adresses des correspondants.
- BD : Spécifie le « baud rate » choisi pour la liaison série (jusqu'à 115200 baud).
- D7 : Permet l'activation du contrôle de flux sur CTS.
- SM : Sleep mode propre aux routeurs et end-Devices, c'est un paramètre qui permet de choisir parmi les modes de mise en veille du module. (NONE,PIN Hebernate, PIN Doze, Cyclic Sleep..). Si ce paramètre est à 0, le module reste éveillé tout le temps.
- SP : Sleep periode, contient la durée de veille pour les modules utilisant le mode veille (Routeur/ End-devices), ou la durée pendant laquelle un coordinateur doit garder dans son buffer des données à envoyer, en attendant que le destinataire se réveille et les réclame.
- ST : Est un paramètre propre aux routeurs et aux end-devices qui représente la durée d'inactivité (pas de réception ni de transmission), durant laquelle le module écoute avant d'entrer en mode veille.
figure 21 : Configuration de nos modules¶
Haut de page
6.7.2) Gestion de la communication¶
Le passage en mode basse consommation implique un nouveau mode de communication. En effet, le module Xbee reste en veille 99 % du temps et a donc peu de temps pour recevoir les données. De plus la synchronisation avec la télécommande peut être compliquée si le module Xbee reste dans ce mode de fonctionnement.
Nous avons mis en place un système qui réveille le module Xbee pendant tout le temps où la télécommande a besoin d'envoyer des données. Le fait de réveiller le Xbee tout le long de la transmission assure une sûreté de communication sans perte de donnée. De plus, ce réveil rallongé ne sera effectué que lorsque le client voudra configurer le pylône, le Xbee se trouvera donc en mode veille la majeure partie du temps et consommera peu. Le fonctionnement est décrit sur le schéma ci-dessous :
p=
figure 22 : Protocole de communication implémenté¶
L'état en orange correspond au moment où le Xbee est en veille de façon cyclique pendant 99 % du temps (consommation d'environ 14 µA du Xbee).
Les états en vert correspondent au moment où le Xbee est en mode normal (consommation de 40 mA) avec le mode veille désactivé.
Lorsque la télécommande a besoin de communiquer (pour envoyer l'identifiant, le tableau de configuration ou des commandes manuelles), elle envoi en boucle une demande à la carte réceptrice jusqu'à ce que le module Xbee de cette dernière se réveille (toute les 5s) et réceptionne la demande. Le microcontrôleur de la carte réceptrice passe le module Xbee en mode normal en désactivant la mise en veille. Ensuite il envoie un accusé de réception à la télécommande pour lui indiquer qu'elle peut envoyer les données. Les données reçues sont ensuite traitées par la carte réceptrice. Lorsque la télécommande a finit de dialoguer avec la carte réceptrice, elle envoie une information qui lui indique qu'elle peut repasser le module Xbee en mode veille.
Haut de page
6.8) Performances¶
Les programmes développés au cours de ce projet ont subi des modifications et optimisations jusqu'aux dernières versions qui répondent mieux au cahier des charges imposé. Dans cette partie, nous allons vous citer les performances obtenues en tailles occupées ainsi qu'en temps d'exécution de ces dernières versions de programmes.
1. Carte réceptrice
Le microcontrôleur utilisé (M32C87) est doté d'une taille du code limitée à 64Koctets. Les programmes conçus pour assurer les fonctionnalités de la carte réceptrice occupent 8485 octets, ce qui représente une occupation de 15%. Une itération du code principal s'exécute en 90 µs.
Pour réduire la consommation de la carte réceptrice, on utilise le mode veille pour environ 98% du temps soit une consommation d'environ 1.5mA.
2.Télécommande
Les codes développés pour répondre au cahier des charges pour la carte télécommande ont une taille de 9309 octets sur 64Koctets, ce qui représente une occupation de 14,2%, avec un temps d'exécution de 150 µs.
Contrairement à la carte réceptrice, nous n'avons pas de contrainte de consommation au niveau de la carte télécommande, donc nous utilisons le mode normal de fonctionnement qui consomme environ 120 mA en pleine activité.
3.Temps de transmission
La communication entre les deux cartes se fait avec des modules Xbee Série 2 (protocole ZigBee?) qui nécessitent:
Une phase d'identification qui prend de 4 à 5s pour initier la communication sécurisée
A la fin de chaque configuration nous envoiyons un tableau destiné à la carte réceptrice, qui prend une durée d'acquisition d'environ 10s.
Haut de page
6.9) Estimation des coûts¶
Dans le cahier des charges, nous avons une contrainte qui limite le coût de chacune des cartes à 200 euros. Le coût de la carte réceptrice est plus critique que la télécommande si nous supposons que le client prévoit d'en produire autant que le nombre de pylônes. Une seule carte télécommande suffira pour configurer toutes les cartes réceptrices.
Ci-dessous voici la liste des coûts relatifs aux cartes, basée sur les prix des composants les plus coûteux. Les prix sont ramenés à l'unité après un achat par lot de 100.
Carte Réceptrice :
- M32C87 (33€)
- Capteur crépusculaire (1,21€)
- 2 Capteurs de proximité (2x37,72 €)
- GPS (29,66€)
- Xbee Série 2 (26,31€)
- Quartz 1MHz (2€)
Coût total de 160 €
Carte Télécommande :
- M32C87 (33€)
- Xbee Série 2 (26,31€)
- Quartz 20MHz SMS (1,35€)
- Afficheur (14€)
- Boutons poussoirs (13x0,20€)
- Boîtier (2,95€)
Coût total de 81€
A chaque carte, il faut ajouter le prix de production des cartes qui est d'environ 25€ pour une production en série, ce qui nous fait un total de 185€ pour la carte réceptrice et de 106€ pour la télécommande. Nous respectons donc la contrainte du cahier des charges.
Haut de page
7) Gestion de projet¶
Pour assurer le bon déroulement de notre projet, nous avons considéré que notre objectif principal était tout d'abord de finaliser un premier produit qui pourra satisfaire le cahier des charges qui a été établi l'an dernier. Notre deuxième objectif était de fournir un second produit qui intégrera les améliorations voulues.
Diagramme de Gantt
figure 23 : GANTT¶
Haut de page
8) Bilan¶
Nous sommes en fin de projet et nous avons réussi à satisfaire le cahier des charges dans son intégralité sauf pour la consommation en veille de la carte réceptrice obtenue qui, cependant, est très proche de la valeur attendue. Nous sommes en mesure de présenter un produit fonctionnel.
Ce projet a été très intéressant puisqu'il a englobé de nombreuses technologies et compétences différentes telles que la technologie Xbee ou GPS, l'informatique embarquée, l’électronique, la gestion de projet, le travail en équipe...
Nous avons su travailler en binôme en se répartissant les tâches de manière efficace tout en restant informé du travail effectué par chacun pour garder une vision globale sur le projet.
Nous remercions l'entreprise Windela et notre client M Audubert de nous avoir proposé un sujet intéressant et enrichissant. Nous remercions également M. Laffont ainsi que M. James pour leur suivi régulier ainsi que pour leurs conseils. Nous remercions aussi M. Sanchez pour le temps et l'aide qu'il nous a accordé. Nous remercions nos sous-traitants M. Montes, M. Bartholin, M. Caux et M. Jullien pour leur aide précieuse qui nous a permis d'avancer de très bonne manière dans notre projet. Pour terminer, nous remercions notre tuteur industriel M. Fickinger pour le temps et les conseils qu'il nous a apportés et qui nous ont beaucoup aidés dans notre gestion de projet.
Haut de page
9) Notes d'application¶
Sujet 1 : Sylvain THIERY
Cas pratique de mise en basse consommation d'un M32C87
Sujet 2 : Saïd LAKBAIDI
Communication Zigbee et basse consommation
Haut de page
Bibliographie¶
- http://www.windela.fr/
- http://am.renesas.com/
- http://polytech.univ-bpclermont.fr/ge/projets/wakka.php?wiki=P11A06
- http://www.digi.com/
- http://www.lextronic.fr/
- http://fr.farnell.com/
Haut de page
Mis à jour par Anonyme il y a environ 4 ans · 29 révisions