Huawei Solar
A Ruby library for connect to Huawei Solar inverters using Modbus TCP.
Status
:warning: This project is still experimental, use with caution!
PR are welcome to increase the property list in data/registers.yml
Example
require "huawei_solar"
hs = HuaweiSolar.new("192.168.0.110", 502)
hs.read(:inverter_model) # => "SUN2000-3.68KTL-L1"
hs.read(:inverter_input_power) # => 234.0
hs.read(:inverter_input_power, unit: true) # => "234.0 W"
hs.read(i[inverter_output_power inverter_daily_energy meter_grid_power])
# => [225.0, 5.82, -339.0]
hs.read(i[inverter_output_power inverter_daily_energy meter_grid_power], units: true)
# => ["225.0 W", "5.82 kWh", "-339.0 W"]
hs.read(i[inverter_output_power inverter_daily_energy meter_grid_power], units: true, keys: true)
# => {:inverter_output_power=>"606.0 W", :inverter_daily_energy=>"15.15 kWh", :meter_grid_power=>"353.0 W"}
hs.read_all
# => ["SUN2000-3.68KTL-L1", "XXXXXXXX", 2, 224.8, 3.08, ..]
hs.read_all(units: true)
# => ["SUN2000-3.68KTL-L1", "XXXXXXXX", 2, "224.8 V", "3.08 A", ..]
hs.read_all(keys: true)
# => { "inverter_model"=>"SUN2000-3.68KTL-L1", "inverter_serial_number"=>"XXXXXXXX", "inverter_pv_strings"=>2, ... }
hs.close
License
Copyright © 2023 Javier Aranda. Released under the terms of the MIT license.