Rapport de projet

advertisement
Lycée Edouard BRANLY
Rapport de projet
Thème 2012 – Robot Roomba
Projet - Carte Radio
Ludovic LE BRECH
François MAHIEU
Matthieu RICHARD
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
SOMMAIRE
I)
Présentation du système ......................................................................................................................................... 2
A.
IROBOT ................................................................................................................................................................. 2
B.
L’ASPIRATEUR ROOMBA ......................................................................................................................................... 2
C.
PROBLEMES DU SYSTEME ET INCONVENIENTS ............................................................................................................ 2
E.
ETUDE TECHNIQUE DU SYSTEME MODIFIE ................................................................................................................. 3
II)
Présentation de l’objet technique ........................................................................................................................... 5
A.
CARTE COMMUNICATION (O.T.1) ........................................................................................................................... 5
B.
CARTE RADIO (O.T.2) ............................................................................................................................................ 5
C.
CARTE ROBOT (O.T.3) ........................................................................................................................................... 6
III) Etude fonctionnelle de la partie commande Radio ................................................................................................ 7
A.
ROLE DANS LE SYSTEME .......................................................................................................................................... 7
B.
DESCRIPTION DES FONCTIONS ................................................................................................................................. 7
C.
DECOUPAGE FONCTIONNEL ..................................................................................................................................... 8
IV) Etude structurelle de la carte .................................................................................................................................. 9
A.
FA : ALIMENTATION DE LA CARTE ............................................................................................................................ 9
B.
FS1 : ADAPTATION DES NIVEAUX DE TENSION ET TRANSMISSIONS DES DONNEES .......................................................... 9
1)
FS1-1 : Adaptation des niveaux de tensions de Tx ....................................................................................... 9
2)
FS1-2 : Adaptation du niveau de tension de Rx .......................................................................................... 11
3)
FS1-3 : Module XBEE ou Bluetooth et visualisation de fonctionnement ................................................... 12
C.
V)
FS2 : MESURE DU COURANT CONSOMME .............................................................................................................. 18
1)
FS2-1 : Amplificateur de différence ............................................................................................................. 18
2)
FS2-2 : Amplificateur non inverseur ............................................................................................................ 19
3)
Ecrêtage de la tension VS1B ........................................................................................................................... 20
Mise en conformité de la carte .............................................................................................................................. 21
TEL 2012 – Carte radio
1
LE BRECH Ludovic
I)
Projet 2012 – Robot Roomba
TEL
Présentation du système
A. IROBOT
IRobot est une entreprise spécialisée
dans la conception et la vente de robots afin de
faciliter la vie des personnes. Elle a été créée par
Colin ANGLE, Helen GREINER et Rodney BROOKS. Depuis 19 ans, IRobot a conçu des produits pour
l’armée Américaine (par exemple le Packbot) et des sous-marins sans équipage, ceci afin de
minimiser les pertes humaines.
Depuis le début des années 2000, IRobot conçoit des robots pour le grand public, tel que le
Roomba.
B. L’ASPIRATEUR ROOMBA
L’aspirateur Roomba est un aspirateur intelligent pouvant nettoyer n’importe quel sol
domestique tout seul dont le premier modèle a été créé en 2002. L’aspirateur utilisé dans ce projet
est celui de la 3ème génération. Il est conçu pour aller sous tous les meubles et s’adapte au
changement de surface.
L’aspirateur met en moyenne 3 heures pour se recharger. Après utilisation ou lorsque la batterie
est vide, il retourne sur son socle.
Il dispose de contrôles situés sur le dessus de son capot, et possède des indications orales multi
langues.
C. PROBLEMES DU SYSTEME ET INCONVENIENTS
L’aspirateur est prévu pour un usage domestique. Il nettoie uniquement les surfaces lisses
(carrelages, parquets, lino, …). Il est difficile pour lui de nettoyer des surfaces rugueuses comme les
moquettes.
Il dispose également d’un ramasse poussière de capacité relativement réduite, ce qui oblige
l’utilisateur à le vider régulièrement.
De plus, il n’est possible de le contrôler que par les boutons poussoir situés sur sa coque.
TEL 2012 – Carte radio
2
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
D. OBJECTIFS DU PROJET
Pour améliorer le système, on propose d’ajouter une commande à distance par onde radio,
avec possibilité de commander le robot via un ordinateur.
On a décidé d’ajouter plusieurs fonctionnalités :
- Commande à distance via un ordinateur par le biais d’un webserver ;
- Commande sans fil par onde radio ;
- Programmation du robot par câble Ethernet ;
- Possibilité de visionner l’intérieur de la maison grâce à une caméra embarquée sur le robot.
E. ETUDE TECHNIQUE DU SYSTEME MODIFIE
Le diagramme sagittal correspondant à ces modifications est celui-ci (les modifications sont
en rouge) :
Les nouvelles liaisons sont :
Utilisateur – Commande à distance
 L10 : L’utilisateur envoie des informations de mise en fonctionnement ou d’arrêt, des consignes de
nettoyage, de retour au socle de chargement ou d’orientation du robot.
TEL 2012 – Carte radio
3
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Commande à distance - Robot aspirateur
 L11 : La commande XBEE envoie un signal, onde radio représentatif du fonctionnement désiré. =>
Je ne comprends pas la phrase …
Robot aspirateur – Ecran
 L12 : La caméra embarquée transmet le signal vidéo acquis par le robot aspirateur.
Ecran – Utilisateur
 L13 : L’écran restitue le signal vidéo acquis par le robot à l’utilisateur.
TEL 2012 – Carte radio
4
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
II) Présentation de l’objet technique
Les modifications apportées au système permettent de commander à distance le robot Roomba soit par onde
radio, soit par ordinateur via une page HTML. On peut aussi utiliser un outil(sans s) de vidéo-surveillance par
ordinateur avec une webcam. Nous rajouterons ces fonctionnalités au système existant :
- Commande à distance par le biais d’un ordinateur ;
- Commande sans fil par onde radio ;
- Programmation du robot par câble Ethernet ;
- Possibilité d’accéder au robot depuis n’importe quel ordinateur via un web-server ;
- Possibilité de visionner l’intérieur de son domicile grâce à une caméra embarquée sur le robot
aspirateur.
A. CARTE COMMUNICATION (O.T.1)
Cette carte permet à l’utilisateur de commander l’aspirateur à distance. On peut la
comparer à une télécommande.
Cette carte accueil aussi le module Webserver qui contient la page web qui permet de diriger le
Roomba et de visualiser la webcam. Elle alimente également une des deux cartes radio.
Ordre de
l'utilisateur
sur la carte
Commander le Roomba
Liaison série avec la carte
radio
Communication PC
par RS 232
Alimentation de la carte
radio
Ordre de
l'utilisateur
depuis le site Web
par liaison Ethernet
B. CARTE RADIO (O.T.2)
Le système nécessite deux cartes radio pour fonctionner : une qui envoie les informations de la
carte communication, l’autre qui les reçoit et les communique à la carte robot. Elles communiquent
soit par module XBEE, soit par module Bluetooth.
Carte communication
Liaison série
TEL 2012 – Carte radio
Transmettre les informations de
la carte communication à la
carte robot par liaison XBEE ou
Bluetooth
Carte robot
Liaison Série
5
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
S majuscule ou non ?
C. CARTE ROBOT (O.T.3)
La carte robot permet d’envoyer les commandes de la carte communication au robot. Elle
comporte des liaisons séries avec un module XBEE ainsi qu’une liaison RS232 pour permettre une
commande directe via ordinateur. Un afficheur LCD est connecté à cette carte pour afficher l’état
du robot (ON/OFF) ainsi que la tension de la batterie. On peut également modifier le programme
pour afficher la consommation de la carte Radio.
Carte robot
Liaison série
Commander le robot et informer
l’utilisateur de l’état du robot
Donner les ordres au
robot
Informer l’utilisateur
De l’état du robot par
afficheur LCD
TEL 2012 – Carte radio
6
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
III) Etude fonctionnelle de la partie commande Radio
A. ROLE DANS LE SYSTEME
La carte radio sert à transmettre les informations de la carte communication vers la carte
robot par le biais de modules XBEE ou Bluetooth.
B. DESCRIPTION DES FONCTIONS
Que veut dire Rx ? Tx ? Umes ?
A la rigueur, fait une légende ;-)
TEL 2012 – Carte radio
7
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
C. DECOUPAGE FONCTIONNEL
TEL 2012 – Carte radio
8
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
IV) Etude structurelle de la carte
A. FA : ALIMENTATION DE LA CARTE
Cette fonction permet d’alimenter la carte.
En entrée du LM317(qu’est-ce que c’est ?), il y a du (ça ne veut pas dire grand-chose) 12V fourni par la carte robot
ou la carte communication. Les condensateurs C3 et C2 permettent d’éliminer les fluctuations du signal d’entrée,
et le condensateur C1 permet d’éliminer les fluctuations du signal de sortie.
La diode D1 permet d’éviter, en cas de mauvaise alimentation, d’endommager les autres composants.
En sortie du régulateur, on doit avoir du 3.3V. Vérifions cela (ou pas « vérifications :) :
R2
390
Vout = 1.25*(1+ R1+R10)+IADJ * R2 = 1.25*(1+ 120+120)+50.10-6 * 390 = 3.3V
Le régulateur permet bien d’avoir 3.3V en sortie.
B. FS1 : ADAPTATION DES NIVEAUX DE TENSION ET TRANSMISSIONS DES
DONNEES
1) FS1-1 : Adaptation des niveaux de tensions de Tx
Schéma de simulation
TEL 2012 – Carte radio
9
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Cette fonction assure l’adaptation des niveaux de tensions du signal Tx (qu’est-ce que c’est ?) afin
qu’il soit interprétable par le microcontrôleur de la carte commande ou de la carte robot.
En effet la tension DOUT est soit 0V, soit 3.3V, le but étant d’avoir une tension de sortie (Tx) de 0V ou de
5V.
D’après les graphiques, le montage remplie sa fonction, mais comprenons comment cela marche (pas très
Français) :
Le montage est constitué de résistances 10 K et d’un transistor BC547. D’après le document constructeur
du BC547, β =110.
Un transistor est saturé lorsque IC < βIB.
Lorsque Dout = 3.3V, on peut supposer que le transistor Q3 est saturé, ce qui va bloquer Q2 et donc passer
Tx à 5V.
Lorsque DOUT=3.3v
Pour Q3 :
IB =
IC =
 − 3.3−0.7
18
−
16
=
1000
= 260µA donc β.IB = 110 x 7µA = 28.6 mA
4.8
=10000 = 480 µA
Ainsi nous avons bien IC < βIB
Le transistor Q3 est alors saturé.
Pour Q2 :
Q3 étant saturé, son VCE=0.2V. Donc le VBE de Q2 est 0.2V, ce qui n’est pas suffisant pour le faire saturer.
Ainsi le transistor Q2 est bloqué.
Ce transistor agit ainsi comme un interrupteur ouvert donc Tx = 5v.
Lorsque DOUT=0v
Pour Q3 :
IB= 0A donc β.IB = 0.
TEL 2012 – Carte radio
10
LE BRECH Ludovic
IC=
VCC−VCE
R16
Projet 2012 – Robot Roomba
TEL
4.8
=10000=480 µA
Ainsi nous avons IC> βIB
Le transistor Q3 est alors bloqué.
Pour Q2 :
IB=
IC=
VCC−V
=
4.3
= 430 µA donc βIB= 110 x 430 µA=47.3 mA
R16
10000
VCC−V 4.8
R17
=10000=480 µA
Ainsi IC< βIB
Le transistor Q2 est alors saturé.
Ce transistor agit comme un interrupteur fermé donc Tx = 0.2v puisque c’est aussi la tension VCE.
2) FS1-2 : Adaptation du niveau de tension de Rx
Cette fonction permet d’adapter la tension Rx (0v-5v) sortant d’un microcontrôleur à une tension variant
entre 0 et 3.3v en entrée du module Xbee.
Elle est composée de 3 résistances (1k, 10k et 100k) et d’un transistor BC557 PNP. D’après le document
constructeur, β=110.
Schéma de simulation
On utilise les théorèmes de Thévenin et de superposition pour simplifier le schéma et les calculs.
TEL 2012 – Carte radio
11
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Pour Rx = 5v :
ETH =
 ∗4+3.3∗3 5∗100.103 +3.3∗1.103
3+4
=
100.103 +1.103
100.103 ∗1.103
3∗4
= 4,98V
100.106
RTH= 3+4 = 100.103+1.103 = 101.103 = 990 Ω
UR5 = 3.3 + VCE = 3.3 - 90.10-3 = 3.21 V
IB =
IE =
 −  +5 −3.3

3,3+
5
=
=
4,98+90.10−3 −3.21−3.3
= -1.45mA
990
3,3−90.10−3
10.103
= 321µA
Ic = IB – IE = -1.45 – 0.321 = -1.771mA
βIB = 110*(-1.45.10-3) = -160mA.
On a IC< βIB. Donc le transistor est saturé. Il agit comme un interrupteur ouvert, donc DIN/CONFIG = 3.3V.
Pour Rx = 0v :
ETH =
 ∗4+3.3∗3 0∗100.103 +3.3∗1.103
3+4
=
100.103 +1.103
100.103 ∗1.103
3∗4
= 0,03V
100.106
RTH= 3+4 = 100.103+1.103 = 101.103 = 990 Ω
IB =
IE =
 −  +5 −3.3

3,3+
5
=
=
0,03−90.10−3 −3.21−3.3
3.3−90.10−3
10.103
990
= -6.45mA
= 321µA
Ic = IB – IE = -6.45 – 0.321 = -6.771mA
βIB = 110*(-6.45.10-3) = -0.71mA.
On a IC > βIB. Donc le transistor est bloqué. Il agit comme un interrupteur fermé, donc DIN/CONFIG = 0V.
A REVOIR
3) FS1-3 : Module XBEE ou Bluetooth et visualisation de fonctionnement
a) Module XBEE

Caractéristiques de la liaison XBEE :
TEL 2012 – Carte radio
12
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Les modules XBEE sont des circuits permettant une communication sans-fil avec le protocole
802.15.4 (Zigbee). Ils permettent de réaliser différents montages, comme une liaison série RS232 (utilisée
dans ce système) ou bien un réseau maillé auto-configuré. Ils utilisent la bande passante des 2.4Ghz (pas
très Français) (comme le Wifi ou Bluetooth).
Ce module a un fonctionnement très simple, ce qui permet son utilisation dans de nombreux domaines
sans pour autant nécessiter de grandes connaissances.
Il permet également, en fonction de la puissance d’émission du signal, d’effectuer une communication
jusqu’à 100 mètres.
Le débit peut atteindre 250kbps, mais dans le cas de la liaison série RS232 utilisée dans ce projet, le débit
est compris entre 9600bps/9,8kbps et 38400bps/38,4kbps (pas plus simple pour la comparaison ?). La
vitesse et la bande passante ont des effets sur les erreurs de transmission.
De plus, un composant XBEE de série 1 coute moins de 20€, ce qui permet de créer un réseau à moindre
coûts.
 Présentation et configuration du module XBEE
Le module XBEE ressemble à ceci :
Le schéma de principe de la transmission d’un module à l’autre est celui-ci :
L’adaptateur 3.3V est nécessaire pour que les informations communiquées par le microcontrôleur soit
utilisable par le module sans risquer de le griller.
TEL 2012 – Carte radio
13
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Pour configurer le module XBEE, il faut utiliser le logiciel X-CTU ainsi qu’une interface de programmation
USB. Le programme et l’interface se présentent comme ceci :
Interface de
programmation USB
X-CTU
Pour configurer le module, il faut définir le port de communication (COM PORT) sur « USB Serial Port ».
On laisse la vitesse de transmission à 9600 Bauds, avec 8 bits de données, pas de bit de parité et 1 bit de
stop.
On test la connexion avec le bouton « Test / Query ».
Puis dans l’onglet « Modem Configuration », on configure le module. On clique sur le bouton « Read »
afin de récupérer la configuration actuelle afin de l’éditer.
TEL 2012 – Carte radio
14
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
On commence par définir le « Coordinator Enable » en tant que « End Device », ce qui permet une
connexion entre 2 modules.
Puis on détermine le canal de communication (ce qui permet à plusieurs modules XBEE ayant la même IP
de communiquer avec le bon module associé).
On attribue une adresse au module XBEE (au format hexadécimal).
Puis on lui indique l’adresse du module XBEE avec lequel il doit communiquer.
Définition de la partie haute de l’adresse
de destination (0 pour permettre une
communication avec un autre module).
TEL 2012 – Carte radio
15
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Définition de la partie basse de l’adresse
de destination.
On définit la puissance du signal émis (ce qui va influer sur la portée du module).
On configure la vitesse de communication des informations (dans ce projet, les modules
communiqueront à une vitesse de 9600 bauds).
Puis on définit les broches du module permettant une information visuelle de l’activité du module. Dans
notre projet, on définit la patte DIO5 comme étant la LED d’indication d’association des modules et la
broche PWM comme la LED d’activité de trafic RF.
TEL 2012 – Carte radio
16
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
RSSI signifie Received Signal Strength
Indicator
Sur la carte radio, la LED1 est la LED RSSI et la LED2 la LED d’indication d’association des modules.
On écrit la configuration dans la mémoire du module afin de pouvoir l’utiliser (bouton « Write »).
 Communications sans fil
Lorsque l’on commande la mise en route ou l’extinction du robot, la carte communication envoie un
signal via le module sans-fil. Ce signal comporte différentes informations, tels que l’adresse de la
commande du robot et la commande à proprement parler de l’allumage ou de l’extinction du robot.
Trames émises par le microcontrôleur pour l’allumage du robot :
Trames émises par le microcontrôleur pour l’extinction du robot :
Extrait du programme robot cde_robot3.c
#define ADRESSE_CDE_ROBOT 0x5A
#define ROBOT_ON 0x55
#define ROBOT_OFF 0xAA
Dans le programme de la carte commande robot, on trouve que l’adresse 5A correspond à l’adresse de
commande du robot. Cette adresse est envoyée au début de la transmission afin de communiquer à la
carte robot où stocker les informations qui arrivent.
Lors de la communication de l’information ROBOT_ON, la carte communication envoie le code 55 à la
carte robot, qui permet l’allumage de l’aspirateur.
TEL 2012 – Carte radio
17
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Lors de la communication de l’information ROBOT_OFF, la carte communication envoie le code AA à la
carte robot, qui permet l’extinction de l’aspirateur.
b) Module Bluetooth
 Caractéristiques de la liaison Bluetooth
Les modules Bluetooth sont des circuits permettant une communication sans-fil. Il en existe plusieurs
versions majeures, qui se déclinent en plusieurs versions mineures :
Le Bluetooth 1.x utilisant la norme 802.11.2. Il y a :
- La version 1.0, très peu utilisée et très vite remplacée par la version 1.0b permettant
une meilleure interopérabilité ainsi qu’un débit de 1Mbps ;
- la version 1.1, corrigeant quelques bugs et ajoutant quelques fonctionnalités ;
- la version 1.2, apportant une vitesse un peu plus supérieure aux versions précédentes
tout en permettant une meilleure résistance aux interférences.
Le Bluetooth 2.x, utilisant la norme 802.11.2 permet un débit de 2.1Mbps. Il y a :
- La version 2.0, rétro compatible avec les versions 1.x, réduit la consommation des
périphériques tout en améliorant encore la fiabilité des transferts ;
- La version 2.0 + EDR (pour Enhanced Data Rate) permet une plus grande vitesse de
transfert (jusqu’à 2.1Mbps) ;
- La version 2.1 + EDR qui améliore le jumelage entre les appareils et ajoute quelques
fonctionnalités de sécurités.
Le Bluetooth 3 + HS (High Speed) est compatible avec la norme 802.11 (Wi-Fi) et permet principalement
un débit maximum de 3Mbps (30Mbps en cas d’utilisation du Wi-Fi). Il bénéficie également d’une
meilleure gestion de l’énergie, sauf en cas d’utilisation du mode High Speed.
Le Bluetooth 4.0 n’apporte pas d’ajout majeur puisqu’on retrouve des caractéristiques identiques au
Bluetooth 3.0 (compatibilité Wi-Fi, consommation réduite, sécurité améliorée, …). Son atout majeur se
situe surtout dans sa consommation réduite, permettant une utilisation avec des petits équipements
dotés de piles rondes (montres, chronomètres, podomètres, etc…).
C. FS2 : MESURE DU COURANT CONSOMME
1) FS2-1 : Amplificateur de différence
TEL 2012 – Carte radio
18
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
Cette fonction permet de prélever la tension aux bornes de R9 (dans la fonction alimentation). Cette
tension est image du courant consommé par la carte.
L’amplificateur est en mode linéaire car il y a une contre-réaction via R11. On le considère comme parfait.
 Calcul de la sortie VS1A.
Le régime linéaire implique que le potentiel des entrées de l’amplificateur soit égaux (qu’est-ce
qui est égaux ?). Donc V+ = V-.
V+ =
V-
=
14∗
10.103 ∗12
= 10.103 +10.103 = 6V
13+14
∗11+1∗(12+9)
11+12+9
V-*(R11+R12+R9) = Alim*R11+VS1A*(R12+R9)
VS1A =
 − ∗(11+12+9)−∗11
12+9
Comme l’amplificateur est en régime linéaire, on peut écrire :
VS1A =
VS1A =
 + ∗(11+12+9)−∗11
12+9
6∗(10.103 +10.103 +10)−12∗10.103
10.103 +10
VS1A = 0.7V
2) FS2-2 : Amplificateur non inverseur

Calcul de la sortie VS
L’amplificateur est en mode linéaire car il y a une contre-réaction via RV1
Donc V+ = VV+ = VS1A = 0.7V
∗8
V- = 8+.1
V+*(R8+k.RV1) = VS1B * R8
VS =
+∗(8+.1)
8
Pour k = 0 :
VS =
0.7∗10000
10000
= 0.7V
Pour k = 1 :
TEL 2012 – Carte radio
19
LE BRECH Ludovic
VS =
Projet 2012 – Robot Roomba
0.7∗(10000+20000)
10000
TEL
= 2.1V
3) Ecrêtage de la tension VS1B (Méfies-toi de l’alignement de tes titres).
Cette fonction sert limiter la tension Umes entre 0V et 5V en cas de surtension ou sous-tension en
sortie de l’amplificateur opérationnel. (0 ≤ VS ≤ 5).
Si la tension VS est supérieure à 5V, la diode D2 sera passante et la diode D3 sera bloquée. On aura
donc UMES = 5V.
Si la tension VS est inférieure à 0V, la diode D3 sera passante et la diode D2 sera bloquée. On aura
donc UMES = 0V.
Cette fonction sert donc à protéger le microcontrôleur de la carte connectée afin d’éviter de le
griller.
(meilleur exemple : regarde l’alignement la page du dessus ..)
TEL 2012 – Carte radio
20
LE BRECH Ludovic
Projet 2012 – Robot Roomba
TEL
V) Mise en conformité de la carte
Blah blah blah…
TEL 2012 – Carte radio
21
Téléchargement