Bonjour,
Je suis à la recherche d'une solution pour mon TPE.
J'ai programmé un raspberry pi et un capteur à ultra-sons mais je n'arrive pas à placer les mesures obtenues par le capteur directement dans un tableau puis automatiquement tracé le graphique des droites obtenue suite à ces différentes mesures.
Voici le programme initiale:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 
import RPi.GPIO as GPIO
import time
 
 
GPIO.setmode(GPIO.BCM)
TRIG = 23
ECHO = 24
 
print ("Mesure de la distance en cours")
GPIO.setup(TRIG, GPIO.OUT)
GPIO.setup(ECHO, GPIO.IN)
 
def distance():
 
    GPIO.output(TRIG, True)
    time.sleep(0.00001)
    GPIO.output(TRIG, False)
 
    pulse_start = time.time()
    pulse_end = time.time()
 
    while GPIO.input(ECHO) == 0:
        pulse_start = time.time()
 
    while GPIO.input(ECHO) == 1:
        pulse_end = time.time()
 
    pulse_duration = pulse_end - pulse_start
 
    distance = pulse_duration * 17150
    distance = round(distance, 3)
 
    return distance
 
 
if __name__ == '__main__':
    try:
        while True:
            dist = distance()
            print ("Distance mesurée = %.1f cm" % dist)
            time.sleep(1)
 
    except KeyboardInterrupt:
        print("Mesure arrêtée par l'utilisateur")
        GPIO.cleanup()

Puis cela me donne des valeurs que je suis obligé de retaper à la main dans ce programme pour obtenir le graphique

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import matplotlib.pyplot as plt
 
plt.title("Graphique")
 
plt.grid(True)
 
plt.plot([abscisse], [ordonnée], label="Sans ultra-sons")
 
plt.plot([abscisse], [ordonnée], label="Avec ultra-sons")
 
 
plt.xlabel('Emplacement (en cm)')
 
plt.ylabel('Mesure (en cm)')
 
plt.legend()
 
plt.show()
Donc j'aimerais avoir une solution pour pouvoir "fusionner" ces programmes et tout automatisé dans un seul programme
Merci d'avance pour vos réponses
Cordialement