Find reappearing pattern in the signal I am working with a signal that describes energy consumption in some house as a function of time and I am trying to find time intervals that correspond to some particular type of dish washer.

What do we know about this dish washer:


It has 4 heating pulses.
Each pulse has amplitude around 2000 and lasts for at least 120 seconds.
Heating pulses are not periodic.
If there is such a dish washer it was used at least twice in a given period of time.


Question that I am trying to answer:


Was such a dish washer used in this house during given time interval?
If yes, I would like to identify all time intervals when this happened.


Example:


csv with whole signal

Let's say I identified one occurrence of this dish washer, like on this figure and trying to find if there are other similar intervals. At the moment I am doing convolution of the whole signal with this dish washer signal and pick time intervals that give high convolution score. Problem is that signal is additive and if person is using other appliances at the same time I may get high score when there is no dish washer there and low score when it is.
Vladimir: You're trying to detect a certain sample pattern (a certain sequence of sample values) within a longer discrete sequence of input samples. This sounds liked a "matched filter" problem to me. If the pattern of samples you're trying to detect is the samples in the red shaded region of your diagram then performing convolution seems like a smart thing to try first before you explore more exotic signal detection algorithms. By convolution I mean an implementation where you pass your long input sequence of values through a tapped-delay line FIR filter. But be careful! You must make sure that the coefficients of the tapped-delay line filter are a "flipped in time" (reversed in time order) version of the sequence you're trying to detect.