Site web par SMS : Différence entre versions

De Wiki d'activités IMA
Ligne 52 : Ligne 52 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
* 1er communication "à la main" à l'aide des commandes AT avec le module GSM à l'aide d'un adaptateur TTL/RS232 (Module <--> PC) bricolé à base d'un MAX232.
+
* 1er communication "à la main" à l'aide des commandes AT avec le module GSM grâce à un adaptateur TTL/RS232 (Module <--> PC) bricolé à base d'un MAX232.
 
* 1er Communication avec la carte SIM (B&You) insérée dans le module. Nous arrivons à nous identifier avec le code PIN mais l'identification ne reste que quelques secondes. Nous suspectons un problème d'alimentation car la documentation nous apprend que le module passe automatiquement en recherche de réseau après que l'on ai rentré le Code PIN et consomme ainsi plus de courant qu'au repos.   
 
* 1er Communication avec la carte SIM (B&You) insérée dans le module. Nous arrivons à nous identifier avec le code PIN mais l'identification ne reste que quelques secondes. Nous suspectons un problème d'alimentation car la documentation nous apprend que le module passe automatiquement en recherche de réseau après que l'on ai rentré le Code PIN et consomme ainsi plus de courant qu'au repos.   
  
Ligne 61 : Ligne 61 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
* Mesure de la Consommation du module : 30mA au repoas / 200mA en recherche de réseau
+
* Mesure de la Consommation du module : 30mA au repos / 200mA en recherche de réseau
 
* Test des différentes sources d'alimentation disponibles en salle E306.  
 
* Test des différentes sources d'alimentation disponibles en salle E306.  
 
        
 
        
    Brancher le module directement sur la sortie 5V de l'Arduino n'est pas suffisant.  
+
* Problèmes : Brancher le module directement sur la sortie 5V de l'Arduino n'est pas suffisant. Utiliser un transformateur secteur n'est pas très pratique
    Utiliser un transformateur secteur n'est pas très pratique
 
  
 
* Solution trouvée ! : Utiliser un autre port USB que celui qui permet la programmation de l'Arduino pour alimenter le module. Indentification PIN Stable.
 
* Solution trouvée ! : Utiliser un autre port USB que celui qui permet la programmation de l'Arduino pour alimenter le module. Indentification PIN Stable.
Ligne 75 : Ligne 74 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
 +
* On essai de faire communiquer le module GSM avec un PC à travers un Arduino UNO (pour commencer).
 +
 +
* Problèmes : Utiliser les broches RX/TX de l'Arduino n'est pas viable si l'on veut envoyer une commande et visualiser correctement le resultat. Utiliser d'autres broches et la librairie Software Serial fournie de base avec l'IDE Arduino ne comporte par définition aucun élément Hardware comme par exemple les buffers d'emission/reception, on risque donc de perdre des données.
 +
 +
* Solution trouvée ! : Utiliser un Arduino Mega 2530 qui comporte 3 vraies UART supplémentaires. On aura donc Serial0 (Arduino <--> PC) et Serial1 (Arduino <--> Module GSM).
  
  
Ligne 166 : Ligne 170 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
 +
* Realisation avec Altium du Typon du PCB permetant de relier le module à l'Arduino comme un Sheld standard.
  
  
Ligne 187 : Ligne 192 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
 +
* Recuparation du PCB auprès du service electronique, perçage des trous, mise en place des connecteurs
  
  
Ligne 194 : Ligne 200 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
 
+
* Refonte SD
  
 
=== Séance 22 (10/04/13) ===
 
=== Séance 22 (10/04/13) ===
Ligne 201 : Ligne 207 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
 
+
* Multipart
  
 
=== Séance 23 (11/04/13) ===
 
=== Séance 23 (11/04/13) ===
Ligne 208 : Ligne 214 :
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====
 
+
* Fusion
  
 
=== Séance 24 (29/04/13) ===
 
=== Séance 24 (29/04/13) ===
 
+
* Tests
 
==== Partie Android ====
 
==== Partie Android ====
  
Ligne 218 : Ligne 224 :
  
 
=== Séance 25 (02/05/13) ===
 
=== Séance 25 (02/05/13) ===
 
+
* Video
 
==== Partie Android ====
 
==== Partie Android ====
  
 
==== Partie Arduino ====
 
==== Partie Arduino ====

Version du 1 mai 2013 à 11:54

Sommaire

Présentation

cahier des charges

Objectif :

Réaliser une plateforme permettant un accès à des services web simples uniquement par SMS.

Description :

La consultation de site internet ou la lecture de courriel est devenue monnaie courante sur téléphone. Ces services peuvent être fortement limités lorsque la couverture réseau est faible ou à l'étranger (coût de la connexion). Ce projet propose de réaliser une application Android permettant de lire ses courriels ou accéder à des sites tels que twitter uniquement par le biais de SMS. Il conviendra :

  • de mettre en oeuvre un module GSM compatible Arduino qui recevra et transmettra les SMS de et vers un téléphone mobile,
  • réaliser une application client sous Android.

Analyse du Sujet

Choix techniques : matériel requis

Développement Android

Spécification techniques

Les points suivant représente les problématiques techniques induites par le cahier des charges.

  • L'application doit pouvoir stocker les mails. En effet il est primordial que toutes informations reçues ne soient pas re-demandées à l'arduino.
  • L'application doit limiter le nombre s’envoie de SMS, principalement pour des raisons économique (le coût pour l'utilisateur de l'envoie de SMS) mais également de temps de réponse.
  • L'interface et le design principal doit cacher le fonctionnement par SMS. On visera une qualité professionnelle en terme de design, clarté, expérience utilisateur.

Choix techniques

Pour répondre au cahier des charges ainsi qu'aux spécifications techniques voici les solutions techniques retenues :

  • Langage android

Pour une plus grande flexibilité et une expérience pédagogique intéressante le développement se fera sans framework. Les logiciels utilisés sont Eclipse et les librairies android IDE uniquement. L'interface est décrite en langage XML spécifique à android et le coeur est en Java-Android.

  • Base de données

Toutes les informations relatives aux mails sont dynamique. On utilisera donc une base de données SQLiteDatabase. Cette base de données sera optimisé et complète pour pouvoir traiter un nombre de mail important.

  • Fonctionnement en fond

//TODO solution efficace et bien personnelle

Développement Arduino

Spécification techniques

Choix techniques

Avancement du Projet

Séance 1 (04/02/13)

Partie Android

Partie Arduino

  • Prise en main du sujet
  • Etude de la documentation du module TM2 GSM/GPRS de chez TELTONIKA, modem fourni par le service info pour le projet.
  • Etude de la platine EasyGsm de chez MikroElectronika, support de connection pour le module TM2 et son Antenne

Séance 2 (07/02/13)

Partie Android

Partie Arduino

  • 1er communication "à la main" à l'aide des commandes AT avec le module GSM grâce à un adaptateur TTL/RS232 (Module <--> PC) bricolé à base d'un MAX232.
  • 1er Communication avec la carte SIM (B&You) insérée dans le module. Nous arrivons à nous identifier avec le code PIN mais l'identification ne reste que quelques secondes. Nous suspectons un problème d'alimentation car la documentation nous apprend que le module passe automatiquement en recherche de réseau après que l'on ai rentré le Code PIN et consomme ainsi plus de courant qu'au repos.


Séance 3 (11/02/13)

Partie Android

Partie Arduino

  • Mesure de la Consommation du module : 30mA au repos / 200mA en recherche de réseau
  • Test des différentes sources d'alimentation disponibles en salle E306.
  • Problèmes : Brancher le module directement sur la sortie 5V de l'Arduino n'est pas suffisant. Utiliser un transformateur secteur n'est pas très pratique
  • Solution trouvée ! : Utiliser un autre port USB que celui qui permet la programmation de l'Arduino pour alimenter le module. Indentification PIN Stable.


Séance 4 (14/02/13)

Partie Android

Partie Arduino

  • On essai de faire communiquer le module GSM avec un PC à travers un Arduino UNO (pour commencer).
  • Problèmes : Utiliser les broches RX/TX de l'Arduino n'est pas viable si l'on veut envoyer une commande et visualiser correctement le resultat. Utiliser d'autres broches et la librairie Software Serial fournie de base avec l'IDE Arduino ne comporte par définition aucun élément Hardware comme par exemple les buffers d'emission/reception, on risque donc de perdre des données.
  • Solution trouvée ! : Utiliser un Arduino Mega 2530 qui comporte 3 vraies UART supplémentaires. On aura donc Serial0 (Arduino <--> PC) et Serial1 (Arduino <--> Module GSM).


Séance 5 (25/02/13)

Partie Android

Partie Arduino

Séance 6 (27/02/13)

Partie Android

Partie Arduino

Séance 7 (28/02/13)

Partie Android

Partie Arduino

Séance 8 (04/03/13)

Partie Android

Partie Arduino

Séance 9 (06/03/13)

Partie Android

Partie Arduino

Séance 10 (07/03/13)

Partie Android

Partie Arduino

Séance 11 (11/03/13)

Partie Android

Partie Arduino

Séance 12 (13/03/13)

Partie Android

Partie Arduino

Séance 13 (18/03/13)

Partie Android

Partie Arduino

Séance 14 (20/03/13)

Partie Android

Partie Arduino

Séance 15 (21/03/13)

Partie Android

Partie Arduino

Séance 16 (25/03/13)

Partie Android

Partie Arduino

Séance 17 (27/03/13)

Partie Android

Partie Arduino

  • Realisation avec Altium du Typon du PCB permetant de relier le module à l'Arduino comme un Sheld standard.


Séance 18 (28/03/13)

Partie Android

Partie Arduino

Séance 19 (03/04/13)

Partie Android

Partie Arduino

Séance 20 (04/04/13)

Partie Android

Partie Arduino

  • Recuparation du PCB auprès du service electronique, perçage des trous, mise en place des connecteurs


Séance 21 (08/04/13)

Partie Android

Partie Arduino

  • Refonte SD

Séance 22 (10/04/13)

Partie Android

Partie Arduino

  • Multipart

Séance 23 (11/04/13)

Partie Android

Partie Arduino

  • Fusion

Séance 24 (29/04/13)

  • Tests

Partie Android

Partie Arduino

Séance 25 (02/05/13)

  • Video

Partie Android

Partie Arduino