>> Week 18, May 28: Project development
Complete your final project, tracking your progress
Spiral development
Round 1:
After brainstorming, I choose an idea for my final project
Round 2:
I identified the modules that would be part of the project. And I started to search the information in order to document about the operation and particular technical details.
Round 3:
I reviewed the work schedule (date of delivery for final project) and considering the collected data and my knowledge, I defined the modules that will be part of the first prototype (Power supply and Automatic temperature control). Below, you can see a block diagram of the circuits that will be part of the prototype. Finally, I prepared a schedule for manufacturing of the first prototype.
Round 4:
After identifying the electronic circuits I would use in the project, I made a simulation of the electronic circuits: temperature controller, temperature monitoring and setting, synchronization signals generator and feeding source (this process includes the definition of the components and the coding of microcontroller program).
I also defined the way the elements would be distributed; I opted for a configuration of Modules in order to develop them one by one. Then, I obtained the first diagrams and component lists. I started to search and/or buy the electronic components and materials.
The defined circuits were:
|
Round 5:
With the simulation phase finished, the fabduino manufactured in input devices class was set up. Operating tests were made, IDE Arduino test programs were recorded.
Round 6:
Subsequently, I checked the correct operation of the code developed during the simulation; for this purpose, I connected a potentiometer to a protoboard, in order to simulate the temperature sensor, a LCD, another potentiometer to regulate the LCD contrast and I saved the code in an Arduino Uno card.
Round 7:
I got an old electrical water heater, and I took the heating resistance and, since I did not have the technical specifications, I made the corresponding measurements to identify: the correct operation, the ohms value and amperes consumption. These data was necessary to calculate the component capacity and design the power interface.
With the LCD and the heating resistance finally operative, I started to make drafts of the water heater. The second step was to make the case setting and place the pipes to locate the flow and temperature sensors.
Round 8:
I designed a 3D piping, to locate the flow and temperature sensors. However, after several printing tests, the pieces did not fit correctly and that would cause a leak. I decided not to use the designed pieces and reuse the piping of the recycled heater. (In the future, I should look for a professional printer in order to obtain higher quality printed pieces).
This caused that in my first prototype the temperature sensor should be located in the water tank and would use the mechanical built-in flow sensor of the old system, which was operating.
Then, I started to work on the case setting.
Round 9:
Design and manufacturing of the case setting. The design included a little box that may be located separated from the case heater. I tried to make a good looking case, since it would be the visible part of the prototype the user would buy. The case heater was planned to be installed and hidden from the user’s view; the internal part included holders to fix the LCD and the button cards, as well as a rear cover that could have been removed easily for checking, all in pressfit system. For manufacturing, 2D design was used; the cutting and the engraving were made by means of a Laser
Epillog cutter in 3.1mm aeromodelism plywood. The buttons were designed in 3D and printed in a MakerBot Replicator 2x printer.
Two units were prepared, a testing one and the other with modifications and final engraving.
(Click for -->see photos album)
Round 10:
The next step was to make the case setting operative with the test circuit prepared before to test the microcontroller code. Then, the Arduino UNO card had to be replaced by the Fabduino card we previously made; the code was saved in the processor and the connections to make the it work along with the case setting were made.
Round 11:
Then, I made the circuits: synchronization, power interface and power supply. The idea was to have the circuits ready so that they can be assembled and work together immediately. Only a dream.
Round 12:
Once the three circuits were ready, I tested them one by one and then I connected one to each other. I started with the synchronization circuit, which generated the planned pulse, but when connected to the fabduino it stopped and after the tests the Opam component of the synchronization circuit burnt out. After several attempts, I had to modify the microcontroller program so that this prototype version may work without it. Once an operating prototype was obtained, I could turn back to see what was failing.
Round 13:
The power interface circuit tests were performed without problems.
Round 14:
When testing the 5v regulated source I made, it operated well but unfortunately, when connecting it to the synchronization circuit it broke. Therefore, that card was not used in the prototype. Below, I detail how I solved the current feeding.
I discovered that I should not feed the synchronization circuit output with the 5vdc generated by the same transformer feeding the synchronization circuit.
In this project phase, the case setting was operative and tested, as well as the heater resistance, the card with the microcontroller (fabduino) was programmed and working with the temperature sensor and finally the power interface was also ready.
I decided to postpone the improvements for later, once I have finished the design and the case heater was made.
Round 15:
Design and manufacturing of case heater: in the design I took into account enough space to include three areas: in the left top, the high voltage heater resistance; in the right top, the area for low voltage electronic cards, and total division to separate in the low part an independent area for hydraulic flow (in order to separate the electronic part from the water, and to prevent any problem).
I also took into account to leave some open spaces in the front parts and in the top and cover them with transparent acrylic to allow the viewing of the inner parts of the prototype, from the top and from the bottom. For manufacturing, I used 2D design, 12mm MDF and CNC ShopBot milling cutter. Three processes were performed: Lace at two depths, inside court and outside court.. In order to cover the opened spaces, 3 mm transparent acrylic sheets were used; these were cut with Laser, so that they may fit by pressure. Finally, I added a decorative feature with a sticker of FabLab logotype, made with the vinyl cutter.
Round 16:
Case heater assembly and circuit installation
The side walls were assembled to the main piece by using a mallet; then, the front and rear plates were placed posterior. Then, on the ground, the vertical strips were fixed to the main piece; they would be the rack for electronic cards. Finally, the top plate was placed.
The heater resistance was put and we started to fix the electronic cards. The vinyl FabLab logotype was placed at the end.
Round 17:
First tests:
In FabLab we do not have a water supply to perform the tests, so I replaced the heater resistance by a 220v bulb, and placed the temperature sensor close, so that it may detect the heat sent out when it is turned on. Thus, the programming parameters were adjusted so that everything may work well. Considering that the loss of heat is not immediate, the program was made so that the system may work in a range higher than 2 degrees over and below the value fixed by the user (this can be reprogrammed anytime). The system would turn the resistance on if the sensor detects a value below the inferior range and would turn it off when it surpasses the higher value.
During the first steps, a unexpected failure was detected in the LCD (suddenly, it showed illegible characters), the contacts and connections were verified. After reviewing and disassembling almost the whole project, I tried changing the communication cable by a UTP cable. After the change, the problem was solved, but the cable we used was too rigid and it was difficult to install it; finally, we managed to make it work.
We had a problem with the current supply. The system worked well with the FTDI cable connected to the PC. However, when feeding the fabduino with a 5v regulated source, it showed operating failures. Different transformers were tested, as well as alternative rectification and regulation systems, but none of them could solve the problem. Therefore, for this phase, I decided to make the prototype temporarily operate by using voltage from the FTDI cable.