Dyah Setyaningsih: Difference between revisions

From Medien Wiki
(materials)
(add text)
Line 1: Line 1:
Project idea: https://miro.com/app/board/uXjVLBm7F8w=/?share_link_id=117991010729
= Respiring Reflections =
 
=== First Experiments ===
In the beginning of our semester, we were given some seeds to be grown at home. This was our first experiments for this class. I was growing Chia seeds (and also apple seeds that didn't really grow into anything) on a piece of cotton and inside a plastic bag. I have not done this since school time, so it was interesting and fun. During our first experiments in growing seeds, we documented our plants' progress. I documented it in form of pictures and diary entries.
 
//add pics + examples of diary entries
 
=== Motivation ===
After attending a few sessions of this class, I started brainstorming what could my topic of interest be. Honestly it was a bit confusing and challenging to try combining/connecting plants and electronics somehow. Before this bubble machine idea came up, I had some more ideas and sketched them in my notebook. In the end, I was interested in the respiration process of my plants and decided to make a bubble machine which can visualize the respiration process/cycle of my plants.
 
//add initial sketches
 
Initial project mood board: https://miro.com/app/board/uXjVLBm7F8w=/?share_link_id=117991010729


== Motivation ==
Are my plants breathing? They seem fine, their leaves are green... but are they really okay? To observe my houseplants' respiration, a prototype of soap bubble maker machine is being developed. The quantity of soap bubbles will be in accordance to the CO<sub>2</sub> level of the plants' (closed) environment, divided into three categories: Low, Medium and High CO<small>2</small> level.
Are my plants breathing? They seem fine, their leaves are green... but are they really okay? To observe my houseplants' respiration, a prototype of soap bubble maker machine is being developed. The quantity of soap bubbles will be in accordance to the CO<sub>2</sub> level of the plants' (closed) environment, divided into three categories: Low, Medium and High CO<small>2</small> level.


== Materials ==
=== Materials ===
 
* ESP32
* ESP32
* CO<sub>2</sub> sensor MH-Z19C
* CO<sub>2</sub> sensor MH-Z19C
Line 18: Line 28:
* Lots of cables...
* Lots of cables...


== Pseudocode ==
=== First Prototype ===
Idea: assign CO<sub>2</sub> value into 3 categories; '''Low, Medium, High''' and adjust the stepper motor speed based on the category.<syntaxhighlight lang="arduino">
first prototype
  DEFINE constants for CO2 thresholds:
 
    LOW_MEDIUM_THRESHOLD = 500 //to be determined via trials
=== Final Prototype (Winterwerkschau) ===
    MEDIUM_HIGH_THRESHOLD = 700 //to be determined via trials
final prototype
 
 
  DEFINE speed settings for each category:
=== Wiring Diagram ===
    LOW_SPEED = 400      // Steps per second
wiring diagram
    MEDIUM_SPEED = 800  // Steps per second
 
    HIGH_SPEED = 1200    // Steps per second
=== Code ===
 
  INITIALIZE variable currentCategory to -1
  INITIALIZE variable lastCategory to -1
 
  FUNCTION setup():
    BEGIN
      SET maximum speed for stepper motor (e.g., 1200 steps/sec)
      SET acceleration for smoother operation (e.g., 500 steps/sec^2)
      START serial communication for debugging
    END


  FUNCTION loop():
=== Self-reflection ===
    BEGIN
      READ CO2 value from the sensor (variable CO2)
     
      DETERMINE currentCategory:
        IF CO2 < LOW_MEDIUM_THRESHOLD:
          SET currentCategory to LOW
        ELSE IF CO2 < MEDIUM_HIGH_THRESHOLD:
          SET currentCategory to MEDIUM
        ELSE:
          SET currentCategory to HIGH
     
      IF currentCategory is different from lastCategory:
        BEGIN
          SWITCH currentCategory:
            CASE LOW:
              SET stepper motor speed to LOW_SPEED
            CASE MEDIUM:
              SET stepper motor speed to MEDIUM_SPEED
            CASE HIGH:
              SET stepper motor speed to HIGH_SPEED


          UPDATE lastCategory to currentCategory
=== Future Work ===
        END
     
      RUN stepper motor at the current speed (use AccelStepper's runSpeed() function)
    END
</syntaxhighlight>Idea to determine thresholds: run trials on plants enclosed environment.<syntaxhighlight lang="arduino">
  DEFINE variables:
    minCO2 = Infinity    // Initialize to a very high value
    maxCO2 = -Infinity    // Initialize to a very low value
    startTime = CURRENT_TIME
    trialDuration = 30 minutes (in milliseconds, e.g., 30 * 60 * 1000)
 
  FUNCTION setup():
    BEGIN
      INITIALIZE serial communication for debugging
      INITIALIZE CO2 sensor
      PRINT "Starting 30-minute CO2 trial..."
    END
 
  FUNCTION loop():
    BEGIN
      WHILE (CURRENT_TIME - startTime) < trialDuration:
        BEGIN
          READ current CO2 value from sensor (variable currentCO2)
         
          IF currentCO2 < minCO2:
            UPDATE minCO2 to currentCO2
         
          IF currentCO2 > maxCO2:
            UPDATE maxCO2 to currentCO2
         
          PRINT currentCO2, minCO2, and maxCO2 to serial monitor
          WAIT for 1 second //reduce sampling frequency
        END
     
      PRINT "Trial Complete."
      PRINT minCO2 and maxCO2 to serial monitor
     
      CALCULATE range = maxCO2 - minCO2
      CALCULATE lowMediumThreshold = minCO2 + (range / 3)
      CALCULATE mediumHighThreshold = minCO2 + (2 * range / 3)
     
      PRINT "Thresholds:"
      PRINT "Low-Medium Threshold: " + lowMediumThreshold
      PRINT "Medium-High Threshold: " + mediumHighThreshold
    END
</syntaxhighlight>


== Gallery ==
=== Gallery ===
[https://nextcloud.uni-weimar.de/s/qSHqbfojNCGmAdH The Plant Plant Gallery (Nextcloud Bauhaus Uni), Password: theplantplant] (CO<sub>2</sub> sensor first trial pictures are inside)
[https://nextcloud.uni-weimar.de/s/qSHqbfojNCGmAdH The Plant Plant Gallery (Nextcloud Bauhaus Uni), Password: theplantplant] (CO<sub>2</sub> sensor first trial pictures are inside)


== References ==
=== References ===


===== CO<sub>2</sub> sensor MH-Z19C =====
===== CO<sub>2</sub> sensor MH-Z19C =====

Revision as of 14:40, 15 February 2025

Respiring Reflections

First Experiments

In the beginning of our semester, we were given some seeds to be grown at home. This was our first experiments for this class. I was growing Chia seeds (and also apple seeds that didn't really grow into anything) on a piece of cotton and inside a plastic bag. I have not done this since school time, so it was interesting and fun. During our first experiments in growing seeds, we documented our plants' progress. I documented it in form of pictures and diary entries.

//add pics + examples of diary entries

Motivation

After attending a few sessions of this class, I started brainstorming what could my topic of interest be. Honestly it was a bit confusing and challenging to try combining/connecting plants and electronics somehow. Before this bubble machine idea came up, I had some more ideas and sketched them in my notebook. In the end, I was interested in the respiration process of my plants and decided to make a bubble machine which can visualize the respiration process/cycle of my plants.

//add initial sketches

Initial project mood board: https://miro.com/app/board/uXjVLBm7F8w=/?share_link_id=117991010729

Are my plants breathing? They seem fine, their leaves are green... but are they really okay? To observe my houseplants' respiration, a prototype of soap bubble maker machine is being developed. The quantity of soap bubbles will be in accordance to the CO2 level of the plants' (closed) environment, divided into three categories: Low, Medium and High CO2 level.

Materials

  • ESP32
  • CO2 sensor MH-Z19C
  • Stepper motor 28BYJ-48
  • Stepper motor driver module ULN2003
  • PWM fan AMD Ryzen 7 1700
  • 10kΩ resistor
  • Power supply 12 volts
  • Switch
  • Buck converter 12 volts to 5 volts
  • Acrylic sheets
  • Lots of cables...

First Prototype

first prototype

Final Prototype (Winterwerkschau)

final prototype

Wiring Diagram

wiring diagram

Code

Self-reflection

Future Work

Gallery

The Plant Plant Gallery (Nextcloud Bauhaus Uni), Password: theplantplant (CO2 sensor first trial pictures are inside)

References

CO2 sensor MH-Z19C
PWM fan AMD Ryzen 7 1700
Stepper motor 28BYJ-48 and stepper motor driver module ULN2003