report

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
report [2024/06/17 00:38] – [7.4 Design] team1report [2024/06/19 21:40] (current) – [3.1 Scope] team1
Line 414: Line 414:
  
 ==== - Scope ==== ==== - Scope ====
-In order to be more precise about the scope of the project than in the introduction, from a project management point of view, the following objectives are to be achieved, also illustrated in Figure {{ref>scope}}: \\+In order to be more precised about the scope of the project than in the introduction, from a project management point of view, the following objectives are to be achieved, also illustrated in Figure {{ref>scope}}: \\
  - Initial research: First of all, initial research has to be done to find out the state of the art. At this point, the marketing analysis can be started, which will provide new strategies to innovate by following ethical and sustainable ideas.\\  - Initial research: First of all, initial research has to be done to find out the state of the art. At this point, the marketing analysis can be started, which will provide new strategies to innovate by following ethical and sustainable ideas.\\
    
Line 1770: Line 1770:
 <WRAP centeralign> <WRAP centeralign>
 <figure box1> <figure box1>
-{{:box1.png?1000|}}+{{:boxx1.png?1000|}}
 <caption>3D model 1</caption> <caption>3D model 1</caption>
 </figure> </figure>
Line 1778: Line 1778:
 <WRAP center centeralign> <WRAP center centeralign>
 <figure box2> <figure box2>
-{{:box2.png?1000|}} <caption>3D model 2</caption>+{{:boxx2.png?1000|}} <caption>3D model 2</caption>
 </figure> </figure>
 </WRAP> </WRAP>
Line 1785: Line 1785:
 <WRAP center centeralign> <WRAP center centeralign>
 <figure box3> <figure box3>
-{{:box3.png?1000|}} <caption>3D model 3</caption>+{{:boxx3.png?1000|}} <caption>3D model 3</caption>
 </figure> </figure>
 </WRAP> </WRAP>
Line 2493: Line 2493:
  
 === - Structure=== === - Structure===
-The schematic in the figure below represents the prototype, which is identical to the full design except for the exclusion of the CO₂ sensorlight sensorand servo motor. In the prototype, the float switch will detect water in the water tank and send a message to the app to refill the tank. The AHT20 sensor will monitor humidity and temperature. Depending on these readings, the fan and valve can be activated. Instead of the difficult-to-obtain Mosfet 30N06L, the fan and valve are connected transistors. For a detailed step-by-step process, please refer to the explanation below the flowchart. The microcontroller ESP32 with CAM can capture images of the growing mycelium and send them to the app. For the prototype, AI detection will not be used, as training AI requires a large number of pictures and substantial time, making it infeasible for the prototype. The power on/off the device, there is a switch connected to an LED to indicate if the device is powered on.\\+The schematic in the figure below represents the prototype, which is identical to the full design except for the exclusion of the CO₂ sensor and light sensor and that only one instead of two cameras is used. In the prototype, the float switch will detect water in the water tank and send a message to the app to refill the tank. The AHT20 sensor will monitor humidity and temperature. Depending on these readings, the fan and valve can be activated. Instead of the difficult-to-obtain Mosfet 30N06L, the fan and valve are connected transistors. For a detailed step-by-step process, please refer to the explanation below the flowchart. The microcontroller ESP32 with CAM can capture images of the growing mycelium and send them to the app. For the prototype, AI detection will not be used, as training AI requires a large number of pictures and substantial time, making it infeasible for the prototype. To power on/off the device, there is a switch connected to an LED to indicate if the device is powered on.\\
 The detailed schematics are shown in the following Figure {{ref>prot}}.\\ The detailed schematics are shown in the following Figure {{ref>prot}}.\\
  
Line 2504: Line 2504:
  
 === - Hardware === === - Hardware ===
-Compared to the designed solution, the prototype will be made of wood and the small boxes will be made from everyday objects such as yogurt pots or halved milk cartons. The prototype will also be smaller to keep the material costs within budgetHowever, only the scale changes, not the construction itself. + 
-The materials for the prototype can be found in the Deliverables.+For the non-electrical parts of the prototype, the white expanded PVC sheets were reused from an old project for sustainability reasons. The dimensions of the prototype are almost the same as the proposed solution, except that the length has been reduced from 100 cm to 70 cm. The small boxes are made from reused ice-cream boxes. The top is made of acrylic glassThe difference in the proposed solution is that the acrylic glass should be recycledbut this is not so easily available. Another difference is that the water tank is an ice cream box on top of the unit, instead of being integrated into the designFigure {{ref>prototype1}} and {{ref>prototype2}} show the prototype. 
 + 
 +<WRAP center centeralign> 
 +<figure prototype1> 
 +{{:img_2757.jpeg?800|}}<caption>Prototype opened doors</caption> 
 +</figure> 
 +</WRAP> 
 + 
 +<WRAP center centeralign> 
 +<figure prototype2> 
 +{{:img_2754.jpeg?800|}}<caption>Prototype closed doors</caption> 
 +</figure> 
 +</WRAP>
  
 === Power Budget Prototype === === Power Budget Prototype ===
Line 2581: Line 2593:
 The analysis reveals a maximum stress of 2.5 MPa. Given that the ABS material used can withstand at least 30 MPa, no stability issues are anticipated. However, it was noted that the plate intended to block light for the dark room sags by 25 mm in the middle due to its own weight. This issue will be resolved by adding some support to the upper plate. Otherwise, there are no significant deformations under normal load. The analysis reveals a maximum stress of 2.5 MPa. Given that the ABS material used can withstand at least 30 MPa, no stability issues are anticipated. However, it was noted that the plate intended to block light for the dark room sags by 25 mm in the middle due to its own weight. This issue will be resolved by adding some support to the upper plate. Otherwise, there are no significant deformations under normal load.
  
-Next, the maximum possible load uniformly distributed on the device was examined. At a load of 1000 kg on the device, only a small area exceeds the maximum stress, specifically at the middle attachment of the rail to the level, as seen in Figure {{ref>stress2}}. This element will be reinforced, as it was identified as a weak point, even though such high loads are not expected.+Next, the maximum possible load uniformly distributed on the device was examined. At a load of 1000 kg on the device, only a small area exceeds the maximum stress, specifically at the middle attachment of the roller conveyor to the level, as seen in Figure {{ref>stress2}}. This element will be reinforced, as it was identified as a weak point, even though such high loads are not expected.
  
 <WRAP center centeralign> <WRAP center centeralign>
Line 2621: Line 2633:
 </WRAP> </WRAP>
  
-The maximum stress occurs again, like in the second simulation, at the attachment of the rail to the level. This again confirms the presence of a weak point and justifies the reinforcement of the component, even though the maximum allowable stress is not exceeded.+The maximum stress occurs again, like in the second simulation, at the attachment of the roller conveyor to the level. This again confirms the presence of a weak point and justifies the reinforcement of the component, even though the maximum allowable stress is not exceeded.
  
 In conclusion, the analyses indicate that the product can withstand significant stresses and loads, thus meeting our durability and stability requirements. Additionally, material savings to reduce weight and cost could be considered. In conclusion, the analyses indicate that the product can withstand significant stresses and loads, thus meeting our durability and stability requirements. Additionally, material savings to reduce weight and cost could be considered.
Line 2651: Line 2663:
 </figure> </figure>
 </WRAP> </WRAP>
 +Now we are going to see how fast is the API to respond as the previous tests were more of stress tests. Table{{ref>test_table1}} holds the functional and performance (exchanged data size and latency) results of the implemented API. The
 +latency tests were made by making ten consecutive calls to each operation and
 +calculating the corresponding average and standard deviation values.
 +Table{{ref>test_table2}} presents the load impact in the longest operation (worst case). The load
 +tests consist in making 10, 100 and 1000 simultaneous requests to the operation
 +with higher average latency in table{{ref>test_table1}}.
  
 +<WRAP center centeralign>
 +
 +<table test_table1 >
 +<caption>API: functional and performance results</caption>
 +<WRAP box center leftalign 400px>
 +^ Operation ^ Method ^ Result ^ Size ( B ) ^ Average Latency (ms) ^ Latency Deviation (ms) ^
 +|Check | token | GET | OK | 207 | 6 | 0
 +|Connect | POST | OK | 332 | 9 | 7 |
 +|Disconnect | DELETE | OK | 334 | 7 | 3 |
 +|Get | Data | GET | OK | 331 | 6 | 3
 +|Get | User | GET | OK | 290 | 8 | 2
 +|Login | POST | OK | 426 | 21 | 7 |
 +|Logout | DELETE | OK | 245 | 25 | 10 |
 +|Register | PUT | OK | 315 | 14 | 1 |
 +</WRAP>
 +</table>
 +</WRAP> 
 +
 +<WRAP center centeralign>
 +
 +<table test_table2 >
 +<caption>API: load results</caption>
 +<WRAP box center leftalign 400px>
 +^Requests/Results ^ Operation ^ Method ^ Size ( B ) ^ Average Latency (ms) ^ Latency Deviation (ms) ^
 +|10/10 | Logout | GET | 245 | 36 | 11 |
 +|100/100 | Logout | GET | 245 | 28 | 8 |
 +|1000/1000 | Logout | GET | 245 | 763 | 331 |
 +</WRAP>
 +</table>
 +</WRAP>
 +These results show that the app provides a friendly user experience.
  Mqtt broker testing \\  Mqtt broker testing \\
 For the mqtt broker testing the [[https://github.com/inovex/mqtt-stresser|mqtt-stresser tool from inovex]] has been used. This tool works by creating a given number of clients and a given number of messages per client. Then all clients send messages continuously and each of them report if there is any missing message. The test has been done first using 10 clients sending 150 each and the second time 100 clients sending 50 messages each. Figures {{ref>mqtt_test1}} and {{ref>mqtt_test2}} show the results. For the mqtt broker testing the [[https://github.com/inovex/mqtt-stresser|mqtt-stresser tool from inovex]] has been used. This tool works by creating a given number of clients and a given number of messages per client. Then all clients send messages continuously and each of them report if there is any missing message. The test has been done first using 10 clients sending 150 each and the second time 100 clients sending 50 messages each. Figures {{ref>mqtt_test1}} and {{ref>mqtt_test2}} show the results.
  • report.1718581110.txt.gz
  • Last modified: 2024/06/17 00:38
  • by team1