In my previous post, I have introduced the idea of turning a household refrigerator into a diagnostic test-bed. In this post, we will discuss the design and implementation of the test-bed. The main functionality of any diagnostic test-bed is to collect sensor data, to allow the injection of faults and to allow multiple configurations.
The most important characteristics of the test-bed is the support of reproducible diagnostic experiments. To create a diagnostic benchmark we need multiple repetitions of the same diagnostic experiment (fault-injection) so we can statistically validate the correctness of our diagnostic algorithms (it does not matter if they are data-driven, model-driven, rule-driven, or probabilistic).
Notice that in the case of the refrigerators, we do not have full control over the environment. Although, the room in which the refrigerators are placed is climate controlled, there are small variations due to the outside weather, room use and maintenance or malfunctions of the main building's HVAC system. To compensate for these variations in the environment we will apply the rule: "measure what you cannot control".
Figure 1 shows the architecture of the test-bed. The rectangles show the various components in the test-bed and the arrows signify the type of information that is being transferred or the physical quantity that is being measured or changed.
Multiple temperature sensors measure the temperature inside the refrigerator, inside the freezer, and in the room. We disconnect the thermostat from the compressor circuit and we connect it to a digital input of the Arduino MEGA 2560 board. This way we can think of the thermostat as a one-bit temperature sensor. The power is measured by a voltage and current sensor.
On the actuation side, we have a relay board that switches the fridge on and off. We also install a linear actuator that can open or close the door to simulate human activity.
The test-bed refrigerator is controlled by an Arduino MEGA 2560 board. The Arduino board is also responsible for interfacing the sensors and sending the sensed values to the Linux base. The Arduino board waits for commands from the Linux base station and actuates the linear actuator (for opening or closing the door) or the power relay (for turning the refrigerator on or off).
In addition to the relay controlling the compressor we use relays for bypassing the PTC.
According to the US Census Bureau, there are more than 129 millions of refrigerators and 86 million houses with central air-conditioning units in the US alone. Even a slight improvement in the efficiency of those would result in huge energy savings. One typically neglected aspect of energy optimization is the energy consumption of malfunctioning or partially-functioning devices. We all know that many refrigerators and Heating Ventilation and Air-Conditioning (HVAC) units have degraded performance over time due to worn gaskets (in the case of refrigerators), clogged filters (HVACs), pipe deposits (HVACs), refrigerant leaks and various sensor failures. In some anecdotes building managers fully ignore the warnings of their Building Management Systems (BMSes) due to the large number of false positives they generate.
But refrigeration systems are not only important because our daily comfort and meal depends on them. Refrigerators keep vaccines potent and a refrigerator with an intermittently faulty short-circuited thermostat may freeze a vaccine and make it not working. Refrigeration technologies are used in space cryogenics to cool down sensors and in quantum-computing to achieve superconductivity. So, studying and analyzing malfunctioning refrigeration systems is very beneficiary to society.
To help the analysis of failing refrigeration systems, we have decided to break (in multiple ways) and diagnose a common household refrigerator. We will experiment with several of the extremely popular Haier refrigerators not only because they are cheap (retail price of less than 100 USD) and good but because they are representative for how most refrigerators and HVACs work (since the invention of the auto-defrost in 1927, the core refrigeration technology has not changed much).
Our goal in diagnosing refrigerators is not necessarily to design and build a self-diagnosing household appliance. Our goal is the collection of data and the design of frameworks and algorithms that can help diagnosis of thermo-electric systems in general. We want to compare the performance of various diagnostic and diagnostic entropy-reduction methods on real-world data and to use this data as a common diagnostic benchmark.
In a series of blog postings, some of which will be part of scientific and engineering publications we will experiment with household refrigerators, create a diagnostic benchmark and compare several data-driven and model-based diagnostic algorithms.
These are some parameters of the refrigerators we have chosen for our experiments:
And this is how the refrigerator looks from the front:
The next photograph shows it from behind.
The electrical diagram of the refrigerator is shown in figure 1. The main electrical components are the thermostat, the bimetallic overload protector, the Positive Temperature Coefficient (PTC) thermistor and the electric motor in the compressor.
The compressors that this type of refrigerators use are Huayi, type L35C5L:
The compressor uses a Resistance Start, Induction Run (RSIR) motor. Motors that use capacitors for running and starting are more efficient but also more expensive. Electrolytic capacitors also age and tend to fail often. To start the compressor, the refrigerator runs current through a secondary start winding.
The function of the PTC thermistor is to limit the amount of time during which current flows through the start winding. As current flows the temperature of the thermistor and its resistance increase (hence the word positive in PTC). After increasing the temperature for a while, the PTC thermistor enters equilibrium and there is little current flowing through the start winding of the motor.
The type of the thermistor is a generic brand QP2-4.7 and the product type only specifies its resistance of 4.7. Although we could not find the original manufacturer's datasheet, a similar component by Sensata Technologies specifies that is measured at and . We will analyze the PTC thermistor in greater detail in our subsequent writings.
The type of the overload protector is BT48-125A61D2. The open-circuit temperature is specified as and the closed-circuit temperature is .
Figure 2 shows the refrigerant flow and the actual refrigeration cycle.
There are five major components through which the refrigerant flows. The compressor converts electrical energy to potential energy stored as compressed isobutane. The compression of the refrigerant happens in the condenser and during this process heat is rejected in the environment. The filter drier is a mesh that captures contaminants from the refrigerant so they do not clog the capillary tube. The capillary tube is a long narrow pipe that results in a pressure drop of the refrigerant. The result of the pressure drop is that the refrigerant expands in the evaporator. The latter process is endothermic and absorbs heat from the refrigerator and from the freezer. Finally, the refrigerant is fed to the compressor again for repeating the cycle.
Today, we discuss the relatively simple task of designing the shield that will connect the full-wave rectifier test-bed to the Arduino Due. There is not much to it as the shield provides only connectors. There is no voltage shifting or any other modifications to the signals, they are simply routed to the Arduino Due.
We will add an external connector so we connect an LCD shield for debugging and status indication. Notice that the LCD is powered with +5V. The SDA and SCL signals are also supposed to be +5V, however the Arduino Due can only provide +3.3V. This should be sufficient to operate the LCD and a quick search on the Internet shows that the LCD shield works fine with +3.3V.