This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

Fronius inverter JSON integration
#1
Hi,

Does anybody have an implementation with Fronius inverter via JSON?


BR
Tomas
Reply
#2
Hi,

I have a script version, maybe this helps you with creating the JSON template.

.lua   Fronius Solar Inverter.lua (Size: 3.36 KB / Downloads: 127)


BR,

Erwin
Reply
#3
HI Erwin,

have you similar script for Kostal or something else?
Reply
#4
(01.06.2019, 09:57)Erwin van der Zwart Wrote: Hi,

I have a script version, maybe this helps you with creating the JSON template.



BR,

Erwin

Thanks Erwin!
Reply
#5
Hi Erwin,

Does this script work on the regular connection with the internet or is there a separate connection to the inverter.
They have installed a Fronius here today and i'm running the script resident with an interval of 60 seconds, but i get no data. Adjusted the IP and created objects in HL, no errors and no log.

Thx in advance
Novice DIY with a HL and KNX basics trying to ...
Reply
#6
This is old way of making Modbus TCP integration it work on local network. This should be converted to a profile.
------------------------------
Ctrl+F5
Reply
#7
Hi 
in modbus section creat a new modbus tcp connection and try below Json

Attached Files
.json   fronius.json (Size: 4.02 KB / Downloads: 43)
Reply
#8
@Balatis,

File uploaded as a profile in Modbus section, connection created.

Error Log:

Fronius (TCP 192.168.XXX.XXX:502) connection failed: Connection refused.

I guess that the port is not right, but i can't find what port to set.

Thx

edit:
The pv system was installed last friday and i guess i don't have full admin access to the inverter and the modbus is not active on the inverter. i will call them first thing monday.
Novice DIY with a HL and KNX basics trying to ...
Reply
#9
Update:

Got on the phone with Fronius tech support and they gave me access to the inverter. Adjusted the modbus settings in the inverter and it's working now.

Thx
Novice DIY with a HL and KNX basics trying to ...
Reply
#10
As mentioned above, connection works, but i think i don't have the right setting in the modbus config because for some data i get really strange values. Or otherwise my datatype's are incorrect in HL

Modbus settings:

Gegevensoverdracht via Modbus: TCP
Modbus-poort: 502
String Control-adresoffset: 101
Sunspec Model Type: Float (can select int/SF)

Datatype in HL objects: 4 byte floating point
Novice DIY with a HL and KNX basics trying to ...
Reply
#11
(22.06.2020, 16:45)Firechief Wrote: As mentioned above, connection works, but i think i don't have the right setting in the modbus config because for some data i get really strange values. Or otherwise my datatype's are incorrect in HL

Modbus settings:

Gegevensoverdracht via Modbus: TCP
Modbus-poort: 502
String Control-adresoffset: 101
Sunspec Model Type: Float (can select int/SF)

Datatype in HL objects: 4 byte floating point 
if you have value , you have communication ..... maybe your type of inverter has deferment register list of values ....
The above json is for symo  10000w 
here there is all register data of all models 
https://www.fronius.com/en/photovoltaics...modbus-rtu
Reply
#12
Balatis,

Just to let you know,

I adjusted the Sunspec Model Type from Float to int/SF and now values are correct. In the meantime i also installed the Fronius Smart Meter and I will try to adapt the json profile to be able to read all the data from the Smart Meter as well.
Novice DIY with a HL and KNX basics trying to ...
Reply
#13
Hi All,

Based on the json profile provided above, I created a second profile for the smart meter.

Then I created a second modbus connection on the HL with the same IP and Port as the Fronius inverter, but changed the device adress to 2 as the Inverter has adress 1. This doesn't work and I get a "read failed : Target device failed to respond" error. I looked in the manual and this writes the modbus device ID for the Smart Meter should be 240 for the 1st smart meter. It still doesn' work. Can anyone help?

Thx in advance

PS: json profile added

Attached Files
.json   Fronius Smart Meter.json (Size: 3.18 KB / Downloads: 9)
Novice DIY with a HL and KNX basics trying to ...
Reply
#14
You don't have any datatype set in your profile, looking on the bus_datatype it is most likely more than one register. If it is just one then datatype is not needed for more it is mandatory.
https://openrb.com/docs/modbus.htm
------------------------------
Ctrl+F5
Reply
#15
Daniel,

I made an exact copy of the profile (wich works) provided by Balatis above, I only changed the addresses to what I could find in the Fronius documentation. I now see an error on the profile: "Fronius Smart Meter(TCP 192.168.100.189:502)read failed: illegal data address" So I guess the addresses are not correct?


Kind regards

So would this be correct syntax?:

Code:
{
    "manufacturer": "Fronius",
    "description": "Fronius Smartmeter TS 65A-3",
    "mapping": [
      {
    
            "name": "AC_total_curent",
            "bus_datatype": "14",
            "type": "register",
            "address": 3,
            "writable": "true",
            "datatype": "int16",
            "value_multiplier": 0.01,
            "units": "A"
        },
Novice DIY with a HL and KNX basics trying to ...
Reply
#16
I don't know as I don't know what is the registry size. What does the manuals says about this?
------------------------------
Ctrl+F5
Reply
#17
Daniel,

Attached the manual and register for the Fronius. 
There is a second register for the meter also. File attached

Hope you can help me out...

Inverter is a single phase and meter is a 3-fase because the grid is 3x400V+N

Kind regards


Attached Files
.pdf   Fronius Datamanager Modbus TCP.pdf (Size: 1.12 MB / Downloads: 9)
.xlsx   Meter_Register_Map_Int&SF_v1.0.xlsx (Size: 24.72 KB / Downloads: 5)
Novice DIY with a HL and KNX basics trying to ...
Reply
#18
Since the addressing starts from 1 you need to subtract 1 from each address. You also need to read from input registers (read-only), not normal registers. Then there's a separate register which stores the scaling factor. Newer firmwares have an option to do a read test not only for RTU but also for TCP. It's more convenient than creating profiles for testing.
Try this profile:
Code:
{
  "manufacturer": "Fronius",
  "description": "Fronius Smartmeter TS 65A-3",
  "mapping": [
    {
      "address": 2,
      "address_scale": 6,
      "bus_datatype": "float32",
      "datatype": "int16",
      "name": "AC Total Current value",
      "type": "inputregister",
      "units": "A",
      "value_nan":[ 0x8000 ]
    },
    {
      "address": 6,
      "bus_datatype": "int16",
      "datatype": "int16",
      "internal": true,
      "name": "A_SF",
      "type": "inputregister",
      "value_nan":[ 0x8000 ]
    }
  ]
}
Reply
#19
Admin,

Created the profile but noticed in JSON editor there was an error on line 13:


Code:
      "value_nan":[ 0x8000 ]

Error: Parse error on line 13:
...      "value_nan":[ 0x8000 ]    },   
-----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', ']', got 'undefined'

Tried the profile but still getting the error:

 "Fronius Test(TCP 192.168.100.189:502)read failed: illegal data address"
Novice DIY with a HL and KNX basics trying to ...
Reply
#20
JSON does not allow hexadecimal numbers by default but LM will accept such profile. Have you deleted the device and created it again from scratch after uploading new profile? Are you using slave ID 240 for the meter?
If it still does not work then use Read test to check which input register is readable.
Reply


Forum Jump: