Monia & Nesrine

Embed Size (px)

Citation preview

  • Mmoire de projet denvergure

    Pour lobtention de

    Diplme National DIngnieur

    Spcialit: Informatique Applique

    Sujet

    Conception et ralisation dun systme de maintenanceet de contrle des vhicules distance

    Soutenu le 21 Juin 2008 par :

    Nesrine HARRATH

    Monia ETTOUIL

    Encadr par Membres de jury

    M. Ridha BOUALLEGUE M. Ridha BOUALLEGUE (Prsident)

    Mme. Rim GUEDRIA

    M. Lotfi HAMROUNI

    Anne Universitaire 2007/2008

    18 Janvier BAB JEDID 4000 Sousse, Tunisiewww.eniso.rnu.tn [email protected] [email protected]

    Tel: +216 73 220 664 +216 73 220 664 665 Fax: +216 73 220 470

  • Projet dEnvergure Tldiagnostic des vhicules

    2

  • Projet dEnvergure Tldiagnostic des vhicules

    3

    Ddicaces

    Dieu merci

    mon cher pre Belgacem et ma mre Aicha,

    Pour leurs soutiens moral et financier durant mes tudes,

    Pour lducation et le grand amour dont ils mont entour depuis ma naissance,

    Et pour leurs patiences et leurs sacrifices,

    mon frre Yahia,

    mes surs Najia, Lamya, Amel, Radhia et Ahlem,

    ma binme Nesrine,

    Ziko pour son soutien moral durant ce projet,

    mes amies Mdalela, Jamila, Massaouda, Majida, Awatef et Amina

    tous ceux qui mont aid,

    tous ceux que jaime, tous ceux qui maiment,

    Je ddie ce modeste travail.

    Monia

  • Projet dEnvergure Tldiagnostic des vhicules

    4

    Ddicaces la mmoire de mon pre Mohamed

    ma chre mre Mariouma

    Pour son soutien moral durant mes tudes,

    Et pour sa patience et ses sacrifices,

    mon cher frre et ami Bad

    Pour son soutien moral et financier tout au long de mes tudes

    mon frre Imed et sa femme Zakia

    tous mes frres Samyra, Sami et Otta

    ma sur Leila et son mari Khaled

    ma binme Monia

    A mes chers Wasoula, Rabouba, Chouchou, Ouba, Douma, Souma et Hama

    mes chers amies Rim, Rawzeta et Nesrine

    Je ddie ce modeste travail

    Nesrine

  • Projet dEnvergure Tldiagnostic des vhicules

    5

    Remerciements

    La rdaction de ce manuscrit de mmoire touche sa fin et clt un

    travail tal sur deux annes.

    Au terme de ce rapport de projet de fin dtude nous tenons

    exprimer notre profonde reconnaissance tous ceux qui, de prs ou de

    loin, nous ont aids llaboration de ce prsent travail et ont prsent

    leur soutien moral.

    Nous tenons ici remercier particulirement M.Bouallegue Ridha pour

    son encadrement et son aide tout au long de ce mmoire pour ses

    claircissements scientifiques pertinents, pour ses remarques

    constructives et les recadrages indispensables tout au long de lavance

    de ce projet.

    Nous tenons galement souligner sa gentillesse et sa disponibilit

    malgr ses nombreuses fonctions administratives.

    Nous tenons de plus remercier Mme.Rim Guedria davoir aimablement

    accept la charge de rapporteur, ainsi que M.Lotfi Hamrouni pour avoir

    particip notre jury de mmoire.

    Nous remercions galement toutes les personnes que nous avons

    ctoyes ces deux annes, tout le personnel de lENISo ainsi que les

    enseignants.

  • Projet dEnvergure Tldiagnostic des vhicules

    6

    Rsum

    Les garagistes ont troqu leurs cls molette contre des ordinateurs croire que coup de lapanne est devenu une stratgie de l'ingnieur informatique. Avec la multiplication des

    fonctions de scurit et de confort, et les micro-ordinateurs embarqus qu'elles impliquent,

    impossible dsormais de comprendre ce qui se passe sous le capot. A moins de se munir de

    l'outil de diagnostic informatique adquat. Dans ce projet, nous montrerons que les systmes

    mcatroniques complexes, prsentent certaines caractristiques utiles pour l'observation et la

    commande. La possibilit de reprsenter le systme sous forme de sous systmes

    interconnects continus, discrets ou hybrides permet d'exploiter les proprits physiques et

    d'amliorer l'observabilit et la contrlabilit.

    Ces informations seront utiles pour le diagnostic. La tche de diagnostic consiste dtecterles anomalies intervenant sur un systme puis expliquer ces erreurs en indiquant les

    composants pouvant tre fautifs. Elle doit tre faite distance via le rseau GPRS permettant

    ainsi un mcanicien distant de superviser le vhicule, dintervenir pour rparer les

    anomalies si cest possible ou bien envoyer des messages dalertes au conducteur pour

    intervenir immdiatement lui-mme ou passer vers le mcanicien le plus proche. Notre

    travail consiste donc raliser les trois tches suivantes :

    1) Programmer le module GM862 pour pouvoir envoyer et recevoir des donnes entre le

    tlmcanicien et le vhicule.

    2) Programmer les modes de communication entre le kit de test et le vhicule dune part et

    le kit et le rseau de communication GPRS dune autre part.

    3) Crer un site web qui contient une reprsentation de notre projet sous forme de pages

    web facilitant ainsi tout abonn la navigation sur le site, linscription et la dcouverte de

    nos services offerts dans le domaine de diagnostic.

    Mots ClefEtat du vhicule, supervision, aide la conduite, dtection de dfauts, envoie SMS, message

    dalerte, gestion et enregistrement sur une base de donnes, communication avec le module

    GM862, application web, accs site.

  • Projet dEnvergure Tldiagnostic des vhicules

    7

    Abstract

    Mechanics have exchange their open-end wrenches adjustable counters computers, tobelieve that blow of the breakdown became a strategy of the data-processing engineer.

    With the multiplication of the functions of safety and comfort and the microcomputers

    embedded that they imply impossible from now on to include/understand what occurs

    under the cap. Unless providing itself with the tool for adequate data-processing diagnosis.

    In this project we will show that the complex mechanic systems show certain useful

    characteristics for the observation and the order. The possibility of representing the

    system in the form of under systems inter-connect continuous discrete or hybrid allows to

    exploit the physical properties and to improve observation and the control.

    These information will be useful for the diagnosis. The diagnostic task consists indetecting system's anomalies then in attempting to explain those errors by indicating the

    components that can be faulty. It must be done at distance via network GPRS permitting so

    to a distant mechanic to supervise the vehicle, to repair anomalies so this is possible or else

    to send alarms to the conductor to repair it himself or to go to the mechanic the most near.

    During this project, we have to make sure that the process of diagnostic is progressing

    successfully. We have so three essential tasks to do:

    1) To program the module GM862 for sending and receiving data.

    2) To program different windows.

    3) To create our site which contains a representation of our project containing pages

    facilitating so looking inside the site, making the registration and discovering our services.

    Keywords

    State of the vehicle, supervision, help to the leadership, default detection, sending SMS,

    message of alert, management and registration data bases , communication with the kit

    GM862, web application, web site.

  • Projet dEnvergure Tldiagnostic des vhicules

    8

    Sommaire

    Introduction gnrale ................................................................................................................................14

    Partie1 :Prsentation gnrale du projet ...............................................................................................16

    I. Objectifs du projet ..................................................................................................................................................17

    II. Organisation, structures et mode de fonctionnement ............................................................................21

    III. Les principes du projet ....................................................................................................................................22

    IV. Contexte du projet et dfinition globale des besoins..........................................................................22

    1. Contexte du projet............................................................................................................................................. 22

    2. Dfinition gnrale des besoins...................................................................................................................23

    3. Planification des tches...................................................................................................................................25

    Partie 2 : Conception de lapplication ..................................................................................................27

    I. Introduction ..............................................................................................................................................................28

    II. Conception de la base de donnes ...................................................................................................................28

    1. Le modle conceptuel de donnes (MCD) ............................................................................................... 28

    1.1 Introduction ........................................................................................................................................................... 28

    1.2 Dmarche dlaboration du schma conceptuel de donnes.............................................................29

    1.3 Le MCD Conu........................................................................................................................................................ 30

    2. Le modle physique de donnes (MPD)...................................................................................................33

    2.1 Introduction ........................................................................................................................................................... 33

    2.2 Le MPD conu ........................................................................................................................................................ 33

    III. Conception UML .................................................................................................................................................35

    1. Dfinition............................................................................................................................................................... 35

    2. Diagrammes utiliss ......................................................................................................................................... 35

    2.1 Diagramme de cas dutilisation ...............................................................................................................36

    2.1.1 lments des diagrammes de cas dutilisation ............................................................................36

    2.1.2 Ralisation du diagramme.........................................................................................................................38

    2.2 Le diagramme de squence ......................................................................................................................40

    2.2.1 Reprsentation des messages ........................................................................................................40

    2.2.2 Ralisation du diagramme.................................................................................................................... 41

    2.3 Diagramme de classes .................................................................................................................................44

    2.3.1 Les lments de diagramme de classe.............................................................................................45

    2.3.2 Ralisation de diagramme de classe ................................................................................................46

    IV. Conclusion ............................................................................................................................................................51

    Partie 3 : Ralisation de lapplication ..................................................................................................52

  • Projet dEnvergure Tldiagnostic des vhicules

    9

    Chapitre1 : Communication RS232 .....................................................................................................53

    I. Gnralits sur la communication srie........................................................................................................53

    1. La communication............................................................................................................................................. 53

    2. Protocoles de communication ......................................................................................................................53

    3. Communication avec le circuit.....................................................................................................................54

    II. Module GM862+Kit dvaluation RS232.......................................................................................................54

    1. Description du module GM862 .................................................................................................................... 54

    1.1 Description technique .................................................................................................................................54

    1.2 Description logicielle .................................................................................................................................. 56

    2. Kit dvaluation RS232 ....................................................................................................................................57

    2.1 Description de la carte ................................................................................................................................57

    2.2 Composition de la carte .............................................................................................................................58

    3. Introduction Python...................................................................................................................................... 59

    3.1 Prsentation du langage .............................................................................................................................59

    3.2 Caractristiques du langage .....................................................................................................................59

    III. Les interfaces de communication ...............................................................................................................63

    1. Interface pour les commandes AT ..............................................................................................................64

    2. Interface pour la communication srie ...................................................................................................67

    2.1. Gnralits sur le logiciel Delphi ............................................................................................................67

    2.2. Interface de communication .................................................................................................................... 69

    Chapitre 2 : Dveloppement du site web ............................................................................................71

    I. J2EE ..............................................................................................................................................................................71

    1. Introduction .........................................................................................................................................................71

    2. L'environnement d'excution des applications J2EE..........................................................................72

    II. Base de donnes......................................................................................................................................................75

    1. Introduction.........................................................................................................................................................75

    2. EasyPHP.................................................................................................................................................................76

    III. Hibernate ..............................................................................................................................................................76

    1. Introduction .........................................................................................................................................................76

    2. Architecture .........................................................................................................................................................77

    3. Utilisation dans lapplication ........................................................................................................................ 79

    3.3.2 Driver basepfe ....................................................................................................................................79

    6.2 Lajout dHibernate ....................................................................................................................................81

    IV. Struts.......................................................................................................................................................................84

    1. Introduction .........................................................................................................................................................84

    2. Utilisation dans lapplication ........................................................................................................................ 85

    V. JSP .................................................................................................................................................................................87

    1. Introduction.........................................................................................................................................................87

    2. Le choix entre JSP et Servlets........................................................................................................................ 87

  • Projet dEnvergure Tldiagnostic des vhicules

    10

    3. JSP et Struts ..........................................................................................................................................................88

    VI. Le site...................................................................................................................................................................... 88

    Conclusion gnrale ..................................................................................................................................97

    Bibliographie ...........................................................................................................................................99

  • Projet dEnvergure Tldiagnostic des vhicules

    11

    Liste des figures

    Figure 1: La tlmatique ...............................................................................................................17

    Figure 2: Concepts du projet : Supervision et Diagnostic des vhicules distance .....................18

    Figure 3: Etapes de diagnostic ......................................................................................................20

    Figure 4: Exemple de diagnostic local ..........................................................................................21

    Figure 5: Architecture du systme de tldiagnostic ...................................................................24

    Figure 6: Cycle de dveloppement en V simplifi ........................................................................25

    Figure 7: Planification des tches du PFE sous forme du diagramme de GANT .........................26

    Figure 8: Palette utilise pour concevoir le MCD .........................................................................30

    Figure 9: Schma conceptuel de la base de donnes .....................................................................32

    Figure 10: tapes de gnration du modle physique de donnes ................................................33

    Figure 11: Le MPD conu .............................................................................................................34

    Figure 12: Palette utilise pour concevoir le diagramme de cas d'utilisation ...............................39

    Figure 13: Diagramme de Cas dutilisation de l'application web .................................................39

    Figure 14: Diagramme des cas de la communication srie ...........................................................40

    Figure 15: Message de squence ...................................................................................................41

    Figure 16: Cration dun diagramme de squences ......................................................................41

    Figure 17: Palette utilise pour concevoir le diagramme de squences ........................................42

    Figure 18: Diagramme de squence du tldiagnostic ..................................................................43

    Figure 19: Diagramme de squence pour la communication PC et Module GM862 ...................44

    Figure 20: Structure d'une classe...................................................................................................45

    Figure 21: Palette utilise pour concevoir le diagramme de classes .............................................47

    Figure 22: Diagramme de Classe du tldiagnostic ......................................................................51

    Figure 23: Schma dun port srie ................................................................................................53

    Figure 24: Le module GM862 GSM/GPRS ..................................................................................55

    Figure 25: Structure du systme embarqu ...................................................................................56

    Figure 26: Fonctionnement du module GM862 ............................................................................57

    Figure 27: Le kit d'valuation RS232 et les diffrents quipements............................................58

    Figure 28: Installation du Python ..................................................................................................61

    Figure 29: Fentre principale de Python .......................................................................................62

    Figure 30: Fentre Hyperterminal .................................................................................................62

    Figure 31: Insertion des paramtres de la communication srie ...................................................63

    Figure 32: Vue globale de l'interface ............................................................................................64

    Figure 33: Interface des commandes AT ......................................................................................65

  • Projet dEnvergure Tldiagnostic des vhicules

    12

    Figure 34: Configuration du module GM862 ...............................................................................66

    Figure 35: Interface pour la gestion des appels .............................................................................67

    Figure 35: Fentre principale Delphi ............................................................................................68

    Figure 36: Fentre principale pour envoie des donnes ................................................................69

    Figure 37: Fentre principale la rception ..................................................................................70

    Figure 38: Architecture d'une application J2EE............................................................................72

    Figure 40: Configuration du projet sur Tomcat ............................................................................74

    Figure 41: page daccueil de Tomcat ............................................................................................74

    Figure 42: Administration dEasyPHP..........................................................................................75

    Figure 43: Base de donnes "bd_pfe" ...........................................................................................76

    Figure 44: Architecture simple dHibernate..................................................................................77

    Figure 45: architecture complte dHibernate ...............................................................................77

    Figure 46: Cration du driver "basepfe".......................................................................................80

    Figure 47: tapes de connexion ....................................................................................................80

    Figure 52: Architecture de struts ...................................................................................................85

    Figure 53: Ajout de Struts .............................................................................................................86

    Figure 54: Exemple du Struts-config.xml ...............................................................................86

    Figure 55: Accueil.jsp ...................................................................................................................89

    Figure 56: Prsentation de l'activit de la socit .........................................................................90

    Figure 57: Page Notre quipe ........................................................................................................90

    Figure 61: Formulaire pour envoie SMS.......................................................................................93

    Figure 62: Authentification de l'administrateur ............................................................................94

    Figure 63: Formulaire d'authentification du Tlsuperviseur .......................................................95

    Figure 64: Formulaire derreur dauthentification du Tlsuperviseur .........................................95

    Figure 65: Page Tlsuperviseur ...................................................................................................96

  • Projet dEnvergure Tldiagnostic des vhicules

    13

    Liste des tableaux

    Tableau 1 : Description de la classe Client .............................................................................47

    Tableau 2 : Description de la classe Tl-superviseur ............................................................48

    Tableau 3 : Description de la classe Technicien .....................................................................48

    Tableau 4 : Description de la classe vhicule................................................................................49

    Tableau 5 : Description de la classe tat .......................................................................................49

  • Projet dEnvergure Tldiagnostic des vhicules

    14

    Introduction gnrale

    a complexit des systmes embarqus bord des vhicules automobiles, ne cesse de

    crotre, ainsi que le nombre de leurs interactions. Dans le pass, lautomobile tait

    essentiellement compose de systmes lectriques et mcaniques jusqu' ce que le vhicule

    devienne un outil indispensable pour la mobilit de lhomme. Lexigence de performance et les

    contraintes de scurit, conjugus avec les nouvelles technologies, ont impos un niveau

    dautomatisation plus performant, plus rigoureux et plus fiable.

    Dans ce cadre, le diagnostic est un processus intressant de plus en plus les industriels qui

    essaient la mise en uvre de compromis entre le niveau de qualit intrinsque associ aux outils

    de diagnostics, et les efforts de dveloppement consacrs aux systmes proprement dits.

    En effet, un processus de diagnostic peut permettre d'aider le rparateur en lui indiquant le

    symptme et en lui fournissant une liste de composants pouvant expliquer le symptme. Ainsi,

    cela rsulte en un gain de temps qui se rpercute par une diminution du cot de la rparation.

    Le processus de diagnostic de sous-systmes automobiles devient de plus en plus difficile

    assurer, et son informatisation renvoie un dfi technique encore suprieur, que ce soit sur un

    mode embarqu ou dans le cadre dun atelier intgr. Cela dplace la difficult au niveau de la

    production de logiciels de diagnostic, et pourrait apparatre comme un problme classique de

    qualit logicielle. Nanmoins, il apparat que lintroduction des applications logicielles de

    diagnostic sophistiques embarques bord de vhicules automobile, peut tre considre

    comme une premire tape, mais ne saurait simposer en tant que solution fondamentale aux

    problmes de diagnostic rencontrs sur les systmes actuels. Relever ce dfi technologique, et

    identifier des solutions requirent une approche radicalement nouvelle base sur la

    comprhension de la difficult de ce processus.

    Les logiciels de diagnostic automobile ont pour mission de dtecter, prdire, localiser, et

    identifier les dysfonctionnements sur les diffrents sous-systmes et permettre leur rparation et

    leur remise en tat.

    Cette affirmation vidente fournit les cls pour dterminer la nature des dfis relever :

    L

  • Projet dEnvergure Tldiagnostic des vhicules

    15

    o Les sous-systmes automobiles se dveloppent travers un niveau de complexit toujours

    croissant, parce que leurs composants sont de plus en plus sophistiqus.

    o Les sous systmes interagissent la fois travers leurs interactions physiques, mais aussi

    travers lchange dinformations.

    o Gnrer des logiciels de diagnostic susceptibles danticiper ces vnements devient de

    plus en plus urgent, du fait des exigences croissantes sur le niveau de scurit des

    vhicules, ainsi que leur impact sur lenvironnement,

    o Les diffrents types de sous-systmes et de composants conduisent de multiples

    dclinaisons, lies aux diffrents fournisseurs, conues pour diffrentes technologies,

    renvoyant de nombreuses fonctionnalits, typologies de vhicules, versions, etc.., ce qui

    ncessite de rendre compte de toutes ces variantes et dclinaisons dans le logiciel, et le

    processus de dveloppement du logiciel.

    Finalement, nous sommes confronts une tche complexe, dont les cots ne cessent de

    crotre, du fait de ses aspects rptitifs. Puisque nous parlons de logiciels de diagnostic, le

    recours des techniques dingnierie logicielle doit tre dun grand recours. Il faut suivre une

    approche qui permet lexploitation et le traitement effectif de la connaissance et de linformation

    concernant les technologies elles mmes, les sous-systmes physiques du vhicule, leurs

    composants, ainsi que leurs structures.

    Dans ce rapport, nous nallons pas seulement insister sur les ides cls et les fondements

    scientifiques de notre application de diagnostic distance, mais nous montrerons galement les

    diffrentes technologies utilises pour sa ralisation dans les paragraphes suivants, en prsentant

    les outils informatiques et lectroniques utiliss. Finalement, nous montrons, une description

    dtaille de droulement de processus de diagnostic ainsi que les diffrents messages affichs du

    ct client ainsi que de ct tlmcanicien.

  • Projet dEnvergure Tldiagnostic des vhicules

    16

    Partie1 :Prsentation gnrale du

    projet

  • Projet dEnvergure Tldiagnostic des vhicules

    17

    Partie 1 : Prsentation gnrale du projet

    I. Objectifs du projet

    L'avnement des technologies permettant de communiquer en temps rel avec des objets se

    dplaant librement a rendu possible - et donc souhaitable le dveloppement de systmes

    d'information grant des donnes "mobiles''. Cette communication est double sens. Le

    dveloppement des outils de communication sans fil, notamment reprsent par l'explosion du

    march des tlphones portables multiplie les changes d'informations entre units mobiles et

    permet la transmission au systme central d'informations prcises sur la position, la direction, la

    vitesse ainsi que ltat des objets mobiles.

    Figure 1: La tlmatique

    En tenant compte de ces diffrentes observations, le projet consistera dvelopper une

    infrastructure de diagnostic embarque, qui permettra de suivre le comportement du vhicule, et

    une infrastructure dbarque, qui permettra d'amliorer en affinant le diagnostic gnr par les

    outils embarqus. Ainsi, notre projet se propose trois objectifs majeurs :

    Dfinir l'architecture d'un environnement permettant le dploiement et l'excution

    d'outils de diagnostic volutifs au sein du vhicule. Les langages orients objet JAVA

    et Delphi ont t slectionns pour le dveloppement de l'environnement ainsi que le

    langage Python pour la programmation des commandes AT.

    Elaborer des mthodes formelles de diagnostic exploitants les observations effectuesen temps rel par la partie embarque.

  • Projet dEnvergure Tldiagnostic des vhicules

    18

    Enregistrer les diffrentes donnes sur un site web afin de permettre la fois

    linscription, la navigation aux diffrents clients y compris tlsuperviseurs,

    conducteurs et techniciens et lexcution de la tche de diagnostic par ladministrateur

    et ses partenaires.

    Les diffrents objectifs de notre projet ainsi que les aspects lis au diagnostic distant peuvent tre

    rsums dans le schma suivant (Figure 2) :

    Figure 2: Concepts du projet : Supervision et Diagnostic des vhicules distance

    Le tldiagnostic :

    Le tldiagnostic par internet permet, en cas de difficult ou de panne rencontres par le

    conducteur, daccder au vhicule et de procder directement au diagnostic voire deffectuer

    immdiatement les mesures correctives permettant la remise en route du matriel distance.

    Ceci bien sr ne pouvant seffectuer quavec accord pralable du client. Le tldiagnostic par

    internet permet au tlsuperviseur davoir la visualisation instantane de ltat du vhicule et de

    lensemble de donnes transmises.

  • Projet dEnvergure Tldiagnostic des vhicules

    19

    Notre projet permet au tlsuperviseur, deffectuer un diagnostic immdiat et de remdier

    instantanment au problme. Pour arriver enfin dterminer lanomalie et la rparer au niveau

    du vhicule, le processus de diagnostic passe par les tapes suivantes :

    1 Accueillir le client

    Recueillir les informations du client et complter le contrat de rparation par

    inscription du client dans notre site. Ca lui permet de choisir son tlsuperviseur.

    Collecter et analyser les donnes ncessaires lintervention.

    Apporter un conseil technique au client.

    2 Contrler et Diagnostiquer

    Vrifier les symptmes dcrits par la carte. mettre des hypothses sur le dysfonctionnement en prenant en compte les contraintes

    lies aux conditions de fonctionnement.

    Mettre en scurit le vhicule et/ou ses systmes. Slectionner les contrles, les mesures, les essais raliser.

    Mesurer, contrler les caractristiques mcaniques, hydrauliques, pneumatiques et

    lectriques.

    Mettre enuvre un matriel daide au diagnostic.

    Interprter les rsultats et identifier llment dfectueux.

    Apprcier si lorigine du dysfonctionnement a pu entraner des consquences sur

    dautres composants.

    Dduire lintervention raliser.

    3 Assurer la maintenance

    Appliquer la procdure de maintenance prconise. Dposer, reposer les organes, les lments du systme concern.

    Dmonter, remonter les organes, les lments du systme concern.

    Remettre en conformit les organes, les lments conformment aux procduresconstructeur.

    Contrler les performances du vhicule.

    Mettre en conformit le vhicule avec les normes et prconisations du constructeur.

    Se tenir inform des volutions techniques. Appliquer lautocontrle son activit.

  • Projet dEnvergure Tldiagnostic des vhicules

    20

    4 Restituer le vhicule

    Rendre compte de lintervention ralise.

    Fournir les lments ncessaires la facturation. Informer le client dventuelles interventions prvoir.

    La figure ci-dessous rsume bien les tapes du diagnostic:

    Figure 3: Etapes de diagnostic

    Les fichiers du client peuvent tre tlchargs pour permettre une analyse rapide. Pour plus de

    confidentialit, le tlsuperviseur peut galement partager les applications de son propre poste de

    travail avec le conducteur client afin de lui expliquer des manipulations particulires par envoie

    dun SMS. Le tldiagnostic par internet facilite lanalyse prcise et lidentification des

    composants dfectueux sans dplacement sur scne. Lintervention du technicien est alors

    programme en fonction de la livraison de la pice incrimine. Le dpannage est effectif ds la

    premire intervention.

  • Projet dEnvergure Tldiagnostic des vhicules

    21

    La figure ci-dessous illustre un exemple concrt de droulement de processus de diagnostic mais

    localement par utilisation dun PC.

    Figure 4: Exemple de diagnostic local

    II.Organisation, structures et mode de fonctionnement

    La premire runion tenue lanne prcdente avec notre encadreur monsieur Ridha lcole.

    Nous avons ainsi exprim les premires pistes de recherches explorer car le sujet tait novateur

    dans le domaine des automobiles et des communications radio. Au cours des runions suivantes,

    nous avons ainsi montr que ce domaine de recherche se formalisait puisque les pistes de

    recherche se sont affines, que les travaux respectifs dbouchent tous sur une application relle

    (transport, contrle de ltat du vhicule, diagnostic distance, ) et que lintrt de cette

    thmatique se renforce.

    Suite ces rencontres, nous avons discern deux orientations de recherche :

    Modlisation de la mobilit, structuration et interrogation de donnes TR (temps rel),

    Architecture de Systmes dInformation TR et mobile (embarqu) et communication des

    donnes TR.

    Les applications vises sont :

    La collection des donnes issues des diffrents calculateurs vers le circuit embarqu,

    Envoie des donnes en temps rel vers un serveur distant,

    Ralisation de la tche de diagnostic distante par le tlsuperviseur concern.

    Durant ce semestre, nous avons abord une nouvelle solution : Remplacer le vhicule par une

    interface dveloppe par loutil Delphi, qui dfinit des champs pour saisir les tats des diffrents

    composants du vhicule et les envoyer par une liaison RS232 vers le module GM862. Dans ce

    cas nous naurons pas besoin de comprendre ni le fonctionnement des bus CAN ni le nom de

    protocole de communication.

  • Projet dEnvergure Tldiagnostic des vhicules

    22

    III. Les principes du projet

    Le projet vise dvelopper un systme dinformation intgr ddi la supervision et au

    diagnostic des vhicules. Lampleur du projet et la diversit des aspects dont il traite, imposent

    une mthodologie de travail rsume par quelques principes suivre tout au long des tapes de

    dveloppement du projet :

    Convivialit: le systme, dont nous avons conu une partie, est destin des utilisateursde diverses disciplines utilisant les automobiles dont une partie nest forcment

    familiarise avec les outils informatiques et lectroniques intgrs lintrieur du

    vhicule. Il faut donc leur offrir un systme autonome qui se charge de tout pour

    transmettre linformation sur le vhicule vers le tlsuperviseur qui se charge, grce

    des interfaces conviviales et simple utiliser, de superviser ltat du vhicule, en plus

    linformation pertinente doit tre facilement accessible. Ainsi un travail dinterface

    Homme-Machine est particulirement prsent lors du dveloppement du systme.

    Portabilit: Afin de permettre un large nombre de bnficiaires daccder au systme

    intgr, ce dernier doit pouvoir tre support par les diffrentes plates formes utilises.

    Ainsi le dveloppement se base essentiellement sur des outils portables notamment le

    langage JAVA, Delphi et loutil Easy PHP afin que le systme puisse tre utilis sur des

    plates formes htrognes.

    Modularit: La conception du systme repose sur le modle Orient Objet, lutilisation dulangage de programmation Oriente Objet JAVA et de loutil pour la cration de bases

    de donnes Easy PHP permet de tirer profit des points forts de lOrient Objet :

    rutilisation, polymorphisme.

    Robustesse : Le systme intgre des logiciels de calcul puissant capables de traiter des

    quantits normes de donnes, ces logiciels doivent pouvoir assurer des rsultats

    efficaces et fiables.

    IV. Contexte du projet et dfinition globale des besoins

    1. Contexte du projet

    Le projet vise dvelopper un systme dinformation intgr, comprenant plusieurs

    interfaces de communication et daffichage dinformations afin de prsenter un

    support daide la dcision assez complet au tlsuperviseur.

    Ainsi, notre rle essentiel, dans ce projet, est de concevoir et de raliser avec les

    applicatifs une plate forme capable dintgrer tous les outils de travail ncessaires la

  • Projet dEnvergure Tldiagnostic des vhicules

    23

    supervision et au diagnostic afin de disposer dun environnement de travail organis et

    complet. Notre projet denvergure sinscrit dans ce cadre.

    2. Dfinition gnrale des besoins

    Lindustrie automobile a connu une volution qui consiste en lintroduction massivede llectronique sous la forme des calculateurs embarqus assurant en gnral des

    fonctions de contrle, de commande et de rgulation. A cause de cette volution les

    actions de rparation et de prvention deviennent de plus en plus complexes et font

    appel des connaissances de plus en plus varies et labores. Des outils et des

    logiciels sont dvelopps afin daider les garagistes dans lanalyse de panne et de la

    rparation de ces composants lectroniques et surtout lorsque ceci se fait distance et

    par internet. Comme a le conducteur ne sera plus risqu de se trouver dans une

    situation grave en quelques kilomtres loin du garagiste le plus proche, il ne doit pas

    craindre tout vnement urgent qui peut arriver tout instant qui peut menacer son

    vhicule. Notre systme est l pour superviser ltat du vhicule et informer le

    tlsuperviseur de tout vnement brusque pour intervenir. Notre systme a donc pour

    rle dintgrer plusieurs sous systmes la fois htrognes et complmentaires afin

    de prsenter un espace de travail puissant et complet au tlsuperviseur.

    Les principales fonctionnalits de ce systme sont les suivantes :

    Acquisition des donnes htrognes (donnes sur ltat du moteur, delallumage, vitesse, bougies, temprature..) transmis du PC vers la carte

    GM862.

    Transfert des donnes via le rseau GSM vers un ordinateur distant (celui dutlsuperviseur).

    Rception et organisation de ces donnes dans un site web cre par les logiciels dedveloppement et de gestion de bases de donnes JAVA et Easy PHP.

    Envoie dun message dalerte vers le conducteur dans le cas dune panne.

  • Projet dEnvergure Tldiagnostic des vhicules

    24

    Larchitecture des diffrents sous systmes de notre application peut tre illustre par la figure

    suivante :

    Figure 5: Architecture du systme de tldiagnostic

    A partir de ce schma, nous pouvons dire que notre systme permet de coordonner, dune part,

    les diffrents composants logiciels propres lapplication entre eux, et dautre part, ces

    logiciels et les autres systmes dinformations externes ou gnriques (SGBD, le modem, le

    rseau GPRS).

    Pour rpondre ces besoins, deux principaux objectifs ont t fix :

    Le dveloppement dune application stand alone grant ces diffrents composantslogiciels et offrant un espace de travail complet aux utilisateurs.

    Le dveloppement dun ensemble dinterfaces offrant des fonctionnalits quivalentes enmode client serveur et permettant ainsi un large nombre de mcaniciens de tirer profit

    de la puissance des outils de travail disponibles.

    La plate forme ralise a t le dveloppement dun prototype dapplication Stand Alone

    intgrant des simulateurs numriques et des composants logiciels relatifs au traitement et au

    stockage des donnes ainsi qu la visualisation graphique. Ces deux besoins qui font lobjet de

    notre PFE seront plus dtaills dans la partie suivante.

  • Projet dEnvergure Tldiagnostic des vhicules

    25

    3. Planification des tches

    Afin de mieux grer le droulement de notre PFE, nous nous sommes bases sur un cycle de

    dveloppement en V (figure 5) ; en effet, outre la simplicit de cette approche, elle prsente

    plusieurs avantages :

    Meilleure dfinition des besoins.

    Validation intgre et planifie du cycle de dveloppement.

    Prsence de points de contrle tout au long du cycle.

    Importance des tests.

    Figure 6: Cycle de dveloppement en V simplifi

    Dans les diffrentes tches indpendantes du projet, nous avons essay autant que peut de

    respecter cette approche.

  • Projet dEnvergure Tldiagnostic des vhicules

    26

    Le schma (Figure 7) suivant explique globalement la rpartition des diffrentes tches et leur

    planification sur la dure de ralisation du projet : Nous avons commenc ds lanne prcdente

    par une tude gnrale du projet : tude bibliographique et tude de lexistant. Au dbut de cette

    anne nous avons commenc la conception et le dveloppement de la solution.

    Figure 7: Planification des tches du PFE sous forme du diagramme de GANT

  • Projet dEnvergure Tldiagnostic des vhicules

    27

    Partie 2 : Conception de lapplication

  • Projet dEnvergure Tldiagnostic des vhicules

    28

    Partie 2: Conception de lapplication

    I. Introduction

    Dans ce chapitre, nous allons faire la conception de notre application. Le premier chapitre sera

    consacr la conception de la base de donnes, le deuxime sera une conception UML (Le

    Langage de Modlisation Unifi) vu quil est adapt toutes les phases de dveloppement et

    compatible avec tout les techniques de ralisation et dfini plusieurs type de digrammes dont

    trois sont les plus utilis et finalement le troisime chapitre prsente la ralisation de

    lapplication.

    II.Conception de la base de donnes

    1. Le modle conceptuel de donnes (MCD)

    1.1 Introduction

    Avant de construire la base de donnes et de saisir et enregistrer les donnes, il convient de

    concevoir le modle conceptuel de donnes. Un modle conceptuel de donnes (MCD) est un

    schma qui a pour but d'crire de faon formelle les donnes qui seront utilises par le systme

    d'information. Il s'agit donc d'une reprsentation des donnes, facilement comprhensible,

    permettant de dcrire le systme d'information l'aide d'entits.

    Une entit est la reprsentation d'un lment matriel ou immatriel ayant un rle dans le

    systme que l'on dsire dcrire. On appelle classe d'entit un ensemble compos d'entits de

    mme type, c'est--dire dont la dfinition est la mme. Le classement des entits au sein d'une

    classe s'appelle classification (ou abstraction). Une entit est une instanciation de la classe.

    Chaque entit est compose de proprits, donnes lmentaires permettant de la dcrire.

    Prenons par exemple un ordinateur de la marque DELL, un autre de la marque Siemens et un

    troisime IBM. Il s'agit de 3 entits faisant partie d'une classe d'entit que l'on pourrait appeler

    Ordinateur. Lordinateur DELL est donc une instanciation de la classe Ordinateur. Chaque entit

    peut possder les proprits vitesse de microprocesseur, taille du disque dure et mmoire RAM

    propres lui. Les classes d'entits sont reprsentes par un rectangle.

    Ce rectangle est spar en deux champs :

  • Projet dEnvergure Tldiagnostic des vhicules

    29

    le champ du haut contient le libell. Ce libell est gnralement une abrviation pour

    une raison de simplification de l'criture. Il s'agit par contre de vrifier qu' chaque

    classe d'entit correspond un et un seul libell, et rciproquement.

    le champ du bas contient la liste des proprits de la classe d'entit

    Une relation (appele aussi association) reprsente les liens smantiques qui peuvent exister

    entre plusieurs entits. Une classe de relation contient donc toutes les relations de mme type

    (qui relient donc des entits appartenant des mmes classes d'entit). Une classe de relation

    peut lier plus de deux classes d'entit. Les classes de relations sont reprsentes par des

    hexagones (ou des ellipses) dont l'intitul dcrit le type de relation qui relie les classes d'entit

    (gnralement un verbe). Les cardinalits permettent de caractriser le lien qui existe entre une

    entit et la relation laquelle elle est relie. La cardinalit d'une relation est compose d'un

    couple comportant une borne maximale et une borne minimale, intervalle dans lequel la

    cardinalit d'une entit peut prendre sa valeur :

    La borne minimale (gnralement 0 ou 1) dcrit le nombre minimum de fois qu'une entit

    peut participer une relation.

    La borne maximale (gnralement 1 ou n) dcrit le nombre maximum de fois qu'uneentit peut participer une relation.

    Un identifiant (ou encore cl de lentit) est un ensemble de proprits (une ou plusieurs)

    permettant de dsigner une et une seule entit. La dfinition originale est la suivante :

    L'identifiant est une proprit particulire d'un objet telle qu'il n'existe pas deux occurrences de

    cet objet pour lesquelles cette proprit pourrait prendre une mme valeur. Ainsi, chaque classe

    d'entit doit possder au moins un attribut identifiant, et l'ensemble de ses attributs identifiants

    doivent tre renseigns la cration de l'entit.

    1.2 Dmarche dlaboration du schma conceptuel de donnes

    Pour laborer un schma conceptuel, il faut suivre les tapes suivantes :

    Identifier les entits

    Regrouper autour dune mme entit tous ces caractristiques (attribut) : dterminerles dpendances fonctionnelles.

    Choisir la cl de type entit.

    Identifier les relations entre les entits

  • Projet dEnvergure Tldiagnostic des vhicules

    30

    Des vnements du mode rel font parfois intervenir plusieurs entits ce qui peutmatrialiser les relations correspondantes. Plusieurs associations peuvent tre existes

    entre deux entits : un vnement peut affecter une entit ou une relation

    Prciser les cardinalits

    Slectionner les lments pertinents

    Il nest pas ncessaire que tout les entits et les relations peroivent une image dans lesystme : il ne faut pas retenir que les attributs qui prsentent un intrt.

    Dessiner le modle conceptuel de donnes :

    Placer les entits qui sont en relation proximit les une des autres.

    Indiquer les cardinalits.

    Souligner lidentifiant.

    1.3 Le MCD Conu

    La base de donnes que nous allons construire couvre toutes les ressources quutilise le tl-

    superviseur pour atteindre ltat du vhicule. Pour ce la nous avons utilis la palette suivante :

    Figure 8: Palette utilise pour concevoir le MCD

    Entit

    Association

    Lien dassociation

    Hritage

  • Projet dEnvergure Tldiagnostic des vhicules

    31

    Pour raliser les classes suivantes :

    client

    Cette classe contient toutes les informations concernant les clients, tel que numro de la carte

    didentit qui sera la cl primaire de celle-ci.

    Tl superviseur

    Puisque le tl-superviseur, pour ladministrateur de lapplication, nest autre quun client, cette

    classe sera hrite de la classe prcdente. Chaque tl-superviseur doit avoir un mot de passe

    pour accder son compte.

    Technicien

    Comme le tl-superviseur, le technicien est un client qui doit avoir son mot de passe.

    vhicule

    Cette classe couvre les diffrents types de vhicules diagnostiqus ou pas. Cette classe sera

    identifie par le numro du matricule.

    tat

    On peut dire que cette classe est la plut importante dans la base de donnes puisquelle contient

    ltat de chaque vhicule.

  • Projet dEnvergure Tldiagnostic des vhicules

    32

    1,1

    1,n

    0,n

    1,n

    1,1

    0,n1,1

    1,10,n

    1,n 0,n

    0,n

    0,n

    1,1

    cl ient

    cin_clientnom_clientprenom_clientadresse_clientemail_cl ienttelephone_clientgsm_client

    EntierTexteTexteTexteTexteTexteTexte

    cin_client

    vehicule

    matricule_vehnaturedate_diag

    TexteTexteDate

    matricule_veh

    telesuperviseur

    cin_telesupnom_telesupprenom_telesupadresse_telesupemail_telesuptelephone_telesupgsm_telesupmotPass_telesup

    EntierTexteTexteTexteTexteTexteTexteTexte

    cin_telesup

    technicien

    cin_technom_techprenom_techadresse_techemail_techtelephone_techgsm_techmotPass_tech

    EntierTexteTexteTexteTexteTexteTexteTexte

    cin_tech

    possede

    avoir

    gerer_distance

    inscrire

    contacter

    inscrire1

    gerer_direct

    Etat

    code_etatetat_eauetat_huileetat_carburateuretat_rouesetat_pompe-a-essenceetat_Bougietat_Feux-avantetat-Feux-arrireetat_alternateuretat_allumage

    NumriqueTexteTexteTexteTexteTexteTexteTexteTexteTexteTexte

    code_etat

    Figure 9: Schma conceptuel de la base de donnes

  • Projet dEnvergure Tldiagnostic des vhicules

    33

    2. Le modle physique de donnes (MPD)

    2.1 Introduction

    Le MPD dfinit la configuration physique de la base de donnes et permet d'en connatre les

    dtails. Ce modle prend en compte la fois les structures de stockage du logiciel et celles des

    donnes.

    2.2 Le MPD conu

    Aprs la ralisation du modle conceptuel de donnes loutil AMC Power Design permet de

    gnrer automatiquement le modle physique de donnes, aprs le passage par ces tapes :

    Figure 10: tapes de gnration du modle physique de donnes

    Une fois nous choisissons les paramtres du diagramme MPD, nous obtenons le modle ci-

    dessous :

  • Projet dEnvergure Tldiagnostic des vhicules

    34

    FK_VEHICULE_POSSEDE_CLIENT

    FK_ETAT_AVOIR_VEHICULE

    FK_VEHICULE_GERER_DIS_TELESUPE

    FK_CLIENT_INSCRIRE_TELESUPE

    FK_TECHNICI_INSCRIRE1_TELESUPE

    FK_GERER_DI_GERER_DIR_TECHNICI

    FK_CONTACTE_CONTACTER_CLIENT

    FK_GERER_DI_GERER_DIR_VEHICULE

    FK_CONTACTE_CONTACTER_TECHNICI

    client

    cin_clientcin_telesupnom_clientprenom_clientadresse_clientemail_clienttelephone_clientgsm_client

    integerintegerlong varcharlong varcharlong varcharlong varcharlong varcharlong varchar

    vehicule

    matricule_vehcin_clientcin_telesupnaturedate_diag

    long varcharintegerintegerlong varchardate

    telesuperviseur

    cin_telesupnom_telesupprenom_telesupadresse_telesupemail_telesuptelephone_telesupgsm_telesupmotPass_telesup

    integerlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varchar

    technicien

    cin_techcin_telesupnom_techprenom_techadresse_techemail_techtelephone_techgsm_techmotPass_tech

    integerintegerlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varchar

    Etat

    code_etatmatricule_vehetat_eauetat_huileetat_carburateuretat_rouesetat_pompe-a-essenceetat_Bougietat_Feux-avantetat-Feux-arrireetat_alternateuretat_allumage

    numericlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varcharlong varchar

    contacter

    cin_clientcin_tech

    integerinteger

    gerer_direct

    cin_techmatricule_veh

    integerlong varchar

    Figure 11: Le MPD conu

  • Projet dEnvergure Tldiagnostic des vhicules

    35

    III. Conception UML

    1. Dfinition

    Pour programmer une application, il ne convient pas de se lancer directement dans lcriture du

    code : il faut dabord organiser les ides, les documenter, puis organiser la ralisation en

    dfinissant les modules et les tapes de la ralisation. Cest cette dmarche antrieure lcriture

    que lon appelle modlisation ; son produit est un modle. Le langage UML est en train de

    devenir un langage de modlisation universel. UML permet un change standardis depuis la

    rdaction d'un cahier des charges fonctionnel, du le travail raliser par les architectes et

    dveloppeurs. En effet, la notation unifie dfinit des diagrammes nombreux et dune lecture

    aise pour reprsenter les diffrents points de vue de modlisation.

    Ainsi, chaque organisation est libre de choisir le processus qui lui semble le plus adapt en

    fonction du type d'applications dveloppes, des habitudes de ses dveloppeurs ou encore de leur

    niveau de maturit objet. De fait, UML nest pas proprement parler une mthode mais un

    support versatile adaptable de nombreuses mthodes de dveloppement.

    2. Diagrammes utiliss

    Il est impossible de donner une reprsentation graphique complte dun logiciel, ou de tout autre

    systme complexe, de mme quil est impossible de reprsenter entirement un statu ( trois

    dimensions) par des photographies ( deux dimensions). Mais il est possible de donner sur un tel

    systme des vues partielles, analogues chacune une photographie dun statu, et dont la

    conjonction donnera une ide utilisable en pratique sans risque derreur grave. UML 2.0

    comporte ainsi treize types de diagrammes reprsentant autant de vues distinctes pour

    reprsenter des concepts particuliers du systme dinformation. Ils se rpartissent en deux grands

    groupes :

    Diagrammes structurels ou diagrammes statiques (UML Structure) :

    diagramme de classes (Class diagram)

    diagramme dobjets (Object diagram)

    diagramme de composants (Component diagram)

    diagramme de dploiement (Deployment diagram)

    diagramme de paquetages (Package diagram)

    diagramme de structures composites (Composite structure diagram)

    Diagrammes comportementaux ou diagrammes dynamiques (UML Behavior) :

  • Projet dEnvergure Tldiagnostic des vhicules

    36

    diagramme de cas dutilisation (Use case diagram)

    diagramme dactivits (Activity diagram)

    diagramme dtats-transitions (State machine diagram)

    diagrammes dinteraction (Interaction diagram) :

    diagramme de squence (Sequence diagram)

    diagramme de communication (Communication diagram)

    diagramme global dinteraction (Interaction overview diagram)

    diagramme de temps (Timing diagram)

    Ces diagrammes, dune utilit variable selon les cas, ne sont pas ncessairement tous produits

    loccasion dune modlisation. Les plus utiles pour la matrise douvrage sont les diagrammes de

    cas dutilisation, dactivits, de classes, dobjets, de squence et dtats-transitions. Les

    diagrammes de composants, de dploiement et de communication sont surtout utiles pour la

    matrise duvre qui ils permettent de formaliser les contraintes de la ralisation et la solution

    technique.

    2.1 Diagramme de cas dutilisation

    Le diagramme de cas dutilisation reprsente la structure des grandes fonctionnalits ncessaires

    aux utilisateurs du systme. Cest le premier diagramme du modle UML, celui o sassure la

    relation entre lutilisateur et les objets que le systme met enuvre.

    2.1.1 lments des diagrammes de cas dutilisation

    Acteur

    Un acteur est lidalisation dun rle jou par une personne externe, un processus ou une chose

    qui interagit avec un systme. Il se reprsente par un petit bonhomme avec son nom inscrit

    dessous.

  • Projet dEnvergure Tldiagnostic des vhicules

    37

    Cas dutilisation

    Un cas dutilisation est une unit cohrente dune fonctionnalit visible de lextrieur. Il ralise

    un service de bout en bout, avec un dclenchement, un droulement et une fin, pour lacteur qui

    linitie. Un cas dutilisation modlise donc un service rendu par le systme, sans imposer le

    mode de ralisation de ce service et se reprsente par une ellipse et optionnellement, au-

    dessus du nom, un strotype.

    Relation

    Relation dinclusion

    Un cas A inclut un cas B si le comportement dcrit par le cas A inclut le comportement du cas

    B, le cas A dpend de B. Lorsque A est sollicit, B lest obligatoirement, comme une partie de A.

    Cette dpendance est symbolise par le strotype include .

    Relation dextension

    On dit quun cas dutilisation A tend un cas dutilisation B lorsque le cas dutilisation A peut

    tre appel au cours de lexcution du cas dutilisation B. Excuter B peut ventuellement

    entraner lexcution de A : contrairement linclusion, lextension est optionnelle. Cette

    dpendance est symbolise par le strotype extend

    Relation de gnralisation

    Un cas A est une gnralisation dun cas B si B est un cas particulier de A. Cette relation de

    gnralisation/spcialisation est prsente dans la plupart des diagrammes UML et se traduit par

    le concept dhritage dans les langages orients objet.

  • Projet dEnvergure Tldiagnostic des vhicules

    38

    2.1.2 Ralisation du diagramme

    Aprs avoir tudi la conception UML nous avons pass la ralisation. Au dbut nous avons

    cre, par loutil Sun Java Studio Enterprise 8.1 , un nouveau projet de type UML.

    Ensuite, nous avons cre un diagramme de cas dutilisation

    Dans la conception cas dutilisation, nous avons utilis les outils qui sont prsents ci dessus.

  • Projet dEnvergure Tldiagnostic des vhicules

    39

    Figure 12: Palette utilise pour concevoir le diagramme de cas d'utilisation

    Ceci nous permet de concevoir le diagramme des cas de notre application web ainsi que de la

    communication srie entre le PC et le module GM862:

    Figure 13: Diagramme de Cas dutilisation de l'application web

  • Projet dEnvergure Tldiagnostic des vhicules

    40

    Conducteur Tlsuperviseur

    Supevision du vhicule

    Dtection de pannes

    Envoie SMS

    rpartion de dfaut

    Figure 14: Diagramme des cas de la communication srie

    2.2 Le diagramme de squence

    Le diagramme de squence reprsente la succession chronologique des oprations ralises par

    un acteur. Il indique les objets que lacteur va manipuler et les oprations qui font passer dun

    objet lautre.

    2.2.1 Reprsentation des messages

    Un message dfinit une communication particulire entre des lignes de vie. Plusieurs types de

    messages existent, les plus communs sont :

    lenvoi dun signal

    linvocation dune opration

    La cration ou la destruction dune instance.

    Graphiquement, un message synchrone se reprsente par une flche en traits pleins et

    lextrmit pleine partant de la ligne de vie dun objet expditeur et allant vers celle de lobjet

    cible. Ce message peut tre suivi dune rponse qui se reprsente par une flche en pointill.

  • Projet dEnvergure Tldiagnostic des vhicules

    41

    La cration dun objet est matrialise par une flche qui pointe sur le sommet dune ligne de

    vie. La destruction dun objet est matrialise par une croix qui marque la fin de la ligne de vie

    de lobjet.

    Figure 15: Message de squence

    2.2.2 Ralisation du diagramme

    Cette fois nous choisissions Sequence Diagram :

    Figure 16: Cration dun diagramme de squences

    Pour obtenir le diagramme de squence souhait, nous devons utiliser les outils dcrits sur la

    figure suivante :

  • Projet dEnvergure Tldiagnostic des vhicules

    42

    Figure 17: Palette utilise pour concevoir le diagramme de squences

    Toute cette dmarche a t conue pour atteindre enfin ce diagramme qui reprsente une vue

    claire sur le passage de linformation entre le Tlsuperviseur, le systme et la carte pour faire le

    diagnostic dun

    vhicule..

  • Projet dEnvergure Tldiagnostic des vhicules

    43

    Tl superviseur

    1 : Ouvrir sit e Web

    2 : Demand e d e m ot de pass e

    3 : sais ir mot de pass e

    5 : Vrification

    6 : M en u p rincipale

    4 : Conn ecter labase de don nes

    Si le mot de pass e

    es t in correcte al ler

    au 3

    Si le mot de pas seest correcte pass er

    7 : Saisir les param tresd u client et du s on vhicule

    8 : En reg les paramtres d an s la BD

    9 : Vrifier cod e tat

    10 : Enreg les d ans la BD

    Client :Carte G M 86 2

    13 : Message de la rpon se

    11 : Con sulter la carte t ravers le rseau GPRS

    14 : Corriger les p an nes

    12 : Voir m m oireSi tat dfectueu x et lespannes peu ven t corriger distance :14

    Si tat d fectueux etles p an nes ne p euventpas corriger a dis tance :15

    15 : Informer le tech nicien

    16 : Contacter le c liente t corri ge r le s pannes

    TechnicienAdministrateur :Base de donnes

    Si pas desprob lmes : 17

    17 : Enregi strer les informat ions du rapport

    Figure 18: Diagramme de squence du tldiagnostic

  • Projet dEnvergure Tldiagnostic des vhicules

    44

    Concernant le diagramme de squence modlisant la communication entre le PC et le module

    GM862, il est prsent comme suit.

    PC Module GM862 Conducteur/ Client

    envoie donnes

    ecouter

    indicati onde nouveau texte

    ouverture de port srie

    fermeturedu port

    en registremen td es do nnes

    fermeture dele connexion srie

    envoie des d onnesvers le serveur web

    enregistrementdans u ne base

    de donnes

    envoie SMS

    Serveur web

    Figure 19: Diagramme de squence pour la communication PC et Module GM862

    2.3 Diagramme de classes

    Le diagramme de classes est considr comme le plus important de la modlisation oriente

    objet, il est le seul obligatoire lors dune telle modlisation. Alors que le diagramme de cas

    dutilisation montre un systme du point de vue des acteurs, le diagramme de classes en montre

    la structure interne. Il permet de fournir une reprsentation abstraite des objets du systme qui

    vont interagir ensemble pour raliser les cas dutilisation. Il est important de noter quun mme

    objet peut trs bien intervenir dans la ralisation de plusieurs cas dutilisation.

    Les cas dutilisation ne ralisent donc pas une partition des classes du diagramme de classes. Un

    diagramme de classes nest donc pas adapt (sauf cas particulier) pour dtailler, dcomposer, ou

  • Projet dEnvergure Tldiagnostic des vhicules

    45

    illustrer la ralisation dun cas dutilisation particulier. Il sagit dune vue statique car on ne tient

    pas compte du facteur temporel dans le comportement du systme. Le diagramme de classes

    modlise les concepts du domaine dapplication ainsi que les concepts internes crs de toutes

    pices dans le cadre de limplmentation dune application. Chaque langage de Programmation

    Orient Objets donne un moyen spcifique dimplmenter le paradigme objet (pointeurs ou pas,

    hritage multiple ou pas, etc.), mais le diagramme de classes permet de modliser les classes du

    systme et leurs relations indpendamment dun langage de programmation particulier. Les

    principaux lments de cette vue statique sont les classes et leurs relations : association,

    gnralisation et plusieurs types de dpendances, telles que la ralisation et lutilisation.

    2.3.1 Les lments de diagramme de classe

    classe

    Une classe est la description formelle dun ensemble dobjets ayant une smantique et des

    proprits communes. Elle est reprsente par un rectangle divis en trois cinq compartiments,

    Le premier indique le nom de la classe, le deuxime ses attributs et le troisime ses oprations.

    Nom de la classe

    A ttr ibu t_ 1 : in t

    A ttr ibu t_ 2 : Str ing

    M th ode_1 (a r g_1 , ar g_ 2)

    M th ode_2 (a r g_1 , ar g_ 2, ar g_ 3)

    Figure 20: Structure d'une classe

    Les attributs

    Les attributs dfinissent des informations quune classe ou un objet doivent connatre. Ils

    reprsentent les donnes encapsules dans les objets de cette classe. Chacune de ces informations

    est dfinie par un nom, un type de donnes, une visibilit et peut tre initialis. Le nom de

    lattribut doit tre unique dans la classe.

    Le type de lattribut () peut tre un nom de classe, un nom dinterface ou un type de

    donn prdfini. La multiplicit () dun attribut prcise le nombre de valeurs que

    lattribut peut contenir.

    Association

    Une association est une relation entre deux classes (association binaire) ou plus (association

    n-aire), qui dcrit les connexions structurelles entre leurs instances.

  • Projet dEnvergure Tldiagnostic des vhicules

    46

    Multiplicit ou cardinalit

    La multiplicit associe une terminaison dassociation, dagrgation ou de composition dclare

    le nombre dobjets susceptibles doccuper la position dfinie par la terminaison dassociation.

    Voici quelques exemples de multiplicit :

    Exactement un : 1 ou 1..1

    Plusieurs : _ ou 0.._

    Au moins un : 1.._

    De un six : 1..6

    2.3.2 Ralisation de diagramme de classe

    Pour la ouverture dun nouveau diagramme, nous avons utilis la mme procdure que celle du

    digramme de squence sauf quand mais Class Diagram au lieu de Sequence Diagram .

    Nous utilisons les outils suivants pour construire le diagramme final :

  • Projet dEnvergure Tldiagnostic des vhicules

    47

    Figure 21: Palette utilise pour concevoir le diagramme de classes

    a. Liste des classes

    Classe client : cette classe permet la gestion des diffrents clients du tlsuperviseur

    (ajout, suppression, enregistrement).

    Attribut Description Type

    cin_client Numro de la carte didentit de chaque client Integer

    cin_telesup CIN du tlsuperviseur integer

    nom_client Nom du client String

    prenom_client Prnom du client String

    adresse_client Numro de tlphone du client String

    email_client Ladresse lectronique du client String

    telephone_client Le numro du tlphone du client Number

    gsm_client Le numro du GSM du client Number

    Tableau 1 : Description de la classe Client

  • Projet dEnvergure Tldiagnostic des vhicules

    48

    Classe Tl-superviseur : cette classe reprsente le tlsuperviseur du

    tldiagnostic.

    Attribut Description Typecin_telesup CIN du tlsuperviseur Integer

    nom_telesup Nom du tlsuperviseur String

    prenom_telesup Prnom du tlsuperviseur String

    adresse_telesup Adresse du tlsuperviseur String

    email_telesup Email du tlsuperviseur String

    telephone_telesup Tlphone du tlsuperviseur Number

    gsm_telesup Gsm du tlsuperviseur Number

    motPasse_telesup Reprsente le mot de passe du tl-superviseur String

    Tableau 2 : Description de la classe Tl-superviseur

    Classe Technicien : cette classe reprsente le technicien.

    Attribut Description Type

    cin_tech CIN du technicien integer

    cin_telesup CIN du tlsuperviseur integer

    nom_tech Nom du technicien String

    prenom_tech Prnom du technicien String

    adresse_tech Adresse du technicien String

    email_tech Email du technicien String

    telephone_tech Tlphone du technicien Number

    gsm_tech Gsm du technicien Number

    motPasse_tech Reprsente le mot de passe du technicien String

    Tableau 3 : Description de la classe Technicien

  • Projet dEnvergure Tldiagnostic des vhicules

    49

    Classe vhicule : cette classe permet la gestion des diffrents types de vhicule

    (ajout, suppression, enregistrement).

    Attribut Description Type

    matricule_veh La matricule du vhicule String

    cin_client CIN du client integer

    cin_telesup CIN du tlsuperviseur integer

    nature Nature du vhicule (exp : BMW) string

    date_diag Date de diagnostic du vhicule Date

    Tableau 4 : Description de la classe vhicule

    Classe tat : cette classe contient les diffrents tats diagnostiquer, nous allons

    prsenter dans le tableau ci-dessous quelques chantillons :

    Attribut Description Type

    code_etat code de ltat a diagnostiqu String

    etat_eau Bon ou dfectueux String

    date1 Date de ltat de leau Date

    etat_huile Bon ou dfectueux String

    date2 Date de ltat de lhuile Date

    etat_carburateur Bon ou dfectueux String

    date3 Date de ltat du carburateur Date

    etat_roues Bon ou dfectueux String

    date4 Date de ltat des roues Date

    etat_pompe-a-essence Bon ou dfectueux String

    date5 Date de ltat de pompe essence Date

    etat_bougies Bon ou dfectueux String

    date6 Date de ltat des bougies Date

    Tableau 5 : Description de la classe tat

    b. Rgle de relation

  • Projet dEnvergure Tldiagnostic des vhicules

    50

    Un client possde un ou plusieurs vhicules.

    Un vhicule est associ un seul client.

    Un client ne peut sinscrire que chez un et un seul tl-superviseur

    Un tl-superviseur peut avoir un n clients.

    Un technicien ne peut sinscrire que chez un et un seul tl-superviseur.

    Un tl-superviseur peut avoir un n techniciens.

    Un vhicule peut avoir un ou plusieurs tats.

    Un tat est associ un seul vhicule.

    Un tl-superviseur peut grer distance 0 n vhicules.

    Un vhicule ne peut tre gr distance que par un et un seul tl-superviseur.

    Un technicien peut grer en direct 0 n vhicules.

    Un vhicule peut tre gr en direct par 0 n technicien.

    Un technicien peut contacter 0 n clients.

    Un client peut tre contact par 0 n technicien.

    c. Reprsentation

    Une fois nous crons les tables utiliser, les champs relatifs chaque table et les relations entre

    les diffrentes classes ou objets, nous obtenons le diagramme de classes ci-dessous qui dcrit la

    relation entre les diffrents membres concerns par le processus de diagnostic : Client, Vhicule,

    Etat, Technicie et, Tlsuperviseur.

  • Projet dEnvergure Tldiagnostic des vhicules

    51

    Client

    CIN_Client : in t

    Nom_Client : String

    Prnom_Client : String

    Email_Client : String

    Adresse_Client : String

    Tlphone_Client : number

    GSM_Client : number

    Ajouter (cin ,nom, pr,email,adre,tl,gsm)

    Modifier (cin,nom, pr,email,adre,tl,gsm)

    Supprimer (cin)

    Rechercher ( cin)

    Vhicule

    Matricule_Vh : String

    Nature : String

    Date_Diag : Date

    Ajouter (mat_vh, nature)

    Modifier (mat_vh, nature, date_diag)

    Supprimer (mat_vh)

    Rechercher ( mat_vh)

    Possde1..n 1..1

    Etat

    Code_tat : String

    Etat_eau : String

    Etat_huile : String

    Etat_carburateur : String

    Etat_roues : String

    Etat_pompe-a-essence : String

    Etat_bougis : String

    Etat_feux-avant : String

    Etat_feux-arrire : String

    Etat_alternateur : String

    Etat_allumage : String

    Enregistrer ()

    Modifier ( code_etat )

    Avoir

    1. .n

    1..1

    Technicien

    MotPasse_technicien : String

    Ajouter (cin,nom, pr,email,adre,tl,gsm, motPassTech)

    Connecter (nom, motPassTech)

    1..1

    0..n

    Grer direct

    Hrite 1

    Hrite 2

    Informer

    0. .n

    0..n

    1. .1

    0 ..n

    Inscrire

    1..n

    0..n

    Contacter

    1. .1

    0..n

    Tl suprviseur

    MotPasse_tlsuperviseur : String

    Ajouter (cin,nom, pr,email,adre,tl,gsm, motPassTl)

    Connecter (nom, motPassTl)

    Grer distance

    Figure 22: Diagramme de Classe du tldiagnostic

    IV. Conclusion

    La phase de conception, comme lindique son nom, permet de tracer le squelette global de

    lapplication. La phase suivante sera une mise en ouvre de cette dernire.

  • Projet dEnvergure Tldiagnostic des vhicules

    52

    Partie 3 : Ralisation de lapplication

    Chapitre 1 : Communication RS232

    Chapitre 2 : Dveloppement du site web

  • Projet dEnvergure Tldiagnostic des vhicules

    53

    Chapitre1 : Communication RS232

    I. Gnralits sur la communication srie

    1. La communication

    Le programme doit effectuer une requte pour envoyer ltat du vhicule en temps rel vers le

    port srie du PC. Le port RS232 se compose de 9 broches.

    Deux broches sont utilises :

    Une broche qui permet lcriture : requte

    Une broche pour la lecture : lecture

    Pour notre application, nous nallons utiliser que la broche destine lcriture, pour envoyer des

    donnes sur ltat des diffrents composants du vhicule.

    Figure 23: Schma dun port srie

    2. Protocoles de communication

    Lcriture des informations se fait sur une seule broche. Les informations duplex sont transmises

    sous forme doctets. Chaque requte commence par ladresse du circuit code sur 7 bits.

    Les 4 premiers bits sont invariants, ils dfinissent ladresse du circuit. Les 3 derniers identifient le circuit dans un rseau.

    Un dernier bit gnr par le PC indique le sens dans lequel seffectuent les informations.

  • Projet dEnvergure Tldiagnostic des vhicules

    54

    Chapitre1: Communication RS232

    3. Communication avec le circuit

    Nous devons prciser ladresse du circuit avec lequel nous voulons communiquer. Lorsque le

    circuit sidentifie comme le destinataire dune requte (7 premiers bits), il renvoie un signal au

    PC qui indique quil est prt communiquer avec lui. Ensuite, le PC envoie le reste de sa

    requte, et attend si besoin une rponse.

    Prsentons tout dabord le circuit avec lequel nous travaillons :

    II. Module GM862+Kit dvaluation RS232

    1. Description du module GM862

    1.1 Description technique

    Ce module OEM (Original Equipement Manufactures), est un GSM/GPRS "Quad-bande" va

    nous permettre de raliser un transmetteur dalarme GSM sans fil exprimental. Pour ce faire

    nous utiliserons un module GSM/GPRS GM862 "Quad-band" capable de supporter les

    modes de communication "voix", "fax", "Data", "SMS". Il est spcialement conu pour la

    ralisation d'applications de contrle de commandes distance et opre dans les bandes 850 /

    900 / 1800 et 1900 MHz. Il est dot dun :

    Connecteur "MMCX" pour antenne externe et

    Lecteur de carte SIM intgr, Connecteur MOLEX pour le raccordement notre platine

    Ce dernier se caractrise par ses faibles dimensions associes un prix trs comptitif et une

    grande simplicit de mise en uvre. Ce module se pilote au moyen dune liaison srie via descommandes "AT" et Caractris par :

    Alimentation: 3,4 4,2 V (3,8 V nominal)

    Consommation: < 3,5 mA Consommation moyenne en mode voix (250 mA)

    Liaison srie 1200 57600 bps

    Connecteur d'antenne 50 ohm

  • Projet dEnvergure Tldiagnostic des vhicules

    55

    Chapitre1: Communication RS232

    Voice limage du module GM862 que nous allons utiliser dans notre application.

    Figure 24: Le module GM862 GSM/GPRS

    Afin de simplifier la ralisation, on aura recours une platine de test spcialement conue pour

    pouvoir integrer le module GSM GM862 . Cette platine comprend un tage de rgulation

    ainsi quun tage de mise en forme du signal de sortie du module GSM (afin que les niveaux

    logiques de celui-ci soient compatibles avec une liaison RS232. Il nous suffira alors de connecter

    une alimentation cette platine, une antenne au module GSM et dutiliser un cble pour le

    relier au connecteur dans vhicule. La dernire opration indispensable consistera se munir

    bien videmment dune carte SIM oprationnelle que lon aura insr (hors alimentation)

    dans le module GM862 grce au connecteur prvu cet effet. Le code PIN de la carte

    SIM devra tre effac afin de simplifier la procdure dutilisation du module GSM.

    La figure ci-dessous prsente larchitecture complte de notre systme embarqu, ainsi que les

    diffrents modes dinstallation.

    Avant de commencer utiliser le module il faut bien placer les composants sur le kit

    dvaluation srie comme le montre la figure ci-dessous :

  • Projet dEnvergure Tldiagnostic des vhicules

    56

    Chapitre1: Communication RS232

    Figure 25: Structure du systme embarqu

    1.2 Description logicielle

    Le script python interagit avec le terminal de donnes : le module GM862 travers 4 interfaces,

    possdant chacune des fonctionnalits bien dtermines.

    a. Linterface MDM

    Linterface MDM est la plus importante. Elle permet au script python denvoyer des commandes

    AT, de recevoir des rponses et des alertes, denvoier des donnes travers le rseau et recevoir

    des donnes venant du rseau pendant la connexion. Elle joue le mme rle que linterface de

    ports srie, la seule diffrence est que cette interface nest pas une interface de ports srie rels,

    mais une interface interne.

  • Projet dEnvergure Tldiagnostic des vhicules

    57

    Chapitre1: Communication RS232

    b. Linterface SER

    Elle permet au script python de lire et crire sur le port srie physique rel, dans lequel on trouve

    linterface des commandes. On peut lutiliser pour crire des scripts python, lorsquil nest pas

    utilis pour crire ou envoyer des commandes AT

    c. Linterface GPIO

    Elle permet au script python de manipuler des entres sorties de faon plus rapide que les commandes.

    d. Linterface MOD

    Elle contient la liste des fonctions utilises.

    La figure ci-dessous dcrit en quelque sorte linteraction entre les diffrents modules.

    Figure 26: Fonctionnement du module GM862

    2. Kit dvaluation RS232

    2.1 Description de la carte

    Cette carte est un quipement lectronique adapt et pouvant tre install sur tout type de

    vhicules. Il est dot dune mmoire pour le stockage des donnes de diagnostic du vhicule et

    un module de communication radio GSM/GPRS. Elle permet la localisation en temps rel des

    dfauts dans les vhicules par lecture partir dun port srie et le transfert de ces informations

    un site distant de gestion.

  • Projet dEnvergure Tldiagnostic des vhicules

    58

    Chapitre1: Communication RS232

    Grce ses fonctionnalits avances de gestion et de traitement rapide des donnes, cette

    dernire permet aux mcaniciens doptimiser leurs oprations et de donner de la valeur ajoute

    leurs activits.

    Le kit dvaluation permet lintgration des diffrents composants comme lindique la figure ci-

    dessous.

    Figure 27: Le kit d'valuation RS232 et les diffrents quipements

    2.2Composition de la carte

    Le connecteur DB9

    Le connecteur DB9 est une prise analogique, comportant 9 broches, de la famille des

    connecteurs. Il sert essentiellement dans les liaisons sries, permettant la transmission de

    donnes asynchrone selon la norme RS-232 (RS-232C). Il fait linterface entre llectronique du

    module de gestion et lenvironnement externe que constitue le circuit lectrique de la voiture et

    les capteurs embarqu dans la voiture dans notre cas il assure la liaison avec le PC. Il assure la

    gestion et la coordination.

    Le module GM 862

    Ce module, qui tait dj dcrit si dessous (section 2.2), gre les diffrentes tches ralises par les

    autres modules.

    Antenne GSM/GPRS

    Cble RS232

    Alimentation

    Bouton reset

  • Projet dEnvergure Tldiagnostic des vhicules

    59

    Chapitre1: Communication RS232

    Rgulateur

    Il permet de fournir une tension continue bien stable pour une large plage de courant de sortie.

    Les rsistances

    Elles permettent de la protection des Leds, en limitant le courant qui les parcourt 10mA.

    Les capacits

    Elles sont des composants passifs de filtrage associs au rgulateur et lhorloge pour le

    dcouplage des hautes frquences.

    Les 2 diodes

    Pour lutter contre la chute de la tension de 1.2 V parce que le module GM862 est aliment de 3.8

    V ainsi que pour la protection.

    3. Introduction Python

    3.1 Prsentation du langage

    Python est un langage portable, dynamique, extensible, gratuit, qui permet (sans l'imposer)

    une approche modulaire et oriente objet de la programmation. Python est dvelopp depuis

    1989 par Guido van Rossum et de nombreux contributeurs bnvoles.

    3.2 Caractristiques du langage

    Dtaillons un peu les principales caractristiques de Python, plus prcisment, du langage et de

    ses deux implantations actuelles:

    Python est portable, non seulement sur les diffrentes variantes d'Unix, mais aussi sur lesOS propritaires: MacOS, BeOS, NeXTStep, MS-DOS et les diffrentes variantes de Windows.

    Python est gratuit, mais on peut l'utiliser sans restriction dans des projets commerciaux.

    Python convient aussi bien des scripts d'une dizaine de lignes qu' des projets

    complexes de plusieurs dizaines de milliers de lignes.

  • Projet dEnvergure Tldiagnostic des vhicules

    60

    Chapitre1: Communication RS232

    La syntaxe de Python est trs simple et, combine des types de donnes volus

    (listes, dictionnaires,...), conduit des programmes la fois trs compacts et trs lisibles.

    Python gre ses ressources (mmoire, descripteurs de fichiers...) sans intervention du

    programmeur, par un mcanisme de comptage de rfrences.

    Python est (optionnellement) multi-thread. Python est orient-objet. Il supporte l'hritage multiple et la surcharge des oprateurs.

    Dans son modle objets, et en reprenant la terminologie de C++, toutes les mthodes sont

    virtuelles.

    Python intgre, comme Java ou les versions rcentes de C++, un systme d'exceptions,qui permet de simplifier considrablement la gestion des erreurs.

    Python est dynamique (l'interprteur peut valuer des chanes de caractres reprsentant

    des

    expressions ou des instructions Python), orthogonal (un petit nombre de concepts suffit

    engendrer des constructions trs riches), rflectif (il supporte la mta programmation, par

    exemple la capacit pour un objet de se rajouter ou de s'enlever des attributs ou des mthodes,

    ou mme de changer de classe en cours d'excution) et introspectif (un grand nombre d'outils

    de dveloppement, comme le debugger ou le profiler, sont implants en Python lui-mme).

    Python possde actuellement deux implmentations. L'une, interprte, dans laquelle les

    programmes Python sont compils en instructions portables, puis excuts par une machine

    virtuelle. L'autre gnre directement du bytecode Java.

    La bibliothque standard de Python, et les paquetages contribus, donnent accs une

    grande varit de services : chanes de caractres et expressions rgulires

    Ce logiciel est indispensable pour lexcution de notre application, grce ce logiciel nous

    pouvons crire des scripts et les implmenter directement sur le module telle que envoie

    SMS .

  • Projet dEnvergure Tldiagnostic des vhicules

    61

    Chapitre1: Communication RS232

    Figure 28: Installation du Python

  • Projet dEnvergure Tldiagnostic des vhicules

    62

    Chapitre1: Communication RS232

    Figure 29: Fentre principale de Python

    Po