Re: Dynamic Weather Control Application
Thanks. Yeah i figured this wouldn't be for everybody. I really wanted to create something that felt like a living breathing environment with a life of its own rather than something rigid predictable. Its been running in my vivarium for about two months now. This is pretty good currently but I am constantly tweaking. It currently rains more often than I think is necessary so I'd like to back that off a bit.
The algorithm first determines if there is rain at all that day based on the rain chance (calculated from average rain days in a month that season that the user enters), then there is some chance of how many rain spurts happen (could be a single storm, could be two or more that day), then it generates the daily forecast placing the storms in appropriate places.
Right now the afternoon gets the bulk of the rain chance with some chance of them happening in the morning or evening. The smallest chance of rain happens at night.
Forecast conditions can change either in short 5 minute increments, 15 minutes, 30 minutes, or 1 hour. This is set up by the user. Also, if its raining for a half hour, it doesn't rain that entire half hour. Basically the user can specify how long the mister is on and off, and it will act like a few short passing thunderstorms over the period of that half hour rather than 1 long downpour. But this is entirely up to the user.
I'm also experimenting with sound effects. The idea is a small computer speaker (ideally with a volume control knob) could be plugged into the Raspberry pi and faint birds, crickets, thunder could be heard if it was wanted. A user could also skip the speaker entirely.
The LED channels are adjustable so the light temperature can be tweaked to get the desired look. To make this easier there is a configuration mode that allows you to preview several different conditions. For example if you wanted to see what rainy conditions during a sunset looked like you could just temporarily select those settings in config mode and adjust the lights to the correct level then turn off config mode.