Codigos

En esta sección podrás descargar los códigos usados en el proyecto, este es de uso abierto.








--------------------------------------------------------------------------------------------------------------------------

//    X1  X2X3
#include <Servo.h>
#include "HX711.h"

#define DOUT  A1
#define CLK  A0

int estado=0;
float peso;

Servo miservo1;
HX711 balanza(DOUT, CLK);

int poder=53;
int led11 = 22;
int led12 = 23;
int led13 = 24;
int f1=25;

int led21 = 26;
int led22 = 27;
int led23 = 28;
int f2=29;

int led31 = 30;
int led32 = 31;
int led33 = 32;
int f3=33;

int led41 = 34;
int led42 = 35;
int led43 = 36;
int f4=37;


int boton=10;
int pos=0;

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  balanza.set_scale(439430.25); // Establecemos la escala
  balanza.tare(20);  //El peso actual es considerado Tara.

  miservo1.attach(8,500,2650);

  pinMode(f1, OUTPUT);
  pinMode(f2, OUTPUT);
  pinMode(f3, OUTPUT);
  pinMode(f4, OUTPUT);
  pinMode(poder, OUTPUT);
  pinMode(boton, INPUT);

  pinMode(led11, OUTPUT);
  pinMode(led12, OUTPUT);
  pinMode(led13, OUTPUT);

  pinMode(led21, OUTPUT);
  pinMode(led22, OUTPUT);
  pinMode(led23, OUTPUT);

  pinMode(led31, OUTPUT);
  pinMode(led32, OUTPUT);
  pinMode(led33, OUTPUT);

  pinMode(led31, OUTPUT);
  pinMode(led32, OUTPUT);
  pinMode(led33, OUTPUT);

  pinMode(led41, OUTPUT);
  pinMode(led42, OUTPUT);
  pinMode(led43, OUTPUT);

  digitalWrite(f1, HIGH);
  digitalWrite(f2, HIGH);
  digitalWrite(f3, HIGH);
  digitalWrite(f4, HIGH);
  digitalWrite(poder, HIGH);

}

void loop() {
  // put your main code here, to run repeatedly:
 //Serial.println(balanza.get_units(20),3);
  if(digitalRead(boton) == LOW){
    peso=balanza.get_units(10),3;
    if(peso<0.200){
       //Serial.println("Rojo");
      //ROJO
      digitalWrite(led11, LOW);
      digitalWrite(led21, LOW);
      digitalWrite(led31, LOW);
      digitalWrite(led41, LOW);

      digitalWrite(led12, HIGH);
      digitalWrite(led22, HIGH);
      digitalWrite(led32, HIGH);
      digitalWrite(led42, HIGH);

      digitalWrite(led13, HIGH);
      digitalWrite(led23, HIGH);
      digitalWrite(led33, HIGH);
      digitalWrite(led43, HIGH);  
    }

    if((peso>=0.200)and(peso<0.400)){
     //Serial.println("Naranja");
      //NARANJA
      digitalWrite(led11, LOW);
      digitalWrite(led21, LOW);
      digitalWrite(led31, LOW);
      digitalWrite(led41, LOW);

      digitalWrite(led12, LOW);
      digitalWrite(led22, LOW);
      digitalWrite(led32, LOW);
      digitalWrite(led42, LOW);

      digitalWrite(led13, HIGH);
      digitalWrite(led23, HIGH);
      digitalWrite(led33, HIGH);
      digitalWrite(led43, HIGH);

   
   
    }

    if((peso>=0.400)and(peso<0.600)){
     //Serial.println("Azul");
      //AZUL
      digitalWrite(led11, HIGH);
      digitalWrite(led21, HIGH);
      digitalWrite(led31, HIGH);
      digitalWrite(led41, HIGH);

      digitalWrite(led13, LOW);
      digitalWrite(led23, LOW);
      digitalWrite(led33, LOW);
      digitalWrite(led43, LOW);

      digitalWrite(led12, HIGH);
      digitalWrite(led22, HIGH);
      digitalWrite(led32, HIGH);
      digitalWrite(led42, HIGH);

   
   
    }

    if((peso>=0.600)and(peso<0.800)){

      //CELESTE
   //Serial.println("Celeste");
      digitalWrite(led11, HIGH);
      digitalWrite(led21, HIGH);
      digitalWrite(led31, HIGH);
      digitalWrite(led41, HIGH);

      digitalWrite(led12, LOW);
      digitalWrite(led22, LOW);
      digitalWrite(led32, LOW);
      digitalWrite(led42, LOW);

      digitalWrite(led13, LOW);
      digitalWrite(led23, LOW);
      digitalWrite(led33, LOW);
      digitalWrite(led43, LOW);  
   
    }

    if(peso>=0.800){
   //Serial.println("Verde");
      //VERDE
      digitalWrite(led11, HIGH);
      digitalWrite(led21, HIGH);
      digitalWrite(led31, HIGH);
      digitalWrite(led41, HIGH);

      digitalWrite(led13, HIGH);
      digitalWrite(led23, HIGH);
      digitalWrite(led33, HIGH);
      digitalWrite(led43, HIGH);

      digitalWrite(led12, LOW);
      digitalWrite(led22, LOW);
      digitalWrite(led32, LOW);
      digitalWrite(led42, LOW);

   
   
    }

 
  }
else {
    //Serial.println("Servo- Boton");
    for(pos=0; pos<=180; pos++){
      miservo1.write(pos);
    }
    delay(2000);
    for(pos=180; pos>=0; pos--){
      miservo1.write(pos);
    }
  }



if(Serial.available()>0){
 estado = Serial.read();
  //Serial.println("Servo- App");
 }

 if (estado =='1'){
    for(pos=0; pos<=180; pos++){
      miservo1.write(pos);
    }
    delay(2000);
    for(pos=180; pos>=0; pos--){
      miservo1.write(pos);
    }
   estado='0';
  }

  if (estado =='2'){
    for(pos=0; pos<=180; pos++){
      miservo1.write(pos);
    }
    delay(4000);
    for(pos=180; pos>=0; pos--){
      miservo1.write(pos);
    }
    estado='0';
  }

  if (estado =='3'){
    for(pos=0; pos<=180; pos++){
      miservo1.write(pos);
    }
    delay(6000);
    for(pos=180; pos>=0; pos--){
      miservo1.write(pos);
    }
    estado='0';
  }


}

----------------------------------------------------------------------------------------------------------------------

Comentarios

Entradas populares de este blog

Documentacion