GroveStreams
Terp private msg quote post Address this user
I would like to calcualte the time specific dT/dt value for the measured temperature profile over time.

How can this be done in GroveStreams?
Post 1 IP   flag post
Trakk private msg quote post Address this user
I may be looking for something similar.
I have a stream from a thermostat logging on/off times and temperature.
I want to be able to get the total on time each hour of the day.
And the last temperature logged at those times.

This way I can find out the overall efficiency (not scientifically) of how long it takes to cool. I could then use it to know when a filter needs to be changed (more or less often).

Since I also track door open-close, I could use this same method to track door being left open and causing the unit to run more often.

My data arrives with true/false for contact open closed for the door. And idle/cool (or heat) for on/off of cooling / heating.
Post 2 IP   flag post
MikeMills private msg quote post Address this user
@Trakk

I think this is what you want. If not, it should point you in the right direction.

I created four streams:
1. Temp: Actual temperature readings with sample times. Samples are type Double. Regular stream.
2. Temp Sample Times: Derived regular stream. Type Long. Holds the Sample times of Temp stream so that we can find the deltas. Times are epoch millis.
3. Temp dt (millisecs): Derived regular stream. Type Long. Holds the change in sample times between samples.
4. Temp Profile Over Time: dT/dt. Regular stream. Type Double. dt is change in milliseconds.

Screenshots. See the selected stream on the left for each:













Derivation is running about every 30 seconds per expression tree level so it took under 90 seconds to get the result after the temperature arrived.
Post 3 IP   flag post
MikeMills private msg quote post Address this user
@Trakk
"And the last temperature logged at those times."

Getting the last temp for the Day or Hour is easy. Choose a Day, or Hour, cycle with the LAST function. This will return the last sample value for that cycle.

You can choose Cycles and functions (min,max,sum,last, ...) in Dashboard widgets or in a derived stream expression.

"I want to be able to get the total on time each hour of the day." I'm still thinking about this one...
Post 4 IP   flag post
3015 4 4
Log in or sign up to compose a reply.