la méthode millis évaluée à chaque boucle consomme 20ms
unsigned long millis()
{
unsigned long m;
uint8_t oldSREG = SREG;
// disable interrupts while we read timer0_millis or we might get an
// inconsistent value (e.g. in the middle of a write to timer0_millis)
cli();
m = timer0_millis;
SREG = oldSREG;
return m;
}
Impossible. Elle retourne simplement la valeur d'une variable.
Si j'indique 1 seconde et que j'évalue à chaque fois millis pour sortir de ma boucle je fais 5 mesures
Si je vise 100 mesures en utilisant un incrément simple je fait 100 mesures en 920ms
Je me doute que la fonction millis ne devrait pas être lente mais ici je ne vois qu'elle... Peut être qu'il y a un mécanisme pour éviter le race hazard.. Je n'ai pas les détails techniques du fonctionnement de l'arduino ce n'est qu'une hypothese bien sûr..
Pour l'oscillo je ne vois pas quel outil serait plus à même de me fournir des mesures précises et qui me permettrait de visualiser les amplitudes?
Ah non ça c'est une coquille d'écriture bien sûr ^^
Pour le String oui tout à fait mais il ne justifie pas la différence d'échantillonnage.
Bon au final aujourd'hui j'ai testé avec une ampoule 4w... je suis à 6.15w détecté et quand je branche rien entre 2 et 3.5W.
4W ca reste donc détectable mais c'est dommage qu'en 2018 avec une résolution 15bits on est aucun capteur fiable à mettre en face pour de l'AC en solution fiable et pas cher..
J'ai regardé le PZEM mais c'est trop cher (j'ai trop de lignes a tester)...
En cherchant j'ai aussi vu un truc qui s'appelle le TA12 qui fonctionne plus ou moins pareil que l'ASC.. Je vais peut être en commander quelques un pour voir si c'est possible de s'approcher du 1W de précision et surtout éviter d'avoir 3W au repos.. un retour d'expérience sur cette puce?
Après c'est plus risqué mais il y a peut être des dispositifs diviseurs sans effet hall qui seraient bien plus précis?
Arf je ne suis pas sûr d'avoir compris ce que tu entends par transfo :S
Tu parles d'un transfo simple 220/5v?
En série cela ne pauserai pas un problème à ce qui pourrait être branché sur la même ligne?
Par contre je me dit maintenant qu'avoir un PZEM (global) pour connaitre la tension EDF pourrait être utile pour les calculs ais-je tord?
Voir même à ton avis serait-il possible de travailler avec un seul PZEM et d'effectuer un switch de ce type sans risquer de claquer ce qu'il y a derrière :
1 connecter en série un deuxième neutre où le PZEM serait (via un relay par exemple)
Et pour le fil justement à ton avis il est possible d'utiliser un système avec des relais pour switcher sur le fil qui serait relié au capteur? (progressivement pour ne pas interrompre le signal)... c'est peut être pas terrible de faire ça...?
Je ne connais pas le TA12.
Cela me semble léger au niveau datasheet.
Tu remarqueras la linéarté du AC1005 chargé à 100Ω.
Et pour le fil justement à ton avis il est possible d'utiliser un système avec des relais pour switcher sur le fil qui serait relié au capteur? (progressivement pour ne pas interrompre le signal)... c'est peut être pas terrible de faire ça...?
Cela me semble tiré par les cheveux pour économiser 3€ par circuit.
Alors je suis pas pro comme toi mais pour moi ça me semble pas du tout linéaire ^^
Si j'ai bien compris le datasheet entre 10 et 100ma on a pas vraiment de précision.. entre 2W et 20W en gros?
Et pour l'autre graphique on commence à 1Amp mais entre 1 et 2 la mesure risque d'être difficile non?
Après en réfléchissant on doit pouvoir obtenir une bonne précision avec 2 capteurs et 2 résistances différentes et en resynchronisant les courbes mais alors pour calculer les puissances des résistances et réaliser un montage j'ai pas le niveau ^^
Si j'ai bien compris avec 20 volts rms on est à 0,5A sur les bornes du capteur?
Si j'ai bien compris le datasheet entre 10 et 100ma on a pas vraiment de précision.. entre 2W et 20W en gros?
Je ne vois pas trop ce que tu veux dire.
La courbe de droite donne la précision en fonction de la résistance de charge.
La courbe de gauche donne la tension de sortie en fonction du courant d'entrée pour différentes résistances de charge.
Effectivement, les courbes commencent à 1A.
Pour 5A en entrée il donne 5mA en sortie. Sur une charge de 100Ω, cela fait 500mV.
Donc pour 10mA (2W) en entrée il donnera 10µA en sortie et 1mV.
En adoptant la référence interne 1.1V de l'ARDUINO, la résolution sera de 1.1V / 1023 = 1mV.
Si l'on ne tient pas compte du bruit, effectivement la résolution minimale sera de 2W.
Mais je n'ai toujours pas compris pourquoi tu veux autant de précision ?
C'est l'éternel problème : résolution et amplitude de mesure. Les 10bits de l'ADC nous limitent.
Avec un autre processeur comme l'ARDUINO DUE, l'ADC est un 12 bits.
Il va falloir considérer le courant maximal à mesurer. De toutes façons tu auras du mal à trouver des capteurs de moins de 5A.
Après en réfléchissant on doit pouvoir obtenir une bonne précision avec 2 capteurs et 2 résistances différentes et en resynchronisant les courbes mais alors pour calculer les puissances des résistances et réaliser un montage j'ai pas le niveau ^^
Il ne faut pas compter commuter des résistances avec une self en série.
En fait je parlais du graphique à droite "Sec RMS Exciting current in mA".
Justement l'idée de l'ADS était de grimper en résolution à 15bits pour pouvoir avoir quelque chose de précis.
Pourquoi ais-je besoin de précision > parce que je veux avoir une information fiable...
Je suis pas électroniciens mais j'aurai cru que précis serait plutôt de l'ordre du 1/10 de w..
Et je n'ai pas compris ta dernière phrase d'expert
En tous les cas merci je vais déjà essayer les autres capteurs pour voir les différences avec les ASC
Tu pourrais t'en sortir en installant deux capteurs avec des sensibilités différentes sur le même fil, sur deux entrées analogiques..
Tu mesures le moins sensible. Si le courant est faible, tu mesures le deuxième.
C'est simplement deux fois plus cher ...
Mais il y a toujours le risque que le plus sensible fume si le courant est trop fort car tu auras dépassé sa limite de puissance.