DIY Heat Pump contr...
 
Notifications
Clear all

DIY Heat Pump controller (driver)

10 Posts
6 Users
27 Likes
3,600 Views
(@gonzho)
Eminent Member Member
0 kWhs
Joined: 3 years ago
Posts: 6
Topic starter  

Hi, all!

In the past few years, I have developed my own heat pumps and created a DIY heat pump controller.

This controller is open to the public and is distributed free of charge. The source code is open source, so the controller can be used as is or customized for any operating conditions.

Hope this will be helpful to someone in renewable energy installations.

 

Valden Heat Pump Controller
The Valden Heat Pump controller is an open source platform to precisely control heat pumps. This controller can be used for the automation of newly built Heat Pumps (HPs), as a repair controller for old systems or as control system for performing experiments on refrigeration equipment.

Specs
- 12V 0.5A DC power supply,
- 230V output,
- 4 16A relays: Compressor, Hot Circulating Pump (CP) or Air Fan, Cold CP or Air Fan, Crankcase Heater,
- 2 inputs: Hot and cold side refrigerant over/under pressure NC sensors,
- up to 12 temperature (T) sensors, -55..+125 °C range,
- Electronic Expansion Valve (EEV) supported, 6 pin EEV connection: 4 * coils + 2 * 12V,
- automatically turns on/of system when heating required,
- automatic power saving mode,
- built-in protections: cold start, overheat, short-term power loss, power overload, ground loop freeze, compressor protection against liquid and other,
- LED indication,

m_controller_and_display.jpg

Refrigeration schemes supported
- Heat Pump (HP) with Electronic Expansion Valve (EEV),
- HP with capillary tube or TXV,
- EEV-only controller.

Further details, assembly, appendices, fine-tuning options, illustrations, abbreviations, and so on you can find in the permanent Valden Heat Pump Controller repository: https://github.com/openhp/HeatPumpController/

 

If you have any questions, please feel free to ask me.


   
[TamKov], Jon-C, Morgan and 3 people reacted
Quote
(@jon-c)
Eminent Member Contributor
96 kWhs
Joined: 3 years ago
Posts: 9
 

Great job, really interesting to see what's involved in controlling a heat pump and good to know I have another option if my cheap Chinese ASHP electrics are kaput.

Thanks

Jon 


   
Gonzho and Gonzho reacted
ReplyQuote
(@tamkov)
Active Member Member
56 kWhs
Joined: 2 years ago
Posts: 4
 

Hi Gonzho!

I started building a heat pump (I'm still in the process of getting parts), I was very happy with your control project.
I tried to upload arduino ino files but it writes an error.
Unfortunately I don't understand Arduino, so I can't find the cause of the error 🙁
Can you help me with what could be wrong?

Thanks,
Tamas

 

Valden_ServiceDisplay.ino

Valden ServiceDisplay error

Valden_HeatPumpController.ino

Valden HeatPumpController error

 

This post was modified 2 years ago by [TamKov]

   
Mars and Mars reacted
ReplyQuote



(@prunus)
Estimable Member Member
166 kWhs
Joined: 3 years ago
Posts: 56
 

I need to work on my Hungarian, but some wild guesses that it could be either a problem with communication with the Arduino - perhaps the programming cable (too long?).  Or it could be that you've configured the wrong device in the Arduino GUI. He's using the ATmega328P, I wonder if you might have a different part?


   
[TamKov], Mars, [TamKov] and 1 people reacted
ReplyQuote
(@tamkov)
Active Member Member
56 kWhs
Joined: 2 years ago
Posts: 4
 

Unfortunately, I can't switch to English.
It gets stuck during the check, it doesn't even try to upload.

Service display:

Mainboard
Processor

Heat pump controller:
On Gonzho instruction screenshot Arduino IDE board setting: "Mini", but in BOM is "Pro Mini".
I tried both settings, but not good. I have Adruino Pro Mini 5V/16MHz board.

pro mini

 

This post was modified 2 years ago by [TamKov]

   
ReplyQuote
(@derek-m)
Illustrious Member Moderator
13548 kWhs
Veteran Expert
Joined: 3 years ago
Posts: 4143
 

@tamkov 

Hi,

I am not familiar with Ardruino programming, but it would appear that one of the calculations being performed is creating an Integer Overflow, which would mean that the system is not capable of coping with the size of the result.


   
[TamKov] and [TamKov] reacted
ReplyQuote
(@prunus)
Estimable Member Member
166 kWhs
Joined: 3 years ago
Posts: 56
 

@derek-m The integer overflows are just warnings, and I don't think they're the source of the problem.  It seems to be saying is the program is too big for the available memory - when it builds it saying things like (guessing roughly) 'global variables 883 bytes, plus dynamic memory 1165 bytes. Maximum is 2048 bytes'.  What I'm not clear about is whether this is at build or programming time, but I think build time.  Which is why I query what kind of chip is being programmed.  The Atmega328P (Arduino Mini/Pro Mini) has 32KiB of flash and 2KiB RAM, while the Atmega2560 (Arduino Mega 2560) has 256KiB flash and 8KiB RAM.

It seems the OP's screenshots show both chips, but because this is Hungarian I'm not clear if these are errors or simply informational messages.  If I remember the Arduino tools print the memory size occupied by the program when it's successfully built - it might actually be OK, because on the Mini it's taking 97% of flash and 43% of RAM, leaving the rest for dynamic memory.

@tamkov If you try to program your board, does it then fail?

Ah, from googling around, the format is:

Sketch uses 3328 bytes (10%) of program storage space. Maximum is 32256 bytes.
Global variables use 2016 bytes (98%) of dynamic memory, leaving 32 bytes for local variables. Maximum is 2048 bytes.

and that doesn't appear to be an error in this case.  If it was it would say that.


   
[TamKov], Mars, [TamKov] and 1 people reacted
ReplyQuote
(@tamkov)
Active Member Member
56 kWhs
Joined: 2 years ago
Posts: 4
 

Thanks.
I tried to upload.
Heat pump controller: uploaded with no errors, looks good, it also sends data via serial port. (bare arduino, controller pcb not yet assembled)

Service display: uploaded with no errors, but lcd is empty, only white background.
Arduino and LCD is new, not used. I tried another 2560 panel but the same.
Could there be no display as long as there is no rs485 connection to the controller?

photo 2022 02 06 18 30 52 (2)
photo 2022 02 06 18 30 52

There is a difference in LCD panel:

lcd

Then there is no problem with the translation warnings?

This post was modified 2 years ago by [TamKov]

   
ReplyQuote
(@tamkov)
Active Member Member
56 kWhs
Joined: 2 years ago
Posts: 4
 

@derek-m 
Yes, I did the same with google searches, but I don't know how to fix it.
I tried arduino programming many years ago, but only on an amateur level.
I still had a problem with numbers. (I don't understand a now either floating point number representation) 


   
ReplyQuote



 robl
(@robl)
Reputable Member Member
2289 kWhs
Joined: 2 years ago
Posts: 179
 

About 4 months ago I finished our diy GSHP.  I think your controller is much more sophisticated than the one I made - our house is very well insulated, needing at most 1.6kW (0C outside 20C inside), and the heatpump I made is a tiny 2.4kW heat output and has simple capillary tube metering device rather than the more sophisticated EEV.  Our controller really just monitors behaviour and efficiency, and would switch it off if something got too hot or cold, does a bit of pump over-run.  All the 240V stuff I did is on a DIN rail - relays and power meter etc, so the "mbed" controller is low voltage only.

I used a trencher to dig up our garden, putting in 4 parallel 25mm pipes, 40m long each, so a total of 120m length.  I filled it initially with straight water, it was ok for a month before it showed signs of icing up, so I added glycol (£200) which fixed it.

The heatpump is made from a 2nd hand R290 Danfoss compressor (ebay!), pair of stainless heat exchangers, copper tubing, and a few other bits.  It's physically outside, but inside the EWI envelope of the house - I thought safer outside, but better to have a nice stable temperature.  It sounds like a fridge when running, but with the EWI "door" correctly in place it is silent.  Everything is bolted to an exterior plywood frame, see pic.  If I refurb it sometime, I will upgrade to an extruded aluminium frame for a longer life. 

GSHPsimple

It's been running since Dec 2021, so far 760kWh elec used by it in around 110days operation, we're off the gas 🙂 


   
[TamKov], Kev M, Mars and 4 people reacted
ReplyQuote



Share:

Join Us!

Latest Posts

x  Powerful Protection for WordPress, from Shield Security
This Site Is Protected By
Shield Security