Hi, I have built a grid tied combined heat and power unit connected to the output of a Quatro.
The output of the CHP goes through a ET112 so i can monitor its output power.
The system works well if I set the ET112 up as a PV inverter and set to Quatro Output, however I then can not tell what has come from my CHP and what has come from my solar panels within the overview on the VRM portal. If i set the ET112 up as a generator, it will not then let me set its location to the Quatro output.
What I would like to do is be able to set the ET112 up as a generator connected to the Quatro output.
At this point, I would like to say that writing software is not my strong point - i'm a power electronics and mixed signal hardware engineer, so would be grateful of any support.
I've read through the github wiki and as much info as I could find on the Venus OS and adding drivers, how the Dbus hangs together etc.
Digging a bit further, in the dbus-cgwacs/ac_sensor_settings I found this bit of code:
QString AcSensorSettings::getProductName(const QString &serviceType, Position position)
{
if (serviceType == "grid")
return "Grid meter";
if (serviceType == "genset")
return "Generator";
if (serviceType == "pvinverter") {
QString productName = "PV inverter";
QString p;
switch (position) {
case Input1:
p = "input 1";
break;
case Input2:
p = "input 2";
break;
case Output:
p = "output";
break;
default:
break;
}
if (!p.isEmpty())
productName.append(" on ").append(p);
return productName;
}
return "AC sensor";
}
Would it be as simple as doing something like this or am I missing a big part of something?
QString AcSensorSettings::getProductName(const QString &serviceType, Position position)
{
if (serviceType == "grid")
return "Grid meter";
if (serviceType == "genset"){
QString productName = "Generator";
QString p;
switch (position) {
case Input1:
p = "input 1";
break;
case Input2:
p = "input 2";
break;
case Output:
p = "output";
break;
default:
break;
}
if (serviceType == "pvinverter") {
QString productName = "PV inverter";
QString p;
switch (position) {
case Input1:
p = "input 1";
break;
case Input2:
p = "input 2";
break;
case Output:
p = "output";
break;
default:
break;
}
if (!p.isEmpty())
productName.append(" on ").append(p);
return productName;
}
return "AC sensor";
}
Many thanks in advance for your help and input.