|12-03-17, 02:50 AM||#1|
Join Date: May 2011
Location: Tortosa, Spain
Thanked 60 Times in 37 Posts
IOT heat pump controller - updated
I'm going to start a new thread for this rather than continuing the old thread so they don't get mixed up. The old thread is still relevant as this is really an evolution of the project and I suggest reading that first. IOT heat pump controller Here I'll detail the updates from the previous version.
The hardware and software are both installed and running on my heat pump. This is a live on-going project.
I have now designed and built my own 'peripheral' board for the controller rather than using an assortment of modules glued together with veroboard. The full schematic is shown below (and in the attached PDF). There were only some very minor changes in the hardware from the original design.
The peripheral board is connected to the main controller with 4 wires, +5V, 0V and I2C control lines SCL and SDA. The board has connections for the 4x temperature sensors, 2 x relay outputs for the fan and reversing valve and an output for the solid state relay used to control the compressor. The extra outputs from the I/O expander are available for use (I'm using one to control a circulating pump). There are also I2C outputs available to connect extra peripherals such as (in my case) a BME280 pressure/temperature/humidity detector.
There are significant changes in the software and this is the area that is most relevant for continuing development and experimentation.
The current version continues with the traditional defrost algorithm, i.e. if the evaporator temperature is below X for Y time then do a defrost. I have (and still am) experimented with different defrost processes. I have been trying differential pressure monitoring but despite some promising initial results (restricting the airflow through the evaporator using plastic bags) the few real life scenarios have not given similar results. I'm now investigating relationships between temperature and humidity. As we don't get many occasions when the evaporator freezes up this is a lengthy process...
Additionally in the latest version is the inclusion of weather data to predict heating requirements. This reads a data feed from openweathermap.org
The current version of the software is included in the zip file in this post. I use Visual Studio with the VisualMicro addon but the software should be able to be used in the Arduino IDE.