Étape 2: Calcul de l’énergie
Tension et courant continuellement alternent, comme son nom l’indique, si nous attirons une image de la tension et la forme d’onde avec le temps, il ressemblera à quelque chose comme l’image ci-dessus (selon ce qui est à l’aide de power - la forme d’onde - bleu sur le schéma ci-dessous - est ce que vous obtenez si vous regardez une alimentation ordinateur portable typique. Il y a une lampe à incandescence dans là aussi).
L’image a été faite par l’échantillonnage de la tension et le courant à haute fréquence, qui est exactement ce que je fais sur mon projet. J’ai dégusterez tension instantanée et le courant (échantillon de 50 par 20 ms). Bien que les taux d’échantillonnage plus élevé augmenter l’exactitude - nous sommes limités par la Edison Arduino analogique commande et calcul de vitesse de lecture).
Calculer la puissance réelle
Le pouvoir réel est la moyenne de puissance instantanée. Le calcul est relativement simple sur la Edison & Arduino. Tout d’abord, nous calculons la puissance instantanée en multipliant la mesure de la tension instantanée avec la mesure instantanée actuelle. Nous somme cette mesure de la puissance instantanée sur un certain nombre d’échantillons et diviser par ce nombre d’échantillons :
for (n=0; n<number_of_sample; n++){ // inst_voltage and inst_current calculation from raw ADC goes here inst_power = inst_voltage * inst_current; sum_inst_power += inst_power; } real_power = sum_inst_power / number_of_samples;
Tension de Root-Mean-Square (RMS)
Le root-mean-square est calculé de la façon dont son nom l’indique, tout d’abord, on place la quantité, puis nous calculons la moyenne et enfin la racine carrée de la moyenne quadratique, c’est comment son fait sur l’Arduino :
for (n=0; n<number_of_sample; n++){ // inst_voltage calculation from raw ADC input goes here. squared_voltage = inst_voltage * inst_voltage; sum_squared_voltage += squared_voltage; } mean_square_voltage = sum_squared_voltage / number_of_samples; root_mean_square_voltage = sqrt(mean_square_voltage);
Courant de Root-Mean-Square (RMS)
Même que le calcul de tension RMS :
for (n=0; n<number_of_sample; n++) { // inst_current calculation from raw ADC input goes here. squared_current = inst_current * inst_current; sum_squared_current += squared_current; } mean_square_current = sum_squared_current / number_of_samples; root_mean_square_current = sqrt(mean_square_current);
Puissance apparente
apparent_power = root_mean_square_voltage * root_mean_square_current;
Comme RMS tension est généralement une valeur fixe tel que : 220V (+ 10 % -6 % dans la BD) son possible rapprochant puissance apparente sans devoir procéder à une mesure de tension en définissant la tension RMS à 230V. Il s’agit d’une pratique courante utilisée par les moniteurs de l’énergie domestique.
Facteur de puissance
power_factor = real_power / apparent_power;
Voilà les principes fondamentaux de mesure de puissance ca sur un Arduino.