Multi zone heating scheduler development

Im working here today with Richard Hatfield (hatfieldr) on a multizone heating scheduler module for emoncms. Richard has come up to North Wales to work on it with me. We are documenting our progress on a system build page here:

Heating controller with multi zone scheduling and the module is up on github here https://github.com/emoncms/scheduler

Here's a screenshot of the scheduler interface so far, its designed to be used on a phone:

It works in conjunction with the packetgen module which then transmitts the zone states and set point temperatures to zone controllers which are emontx v2's with a jeenode output plug connected to relay's.

This is what we're working on for the rest of the day:

  • Ensure that first heating period in a day cannot end later than the start of the second heating period.
  • Switch from defining time in hours and minutes to decimal time (ie hours:2, minutes:30 to time: 2.5), simpler to make time comparison.
  • Implement boost functionality: +1h, +2h
  • Implement changeable temperature targets.
  • Add set able off temperature
  • Configure how room temperatures are included in the interface for each zone.
Schism's picture

Re: Multi zone heating scheduler development

Looks good... I'm definitely interested in progressing my house to individual room heat control in future :)

ukmoose's picture

Re: Multi zone heating scheduler development

Looks good but from a UX perspective, can't think of a situation where I'd want to display different days for different zones on the same screen.  So might be better moving that to outside the individual zones.

 

TrystanLea's picture

Re: Multi zone heating scheduler development

We've removed the day buttons from the left, they are now on the top, good progress on it today, most of the work on functionality rather than interface design, there's some initial notes on how to get the scheduler module running in the build guide page: Heating controller with multi zone scheduling

Here's how its looking like at the moment:

maglo18's picture

Re: Multi zone heating scheduler development

What I doing wrong?

root@NAS:/var/www/emoncms# php /var/www/emoncms/Modules/scheduler/scheduler_run.php
PHP Notice:  Use of undefined constant _ENABLE_PASSWORD_RESET_ - assumed '_ENABLE_PASSWORD_RESET_' in /var/www/emoncms/settings.php on line 51
PHP Fatal error:  Call to a member function fetch_array() on a non-object in /var/www/emoncms/Modules/scheduler/scheduler_model.php on line 51

Fatal error: Call to a member function fetch_array() on a non-object in /var/www/emoncms/Modules/scheduler/scheduler_model.php on line 51

pb66's picture

Re: Multi zone heating scheduler development

If you use "  _ENABLE_PASSWORD_RESET_ "  in the search box that has been discussed a couple of times.

$enable_password_reset should be set to false if you don't want it and true if you do. _DISABLE_PASSWORD_RESET_ is associated with the deb installer.

So " in /var/www/emoncms/settings.php on line 51 " change

$enable_password_reset = _ENABLE_PASSWORD_RESET_;

to either           $enable_password_reset = false;        or        $enable_password_reset = true;

Paul

Bramco's picture

Re: Multi zone heating scheduler development

Hi,

Very interesting - I've also been thinking about how to control my heating more effectively.

We have a 210 litre thermal store which is heated by solar thermal, PV diversion and a gas boiler, so summers the boiler doesn't fire, spring and autumn it only fires occasionally and winters it is the main source of heat with the solar thermal and PV diversion adding what is available.

Like most houses in the UK our CH system is managed through TRVs on each of the radiators or through wireless thermostats on the zone which has underfloor heating, so my requirements would only be to turn on/off the pumps for the two separate zones (radiators in the old part of the house and underfloor in the new part) and let the thermostats on the radiators and in the rooms do their job.

I was planning to use packetgen to send commands to my emonTX which is currently monitoring temperatures on my thermal store and doing the PV diversion.  

Also I was planning to use a one wire controller to manage turning the pumps on and off. Has any one had any experience with one of these http://www.axiris.eu/en/index.php/one-wire/1-wire-relay-card. It would seem to be a simple enough exercise to use one of the spare pins on the emonTX to manage this device.

As well as the obvious timing logic, like turning on and off at set times each day, I also need to add some additional logic for example if it's only 15 minutes to the off time, don't bother firing the boiler again. So it would be good if there could be some logic in the system you are developing that could suppress an instruction to a zone to heat if another temperature is at a set point or if as above there is only a short time before the end of the cycle.

I'm also planning on replacing the logic for controlling the firing of the boiler to supplement the thermal store, so some fairly simple logic that would allow for the tank to run a lot cooler unless there was a call for central heating, so it would be great if there was a way of triggering some other s/w from what you are developing.

Keep up thee great work, I'll try to take a look at the documentation later.

Simon

 

 

 

 

 

maglo18's picture

Re: Multi zone heating scheduler development

I have only half success.

root@NAS:/var/www/emoncms# php /var/www/emoncms/Modules/scheduler/scheduler_run.php
PHP Fatal error:  Call to a member function fetch_array() on a non-object in /var/www/emoncms/Modules/scheduler/scheduler_model.php on line 51

Fatal error: Call to a member function fetch_array() on a non-object in /var/www/emoncms/Modules/scheduler/scheduler_model.php on line 51

pb66's picture

Re: Multi zone heating scheduler development

After installing the scheduler module did you run "Admin" -> "Check&Update" in emonCMS via your browser?

maglo18's picture

Re: Multi zone heating scheduler development

Thanks. Now is working. 

maglo18's picture

Re: Multi zone heating scheduler development

Thank You. Now is working.

How to add on dashboard push button? I want to on/off really in my house. Maybe  someone have better idea how to control relay from emoncms?

TrystanLea's picture

Re: Multi zone heating scheduler development

Dashboard push buttons that set the control variables in packetgen are a feature that needs to be added. If anyone would like to have a go at implementing this, the push button that sets a feed may be a good place to start, it would involve changing line 41 to the packetgen api rather than the feed api

https://github.com/emoncms/emoncms/blob/master/Modules/dashboard/Views/j...

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.