Table of Contents

Play Video

SUSTAINAIBLE AGRI WINDS 

This sustainable smart project uses robotics to install 3D turbines along highways. These turbines convert vehicle-generated airflow into electricity, stored in batteries. The energy powers agricultural irrigation systems and supplies electricity to farmers and power stations. Ideal for high-traffic areas like metro lines and railways, it promotes renewable energy and reduces fossil fuel dependence.

sustainable Agri Winds project involves installing 3D turbines along highways to convert the pneumatic force from moving vehicles into electricity. These turbines capture airflow generated by passing cars, trucks, and buses, converting it into electrical energy, which is stored in battery modules. The stored electricity can then be used to power agricultural activities, such as irrigation systems, and supply electricity to farmers and power stations. 

The project’s efficiency is maximized when turbines are installed in high-traffic areas like metro lines and railways, where the continuous and high-speed movement of trains generates more power. This innovative approach provides a renewable energy source, reduces reliance on fossil fuels, and supports essential services in both urban and rural areas. By integrating these turbines into transportation infrastructures, the project promotes sustainable energy generation while enhancing the overall power supply for various critical applications. 

COPONENTS LIST –

1.ARDUINO UNO  

2.DC MOTOR  

3. N-Channel MOSFET 60V 30A

 4. MULTIMETER  

5. LEDS   

6. Diode Rectifier – 1A 50V

7. JUMPER WIRES  

8.10K Ohm Resistor

9. RECHARGEABLE BATTERY-12V

// Include Libraries
#include "Arduino.h"
#include "DCMotor.h"


// Pin Definitions
#define DCMOTOR_PIN_COIL1	5



// Global variables and defines

// object initialization
DCMotor dcMotor(DCMOTOR_PIN_COIL1);


// define vars for testing menu
const int timeout = 10000;       //define timeout of 10 sec
char menuOption = 0;
long time0;

// Setup the essentials for your circuit to work. It runs first every time your circuit is powered with electricity.
void setup() 
{
    // Setup Serial which is useful for debugging
    // Use the Serial Monitor to view printed messages
    Serial.begin(9600);
    while (!Serial) ; // wait for serial port to connect. Needed for native USB
    Serial.println("start");
    
    
    menuOption = menu();
    
}

// Main logic of your circuit. It defines the interaction between the components you selected. After setup, it runs over and over again, in an eternal loop.
void loop() 
{
    
    
    if(menuOption == '1') {
    // Micro DC Motor (Geared) - 90 RPM (6-12V) - Test Code
    // The DC motor will turn on and off for 4000ms (4 sec)
    dcMotor.on(200);                        // 1. turns on
    delay(4000);                             // 2. waits 4000 milliseconds (4 sec). change the value in the brackets (4000) for a longer or shorter delay.
    dcMotor.off();                       // 3. turns off
    delay(4000);                             // 4. waits 4000 milliseconds (4 sec). change the value in the brackets (4000) for a longer or shorter delay.

    }
    
    if (millis() - time0 > timeout)
    {
        menuOption = menu();
    }
    
}



// Menu function for selecting the components to be tested
// Follow serial monitor for instrcutions
char menu()
{

    Serial.println(F("\nWhich component would you like to test?"));
    Serial.println(F("(1) Micro DC Motor (Geared) - 90 RPM (6-12V)"));
    Serial.println(F("(menu) send anything else or press on board reset button\n"));
    while (!Serial.available());

    // Read data from serial monitor if received
    while (Serial.available()) 
    {
        char c = Serial.read();
        if (isAlphaNumeric(c)) 
        {   
            
            if(c == '1') 
    			Serial.println(F("Now Testing Micro DC Motor (Geared) - 90 RPM (6-12V)"));
            else
            {
                Serial.println(F("illegal input!"));
                return 0;
            }
            time0 = millis();
            return c;
        }
    }
}
Scroll to Top