26 January 2010
Author: Giorgos LazaridisPC System Health Monitor
Worklog - Constructing the modules (January 30 2010)
The Fan controller Modules
I will start with the construction of the fan controller modules. There are mainly 2 reasons for this: first of all, i want to have all 6 modules fully working for test with the master, but not on a breadboard, it is not the correct way, too complicated. The other reason is that these modules are much more interesting than the DS1621 modules... After all, for the DS1621 i will solder them on pre-drilled prototype boards.
One challenge during the drawing of the modules was the size. It had to be as small as possible. Each module will be fixed on each fan, and thus it has to be small enough to fin in the center or the side of the fan. I used the eagle once more for drawing the schematic and the PCB.
After many layout changes of the components on the PCB, i finally managed to fit them all in a 24x26mm PCB. I xeroxed an array of 3x2 PCB layouts on a transparent film. Then, using my LED UV artwork photo-transfer box, i transfered the PCBs on a positive photosensitive board. Then, i used Fe3CL and within 3 minutes i had the PCBs ready. With my pen-style drill i made the holes on the pads. I have to admit that using this Foot Pedal the job was much easier and faster. Using my dremel cutter, i cut the PCBs to size.
Note that this controller is described in details in a previous PCB Heaven circuit and it worth reading:PIC 3-Wire PWM Fan RPM Controller
I could make it smaller by avoiding using the 5-pins connector interface, but i did not want to have the communication wire directly soldered on the PCB. After quite some time, i soldered all the parts on all 6 PCBs. I always like when i see same things lined up, especially when these same things are made by me:
See also the following image. The PCB is glued in the center of the 120mm fan:
The DS1621 Temperature Sensor Modules
I tried to make the sensors as compact as possible. Actually, i did not make any special PCM. Instead, i used a small piece o pre-drilled prototype board. I usually never solder the IC directly onto the PCB, so i soldered an 8 pin IC base first. Then, i connected the 4 wires (positive, negative, clock and data) directly on the pins. With the same wires, i made also the hardware addressing for each module, thus i now have the module Nr. b'10010000' and module Nr. b'10010001'.
I used normal telephone wire for wiring these modules. I could avoid using the IC base and the prototype board to make it even smaller. But imagine what will happen if i had to change the DS1621 due to chip failure... Here are photos of the temperature sensor modules
The Local Bus
So, the 8 modules are ready! Its time to hook them up on the bus. The bus actually will be a running wire with it's one side connected on the master PCB. The wire will run all around the PC box, and all modules will be connected in parallel. The bus will provide the 5V that the modules need to operate, as well as another line with 12 volts that can be use for powering loads, such as the fans.
Originally i had design the bus as a running wire with each one module separately connected in parallel to it. But after some thinking, i decided to connect the modules in "depots", from where all the bus-modules of the specific depot will depart. So, we have 3 depots. The first one is the middle depot. This one carries two fan modules for the two circulating fans in the middle of the PC box. The next one is the outlet depot. This one carries two fan modules and one DS1621 module. The two fans are at the air outlet of the box and the DS1621 will measure the air temperature at this point. The last depot is the inlet depot. This one has another 2 fan modules and the last DS1621 module. The fans of this depot are for inserting fresh air in the box, and the DS1621 will measure the air temperature that is going into the box.
Here are the photos of the 3 depots:
Here is a photo of the complete bus:
The Analog Temperature Sensors (NTC Sensors)
I thought that this would be the easiest job to do. Surprisingly, this was the hardest. The wiring, the soldering, the heat-shrinks and generally all the labor took me a LOT. First of all, i made a wire with 10 poles for 10 sensors. I curently have the first 8 sensors soldered on this wire. I call this wire "Grape-palm", because one side looks like a grape (with much imagination) and the other side looks like a palm leaf.
The palm-leaf has 4 sensors for the first 4 HDDs. The Grape-side has another 4 sensors. The first one will be attached to the heat-sink of the CPU, the next one to the heat-sink of the GPU, and the other two will indicate the temperature to the north and south lane. these two lanes are the two imaginary lanes that the air flows inside my PC box. Each lane has an 120mm fan (the middle fans) that will force the air flow through the lane. The North lane has the GPu and the South lane has the CPU and the memory DIMMs.
I have kept two wires free from this harness for the other 2 HDDs. Yet these wires are not connected. Also, two more sensors (a total of 12 sensors) are attached to the same 12-pin connector. The first sensor is for the output of the pwer supply. The other one is... i do not know yet. I have not decide :).
Excuse me for the mess in the box. The wires looks like spaghetti, but the box is still under construction
Attaching the sensors to the HDDs
One of the difficulties that i came in front when making the analog sensors, was the way to mount the sensors on the HDDs. The NTC sensors have NO flat surface, they cannot be mechanically stressed, they need good contact to get good measurements... Nothing that could help me. A few steps before insanity, i came across a 6mm2 wire connector, that was actually the solution. I took out the plastic cover with a razor. Using a pair of pliers and my small ========, i straightened the round metal that grips the wire. Then, again with those tools, i shaped the metal so that it can cover the sensor WITHOUT touching it. The metal is surrounding the sensor like a cage, but without putting any mechanical stress.
I put some heat-transfer paste there that the sensor will touch. Then i took a small piece of heat insulator from copper heating pipes and covered the sensor. This material has double role: It will insulate the upper side of the sensor from the ambient air, and it will act as a spring, holding the sensor down in contact with the HDD. All this sandwich is kept in place with the cage that i made before!
Testing the sensors
Before going to the next step (that would be the fans), i had first to test all the sensors. The LCD layout is a little bit messy, but i had to have all the informations displayed all the time. The first 4 temperatures on the top left corner are the 4 HDDs. The two bottom right temperatures comes from the DS1621 accurate temperature sensors. To check the measurements from the HDDs, i had to cross-check them with the DS1621s. So, just for this test, the DS1621s are mounted on two HDDs, one on the first and one on the last HDD in series. Here are the results 5 minutes after powering on the PC:
To help you distinguish which temperature is which, i have colored circles. Here is the legend:
The '000' numbers on the right comes from two fan speed sensors, but right now i have non in operation. The other two temperatures that have no circle, comes from the CPU (right value) and the GPU (left value).At a first glance, i was astonished by the HDD temperature readings compared to the DS1621 accurate temperature sensors. I was expecting a greater difference. I had to wait more time for the temperature to rise. I went for dinner (twice), watched some TV garbage, had a bath, and 2 hours later:
An -almost- perfect match between the DS1621 and the NTC sensors. I believe, i am ready to go to the next step!