gruppo
| Inviato il: 27/02/2017 23:12:18
|
penso che con libre office non funzioni perchè ho scritto il codice in vba.
ragazzi è solo un test ed è fisso su com1 ma se entri nel codice puoi cambiare la porta.
oltre a scrivere tutti i campi dei comandi su ogni foglio fa anche un file di log
nel codice l'istruzione è questa
Open ThisWorkbook.Path & "\usage.log" For Output As #1
se chiudi il file di e xc el la porta com viene chiusa e riaprendolo il file viene sovrascritto.
Il log dei comandi rimane nei relativi fogli. se salvi la cartella di lavoro.
per gli eventuali NAK c'è un foglio apposito in cui viene scritto il l'orario e il comando che ha dato nak.
Ripeto questo è solo un test di affidabilità di comunicazione con l'inverter
e per essereindicativo dovrebbe girare per almeno 24 ore.
puoi pure prendere il mio esempio se devi fare un software VB
unica restrizione della mia parte di codice, ne vieto la rivendita a scopo di lucro.
quindi le volpi sono avvisate.
Modificato da gruppo - 28/02/2017, 00:06:16
--------------- Batterie? no grazie ho SSP
| |
| | gruppo
| Inviato il: 27/02/2017 23:45:53
|
aprire il file con macro abilitate
nel foglio1 cliccare sul bottone in alto , il codice vba inizia a lavorare
popolando i vari fogli tipo qpigs, etc... si dovrebbe vedere le righe compilarsi.
nel frattempo scrive anche il file di log come indicato nel post prima.
dopo un po che gira dovrebbe comparire anche il grafico sul foglio 10
che ho inserito stasera.
anche questo è solo un esempio.
ho già trovato anche il sistema per inviare i dati su pvoutput.
con curl.exe e poche istruzioni. (info per stufodelgas)
--------------- Batterie? no grazie ho SSP
| | | | gruppo
| Inviato il: 28/02/2017 00:13:59
|
ecco il file mi si era cancellato dal post precedente.
con libreoffice non funziona .
--------------- Batterie? no grazie ho SSP
| | | | valter996
| Inviato il: 03/03/2017 10:35:52
|
Una domanda su lucibus128betaG che sto cercando di installare su un computer...ma è compatibile con win 10? La cartella con db_files_vuoti dove va messa? Grazie
--------------- Impianto ad isola a 48v con pannelli peimar tot 4.050w 8 batterie 100ah PIP-4048MS dal 2017 very happy
| | | | Il_Salentino
| Inviato il: 03/03/2017 15:05:19
|
CITAZIONE (valter996, 03/03/2017 10:35:52 )
Una domanda su lucibus128betaG che sto cercando di installare su un computer...ma è compatibile con win 10? La cartella con db_files_vuoti dove va messa? Grazie
Valter devi installare la versione 128betaG Prima installazione ed il programma si installerà correttamente. Devi avere l'inverter collegato altrimenti non funziona il software.
E' compatibile con win10 e la cartella db_files_vuoti non basta per il funzionamento di lucibus; occorrono altre cartelle che si installeranno quando utilizzerai il software prima installazione, non solo lucibus128betaG.
Modificato da Il_Salentino - 03/03/2017, 15:15:29
--------------- 1 inverter PIP 5048MST + 12 pannelli TIANWEI 230Wp + 18 pannelli amorfi da 75Wp + 28 pacchi da 200 celle 18650 litio 600Ah 1 inverter PIP 5048MSD + 3 pannelli junko 255 Wp + 3 pannelli Tianwhei 230 Wp + 12 batterie 4 V 200 Ah 1 generatore eolico da 1000W autocostruito. Boiler Ariston 150l
| | | | gruppo
| Inviato il: 03/03/2017 23:10:11
|
Dopo il primo test di comunicazione seriale positivo.
ecco un esempio di come inviare i dati a pvoutput
anche questo è ancora un test.
ho configurato solo tre comandi ripetitivi QDI,QPGS0,QPGIS
all'inizio del modulo 1 si deve inserire
il proprio apikey e systemid rilasciato da pvoutput
'**************************************************************************************
' paramatri da sostituire dopo la registrazione a pvoutput ApiKey e SystemId
'--------------------------------------------------------------------------------------
Const ApiKey = "aabbccddeeffgghhiillmmnnooppqqrrsstt"
Const SystemId = "111111"
'**************************************************************************************
metto un pezzo di grafico per far vedere i dati ricevuti da pvoutput
abbiamo potenza fotovoltaico, potenza attiva del carico tensione batteria e temperatura. vi sono anche i conteggi energia fatti da pvoutput.
per questo si deve essere precisi nel inviare la media di 5 minuti.
e per far questo ho creato una classe per la standardizzazione dei valori e una collezione che li contiene.
per vedere se stà girando basta andare sul foglio10 e spuntare il checkbox autotrack
Immagine Allegata: pvoutput4048.jpg
--------------- Batterie? no grazie ho SSP
| | | | gruppo
| Inviato il: 04/03/2017 08:06:51
|
nella sub main() del modulo 1
prima di postarlo ho dimenticato di rialzare i tempi di trasmisione e lettura
il codice da cercare e correggere è questo dove dove tLettura + 0.6 va portato a tLettura + 1
lo stesso per tTrasmetti + 0.6 va portato a tTrasmetti + 1
.......
DoEvents
If tStart > (tLettura + 1) And txInProcesso > 0 Then 'lettura ogni .xxx millisecondi
'Debug.Print Timer
'leggere seriale
.........
If tStart > (tTrasmetti + 1) Then
'trasmettere alla seriale
.........
nella classe ClsStandardizzazione nel metodo reset ho dimenticato di resettare la variabile secondold
ecco il metodo Reset() corretto prima di End Sub si trova la linea in più secondold=0
Public Sub Reset()
mvarValoreDaPesare = 0
mvarsecondidelvalore = 0
secondold = 0
End Sub
Modificato da gruppo - 04/03/2017, 09:04:00
--------------- Batterie? no grazie ho SSP
| | | | gruppo
| Inviato il: 04/03/2017 18:58:39
|
ho provato ad usarla oggi ed ho trovato un altro bug sul valore medio
metto direttamente tutte le correzioni
tanto il file è piccolo
Modificato da gruppo - 04/03/2017, 20:57:49
--------------- Batterie? no grazie ho SSP
| | | | gruppo
| Inviato il: 04/03/2017 20:58:28
|
modificare nel file tutta la classe clsstandardizzazione
Option Explicit
Private mvarValoreDaPesare As Double
Private mvarsecondidelvalore As Integer
Private mvarpeso As Double
Private mvarNomecomando As String
Private mvarSecondOld
'Private pesold
'Static valore
'Definizione in input della proprietà "".
Public Property Let nomeCmd(ByVal vDatin As String)
mvarNomecomando = vDatin
End Property
'Definizione in output della proprietà "".
Public Property Get nomeCmd() As String
nomeCmd = mvarNomecomando
End Property
'Definizione in input della proprietà "".
Public Property Let valoredapesare(ByVal vDati As Double)
mvarValoreDaPesare = vDati
End Property
'Definizione in output della proprietà "".
Public Property Get valoredapesare() As Double
valoredapesare = mvarValoreDaPesare
End Property
'Definizione in input della proprietà "".
Public Property Let secondidelvalore(ByVal vDati2 As Double)
mvarsecondidelvalore = vDati2
End Property
'Definizione in output della proprietà "".
Public Property Get secondidelvalore() As Double
secondidelvalore = mvarsecondidelvalore
End Property
'Definizione in input della proprietà "".
Public Property Let ValoreMedio(ByVal vDati3 As Double)
mvarpeso = vDati3
End Property
'Definizione in output della proprietà "".
Public Property Get ValoreMedio() As Double
ValoreMedio = mvarpeso
End Property
'Definizione in input della proprietà "".
Public Property Let secondold(ByVal vDatin As Integer)
mvarSecondOld = vDatin
End Property
'Definizione in output della proprietà "".
Public Property Get secondold() As Integer
secondold = mvarSecondOld
End Property
Public Sub Pesa()
'(valoredapesare As Integer, secondi As Integer, pesold As Double, secondold As Double) As Variant
'serve per fare la media di tutti i valori letti nei 5 minuti
' non ha importanza il tempo esatto dei 5 minuti ma la media dei valori sino a qui letta con il peso dovuto.
Static pesold As Double
'Static secondold As Integer
'Static valore
Dim peso As Double
peso = (mvarValoreDaPesare * mvarsecondidelvalore) + (pesold * mvarSecondOld)
mvarSecondOld = mvarSecondOld + mvarsecondidelvalore
pesold = (peso / mvarSecondOld)
mvarpeso = pesold
End Sub
Public Sub Reset()
Static secondold As Integer
mvarValoreDaPesare = 0
mvarsecondidelvalore = 0
mvarSecondOld = 0
End Sub
Modificato da gruppo - 05/03/2017, 09:26:40
--------------- Batterie? no grazie ho SSP
| | | | gruppo
| Inviato il: 05/03/2017 19:05:56
|
dimenticavo l'utility curl.exe usata per inviare i dati si può trovare
qui
download without ssl
inoltre oggi a 32000 righe di excel si è piantato è andata in overflow la variabile che contiene l'ultima riga vuota del foglio di excel
perchè l'ho dichiarata integer invece di long.
è in modulo1 nella sub popolacomando
Sub popolaComando(nomeFg As String, datorx As String)
Static secondi As Integer, secondi2 As Integer
Static tempoi As Integer, tempoi2 As Integer
Static nqpgs0 As Integer
Dim valore As Long, NDati As Long
Dim RangeTmp As String
'Application.ScreenUpdating = False
Dim acampi() As String, col As Integer, rigavuota As Long
il software sviluppato in poche ore di lavoro è da considerarsi come idea sia per l'invio dati a pvoutput che per il protocollo di dialogo con l'inverter.
e lo scopo del test è vedere se il protocollo funziona in altre installazioni.
attualmente uso 4048 5000VA mppt fw 52.30 fw2 1.24(fw2 si vede solo se campo pv)
un altra idea può essere mettere la comunicazione e la parte per pvoutput in una piccola applicazione fatta in C standalone (programmatore C open source gradito)
che si posiziona sulla tray bar.
e da far lavorare sia come master o come slave.
in modalità Master pensa lei a inviare le richieste all'inverter ma impegna la seriale.
in modalità slave invece sniffa solo la seriale quindi sarà il watchpower o qualsiasi altro prg a dialogare con l'inverter e quando vede i comandi che gli servono li memorizza, li pesa a 5 minuti e li invia a pvoutput.
Modificato da gruppo - 05/03/2017, 19:21:23
--------------- Batterie? no grazie ho SSP
| | | | | | | gruppo
| Inviato il: 07/03/2017 22:57:33
|
help come faccio a modificare il post e fare le immagini più piccole
chiedo aiuto ai moderatori?.
mi scuso,la prossima volta le rimpicciolisco prima di fare upload.
--------------- Batterie? no grazie ho SSP
| | | | kamaleon
| Inviato il: 08/03/2017 08:47:53
|
Sai da che versione di excel posso usare il file xlsm ?
--------------- ISOLA 24 pannelli mono da 185W ( 4,4KW ) Lifepo4 16s 280aH INVERTER SOFAR HYD6000 EP
| | | | gruppo
| Inviato il: 08/03/2017 17:36:02
|
ciao kamaleon
il 2007 ma se ti serve posso salvarlo in formato per il 2003
non ho provato ma penso che funzioni anche con il runtime.
solo che in caso di runtime non potrai fare modifiche.
--------------- Batterie? no grazie ho SSP
| | | | maxsemp
| Inviato il: 09/03/2017 09:08:41
|
...e bravo Gruppo, come sempre.
Ti chiedo se è possibile vedere in tempo reale il modo di funzionamento dell'inverter e i valori dell'energia prodotta, dell'energia prelevata dalla rete, l'energia solare consumata e l'energia consumata, che, secondo me, sono dati fondamentali per fare un bilancio energetico giornaliero. Grazie.
Saluti e buon lavoro.
--------------- Impianto fotovoltaico Off-Grid 3 kWp 10 moduli 300 W SUNERG inverter Genius 50 - fw 32.40 8 batterie 200 Ah 12 V
| |
| | |
|
Versione Mobile!
|
|
|
|
|
|
|
|
|
|
|
|
|
|