Yoseph Dagnachew
I'm Yoseph Dagnachew, a fourth-year student at Addis Ababa Science and Technology University majoring in electromechanical engineering. As a member of Group 29 in the 2023 Integrated Engineering Team Project (IETP), I will be posting updates about my weekly development in this portfolio.
Week One
During the first week of the IETP course, our advisor urged us to submit our project ideas for review. We will ultimately rank our top three project ideas, and the proposal that receives the best score will be the primary project for the semester.
Week Two
PROJECT IDEA SUBMISSION FORM
INTEGRATED ENGINEERING TEAM PROJECT
Student Name: Yoseph Dagnachew
Student ID: ETS 1387/13
Group: 29
Proposer's e-mail address: z1yosi1994@gmail.com
H/P No: 0949951994
Department: Electromechanical engineering
Advisor/s: Dr. Samson Mekbib
Collaborator(s) (if any): –
Project Concept and SDG Mapping:
Project Concept:
The project aims to develop an advanced precision agriculture system, leveraging electro-mechanical engineering principles, to address the goal of "No Hunger" (SDG 2 - Zero Hunger). By integrating sensors, actuators, and automation, this system will optimize various aspects of crop cultivation to enhance efficiency and contribute to increased food production.
SDG Mapping:
- Goal: Zero Hunger (SDG 2)
- Target: Implement advanced precision agriculture techniques to improve crop yields and food security.
Objectives:
1. Enhance Crop Monitoring:
- Implement sensors for real-time monitoring of soil conditions, moisture levels, and crop health.
- Develop a user-friendly interface for farmers to access and interpret the monitoring data.
2. Automated Irrigation System:
- Integrate actuators and controllers to automate irrigation based on soil moisture content, optimizing water usage.
- Provide manual override options for farmers to align with local knowledge and preferences.
3. Smart Harvesting Techniques:
- Incorporate automated harvesting mechanisms to improve efficiency and reduce post-harvest losses.
- Implement machine learning algorithms to identify optimal harvest times for different crops.
4. Drone-Assisted Crop Surveillance:
- Utilize drones equipped with cameras and sensors for aerial surveillance of large agricultural areas.
- Develop image processing algorithms to identify potential issues such as pest infestations or nutrient deficiencies.
Short Summary of the Project:
The advanced precision agriculture system is a comprehensive solution designed to empower farmers with cutting-edge technology. By combining real-time monitoring, automated irrigation, smart harvesting, and drone-assisted surveillance, the project aims to revolutionize traditional farming practices. Ultimately, it strives to contribute significantly to achieving the goal of "Zero Hunger" by increasing agricultural productivity and ensuring food security.
Materials, Tools, Equipment/Instruments Required:
1. Sensors and Monitoring Devices:
2. Actuators and Automation Components:
3. Communication and Interface Components:
4. Drone Technology:
5. Power Supply:
6. Training and Support:
Week Three
This week, Our team decided to undertake our integrated engineering project of developing an automated irrigation system. And as an electromechanical student I'll be helping out with setting up the materials especially the control system, Arduino.
Week Four
During this week's Monday team meeting we allocated the tasks that each department was supposed to carry out so as a student of electromechanical engineering, I was tasked with designing the mechanical structure and framework of the automated irrigation system, integrating the electrical parts into the mechanical structure & collaborate with other departments to make a synchronized work.
In addition to that, we got together on Wednesday to talk about our progress with our advisor, who commented and suggested that we look into the literature review and earlier smart irrigation projects.
Week Five
We convened with our team members on Monday to contemplate the contents of our proposal. We chose the final version after discussing the content of the proposal. On Wednesday, we completed the proposal and gave it to our advisor for approval. Our advisor gave us input and recommended some modifications to make the proposal better.
Week 6
Automated irrigation systems leverage electronic and mechanical components to efficiently manage the watering of crops or landscaping without manual intervention and an an electromechanical engineer plays a crucial role in designing, implementing, and maintaining automated irrigation systems. Here's an overview of the key responsibilities and tasks of an electromechanical engineer in the context of an automated irrigation system:
System Design: The engineer is responsible for designing the overall automated irrigation system. This involves selecting appropriate sensors, actuators, controllers, and other components based on the specific requirements of the irrigation application.
Sensor Integration: Automated irrigation systems rely on sensors to measure soil moisture levels, weather conditions, and other relevant parameters. The electromechanical engineer is involved in integrating these sensors into the system to provide real-time data for decision-making.
Actuator and Control System: The engineer designs and implements the control system that regulates the actuators responsible for water distribution. This may involve valves, pumps, and other mechanical components. The control system ensures precise and efficient water delivery based on sensor inputs.
Power Supply: An automated irrigation system requires a reliable power supply. The engineer is responsible for selecting and implementing appropriate power sources, such as electrical grids, solar panels, or batteries, to ensure uninterrupted operation.
Automation Programming: Writing the software code or programming the micro-controllers that control the automation process is a critical task. This involves creating algorithms that interpret sensor data and determine when and how much water to apply.
Generally, Electromechanical engineer in an automated irrigation system plays a multidisciplinary role, combining skills in software, electrical and mechanical engineering, control systems, programming to create efficient and reliable solutions for automated watering.
Week 7
We met with my teammates and went over the prototype in great detail and at a general overview. We talked about the prototype's dimensions, materials and types, required pump type and quantity, and power requirements for the system to function.
The prototype automated irrigation system tracks soil moisture content and modifies water flow using sensors, valves, and controllers to make sure plants get the proper quantity of water at the right time, depending on the weather.
On Wednesday, we had met our adviser who appreciated and suggested that we work on the prototype based on the the real application of automated irrigation system
Week 8
This week, we worked together as a group to prepare an extensive bill of materials for our project. Our goal was to locate and acquire every piece of hardware needed for the system to be implemented successfully.
After the materials are acquired assembling the materials for a smart irrigation system involves integrating various components such as sensors, actuators, micro-controllers, and power supplies into the system. Here's a general overview of how the assembly process might work:
Gather Components:
Collect all the necessary components for your smart irrigation system, including Arduino board, sensors (e.g., soil moisture, temperature, humidity), actuators (e.g., water valves, pumps), wires, connectors, power supply, and any other required parts.
Design the System:
Plan the layout of your smart irrigation system, considering factors like the placement of sensors in the soil, the positioning of actuators in the water supply system, and the location of the Arduino board for easy access and protection from environmental elements.
Connect Sensors and Actuators:
Connect the sensors to the Arduino board using appropriate wires and connectors. Ensure that the connections are secure and follow the pin out specifications of the sensors.
Similarly, connect the actuators to the Arduino board. Pay attention to the power requirements and wiring diagrams provided with the actuators.
Power Supply Setup:
Determine the power supply requirements for your system based on the power consumption of the components.
Connect the power supply to the Arduino board and any other components that require power. Ensure that the voltage and current ratings are compatible with the components.
Programming the Arduino:
Write the code for the Arduino board using the Arduino IDE or any other compatible development environment.
The code should include instructions to read data from the sensors, process the data to determine watering needs, and control the actuators accordingly.
Testing and Debugging:
Test the assembled system to ensure that it functions as intended. This may involve checking sensor readings, observing actuator behavior, and verifying the system's response to different environmental conditions.
Debug any issues that arise during testing, such as incorrect sensor readings, erratic actuator behavior, or software bugs.
Finalizing the Assembly:
Once the system has been tested and any issues have been resolved, finalize the assembly by securing all components in place.
Use cable ties, enclosures, or other suitable methods to organize and protect the wiring and electronic components from damage.
Calibration and Optimization:
Calibrate the sensors and actuators as needed to ensure accurate operation.
Optimize the system's performance by fine-tuning the code and hardware settings based on the testing results.
Documentation:
Document the assembly process, including wiring diagrams, code snippets, and any modifications made to the original design.
This documentation will be valuable for future reference, troubleshooting, and potential upgrades or expansions of the system.
Deployment:
Once the smart irrigation system has been assembled, tested, and optimized, it can be deployed in the intended environment (e.g.,agricultural field).
Monitor the system during its operation to ensure that it continues to function correctly and make any necessary adjustments based on real-world performance.
Week 9
This week i tried to find comprehensive information about Arduino board. An Arduino board is a key component in many electronics projects, including smart irrigation systems. It's a microcontroller-based development platform that provides a simple and accessible way to create interactive electronic devices. Here are some key features of Arduino boards:
Microcontroller: The core of an Arduino board is its microcontroller. This is a small computer on a single integrated circuit that contains a processor, memory, and input/output (I/O) peripherals. The most common microcontrollers used in Arduino boards are from the Atmel AVR family (such as the ATmega series) and ARM processors (such as the SAMD series).
Input/Output (I/O) Pins: Arduino boards typically have a set of digital and analog I/O pins that can be used to connect various sensors, actuators, and other electronic components. These pins can be configured as inputs or outputs in the software to interact with the outside world.
Power Supply: Arduino boards can be powered through a variety of sources, including USB, batteries, or external power supplies. They often include voltage regulators to ensure stable operation across different power sources.
Clock and Crystal Oscillator: The clock and crystal oscillator provide the timing signals needed for the microcontroller to execute instructions at the correct speed.
USB Interface: Many Arduino boards feature a built-in USB interface that allows them to be connected to a computer for programming and communication. This interface is used to upload code to the board and for serial communication with other devices.
Reset Button: A reset button is often included on Arduino boards, allowing you to restart the microcontroller and the program running on it.
LED Indicator: Some Arduino boards have a built-in LED that can be used for simple visual feedback or debugging purposes.
Arduino boards are programmed using the Arduino Integrated Development Environment (IDE), which provides a user-friendly interface for writing, compiling, and uploading code to the board. The Arduino programming language is based on C/C++ and includes a set of libraries that simplify the interaction with the hardware features of the board.
Here's a basic example of Arduino code for a smart irrigation system using a soil moisture sensor and a water pump. This example assumes you have an Arduino board, a soil moisture sensor (analog output), and a water pump (controlled by a digital output pin).
// Pin definitions
const int soilMoisturePin = A0; // Analog input pin for soil moisture sensor
const int pumpPin = 8; // Digital output pin for water pump
// Threshold for watering (adjust as needed)
const int moistureThreshold = 500; // Example threshold value, adjust according to your sensor
void setup() {
// Initialize the pump pin as an output
pinMode(pumpPin, OUTPUT);
// Initialize serial communication for debugging (optional)
Serial.begin(9600);
}
void loop() {
// Read the soil moisture sensor value
int moistureValue = analogRead(soilMoisturePin);
// Debugging output (optional)
Serial.print("Moisture value: ");
Serial.println(moistureValue);
// Check if the soil is dry enough to water
if (moistureValue < moistureThreshold) {
// Soil is dry, turn on the water pump
digitalWrite(pumpPin, HIGH);
Serial.println("Watering the plants...");
// Add a delay for watering (adjust as needed)
delay(5000); // Example: water for 5 seconds
// Turn off the water pump after watering
digitalWrite(pumpPin, LOW);
Serial.println("Watering complete.");
}
// Add a delay between readings to avoid rapid cycling
delay(1000); // Example: 1-second delay between readings
}
This code continuously reads the soil moisture sensor value in the loop() function. If the moisture value falls below a certain threshold (moistureThreshold), indicating that the soil is dry, the water pump is turned on for a specified duration to water the plants. After watering, the pump is turned off, and the process repeats.
You may need to adjust the pin numbers, threshold values, and timing parameters according to your specific hardware and requirements. Also, consider adding error handling, sensor calibration, and additional features (such as integrating temperature or humidity sensors) for a more advanced smart irrigation system.
Week 10
This week i have observed that in a smart irrigation system, a relay module can be used to control the water pump or valves. A relay is an electrically operated switch that can be controlled by a low-power signal (from a micro controller like Arduino) to switch a much higher power load (like a water pump or valve) on or off. Here's how you might use a relay module in conjunction with an Arduino for a smart irrigation system:
Choose a Suitable Relay Module:
Select a relay module that is compatible with your Arduino board and can handle the voltage and current requirements of your water pump or valves. Common relay modules for Arduino use low-voltage triggers (like 5V) to control higher voltage loads.
Connect the Relay Module to the Arduino:
Most relay modules have multiple terminals, typically labeled "IN," "VCC," "GND," and "COM" or similar. Connect the relay module to the Arduino as follows:
Connect the "IN" pin of the relay module to a digital output pin on the Arduino (e.g., pin 8).
Connect the "VCC" pin of the relay module to the Arduino's 5V pin.
Connect the "GND" pin of the relay module to the Arduino's GND pin.
Connect the "COM" (common) pin of the relay module to one terminal of the water pump or valve.
Connect the other terminal of the water pump or valve to a suitable power source (e.g., the power supply for the pump).
Write Arduino Code to Control the Relay:
Use the Arduino code to control the relay module based on the soil moisture readings or other sensor inputs. For example, you might use an if statement to check the moisture level and activate the relay accordingly.
Test and Calibrate:
Test the relay module with your Arduino code to ensure that it can reliably control the water pump or valves based on sensor inputs.
Calibrate the system as needed by adjusting the threshold values or timing parameters to achieve the desired watering behavior.
By using a relay module in your smart irrigation system, you can effectively control the flow of water to your plants based on environmental conditions, thereby conserving water and ensuring optimal plant growth.