Anda di halaman 1dari 38

MAE 4149: Thermal Systems Design

Project 3: Thermal Storage for Electric Vehicles


Professor LeBlanc
The George Washington University
Fall 2018

Group 7:
Alex Bartenfelder
Jacob Blumen
Kyle Pett
Alexander Snouffer
Noah Thomas
I. Overview of the problem
In modern electric vehicles (EVs), a single battery pack is responsible for providing all the energy
needed by the components of the car. This includes the drivetrain and the climate control systems.
Controlling the climate of the cabin within an EV currently requires a significant amount of power from
the battery. In current heating and cooling systems (HVAC), the battery powers a resistive heater and a
vapor compression system. The total power usage of these systems can reduce the range of the electric
vehicle by up to 40% [1]. A thermal storage system, in conjunction with an air distribution system, will be
designed to decrease this battery usage while maintaining modern automotive HVAC performance. With
advancements in the technology, thermal storage systems are cheaper than energy storage, making them
optimal for addition into the climate control system of an EV [1]. A thermal storage system stores energy
in the form of heat whereas a battery stores energy in the form of chemical potential. Using alternative
climate control systems, focusing around advancements in thermal storage technology, the EV HEATS
design constraints (Table 1) will be used to design and analyze a thermal storage system for an EV. In
completing the design and analysis, a new and novel HVAC thermal storage component will greatly
increase the capability and performance of the modern electric vehicle.
Table 1: Constraints and Desired Design Criteria
Coefficient of performance (COP) Constraint > 2 for cooling (38℃ ambient to 10℃)
>1.5 for heating (0℃ ambient to 40 ℃)
Air temperature delivered to cabin for Constraint 40 – 60℃
heating
Air temperature delivered to the cabin Constraint 3 – 10℃
for cooling
Maximum Air delivery flow volume Constraint 675 m3/hr
Minimum power capability of thermal Constraint Cooling – 2.5 kWt
battery (storage) Heating – 2.5 kWt
Minimum capacity of thermal battery Constraint Cooling – 2.5 kWht
(storage) Heating – 2.5 kWht
Maximum system volume Desired Design 30 liters
Maximum charging time Constraint 4 hours
Maximum weight Desired Design 35 kg
Maximum manufacturing cost Desired Design $250/kW

II. Concept generation


The HVAC system is divided into two parts: the thermal storage system and the heating/cooling
delivery system. Two designs were produced for each system. The combination of the most effective
systems will be combined in the final design.

Packed Bed Storage


Heat is transferred to or from a working fluid by forcing the fluid through a packed bed of solid
spheres. The solid spheres are contained in an insulated chamber with sides optimizing the flow of the

1
fluid into the packed bed. While charging the vehicle, the spheres are removed from the system and
moved into an oven or freezer. The spheres are heated or cooled to a predetermined temperature based on
whether heating or cooling is desired for the vehicle. When the driver is ready to pull away, the spheres
will be reinserted into the vehicle.

Phase Change Material Storage


Phase Change Materials (PCM) can be used to produce heating and cooling through exothermic
and endothermic chemical reactions. Some PCM reactions are reversible, allowing for the initial reaction
to be reversed back to its original state. Once this occurs, the endothermic or exothermic reaction can then
take place again. The PCM reactants will be stored in a heat exchanger within the vehicle and then, when
desired, a reaction is forced whether heating or cooling is desired. A working fluid will be passed through
the heat exchanger and then distributed to a radiator to heat or cool the cabin.

Forced Air Heating/Cooling Delivery System


Vents located at the front of the car will take in ambient air and force it through the thermal
storage chamber. The outlet temperature of the air will need to be modulated by the thermal storage
component itself. A fan will be used to supplement the mass flow rate of air into the system if the car is
travelling under a specified speed and a higher output is desired. The air is then directly fed into the cabin.

Vapor Compression/Heat Pump Delivery System


A traditional heat pump and refrigeration cycle will be used to heat and cool the air into the cabin
but will be improved with the addition of a thermal storage component. The storage component will act as
the evaporator in the heating cycle and the condenser in the cooling cycle. The cycle will be reversible
using both a reversible compressor and a reversible expansion valve. The magnitude of the low side
pressure and the pressure ratio will remain the same when the cycle is reversed so that the efficiency of
each process is similar. It will use water and R134a as the working fluid for the heating and cooling
cycles respectively. The system will need to be drained, flushed, and refilled with the desired working
fluid while the vehicle is recharging in the event of a sudden climate change or season change.

III. Concept development


Packed Bed Storage
For the packed bed, aluminum was chosen for the sphere material because it is a cheaper metal
with a relatively heat capacity double that of the other metals at 910 J/kg∙K [2]. Using a packed bed of

2
spheres, 1 cm in diameter, maximizes the area in contact (porosity)
with the working fluid through the packed bed over other geometries
[3]. The aluminum spheres are contained within a chamber with the
front and back sides made of a steel mesh and the remaining sides
made of 0.032” (0.8128 mm) steel. The box will be insulated on the
four sides with polystyrene foam which will keep the spheres from
losing a significant amount of heat to the surroundings. An initial
analysis was completed using air as the working fluid. The initial
size of the chamber was the same size as a current car radiator, 0.1

Figure 1: Packed Bed Sphere m by 0.75 m by 0.5 m, which, when completely filled, is
Arrangement approximately 35,000 spheres. Using the properties of the working
fluid at the inlet, the Nusselt number was determined using the flow around a sphere correlation. From the
Nusselt number, the convection coefficient was determined (Equation 1) [4]. From this, the outlet
temperature of the working fluid was determined in addition to the heat required to reach the outlet
temperature for both heating and cooling (Equation 2). It was assumed that the system was insulated and
that no heat was lost to the surroundings, only transferred to the working fluid. The python code for these
calculations is available in the appendix.
Equation 1: Nusselt number correlation for flow around a sphere as a function of the Reynold’s number,
Prandtl Number, and the ratio of the kinematic viscosity of the fluid free flowing and at the surface of the
sphere [3].
1⁄
1⁄ 2⁄ 𝜇 4 ℎ𝐿
̅̅̅̅
𝑁𝑢𝐷 = 2 + (0.4𝑅𝑒𝐷 2 + 0.06𝑅𝑒𝐷 3 ) 𝑃𝑟 0.4 ( ) = {1}
𝜇𝑠 𝐾
Equation 2: Packed Bed Lumped Capacitance [3] where Ts is the surface temperature of the spheres, Ti
and To are the temperatures of the fluid entering and leaving the packed bed. ℎ̅ is the average convection
coefficient of the fluid, determined by equation 1. Ap,t is the surface area of the spheres and Ac,b is the
cross-sectional area of the channel. 𝜌 and V are the density and velocity of the fluid. Cp is the heat
capacity of aluminum [3].
𝑇𝑠 − 𝑇𝑜 ℎ̅𝐴𝑝,𝑡
= exp (− ) {2}
𝑇𝑠 − 𝑇𝑖 𝜌𝑉𝐴𝑐,𝑏 𝐶𝑝
Equation 3: Heat transfer rate in a packed bed where 𝛥𝑇𝑙𝑚 is the log mean temperature where the outlet
temperature is determined using Equation 2 [3].
𝑞 = ℎ̅𝐴𝑝,𝑡 Δ𝑇𝑙𝑚 {3}

3
Phase Change Material Storage
Two PCMs are chosen - one to provided heating capabilities and the other to provide cooling
capabilities. Magnesium chloride (𝑀𝑔𝐶𝑙2 ) provides heating for the car. Magnesium chloride reacts
exothermically when it is mixed with water, producing magnesium chloride and water [5]. To reverse the
reaction, heat is applied to the solution to evaporate the water leaving behind magnesium chloride.
Ammonium chloride (𝑁𝐻4 𝐶𝑙) provides cooling. When ammonium chloride is mixed with water it reacts
endothermically producing ammonia, chloride, and water [6].
Both magnesium chloride and ammonium chloride are stored in separate aluminum boxes that
will act as heat exchangers. The boxes are insulated so that there is negligible heat transfer to their
surroundings. The PCMs themselves are in a series of small aluminum tubes. These tubes are arranged in
each compartment with a small amount of spacing in between to allow the working fluid to pass through.
Water is stored in a separate reservoir and is pumped to the lid of the box through piping. The lid to the
box has a series of holes that line up with the center of each of the tubes. These holes allow for the water
to drip down onto the PCMs causing the reactions to occur. The amount of water added depends on the
desired amount of heating or cooling. The tubes also act as a resistance heater as an electric current is
passed through the tubes causing them to heat up. When the vehicle is plugged in to charge, the resistance
heaters will heat the remaining solution causing the water to evaporate, returning the PCMs to their initial
states. The water vapor travels back to the reservoir through PVC tubes and condenses in the tank.

Forced Air Heating/Cooling Delivery System


A 3.5” diameter opening located in
the grill area of the EV allows ambient air
to enter into the system. Ambient air
enters the car at a maximum of 38℃
when the system is in cooling mode or at
0℃ for when the system is in heating
mode (Table 1). This air flows through
the chosen thermal storage system, either
adding or removing heat to the flowing
Figure 2: Forced Air Delivery System fluid. The heated air has a range of 40 -
60℃ and the cooling air has a range of 3 - 10℃. A 6.5” variable speed fan supplements the intake flow
rate if the car is traveling below 60 mph to maintain a maximum possible airflow of 595 m3/hr. If the car
is completely stationary the fan will draw a maximum of 48 Watts and is assumed to be a linear decrease
to 0 Watts at 60 mph. An automatic flap is lowered either partially or fully in front of the intake to
modulate the airflow and assumes to draw negligible power. After passing through the fan, air enters

4
directly into the cabin through the air vents. This system is capable of a COP of 175 when the vehicle is
stationary at maximum fan speed and increases exponentially as vehicle speed increases, assuming the
thermal storage component draws no power. Using this COP to compare systems without knowing the
power usage of the thermal storage is problematic because the system is essentially just a heat exchanger
that requires a very small amount of power to supplement convection.

Vapor Compression/Heat Pump Delivery System


In the heating mode, the cycle acts as a heat pump using water as its working fluid. Water flows
through the system at a rate of 1/310 kg/s. Saturated vapor leaves the thermal storage component at a
pressure of 0.6 bar. The fluid then passes through the compressor, increasing its pressure to 3 bar. The
compressor was safely assumed to have an isentropic efficiency of 0.7 based on experimental data
collected from a 1991 Ford A/C compressor where its maximum isentropic efficiency was 0.71 [7]. It is
assumed that advancements in technology over the past two decades would render an average efficiency
of the same magnitude in current OEM compressors. The theoretical power draw of a compressor capable
of this pressure difference and flowrate is 1.48 kW. The fluid then rejects 8.45 kW of heat in an isobaric
process to the air while passing through the radiator that leads into the cabin. A 6.5” x 6.5” x 6.5”
aluminum radiator, seen in Figure 6, was designed so that the water leaves the radiator as a saturated
liquid. The radiator has an effectiveness of 84% under steady state conditions of the heating cycle. A 6.5”
fan consuming 48W passes 0°C ambient air over the radiator at a flowrate of 595 m3/hr and raises its
temperature to 40°C at maximum fan speed [8]. The fluid leaves the condenser as a saturated liquid and is
then passed through the expansion valve dropping its pressure back down to 0.6 bar. A total of 2.50kW of
heat are added to the fluid at constant pressure through the thermal storage component where it returns to
a saturated vapor, completing the cycle. The total COP of the heating system is 5.51.
In the cooling mode, the cycle is a vapor compression cycle with R134a as its working fluid. The
coolant flows through the system at
Cooling
a rate of 1/45 kg/s. Saturated vapor
Radiator
flows out of the radiator at a
pressure of 0.6 bar and passes
through the same, reversible
Compressor Expansion
Valve compressor increasing the pressure
of the R134a to 3 bar. The
Heating
Thermal theoretical compressor requires 1.03
Storage
kW at steady state operation
assuming an isentropic efficiency of
Figure 3: Vapor Compression and Heat Pump Cycle
0.7. 2.5 kW of heat is rejected at

5
constant pressure from the fluid as it passes through the thermal storage device and exits as a mixed
vapor. The fluid reduces in pressure to 0.6 bar through the expansion valve and flows into the radiator as
a subcooled liquid. The same fan passes 595 m3/hr of ambient air at 38℃ over the radiator and enters the
cabin at 10°C. This process adds 6.50 kW of heat into the flowing fluid at constant pressure. The radiator
has an effectiveness of 83% in the cooling mode due to an increased mass flow rate of the working fluid
and a change in the working fluid itself. The total COP of the cooling system is 6.03. Code to support
these calculations can be referenced in the appendix.

IV. Selection of design


Table 2: Pugh Chart for Thermal Storage Solutions

Capability Safety Recharge Size Durability Weight Cost Implementation Total


Weight 19% 19% 15% 12% 12% 8% 8% 8% 100%
Packed
Bed 2 1 1 1 2 1 2 2 1.46
Phase
Change
Material 1 0 1 0 1 1 1 1 0.70

Table 3: Pugh Chart for Delivery Systems


Capability Safety Size Durability Weight Cost Implementation Total
Weight 32% 23% 9% 9% 9% 9% 9% 100%
Heat Pump
Vapor
Compression 2 1 1 2 1 1 2 1.50
Forced Air 0 2 2 2 2 2 2 1.36

Table 2 and Table 3 are used to compare the thermal storage systems using design parameters
important to an OEM or EV consumer. Each design is given a rating from 0 to 2 for each parameter. A 0
is given if the parameter is clearly not met, 1 if partially met, and 2 if it completely meets or exceeds the
requirement. The total score of each system is out of a maximum of 2.00.
In Table 2, capability and safety are ranked highest because the system must perform better than
the current EV HVAC systems and do so safely for it to be a viable replacement for those systems. The
capability is measured using the thermal output of 2.5 kW and 2.5 kW-hr thermal capacity outlined in
Table 1. Safety is scored based on the probability of the system causing serious harm to the user in the
event of an accident or system failure. Recharge logistics are also weighted heavily assuming that the
recharge of the thermal storage system should take the same or less time than the battery recharge. This is
scored on the theoretical time it takes to recharge the storage compared to the HEATS requirement of 4
hours and the complexity of the process. Size and durability are taken into account to make sure that the

6
system could fit inside an EV and could operate effectively for the duration of the vehicle’s expected
lifespan. Size is measured against the 30L specification provided in Table 1 while durability is judged on
the system’s expected lifespan and probability of failure. Weight, cost and implementation are weighted
low due to the already heavy, expensive, and rapidly developing EV industry. Weight is scored on the
relative weight of the system to the weight of an average 4000 lb EV. Cost of the system is also scored
relative to an average $45,000 EV. Implementation is scored on the expected changes that will need to be
made to charging stations and vehicle design to accommodate the new system.
Rationalizations for all design parameters in Table 3 remain the same from Table 2 as well as
almost all the metrics they are scored against. The capability for the delivery systems is now scored based
on the ability of the system to reach the desired 675 m3/hr, air delivery temperatures for heating and
cooling, and COP shown in Table 1 when paired with each of the thermal storage designs. The weighting
of capability was increased to ensure that the majority of resources went into exploration of new thermal
storage devices and not on more novel distribution systems.

Design Selection
The packed bed thermal storage system and the heat pump vapor compression heating/cooling
delivery system were selected as the best combination, scoring highest on their respective Pugh charts.
The packed bed was more capable overall. While both designs had similar capabilities for
heating, the PCM design has poor thermal capability for cooling. The packed bed design was also
significantly safer than the PCM design. During cooling, the PCM thermal storage system releases
ammonia (NH3) which is a corrosive irritant that if released into the vehicle would be very dangerous.
The recharging time was similar for both solutions, however the PCM would need to be completely
replaced for cooling, a cost of approximately $1000 for every cooling recharge, which made the solution
impractical. The PCM design is not able to conform within an order of magnitude of the size constraint
due to materials needed. Cooling requires over 28 kg of ammonium chloride; while the weight of
magnesium chloride needed for heating is slightly under 4.5 kg. Aluminum spheres are more durable than
the PCM and will last longer through multiple recharges. The PCM requires water to function and a water
tank would need to be added to the vehicle increasing size and making it more difficult to implement in a
current electric vehicle.
The heat pump vapor compression system was shown to be significantly more capable than the
forced air heating/cooling system which ended up not being able to meet the heating/cooling delivery
requirements at all scoring it a 0 in this category. The forced air system scored higher in the safety
category as well as the size weight and cost categories however these was not enough to bring up the
overall score above the vapor compression system which narrowly won since both systems also tied in the
durability and ease of implementation categories.

7
The combination of these two systems for use in heating and cooling an electric vehicle will be
discussed in further detail in the following section.

V. Detailed design
Though the chosen
combination of the packed bed
thermal storage system and then
vapor compression and heat pump
cycle delivery system (see Figure 4
and 5) were determined to be the best
overall system, some design changes Figure 4: CAD Model of Detailed Design
needed to be made to allow for proper analysis. First, the packed bed analysis initially used air as the
working fluid. As the heat pump used water for heating and R134a as the cooling working fluid, the
calculations needed to be reworked. Changing the working fluid changes the Reynolds and Nusselt
number, but the flow over a sphere correlation can still be used. The properties of the water are estimated
using the quality of the vapor at the inlet and outlet states. Using the vapor compression cycle, if the water
flowed through the entire packed bed at once, the system would overheat the vapor and the needed inlet
and outlet conditions would not be met. Therefore, the tank was divided into two sections to reduce the
heat transfer to the fluid and increase the effective running time. The top section would be insulated and
contain the heated or cooled spheres. These spheres are subsequently dropped into the bottom section,
where the fluid flows through, in order to maintain a constant heat transfer rate of 2.5 kW. Though an
additional power draw on the battery is added to control the flow of balls into the fluid, this draw was
negated in the calculations as it was determined to be well under an order of magnitude of any other
power draw in the system.
Though the analysis (See Appendix) was completed for the packed bed, some assumptions were
made. First, the scenario is not steady state or linear therefore the time to add another ball to the fluid is
not linear. The direct equation involves both partial and Laplacian operators to determine the change in
temperature with respect to time within a changing packed bed. Therefore, the analysis was reduced to
determining the initial temperature of the balls required to provide a heat of 9,000 kJ (the amount of
energy specified within the HEATS requirement). The initial temperature of the spheres was determined
to be 550 K for heating and 273.6 K for cooling. The number of spheres initially within the packed bed
where fluid would be flowing through was determined to be 60 spheres, keeping the energy transferred at
2.5 kW. Knowing that initially 60 spheres are in the fluid flow channel and 35000 are available, it is
assumed the remaining are added linearly over the course of an hour.

8
Once the 2.5 kW-hr heat transfer rate was achieved from the storage, the remainder of the heat
pump delivery mechanism could be analyzed. By setting the pressure ratio the system operates between
and knowing the temperature that is required to go through the packed bed, the full system cycle can be
completed. The first iteration through the cycle, the mass flow rate of the respective working fluid was
iterated and the results were plotted (see figures 6-18) (see Appendix for Equations). Though any mass
flow rate can be set, determining an optimal mass flow rate that achieves realistic characteristics, such as
a quality of 0.0 at the outlet of the packed bed, must be maintained. This set the mass flow rate through
the system for heating at 1/310 kg/s and 1/45 kg/s for heating and cooling respectively. The final iteration
determined the required effectiveness of the heat exchanger into the cabin of the vehicle. Using both the
heating and cooling loops, a minimum effectiveness for a reversible heat exchanger is 83% for both
heating and cooling. A heat exchanger was then designed and analyzed (see figure 19) to achieve this
effectiveness.
This design meets the thermal requirements within the HEATS document, however there are
some disadvantages to the packed bed/heat pump design. First, the size requirements of 30 liters were not
adhered to. The packed bed designed is 35 liters, however the additional 5 liters of volume was
considered to have minimal impact on the operation of the car. Furthermore, the weight of the packed bed
was determined to be 50 kg. Again, this does not meet the desired specification within HEATS however,
an additional 15 kg to an electric vehicle, which is already over 2000 kg [9], will not decrease the
performance of the car significantly. Additionally, the size of the radiator within the heat pump delivery
system was drastically decreased from that of a normal car, to 6.5” x 6.5” x 6.5”, decreasing the weight of
the overall system.
Though these requirements are not met, the COP of the cooling system is 6.15 and the COP of
the heating system is 5.51, which are both well above the design requirement. Furthermore, the final air
temperature into the cabin for the heating loop is 40°C and the cooling is 10°C. Though this does meet the
requirements specified within HEATS, this is one disadvantage within the analysis as there is little
margin of error within the calculated and the specified temperature. Further testing of the prototype
system is required to ensure the temperature into the cabin is satisfactory for the consumer. Finally, as
shown above, the packed bed storage device met the 2.5 kW-hr requirement for the minimum capacity.
The final two considerations within the scope of this design are manufacturing/production cost
and charge time of the vehicle. The charge time of the packed bed storage system was desired to be under
the charge time of an EV. A typical charge time of a Tesla Super Charging Station is 75 minutes [9]. In
order to have a system that can be widely adopted, the recharging of the packed bed must be below 75
minutes. At every charging station a heating and cooling system would have stored aluminum balls at the
determined temperatures of 550 K and 273.6 K for heating and cooling respectively. Once a driver’s

9
packed bed was drained, these pre-charged balls would be loaded into the car. Even if all of the balls at
the charging station were not at desired temperature, the maximum time to heat or cool the balls from
ambient was determined to be about 15 minutes, one-fourth the time of charging the car.
The manufacturing cost of the packed bed system for purchasing the components retail is around
$1100.00. This is using a $0.03/ball along with manufacturing cost of the storage devices within the car.
However, additional pricing from OEM suppliers indicates that the actual cost of mass production of the
system would be within the $625.00 limit that was specified by HEATS. Many suppliers indicate that the
price for aluminum balls are $10.00/kg. Therefore, with 50kg of balls needed, the cost of the packed bed
would drop to $550.00. Implementing the full system (both packed bed and vapor compression/heat
pump) increases the cost above the $625.00 (see Appendix for pricing breakdown) however, this is not an
issue as the components removed from the original EV, such as the resistive heater and cooling loop
offset the added cost of the new delivery system.

VI. Conclusion
A packed bed thermal storage system integrated into a heat pump/vapor compression cycle will
greatly improve the overall performance of today’s electric vehicles. By decreasing and nearly
eliminating the large drain on the drivetrain battery, today’s electric vehicles will gain increased driving
range and efficiency. A packed bed cooling system integrated within the heat pump/vapor compression
cycle achieves a COP of 5.51 and 6.15 respectively. Since this design was able to meet these technical
specifications, there are logical next steps that should be taken to further incorporate and improve the
design for final implementation into today’s electric vehicles.
First, as shown in figure 5, the designed system can integrate into a sample EV (Tesla Mainframe
shown). Though the sample integration is completely feasible, additional studies would need to be
completed to determine how the center of mass changes when the system is added to the vehicle.
Furthermore, optimizing the control loops for the addition of aluminum spheres into the system is of top
priority. By fully optimizing this control, additional drain from the drivetrain battery can be eliminated
while increasing the overall efficiency of the heating and cooling system. Finally, further design of a
“plug and play” thermal storage device that could be added into other heating and cooling loops would be
investigated to allow for increasing the efficiency of vehicles on the road today.

10
Appendix

Calculations for PCM Heating and Cooling


Heating
𝑀𝑔𝐶𝑙2 ∙ 6𝐻2 𝑂 ↔ 𝑀𝑔𝐶𝑙2 + 6𝐻2 𝑂
𝑘𝐽
∆ℎ = 2001
𝑘𝑔
𝑘𝑔
𝜌 = 1569
𝑚3
54.3𝑔⁄
𝑆𝑜𝑙𝑢𝑏𝑖𝑙𝑖𝑡𝑦 = 100𝑚𝐿
2.5𝑘𝑊ℎ
𝑇𝑜𝑡𝑎𝑙 𝐸𝑛𝑒𝑟𝑔𝑦 = = 9000𝑘𝐽
3600𝑠𝑒𝑐
9000𝑘𝐽
𝑀𝑎𝑠𝑠 𝑜𝑓 𝑀𝑔𝐶𝑙2 = = 4.498 𝑘𝑔
𝑘𝐽
2001
𝑘𝑔
PCM Tubes
𝐷𝑖𝑎𝑚𝑒𝑡𝑒𝑟 = 20𝑚𝑚
𝐿𝑒𝑛𝑔𝑡ℎ = 200𝑚𝑚
𝑉𝑜𝑙𝑢𝑚𝑒 = 6.28 ∗ 10−5 𝑚3
4.498𝑘𝑔
𝑀𝑎𝑠𝑠 𝑜𝑓 𝑀𝑔𝐶𝑙2 = = 0.00287 𝑚3
𝑘𝑔
1569 3
𝑚
0.00287𝑚3
𝑁𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑇𝑢𝑏𝑒𝑠 = = 45.62 → 49 𝑡𝑢𝑏𝑒𝑠
6.28 ∗ 10−5 𝑚3
𝑘𝑔
𝑁𝑒𝑤 𝑚𝑎𝑠𝑠 = 49 ∗ 6.28 ∗ 10−5 𝑚3 ∗ 1569 3 = 4.83𝑘𝑔
𝑚
𝑘𝐽
4.83𝑘𝑔 ∗ 2001
𝑘𝑔
𝐻𝑒𝑎𝑡 𝑜𝑢𝑡𝑝𝑢𝑡 = = 2.685𝑘𝑊ℎ
3600𝑠𝑒𝑐
Cooling
𝑁𝐻4 𝐶𝑙 + 𝐻2 𝑂 → 𝑁𝐻4+ + 𝐶𝑙 − + 𝐻2 𝑂
𝑘𝐽
∆ℎ = −314.892
𝑘𝑔
𝑘𝑔
𝜌 = 1530
𝑚3
583𝑔⁄
𝑆𝑜𝑙𝑢𝑏𝑖𝑙𝑖𝑡𝑦 = 1𝐿

11
2.5𝑘𝑊ℎ
𝑇𝑜𝑡𝑎𝑙 𝐸𝑛𝑒𝑟𝑔𝑦 = = 9000𝑘𝐽
3600𝑠𝑒𝑐
9000𝑘𝐽
𝑀𝑎𝑠𝑠 𝑜𝑓 𝑁𝐻4 𝐶𝑙 = = 28.58 𝑘𝑔
𝑘𝐽
314. .892
𝑘𝑔
PCM Tubes
𝐷𝑖𝑎𝑚𝑒𝑡𝑒𝑟 = 20𝑚𝑚
𝐿𝑒𝑛𝑔𝑡ℎ = 200𝑚𝑚
𝑉𝑜𝑙𝑢𝑚𝑒 = 6.28 ∗ 10−5 𝑚3
28.58𝑘𝑔
𝑀𝑎𝑠𝑠 𝑜𝑓 𝑁𝐻4 𝐶𝑙 = = 0.0187 𝑚3
𝑘𝑔
1530 3
𝑚
0.0187𝑚3
𝑁𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑇𝑢𝑏𝑒𝑠 = = 297.46 → 324 𝑡𝑢𝑏𝑒𝑠
6.28 ∗ 10−5 𝑚3
𝑘𝑔
𝑁𝑒𝑤 𝑚𝑎𝑠𝑠 = 324 ∗ 6.28 ∗ 10−5 𝑚3 ∗ 1530 3 = 31.13𝑘𝑔
𝑚
𝑘𝐽
31.13𝑘𝑔 ∗ 314.892
𝑘𝑔
𝐻𝑒𝑎𝑡 𝑜𝑢𝑡𝑝𝑢𝑡 = = 2.72𝑘𝑊ℎ
3600𝑠𝑒𝑐

Equations for Cycle Analysis


𝑊̇𝑖𝑠𝑒𝑛𝑡𝑟𝑜𝑝𝑖𝑐 ℎ𝑖𝑛 − ℎ𝑜𝑢𝑡,𝑖𝑑𝑒𝑎𝑙
𝜂𝑊𝑜𝑟𝑘 𝐶𝑜𝑛𝑠𝑢𝑚𝑖𝑛𝑔 = =
𝑊̇𝑎𝑐𝑡𝑢𝑎𝑙 ℎ𝑖𝑛 − ℎ𝑜𝑢𝑡

𝑚̇𝑎𝑐𝑐 = 𝑚̇𝑖𝑛 − 𝑚̇𝑜𝑢𝑡 = 0

𝐸̇𝑎𝑐𝑐 = 𝐸̇𝑖𝑛 − 𝐸̇𝑜𝑢𝑡 = (𝑊̇ + 𝑄̇ + 𝑚̇ℎ)𝑖𝑛 − (𝑊̇ + 𝑄̇ + 𝑚̇ℎ)𝑜𝑢𝑡

Table 4: Price Breakdown of Detailed Design

Item Price Per Item Quantity Total Cost


10mm Aluminum Balls $0.03 35000 $1,050.00
AC Compressor $269.99 1 $269.99
6.5" Electric Fan $85.99 1 $85.99
AC Hose Assembly $51.99 1 $51.99
Radiator $206.96 1 $206.96
Polystyrene Insulation $19.99 1 $19.99
Steel Wire Mesh $1.00 1 $1.00
Aluminum 7075 Box $2.50 3 $7.50
Expansion Valve $100 1 $100

12
Figure 5: Integration of Detailed Design into Vehicle Body

Figure 6: Radiator

13
Figures 7 – 22 are for the Heat Pump/Vapor Compression Solution

Figure 7: Heating, Work into Compressor vs. Mass Flow Rate of Water

Figure 8: Heating, Temperature vs. Mass Flow Rate of Water

Figure 9: Heating, Quality vs. Mass Flow Rate of Water

14
Figure 10: Heating, Enthalpy Change vs. Mass Flow Rate of Water

Figure 11: Heating, Entropy Change vs. Mass Flow Rate of Water

Figure 12: Heating, Radiator Effectiveness vs. Mass Flow Rate of Water

15
Figure 13: Coefficient of Performance vs. Mass Flow Rate of Water

Figure 14: Velocity of Water vs. Mass Flow Rate of Water

Figure 15: Cooling, Power into Compressor vs. Mass Flow Rate of R134a

16
Figure 16: Cooling, Temperature vs. Mass Flow Rate of R134a

Figure 17: Cooling, Quality vs. Mass Flow Rate of R134a

Figure 18: Cooling, Enthalpy Change vs. Mass Flow Rate of R134a

17
Figure 19: Cooling, Entropy Change vs. Mass Flow Rate of R134a

Figure 20: Cooling, Radiator Effectiveness vs. Mass Flow Rate of R134a

Figure 21: Cooling, Coefficient of Performance vs. Mass Flow Rate of R134a

18
Figure 22: Cooling, Velocity of R134a vs. Mass Flow Rate of R134a

Figures 23 and 24 are for the forced air solution.

Figure 23: COP vs. Vehicle Speed

Figure 24: Fan Power vs. Vehicle Speed

19
References

[1] Advanced Research Projects Agency, HEATS Program Overview, U.S. Department of Energy.
[2] "Specific Heats for Metals," Engineering ToolBox, 2003. [Online]. Available:
https://www.engineeringtoolbox.com/specific-heat-metals-d_152.html. [Accessed 3 December
2018].
[3] T. L. Bergman, A. S. Lavine, F. P. Incropera and D. P. Dewitt, Fundamentals of Heat and Mass
Transfer, Hoboken: John Wiley & Sons, Inc., 2011.
[4] "Water - Dynamic and Kinematic Viscosity," Engineering ToolBox, 2004. [Online]. Available:
https://www.engineeringtoolbox.com/water-dynamic-kinematic-viscosity-d_596.html. [Accessed 3
December 2018].
[5] R. C. A. d. J. F. Trasuel, "A Review on the Properties of Salt Hydrates for Thermochemical Storage,"
Energy Procedia 48, pp. 447-452, December 2014.
[6] Argonne National Laboratory, "Active Thermochemical Tables," U.S. Department of Energy, 14
December 2018. [Online]. Available:
https://atct.anl.gov/Thermochemical%20Data/version%201.118/species/?species_number=656.
[Accessed 14 December 2018].
[7] R. R. C. J. H. Darr, "Modeling of an Automotive Air Conditioning Compressor Based on
Experimental Data," University of Illinois, Urbana, IL, 1992.
[8] Flex-A-Lite, "6.5-inch Auxiliary Reversible Electric Fan," [Online]. Available: https://www.flex-a-
lite.com/electric-fans/6-5-inch-auxiliary-reversible-electric-
fan.html?fbclid=IwAR1MmOHwRcrZ87bYKk5NQJjzpnxi7W9F3X1l8SvoJJrWizkY-
y6iMMzxDDk. [Accessed 8 December 2018].
[9] Tesla, "Tesla Model 3," Tesla, [Online]. Available: https://www.tesla.com/model3. [Accessed 16 12
2018].

20
Team Member Contribution
Alex Bartenfelder PCM research, design, and analysis
Cost analysis of detailed design
CAD
Jacob Blumen Packed bed research, design, and analysis
Detailed design analysis
Kyle Pett Vapor Compression and Heat Pump research,
design, and analysis
Forced air analysis
Detailed design analysis
Alexander Snouffer Detailed design analysis
Packed bed CAD
Debug Code
Noah Thomas Forced air research and design
Selection of Design/Pugh Charts
Conclusion

21
import numpy
import math

fname = 'Air.csv'
temperature, conductivity, cp, Pr, Density, Viscosity_dyn = numpy.loadtxt(fname, delimiter=',', skip

Ts = 473 #Surface temperature of Al spheres [K]


Ti = 273 #[K]

V = .1 #Fluid Velocity [m/s]


D = 0.01 #Al sphere Diamemter [m]
L = 0.1 #Length of Bed [m]
W = 0.75 #Width of Bed
H = 0.5 #Height of Bed
N = round(W/D,0)*round(L/D,0)*round(H/D,0) #Number of spheres
N = round(N - N*0.05,0)

v_d = numpy.interp(Ti, temperature, Viscosity_dyn) #Dynamic Viscosity of Fluid [m²/s]


rho = numpy.interp(Ti, temperature, Density) #Density of fluid
Pr = numpy.interp(Ti, temperature, Pr) #Prandtl Number of Fluid
Kf = numpy.interp(Ti, temperature, conductivity) #Conductivity of Fluid

v_ds = numpy.interp(Ts, temperature, Viscosity_dyn) #Dynamic viscosity of air at surface temperature


rho_s = numpy.interp(Ts, temperature, Density) #Desnity of air at surface temperature

v_k = rho*v_d #Kinematic viscosity at ambient temperature


v_ks = rho_s*v_ds #Kinematic viscosity at surface temperature

Re = V*D/v_d
Nu = 2 + (0.4*Re**(1/2) + 0.06*Re**(2/3))*Pr**0.4*(v_k/v_ks)**(1/4)
h = Nu*Kf/L

A_pt = N*math.pi*D**2 #Surface area of spheres


A_cb = W*H #Cross-Sectional Area of Channel

Cp = 910 #Specific heat of Al [J/kg]


rho_sphere = 2700 #Density of Al [kg/m³]
Vol_sphere = 4/3*numpy.pi*(D/2)**3

To = Ts + (Ti-Ts)*math.exp(-h*A_pt/(rho*V*A_cb*Cp)) - 273 #Outlet temperature [°C]


#t = rho*V*Cp/(h*A_cb)*numpy.log((Ts-Ti)/(Ti-To))
W = N*rho_sphere*Vol_sphere #Weight [kg]
m = rho*V*A_cb

Del_To = Ts - To
Del_Ti = Ts - Ti

T_lm = (Del_To - Del_Ti)/numpy.log(Ti/To)


q = h*A_pt*T_lm

1
import numpy
import cantera

H2O = cantera.Water()
Xi = 0.62345 #Quality of water at inlet
Pi = 0.6E5 #Pressure of water at inlet [N/m^2]
H2O.PX = Pi, Xi
Ti = H2O.T

Ts = 550 #Surface temperature of Al spheres [K]

#V = 0.1 #Fluid Velocity [m/s]


D = 0.01 #Al sphere Diamemter [m]
L = 0.1 #Length of Bed [m]
W = 0.75 #Width of Bed
H = 0.5 #Height of Bed
N0 = round(W/D,0)*round(L/D,0)*round(H/D,0) #Number of spheres
N0 = round(N0 - N0*0.05,0) #Reduction in 5% of spheres due to packing

#Detailed Design Specifications


N=60 #Number of spheres
L = .1 #Length of channel which fluid flows through [m]
H=0.01 #Height of channel which fluid flows through [m]

v_d = (.65*.2 + .023*.8) #Dynamic Viscosity of water and water vapor, weighted average [N*s/m^2]
v_ds = 0.34 #Dynamic Viscosity of water vapor at surface temperature of sphere [N*s/m^2]
v_k = 0.2938E-6 #Kinematic viscosity of water [m^2/s]
v_ks = .1556E-6 #Kinematic viscosity of water at sphere surface [m^2/s]
rho = H2O.density #Density of fluid at inlet [kg/m^3]
m = 1.1/380 #Mass flow [kg] (from vapor compression calculations)
V = m/(rho*L*H*(1-.74)) #Velocity of the fluid [m/s] assuming perfect packing density of spheres
Pr = (1.76*.2 + 1.03*.8) #1.76 - Pr of water, 1.03 is Pr of gas [engineering toolbox]
Kf = (677.03*.2 + 24.57*.8)

Re = V*D/v_d
Nu = (2 + (0.4*Re**(1/2) + 0.06*Re**(2/3))*Pr**0.4*(v_k/v_ks)**(1/4))
h = Nu*Kf/W
#
A_pt = numpy.pi*D**2 #Surface area of spheres
A_cb = H*L #Cross-Sectional Area of Channel
#
Cp = 910 #Specific heat of Al [J/kg*K]
rho_sphere = 2700 #Density of Al [kg/m³]
Vol_sphere = 4/3*numpy.pi*(D/2)**3 #Volume of Al sphere [kg]
m_sphere = rho_sphere*Vol_sphere #Mass of Al sphere [kg]

To = Ts - (Ts-Ti)*numpy.exp(-h*N*A_pt/(rho*V*A_cb*Cp)) - 273 #Outlet temperature [°C]


W = N0*rho_sphere*Vol_sphere #Weight [kg]

Del_To = abs(Ts - To)


Del_Ti = abs(Ts - Ti)

T_lm = (Del_To - Del_Ti)/numpy.log(abs(Ti/To)) #Log mean temperature [K]


q = h*A_pt*T_lm #Heat transfer from spheres to fluid [kJ]
t = N0*rho*Vol_sphere*Cp/(h*N0*A_pt)*numpy.log(Del_To/Del_Ti) #Time for heat transfer [s]

1
P = 50 #Power of heating oven/fridge [Watts]
Tinf = 273 #[K]
Toven = 575 #[K]
t_charging_hot = m*Cp*N0*(Ts-Tinf)/P #Charging time of Al

Tinf = 298 #[K]


Ts = 273 #[K]
t_charging_cold = m*Cp*N0*(Tinf-Ts)/P #Charging time of Al

2
# -*- coding: utf-8 -*-
"""
Created on Wed Dec 5 20:23:48 2018

@author: kpett
"""
import cantera as ct
import numpy
from matplotlib import pyplot
import math

def h_OutCompressor(n_compressor, h_OutIs, h_In):


h_OutAct = ((h_OutIs - h_In)/n_compressor)+h_In
return h_OutAct

def frange(start, stop, step):


i = start
while i < stop:
yield i
i += step

"Define lists for plotting"


_W_compressor = []
_COP = []
_mdot = []
_Vel_Liq = []
_Vel_Gas = []
_e_Rad = []
_T1 = []
_T2 = []
_T3 = []
_T4 = []
_X1 = []
_X2 = []
_X3 = []
_X4 = []
_h12 = []
_h23 = []
_h34 = []
_h41 = []
_s12 = []
_s23 = []
_s34 = []
_s41 = []

"Define Fluids"
air_1 = ct.Solution('air.cti')
air_2 = ct.Solution('air.cti')
WF_1 = ct.Water()
WF_2 = ct.Water()
WF_3 = ct.Water()
WF_4 = ct.Water()

"Knowns"
T1_air = 0+273.15 # T1 ambient = 0C
P1_air = 1*10**5 # P1 ambient = 1 bar
T2_air = 40+273.15 # T2 into cabin = 40C

1
P2_air = P1_air # P2 = 1 bar
air_1.TP = T1_air,P1_air # Define state
air_2.TP = T2_air,P2_air # Define state
h1_air = air_1.h
h2_air = air_2.h

"Set variables"
voldot_air = 595 # Volumetric fow rate of air into cabin (m^3/hr)
D_Gasline = .75 # Inner diameter of gas line (in)
D_Liqline = .75 # Inner diameter of liquid line (in)
q_evaporator = 2500 # Heat rejected from
n_compressor = 0.7 # Compressor efficiency
P1 = 0.6*10**5 # Low side pressure
pr = 5 # Pressure ratio
W_fan = 48 # Work into blower fan (W)

"Calculations from set variables"


mdot_air = voldot_air*(air_1.density)*1/3600 # Mass flow rate of air into cabin
q_cabin = mdot_air*(air_2.h-air_1.h) # Heat out of condensor
Ac_Liqline = (math.pi/4)*((0.0254)*D_Liqline)**2 # Cross sectional area of 1/2" ID liquid line
Ac_Gasline = (math.pi/4)*((0.0254)*D_Gasline)**2 # Cross sectional area of 2" ID Gas line

for mdot in frange(1.0, 5.0, 0.1):

mdot_WF = (mdot/310) # Define actual mdot of working fluid (kg/s)

"State 1 - Outlet Evaporator / Inlet Compressor"


X1 = 1 # Assume saturated vapor
WF_1.PX = P1, X1 # Define state
h1 = WF_1.h
T1 = WF_1.T
s1 = WF_1.s
rho1 = WF_1.density

"State 2 - Outlet Compressor / Inlet Condensor"


P2 = pr*P1 # Pressure is increased through compressor
s2_is = s1 # First, assume compressor to be isentropic
WF_2.SP = s2_is,P2 # Define isentropic outlet state
h2_is = WF_2.h # Define isentropic outlet enthalpy
h2 = h_OutCompressor(n_compressor, h2_is, h1) # Define actual outlet enthalpy using compresso
WF_2.HP = h2,P2 # Define state
X2 = WF_2.X
T2 = WF_2.T
s2 = WF_2.s
rho2 = WF_2.density

"State 3 - Outlet Condensor / Inlet Throttle"


P3 = P2 # Heat addition is isobaric
h3 = h2-(q_cabin/mdot_WF) # Enthalpy drop due to heat rejection to cabin
WF_3.HP = h3,P3 # Define state
X3 = WF_3.X
T3 = WF_3.T
s3 = WF_3.s
rho3 = WF_3.density

"State 4 - Outlet Throttle / Inlet Evaporator"


P4 = P1 # Pressure is set to low side

2
h4 = -(q_evaporator/mdot_WF)+h1 # Heat from the source is q = mdot*(delta:h)
WF_4.HP = h4,P4 # Define state
T4 = WF_4.T
s4 = WF_4.s
X4 = WF_4.X
rho4 = WF_4.density

"Effectiveness of Radiatior"
WF_3_perf = ct.Water() # Define a state of WF
T3_perf = T1_air+0.05 # Set outlet state of WF to inlet state of air
WF_3_perf.TP = T3_perf,P3
h3_perf = WF_3_perf.h
e_Rad = (h3-h2)/(h3_perf-h2) # Calculate required effectiveness

W_compressor = (h2-h1)*mdot_WF

_W_compressor.append(W_compressor)
_mdot.append(mdot_WF)
_e_Rad.append(e_Rad)
_T1.append(T1)
_T2.append(T2)
_T3.append(T3)
_T4.append(T4)
_X1.append(X1)
_X2.append(X2)
_X3.append(X3)
_X4.append(X4)
_s12.append(s2-s1)
_s23.append(s3-s2)
_s34.append(s4-s3)
_s41.append(s1-s4)
_h12.append(h2-h1)
_h23.append(h3-h2)
_h34.append(h4-h3)
_h41.append(h1-h4)
_Vel_Liq.append(mdot_WF/(Ac_Liqline*rho3))
_Vel_Gas.append(mdot_WF/(Ac_Gasline*rho1))

_COP.append(q_cabin/(W_compressor+W_fan))

pyplot.figure('Power into Compressor vs. Mass Flow Rate of Water (kg/s)')


pyplot.plot(_mdot, _W_compressor)
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Power (W)')
pyplot.title('Work into Compressor vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Temperature vs. Mass Flow Rate of Water (kg/s)')


pyplot.plot(_mdot, _T1, label="State 1")
pyplot.plot(_mdot, _T2, label="State 2")
pyplot.plot(_mdot, _T3, label="State 3")
pyplot.plot(_mdot, _T4, label="State 4")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Temperature (K)')
pyplot.title('Temperature vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Quality vs. Mass Flow Rate of Water (kg/s)')

3
pyplot.plot(_mdot, _X1, label="State 1")
pyplot.plot(_mdot, _X2, label="State 2")
pyplot.plot(_mdot, _X3, label="State 3")
pyplot.plot(_mdot, _X4, label="State 4")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Quality')
pyplot.title('Quality vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Enthalpy Change vs. Mass Flow Rate of Water (kg/s)')


pyplot.plot(_mdot, _h12, label="Compressor")
pyplot.plot(_mdot, _h23, label="Condensor (To cabin)")
pyplot.plot(_mdot, _h34, label="Expansion Valve")
pyplot.plot(_mdot, _h41, label="Evaporator (Storage)")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Enthalpy Change (J/kg)')
pyplot.title('Enthalpy Change vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Entropy Change vs. Mass Flow Rate of Water (kg/s)')


pyplot.plot(_mdot, _s12, label="Compressor")
pyplot.plot(_mdot, _s23, label="Condensor (To cabin)")
pyplot.plot(_mdot, _s34, label="Expansion Valve")
pyplot.plot(_mdot, _s41, label="Evaporator (Storage)")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Entropy Change (J/kg*K)')
pyplot.title('Entropy Change vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Radiator Effectiveness vs. Mass Flow Rate of Water (kg/s)')


pyplot.plot(_mdot, _e_Rad)
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Effectiveness')
pyplot.title('Radiator Effectiveness vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Coefficient of Performance vs. Mass Flow Rate of Water (kg/s)')


pyplot.plot(_mdot, _COP)
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('COP')
pyplot.title('Coefficient of Performance vs. Mass Flow Rate of Water (kg/s)')

pyplot.figure('Velcoity of Water vs. Mass Flow Rate of Water')


pyplot.plot(_mdot, _Vel_Liq, label="Liquid")
pyplot.plot(_mdot, _Vel_Gas, label="Gas")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Velocity (m/s)')
pyplot.title('Velcoity of Water vs. Mass Flow Rate of Water')
pyplot.tight_layout()

"Radiator Calculation"
n_arrays = 4
N_per_array = 65
t_fin = 0.05*0.0254
space_fin = ((6.5*0.0254)-(N_per_array*t_fin))/(N_per_array-1)
t_rad = 6.5*0.0254
h_fin = (6/4)*0.0254

4
A_base = space_fin*0.0254*t_rad
Ac_air = space_fin*(N_per_array-1)*n_arrays*h_fin
v_air = voldot_air*(1/3600)*(1/Ac_air)
A_fin = 2*t_rad*h_fin
A_tot = 2*n_arrays*(N_per_array-1)*A_base+(N_per_array-1)*2*t_rad*h_fin
avg_dynvis = (air_1.viscosity+air_2.viscosity)/2
avg_rho = (air_1.density+air_2.density)/2
avg_cp = (air_1.cp+air_2.cp)/2
avg_k = (air_1.thermal_conductivity+air_2.thermal_conductivity)/2
avg_Pr = (avg_cp*avg_dynvis)/avg_k
Re = avg_rho*v_air*t_rad/(avg_dynvis)
if (Re < 5*10**5):
Nu = 0.664*Re**.5*avg_Pr**(1/3)
else:
Nu = ((0.037*Re**(4/5))-871)*avg_Pr**(1/3)
h = avg_k*Nu/t_rad
k_al = 205
k_copper = 385
perimeter_fin = 2*t_rad+2*h_fin
Ac_fin = t_rad*t_fin
m = math.sqrt((h*perimeter_fin)/(k_al*Ac_fin))
eta_fin = math.tanh(m*t_rad)/(m*t_rad)
UA_needed = q_cabin/(T2-(T1_air+T2_air)/2)
UA_actual = h*A_tot-h*A_fin*(1-eta_fin)

5
# -*- coding: utf-8 -*-
"""
Created on Wed Dec 5 20:23:48 2018

@author: kpett
"""
import cantera as ct
from matplotlib import pyplot
import math
from pandas import DataFrame

def h_OutCompressor(n_compressor, h_OutIs, h_In):


h_OutAct = ((h_OutIs - h_In)/n_compressor)+h_In
return h_OutAct

def frange(start, stop, step):


i = start
while i < stop:
yield i
i += step

"Define lists for plotting"


_W_compressor = []
_COP = []
_Qin = []
_Qout = []
_mdot = []
_Vel_Liq = []
_Vel_Gas = []
_e_Rad = []
_T1 = []
_T2 = []
_T3 = []
_T4 = []
_X1 = []
_X2 = []
_X3 = []
_X4 = []
_h12 = []
_h23 = []
_h34 = []
_h41 = []
_s12 = []
_s23 = []
_s34 = []
_s41 = []

"Define Fluids"
air_1 = ct.Solution('air.cti')
air_2 = ct.Solution('air.cti')
WF_1 = ct.Hfc134a()
WF_2 = ct.Hfc134a()
WF_3 = ct.Hfc134a()
WF_4 = ct.Hfc134a()

"Knowns"
T1_air = 38+273.15 # T1 ambient = 38C

1
P1_air = 1*10**5 # P1 ambient = 1 bar
T2_air = 3+273.15 # T2 into cabin = 3C
P2_air = P1_air # P2 = 1 bar
air_1.TP = T1_air,P1_air # Define state
air_2.TP = T2_air,P2_air # Define state
h1_air = air_1.h
h2_air = air_2.h

"Set variables"
voldot_air = 595 # Volumetric fow rate of air into cabin (m^3/hr)
D_gasline = .75 # Inner diameter of gas line (in)
D_liqline = .75 # Inner diameter of liquid line (in)
q_condenser = 2500 # Heat rejected from
n_compressor = 0.7 # compressor efficiency
P1 = 0.6*10**5 # Low side pressure
pr = 5 # Pressure ratio wrt. P1
W_fan = 48 # Work into blower fan (W)

"Calculations from set variables"


mdot_air = voldot_air*(air_1.density)*1/3600 # Mass flow rate of air into cabin
q_cabin = mdot_air*(air_1.h-air_2.h) # Heat into evaporator
Ac_Liqline = (math.pi/4)*((0.0254)*D_liqline)**2 # Cross sectional area of liquid line
Ac_Gasline = (math.pi/4)*((0.0254)*D_gasline)**2 # Cross sectional area of Gas line

for mdot in frange(1.0, 5.0, 0.1):

mdot_WF = (mdot/45) # Define actual mdot of working fluid (kg/s)

"State 1 - Outlet Evaporator / Inlet Compressor"


X1 = 1 # Working fluid is assumed to be saturated vapor
WF_1.PX = P1,X1 # Define state
h1 = WF_1.h
s1 = WF_1.s
T1 = WF_1.T
rho1 = WF_1.density

"State 2 - Outlet Compressor / Inlet Condensor"


P2 = P1*pr # Pressure is set to high side
s2_is = s1 # First, assume compressor to be isentropic
WF_2.SP = s2_is,P2 # Define isentropic outlet state
h2_is = WF_2.h # Define isentropic outlet enthalpy
h2 = h_OutCompressor(n_compressor, h2_is, h1) # Define actual outlet enthalpy using compresso
WF_2.HP = h2,P2 # Define state
X2 = WF_2.X
T2 = WF_2.T
s2 = WF_2.s
rho2 = WF_2.density

"State 3 - Outlet Condensor / Inlet Throttle"


P3 = P2 # Heat addition is isobaric
h3 = h2-(q_condenser/mdot_WF) # Change in enthalpy due to heat from ambient
WF_3.HP = h3,P3 # Define state
X3 = WF_3.X
T3 = WF_3.T
s3 = WF_3.s
rho3 = WF_3.density

2
"State 4 - Outlet Throttle / Inlet Evaporator"
P4 = P1 # Heat addition is isobaric
h4 = h1-(q_cabin/mdot_WF) # Change in enthalpy due to heat from ambient
WF_4.HP = h4,P4 # Define state
X4 = WF_4.X
T4 = WF_4.T
s4 = WF_4.s
rho4 = WF_4.density

"Effectiveness of Cabin Radiatior"


WF_1_perf = ct.Hfc134a()
T1_perf = T1_air
WF_1_perf.TP = T1_perf,P1
h1_perf = WF_1_perf.h
e_Rad = (h1-h4)/(h1_perf-h4)

W_compressor = (h2-h1)*mdot_WF

_W_compressor.append(W_compressor)
_mdot.append(mdot_WF)
_e_Rad.append(e_Rad)
_T1.append(T1)
_T2.append(T2)
_T3.append(T3)
_T4.append(T4)
_X1.append(X1)
_X2.append(X2)
_X3.append(X3)
_X4.append(X4)
_s12.append(s2-s1)
_s23.append(s3-s2)
_s34.append(s4-s3)
_s41.append(s1-s4)
_h12.append(h2-h1)
_h23.append(h3-h2)
_h34.append(h4-h3)
_h41.append(h1-h4)

_Vel_Liq.append(mdot_WF/(Ac_Liqline*rho3))
_Vel_Gas.append(mdot_WF/(Ac_Gasline*rho1))

_COP.append(q_cabin/(W_compressor+W_fan))

pyplot.figure('Power into Compressor vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _W_compressor)
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Power (W)')
pyplot.title('Power into Compressor vs. Mass Flow Rate of R134a')

pyplot.figure('Temperature vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _T1, label="State 1")
pyplot.plot(_mdot, _T2, label="State 2")
pyplot.plot(_mdot, _T3, label="State 3")
pyplot.plot(_mdot, _T4, label="State 4")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Temperature (C)')

3
pyplot.title('Temperature vs. Mass Flow Rate of R134a')

pyplot.figure('Quality vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _X1, label="State 1")
pyplot.plot(_mdot, _X2, label="State 2")
pyplot.plot(_mdot, _X3, label="State 3")
pyplot.plot(_mdot, _X4, label="State 4")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Quality')
pyplot.title('Quality vs. Mass Flow Rate of R134a')

pyplot.figure('Enthalpy Change vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _h12, label="Compressor")
pyplot.plot(_mdot, _h23, label="Condensor (Storage)")
pyplot.plot(_mdot, _h34, label="Expansion Valve")
pyplot.plot(_mdot, _h41, label="Evaporator (To cabin)")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Enthalpy Change (J/kg)')
pyplot.title('Enthalpy Change vs. Mass Flow Rate of R134a')

pyplot.figure('Entropy Change vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _s12, label="Compressor")
pyplot.plot(_mdot, _s23, label="Condensor (Storage)")
pyplot.plot(_mdot, _s34, label="Expansion Valve")
pyplot.plot(_mdot, _s41, label="Evaporator (To cabin)")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Entropy Change (J/kg*K)')
pyplot.title('Entropy Change vs. Mass Flow Rate of R134a')

pyplot.figure('Radiator Effectiveness vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _e_Rad)
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Effectiveness')
pyplot.title('Radiator Effectiveness vs. Mass Flow Rate of R134a')

pyplot.figure('Coefficient of Performance vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _COP)
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('COP')
pyplot.title('Coefficient of Performance vs. Mass Flow Rate of R134a')

pyplot.figure('Velocity of R134a vs. Mass Flow Rate of R134a')


pyplot.plot(_mdot, _Vel_Liq, label="Liquid")
pyplot.plot(_mdot, _Vel_Gas, label="Gas")
pyplot.legend()
pyplot.xlabel('Mass Flow Rate (kg/s)')
pyplot.ylabel('Velocity (m/s)')
pyplot.title('Velocity of R134a vs. Mass Flow Rate of R134a')
pyplot.tight_layout()

"Radiator Calculation"
n_arrays = 4
N_per_array = 65
t_fin = 0.05*0.0254

4
space_fin = ((6.5*0.0254)-(N_per_array*t_fin))/(N_per_array-1)
t_rad = 12*0.0254
h_fin = (6/4)*0.0254
A_base = space_fin*0.0254*t_rad
Ac_air = space_fin*(N_per_array-1)*n_arrays*h_fin
v_air = voldot_air*(1/3600)*(1/Ac_air)
A_fin = 2*t_rad*h_fin
A_tot = 2*n_arrays*(N_per_array-1)*A_base+(N_per_array-1)*2*t_rad*h_fin
avg_dynvis = (air_1.viscosity+air_2.viscosity)/2
avg_rho = (air_1.density+air_2.density)/2
avg_cp = (air_1.cp+air_2.cp)/2
avg_k = (air_1.thermal_conductivity+air_2.thermal_conductivity)/2
avg_Pr = (avg_cp*avg_dynvis)/avg_k
Re = avg_rho*v_air*t_rad/(avg_dynvis)

if (Re < 5*10**5):


Nu = 0.664*Re**.5*avg_Pr**(1/3)
else:
Nu = ((0.037*Re**(4/5))-871)*avg_Pr**(1/3)
h = avg_k*Nu/t_rad
k_al = 205
k_copper = 385
perimeter_fin = 2*t_rad+2*h_fin
Ac_fin = t_rad*t_fin
m = math.sqrt((h*perimeter_fin)/(k_al*Ac_fin))
eta_fin = math.tanh(m*t_rad)/(m*t_rad)
UA_needed = q_cabin/(T1_air-176)
UA_actual = h*A_tot-h*A_fin*(1-eta_fin)
space_fin_in = space_fin/0.0254

5
# -*- coding: utf-8 -*-
"""
Created on Sun Dec 9 18:33:10 2018

@author: kpett
"""

import cantera as ct
from matplotlib import pyplot

"Define Fluids"
air_1 = ct.Solution('air.cti')
air_2 = ct.Solution('air.cti')

"Knowns"
T1_air = 0+273.15 # T1 ambient = 0C
P1_air = 1*10**5 # P1 ambient = 1 bar
T2_air = 40+273.15 # T2 into cabin = 40C
P2_air = P1_air # P2 = 1 bar
air_1.TP = T1_air,P1_air # Define state
air_2.TP = T2_air,P2_air # Define state
h1_air = air_1.h
h2_air = air_2.h

Q = []
W = []
vel = []
COP = []
W_max = 48
vol_dot_max = 595
m_dot_out = vol_dot_max*air_1.density*1/3600
q_cabin = m_dot_out*(air_2.h-air_1.h)
Ac = 0.00064516*9.5

for v in range (0,60):


vel.append(v)
v_mhr = 1609.34*v
m_dot_in = Ac*v_mhr*air_1.density*1/3600
delta_m_dot = m_dot_out-m_dot_in
W_fan = delta_m_dot*(W_max/m_dot_out)
COP.append(q_cabin/W_fan)
W.append (W_fan)
Q.append(q_cabin)
pyplot.figure('COP vs. Vehicle Speed')
pyplot.plot(vel, COP)
pyplot.xlabel('Velocity (mph)')
pyplot.ylabel('COP')
pyplot.title('COP vs. Vehicle Speed')

pyplot.figure('Fan Power vs. Vehicle Speed')


pyplot.plot(vel, W)
pyplot.xlabel('Velocity (mph)')
pyplot.ylabel('Fan Power (W)')
pyplot.title('Fan Power vs. Vehicle Speed')

1
# -*- coding: utf-8 -*-
"""
Created on Sun Dec 9 18:33:10 2018

@author: kpett
"""

import cantera as ct
from matplotlib import pyplot

"Define Fluids"
air_1 = ct.Solution('air.cti')
air_2 = ct.Solution('air.cti')

"Knowns"
T1_air = 38+273.15 # T1 ambient = 38C
P1_air = 1*10**5 # P1 ambient = 1 bar
T2_air = 3+273.15 # T2 into cabin = 10C
P2_air = P1_air # P2 = 1 bar
air_1.TP = T1_air,P1_air # Define state
air_2.TP = T2_air,P2_air # Define state
h1_air = air_1.h
h2_air = air_2.h

Q = []
W = []
vel = []
COP = []
W_max = 48
vol_dot_max = 595
m_dot_out = vol_dot_max*air_1.density*1/3600
q_cabin = m_dot_out*(air_1.h-air_2.h)
Ac = 0.00064516*9.5

for v in range (0,60):


vel.append(v)
v_mhr = 1609.34*v
m_dot_in = Ac*v_mhr*air_1.density*1/3600
delta_m_dot = m_dot_out-m_dot_in
W_fan = delta_m_dot*(W_max/m_dot_out)
COP.append(q_cabin/W_fan)
W.append (W_fan)
Q.append(q_cabin)

pyplot.figure('COP vs. Vehicle Speed')


pyplot.plot(vel, COP)
pyplot.xlabel('Velocity (mph)')
pyplot.ylabel('COP')
pyplot.title('COP vs. Vehicle Speed')

pyplot.figure('Fan Power vs. Vehicle Speed')


pyplot.plot(vel, W)
pyplot.xlabel('Velocity (mph)')
pyplot.ylabel('Fan Power (W)')
pyplot.title('Fan Power vs. Vehicle Speed')

1
2

Anda mungkin juga menyukai