Non so nemmeno cosa voglia dire OP e come mai rientro in questa categoria...
Immagino sia "Operatore Principiante" senza esserne sicuro.
Mi scuso della ignoranza.
Ringrazio di nuovo tutti per l'immenso aiuto e interesse che concedete anche ai novizi.
Appena rientro in laboratorio proverò i codici che escono dai vostri consigli e farò sapere se si sia risolto il problema o se ci saranno altri ostacoli da superare con richiesta di aiuto.
Nel frattempo continuerò ad incrementare la conoscenza del linguaggio di programmazione tra forum, manuali e tutorial.
Hehe, no, è un acronimo usato spesso nei forum, significa "Original Poster" ossia chi ha creato per primo l'argomento (thread).
Comprendo che tu sia alle prime armi con la programmazione Arduino, per cui per prima cosa ti suggerirei di vedere schemi e codici di esempio forniti con quel sensore, in particolare nella pagina che tu stesso hai linkato (QUESTA), facendo copia-incolla del codice (non cercare di digitalo perché potresti commettere errori come hai fatto in precedenza), e con la quale puoi verificare sia il cablaggio del sensore con Arduino, sia capire come funziona quel trimmer per regolare l'amplificazione, e quindi come fa a calcolare IRMS (ossia la corrente RMS del segnale rilevato sul cavo della fase che hai fatto passare dentro al sensore).
In base a questo quindi, ovviamente a meno delle fluttuazioni del sensore, devi identificare un valore di soglia che per te significa "nessun assorbimento" o, al contrario, un valore minimo che rappresenti la condizione "ok, c'è qualcosa che assorbe abbastanza".
Poi si può anche pensare di migliorare la misurazione facendo più letture consecutive e calcolare una media, ma per ora non ti complicherei il compito, lasciamo stare le cose come sono in quella pagina e relativo esempio.
Se hai quindi problemi posta il codice che hai caricato, e l'output della seriale (che vedi tramite Serial Monitor dell'IDE stesso, fai sempre copia-incolla mi raccomand), ed inserisci queste porzioni all'interno del tag "<CODE/>
" per renderli pià leggibili.
Se invece non hai problemi, mostraci l'output dello sketch di esempio indicandoci i valori che hai identificato, così proseguiamo col discorso di fare "qualcosa" in base alle condizioni.
Il codice in quella pagina non è fatto bene: legge il valore di picco e lo moltiplica per 0,707, che non è l'RMS esatto, ma vale solo per un'onda sinusoidale (e la corrente assorbita è molto spesso tutt'altro che sinusoidale!).
Nel nostro caso bisogna trovare lo zero, che è il valore medio della sinusoide in un periodo o in infiniti (o moltissimi) periodi. Basta leggere i valori consecutivamente e fare una media continua, cioè aggiornata continuamente.
Certo, dipende anche dal tipo di carico, se è resistivo, induttivo o capacitivo ad esempio. Ma non stiamo facendo né un trattato di elettrodinamica, né deve controllare al milliampere il consumo, deve solo sapere se c'è carico o meno.
Evitiamo per favore di fare ad un utente alle prime armi precisazioni inutili?
PS: tra l'altro la libreria Emonlib, che consiglio all'OP, fa tutto lei, e la uso per la stima della produzione del fotovoltaico, molto vicina a quella mostrata dall'inverter stesso per cui...
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.