It seems the most likely fail points in an inverter are the storage capacitors. Leading up to catastrophic failure there is a likely inverter degradation … particularly with non-micro inverters that are under more capacitor stress. There are some papers out there, e.g. Flicker-PVSC-Cap-Paper-Final.pdf that point to an output voltage ripple from the PWM that is proportional to the bus capacitance. i.e. a failing capacitor makes itself clear.
But of course nothing compares to some big data. Like panel degradation, which you seem to have pinpointed in your own dataset (@kevin1), you could assume that the inverter degradation would become apparent in a larger dataset and the anomalies (failures) would “pop out”.
Going over what we have (excuse the repetition and somewhat irrelevant sidetrack):
Solar panel installs normally come with a warranty that guarantee solar output over time.
When your solar output falls below that guarantee you should know (i.e. this is not only about “failure”)
The question is, how do you know when your output falls if you don’t have a baseline?
So the first question is: How do you establish a baseline?
Much as solar panel ratings are based on a generalized model, you can set the baseline to an arbitrary (but relevant) point which, one would think, should be based on the specific install location and panel rating, initial runtime and expectations from similarly installed systems & all their baselines.
The simplest idealized baselines would be, let’s say, in order of benefit (best-to-worst; fastest-to-slowest fault resolution)
You have 100 identical panels in an array with 100 micro-inverters.
[This system will always give you more potential confidence in failure analysis than a single-inverter system]
TRIVIAL CASE: If panels are individually monitored, all 100 panels should have similar output all of the time and meet a “peak” expectation else ALERT on those that are consistently lower (easy % confidence in this case).
Establishing catastrophic inverter failure (fast) vs “slow” panel degradation would be clear.
Inverter degradation would be harder to detect (vs. panel degradation) but either way the failing panel would eventually meet some ALERT threshold and be checked.
Physical panel degradation (dirt & dust & bird poop & snow & hail) is more likely to be evenly across multiple panels; micro-inverter degradation is either going to be slow across ALL panels or fast on a particular panel … these would seem to be easy metrics to work with.
HARDER CASE: An arbitrarily-chosen individually-monitored panels’ output should be 1/100th the output of the entire array else ALERT = Either the chosen panel’s output is failing (unlikely) or somewhere in the array there is a failure happening ==> cycle which individual panel is monitored until the fault/s are found.
(The normally-monitored individual panel should obviously be exposed to identical array conditions but would, itself, be “idealized” and “optimized" … it would get cleaned frequently, for example, and could be used to determine “is it worth cleaning the entire array?"; a micro-inverter upgrade could be applied to it to make determinations for the entire array.
SENSE SCENARIO: The array and inverter output (micro or non-micro) is monitored (Sense) but not any individual panel … After some period, max array output is established (peak cloudless sun). Subsequent max outputs fall below the expected panel degradation threshold = ALERT. There could well be inverter failure caught by the instantaneous speed of analysis but more likely (and with more confidence) would be the ongoing lower output that seems like it could only be established with confidence by looking at Sense-wide data. Meaning: in the Sense world, treat the ARRAY as a DEVICE – or, essentially, “40 similar Devices if you have 40 panels”. Do ML on the waveform.
In ML terms, the individual house array is a subset of Sense-wide solar systems being monitored. Data from the same Zip location on other arrays is highly relevant (as @dianecarolmark reiterates) . It’s easy to argue that precise coordinates for solar panel geolocation would be ML gold. Going beyond Zip in precision for Solar geolocation would be my strong suggestion to Sense and would yield a significantly more robust data set in terms of targeting failure alerts. In the solar world, ultra-precise geolocation would seem to be a necessity rather than an after-thought.
As much as solar panels (Sense-wide) could be used as CLOUD DETECTORS … with increased scale comes increased confidence in (array = panel/inverter) failure along with the speed of detection.
And going back to the trivial cases … in the meantime any “trivial case” data that can be injected into the system will be like SMART PLUG LEARNING for Sense Solar. @kevin1, your request for datasets showing inverter failure is a prime example of why establishing a baseline is so important … there is probably plenty of data already stored by Sense that would show those failures but is there any way to make those determinations without looking system-wide?