LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Temperature Based Compressor Control

Solved!
Go to solution

Hi all. I am trying to prepare a variable speed compressor control program but I was stuck in some points. Let's explain what I tried to do.

 

Control is based on two temperature measurements from different locations. I want the compressor to work while the first temperature point is between 0-8 degrees OR the second temperature point is between -18.5 and -18 degrees. When the first temperature reaches the 0  degrees, it sends the signal to stop the compressor till it reaches 8 degrees. Once it reaches 8 degrees it restart to send start signal to the compressor. Similarly, when the second point temperature reaches -18.5 degrees, it sends to stop signal till it reaches -18 degrees. I tried an algorithm but I could not succeeded in doing this. What is problem of my code? I attached the program and data file that I am studying on it. Thanks in advance.

Egemen
Download All
0 Kudos
Message 1 of 17
(2,833 Views)

Your code seems a bit over complicated.  Here is a quick implementation of your logic.  Note that you will need to add some code to handle priority, since you have two sections of code that can control 1 device.

 

 

0 Kudos
Message 2 of 17
(2,810 Views)

@pjr1121 wrote:

Your code seems a bit over complicated.  Here is a quick implementation of your logic.  Note that you will need to add some code to handle priority, since you have two sections of code that can control 1 device.

 

 


Hi pjr1121. Actually you understood what I want is in the wrong way. It is two temperature based control. For example, if temp 1 reaches 0 degrees but temp 2 does not reach below or equal to -18.5, I want to drive the compressor till temp 2 is equal to -18.5, no matter temp 1 reaches 0 or not. Similarly, while temp 2 is equal to -18.5 or below but temp 1 is over or equal to 8 degrees, the compressor has to operate. Your suggestion does not serve in this way.

 

edit: and also temperatures are allowed to fluctuate, for temp 1 fluctuation is between 0 and 8, for temp 2, it is between -18.5 and -18. For instance, when temp 1 is equal to 0, temp 1 based control sends to the compressor to stop until temp 1 is over 8. The same scenario is the valid for temp 2 based control.

Egemen
0 Kudos
Message 3 of 17
(2,807 Views)

 

@newbieeng wrote:
 Actually you understood what I want is in the wrong way. It is two temperature based control. For example, if temp 1 reaches 0 degrees but temp 2 does not reach below or equal to -18.5, I want to drive the compressor till temp 2 is equal to -18.5, no matter temp 1 reaches 0 or not. 

I didn't misunderstand that, there just wasn't enough information provided.  This is the section I was referring to for priority assignment.  While yes there are two temperatures, there is only 1 compressor with on or off states so one temperature sensor should have priority over the other.

 

The code I provided allows for the temperature fluctuations.  If the temp is between 0 and 8, the compressor control does not change.  It is only when outside this region, that the compressor control is changed.  The logic for priority was left blank since I didn't have that information.  I now know that Temp 2 has the higher priority from your statement above.  Add logic to the blank section I left to (based on signal priority) to select which logic circuit is used to control the compressor.  

If you feel I'm still not getting the true intent of your question, please provide more detail.

 

0 Kudos
Message 4 of 17
(2,799 Views)

@pjr1121 wrote:

 

@newbieeng wrote:
 Actually you understood what I want is in the wrong way. It is two temperature based control. For example, if temp 1 reaches 0 degrees but temp 2 does not reach below or equal to -18.5, I want to drive the compressor till temp 2 is equal to -18.5, no matter temp 1 reaches 0 or not. 

I didn't misunderstand that, there just wasn't enough information provided.  This is the section I was referring to for priority assignment.  While yes there are two temperatures, there is only 1 compressor with on or off states so one temperature sensor should have priority over the other.

 

The code I provided allows for the temperature fluctuations.  If the temp is between 0 and 8, the compressor control does not change.  It is only when outside this region, that the compressor control is changed.  The logic for priority was left blank since I didn't have that information.  I now know that Temp 2 has the higher priority from your statement above.  Add logic to the blank section I left to (based on signal priority) to select which logic circuit is used to control the compressor.  

If you feel I'm still not getting the true intent of your question, please provide more detail.

 


You misunderstood the concept. Please check the vi and run it with reading from text file. Regarding the real rpm graph and temperatures, you will see what I  want. You are right, there must be a priority in the control scheme, I provide it combining two control results just before the case structure. The only thing that I cannot do is the periodic fluctuations correctly.

 

edit: maybe you have doubt about how the temp 1 get warm from 0 to 8 degrees, it results from a mechanism (called as damper in household refrigerators) which separates air  flow paths inside two cabinets of a refigerator. When the temp is equal to 0 for temp 1 which is the fresh food compartment air temperature, the damper is closed to prevent to enter air to the fresh food cabinet, therefore, all air is send to the freezer in which we acquire the temp 2.

Egemen
0 Kudos
Message 5 of 17
(2,796 Views)

you mean something like this?

 

Spoiler
temp.png

and this does not make any sense?

 

Spoiler
VCC%20Control%20Algorithm555[1]_BD.png

 

 

 

0 Kudos
Message 6 of 17
(2,781 Views)

Are you kidding? It works continuously, without shutdown...

 

edit: I was checking some values for desired times in the program when I need I use it. I know it seems meaningless in this way...

Egemen
0 Kudos
Message 7 of 17
(2,773 Views)

@newbieeng wrote:

Are you kidding? It works continuously, without shutdown...

 

edit: I was checking some values for desired times in the program when I need I use it. I know it seems meaningless in this way...


your compressor is going to work until the set temperatures are reached...is that not what you had stated in the 1 post? those controls are connected to your acquisition...

 

note:

obviously, no one here understands what you are trying to describe....quote from the tv show "shark tank"...."i'm out."

0 Kudos
Message 8 of 17
(2,769 Views)

Either he wants us to provide a 100% fully-functional VI for him, or he is leaving something out of the requirement.  Your original code, along with the code I previously provided, both trigger compressor on/off states based on temperature values in your original post.

 

If the resultant output doesn't match what you need, then there is something else (are these temperature setpoints EXACTLY what was used when measuring the actualy RPM?)

 

 

0 Kudos
Message 9 of 17
(2,765 Views)

yes it is what I want, but the code you sent does not work in this purpose. I added my last code working on it and simplified to express what I desire. However, it has some problem that I am trying solve. Please look at time 19, while it cools down, when an increase in temperature (during acquisition it could be encountered not always but rarely) it forces to shutdown. When it warms and reaches 8 degrees, start to compressor and works till the temp drops to 0 degrees. As the temp is increasing  from 0 to 8, the comp is off, as the temp is decreasing from 0 to 8, the comp is on. How could I eleminate reverse temp fluctuations effects during increasing and decreasing periods? Any idea?

Egemen
0 Kudos
Message 10 of 17
(2,760 Views)