Paso 4: Parte 3: diseño programación y circuito
#include < LiquidCrystal.h >
LiquidCrystal lcd (12, 11, 10, 5, 4, 3, 2); LCD en las patillas 12, 11, 10, 5, 4, 3, 2.
int StartPin = 9; entrada del interruptor
int motor1Pin = 7; Pierna del puente en H 1 (pin 2, 1A)
int motor2Pin = 6; Puente H pata 2 (pin 7, 2A)
int enablePin = 8; Puente H activar pin
int DirPin = 13; Seleccione la dirección del motor
int DirSwCounter = 0;
int LastDirState = 15;
int Dir = 14;
int cansCrushed; Número inicial de latas machacadas a 0
void setup()
{
INICIALIZAR
pinMode (StartPin, entrada);
pinMode (DirPin, entrada);
pinMode (motor1Pin, salida);
pinMode (motor2Pin, salida);
pinMode (enablePin, salida);
digitalWrite (enablePin, bajo);
LCD.Begin (16, 2);
LCD.Print ("puede trituradora MKII");
Delay(3000);
LCD.Clear();
lcd.setCursor (0, 0);
LCD.Print("CRUSHED:");
lcd.setCursor (10, 0);
LCD.Print((int)cansCrushed);
lcd.setCursor (0, 1);
LCD.Print("Weight:");
lcd.setCursor (9, 1);
LCD.Print((int)cansCrushed*.034375);
pinMode (StartPin, entrada);
pinMode (DirPin, entrada);
pinMode (motor1Pin, salida);
pinMode (motor2Pin, salida);
pinMode (enablePin, salida);
digitalWrite (enablePin, bajo);
cansCrushed = 0;
}
void loop()
{
LEER PINS
int DirState = digitalRead(DirPin);
Si (LastDirState == baja & & DirState == HIGH)
{
DirSwCounter ++;
}
LastDirState = DirState;
PROCESO
Si (DirSwCounter % 2 == 0)
{
digitalWrite (Dir, LOW);
cansCrushed ++;
} else {}
digitalWrite (Dir, alto);
}
Si (digitalRead(StartPin) == alto & & digitalRead(Dir) == LOW)
{
digitalWrite (enablePin, HIGH);
digitalWrite (motor1Pin, HIGH);
digitalWrite (motor2Pin, bajo);
}
else if (digitalRead(StartPin) == alto & & digitalRead(Dir) == HIGH)
{
digitalWrite (enablePin, HIGH);
digitalWrite (motor1Pin, bajo);
digitalWrite (motor2Pin, HIGH);
} else {}
digitalWrite (enablePin, bajo);
}
}
A continuación se muestra el diagrama de cableado de la máquina.
Para este diseño que he utilizado Fritzing, es bastante impresionante.
http://www.Fritzing.org
Construir el circuito de este diseño, pero no agregue los interruptores todavía.