E invece puo' : quando deve testare il 2° stacca la 485 all'altro , per 5-10' non perde niente , tanto i totali li rifa' lo stesso
annuncio
Comprimi
Ancora nessun annuncio.
Raspberry + MeterN - Monitoraggio energetico valido ed economico - GUIDA
Comprimi
X
-
spider hai fatto una grande scoperta, io ho detto che non si può in contemporanea, se ne stacca o ferma uno l'altro può funzionare, lo avevo gia detto in questo post14,805 KWp - 63 moduli Rew Solar RC235 MP60/1 235W - Tilt 13° - Azimut -15° SUD
Inverter PowerOne Aurora PVI-10.0-OUTD-IT e TRIO-7.5-TL-OUTD
Eflow Live rev. 3.2 (funziona anche con multi inverter e multi contatori consumo)
Commenta
-
Multimaster mission impossible?
Originariamente inviato da thx Visualizza il messaggio- Il protocollo utilizzato dai nostri dispositivi (modbus) sarebbe in grado di capire eventuali collisioni delle richieste trasmesse e delle relative risposte.
- Per evitare che sul bus ci siano per la maggior parte collisioni al posto di trasmissioni valide, è necessario un qualche meccanismo di risoluzione degli accessi contemporanei da parte di due o più master.
- Per avere un meccanismo di rilevazione delle collisioni efficiente è necessario che l'adattatore RS485 utilizzato sia in grado di ascoltare le sue stesse trasmissioni. Questo si può ottenere solo con un adattatore a "4 fili", in cui 2 sono dedicati alla trasmissione e 2 alla ricezione. Questi adattatori sono anche detti "full-duplex".
- Una volta che l'hw e il cablaggio, sia esso a 2 fili o a 4 fili, e l'adattatore 485 siano in grado di gestire il caso "multimaster", è necessario avere un protocollo per gestire in modo concordato i tempi di accessi al bus da parte dei master, sempre per limitare il più possibile le collisioni.
- Non mi risulta che i software che utilizziamo siano concepiti per un uso multimaster/fullduplex, nè per come ricevono e trasmettono, nè per come gestiscono gli errori. Sono tutti basati sul presupposto che la comunicazione avvenga in modalità half-duplex singolo master.
- Quasi tutti noi utilizziamo adattatori half-duplex a soli 2 fili.
- effettuare un cablaggio come dici
- impostare i programmi per non essere continuamente ad impegnare il bus (ad esempio leggendo meno frequentemente nel loop di pooler485)
- Impostare un numero di retry molto elevato
- Aspettarsi che qualche lettura fallisca
PERO'...
Si potrebbe anche inventare un qualche sistema di supervisione del bus aggiuntivo: basterebbe avere un qualche semaforo condiviso fra i due raspi (es. via tcp/IP con qualche riga di script in più o con una porta gpio connessa fra i due) a segnalare il bus occupato.
Se poi sei proprio fortunato e hai gli orologi dei due raspi in sincrono potresti banalmente fare in modo che accedano al bus RS485 in time sharing. Tipo: il primo raspi legge nei primi 5s e evita di leggere nei seguenti 5s e viceversa.
Segue esempio di pooler485 che utilizza l'orologio di sistema e divide il tempo di accesso in fette da 5s. Adatto se tutte le letture dei contatori stanno sotto ai 5 secondi complessivi (con un solo contatore dovrebbe bastare).
N.B.: Le condizioni del ciclo while di attesa in rosso vanno alternato fra i due raspi contendenti in modo che accedano in tempi diversi.
codice:#!/bin/bash ADDRESSES="$1" BAUD_RATE="$2" DEVICE="$3" ADDR_ARR=$(echo $ADDRESSES | tr "," "\n") while [ true ]; do ID=0 POWER="" ENERGY="" # while [ $(($(date +'%S')%10)) -lt 5 ] # Salta le cifre dei secondi da X0 a X4 while [ $(($(date +'%S')%10)) -ge 5 ] # Salta le cifre dei secondi da X5 a X9 do sleep 0.5s done # Attendo comunque 0.5 secondi per sicurezza sleep 0.5s for ADDRESS in $ADDR_ARR do #((ID++)) ID=$ADDRESS CMD="sdm120c -a ${ADDRESS} -b ${BAUD_RATE} -z 10 -i -p -v -c -f -g -P E -q ${DEVICE}" #echo $CMD VALUE=`$CMD` VOLTAGE=$(echo ${VALUE} | awk '{print $1}') CURRENT=$(echo ${VALUE} | awk '{print $2}') POWER=$(echo ${VALUE} | awk '{print $3}') FACTOR=$(echo ${VALUE} | awk '{print $4}') FREQUENCY=$(echo ${VALUE} | awk '{print $5}') ENERGY=$(echo ${VALUE} | awk '{print $6}') if [ "$ENERGY" != "0" -a x"$ENERGY" != x -a "$POWER" != "0" -a x"$POWER" != x ]; then echo -e "$ID($POWER*W)\n$ID($ENERGY*Wh)\n${ID}_1($VOLTAGE*V)\n${ID}_2($CURRENT*A)\n${ID}_3($FREQUENCY*Hz)\n${ID}_4($FACTOR*F)" > /run/shm/metern${ADDRESS}.txt #echo -e "$VALUE" > /run/shm/metern${ADDRESS}.txt fi done done
Facci sapere!
/drk
Commenta
-
The Drake questa quando ho un po di tempo la voglio provare.14,805 KWp - 63 moduli Rew Solar RC235 MP60/1 235W - Tilt 13° - Azimut -15° SUD
Inverter PowerOne Aurora PVI-10.0-OUTD-IT e TRIO-7.5-TL-OUTD
Eflow Live rev. 3.2 (funziona anche con multi inverter e multi contatori consumo)
Commenta
-
Mi fate ricordare , che mentre avevo i due danfoss sotto monitoraggio con il solarlog , mi ero connesso prima col Pc e poi col Pogo in parallelo ai due fili della 485 (senza staccare il SL) , per testare lo script rklogger e realizzare poi il protocollo per i Danfoss su 123solar , e mandavo il comando tranquillamente e rispondeva almeno 9 volte su 10 giusto ,
quindi per fare i test sul muletto nel 99% non serve nemmeno staccare l'altro ...........AUTO BANNATO
Commenta
-
@TheDrake
La modifica al pooler va fatta solo al raspberry aggiuntivo?
Non vorrei andare a modificare quello che sta funzionando oraImpianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Si , thx la modifica la dovresti fare al raspy aggiuntivo, ma devi controllare che i due orologi siano sincronizzati14,805 KWp - 63 moduli Rew Solar RC235 MP60/1 235W - Tilt 13° - Azimut -15° SUD
Inverter PowerOne Aurora PVI-10.0-OUTD-IT e TRIO-7.5-TL-OUTD
Eflow Live rev. 3.2 (funziona anche con multi inverter e multi contatori consumo)
Commenta
-
Inoltre preferibile 2 adattatori rs485 uguali?Impianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Originariamente inviato da thx Visualizza il messaggio@TheDrake
La modifica al pooler va fatta solo al raspberry aggiuntivo?
Non vorrei andare a modificare quello che sta funzionando ora
Se non sei tranquillo, puoi postare il tuo pooler485 e te lo modifico nelle due versioni.
Commenta
-
Originariamente inviato da thx Visualizza il messaggioInoltre preferibile 2 adattatori rs485 uguali?
Commenta
-
Non sono a casa, ma il pooler dovrebbe essere il classico ma con questa stringa cambiata
CMD="sdm120c -a ${ADDRESS} -b ${BAUD_RATE} -z 10 -i -p -v -c -f -g -P N -q ${DEVICE}"Impianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Per essere più tranquilli forse si potrebbe allungare la pausa a 10s e fare in modo che un pooler485 legga al secondo 5, 15, 25... e l'altro 10, 20, 30... Poi magari si prova ad accorciare la pausa a 5, 6 secondi.14,805 KWp - 63 moduli Rew Solar RC235 MP60/1 235W - Tilt 13° - Azimut -15° SUD
Inverter PowerOne Aurora PVI-10.0-OUTD-IT e TRIO-7.5-TL-OUTD
Eflow Live rev. 3.2 (funziona anche con multi inverter e multi contatori consumo)
Commenta
-
Originariamente inviato da thx Visualizza il messaggioNon sono a casa, ma il pooler dovrebbe essere il classico ma con questa stringa cambiata- Tolta la pausa finale al loop (sleep 5s o sleep 1s o quello che hai nel tuo script, che si trova in fondo al loop) perchè adesso andiamo in base ad una finestra di secondi specifici invece che con una pausa secca non legata ad uno specifico orario.
- Inserite queste righe prima del ciclo for
codice:# while [ $(($(date +'%S')%10)) -lt 5 ] # Salta le cifre dei secondi da X0 a X4 while [ $(($(date +'%S')%10)) -ge 5 ] # Salta le cifre dei secondi da X5 a X9 do sleep 0.5s done # Attendo comunque 0.5 secondi per sicurezza sleep 0.5s
Il commento "#" davanti al while serve per scegliere la prima riga o la seconda per usarle una per uno dei raspi e una per l'altro. Puoi anche eliminare la riga se preferisci.
raspi1
codice:# while [ $(($(date +'%S')%10)) -lt 5 ] # Salta le cifre dei secondi da X0 a X4 while [ $(($(date +'%S')%10)) -ge 5 ] # Salta le cifre dei secondi da X5 a X9
codice:while [ $(($(date +'%S')%10)) -lt 5 ] # Salta le cifre dei secondi da X0 a X4 # while [ $(($(date +'%S')%10)) -ge 5 ] # Salta le cifre dei secondi da X5 a X9
@ninodifranco
Una finestra maggiore di time sharing, con un solo contatore, senza condivisione del bus con aurora, secondo me è inutile: sul mio raspi una lettura sta sotto al secondo a 9600baud e i miei 4 contatori vengono letti tutti in meno di 5 secondi partendo dal bus libero.
/drk
Commenta
-
Normalmente le letture del pooler vengono fatte ogni 5 secondi?
Cosa succede se si abbassa la lettura ad 1 secondo come fa 123solar?Impianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Io l'ho abbassato a 0,5 secondi e funziona benissimo, però vedo che i led del convertitore collegato al contatore lampeggiano con una frequenza inferiore rispetto a quello che legge gli inverter. Sarà la differenza di baud rate?Ultima modifica di ninodifranco; 29-10-2015, 14:21.14,805 KWp - 63 moduli Rew Solar RC235 MP60/1 235W - Tilt 13° - Azimut -15° SUD
Inverter PowerOne Aurora PVI-10.0-OUTD-IT e TRIO-7.5-TL-OUTD
Eflow Live rev. 3.2 (funziona anche con multi inverter e multi contatori consumo)
Commenta
-
Originariamente inviato da ninodifranco Visualizza il messaggioIo l'ho abbassato a 0,5 secondi e funziona benissimo, però vedo che i led del convertitore collegato al contatore lampeggiano con una frequenza inferiore rispetto a quello che legge gli inverter. Sarà la differenza di baud rate?
Inviato dal mio Nexus 5 utilizzando Tapatalk
Commenta
-
Originariamente inviato da thx Visualizza il messaggioNormalmente le letture del pooler vengono fatte ogni 5 secondi?
Cosa succede se si abbassa la lettura ad 1 secondo come fa 123solar?
Per questo motivo, andrebbe cambiata leggermente la logica di pooler485.sh.
Sul mio raspi sto testando una versione a loop stretto multicontatore che mi piacerebbe proporre in alternativa a quella classica. Purtroppo richiede anche la modifica delle configurazioni su metern.
Appena pronta, la posto con un po' di istruzioni per chi vuole provarla.
/drk
Commenta
-
Originariamente inviato da TheDrake Visualizza il messaggioQuesto perché 123solar legge continuamente dall'inverter, senza pause intermedie.
Inviato dal mio Nexus 5 utilizzando TapatalkImpianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Originariamente inviato da thx Visualizza il messaggio123solar diversamente da metern dove trattiene i dati instantanei che riceve?
Così farebbe anche metern, ma per comodità si è scelto di slegare le letture fisiche da quelle che fa metern. Il suggerimento viene da jeanmarc stesso.
Anche metern funzionerebbe con letture dirette, ma deve funzionare molto bene la lettura e più meter ci sono, più le letture sarebbero rallentate.
Io stesso ho fatto qualche prova con le letture dirette ma a volte perde dei colpi. Debug in corso...
/drk
Commenta
-
Ultima modifica di thx; 29-10-2015, 15:32.Impianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Originariamente inviato da thx Visualizza il messaggioMentre invece il grafico della produzione che viene disegnato nella pagina principale di metern, che dati va a prendere?Ho degli strani picchi nel grafico della produzione in metern,ovvero il grafico spesse volte va a zero e 5 minuti dopo per conpesare lo zero precedente mi mostra un picco
Ecco un esempio
Produzione in 123solar
Produzione in Metern
Si notano i picchi.
Ovviamente il totale non cambia, ma ogni tanto evidentemente prende un valore 0.
Da cosa potrebbe dipendere ed eventualmente come è possibile cercare di investigare il problema?
Complicazione in più per me che questo disturbo mi blocca il sistema di autoconsumo sul boiler tramite SSR
Commenta
-
A me non blocca la gestione degli SSR perche' lo fa 123solar (con lo script di Gianfd), e 123solar non ha problemiImpianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
prendete quello che dico con il beneficio del dubbio, avevo notato anch'io nel grafico di metern delle letture a zero, ed il motivo era che il pooler485 (nel mio caso) veniva lanciato due volte, una da rc.local e l'altra da config_deamon.php ed a volte si sovraponevano e non riuscivano a scrivere sul file metern*.txt risultato letture a zero sul grafico, ho tolto l'avvio di uno dei due (meglio togliere quello in rc.local) e non ho avuto più problemi.
Potrebbero esserci degli errori di lettura sul bus rs485, che con il software sdm120c di TheDrake, può essere monitorato, abilitando il log, in modo da sincerarsi che il tutto funzioni per il meglio ma qui è meglio che intervenga TheDrakeFV 2,550 kWp azimut 30° S-SO tilt 25°, 10 Q.Cells 255Wp, Inverter ABB-PVI-3.0-OUTD-S, monitor made in energeticambiente con raspberry meterN 123solar e PVoutput.org connesso dal 29 Aprile 2015
Commenta
-
Originariamente inviato da thx Visualizza il messaggioMentre invece il grafico della produzione che viene disegnato nella pagina principale di metern, che dati va a prendere?
Ho degli strani picchi nel grafico della produzione in metern,ovvero il grafico spesse volte va a zero e 5 minuti dopo per conpesare lo zero precedente mi mostra un picco
[ATTACH=CONFIG]50371[/ATTACH]Originariamente inviato da flane Visualizza il messaggioHo lo stesso problema anch'io, che capita casualmente di tanto in tanto e non ho mai capito da cosa può dipendere.
Ecco un esempio
Produzione in 123solar
[ATTACH=CONFIG]50372[/ATTACH]
Produzione in Metern
[ATTACH=CONFIG]50373[/ATTACH]
Si notano i picchi.
Ovviamente il totale non cambia, ma ogni tanto evidentemente prende un valore 0.
Da cosa potrebbe dipendere ed eventualmente come è possibile cercare di investigare il problema?
Complicazione in più per me che questo disturbo mi blocca il sistema di autoconsumo sul boiler tramite SSR
Il problema della lettura dei dati di produzione col passaggio dati da 123solar a metern è un caso un po' complicato. Dipende dall'assunzione errata che tutto vada sempre bene e dal fatto che il raspi sia un sistema multitask...
Ecco cosa ho potuto constatare con le mie prove:
Posto che si utilizzi per la lettura della produzione lo script pool123s o le sue varianti, il problema di base è che non c'è sincronia garantita fra le letture fatte da 123solar, le scritture su file dei dati letti da 123solar e l'istante in cui metern legge i campionamenti della produzione ogni 5 minuti. Il ritardo di qualche secondo che ha messo jeanmarc nelle letture programmate di metern rispetto a 123solar o il fatto che si utilizzi la versione live di pool123s, a volte è sufficiente ad ovviare a questi problemi, ma non sempre.
Può succedere (come si vede proprio dai due grafici) che metern e lo script pool123s leggano dati che appartengono ai 5 minuti precedenti di 123solar semplicemente perchè non viene verificato dallo script di metern che 123solar abbia già letto e/o già scritto il dato dei 5 minuti in corso. Persa una lettura la produzione va a 0 perchè risulta quella di 5 minuti prima e se quella seguente casualmente risulta in sincrono si vede il buco e il picco.
Questo tipo di problemi vengono acuiti da linee disturbate o parametri sbagliati per la lettura dell'inverter. Se 123solar fa un paio di retry (lancia aurora fino a 3 volte se ha un errore di lettura) la frittata è fatta e c'è la quasi certezza del problema.
Peraltro questo problema è lo stesso che crea il disallineamento frequente fra il dato campionato da metern e quello campionato da 123solar nel caso di utilizzo di pool123s in versione "live". Se confrontate i dati dei csv di 123solar e metern, non sempre coincidono 5 minuti per 5 minuti.
Per ovviare a questo problema ho iniziato a lavorare a fatica uno script pool123s modificato con gli opportuni controlli e verifiche per evitare buchi, letture anticipate e letture posticipate, ecc... Non lo ritengo però ancora abbastanza affidabile perchè possa dire che sia utilizzabile in produzione. Dovrebbe infatti resistere a riavvii, ore legali, buchi di letture, ecc... e non ho ancora avuto il tempo di provare tutti i casi. Mi servirebbe un secondo raspi con la linea RS485 condivisa in time sharing, ma le ore della giornata sono tiranne...
La soluzione migliore sarebbe che 123solar "inviasse esplicitamente" a metern il dato di produzione quando questo fosse disponibile, oppure che metern e 123solar si fondessero in un unico programma, ma è tutta roba che per nostra sfortuna non salta fuori gratis.
/drk
Commenta
-
Io uso 123solar dal 2012 , aprii io la prima discussione sul Pogo e con l'aiuto di altri sono e siamo riusciti a farlo funzionare , poi il Pogo non si trova piu' quindi e' stato traslato tutto sul rasp....
premesso questo ; se non ho inteso male , perche' l'autore non ha utilizzato la stessa falsariga di 123solar , cioe' degli script di protocollo per ogni inverter che leggono il valore live e lo tengono in memoria e poi salvano il file csv ogni 5' ?!?!
Bastava che facesse lo stesso , uno script per leggere i dati di consumo , uno script che leggesse i dati di produzione (eventuale) , uno script per leggere una T , chiunque poteva aggiungere uno script in php per le sue letture e tenere questi valori live in memoria e e cosi' via , senza dover fare dei file esterni e andare a leggerli ?!?! salvando poi i valori in un csv ....AUTO BANNATO
Commenta
-
Originariamente inviato da spider61 Visualizza il messaggioIo uso 123solar dal 2012 , aprii io la prima discussione sul Pogo e con l'aiuto di altri sono e siamo riusciti a farlo funzionare , poi il Pogo non si trova piu' quindi e' stato traslato tutto sul rasp....
premesso questo ; se non ho inteso male , perche' l'autore non ha utilizzato la stessa falsariga di 123solar , cioe' degli script di protocollo per ogni inverter che leggono il valore live e lo tengono in memoria e poi salvano il file csv ogni 5' ?!?!
Bastava che facesse lo stesso , uno script per leggere i dati di consumo , uno script che leggesse i dati di produzione (eventuale) , uno script per leggere una T , chiunque poteva aggiungere uno script in php per le sue letture e tenere questi valori live in memoria e e cosi' via , senza dover fare dei file esterni e andare a leggerli ?!?! salvando poi i valori in un csv ....
E' una scelta che ha fatto jeanmarc e sicuramente l'ha ponderata a lungo. In questo modo ha slegato 123solar e relativi aggiornamenti dalla lettura dei dati. Lui si occupa del campionamento e della archiviazione dei dati, altri delle interfaccie verso i diversi dispositivi e le diverse grandezze. In questo modo l'ha reso molto più flessibile e potrà permettersi in futuro una riscrittura dell'architettura interna del programma senza dover cambiare nulla delle interfaccie esterne.
Però metern può leggere molte grandezze contemporaneamente. Le letture fatte in sequenza dall'interno del programma hanno una durata totale che è la somma dei tempi delle singole letture. Se ci sono tanti meter e tante grandezze reali o virtuali da calcolare, la durata della lettura "fisica" può diventare troppo lunga.
Utilizzando invece processi autonomi concorrenti ed esterni a metern per le letture, con dei file in memoria (come fa 123solar) per l'appoggio dei dati, si accorciano drasticamente i tempi del ciclo di lettura principale e si arriva alla quasi simultaneità delle singole letture.
L'unico problema è quando le letture sono interdipendenti. In questo caso bisogna stare un po' più attenti.
Ed eccoci arrivati a metern, relativi script e problematiche indotte.
/drk
Commenta
-
Originariamente inviato da TheDrake Visualizza il messaggioPerò metern può leggere molte grandezze contemporaneamente. Le letture fatte in sequenza dall'interno del programma hanno una durata totale che è la somma dei tempi delle singole letture. Se ci sono tanti meter e tante grandezze reali o virtuali da calcolare, la durata della lettura "fisica" può diventare troppo lunga.
/drk
Posso magari intervenire su qualche parametro temporale per mediare a questo problema?Ultima modifica di thx; 30-10-2015, 21:16.Impianto 2,66 kWp - Power One 3.0 - 8 moduli Sunpower E20 333W - Raspberry con 123Solar@Walter62
https://www.dropbox.com/s/ag0k3azvne...rev04.pdf?dl=0 --> Guida Raspberry + Envir Cost con Measureit 118
Commenta
-
Thedrake ok che l'abbia fatto per poter essere un po' piu' aperto e non voglio criticare il grande lavoro svolto da JM , ma non poteva fare allora come Emoncms , a cui arrivano i dati da uno script esterno indirizzato all'IP del logger al limite , l'ho installato su un Rasp , e ho realizzato 2 script in PHP lanciati al di fuori , uno che legge 1 contatore 485 sui consumi e uno sulla produzione , e l'altro script che mi legge per adesso 5 sonde DS1820 , il primo viaggia con tempo di aggiornamento di 2-3" , il secondo scripth legge ogni minuto (se ci sono errori lascia i valori precedenti) .... poi con i dati letti si crea il file csv..... e non scrivere un file esterno per ogni serie di dispositivi etc.....AUTO BANNATO
Commenta
-
Originariamente inviato da thx Visualizza il messaggioIl fatto e' che io ho solo 2 grandezze fisiche,consumi e produzione...niente eflow e temperature
Premetto che sto usando la versione di 1.5.5 di 123solar, in quanto Gianf ha sviluppato gli script per la gestione dei carichi con questa versione...anche se sta lavorando sulla versione 1.6.x di 123solar
Posso magari intervenire su qualche parametro temporale per mediare a questo problema?
- fai un backup
- verifica che le prestazioni della tua SD siano ok (N.B.: possibilmente evita gli overclock), un rallentamento in lettura o scrittura può dare i problemi più strani.
- verifica che il tuo firmware sia l'ultimo (rpi-update)
- verifica che non ci siano errori nel log di sistema (dmesg e syslog)
- verifica che il problema delle mancate letture non accada quando accendi o spegni o riavii 123solar con metern acceso. Se spegni 123solar, prima spegni sempre metern, poi riavvia prima 123solar e dopo qualche secondo metern
- se possibile, quando devi spegnere/riavviare/ecc, evita di farlo a cavallo dei minuti divisibili per 5
- verifica che non ci siano mai errori lanciando aurora manualmente con gli stessi parametri che hai impostato in 123solar, magari attiva la modalità di debug di 123solar per un po' e verifica se vengono scritti degli errori. 123solar dovrebbe generare un file .err per ogni errore incontrato. Se coincidono con le anomalie dei grafico hai trovato la causa.
- se il problema ce l'hai con la produzione, prova a mettere un ritardo di qualche secondo all'inizio dello script pool123s (es. sleep 5 / sleep 10) in modo che le letture di metern vengano sicuramente fatte dopo che la lettura della produzione di 123solar sia stata effettuata correttamente
In più:- Io con aurora uso i parametri -l2 -Y10 -w10 a cui difficilmente rinuncerei. Anche con un solo inverter sulla linea! Può sempre succedere che scappi una lettura con aurora intanto che 123solar è acceso e il parametro -w20 evita il fallimento certo della lettura.
- In questo momento io non userei mai un aurora <1.8.8 + ultime patch perchè altrimenti aurora non è completamente lock safe.
- Anche per sdm120c non rinuncerei mai ai parametri -z10 -w10 (e volendo anche -j20) e all'ultima versione 1.3.4. Anche una lettura manuale in più fatta con sdm120c può causare conflitti, sia con le versioni precedenti che non gestivano i lock e quindi sovrappongono richieste e risposte, che con le ultime che sono in grado di gestire l'accesso concorrente, ma necessitano di un parametro -w > 0.
Fammi sapere se trovi qualcosa di anomalo e se riesci a risolvere.
/drk.
Commenta
-
Originariamente inviato da TheDrake Visualizza il messaggioraspi1
codice:# while [ $(($(date +'%S')%10)) -lt 5 ] # Salta le cifre dei secondi da X0 a X4 while [ $(($(date +'%S')%10)) -ge 5 ] # Salta le cifre dei secondi da X5 a X9
codice:while [ $(($(date +'%S')%10)) -lt 5 ] # Salta le cifre dei secondi da X0 a X4 # while [ $(($(date +'%S')%10)) -ge 5 ] # Salta le cifre dei secondi da X5 a X9
@ninodifranco
Una finestra maggiore di time sharing, con un solo contatore, senza condivisione del bus con aurora, secondo me è inutile: sul mio raspi una lettura sta sotto al secondo a 9600baud e i miei 4 contatori vengono letti tutti in meno di 5 secondi partendo dal bus libero.
/drk
o in realtà la finesta è il 10% di 60 secondi (6 secondi) e quindi il primo legge nei primi 3s ed il secondo nei successivi 3s?14,805 KWp - 63 moduli Rew Solar RC235 MP60/1 235W - Tilt 13° - Azimut -15° SUD
Inverter PowerOne Aurora PVI-10.0-OUTD-IT e TRIO-7.5-TL-OUTD
Eflow Live rev. 3.2 (funziona anche con multi inverter e multi contatori consumo)
Commenta
Commenta