Commit 3356e2aa authored by Clement Remi's avatar Clement Remi
Browse files

Replace ohmpi_measure.py

Showing with 15 additions and 10 deletions
+15 -10
...@@ -5,12 +5,15 @@ import busio ...@@ -5,12 +5,15 @@ import busio
import adafruit_ads1x15.ads1115 as ADS import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn from adafruit_ads1x15.analog_in import AnalogIn
# paramètres de mesure # paramètres de mesure
nbr_stack=2 # défini le nombre de stack (1 stack une injection positive et negative nbr_stack=1 # défini le nombre de stack (1 stack une injection positive et negative
current_injection_time=0.5 # temps d'injection du courant en seconde current_injection_time=0.5 # temps d'injection du courant en seconde
# paramètres liées à la carte de mesure # paramètres liées à la carte de mesure
Rref=50 # valeur de la resistance de référence Rref=50 # valeur de la resistance de référence
som_I=0 som_I=0
som_Vmn=0 som_Vmn=0
som_Ps=0
coeff_p0=2.02
coeff_p1=2.02
i2c = busio.I2C(board.SCL, board.SDA) # definition du protocole I2C i2c = busio.I2C(board.SCL, board.SDA) # definition du protocole I2C
ads = ADS.ADS1115(i2c, gain=2/3) # activation de la connection I2C ads = ADS.ADS1115(i2c, gain=2/3) # activation de la connection I2C
#initialisation des gpio #initialisation des gpio
...@@ -25,23 +28,25 @@ for n in range(0,3+2*nbr_stack-1) : ...@@ -25,23 +28,25 @@ for n in range(0,3+2*nbr_stack-1) :
GPIO.output(7, GPIO.HIGH) # polarité n°1 GPIO.output(7, GPIO.HIGH) # polarité n°1
print('positif') print('positif')
else: else:
GPIO.output(7, GPIO.HIGH) # polarité n°1 GPIO.output(7, GPIO.LOW) # polarité n°1
print('negatif') print('negatif')
GPIO.output(8, GPIO.HIGH) # injection du courant GPIO.output(8, GPIO.HIGH) # injection du courant
time.sleep(current_injection_time) # delay fonction du temps d'injection time.sleep(current_injection_time) # delay fonction du temps d'injection
Ia1 = AnalogIn(ads,ADS.P0).voltage # lecture de la voie A0 Ia1 = AnalogIn(ads,ADS.P0).voltage * coeff_p0 # lecture de la voie A0
Ib1 = AnalogIn(ads,ADS.P1).voltage # lecture de la voie A1 Ib1 = AnalogIn(ads,ADS.P1).voltage * coeff_p1# lecture de la voie A1
Vm1 = AnalogIn(ads,ADS.P2).voltage # lecture de la voie A2 Vm1 = AnalogIn(ads,ADS.P2).voltage # lecture de la voie A2
Vn1 = AnalogIn(ads,ADS.P3).voltage # lecture de la voie A3 Vn1 = AnalogIn(ads,ADS.P3).voltage # lecture de la voie A3
GPIO.output(8, GPIO.LOW)# stop injection du courant GPIO.output(8, GPIO.LOW)# stop injection du courant
I1= (Ia1 - Ib1)/Rref; I1= (Ia1 - Ib1)/Rref;
som_I=som_I+I1; som_I=som_I+I1;
Vmn1= (Vm1 - Vn1); Vmn1= (Vm1 - Vn1);
som_Vmn=som_Vmn-Vmn1; print(Vmn1)
som_Ps=Vmn1; som_Vmn=som_Vmn+(abs(Vmn1));
som_Ps=som_Ps-Vmn1;
#valeur à renvoyer #valeur à renvoyer
Vmn= som_Vmn/(3+2*nbr_stack-1) n=3+2*nbr_stack-1
I=som_I/(3+2*nbr_stack-1) Vmn= som_Vmn/(3+2*nbr_stack-1)
R=Vmn/I I=som_I/(3+2*nbr_stack-1)
Ps=som_Ps/(3+2*nbr_stack-1) R=Vmn/I
Ps=som_Ps/(3+2*nbr_stack-1)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment