Une photorésistance se place habituellement en série avec une résistance de 10 kΩ, de sorte que la lumière reçue par la photorésistance s'évalue en mesurant la tension aux bornes d'un des deux composants. L'étude précédente montrait que pour une luminosité variant nettement, ces 10 kΩ pouvait avantageusement se remplacer par une valeur plus petite, comme 4 kΩ par exemple.
Qu'en est-il pour une plage de luminosité plus réduite? Les deux méthodes, numérique et analytique, seront mises en œuvre.
#!/usr/bin/python3 import matplotlib.pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D # Valeurs pour Rpm et RpM, en Ω Rpm = np.linspace(70, 700, 100) RpM = np.linspace(10000, 100000, 100) Rpm, RpM = np.meshgrid(Rpm, RpM) # Fonction pour calculer la résistance optimale def calcul_R_op(Rpm, RpM): U = 5 R = np.linspace(500, 20000, 500) delta_U = R*U*(1/(Rpm+R)-1/(RpM+R)) liste_R = list(R) liste_delta_U = list(delta_U) R_rech = liste_R[liste_delta_U.index(max(liste_delta_U))] return round(R_rech) # Résistance optimale, en Ω R_op = np.vectorize(calcul_R_op)(Rpm, RpM) # Tracé de la courbe fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.plot_surface(Rpm, RpM, R_op, cmap='viridis') ax.set_xlabel('Rp min (Ω)') ax.set_ylabel('Rp max (Ω)') ax.set_zlabel('R (Ω)') plt.show()
#!/usr/bin/python3 import matplotlib.pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D # Valeurs pour Rpm et RpM, en Ω Rpm = np.linspace(70, 700, 100) RpM = np.linspace(10000, 100000, 100) Rpm, RpM = np.meshgrid(Rpm, RpM) # Résistance optimale, en Ω R_op = (Rpm*RpM)**0.5 # Tracé de la courbe fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.plot_surface(Rpm, RpM, R_op, cmap='viridis') ax.set_xlabel('Rp min (Ω)') ax.set_ylabel('Rp max (Ω)') ax.set_zlabel('R (Ω)') plt.show()