Growatt inverter script read Mastervolt XS3200-Soladin 600

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • NvBgm
  • Registratie: Maart 2003
  • Laatst online: 08-03-2024
Al geruime log ik mijn Growatt 300 en stuur de data naar pvoutput.
Ook log ik mijn 'slimme meter' en zet de uitkomst en grafieken op mijn eigen site.
Voor het laatste maak ik gebruik van het script van Embezon geschreven door Marcel Renier en gemodificeerd door Marco Bakker. Ikben daar zeer tevreden over en werkt perfect.
Wat ik nu graag wil doen is het script wat zij gebruiken voor de inverter uit te lezen om te programeren naar mijn inverter.
Ik ben dus op zoek naar iemand die dat script ook gebruikt maar dan voor de Mastervolt of Soladin.
Het enige wat ik vraag is of zij mij de desbetreffende data files kunnen sturen.

Bij voorbaat dank


www.NvBgm.nl

Acties:
  • 0 Henk 'm!

  • DigiK-oz
  • Registratie: December 2001
  • Laatst online: 16-07 11:02
Ik kan je helaas niet helpen, maar ben wel erg benieuwd hoe jij de growatt inverter naar pvoutput laat loggen.

Ik heb al diverse mogelijkheden gevonden op internet, heb een raspberry pi ingericht om hier mee aan de slag te gaan, maar heb nog geen keuze gemaakt welke methode ik zal gaan gebruiken.

Whatever


Acties:
  • 0 Henk 'm!

  • NvBgm
  • Registratie: Maart 2003
  • Laatst online: 08-03-2024
@DigiK-oz

Als je als eerste alleen je data naar pvoutput wil sturen kun je onderstaande script gebruiken.
Dit leest je inverter in ModBus mode uit. ik raad je aan om dit via de rs232 aansluiting te doen
met een goede rs232/usb converter.. Zelf gebruik ik die van sitecom CN104 en die bevalt prima.
Niet alleen voor de inverter maar gebruik die bijna overal voor bij een omzetting van rs23 naar usb.
Jou raspberryPI heb je al ingericht schrijf je en als je daar ook python op hebt geinstalleerd kun je dat eenvoudige script al draaien. Je moet natuurlijk wel een API key aanvragen bij pvoutput.
Met onderstaande script moet dit lukken. Kom je er niet uit kun je mij altijd even mailen.
Kijk daarvoor even op de site onderaan de pagina..

#!/usr/bin/python
# -*- coding: utf-8 -*-

import subprocess
from time import strftime
import time
from pymodbus.client.sync import ModbusSerialClient as ModbusClient

t_date = format(strftime('%Y%m%d'))
t_time = format(strftime('%H:%M'))

client = ModbusClient(method='rtu', port='/dev/my_pv', baudrate=9600, stopbits=1, parity='N', bytesize=8, timeout=1)
client.connect()
rr = client.read_input_registers(1,44)

rr = client.read_input_registers(2,1)
value=rr.registers
pv_watts=float(value[0])/10
rr = client.read_input_registers(3,1)
value=rr.registers
pv_volts=float(value[0])/10
rr = client.read_input_registers(4,1)
value=rr.registers
pv_amps=float(value[0])/10
rr = client.read_input_registers(12,1)
value=rr.registers
out_watts=float(value[0])/10
rr = client.read_input_registers(13,1)
value=rr.registers
ac_hz=float(value[0])/100
rr = client.read_input_registers(14,1)
value=rr.registers
ac_volts=float(value[0])/10
rr = client.read_input_registers(27,1)
value=rr.registers
Wh_today=float(value[0])*100
rr = client.read_input_registers(29,1)
value=rr.registers
Wh_total=float(value[0])*100
# close the client
client.close()

SYSTEMID = "xxxxx" # Plaats hier jou PVoutput SystemID
APIKEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Plaats hier jou PVoutput APIkey

cmd=('curl -d "d=%s" -d "t=%s" -d "v1=%s" -d "v2=%s" -d "v4=%s" -d "v6=%s" -d "c1=0" \
-H "X-Pvoutput-Apikey: %s" \
-H "X-Pvoutput-SystemId: %s" \
http://pvoutput.org/service/r2/addstatus.jsp' \
%(t_date, t_time, Wh_today, out_watts, P1_verbruik, pv_volts, APIKEY, SYSTEMID))
ret = subprocess.call(cmd,shell=True)

time.sleep(30)

cmd=('curl -d "data=%s,%s,,,,,,," -H "X-Pvoutput-Apikey: %s" \
-H "X-Pvoutput-SystemId: %s" http://pvoutput.org/service/r2/addoutput.jsp' \
%(t_date, Wh_today, APIKEY, SYSTEMID))
ret = subprocess.call(cmd,shell=True)

Acties:
  • 0 Henk 'm!

  • Jaconet
  • Registratie: September 2009
  • Laatst online: 16-07 12:47
Geef een fout in lijn 50?