Untitled

 avatar
unknown
plain_text
3 years ago
3.9 kB
3
Indexable
/*

*/
// Arduino_EMBRYO_2 - Version: Latest 


// Arduino_EMBRYO_2 - Version: La

/*

*/
#include <Stepper.h>
#include <LiquidCrystal_I2C.h>
#include <Wire.h>



int Broj_koraka_izmedju_dvije_case;
int Broj_koraka_za_puni_krug=200;
int broj_ponavljanja=6;

const int RELEJ=3;
const int Senzor=2;

const int dugme1=4;
const int dugme2=5;
const int dugme3=6;

int brojac=0;

Stepper steppermotor(Broj_koraka_za_puni_krug,8,9,10,11);

LiquidCrystal_I2C lcd(0x27, 16,2); 

void ispisivanje(String poruka, String poruka2) {
  lcd.clear ();
    lcd.setCursor (0,0);
    lcd.print (poruka);
    lcd.setCursor (0,1);
    lcd.print (poruka2);
    delay (2500); //ispravile sa 1500
}


void setup() {
  
  Broj_koraka_izmedju_dvije_case=148;
  steppermotor.setSpeed(30);
  
  digitalWrite(RELEJ, HIGH);
  pinMode(RELEJ, OUTPUT);
  pinMode(Senzor,INPUT);
  
  
  pinMode(dugme1, INPUT); 
  pinMode(dugme2, INPUT);
  pinMode(dugme3, INPUT);  
  
  lcd.init();
  lcd.backlight(); 
  lcd.begin (16,2);
  lcd.clear();
  
 // digitalWrite(RELEJ, HIGH);
}

void loop() {
  while (broj_ponavljanja >0) {
    brojac=0;
    //digitalWrite(RELEJ, HIGH);
    String poruka, poruka2;
    steppermotor.step(Broj_koraka_izmedju_dvije_case); //prvo pomjeranje bez punjenja
    delay(2000);
    
    if(digitalRead(Senzor)==LOW) { //uslov da li ima casa
    poruka ="Izaberi zeljenu";  
    poruka2 = "kolicinu";
    ispisivanje (poruka, poruka2);
    brojac=2;
    
      if(digitalRead(dugme1) == LOW){     // dugme1 za 50ml
          brojac=1;
          poruka = "Odabrano je:";
          poruka2= "40 ml";
          ispisivanje (poruka, poruka2);
          digitalWrite(LED_BUILTIN,HIGH); //pali sijalicu na arduinu
          digitalWrite(RELEJ, LOW);            //pali pumpu za vodu
          delay(3000);                         //punjenje case 3 sekunde
          digitalWrite(LED_BUILTIN,LOW);      //gasi sijalicu na arduinu
          digitalWrite(RELEJ, HIGH);          //gasi pumpu za vodu
          delay(2000);                        //okrene platformu na sljedece polje
          //digitalWrite(dugme1, LOW);        //vracamo na pocetno stanje 
          }
        
      if(digitalRead(dugme2) == LOW){   
          brojac=1;
          poruka = "Odabrano je:";
          poruka2= "80 ml";
          ispisivanje (poruka, poruka2);
          digitalWrite(LED_BUILTIN,HIGH); //pali sijalicu na arduinu
          digitalWrite(RELEJ, LOW);            //pali pumpu za vodu
          delay(5950);                         //punjenje case 3 sekunde
          digitalWrite(LED_BUILTIN,LOW);      //gasi sijalicu na arduinu
          digitalWrite(RELEJ, HIGH);          //gasi pumpu za vodu
          delay(2000);
          //digitalWrite(dugme2, LOW);
          }
        
       if(digitalRead(dugme3) == LOW){
          brojac=1;
          poruka = "Odabrano je:";
          poruka2= "120 ml";
          ispisivanje (poruka, poruka2);
          digitalWrite(LED_BUILTIN,HIGH); //pali sijalicu na arduinu
          digitalWrite(RELEJ, LOW);            //pali pumpu za vodu
          delay(8888);                         //punjenje case 3 sekunde
          digitalWrite(LED_BUILTIN,LOW);      //gasi sijalicu na arduinu
          digitalWrite(RELEJ, HIGH);          //gasi pumpu za vodu
          delay(2000);                
          //digitalWrite(dugme3, LOW);
          }
        if (brojac==2) {
          poruka = "Nije odabrana";
          poruka2 = "kolicina";
          ispisivanje (poruka, poruka2);
        }
        
        
    }
    else {  //ako nema case poruka da je prazno
      poruka = "Prazno mjesto";
      poruka2= "na platformi";
      ispisivanje (poruka, poruka2);
    }
    
    broj_ponavljanja--;
    
    
    }
    lcd.clear ();
    if (broj_ponavljanja==0) {
      lcd.setCursor (0,0);
      lcd.print("Moze li 10? :)");
      delay(2000);
      lcd.clear();
    }
}


Editor is loading...