Třídění pet lahví a plechovek

Třídění pet lahví a plechovek

V tomto projektu jsem se snažil automatizovat odpadkový koš na inteligentní koš, který bude třídit jak už z názvu vypovídá plastové lahve a plechovky. Cílem bylo, že když fotorezistor bude detekovat světlo procházející přes pet lahev, které vysílaly diody, tak se krokový motor posune o daný počet kroků na levou stranu a poté se vrátí do startovací pozice, z které začínal. Pokud jsme ale místo pet lahve vložili plechovku zamezili jsme přísun světla na fotorezistor a tím pádem se motor otočil zase o daný počet kroků doprava.

Jediné s čím jsem měl problémy bylo, když se motor vracel zpět do startovací pozice, protože led diody pořád svítily. Osobně bych ještě do obvodu přidal senzor na detekci předmětu (když bych nějaký měl) jestli je v zásobníku položena pet lahev nebo plechovka. Usnadnilo by to problém, který nastával při vracení do startovací pozice.

 

 

Kód:

#include <Stepper.h>

const int stepsPerRevolution = 200;                  //Počet kroků na jedno otočení motoru
Stepper myStepper(stepsPerRevoluton, 8, 9, 10, 11);  //Piny pro ovládání motoru

const int photoresistorPin = A0;  // Pin pro připojení fotorezistoru

void setup() {
  Serial.begin(9600);
}

void loop() {
  int lightValue = analogRead(photoresistorPin);

  //Rozsah hodnot pro osvětlení fotorezistoru - upravte podle vašich potřeb
  int threshold = 500;

  if (lightValue > threshold) {
    //Osvětleno - točení motoru o 120 stupňů vpravo
    myStepper.setSpeed(100);  //Nastavte rychlost motoru podle potřeby
    myStepper.step(stepsPerRevolution / 3);
  } else {
    //Neosvětleno - točení motoru o 120 stupňů doleva
    myStepper.setSpeed(100);  //Nastavte rychlost motoru podle potřeby
    myStepper.step(-stepsPerRevolution / 3);
  }

  //Vrácení motoru do původní pozice
  myStepper.setSpeed(100);  //Nastavte rychlost motoru podle potřeby
  myStepper.step(stepsPerRevolution / 3);

  delay(1000); // Čekání 1 sekundu mezi každým cyklem
}

 

Koponenty:

-Arduino Uno, Fotorezistor, Kabely, Krokový motor, driver pro krokový motor a led diody

Autor: domácí bastlíř

Další podobné články

Ovládání teploty pomocí relé a senzoru DS18B20

Tento projekt umožňuje měřit teplotu pomocí senzoru DS18B20, zobrazit ji na I2C LCD displeji, a ovládat relé podle teplotních limitů. Relé bude aktivní, když je teplota mezi 0 a 22 stupni Celsia. Projekt může sloužit k ovládání topení, ventilace nebo jiného zařízení podle okolní teploty.