Está en la página 1de 3

GRUPO 6

https://www.tinkercad.com/things/7H6WX5Jxrkk-incredible-jarv-sango/editel?
sharecode=9Fd8iJ1hkw1ejFswDszkGBJxK2vbFRiJD2YLoYlIlsY

//Melisa meza montes U19214803


//David Edwin Hilares Quispe 1400432
//Anderson smith collazos mogollon - u18307241
//Juan Carlos Paico Nolasco U0616474
//Daniel Silva U20221135

#include <Keypad.h>
#include <Servo.h>
#include <LiquidCrystal.h>
#define COM_Length 7
int signalPin = 5;

char Data[COM_Length];
char COM1[COM_Length] = "159ABD";
char COM2[COM_Length] = "984*#C";
char COM3[COM_Length] = "0*0#44";
byte data_count = 0, master_count = 0;
bool Pass_is_good;
char Key;
const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] =
{
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {A0, A1, A2, A3};
byte colPins[COLS] = {A4, A5, 10, 9};
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

LiquidCrystal lcd(12,11,5,4,3,2);
Servo servoMotor;

void setup() {
servoMotor.attach(8);
servoMotor.write(0);
Serial.begin(9600);
lcd.begin(16,2);
}

void move_Servo(int G,int R){


int pos;
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Angulo:");
lcd.setCursor(9,0);
lcd.print(G);
lcd.print(" ");

for(pos = 0; pos <= G; pos ++){


servoMotor.write(pos);
delay(50);
}
delay(R*1000);
for(pos = G; pos >= 0; pos --){
servoMotor.write(pos);
delay(50);
}

void loop() {
lcd.setCursor(0,0);
lcd.print("Ingresa Digito:");
Key = keypad.getKey();

if (Key){
Data[data_count] = Key;
lcd.setCursor(data_count,1);
lcd.print(Data[data_count]);
data_count++;
}
if(data_count == COM_Length-1){
lcd.clear();
if(!strcmp(Data, COM1)){
lcd.print("Operacion OK ");
move_Servo(90,3);
}
if(!strcmp(Data, COM2)){
lcd.print("Operacion OK");
move_Servo(40,5);
}
if(!strcmp(Data, COM3)){
lcd.print("Operacion OK");
move_Servo(180,8);
}
else{
lcd.print("Digito Nulo");
delay(1000);
}
lcd.clear();
clearData();
}
}
void clearData(){
while(data_count !=0){
Data[data_count--] = 0;
}

También podría gustarte