Capteur Communicant Intelligent : Différence entre versions

De Wiki d'activités IMA
(Séance 7 (02/10/13))
(Séance 6 (30/09/13))
Ligne 61 : Ligne 61 :
 
=== Séance 6 (30/09/13) ===
 
=== Séance 6 (30/09/13) ===
  
* Pour la localisation par RSSI, on constate très vite qu'il nous faut au minimum 3 émetteurs dont on connait la position et qui transmettent des trames de façon régulière chacun leur tour sans qu'il y ait de conflits. On appellera ces émetteurs TOURELLE tout au long de ce projet en opposition avec le récepteur à localiser qui sera appelé BRACELET. <br>
+
* Pour la localisation par RSSI, on constate très vite qu'il nous faut au minimum 3 émetteurs dont on connait la position et qui transmettent des trames de façon régulière chacun leur tour sans qu'il y ait de conflits. On appellera ces émetteurs TOURELLE tout au long de ce projet en opposition avec le récepteur à localiser qui sera appelé BRACELET. <br><br>
  
* Pour les TOURELLES on décide d'implémenter dans un Arduino UNO un petit programme capable d’écouter ce qu'il reçoit sur son port série en provenance du module Xbee et d'identifier les éléments d'un trame simpliste de la former suivante : "<AA,BB,CC>" (AA=num de la trame,BB=nb total de trames,CC=identifiant de la TOURELLE). Chaque Arduino connait l'ensemble des identifiants des tourelles et leur priorité et sait ainsi à quel moment il a le droit d’émettre.<br>
+
* Pour les TOURELLES on décide d'implémenter dans un Arduino UNO un petit programme capable d’écouter ce qu'il reçoit sur son port série en provenance du module Xbee et d'identifier les éléments d'un trame simpliste de la forme suivante :  
 +
 
 +
    <AA,BB,CC>  
 +
    AA=num de la trame
 +
    BB=nb total de trames
 +
    CC=identifiant de la TOURELLE  
 +
 
 +
Chaque Arduino connait l'ensemble des identifiants des tourelles et leur priorité et sait ainsi à quel moment il a le droit d’émettre.<br><br>
  
 
*Pour l'unique BRACELET que l'on cherche à localiser on utilise une Arduino MEGA 2530 qui comporte 3 vraies UART supplémentaires. On aura donc Serial0 (Arduino <--> PC) et Serial1 (Arduino <--> Xbee) afin de ne manquer aucune trame et de pouvoir la visualiser en direct sur un PC. Ce récepteur enregistre les niveaux RSSI reçu de chaque TOURELLE. On y a directement accès via la pin6 du module Xbee qui est en fait une PWM dont le rapport cyclique et proportionnel au RSSI.
 
*Pour l'unique BRACELET que l'on cherche à localiser on utilise une Arduino MEGA 2530 qui comporte 3 vraies UART supplémentaires. On aura donc Serial0 (Arduino <--> PC) et Serial1 (Arduino <--> Xbee) afin de ne manquer aucune trame et de pouvoir la visualiser en direct sur un PC. Ce récepteur enregistre les niveaux RSSI reçu de chaque TOURELLE. On y a directement accès via la pin6 du module Xbee qui est en fait une PWM dont le rapport cyclique et proportionnel au RSSI.

Version du 19 novembre 2013 à 10:30

Présentation

cahier des charges

Objectif :

Description :

Choix techniques : matériel requis

Avancement du Projet

Phase 0 : Début du Projet

Séance 1 (11/09/13)

  • Prise en main du sujet
  • Test de la programmation ISP d'un ATMega328p et de son mode de fonctionnement sans quartz pour faire clignoter une LED sur breadboard

Séance 2 (17/09/13)

  • Réflexion autour de différentes solutions techniques de localisation à l'intérieur d'un bâtiment.

Infrarouge
Ultrason
RSSI (Received Signal Strength Indication) : Absolue / Relative

Séance 3 (18/09/13)

  • Confrontation avec le point de vue des encadrants : Après plusieurs discussions, la localisation absolue par RSSI semble la solution la plus "adaptée" au sujet. Il reste néanmoins à faire rapidement la preuve de ce concepte. Il a donc été décidé d'implémenter un premier système à base d'Xbee et d'Arduino en vu de faire des tests préliminaires dans l’amphithéâtre de l'IRCICA.

Phase 1 : Expérimentation Xbee & Arduino

Séance 4 (25/09/13)

  • Regoupement du matériel disponible à l'IRCICA et Polytech : (A VERIFIER)
    2 x Xbee Standard
    8 x Xbee Pro
    4 x Arduino UNO
    1 x Arduino Mega

Séance 5 (26/09/13)

Début de la configuration des Xbees grâce à l'outils X-CTU de la société DIGI.

   Serial	ID	CH	DL	DH	MY
   4049CDF2	3335	C	FFFF	0	CDF2
   4049CC3E	3335	C	FFFF	0	CC3E
   407A6584	3335	C	FFFF	0	6584
   407A6459	3335	C	FFFF	0	6459
   40017249	3335	C	FFFF	0	7249
   40017248	3335	C	FFFF	0	7248
   407BE8C6	3335	C	FFFF	0	E8C6
   407C84D7	3335	C	FFFF	0	84D7

Serial = numéro de série de l'Xbee
ID (Network Identifiant) = Id du réseau (virtuel) dans lequel on veut faire travailler les Xbees
CH (Channel) = Selection du canal d'émission correspondant à la frequénce TX/RX
DL (Destination Low) = Partie basse du registre de configuration de l'adresse de communication (FFFF = Broadcast)
DH (Destination High) = Partie haute du même registre
MY (Device Identifiant) = Identifiant de l'Xbee sur le reseau (Convention : MY=2 derniers octects du Serial)

Séance 6 (30/09/13)

  • Pour la localisation par RSSI, on constate très vite qu'il nous faut au minimum 3 émetteurs dont on connait la position et qui transmettent des trames de façon régulière chacun leur tour sans qu'il y ait de conflits. On appellera ces émetteurs TOURELLE tout au long de ce projet en opposition avec le récepteur à localiser qui sera appelé BRACELET.

  • Pour les TOURELLES on décide d'implémenter dans un Arduino UNO un petit programme capable d’écouter ce qu'il reçoit sur son port série en provenance du module Xbee et d'identifier les éléments d'un trame simpliste de la forme suivante :
   <AA,BB,CC> 
   AA=num de la trame
   BB=nb total de trames
   CC=identifiant de la TOURELLE 

Chaque Arduino connait l'ensemble des identifiants des tourelles et leur priorité et sait ainsi à quel moment il a le droit d’émettre.

  • Pour l'unique BRACELET que l'on cherche à localiser on utilise une Arduino MEGA 2530 qui comporte 3 vraies UART supplémentaires. On aura donc Serial0 (Arduino <--> PC) et Serial1 (Arduino <--> Xbee) afin de ne manquer aucune trame et de pouvoir la visualiser en direct sur un PC. Ce récepteur enregistre les niveaux RSSI reçu de chaque TOURELLE. On y a directement accès via la pin6 du module Xbee qui est en fait une PWM dont le rapport cyclique et proportionnel au RSSI.

Séance 7 (02/10/13)

  • On continu d'implémenter les fonctions précédemment décrites dans les Arduino.
  • On redécouvre les joies du parsing de commande sur un environnement embarqué qui peut parfois poser des problèmes

Séance 8 (04/10/13)

Séance 9 (10/10/13)

Séance 10 (14/10/13)

Séance 11 (15/10/13)

Séance 12 (16/10/13)

Séance 13 (21/10/13)

Séance 14 (23/10/13)

Phase 2 : Développement de Prototypes

Séance 15 (04/11/13)

retour de vacances

Séance 16 (05/11/13)

Séance 17 (06/11/13)

Séance 18 (07/11/13)

Séance 19 (08/11/13)

Séance 20 (12/11/13)

Séance 21 (13/11/13)

Séance 22 (15/11/13)