Vous êtes sur la page 1sur 16

UNIVERSITE D’ABOMEY-CALAVI

*-*-*-*-*-*-*
ECOLE POLYTECHNIQUE D’ABOMEY-CALAVI
*-*-*-*-*-*-*
ECOLE DOCTORALE DES SCIENCES DE L’INGENIEUR
*-*-*-*-*

MASTER RECHERCHES EN GENIE ELECTRIQUE

COURS : SYSTEMES DE MISE A LA TERRE

TPE

Réalisé par : Enseignant :


YETONGNON Lino Dr. Ing. HOUNDEDAKO Vincent

ANNEE ACADEMIQUE : 2018 - 2019


1- Objectif

Ce TP a pour objectif de simuler au moyen d’un code MATLAB les différentes formules adaptées aux
formes de prises de terre vues en cours.

2-Prise de terre hémisphérique

La formule utilisée est définie comme suit :


𝜌
𝑅=
2𝜋𝑟ℎ
Dans le code MATLAB nous avons défini plusieurs valeurs de la résistivité

Code MATLAB

function hemisphere()
clc
cla
clear all
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Cette fonction permet de déterminer la résistance de terre hémisphérique
% produite en fonction du rayon de l'hémisphère
% le rayon de l'hémisphère varie entre 25 cm et 3 mètres
rho=[25,250,350,750,1000,2500,5000,10000];
rh=linspace(0.25,3);
ohm_r=zeros(length(rh),length(rho));
for i=1:length(rho)
for j=1:length(rh)
ohm_r(j,i)=myFonc(rho(i),rh(j));
end
plot(rh,ohm_r(:,i))
grid on
xlabel('Rayon rh (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R(rh)'))
hold on
end
legend(sprintf('rho= %d Ohm.metre',rho(1)),sprintf('rho= %d
Ohm.metre',rho(2)),sprintf('rho= %d Ohm.metre',rho(3)),sprintf('rho= %d
Ohm.metre',rho(4)),sprintf('rho= %d Ohm.metre',rho(5)),sprintf('rho= %d
Ohm.metre',rho(6)),sprintf('rho= %d Ohm.metre',rho(7)),sprintf('rho= %d
Ohm.metre',rho(8)))
end
function resistance=myFonc(ro,rh)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Argument d'entrée
% ro : résistivité du sol
% rh : rayon de l'hémisphère
% Argument de sortie
% résistance : Résistance de terre calculée
resistance=ro/(2*pi*rh);
end

3-Prise de terre en piquet avec un piquet de terre

On a la formule suivante :
𝜌 4𝐿
𝑅= (𝑙𝑛 ( ) − 1)
2𝜋𝐿 𝑟
Pour cette formule nous aurons à représenter pour différentes valeurs de la résistivité les variations de la
résistance de prise de terre en fonction de la longueur du piquet d’une part et les variations de la
résistance de prise de terre en fonction du rayon du piquet :
Code MATLAB

function piquet2()
clc
clear all
cla
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Cette fonction permet de visualiser la courbe de la résistance de terre
% relative à un piquet de terre en fonction du rayon du piquet ou de la
% longueur du piquet
%Arguments:
%rho : résistivité du sol
%l : longueur du piquet
%r: rayon du piquet
%r1 : résistance du sol en fonction de la longueur du piquet
%r2 : résistance du sol en fonction du rayon du piquet
r=linspace(5e-3,50e-3);
l=linspace(0.5,3);
fixed_r=linspace(5e-3,5e-2,10); % valeur fixe de r
fixed_l=linspace(0.5,3,6); %valeur fixe de l
r1=zeros(length(fixed_r),length(l)); % initialisation de r1
r2=zeros(length(fixed_l),length(r)); % initialisation de r2
rho=700; % résistivité du sol
figure(1)
for i=1:length(rho)
for j=1:length(fixed_r)
for k=1:length(l)
r1(j,k)=ma_fonction(rho(i),fixed_r(j),l(k));
end
end

plot(l,r1(1,:),l,r1(2,:),l,r1(3,:),l,r1(4,:),l,r1(5,:),l,r1(6,:));
grid on
xlabel('Longueur (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R(l) avec rho= %d',rho(i)))
end
legend(sprintf('r= %d',fixed_r(1)),sprintf('r=
%d',fixed_r(2)),sprintf('r= %d',fixed_r(3)),sprintf('r=
%d',fixed_r(4)),sprintf('r= %d',fixed_r(5)),sprintf('r= %d',fixed_r(6)))
%Tracé de r2=f(r)
figure(2)
for i=1:length(rho)
for j1=1:length(fixed_l)
for k1=1:length(r)
r2(j1,k1)=ma_fonction(rho(i),r(k1),fixed_l(j1));
end
end

plot(r,r2(1,:),r,r2(2,:),r,r2(3,:),r,r2(4,:),r,r2(5,:),r,r2(6,:)); hold on
grid on
xlabel('Rayon du piquet (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R(r) avec rho= %d',rho(i)))
end
legend(sprintf('l= %d',fixed_l(1)),sprintf('l=
%d',fixed_l(2)),sprintf('l= %d',fixed_l(3)),sprintf('l=
%d',fixed_l(4)),sprintf('l= %d',fixed_l(5)),sprintf('l= %d',fixed_l(6)))
end
function resistance=ma_fonction(res,ray,long)
% Argument d'entrée
%res : résistivité du sol
%ray: rayon du piquet
%long: longueur du piquet
% Argument de sortie
%resistance: résistance calculée
resistance=(res/(2*pi*long))*(log(4*long/ray)-1);
end

4-Prise de terre avec n piquets

La formule utilisée se définit comme suit :

1 𝜌 4𝐿 𝜌 1 1
𝑅= ( (𝑙𝑛 ( ) − 1) + ( + ⋯ + )) 𝑎𝑣𝑒𝑐 𝑛 ≥ 2
𝑛 2𝜋𝐿 𝑟 𝜋𝑑 2 𝑛

On obtient les différentes courbes de variation pour une valeur de résistivité égale à 500 ohm.mètre
Code MATLAB

function piquet3()
clc
clear all
cla
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Cette fonction permet de visualiser la courbe de la résistance de terre
% relative à deux ou n piquets de terre en fonction du rayon du piquet ou de
la
% longueur du piquet
%Arguments:
%rho : résistivité du sol
%l : longueur du piquet
%r : rayon du piquet
%n : nombre de piquets
%d : distance entre piquets
%r1 : résistance du sol en fonction de la longueur du piquet
%r2 : résistance du sol en fonction du rayon du piquet
r=linspace(5e-3,50e-3);
l=linspace(0.5,3);d=3.2;
fixed_r=linspace(5e-3,5e-2,4); % valeur fixe de r
fixed_l=linspace(0.5,3,6); %valeur fixe de l
r1=zeros(length(fixed_r),length(l)); % initialisation de r1
r2=zeros(length(fixed_l),length(r)); % initialisation de r2
rho=500; % résistivité d'un sol silicieux
n=10; % nombre de piquet
figure(1)
for j=1:length(fixed_r)
for k=1:length(l)
r1(k,j)=maFonction(rho,fixed_r(j),l(k),d,n);
end
plot(l,r1(:,j))
hold on
grid on
xlabel('Longueur (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R(l) '))
end
legend(sprintf('r= %d m',fixed_r(1)),sprintf('r= %d
m',fixed_r(2)),sprintf('r= %d m',fixed_r(3)),sprintf('r= %d m',fixed_r(4)))

figure(2)
for j1=1:length(fixed_l)
for k1=1:length(r)
r2(j1,k1)=maFonction(rho,r(k1),fixed_l(j1),d,n);
end
plot(r,r2(j1,:))
hold on
grid on
xlabel('Rayon du piquet (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R(r)'))
end

legend(sprintf('l=%d',fixed_l(1)),sprintf('l=%d',fixed_l(2)),sprintf('l=%d',fi
xed_l(3)),sprintf('l=%d',fixed_l(4)),sprintf('l=%d',fixed_l(5)),sprintf('l=%d'
,fixed_l(6)))
end
function resistor =maFonction(ro,ray,long,dist,npiq)
% Cette fonction détermine la valeur de la résistance de terre en fonction
% de la résistivité du sol, la longueur du piquet, la distance minimale
% entre 2 piquets et le nombre de piquet
%Auteur : YETONGNON Lino
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Arguments d'entrée:
% ro : résistivité du sol
% ray : rayon du piquet
% long : longueur du piquet
% dist : distance entre deux piquets
% npiq : Nombre de piquet
% Argument de sortie:
% resistor : résistance de terre calculée
somm=0; % initialisation des valeurs intermédiaires
for h=2:npiq
somm=somm+1/h;
end
resistor_part1=(ro/(2*pi*long))*(log(4*long/ray)-1);
resistor_part2=(ro/(pi*dist))*somm;
resistor=(1/npiq)*(resistor_part1+resistor_part2);

end

5- Câble enterré horizontalement


Formule utilisée :
𝜌 2𝐿
𝑅= (𝑙𝑛 ( ) − 1)
𝜋. 𝐿 √2𝑟. 𝑒
Courbes obtenues

Code MATLAB
function ceh_1()
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%
% Cette fonction permet de calculer la résistance de terre pour un câble
% enterré de longueur l, enfouis à une profondeur e
% r1 : résistance de terre en fonction de la longueur de câble
% r2 : résistance de terre en fonction du rayon du câble
% initialisation des paramètres
clc
cla
clear all
rho=600; %résistivité du sol
e =0.5; % profondeur du sol
l=linspace(10,100);fixed_l=[10,25,50,75,100];
r=linspace(5e-3,50e-3);fixed_r=1e-3.*[5,17.5,25,50];
r1=zeros(length(l),length(fixed_r));
r2=zeros(length(r),length(fixed_l));
figure(1)
for i=1:length(fixed_r)
for j=1:length(l)
r1(j,i)=rTerre(rho,l(j),fixed_r(i),e);
end
plot(l,r1(:,i))
hold on
grid on
xlabel('Longueur (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R=F(l)'))
end
legend(sprintf('r= %d m',fixed_r(1)),sprintf('r= %d
m',fixed_r(2)),sprintf('r= %d m',fixed_r(3)),sprintf('r= %d m',fixed_r(4)))
figure(2)
for i=1:length(fixed_l)
for j=1:length(r)
r2(j,i)=rTerre(rho,fixed_l(i),r(j),e);
end
plot(r,r2(:,i))
hold on
grid on
xlabel('rayon du cable (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R=F(r)'))
end
legend(sprintf('L= %d m',fixed_l(1)),sprintf('L= %d
m',fixed_l(2)),sprintf('L= %d m',fixed_l(3)),sprintf('L= %d
m',fixed_l(4)),sprintf('L= %d m',fixed_l(5)))
end
function resistance=rTerre(ro,long,ray,depth)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Arguments d'entrée:
% ro : résistivité
% ray : rayon du câble
% long : longueur du câble
% depth : profondeur
resistance=(ro/(pi*long))*(log(2*long/sqrt(2*ray*depth))-1);
end
6-Deux câbles proches de longueur L écartés de la distance d

Formule utilisée :
𝜌 2𝐿
𝑅= (𝑙𝑛 ( 6 ) − 1) 𝑎𝑣𝑒𝑐 𝑑′ = √𝑑2 + 4𝑒 2
𝜋. 𝐿 √2 𝑟 𝑒 𝑑. 𝑑′
Courbes obtenues
Code MATLAB

function ceh_2()
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%
% Cette fonction permet de calculer la résistance de terre pour deux câbles
% enterrés de longueur l, enfouis à une profondeur e, et séparée d'une
distance
% d telle que d<<l
% r1 : résistance de terre en fonction de la longueur de câble
% r2 : résistance de terre en fonction du rayon du câble
% initialisation des paramètres
clc
cla
clear all
rho=300; %résistivité du sol
e =1; % profondeur du sol
d=0.05;
l=linspace(10,100);fixed_l=[10,25,50,75,100];
r=linspace(5e-3,50e-3);fixed_r=1e-3.*[5,17.5,25,50];
r1=zeros(length(l),length(fixed_r));
r2=zeros(length(r),length(fixed_l));
figure(1)
for i=1:length(fixed_r)
for j=1:length(l)
r1(j,i)=rTerre(rho,l(j),fixed_r(i),d,e);
end
plot(l,r1(:,i))
hold on
grid on
xlabel('Longueur (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R=F(l)'))
end
legend(sprintf('r= %d m',fixed_r(1)),sprintf('r= %d
m',fixed_r(2)),sprintf('r= %d m',fixed_r(3)),sprintf('r= %d m',fixed_r(4)))

figure(2)
for i=1:length(fixed_l)
for j=1:length(r)
r2(j,i)=rTerre(rho,fixed_l(i),r(j),d,e);
end
plot(r,r2(:,i))
hold on
grid on
xlabel('rayon du cable (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R=F(r)'))
end
legend(sprintf('L= %d m',fixed_l(1)),sprintf('L= %d
m',fixed_l(2)),sprintf('L= %d m',fixed_l(3)),sprintf('L= %d
m',fixed_l(4)),sprintf('L= %d m',fixed_l(5)))
end
function resistance=rTerre(ro,long,ray,dist,depth)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Arguments d'entrée:
% ro : résistivité
% ray : rayon du câble
% long : longueur du câble
% depth : profondeur
% dist : distance de séparation des câbles
dprim=sqrt(dist^2+4*depth^2);
resistance=(ro/(pi*long))*(log(2*long/(2*ray*depth*dist*dprim)^(1/6))-1);
end

7-Plusieurs câbles rayonnants de longueur L enterrés à la même profondeur e

Formule utilisée :
𝜌 2𝐿
𝑅= (𝑙𝑛 ( ) − 1 + 𝑁(𝑛))
𝑛. 𝜋. 𝐿 √2𝑟𝑒

Courbes obtenues :
Code MATLAB

function ceh_3()
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%
% Cette fonction permet de calculer la résistance de terre pour plusieurs
câbles
% enterré rayonnants de longueur l, enfouis à une profondeur e
% r1 : résistance de terre en fonction de la longueur de câble
% r2 : résistance de terre en fonction du rayon du câble
% initialisation des paramètres
clc
cla
clear all
rho=300; %résistivité du sol
e =0.5; % profondeur du sol
n=3; %nombre de rayons
l=linspace(10,100);fixed_l=[10,25,50,75,100];
r=linspace(5e-3,50e-3);fixed_r=1e-3.*[5,17.5,25,50];
r1=zeros(length(l),length(fixed_r));
r2=zeros(length(r),length(fixed_l));
figure(1)
for i=1:length(fixed_r)
for j=1:length(l)
r1(j,i)=rTerre(rho,l(j),fixed_r(i),n,e);
end
plot(l,r1(:,i))
hold on
grid on
xlabel('Longueur (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R=F(l)'))
end
legend(sprintf('r= %d m',fixed_r(1)),sprintf('r= %d
m',fixed_r(2)),sprintf('r= %d m',fixed_r(3)),sprintf('r= %d m',fixed_r(4)))

figure(2)
for i=1:length(fixed_l)
for j=1:length(r)
r2(j,i)=rTerre(rho,fixed_l(i),r(j),n,e);
end
plot(r,r2(:,i))
hold on
grid on
xlabel('rayon du cable (m)');
ylabel('Résistance (ohms)');
title(sprintf('Courbes de variation R=F(r)'))
end
legend(sprintf('L= %d m',fixed_l(1)),sprintf('L= %d
m',fixed_l(2)),sprintf('L= %d m',fixed_l(3)),sprintf('L= %d
m',fixed_l(4)),sprintf('L= %d m',fixed_l(5)))

end
function resistance=rTerre(ro,long,ray,nb_ray,depth)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Arguments d'entrée:
% ro : résistivité
% ray : rayon du câble
% long : longueur du câble
% nb_ray: nombre de rayon
% depth : profondeur
switch(nb_ray)
case 2
Ndn=0.7;
case 3
Ndn=1.53;
case 4
Ndn=2.45;
case 6
Ndn =4.42;
case 8
Ndn=6.5;
case 12
Ndn=11;
case 100
Ndn=116;
end
resistance=(ro/(pi*long*nb_ray))*(log(2*long/sqrt(2*ray*depth))-1+Ndn);
end

Conclusion

Au terme de ces travaux pratiques nous avons acquis les concepts de simulation des valeurs de résistances
de six types différents de prises de terre en faisant varier pour les cinq derniers cas le rayon et la longueur

Vous aimerez peut-être aussi