PFE PORTAIL WEB SMART METERING

Post on 09-Apr-2017

373 views 0 download

Transcript of PFE PORTAIL WEB SMART METERING

Conception et développement d’un portail

web Pour le Smart MeteringElaboré par :DAHECH Hajer

Faculté des Sciences Tunis Tunisie Telecom

Président : M.ALLAGUI Hatem

Examinateur : M.HICHRI Ahmed

Encadrement Entreprise : Mme. EL

YENGUI Saida

Encadrement FST : M.CHERIF Adnene

Soutenu le :21 Juin 2016

Projet de fin d’étude pour l’obtention du diplôme d’ingénieur électronique

Nouveaux servicesM-santéMobile éducation DomotiqueSmart Metering

• Nouvelle génération

• Haut débit

Introduction

2

Cadre du Projet

Analyse et Conception

Implémentation

Conclusion et Perspective

Plan

3

Cadre du Projet

Analyse et Conception

Implémentation

Conclusion et Perspective

Plan

4

Augmentation de la demande

d’énergie

Diminution des ressources

Réseau électrique Ancien

Problématique

5

Compteur Traditionnel

Smart Meter

Installation des sites pilotes pour le Smart Metering

Test du capacité d’adaptation du réseau électrique

Etude des nouvelles technologies

Comparaison Solution pour l’adaptation

Sites Pilotes

6

.

Grande résolution Temporelle

Smart GridSystème

d’information complexe

Codage Numérique

Advenced Metering Infrasructure

Les communications Smart Meter

Traitement des données

Mots Clés

7

Validation des collectes des données

Meter Data Management

Head-End System Validation, Estimation et EditionDes données

Enterprise Integration Bus

Intégration des plusieurs logiciels

Energy Gateway

• Collecte en temps réel des données

• Génération des Dashboard

Mots Clés

8

Benchmark

L'évaluation comparative

1980:outil utilisé par certaines entreprises.

1989:Livre du Robert Camp « le Benchmarking ».

MéthodeB

MéthodeC

Méthode A

Recherche des méthodes les plus performantes pour une activité donné

Benchmark

9

*ErgonomiePlusieurs rubriques*InformationsRiche en informations*DesignCode couleur triste

*ErgonomiePlusieurs rubriques*InformationsRiche en Information*DesignDesign épuré et couleurs attirants

*ErgonomieTrès lourd*InformationsBien traitées*DesignCode couleur mal choisi

*ErgonomieSimple*InformationsRésumées*DesignCompatible avec portail web

Benchmark

10

Cadre du Projet

Analyse et Conception

Implémentation

Conclusion et Perspective

Plan

11

Gestion des Comptes

UtilisateursLes droits ,les

rôles et les privilèges

Administrateur

Gestion du portail

Ajouter, modifier,

supprimer des données

Super User

Inscription au portail

Utilisateur final

User

Utilisateurs

12

Diagramme du Cas d’utilisation

Diagramme de Séquence

Diagramme de classe

UML

Langage de modélisation orienté objet.

Modélisation graphique.

Diagrammes

Quoi? Description

écrite. Interactions

entre les acteurs et le système.

Comment? Echange des

messages. Interface Homme-

machine.

Qui? Structure. Liens.

Diagrammes

13

<<include>> <<include>>

<<include>>

<<include>>

Administrateur

Gestion des Comptes

util isateurs Gestion du l’agrégateur des données

Modifier

Ajouter

Supprimer

<<include>>

<<include>>

User

Inscription

Consultation Dashboard

<<include>>

<<include>> <<include>><<include>><<include>>

SuperUser

Authentification

Gestion de la

Tarification

Gestion des

statistiques

Gestion des

Alertes

Gestion des Ressources Energétique

Contrôle des appareils

intell igents

Cas d’utilisation général

14

<<include>><<include>>

<<extends>>

<<extends>>

<<extends>>

User

Administrateur

S'identifier

S'inscrire

Modifier Compte

Ajouter Compte

Supprimer Compte

Gestion des comptes uti l isateurs

Authentification

EnvoiEmail(nouvellesDonnées)

EnvoiRequete()Oublier(login,mot de passe)

Echec d'entée

Confirmation d'entrée à la session

verifier()

verifier()

EnvoiRequete

Saisir(login,mot de passe)

emailConfirmation(Login,Mot de passe)

saisirInformations()

User

Inscription InterfaceAuthentification Système

[Oublier(Login,Mot de passe)]break

EnvoiEmail(nouvellesDonnées)

EnvoiRequete()Oublier(login,mot de passe)

Echec d'entée

Confirmation d'entrée à la session

verifier()

verifier()

EnvoiRequete

Saisir(login,mot de passe)

emailConfirmation(Login,Mot de passe)

saisirInformations()

Authentification

15

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

User

Consulter Dashboard

Consulter les Statistiques

Consultater Tarification

Consulter mix énergique

S par jour

S par mois

Sources traditionnels

Sources renouvenables

S par trimestre

S par année

TarificationTemporelle

Tarification par zone

géographique

Consulter historique H par mois

H par année

H par jour

ConsulterEnergieMix

ChoisirEnergieMix()

AfficherInformation(Renouvenable)

AfficherInoforamtions(Tarditionnel)

EnvoiRequete()

EnvoiRequete()

SelectionnerSource(Renouvenable)

SélectionnerSource(Traditionnel)

Selectionner(Traditionnel,Renouvenable)

ChoisirSource(Traditionnel,Renouvenable)

ChoisirInterfaceDashbord()

User

InterfaceUser InterfaceDashbord EM1:EnergieMix

S.T

S.R

alt

ref

Connecter()

ChoisirEnergieMix()

AfficherInformation(Renouvenable)

AfficherInoforamtions(Tarditionnel)

EnvoiRequete()

EnvoiRequete()

SelectionnerSource(Renouvenable)

SélectionnerSource(Traditionnel)

Selectionner(Traditionnel,Renouvenable)

ChoisirSource(Traditionnel,Renouvenable)

ChoisirInterfaceDashbord()

Dashboard

16

<<extends>>

<<extends>>

<<include>>

<<extends>>

<<extends>>

<<extends>>

User SuperUser

Contrôle des Appareils

intell igents

Allumer

Arrêter

Ajouter un appareil

intell igent

Supprimer un appareil intell igent

Modifier un appareil

intell igent

Gestion des appareils

intell igents

AllumerAppareil

DémarrerNotificationsAppareil() AfficherInformations()

AllumerAppareil()

SelectionnerAppareil()

ChoisirAllumerAppareil()ChoisirControleAppareilsIntell igents

User

InterfaceUser() Interface:AppareilsIntell igents A:AppreilIntell igent

ref

Connecter()

DémarrerNotificationsAppareil() AfficherInformations()

AllumerAppareil()

SelectionnerAppareil()

ChoisirAllumerAppareil()ChoisirControleAppareilsIntell igents

Contrôle Appareil

17

<<include>>

<<include>>

<<extends>>

<<extends>>

<<extends>>

<<extends>>

<<extends>>

<<extends>>

User

SuperUser

Administrateur

Gestion des alertes

énergétiques

Activer le service d'alertes

Gestion des alertes

applicati fs

Surcharge de la consommation

Eteindre une limite de

consommation

Coupure électrique

Envoi SMS

Envoi Email

Budget

EnvoiSMS/Email

Envoi(SMS,Email)

EnvoiRequete(type,cause)

Administrateur

InterfaceAdministrateur U1:UserInterface:AlertesEnergétiques

[Cas d'alerte]opt

ref

Connecter()

Envoi(SMS,Email)

EnvoiRequete(type,cause)

Alertes

18

<<extends>>

<<extends>>

<<include>>

<<extends>>

UserSuperUser

Gestion de la

Tarification

Modifier une

tarification

Ajouter une

tarification

Consulter la tarification

Supprimer une

tarification

AjouterTarification

AfficherNouvelleTarification()

CréerNouvelleTarification()

EntrerNouvelleTarification()

ChoisirAjouterTarification()ChoisirGestionTarification()

SuperUser

InterfaceSuperUser Inetrface GestionTarification T1:Tarification

ref

Connecter()

AfficherNouvelleTarification()

CréerNouvelleTarification()

EntrerNouvelleTarification()

ChoisirAjouterTarification()ChoisirGestionTarification()

Tarification

19

0..10..*

0..1

0..*

0..10..*

0..10..*

0..10..*

0..10..*

0..1

0..*

0..1

0..*

0..1

0..*

0..1 0..*

0..1

0..*

0..1

0..*

0..10..*

0..10..*

0..1 0..*

0..10..*0..10..*

0..1

0..*

0..1

0..*

0..1

0..*

SmartMeter

-------

IdSMdonneeConstructeurImpulseWorkingVoltageMaximumCurrentPowerConsumption

: int: int: String: int: int: int: int

--

<<Setter>><<Getter>>

setIdSmartM (int NewIdSmartM)getIdSmartM ()

: void: int

Alertes

---

idAlerteSMSEmail

: int: int: int

--

<<Setter>><<Getter>>

setIdAlerte (int NewIdAlerte)getIdAlerte ()...

: void: int

Util isateur

---------

IdUserNomPrenomLoginPassAdreeseCodePostalNumeroTelephoneUEmail

: int: String: String: String: String: String: int: int: String

------

<<Setter>><<Getter>><<Setter>><<Getter>><<Setter>><<Getter>>

setIdUser (int NewIdUser)getIdUser ()setLoginU (String NewLoginU)getLoginU ()setPass (String NewLoginU)getPass ()

: void: int: void: String: void: String

privi lege

---

Idprivi legelibprivelegedescription

: int: String: String

Pays

--

IdPaysNomPays

: int: String

----

<<Setter>><<Getter>><<Setter>><<Getter>>

setIdPays (int NewIdPays)getIdPays ()setNomPays (String NewNomPays)getNomPays ()

: void: int: void: String

Ville

--

idVilleNomVille

: int: String

----

<<Setter>><<Getter>><<Setter>><<Getter>>

setIdVil le (int NewIdVille)getIdVil le ()setNomVille (String NewNomVille)getNomVille ()...

: void: int: void: String

Vil lage

--

idVillageNomVillage

: int: String

----

<<Setter>><<Getter>><<Setter>><<Getter>>

setIdVil lage (int NewIdVil lage)getIdVil lage ()setNomVillage (String NewNomVillage)getNomVillage ()...

: void: int: void: String

Etat

---

idEtatLibEtatdescriptionEtat

: int: String: String

Home

- IdHome : int

--

<<setter>><<Getter>>

setIdHome (int NewIdHome)getIdHome ()...

: void: int

TypeAlerte

-----

IdTAlertesurchargeLimiteConsommationBudgetCoupureElectrique

: int: int: int: int: int

--

<<Setter>><<Getter>>

setIdTAlerte (int NewIdTAlerte)getIdTAlerte ()...

: void: int

CategorieComposant

---

IdCatCNomCatCDescriptionCatC

: int: String: String

--

<<Setter>><<Getter>>

setIdCatC (int NewIdCatC)getIdCatC ()

: void: int

EtatPrivilege

---

idEtatPLibEtatPdescriptionEtatP

: int: String: String

EtatSM

---

idEtatSMLibEtatSMdescriptionEtatSM

: int: String: String

Sensor

---

idSensortypeSDescriptionS

: int: String: String

--

<<Setter>><<Getter>>

setIdSensor (int NewIdSensor)getIdSensor ()...

: void: int

ComposantsDomestiques

--------

idCDdescriptionCDAppareilIntell igentBatterieSourcesRenouvenablesConstructeurdatemisemarchedateamortissemenr

: int: String: int: int: int: int: int: int

--

<<Setter>><<Getter>>

setIdCD (int NewIdCD)getIdCD ()

: void: intTypeComposant

---

idTypeCActifpassif

: int: int: int

--

<<Setter>><<Getter>>

setIdTypeC (int NewIdTypeC)getIdTypeC ()...

: void: int

EtatComposant

---

idEtatCEtatMarcheEtatPanne

: int: int: int

--

<<Setter>><<Getter>>

setIdEtatC (int NewIdEtatC)getIdEtatC ()...

: void: int

CategorieSensor

--------

IdCatSdescriptionCatSCTG1CTG2CTG3CTG4CTG5CTG6

: int: String: int: int: int: int: int: int

--

<<Setter>><<Getter>>

setIdCatS (int NewIdCatS)getIdCatS ()...

: void: int

EnergieConsommation

---

IdECTempscomposant

: int: int: int

--

<<Setter>><<Getter>>

setIdCE (int NewIdCE)getIdCE ()...

: void: int

Tarification

---

idTarifdateTZoneGeo

: int: int: String

--

<<Setter>><<Getter>>

setIdCE (int NewIdCE)getIdCE ()...

: void: int

D.Classe

20

Cadre du Projet

Analyse et Conception

Implémentation

Conclusion et Perspective

Plan

21

0..10..*

0..1

0..*

0..10..*

0..10..*

0..10..*

0..10..*

0..1

0..*

0..10..*

0..1

0..*

0..1 0..*

0..1

0..*

0..1

0..*

0..10..*

0..10..*

0..1 0..*

0..10..*0..10..*

0..1

0..*

0..1

0..*

0..1

0..*

Sma rtMeter

-------

IdSMdonneeConstructeurImpulseWorking Voltag eMaximumCurrentPowerConsumption

: int: int: String: int: int: int: int

--

<<Sette r>><<Getter>>

setIdSmartM (int NewIdSmartM)getIdSmartM ()

: void: i nt

Alertes

---

i dAlerteSMSEmail

: int: int: int

--

<<Setter>><<Getter>>

setIdAle rte (in t NewIdAlerte)getIdAlerte ()...

: void: int

Uti lisate ur

---------

IdUserNomPrenomLoginPassAdreeseCodePostalNumeroTe lep ho neUEmail

: i nt: String: String: String: String: String: i nt: i nt: String

------

<<Setter>><<Getter>><<Setter>><<Getter>><<Setter>><<Getter>>

setIdUser (i nt NewIdUser)getIdUser ()setL oginU (String NewLoginU)getLogin U ()setPass (String NewLoginU)getPass ()

: void: i nt: void: String: void: String

privi l ege

---

Idprivilegelibprivelegedescription

: int: Stri ng: Stri ng

Pays

--

Id PaysNo mPays

: i nt: String

----

<<Setter>><<Getter>><<Setter>><<Getter>>

setIdPays (i nt NewIdPays)getIdPays ()setNomPays (String NewNomPays)getNomPays ()

: void: i nt: void: String

Vill e

--

idVi lleNomVi ll e

: i nt: Stri ng

----

<<Setter>><<Getter>><<Setter>><<Getter>>

setIdVi ll e (int NewIdVi ll e)getIdVill e ()setNomVille (Stri ng NewNomVi ll e)getNomVil le ()...

: void: i nt: void: String

Village

--

idVillageNomVi ll ag e

: i nt: String

----

<<Setter>><<Getter>><<Setter>><<Getter>>

setIdVil l age (i nt NewIdVill age)getIdVi lla ge ()setNomVill age (String NewNomVillage)getNomVi ll age ()...

: void: i nt: void: String

Etat

---

id EtatLibEtatdescriptionEtat

: i nt: String: String

Home

- IdHome : i nt

--

<<setter>><<Gette r>>

setIdHome (i nt NewIdHome)getIdHome ()...

: void: i nt

TypeAle rte

-----

IdTAlertesurchargeLimiteConsom mationBudgetCoupureElectri qu e

: i nt: i nt: i nt: i nt: i nt

--

<<Setter>><<Getter>>

setIdT Alerte (i nt NewIdTAle rte)getId TAlerte ()...

: void: i nt

Ca tegorieComposan t

---

IdCatCNomCatCDescriptionCatC

: i nt: Stri ng: Stri ng

--

<<Setter>><<Getter>>

setIdCatC (int NewIdCatC)getIdCatC ()

: vo id: i nt

EtatPrivilege

---

idEtatPLibEtatPdescriptionEtatP

: i nt: String: String

EtatSM

---

idEtatSMLibEtatSMdescriptionEtatSM

: int: Stri ng: Stri ng

Sensor

---

idSensortyp eSDescriptionS

: int: String: String

--

<<Sette r>><<Getter>>

setIdSen sor (int NewIdSensor)getIdSensor ()...

: void: i nt

Comp osantsDomestiques

--------

idCDdescription CDApparei lIntell igentBatterieSourcesRenouvenablesConstructeurdatemisemarchedateamorti ssemenr

: i nt: Strin g: i nt: i nt: i nt: i nt: i nt: i nt

--

<<Setter>><<Getter>>

setIdCD (int NewIdCD)getIdCD ()

: void: intTypeComposa nt

---

idTypeCActifpassi f

: int: int: int

--

<<Sette r>><<Getter>>

setIdTypeC (int NewIdT ypeC)getIdT ypeC ()...

: void: int

EtatComposant

---

id EtatCEtatMarcheEtatPanne

: i nt: i nt: i nt

--

<<Setter>><<Getter>>

setIdEtatC (int NewIdEtatC)getIdEta tC ()...

: void: i nt

CategorieSensor

--------

IdCatSdescriptionCa tSCTG1CTG2CTG3CTG4CTG5CTG6

: int: Stri ng: int: int: int: int: int: int

--

<<Sette r>><<Getter>>

setIdCatS (int NewIdCatS)getIdCatS ()...

: void: int

EnergieConsommation

---

IdECTe mpscomposant

: i nt: i nt: i nt

--

<<Setter>><<Getter>>

setIdCE (int NewIdCE)getIdCE ()...

: void: i nt

Tari fi cati on

---

idTarifdateTZoneGeo

: i nt: i nt: String

--

<<Sette r>><<Getter>>

setIdCE (int NewIdCE)getIdCE ()...

: void: i nt

Logiciels

22

1 à 4 semaines

Mêlée Quotidienne

Produit partiel

Back log du sprint

Back log du

produit

Méthode Agile Scrum

23

Release1 Release2 Release3

Contrôle des Appareils Domestiques

Authentification

Gestion des Comptes Utilisateurs

Gestion des Alertes

Gestion desDashboard

Gestion des Smarts Meters

Gestion de la Tarification

Release

24

Interface “Login”

Interface “Inscription”

Interface “Mot de passe Oublié”

Authentification

Interface Ajouter

Utilisateur

Interface Liste des Comptes

Gestion des Comptes

26

Alertes

27

Interface « Contrôle »

Interface « Ajouter

Composant»

Interface « Liste

Composants» Interface « Domestique »

Appareils

28

Interface StatiqueInterface Historique

Interface Consommation en temps Réel

Interface Energie Mix

Interface Energie Mix

Interface Consommation

Voisins

Interface Consommation

par Zone Géographique

Dashboard

29

Interface Liste des

Smart Meter

Interface Ajouter Smart Meter

Map Smart MeterMap Projets

Smart Metering

Smart Meter

30

Cadre du Projet

Analyse et Conception

Implémentation

Conclusion et Perspective

Plan

31

Conclusion et perspective

Portail web pour le Smart Metering

Analyse des besoins

Conception Développement

Préparation de l’infrastructure et installation des Smarts MetersImplémentation de nouveaux services 4G

Avoir un projet complet pour le smart metering

32

33

Merci pour votre attention