Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 I contatori digitali sono un ottimo strumento per monitorare l'impianto fotovoltaico e i consumi domestici. Il software Penelope evidenzia queste informazioni, in chiaro, cioè in watt istantanei e consente tanto altro, per chi sa programmare Arduino, ma va da sè che debbono essere attività perfettamente legali. E legale accendere elettromestici o altro con l'energia elettrica, quando si vuole, se si vuole, utilizzando la propria energia o quella prelevata. Ma sempre nel RISPETTO DELLA LEGGE, relativamente all'allaccio.
dott.cicala Inserita: 7 aprile 2016 Segnala Inserita: 7 aprile 2016 Quote e se produzione varia tra 9 e 10...cioè ballonzola come tipicamente fanno i contatori digitali....che succede? la domanda voleva significare, con gentilezza, che i confronti fatti così...sono una bestiata...solo che non te ne accorgi... perché da una parte metti il "condensatore di stabilizzazione del pwm" che è una bestiata pure questa...e poi perché utilizzi relè a stato solido.
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Sono un ragioniere, abbastanza pignolo. Ho potuto verificare che il contatore Enel segna ZERO, quando funziona Penelope e poi ho tutte le statistiche (contatore Enel bidirezionale) relative ai consumi mensili, ai prelievi, alle immissioni e all'autoconsumo nei mesi invernali dell'inverno scorso (ultimi mesi) e di tutto questo. Tutto torna, nel senso che nei mesi di Novembre, Dicembre, Gennaio e Febbraio sono riuscito a consumare tutta l'energia prodotta, con pochissimi Kw immessi in rete, nei pochi casi in cui il termostato della stufetta, da 2,5 Kw, che però faccio funzionare a soli 1,25 Kw ha staccato l'energia, per la temperatura che ha superato il limite, pur se tenuto sempre al massimo. Nel mese di Marzo scorso le cose sono cambiate perchè nelle belle giornate la produzione è molto alta e parecchia energia è andata in rete. Ovviamente, appena fa caldo, la stufetta la elimino e tutto il mio surplus va in rete. Ho il sistema di accumulo per i faretti notturni, ma è "a isola" con un pannello dedicato.
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Dott Cicala. Ho capito la tua osservazione, molto tecnica e molto pertinente. Ma il PWM a 700 hertz, o giù di lì, di Arduino non provoca sfasature nei contatori digitali. Lo vedo nei miei e altrettando accade in quelli Enel. Men che meno provoca problemi all'inverter, cioè all'impianto fotovoltaico, perchè questi ha davvero dei grossi condensatori per smorzare l'energia, - in continua - prelevata ad impulsi. Il surplus lo preleviamo dal fotovoltaico. Utilizziamo energia nostra.
dott.cicala Inserita: 7 aprile 2016 Segnala Inserita: 7 aprile 2016 Ma chi se nei importa...se ti ergi a professore del codice devi per lo meno fornire informazioni corrette....e come lo fai tu il codice, che funzioni o meno...è concettualmente errato. Così come lo sono la maggior parte delle tue affermazioni come ad esempio, la storia del condensatore di stabilizzazione del pwm. Dicevi che internet è fonte di informazioni...ma se le dai così...sono informazioni sbagliate...e chi non sa, non può nemmeno valutare....quindi ti converrebbe almeno dar retta a chi quello che tu fai come passatempo...lo fa per mestiere.... in pratica vuoi insegnare al gatto ad arrampicarsi....
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Giusto essere diffidenti, specie se non si conosce la materia e si fa l'avvocato del diavolo. Siamo qui a discutere per questo.
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Mediamente spendo 40 €uro al bimestre, di energia elettrica. E' un argomento convincente ? Anzi, non spendo niente visto che immetto in rete quasi 3.000 Kw all'anno, che vengono retribuite alla tariffa più bassa da GSE (non ho agevolazioni di conto energia), ma quasi compensa le bollette. Viva la diffidenza, anzi no. Ho fatto l'impianto fotovoltaico nel luglio 2013 e mi mordo le mani perchè sono arrivato lungo, senza agevolazioni, ma va bene lo stesso.
Livio Orsini Inserita: 7 aprile 2016 Segnala Inserita: 7 aprile 2016 Sempra uno di quelle trasmissioni televisive di politica dove il politico di turno, ad una domanda precisa su come pensa di recuperare le risorse economiche per sviluppare la sua proposta, risponde che lui è onesto. Oltre al fatto che spesso sull'onestà del politico di turno ci sarebbe da ridire, questo non da mai una risposta seria e coerente. Ad esempio io sto ancora aspettando che Luigi ci illustri come fa a capionare 90.000 volte un ingresso in meno di 4", come ha misurato il numero di campionamenti ed il tempo impiegato. In quanto alle spese di energia elettrica anche mio fratello spende circa la medesima cifra, mentre io ne spendo un poco di più perchè usiamo molto il forno elettrico per cucinare (2 kW di picco). Questo senza fare particolari acrobazie se non usare lavatrice e lavastoviglie nelle ore di basso costo. Eppure abbiamo un contratto da 4.5kWh e conduciamo una vita normale senza nemmeno fare particolare attenzione. La spesa per energia elettrica da sola non è indicativa della bontà di un controllo. magari senza quel controllo spenderesti meno Hai scelto tu di dar pubbliicità e risalto ai tuoi lavori, quindi devi anche accettare le critiche. Non puoi pensare che sian tutti qui a pender dalle labbra del primo che disponendo di un collegamento internet e di un PC scrive mirabilie. Noi non siamo ragionieri, ma specialisti in elettronica ed in automazione, quindi le valutazioni le facciamo solo su dati reali, verificabili. L'ho già scritto alcune volte e lo ripeto per l'ultima volta. Se vuoi continuare a discutere dei tuoi lavori devi dare dati seri e verificabili. Se invece vuoi contunuare a scrivere notizie pseudo fantastiche chiudiamo la discussione.
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Livio. La faccenda dei 90000 cicli mi sembrava di averla spiegata. Se nel codice software (quello denominato Penelope 3.200 che ho postato e che è a disposizione di tutti, basta scorrerlo) c'è il conteggio dei cicli per visualizzare le informazioni (due videate, alternative) solo ogni 3,4 minuti e c'è questa riga, testuale, oltre a quella dei 90.000, cui fa seguito la routine di visualizzazione: if (conta2 > 200000) // lo faccio funzionare solo ogni 2 secondi circa: cosa posso pensare ? Che va a scheggia. Evidentemente perchè deve fare pochissime cose. Ma non me ne frega nulla, nè ho pensato a cosa corrisponda questa velocità di Arduino UNO. Mica l'ho inventato io Arduino. Evidentemente la funzione digitalRead() è una funzione poco impegnativa, del resto deve solo sondare se la tensione è superiore a 2,5 volt, piuttosto che no. Per forza che va veloce. Infatti con la funzione analogRead() Arduino si è dato una calmata (deve dividere in 1024 segmenti).
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Errata corrige, nella discussione sopra. La visualizzazione avviene ogni 3/4 secondi e non minuti. Non mi diverto neppure io a dover spiegare tutte le cose. Spero che serva a chi ci legge, perchè io non ho nessuna ambizione di fare il professore, ma alcune cose le ho imparate, facendo verifiche sul campo. Si chiama sperimentazione. Quanto all'abbinata hardware/software di Arduino, per le cose che mi interessano, lo trovo fantastico.
Luigi Marchi Inserita: 7 aprile 2016 Autore Segnala Inserita: 7 aprile 2016 Comunque è molto semplice fare verifiche: è sufficiente caricare il software su un Arduino che si ha in casa, attaccare le 4 resistenze ai contatori e verificare cosa combina. Io so solo programmare, perchè ho scritto, a suo tempo, decine di migliaia di righe di codice Clipper E non ho dimenticato come si fa.
Adelino Rossi Inserita: 7 aprile 2016 Segnala Inserita: 7 aprile 2016 Quote secondo me c'è un accordo nel far apparire 100.000 volte la parola arduino anche se senza contenuti. chissà a quanto siamo .
gabri-z Inserita: 7 aprile 2016 Segnala Inserita: 7 aprile 2016 Vicini , vicini ... Ma la domanda è : Perché devo leggere letteratura '' tecnica '' priva di qualsiasi argomentazione , (per me senso ) , visto che non risulta (almeno a me ) nemmeno l'utilità Se sono l'unico a non capire , ......
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Il successo di Arduino sta tutto nel rapporto costo/beneficio, che è eccellente. Arduino Uno costa 3 €uro e la benzina per farlo andare, cioè il software, è gratis, compreso programmi sviluppati da "tizi" che li mettono a disposizione di tutti, anche se sono costati settimane di lavoro. Ovvio che Arduino abbia "sbaraccato" il mercato e dia fastidio a tanti. Ma viene studiato nelle scuole professionali ed è un campo di lavoro per i nostri giovani destinato a dare frutti eccellenti per loro e per i consumatori. Indietro non si torna.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Gabri-z. Con Arduino sono state sviluppate tante applicazioni di uso quotidiano e anche tanti prodotti innovativi. Penso alla stampa 3D e ai Droni, ma le nicchie sono infinite. Mi stupisce che molte persone, intelligenti e con gli occhi aperti, non se ne siano ancora rese conto. Vale la pena di frequentare i mercatini dell'Elettronica, i circoli FAB-LAB e le fiere Maker Faire.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Tra i "distratti" mi ci metto pure io, visto che Arduino l'ho scoperto per caso appena 15 mesi fa, quando ho comprato il mio primo Arduino alla Fiera dell'Elettronica di Forlì del dicembre 2014. Ma l'innamoramento è stato immediato.
Livio Orsini Inserita: 8 aprile 2016 Segnala Inserita: 8 aprile 2016 Senti Luigi o non capisci o pensi che io sia rimbcillito dall'età Quote if (conta2 > 200000) Questo è una semplice comparazione che puoi far girare quanto vuoi. Per misurare l'intervallo, ad esempio, tra "analogoRead(x)" e la volta successiva c'è un metodo ben preciso ed univoco. Quindi o non sai come si fa e non lo hai mai fatto, o lo sai e non lo hai fatto in questa occasione, o pensi che tanto qui c'è una con grega di stupidotti a cui si può raccontare che Gesù Cristo è morto di freddo. Quindi o ti decidi a dare dati precisi e verificabili, oppure smetti di inviare messaggi che non aggiunguono alcuna informazione.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Livio. Capisco la tua curiosità, come tecnico superesperto, ma non so risponderti. Non sono un ingegnere elettronico. Io con Arduino faccio programmi e studio soluzioni, visto che sono un programmatore. Mi interessa quello che si ottiene programmando Arduino. Il resto mi intriga poco.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Non dubito che Arduino UNO possa avere dei difetti e dei limiti, che i tecnici fanno bene ad evidenziare, ma io mi ci trovo bene e non ho intenzione di comprare versioni più performanti e costose.
Livio Orsini Inserita: 8 aprile 2016 Segnala Inserita: 8 aprile 2016 No la mia non è una curiosità. Tu hai dato un dato: leggi 90.000 volte il medesimo ingresso analogico in 3-4 secondi. Già questa approssimazione è emorme quando si lavora in controllo di processo. Poi anche ammesso che siano 4" significa un periodo pari a 44.444 µs. In 44 µs non è che arduino riesca a fare molto. Se l'affermazione fosse vera significherebbe che praticamente leggi quell'ingresso e poco più. Son ben 22500 Hz se si potesse leggere in polling frequenze di questo livello ed avere tempo per fare il rimanente, per buona parte delle applicazioni correnti, non ci sarebbe bisogno di contatori veloci per misure di frequenza e conteggi di impulsi. Tu, qulche messaggio più sopra, parli di display pilotati in I2C, ottima modo per gestire un visualizzatore. Sai quanto impiega arduino per scrivere le 2 righe di 2x16? Io le ho misurate; ebbene impiega quasi 4 ms, cioè quasi 10 volte il tempo di pollig tra le 2 letture. Qui nessuno ti vuol far cambiare arduino con altro Hw. La mia domanda è nata da una tua richiesta per individuare una possibile causa di malfunzionamento. A me che la tua scheda lavori bene o male non è che interessa più di tanto. Però se tu fornisci un dato che non ritengo probabile, cerco di capire se dipende da una misura spannometrica o se realmente sei riuscito a fare qualche cosa di superlativo. Sino a questo momento si rafforza la prima ipotesi. Se vuoi ti spiego come fare per fare misure corrette sui tempi che impòiega un processore per effettuare determinate operazioni. In alcuni simulatori, come quello di MPLABX per microchip, puoi chiedere direttamente allo strumento l'intervallo di tempo che intercorre tra du istruzioni. In altri casi, come per arduino o PLC, è necessario che provveda il progettista con strumento esterno.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Le tue spiegazioni sono utili, anche per me. Lo riconosco. Hardware e software sono strettamente correlati. Che la visualizzazione impegnasse Arduino per un certo tempo me ne ero accorto. Sapere il quanto è utile.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Domanda. Quali sono i tempi di visualizzazione di Arduino UNO, rispettivamente con utilizzo standard e con seriale I2C, dei display 4x20 ? O meglio, quali sono le differenze, tra display 2x16 e 4x20?
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Ricapitoliamo: il problema iniziale è stato quello della lettura dei contatori digitali, che hanno caratteristiche diverse, risolto nel modo che ho descritto, cioè usando la funzione analogRead() anzichè digitalRead(). Ho poi modificato il software nella parte relativa alla visualizzazione, per poterlo fare con display seriale. Fin qui tutto ok. Quello che si richiede a una centralina di autoconsumo è quello di riequilibrare bene e in tempi rapidi l'immissione in rete di energia, portandola a zero. Siccome sono un perfezionista ho tentato altre soluzioni, rispetto a quella elaborata all'inizio dello scorso anno, dopo che conoscevo Arduino da un mese, ma dopo diverse alternative, mi vedo costretto a ritornare all'antico. Mi devo arrendere ? Cioè, non c'è nulla di meglio di questa ? : ......... if (modifica_rilevazioni == 1) // è arrivato un impulso a uno dei 2 contatori digitali: { if (millis() > tempo_trascorso + 500) // deve essere passato un pò di tempo, per il ricalcolo del differenziale: { modifica_rilevazioni = 0; if (val_prod > val_cons) // alziamo il carico aggiuntivo: { aumento = (val_prod - val_cons) * 254 / 3000; // è un calcolo di tipo progressivo, molto reattivo: ciclopwm = ciclopwm + aumento; } else // diminuiamo il carico aggiuntivo: { aumento = (val_cons - val_prod) * 254 / 3000; ciclopwm = ciclopwm - aumento; } ...........
Livio Orsini Inserita: 8 aprile 2016 Segnala Inserita: 8 aprile 2016 Per prima cosa devi spiegare chiaramente come misuri il tempo. Hai un dispositivo RTD esterno? Se si come lo interfacci? perchè se usi, ad esempio I2C, introduci un certo ritardo tra interrogazione e risposta, specie se usi le normali librerie di arduino che fanno uso di ritardi bloccanti. Poi devi definire univocamente cosa intendi tempi rapidi: ns? µs? ms? secodi? minuti? Quote Che la visualizzazione impegnasse Arduino per un certo tempo me ne ero accorto. Questo tempo, più i tempi necessari ad elaborare altre funzioni, come quella citata sopra, sono incompatibili con le prestazioni di polling degli ingressi che vanti tu. Come ho scritto sopra le librerie standard di arduino oltre a non essere particolarmente veloci, usano ritardi bloccanti. Inoltre se usi la lettura a polling di un ingresso, che sia analogico o digitale, o stai fermo su quell'ingresso e leggi solo quello, oppure in 44µs fai ben poco. Se scrivessi in asm si potrebbe anche ipotizzare un polling del genere, ma usando lo pseodo "C" di arduino in questo tempo difficilmente esegui una linea di codice. Hai usato l'escamotage di leggere l'ìingresso con l'analogica, dimezzando l'immunità ai disturbi, per mettere una pezza ad un difetto di interfaccia. Avresti dovuto lavorare sullo Hw di interfaccia, invece. Quote O meglio, quali sono le differenze, tra display 2x16 e 4x20? A parte il fatto di disporre del doppio delle righe e di più caratteri, non c'è nessuna differenza. E' ovvio che se scrivo 80 caratteri in luogo di 32 i tempi aumentano quasi proporzionalemnte. presumio che tu abbia sempre e solo usato le librerie di arduino per scrivere i display, usando le solite istruzioni "lcd.setcursor", "lcd.print" e "lcd.println", quindi non conosci come avviene in realtà la scrittura. Se usi l'interfaccia parallela a 4 bits, è abbastanza rapido si mette il nibble basso sul dato, dopo qualche µs, si cambia stato alla linea di comando e la si mantiene per alcuni µs, poi si ripete il tutto per il nibble alto. Poi ripeti la sequenza tante volte quanti sono i caratteri. In pratica il comando lcd.print esegue in automatico questa sequenza. Se invece usi l'interfaccia I2C devi aggiungere i tempi per trasferire in modo seriale questi dati ad un integrato che riceve in seriale e traspone in parallelo comando e dati, quindi i tempi crescono. Se disponi di un oscilloscopio appena decente è semplicissimo misurare i tempi necessari per una "lcd.print" (lcd.println). Altrimenti misurarli è possibile anche con il micro stesso, ma si dovrebbe scrivere una funzione in asm dedicata alla bisogna.
Luigi Marchi Inserita: 8 aprile 2016 Autore Segnala Inserita: 8 aprile 2016 Livio. Grazie per gli approfondmenti molto pertinenti. Mi rendo conto che "lavorare" sul perfezionamento del codice con librerie particolari può essere un lavoro utile, che dà valore a un progetto professionale. Lo stesso dicasi per gli approfondimenti relativi al linguaggio macchina. Ma non è il mio caso, e credo non lo sia tra gli obiettivi di quanti usano una "macchina" da 3 €uro. Penso che la logica dell'OPEN SOURCE sia quella di offrire al "mondo del fai da te", un codice "popolare", facilmente decifrabile, con l'utilizzo di pochi strumenti di programmazione, senza funzioni ad hoc, standardizzato, da utilizzare con il copia e incolla anche per altri progetti. Il software che sto mettendo a punto, già sperimentato sul campo, ha bisogno solo di qualche limatura dell'algoritmo che regola il PWM del carico che serve a pareggiare i conti, tra due valori che cambiano continuamente e che vanno rincorsi. La programmazione è un lavoro da artisti estrosi e c'è bisogno di un pò di fantasia in più, rispetto alla mia.
Messaggi consigliati