Vous êtes sur la page 1sur 43

Université

Hasan 1er

Faculté des Sciences et techniques

Settat

Projet de fin d’études


Intitulé
Redimensionnement de la station de pompage NZALAT &
Réalisation d’un système d’asservissement entre deux stations
de l’eau potable

En vue de l’obtention du diplôme de


Licence Universitaire Professionnelle

Spécialité :
Ingénierie électrique
Génie Electrique
Discipline :
Electrotechnique Industrielle et Automatique

Réalisé par Mrs. : Encadré par


Mrs. :
OUTFERDINE Brahim BENABDESSALAM Abdessalam
MIFTAH IDRISSI Abderrahmane KATIBI Saad
BERRAIS Larbi MAHZI Med

Année universitaire 2018/2019


Sommaire
Dédicace ..........................................................................................................................................................
Remerciement ..................................................................................................................................................
Résumé ............................................................................................................................................................
Sommaire .........................................................................................................................................................
Liste des figures ...............................................................................................................................................
Liste des tableaux ............................................................................................................................................
Introduction .......................................................................................................................................................
Chapitre 1 : Présentation du site de GANTOUR du groupe OCP ............................................................................
I. Généralités sur le groupe OCP .......................................................................................................................
1.1 Présentation ......................................................................................................................................…………
1 .2 Historique ...................................................................................................................................................
1.3 Organisation de L’OCP ...............................................................................................................................
II. La pole mine Gantour : .................................................................................................................................
2.1. Généralités .................................................................................................................................................
2.2. La méthode d’exploitation .........................................................................................................................
.......................................................................
I. Réseau électrique de la station de pompage .............................................................................................................
1.1. Présentation ...............................................................................................................................................
1.2. L’architecture .......................................................................................................................................... Chapitre
2 : Le réseau électrique de la station de pompage
3.1 Alimentation de la station de pompage NZALAT.....................................................................................
II. Présentation de schéma de distribution d’énergie à la station.....................................................................
2.1. Caractéristiques de la ligne ONE ...............................................................................................................
2.2. Présentation des équipements de la station. …............................................................................................
2.3. Présentation les longueurs et section de câble …......................................................................................
III. Les caractéristiques des Equipement de pompage installé à la station …..................................................
3.1 les motopompes installés à la station…...................................................................................................
3.2. Détermination de courant d’emploi pour chaque groupe moto-pompe…....................................................
3.3. Généralités sur chute de tension …..............................................................................................................
3.4. Seuils des chutes de tension …....................................................................................................................
Chapitre 3 : Etude des protections du réseau électrique de la station de pompage. …........................................

II. Présentation
….................................................................................................................................................
II. Courant de court-circuit ….............................................................................................................................

Année universitaire 2018/2019


Résumé :
Ce travail a été réalisé dans le cadre d’un projet de fin d’études au sein du
groupe OCP SA, Il consiste à dimensionner une station de pompage
d’eau en terme de puissance électrique consommée, En premier lieu, nous
allons procéder au redimensionnement des différents équipements de
pompage de la station NZALAT à savoir :
o Les pompes immergées (pompe de forage).
o Les pompes centrifuges (pompe accélératrice).
o Pompes vides caves.
o Compresseur de l’anti bélier.
o Autres installation électriques (climatiseurs, plaques chauffante,
lampes…)
Ensuite, on va déduire les puissances optimales des deux transformateurs
(réseau électrique 525V et 400V).
Finalement on va construire un tableau comparatif de la puissance
consommée actuellement et celle déduit de notre étude dimensionnelle.
 Mots clés :
 Pompage, pompe de forage, pompe accélératrice, redimensionnement,
puissance consommée, puissance souscrite, dépassement de puissance.

Caractéristiques des équipements Installés :


Les pompes et compresseur :
Equipemen Désignation Puissance Courant (A) Tension (V)
t (kw)
F1 Forage N°1 93 142 525
F2 Forage N°2 93 142 525
F3 Forage N°3 93 142 525
F4 Forage N°4 18.5 41 400
Acc1 Pompe accélératrice N°1 55 78 525
Acc2 Pompe accélératrice N°2 75 107 525
Acc3 Pompe accélératrice N°3 75 107 525
Comp. Compresseur d’air 2.2 4.4 400

Année universitaire 2018/2019


V-cave Pompe vide cave 8.5 12 525

Chapitre 2 : Le réseau électrique de la station de pompage


I. Présentation de la station de pompage NZALAT :
La station de pompage NZALAT LAADAM est une station de production de
l’eau potable pour assurer l’alimentation de la cité OCP aussi que le carreau
industriel.
Cette station est constituée de 04 Forages (puits) alimentant une bâche de
capacité 300 m3, et 03 pompes centrifuges (horizontales) installées en charges dans
un local technique situé au niveau inférieur de la bâche alimentaire.
Ci-dessous synoptique du réseau eau

Année universitaire 2018/2019


II. Redimensionnement de la station :

Afin de redimensionner de la dite installation on procède aux étapes suivante :


 Lister les charges installées ;
 Etablissement d’un schéma électrique de distribution des charges avant le
redimensionnement ;
 Calcul de la puissance globale de l’installation pour déterminer la puissance
des deux transformateurs ;
 Calcul des courants dans les différents circuits, ensuite choisir les calibres
normalisés juste supérieurs : 1, 2, 3, 4, 5, 6, 10, 16, 20, 25, 32, 40, 50, 63, 80, 100,
125, 160, 200, 250, 320, 400, 500, 630, 800, 1000, 1250A,… etc ;
 Choisir la section de câble selon les sections normalisées ;
 Etablissement d’un schéma électrique de distribution des charges après le
redimensionnement ;
1) Liste des charges installées  :
Pompe Forage N°1 ;
Pompe Forage N°2 ;
Pompe Forage N°3 ;
Pompe Forage N°4 ;
Pompe accélératrice N°1 ;
Pompe accélératrice N°2 ;
Pompe accélératrice N°3 ;
Eclairage extérieur ;
Local chloration ;
Palan électrique ;
Compresseur d’air ;
Eclairage intérieur ;
Prises de courant ;
Chauffe-eau ;
Climatiseurs.

Année universitaire 2018/2019


2) schéma de distribution des charges

Année universitaire 2018/2019


3) Calcule de la puissance globale de l’installation pour déterminer la puissance
des transformateurs

Année universitaire 2018/2019


3.1) Dimensionnement des groupes motopompes  :
3.1.1) Comment dimensionner une pompe centrifuge :
Pour procéder au dimensionnement de chaque pompe on calcule sa
puissance hydraulique par la formule ci-dessous :

I 𝑷=Qv*𝝆*= H*Qv/ η

Qv : débit volumique en m3/s.


𝝆 : densité de l’eau (liquide pompé).
g : la pesanteur (=9.81m/s²).
H : la hauteur manométrique totale (m)

Le débit :
Le débit Qv fourni par une pompe centrifuge est le volume refoulé pendant l’unité
de temps. Il s’exprime en mètres cubes par seconde (m3 /s) ou plus pratiquement en
mètres cubes par heure (m3/h).

La hauteur manométrique :
On appelle hauteur manométrique H d’une pompe, l’énergie fournie par la pompe
par unité de poids du liquide qui la traverse. Elle s’exprime en mètre (m).
La Hauteur manométrique varie avec le débit et est représentée par la courbe
caractéristique H=f(Qv) de la pompe considérée (donnée constructeur).
La puissance hydraulique :
La puissance hydraulique communiquée au liquide pompé est liée au 2 grandeurs
précédentes. Si Qv est le débit volume du fluide, sa masse volumique et H la hauteur
manométrique de la pompe, la puissance hydraulique P est donnée par : Le débit d’une
pompe est souvent donné en en m3/h. Il faut donc le convertir en m3/s avant de l’utiliser
dans le calcul de puissance

Afin de s’aligner avec des unités pratiques (usuelles).


On transforme la formule I à une formule pratique permettant un calcul aisé de la
puissance hydraulique.

Année universitaire 2018/2019


Démonstration :
Phyd= F*v Phyd : puissance hydraulique en watt
=p*S*v p : pression (pascal) ; S : section (m²) ; v : vitesse (m/s)
= 𝝆*𝒈*𝑯*Qv Qv : débit volumique (m3/s)
=1000*9.81*H*Qv H : hauteur manométrique (m)
=9810*H*Qv
=9810*H*Qv/3600 pour avoir Qv en m3/h
=2.725*H*Qv/1000 pour avoir P en Kw
=H*Qv/367
Ainsi on calcul la puissance absorbée de la pompe ayant un rendement η
donné comme suit : Pa : absorbée en Kw
H : hauteur manométrique en m
Qv : Débit volumique en m3/h.
Pa=Phyd/ η η : rendement de la pompe
= H*Qv/ η *367

𝑷a = H*Qv/ η *367

N.B : Cette formule pratique sera appliquée pour dimensionner toutes


les pompes installées à la station de pompage NZALAT.

3.1.2) Dimensionnement des pompes de forage :

Forage N°1 :
Les caractéristiques du forage N°1 installée :
Q(m3/h) = 50 m3/h
HMT (mce) = 120 m
Considérons un rendement η de 0.65 pour la pompe F1
En appliquant directement la formule 𝑷a = H*Qv/ η *367
On aura :

Année universitaire 2018/2019


La puissance électrique utile du moteur
Pa =50*140/367*0.65=29Kw de cette pompe sera de : 30 Kw

Forage N°2 :

Les caractéristiques du forage N°2 installée :


Q(m3/h) = 35 m3/h
HMT (mce) = 150 m
Considérons un rendement η de 0.65 pour la pompe F2
En appliquant directement la formule 𝑷a = H*Qv/ η *367
On aura :
La puissance électrique utile du moteur
Pa =35*150/367*0.65=22Kw de cette pompe sera de :22 Kw

Forage N°3 :

Les caractéristiques du forage N°3 installée :


Q(m3/h) = 50 m3/h
HMT (mce) = 145 m
Considérons un rendement η de 0.65 pour la pompe F3
En appliquant directement la formule 𝑷a = H*Qv/ η *367
On aura :
La puissance électrique utile du moteur
Pa =50*145/367*0.65=30,4Kw de cette pompe sera de : 30 Kw

Forage N°4 :

Les caractéristiques du forage N°4 installée :

Année universitaire 2018/2019


Q(m3/h) = 30 m3/h
HMT (mce) = 150 m
Considérons un rendement η de 0.65 pour la pompe F4
En appliquant directement la formule 𝑷a = H*Qv/ η *367
On aura :

La puissance électrique utile du moteur


Pa =30*150/367*0.65=18,8Kw de cette pompe sera de : 18.5 Kw

3.1.3) Dimensionnement des pompes accélératrices (pompes de


surfaces) :
Afin de pouvoir dimensionner les pompes accélératrices de
surface alimentant le château principale nous avons besoins de deux
donnés principales à savoir :

Indicateurs de consommation totale eau potable


2018/2019
114,533115,388
120,000.00
101,668 103,014
98,135 96,645
100,000.00 93,159
87,224 83,356 85,119
77,706 81,194
80,000.00

60,000.00

40,000.00

20,000.00

-
May-18Jun-18 Jul-18 Aug-18 Sep-18 Oct-18 Nov-18Dec-18 Jan-19 Feb-19Mar-19Apr-19

o Besoin total eau potable (voir graphe ci-dessous).

o HMT : Hauteur manométrique totale déduite de profil en


long de la conduite liant la station NZALAT de pompage
et le château principal est évalué à 80 mce.

4000m3/jr
Année universitaire 2018/2019
Besoin global en eau potable durant la période estival

Besoin global en eau potable durant la période hivernal


2700m3/jr
Pour assurer le besoin en eau potable il nous faudra une pompe de débit
135m3/h. en effet, 20 heures de fonctionnement de cette pompe nous
assurera notre besoin journalier durant l’hiver, et pour la période d’été
deux pompes assureront notre besoin, (15h/jour *2pompes)

Concèderons un rendement de 0.65 pour lesdites pompes et en


appliquant directement la formule
𝑷a = H*Qv/ η *367

On a Pa = (80*135)/ (0.65*367)

La puissance électrique utile du moteur des 03


Soit Pa=45 Kw pompes de surface seront de 45KW

3.1.4) Calcul de la puissance du transformateur TR2 22kv/525v :


P installé P utilisée P installée
Utilisation Ku Ks Kr P Total (kw)
(Kw) (Kw) (Kw)
   
forage 1 30 0,75 22,5  
   
forage 2 22 0,75 16,5  
   
forage 3 30 0,75 22,5 169,125 136,15
   
BT HT
Acc 1 45 0,75 33,75 0,7 118,3875 1,15
   
Acc2 45 0,75 33,75  
   
Acc 3 45 0,75 33,75  
   
V cave 8,5 0,75 6,375  
               

Du tableau ci-dessus on déduit que la puissance apparente de transformateur


22Kv/500v est de 136.14/0.86 =158.30 KVA

Soit : S = 160 KVA

Année universitaire 2018/2019


3.1.5) Calcul de la puissance du transformateur TR1 22kv/400v :
Utilisati P Ku P Ks P Ks P Kr P Total (kw)
on installé utilisée installé installé
(Kw) (Kw) e (Kw) e (Kw)
   
Eclairag 6 1 6 1 6 0,9 1,15  
e
extérieu
r.
   
Local 6 0,75 4,5 0,7  
chlorati
on.
   
Palan 3,3 0,75 2,475 15,75 42,97
électriq
ue.
   
Compre 2,2 0,75 1,65 37,37 BT
sseur HT
d’air.
   
Forage 18,5 0,75 13,875  
4
   
Eclairag 4 1 4 1 4  
e
intérieu
r
   
Prises 33 1 33 0,16 5,28  
de
courant
   
Chauffe 1,5 1 1,5 1 1,5  
-eau.
   
Climati 9 1 9 1 9  
seurs
                 
 

Du tableau ci-dessus on déduit que la puissance apparente de


transformateur 22Kv/400v est de 42.97/0.86 = 49.97 KVA

Soit : S = 50 KVA

Année universitaire 2018/2019


4) Calcul des courants dans les différents circuits.

Exemple d’un circuit à calculer selon la méthode NFC 15-100 §523.7 pour pompe
accélératrice 1 :
Un câble polyéthylène réticulé (PR) triphasé + terre est tiré sur un chemin de
câbles perforé, jointivement avec 3 autres circuits (3 câbles multiconducteurs
triphasés). La température ambiante est de 45°C et le câble véhicule 64.7 ampères
par phase (Ib) et de 45m de longueur.
Mode de pose  :
Les tableaux ci-dessous permettent de déterminer la section des conducteurs
de phase d’un circuit. Ils ne sont utilisables que pour des canalisations non
enterrées et protégés par disjoncteur. Pour obtenir la section des conducteurs
de phase, il faut :
- Déterminer une lettre de sélection qui dépend du conducteur utilisé et de
son mode de pose.
- Déterminer un coefficient K qui caractérise l’influence des différentes
conditions d’installation. Ce coefficient K s’obtient en multipliant les
facteurs de correction K1, K2 et K3 :
 Le facteur de correction K1, prend en compte le mode de pose.
 Le facteur de correction K2, prend en compte l’influence mutuelle des
circuits placés côte à côte.
 Le facteur de correction K3, prend en compte la température ambiante
et la nature de l’isolant.

Année universitaire 2018/2019


Année universitaire 2018/2019
D’où on déduit le coefficient K comme suit :

K = K1 x K2 x K3 x Kn x Ks = 1 x 0.77 x 0.87 x 1 x 1

= 0.6699
Alors : Iz’ = Iz/K = 63/0.6699 avec Iz = 63A (valeur normalisée
Ib=64.7A)
Donc Iz’ = 94.04 A Soit : Iz’ = 100A (valeur normalisée)

Année universitaire 2018/2019


Dans notre cas : la longueur du câble d’alimentation de ladite pompe est de 45m
or le tableau ci-dessus présente la chute de tension en % pour une longueur de
100m
D’où :
100m avec section de 16mm² donne une chute de 5%
45m avec section de 10mm² donne une chute de 3.6%
N.B :
u% = (45 x 8)/100 = 3.6%

Pour le cas des pompes de forage ayant une canalisation souterraine dont la
lettre de sélection est D d’où d’autres coefficients entrent en jeu :
K = K4 x K5 x K6 x K7 x Kn x Ks
On exploite le tableau ci-dessous par la même procédure que l’exemple traité de
la pompe accélératrice 1 :

Année universitaire 2018/2019


Année universitaire 2018/2019
Tableau récapitulatif des éléments de calcul de la section de chaque départ
moteur  :

Départ Ib (A) L (m) Iz (A) K Iz’(A) S1(mm2 Δu1(%) S2 (mm2) Δu2(%)


) (100m) (L)
F1 43 180 50 0.798 63 10 9 16 5.76
F2 32 450 32 0.798 40 6 23.85 25 6.3
F3 43 230 50 0.798 63 10 11.5 16 7.36
F4 26.5 220 32 0.798 40 6 11.66 10 7.04
ACC1 64.7 45 63 0.669 100 10 8 10 3.6
ACC2 64.7 40 63 0.669 100 10 8 10 3.2
ACC3 64.7 35 63 0.669 100 10 8 10 2.8
V- 12.22 45 16 0.669 25 2.5 5 2.5 2.25
cave

Année universitaire 2018/2019


5) Schéma électrique de distribution des charges après le redimensionnement 

Année universitaire 2018/2019


Partie B : Etude et réalisation d’une communication pour surveiller le niveau de château
principal en permanence :
Nous disposons d’une station de reprise appelée château principal
équipée par :
 Réservoir d’eau d’une capacité de 2500 m3 dont le niveau varie entre
0 et 5m de hauteur ;
 Radar de niveau ultrason de marque ENDRESS HAUSSER FMR244
ayant un signal de sortie de 4-20 mA.
Nous voulons réaliser un suivi de niveau via ARDUINO tout en
permettant de nous envoyer un SMS sur un GSM chaque heure.
Toutefois, si le niveau atteint un niveau bas (3m) nous envoyer un
message instantané « niveau bas critique » et si le niveau atteint 4.85m
nous envoyer un message instantané « niveau trop plein ».

Avec timer 0 :


Le timer0, sur 8 bits, utilisé par les fonctions delay(), millis() et micros(). Il commande
également des PWM sur les broches 5 et 6.

Détermination de Tf : (période de la fréquence générée)

Tf=Tosc ∗ div ∗ (2n −N)

Avec n=8 ou 16 suivant qu'il s'agit d'un timer 8 ou 16 bits


Attention, il s'agit d'une équation à deux inconnues Prescaler,N .
Pour résoudre cette équation, on fixe N=0.

 Deviseur =Div 256 et TCNT0=256

Fosc Td Tf
%256 TCNT0

Td =div x 62.5 ns = 16 µs.


Tf = 256 * Td =256 * 16 µs = 4096 µs = 4.096 ms soit 4ms

 Deviseur = Div 1024 ET TCNT0 = 256

Fosc Td Tf
%1024 TCNT0

Année universitaire 2018/2019


Td =1024 x 62.5 ns = 64 µs.
Tf = 256 * Td =256 * 64 µs = 16384 µs = 16.384 ms. Soit 16ms

Pour avoir Tf = 3600 s


Tf = x * T d
Alors x = 3600*1000000/64 = 56.25 *106 >>>>256 (nombre très grand)

Par suite on doit opter au timer 1 qui dispose de 16 bits.

Avec timer 1 :


Le timer1, sur 16 bits, qui compte de 0 à 65535 (0 à FFFF en hexadécimal) et qui est utilisé par la
bibliothèque Servo ou bien pour de la PWM sur les broches 9 et 10.

 prédeviseur = Div 1024 ET TCNT1 = 65 536

Fosc Td Tf
%1024 TCNT1

Td =1024 x 62.5 ns = 64 µs.


Tf = 65536 * Td =65536 * 64 µs = 4 194 304 µs = 4.194 s. Soit 4s
Pour avoir Tf = 3600 s
Tf = x * T d
Alors x = 3600/4 = 900 fois

Conclusion :

La comparaison avec une valeur intermédiaire fixée à 15 625.

Année universitaire 2018/2019


Une fonctionnalité des timers avec un registre supplémentaire appelé OCRA
(output compare registre), nous permet de comparer la valeur TCNT en évolution
avec une valeur fixe calculé précédemment (OCR1A= 62500/4),cette comparaison
nous permettra d’activé un autre flag TOC en fonction de la valeur 15 625.
Donc dans ce timer nous aurons TCNT qui augmente de 0 à 216 ,et lorsque on
obtient l’égalité avec le registre OCR à la sortie de TOV et TOC on on trouve une
petite logique qui permet d’activer le signal lorsque on a le TOC et le desactiver
lorsuq’on le TOV,par suite on obtient des impulsions d’une loguer qu’on peut
modifier qui se répètent en fonction des bits de controles des registre TCCR

Registre TCCR1B (Timer/Coounter1 Controle Register B)

ICNC1 : Input Capture Noise Canceler Ce bit mis à 1 active le suppresseur


de bruit sur l’entrée de capture. Quand le suppresseur de bruit est activé, l'entrée
ICP1 est filtrée. La fonction de filtre exige quatre échantillons successifs estimés
égaux pour que la valeur soit pris en charge, ce qui engendre donc un retard de
quatre cycles d'horloge du Timer1.

ICES1 : Input Capture Edge Select Ce bit détermine le front sur lequel
l’entrée ICP1 est employé pour déclencher un événement de capture. Quand le bit
est mis à 0, un front descendant (négatif) est employé comme déclencheur et quand
il est mis à 1, un front montant (positif) déclenchera la capture. Quand une capture
est déclenchée selon ICES1, la valeur inverse (complémentaire) est copiée dans le
registre de capture ICR1. L'événement mettra aussi le drapeau ICF1 à 1 et cela peut
être employé pour faire une demande d’interruption. Quand ICR1 est employé
comme valeur supérieure, ICP1 est débranché et par conséquent la fonction de
capture d'entrée est mise hors de service.

Année universitaire 2018/2019


WGM13&12 :

CS12 & CS11 & CS10 :

Année universitaire 2018/2019


Pour faire choix de périvisuel à 1024 on met CS12 à 1, CS11 à 0 et CS10 à 1

III. Les logigrammes :


1. Logigramme d’interruptions pour les 2 compteurs :

INTER

Compt1= Compt1+1

Compt2= Compt2+1

Compt1=40

Travail Année universitaire 2018/2019


Compt1 0

Fin INTER

2. Contrôle de niveau du château pour commande pompe :

Travail

Lire level

(level < NB
ou level > F
NH)

Niv <
NB

Mess : ‘’niveau bas’’ Mess : ‘’niveau haut’’

Année universitaire 2018/2019

Carte : SIM1 (Arduino 1)


Z

Envoi Message

Retour

3. Contrôle de niveau du château pour communication d’état par


SMS :

Loop Niveau

Compt2>=509

Année universitaire 2018/2019


Compt2 0
Message : « niv= » level

Carte SIM2

Z F

4. Logigramme de la commande de la pompe :


Lecture LOOP

Lire message reçu

Mess= ‘’niveau Année universitaire 2018/2019


bas’’ ou
mess=’’niveau
haut’’
Mess
=’’niveau
bas’’

Ordre de marche Pompe Ordre d’arrêt Pompe

Suppression message

Fin Lecture LOOP

IV. Schémas d’implantations :


1. Schémas pour station de reprise (commande pompe) :
Année universitaire 2018/2019
RV1(2)
LCD1
LM016L
RV1 TestPin www.TheEngineeringProjects.com

GND

50%
PIN 3

Trigger
PIN 2
VDD
VSS

VEE

Echo
1k
RW
RS

Gnd
D0
D1
D2
D3
D4
D5
D6
D7

+5V
E

VCC
1
2
3

4
5
6

7
8
9
10
11
12
13
14
VCC
RV2(2)
Power BTN
RV2
NEXT www.TheEngineeringProjects.com
10
11
12
4
5
6
7
9

STATUS
U1
50%

P0
P1
P2
P3
P4
P5
P6
P7

SIM800L
SIM900D
PCF8574
ON
SDA
SCL

1k
INT

A0
A1
A2

TXD
RXD
S2-1041Y-Z097C
14
15

13

1
2
3

PIN 5
PIN 4
CE0980
VCC

SIM Card
ON
Reset BTN

PIN 13
www.TheEngineeringProjects.com

1. Schémas pour station de reprise (commande pompe) :R1 AREF


PIN 13 PB5/SCK
13 220R

2. Schémas
VCC
pour station de reprise (commande pompe) :
RESET PB4/MISO
~PB3/MOSI/OC2A
12
11

PIN 11

PIN 10
~PB2/SS/OC1B 10
VCC
PIN 13

3. Schémas
GND
pour station de reprise (commande pompe) : DEMARRAGE
GND ~ PB1/OC1A 8
GND

PB0/ICP1/CLKO
pompe
ATMEGA328P-PU
1121

7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 ~ PD5/T1 5
A1
PC1/ADC1 4
A2 PD4/T0/XCK
A3
PC2/ADC2
~ PD3/INT1
3 PIN 3 POMPE
PIN 4 A4
PC3/ADC3
PD2/INT0
2 PIN 2
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PIN 5 PC5/ADC5/SCL
RX PD0/RXD
0
12V 12V

RL1
OMIH-SH-105D

Année universitaire 2018/2019


2. Schémas pour château (communication niveau) :

LCD2 SONAR2
LM016L ULTRASONIC SENSOR

TestPin www.TheEngineeringProjects.com
VDD
VSS

VEE

RW

Trigger
RS

D0
D1
D2
D3
D4
D5
D6
D7
E

Echo
Gnd
+5V
1
2
3

4
5
6

7
8
9
10
11
12
13
14
VCC

10

12
11

VCC

GND
PIN 2
PIN 3
4
5
6
7
9
VCC

U1
P0
P1
P2
P3
P4
P5
P6
P7

RV1 PCF8574 GSM2


Power BTN
NEXT www.TheEngineeringProjects.com
SDA
SCL

INT
50%

A0
A1
A2

STATUS
14
15

13

1
2
3

SIM800L
1k

ARD2
ON SIM900D PIN 7
A5
A4

TXD
RXD PIN 8
S2-1041Y-Z097C
ON
Reset BTN

www.TheEngineeringProjects.com

AREF CE0980
13
PB5/SCK
12
RESET PB4/MISO
PIN 11
VCC
~PB3/MOSI/OC2A
~PB2/SS/OC1B
11
10 PIN 10 SIM Card
VCC 9
GND ~ PB1/OC1A
GND 8 PIN 8
PB0/ICP1/CLKO SIM900D
PIN 10 PIN 11
ATMEGA328P-PU
1121

7 PIN 7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
A4 PC2/ADC2 3
A5
A3
PC3/ADC3 ~ PD3/INT1
2 PIN 3 R1 R2
A4 PD2/INT0 220R 220R
PC4/ADC4/SDA 1 PIN 2
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO
D1 D2
NIVEAU BAS NIVEAU HAUT

Année universitaire 2018/2019


V. Programmes Arduinos :
1. Programme Arduino pour station de reprise (commande pompe) :

/* demarrer une Pompe par SMS


Pour demarrer la Pompe : recevoir niveau bas
pour arreter la Pompe : recevoir niveau haut
*/

/* 1) Zone 1 : les déclarations */


// 1.a) Les bibliothèques et création d'objets

#include <SoftwareSerial.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
float NTB=5, NB=6;
float duration=0, distance=0, level=0;
int Txd = 10, Rxd = 11; // SIM800
SoftwareSerial gsm(Txd, Rxd); // RX, TX : il faut relier Rx de
l'Arduino au Tx du SIM800
//#define gsm Serial // Si utilisation MEGA

Année universitaire 2018/2019


// 1.c) Les variables globales
int pompe =13; //( simulation de la pompe)
String reponse, numeroSMS, SMS;
unsigned long t0;
int k=1,lon=70; //( interrupteur à la place d'un capteur de niveau=)
/* 2) Zone 2 : Initialisation (le setup) */
void setup() {
lcd.init(); //initiation de LCD
lcd.backlight();//open the backlignt
pinMode(2, OUTPUT);
pinMode(3, INPUT);
pinMode(pompe,OUTPUT);
pinMode(k,INPUT);
Serial.begin(9600);
gsm.begin(9600);
delay(1000);
/* Serial.println("Initialisation...");
gsm.println("AT");
while (!message("OK",1000,0)) gsm.println("AT");
gsm.println("AT+CNUM"); // Affiche n° de la carte SIM
utilisée
message("OK",20000,1);
Serial.println("Qualite reseau : ");*/
gsm.println("AT+CSQ"); // Qualité du réseau, pb si CSQ = 0
message("OK",10000,1);
gsm.println("AT+CMGF=1"); // Mode Texte
message("OK",1000,0);
gsm.println("AT+CMGD=1,4"); // effacer les SMS en mémoire dans
la carte SIM
message("OK",2000,0); // car on lit toujours le message N°1 de la
carte SIM...
}

Année universitaire 2018/2019


/* 3) Zone 3 : le Programme Principal */
void loop() {

digitalWrite(2, HIGH);
delayMicroseconds(1000);
digitalWrite(2, LOW);

duration = pulseIn(3, HIGH);


distance = (duration / 2) /29.11;
level = (26-distance);
if (level>=NTB){
lcd.setCursor(0, 0);
lcd.print("niveau reservoir");
Serial.println("distance");
lcd.setCursor(5, 1);
lcd.print(level);
lcd.setCursor(9, 1);
lcd.print(" cm");
//delay(1000);
}
else
{
lcd.setCursor(0, 0);
lcd.print("niv. insuffisant");
lcd.setCursor(0, 1);
lcd.print(" <05.00cm ");
}
if (message("+CMTI:",20000,0)) LireSMS(); // Si nouveau SMS
disponible SIM800 envoie +CMTI:

if (level<=NB) {
digitalWrite(pompe, 0);
}

Année universitaire 2018/2019


}
/* 4) Zone 4 : les sous programmes (ou fonctions) */

void LireSMS()
{
gsm.println("AT+CMGF=1"); // Mode Texte
message("OK",1000,0);
gsm.println("AT+CMGR=1"); // Lit le premier message disponible
sur la carte SIM
message("OK",2000,1);
// Récupérer N° de telephone emetteur pour lui répondre
int test=reponse.indexOf("+212");

numeroSMS = reponse.substring(test,test+15);
numeroSMS = numeroSMS.substring(4,13);
/*Serial.println("SMS recu depuis : " +numeroSMS);
delay(1000);*/
// Analyse du message reçu
if (reponse.indexOf("niveau bas")>0 && level>NB) {
SMS = "Ordre recu : demarrer pompe !";

digitalWrite(pompe,1);}

if (reponse.indexOf("niveau haut")>0){
SMS = "Ordre recu : arreter pompe !";
digitalWrite(pompe,0);}
gsm.println("AT+CMGD=1,4"); // effacer les SMS de la Carte SIM
message("OK",1000,0);
Serial.println(SMS);
Serial.println("");

// Envoyer la confirmation de l'ordre par SMS


Serial.println("Envoi message confirmation");

gsm.print("AT+CMGS=\""); gsm.print(numeroSMS);

Année universitaire 2018/2019


//gsm.println("\"");gsm.println();

gsm.println("AT+CMGS=\""+numeroSMS+"\"");//GPRS.write("AT+C
MGS=\"667195948\"\r");

message(">",2000,0);
gsm.println(SMS);
gsm.println((char)26); // Caractère de fin 26 <Ctrl-Z>
gsm.println("");
message("+CMGS:",10000,1);
}

/* Sous Programme message(attente, timeout, affiche)


Après avoir envoyé une instruction AT au module SIM800,celui-ci
répond.
message("OK", 1000,1) :
Vérifie que la réponse contient le terme "OK" (attente)
Il attend au maximum 1000ms (timeout) la réponse
Affiche (affiche=1) la réponse et le temps mis pour l'obtenir
ou n'affiche pas (affiche=0) sauf si la réponse attendue n'est pas
correcte
renvoie vrai si le message contient OK en moins de 1000 ms
*/
boolean message(String attente, unsigned int timeout, boolean
affiche) {
t0 = millis();
reponse="";
while (millis() - t0 < timeout) {
while(gsm.available()) reponse.concat(char(gsm.read()));
if (reponse.indexOf(attente)>0){ // Lit encore 100 ms le port
série
delay (100); // pour être sur de ne rien louper...
while(gsm.available()) reponse.concat(char(gsm.read()));
break;}}

Année universitaire 2018/2019


if (affiche || reponse.indexOf(attente)==-1 ) {
Serial.print("Attente = "+ attente +" "+ reponse.indexOf(attente)+"
duree ");
Serial.print(millis()-t0); Serial.println(" ms");
Serial.println(reponse);}

if (reponse.indexOf(attente)>0) return true;


else return false;
}
2. Programme Arduino pour château (communication niveau) :
//**********************

#include <SoftwareSerial.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
SoftwareSerial GPRS(7, 8); //7 = TX, 8 = RX
LiquidCrystal_I2C lcd(0x27, 16, 2);
//**********************************************
unsigned char buffer[128]; //declarer une variable buffer(tableau)
int count=0;// nombre de caracteres utilsé pour le buffer
String NUMSMS;
unsigned int compteur;

String texte;
int compteur1,compteur2;
float Nb=6, Nh= 15;
float duration=0, distance=0, level=0 ;

void setup()
{
lcd.init(); //initiation de LCD
lcd.backlight();//open the backlignt
pinMode(2, OUTPUT);
pinMode(3, INPUT);
pinMode(10, OUTPUT);

Année universitaire 2018/2019


pinMode(11, OUTPUT);
noInterrupts();
TCCR1A = 0;
TCCR1B = 0b00001101;// div/1024
TIMSK1 = 0b00000010;
TCNT1 = 0;
OCR1A = 62500/4;
interrupts();

Serial.begin(9600);
GPRS.begin(9600); // choix de la vitesse de GPRS

}
void envoi_message(String txt,String NUM_tel)
{
GPRS.write("AT+CMGF=1\r"); //choix du type de message de type texte
delay(1000);
//"AT+CMGS=\""+numeroSMS+"\""
GPRS.println("AT+CMGS=\""+NUM_tel+"\""); // numero de telephone
auquel sera transmis le message
delay(2000);
GPRS.print(txt); // message
delay(2000);
GPRS.write(0x1A);
Serial.println("message envoyé");

//send a Ctrl+Z (end of the message)


delay(1000);
}
void loop()
{
digitalWrite (2, HIGH);
delayMicroseconds(1000);
digitalWrite (2, LOW);
duration = pulseIn(3, HIGH);
distance = (duration / 2) /29.11;
level = (26-distance);
if (level>=Nb){

Année universitaire 2018/2019


lcd.setCursor(0, 0);
lcd.print("niveau reservoir");
Serial.println("distance");
lcd.setCursor(5, 1);
lcd.print(level);
lcd.setCursor(9, 1);
lcd.print(" cm");
delay(1500);
}
else
{
lcd.setCursor(0, 0);
lcd.print("niv. insuffisant");
lcd.setCursor(0, 1);
lcd.print(" <05.00cm ");
}
if (GPRS.available()) // test si le module est prêt
{
//
while(GPRS.available()) // tant que le module sim est prêt faire
{
// reading data into char array
buffer[count++]=GPRS.read();
// writing data into array
if(count == 128) break ;
}
Serial.write(buffer,count);
// if no data transmission ends, write buffer to hardware serial port
clearBufferArray();// vider le buffer

count = 0; // set counter of while loop to zero


}
if (level<Nb)
{
delay(2500);
digitalWrite (10, 1);}
else {
digitalWrite (10, 0);}

Année universitaire 2018/2019


if (level>Nh)
{
delay(2500);
digitalWrite (11, 1);}
else digitalWrite (11, 0);
}

void affiche(String texte)


{
Serial.println(texte);
}

ISR(TIMER1_COMPA_vect)
{
compteur1++;
compteur2++;
Serial.print("compteur1=");Serial.print(compteur1);
Serial.print(" compteur2=");Serial.print(compteur2);
Serial.print(" niveau=");Serial.println((float)level);
if (compteur1>=40) //10mn
{
if((level<Nb)||(level>Nh))
{
if (level<Nb)
{
texte="niveau bas";
}
else
{
texte="niveau haut";
}
NUMSMS="+212648736618";
envoi_message(texte,NUMSMS);

}
compteur1=0;

Année universitaire 2018/2019


}
if (compteur2>=509) //
{

texte="nivau= ";
texte.concat(level);
NUMSMS="+212662137687";

envoi_message(texte,NUMSMS);

compteur2=0;
}

}
void clearBufferArray(){
// function to clear buffer array
for (int i=0; i<count;i++){
buffer[i]='\0';
// clear all index of array with command NULL
}

3. Illustration sur la réalisation de communication par ARDUINO :

a. Illustration matériel utilisés :

b. Liste De Matériel à installer au château (système de communication) :

Année universitaire 2018/2019


Boitier contenant les composants.
01 ARDUINO UNO + son boitier transparent.
01 AFFICHEUR LCD 16X02 + I2C
02 ALIMENTATIONS 5V/2A
01 SIM 800L + Antenne.
01 CARTE SIM
02 BORNIERS (03 bornes)
01 BORNIER (02 bornes)
01 Capteur ultrasonique HC-SR04.
01 Circuit imprimé double face avec trous.
01 Interrupteur.
02 LEDs.
01 Câble USB avec fiche B.
01 Rallonge multiprises.
01 Relais 5V - 10A
01Prise d’alimentation DC mâle
Les câbles Dupont.

c. Liste De Matériel à installer à la station de reprise (système de


communication) :

Boitier contenant les composants.


01 ARDUINO UNO + son boitier transparent.
01 AFFICHEUR LCD 16X02 + I2C
01 ALIMENTATIONS 5V/2A
01 ALIMENTATIONS 12V/2A

Année universitaire 2018/2019


01 SIM 800L + Antenne.
01 CARTE SIM
02 BORNIERS (03 bornes)
01 BORNIER (02 bornes)
01 Capteur ultrasonique HC-SR04.
01 Circuit imprimé double face avec trous.
01 Interrupteur.
01 LED.
01 Câble USB avec fiche B.
01 Rallonge multiprises.
01 Relais 5V - 10A
01 Pompe à eau 240l/h - 12 V
01Prise d’alimentation DC mâle
Tuyaux flexibles pour pompe
Les câbles Dupont.

Année universitaire 2018/2019

Vous aimerez peut-être aussi