EcoRenovator  

Go Back   EcoRenovator > Improvements > Geothermal & Heat Pumps
Advanced Search
 


Blog 60+ Home Energy Saving Tips Recent Posts


Reply
 
Thread Tools Display Modes
Old 08-18-14, 06:21 PM   #231
buffalobillpatrick
Master EcoRenovator
 
Join Date: Mar 2014
Location: Florissant, Colorado
Posts: 599
Thanks: 814
Thanked 59 Times in 55 Posts
Default

A/C
"Then there is the issue that you want to assure that water is flowing before you start the compressor, so that you don't chill the evaporator HX to sub freezing by running the compressor, with no water circulation. This would burst the evaporator HX in an very short time. This is vital. There is a corollary to this which is that you need to make sure that water that has flowed through your evaporator HX is exiting at a temperature that is comfortably above freezing. You need to assure that you have water flowing here to make a measurement of water exiting the evaporator HX. This is vital.

There is an additional issue that it would be preferable, that you have a heated condition in the condenser HX before starting the condenser pump, so you don't pump cold water into the hot water storage tank. This is preferable."

& Steve
"Startup inlet pump and wait to make sure temp is above minimum including water from far end of ground loop, also make sure flow Meyer is functioning and flow is adequate."

Perhaps 4 temperature sensors could be used to verify the above requirements, without troublesome flow sensors?

On Source (evaporator) in and out AND on Load (condensor) in & out water temps.

I haven't thought about how code would do this yet.

Perhaps taking a snapshot of temps. before pumps are started,then start pump and after a delay take another sample of temp. A Delta should exist if there is flow?

A heater resistor on Source In water pipe close to temp. sensor could amplify the delta.


Last edited by buffalobillpatrick; 08-18-14 at 06:53 PM..
buffalobillpatrick is offline   Reply With Quote
Old 08-18-14, 06:44 PM   #232
buffalobillpatrick
Master EcoRenovator
 
Join Date: Mar 2014
Location: Florissant, Colorado
Posts: 599
Thanks: 814
Thanked 59 Times in 55 Posts
Default

One of these on pipe at pump output:

http://www.ebay.com/itm/30psi-Pressu...4a06ae&vxp=mtr


Take pressure reading with pump off, turn on pump, take a 2nd pressure reading, calculate Delta, calibrate with good known flow.

Last edited by buffalobillpatrick; 08-18-14 at 09:39 PM..
buffalobillpatrick is offline   Reply With Quote
The Following User Says Thank You to buffalobillpatrick For This Useful Post:
AC_Hacker (08-19-14)
Old 08-19-14, 05:21 PM   #233
AC_Hacker
Supreme EcoRenovator
 
AC_Hacker's Avatar
 
Join Date: Mar 2009
Location: Portland, OR
Posts: 4,004
Thanks: 303
Thanked 723 Times in 534 Posts
Default

This might be another candidate, sensing before and after each pump...



And an example of using it with Arduino.

-AC
__________________
I'm not an HVAC technician. In fact, I'm barely even a hacker...

Last edited by AC_Hacker; 08-19-14 at 05:28 PM..
AC_Hacker is offline   Reply With Quote
The Following User Says Thank You to AC_Hacker For This Useful Post:
buffalobillpatrick (09-09-14)
Old 09-09-14, 11:35 AM   #234
buffalobillpatrick
Master EcoRenovator
 
Join Date: Mar 2014
Location: Florissant, Colorado
Posts: 599
Thanks: 814
Thanked 59 Times in 55 Posts
Default

A/C what happened to thread progress?

I have a MPX2010DP differential pressure "AIR" sensor that I got for my DIY HRV.
Idea was to keep house pressure a little above outdoor pressure for Radon mitagation.
Problem is that I don't know how to protect outside hose end from wind effects.
EDIT: Possibly take a sample every second for a minute & average them.

I think that the liquid pressure sensor that I referenced in post #232 would work reliably long term, I hope. I am ordering one for loop input pump.

On my current boiler system, I have 2 Taco water pumps in series with a on/off switch to each.
There is a manual read pressure gauge on pumps output.
It is very easy to check that each pump raises output pressure by about 3psi, both on about 6psi.

If a valve is closed in output pipe the pressure doubles, thus it is easy to determine if the pump is working and flow is happening, with a gauge.

Arduino code would be easy.

Note: 1psi = 2.35' of head.

Last edited by buffalobillpatrick; 09-09-14 at 12:13 PM..
buffalobillpatrick is offline   Reply With Quote
Old 09-09-14, 01:30 PM   #235
AC_Hacker
Supreme EcoRenovator
 
AC_Hacker's Avatar
 
Join Date: Mar 2009
Location: Portland, OR
Posts: 4,004
Thanks: 303
Thanked 723 Times in 534 Posts
Default Soldiering on with the controller...

Quote:
Originally Posted by buffalobillpatrick View Post
A/C what happened to thread progress?
BBP,

I was beginning to worry that you'd partied yourself right into the Great Refrigerant Reservoir in the sky... good to hear from you.

Regarding the controller project, I've gone through the available code(s) with the Arduino compiler, and also with the Arduino Simulator, and I'm pretty much at a standstill... I really have no idea if anything works in the available code(s) and with my limited programming experience, I'm not getting far with analyzing the code either.

Also there have been reliability issues reported regarding the flow sensors, so for this, the most basic controller, I am leaving out "pump flow verification".

I built a basic test fixture that I'll use for GPC#1.

Here's a photo:



I have it set up and tested and have verified that all the hardware elements are in place and working.

I have two lm35 type temp sensors, and have verified that they can send temperature data through the USB serial link. They are quite accurate, and in agreement.

I have tested that all the relevant inputs are correctly initialized and working.

I have tested that all the relevant outputs are correctly initialized and working and I can successfully send AC power to the 4 light bulbs.

The light bulbs are (L to R):

(compressor) (insidePump) (outsidePump) (axillary option).

Here's the code I've come up with.

It goes through it's power-up 2 minute wait (shortened to 15 sec for testing) successfully.

It then waits for the 5 volt "heat demand" signal

It then sequentially lights each of the bulbs in series for about 10 seconds each, in endless repetition.

Also the temperature sensor hardware, and code is working but I have commented out that code for now.



Code:
/*
  * General Purpose Controller for a water-to-water heat pump, basic version)
  * Provides for:
  *     2 minute startup dalay for compressor protection
  *     Temperature monitoring of: 
  *         Evaporator HX temp
  *         Storage Tank Temp
  *     Controlling line voltage power to appropriate components:
  *         Outside loop pump
  *         Inside loop pump
  *         Compressor
  *         NOTE: Indoor operation is assumed, no compressor crankcase heater.
  *
  * PIN ASSIGNMENTS:
  * Digital Pins:
  *    D0 (reserved for USB & serial communication RX)
  *    D1 (reserved for USB & serial communication TX)
  *    D2 (* reserved for input loop flow data *)
  *    D3 (* reserved for output loop flow data *)
  *    D4 user input request for heat
  *    D5 output to Compressor SSR 
  *    D6 output to Inside Loop Pump SSR 
  *    D7 output to Outside Loop Pump SSR 
  *    D8 output to Auxillary Output SSR
  *    D9 (* not used *)
  *    D10 (* not used *)
  *    D11 (* not used *)
  *    D12 (* not used *)
  *    D13 LED (onboard)
  * Analog Pins:
  *    A0  input Temperature of Evaporator HX
  *    A1  input Temperature of Condenser Tank
  *    A2 (* not used *)
  *    A3 (* not used *)
  *    A4 (* not used *)
  *    A5 (* not used *)
  *
  */

#define  One_Sec              1000
#define  Quarter_Min         15000
#define  Half_Min            30000
#define  One_Min             60000
#define  Two_Min            120000
#define  Startup_delay      Quarter_Min

 float temp_in_celsius_0 = 0, 
       temp_in_celsius_1 = 1,  
       temp_in_kelvin_0 = 0,   
       temp_in_kelvin_1 = 0, 
       temp_in_fahrenheit_0 = 0,  
       temp_in_fahrenheit_1 = 0;
 
 // Associating Variable Names with pins      
 int HeatDemand = 4;
 int Compressor = 5;
 int inPump = 6;
 int outPump = 7;
 int auxOut = 8;
 int LED = 13;

 void setup()
  
 
 {
// Setting the mode of the digital pins   
pinMode(HeatDemand, INPUT); 
pinMode(Compressor, OUTPUT); 
pinMode(inPump, OUTPUT); 
pinMode(outPump, OUTPUT);
pinMode(auxOut, OUTPUT);
pinMode(LED, OUTPUT);  
   
   // Initialize print 
   Serial.begin(115200); 
   // 
// ****************** Startup Delay to Protect Compressor ********************
   Serial.print("begin startup delay");
   delay(15000);
   Serial.println(", end startup delay");
// ***************************** End Startup Delay ***************************   

 }

/* 
 void loop(){
 delay(Two_Min); 
 }
*/ 
 
 void loop()
{
 Serial.print("Activating Compressor");
  digitalWrite(Compressor, HIGH);
  delay(5000);
 Serial.println(", Deactivating Compressor");
  digitalWrite(Compressor, LOW);
  delay(500);

 Serial.print("Activating inPump");     
  digitalWrite(inPump, HIGH);
  delay(5000);
 Serial.println(", Deactivating inPump"); 
  digitalWrite(inPump, LOW);
  delay(500);

 Serial.print("Activating outPump");
  digitalWrite(outPump, HIGH);
  delay(5000);
 Serial.println(", Deactivating outPump"); 
  digitalWrite(outPump, LOW);
  delay(500);

 Serial.print("Activating Auxillary Output");
  digitalWrite(auxOut, HIGH);
  delay(5000);
 Serial.println(", Deactivating Auxillary Output"); 
  digitalWrite(auxOut, LOW);
  delay(500);  
 
// Serial.println("starting loop");
 

// {

   //Reads the input and converts it to Kelvin degrees
   temp_in_kelvin_0 = analogRead(0) * 0.004882812 * 100; 
   
   //Reads the input and converts it to Kelvin degrees
   temp_in_kelvin_1 = analogRead(1) * 0.004882812 * 100;

/*   
   Converts Kelvin to Celsius minus 2.5 degrees error
   temp_in_celsius_0 = temp_in_kelvin_0 - 2.5 - 273.15; 
   
   Converts Kelvin to Celsius minus 2.5 degrees error
   temp_in_celsius_1 = temp_in_kelvin_1 - 2.5 - 273.15; 
*/   

   //Converts Kelvin to Celsius minus 2.5 degrees error  
   temp_in_fahrenheit_0 = ((temp_in_kelvin_0 - 2.5) * 9 / 5) - 459.67;
   
   //Converts Kelvin to Celsius minus 2.5 degrees error  
   temp_in_fahrenheit_1 = ((temp_in_kelvin_1 - 2.5) * 9 / 5) - 459.67;
   
   
/*
   //Print the temperature in Celsius to the serial port
   Serial.print("Celsius_0: ");
   Serial.print(temp_in_celsius_0); 

   //Print the temperature in Celsius to the serial port
   Serial.print("Celsius_1: ");
   Serial.println(temp_in_celsius_1);   
*/

   //Print the temperature in Fahrenheit to the serial port
   Serial.print("Temp_0: "); Serial.print(temp_in_fahrenheit_0);Serial.print(" deg.F"); Serial.print(", Temp_1: "); Serial.print(temp_in_fahrenheit_1);Serial.print(" deg.F");
   Serial.println();   


   delay(One_Sec); 
 }
I'm only going to have:
  • 2 minute delay at power on (maybe a blinking LED to indicate)
  • "on and waiting" (maybe a 'breathing' LED pattern to indicate)
  • respond to request for heat (true)
  • test for evaporator HX => 34 F = true (variable here)
  • test for storage tank temp =< 90 F = true (variable here)
  • if any of the above go false, then
  • cut power to compressor AND
  • keep running pumps for an additional 60 seconds (variable here)
  • return to initial "on and waiting"

So, I'm not really a programmer, and I'm not quite sure how to proceed at this point. I do know that if I read and try and test (and repeat), that I'll eventually get it to work.


I could use some help.

Best,

-AC
Attached Thumbnails
Click image for larger version

Name:	test-fixture.jpg
Views:	2664
Size:	98.2 KB
ID:	4656  
__________________
I'm not an HVAC technician. In fact, I'm barely even a hacker...

Last edited by AC_Hacker; 09-09-14 at 01:54 PM..
AC_Hacker is offline   Reply With Quote
The Following User Says Thank You to AC_Hacker For This Useful Post:
buffalobillpatrick (09-09-14)
Old 09-09-14, 02:13 PM   #236
buffalobillpatrick
Master EcoRenovator
 
Join Date: Mar 2014
Location: Florissant, Colorado
Posts: 599
Thanks: 814
Thanked 59 Times in 55 Posts
Default

A/C, Nice test bed, you seem like a programmer to me.

I bounced my pressure sensor idea off a friend who is an expert on large cheese plant process control where price is not a problem. They use huge VFD pumps & expensive paddle-wheel flow sensors.

He gave simple pressure sensor idea his approval.
buffalobillpatrick is offline   Reply With Quote
Old 09-09-14, 02:33 PM   #237
AC_Hacker
Supreme EcoRenovator
 
AC_Hacker's Avatar
 
Join Date: Mar 2009
Location: Portland, OR
Posts: 4,004
Thanks: 303
Thanked 723 Times in 534 Posts
Default

Quote:
Originally Posted by buffalobillpatrick View Post
A/C, Nice test bed, you seem like a programmer to me.
Yeah, I can swim really good in shallow water.


Quote:
Originally Posted by buffalobillpatrick View Post
I bounced my pressure sensor idea off a friend who is an expert on large cheese plant process control where price is not a problem. They use huge VFD pumps & expensive paddle-wheel flow sensors.

He gave simple pressure sensor idea his approval.
Do you mean something LIKE_THIS?

It would add $50 ($13 to $63 = 385% increase) to the cost of this, our most basic controller.

I really like the pressure sensor idea for the next generation...

Best,

-AC
__________________
I'm not an HVAC technician. In fact, I'm barely even a hacker...
AC_Hacker is offline   Reply With Quote
The Following User Says Thank You to AC_Hacker For This Useful Post:
buffalobillpatrick (09-09-14)
Old 09-09-14, 02:42 PM   #238
Ormston
Apprentice EcoRenovator
 
Join Date: Mar 2013
Location: UK
Posts: 131
Thanks: 13
Thanked 35 Times in 32 Posts
Default

I wouldn't rule out the cheap flow meters just yet, I may of got a bad one.

If valves were installed either side of the flow meter so it could be replaced with minimum loss of water it wouldn't be too bad if one failed.

Are those differential pressure sensors rated for water or just air?

Steve
Ormston is offline   Reply With Quote
The Following User Says Thank You to Ormston For This Useful Post:
buffalobillpatrick (09-09-14)
Old 09-09-14, 04:34 PM   #239
buffalobillpatrick
Master EcoRenovator
 
Join Date: Mar 2014
Location: Florissant, Colorado
Posts: 599
Thanks: 814
Thanked 59 Times in 55 Posts
Default

A/C I think those are air/gas only.

"I think that the liquid pressure sensor that I referenced in post #232 would work reliably long term, I hope. I am ordering one for loop input pump."

$28 I will find out with testing.

Brand new pressure transducer. 316 Stainless steel body.
Input: 0-30 psi(Gauge Pressure);
Output: 0.5-4.5V linear voltage output. 0 psi outputs 0.5V, 15 psi outputs 2.5V, 30 psi outputs 4.5V.
Works for oil,fuel,diesel,gas,water,air pressure.Can be used in oil tank,gas tank,diesel tank etc.
Accuracy: +/-1%FS;
Thread: 1/8” NPT;
Wiring Connector: Packard plug-in unit is included;
Wiring: Red: +5V; White: ground; Black: signal output;
It's an advance pressure sender than traditional mechanical pressure sender;
Overload Capacity: 2-4 times;
Working Temperature: -40—+120ºC;
Compensation Temperature: -20—+80ºC;
Protection Class: IP67;
Pressure Medium: The gas and liquid which is compatible with 316L stainless steel;
Load Resistance: ≤((supply power-6.5V/0.02A)Ω;
Long-term stability: Less than 0.1%FS/year;
Temperature Effect on Zero: Typical:0.02%FS/ºC; Maximum:0.05%FS/ºC;
Temperature Effect on Sensitivity: Typical:0.02%FS/ºC; Maximum:0.05%FS/ºC;
Shock Resistance: 1000g;
Anti-Shock: ≤+/-0.01%FS(X,Y,Z axes, 200Hz/g);
Response Time: ≤1ms;
Insulation Resistance: >100mΩ 500VDC;
Weight: 0.1KG;
Explosion-proof Class: ExiaTTCT6;
Electromagnetism Compatibility: EN50051-1.

Last edited by buffalobillpatrick; 09-09-14 at 05:23 PM..
buffalobillpatrick is offline   Reply With Quote
The Following User Says Thank You to buffalobillpatrick For This Useful Post:
AC_Hacker (09-09-14)
Old 09-09-14, 05:11 PM   #240
buffalobillpatrick
Master EcoRenovator
 
Join Date: Mar 2014
Location: Florissant, Colorado
Posts: 599
Thanks: 814
Thanked 59 Times in 55 Posts
Default

From Steve's post #230

"Delay to stop outlet pump to extract as much useful heat as possible from condenser as you have already paid for it. This would be better done with in and out temp sensors."

As Heat Pump will be within the "heated house envelope" and used to heat the house, any generated heat will not be wasted. (until it passes outdoors)


Last edited by buffalobillpatrick; 09-09-14 at 05:25 PM..
buffalobillpatrick is offline   Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 01:53 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Ad Management by RedTyger
Inactive Reminders By Icora Web Design