#include<LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
#define LM1 2
#define LM2 3
#define RM1 4
#define RM2 5
#define FL 6
#define RL 7
#define BL 8
#define LL 9
#define BUZZER 13
int i;
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(5, 0);
lcd.print("rowaa");
lcd.setCursor(5, 1);
lcd.print("shaer");
for (i = 2; i < 10; i++)
pinMode(i, OUTPUT);
pinMode(BUZZER, OUTPUT);
delay(2000);
lcd.clear();
}
void loop()
{
RobotGo();
delay(2000);
Robotleft();
delay(500);
RobotGo() ;
delay(2000);
Robotleft();
delay(500);
RobotGo() ;
delay(2000);
RobotRhigt();
delay(500);
RobotGo() ;
delay(2000);
RobotRhigt();
delay(500);
RobotGo() ;
delay(2000);
RobotStop() ;
delay(500);
RobotBack() ;
delay(1500);
RobotStop() ;
delay(500);
}
void RobotGo()
{
digitalWrite(LM1, 0);
digitalWrite(LM2, 1);
digitalWrite(RM1, 0);
digitalWrite(RM2, 1);
digitalWrite(FL, 1);
digitalWrite(RL, 0);
digitalWrite(BL, 0);
digitalWrite(LL, 0);
lcd.clear();
lcd.setCursor(5, 0);
lcd.print("Robot");
lcd.setCursor(6, 1);
lcd.print("Go");
}
void RobotBack()
{
digitalWrite(LM1, 1);
digitalWrite(LM2, 0);
digitalWrite(RM1, 1);
digitalWrite(RM2, 0);
digitalWrite(FL, 0);
digitalWrite(RL, 0);
digitalWrite(BL, 1);
digitalWrite(LL, 0);
lcd.clear();
lcd.setCursor(5, 0);
lcd.print("Robot");
lcd.setCursor(5, 1);
lcd.print("Back");
for (int i = 0 ; i < 10 ; i++)
{
digitalWrite(BUZZER, 1);
delay(100);
digitalWrite(BUZZER, 0);
delay(100);
}
}
void RobotStop()
{
digitalWrite(LM1, 0);
digitalWrite(LM2, 0);
digitalWrite(RM1, 0);
digitalWrite(RM2, 0);
digitalWrite(FL, 0);
digitalWrite(RL, 0);
digitalWrite(BL, 1);
digitalWrite(LL, 0);
lcd.clear();
lcd.setCursor(5, 0);
lcd.print("Robot");
lcd.setCursor(5, 1);
lcd.print("stop");
}
void RobotRhigt()
{
digitalWrite(LM1, 0);
digitalWrite(LM2, 1);
digitalWrite(RM1, 0);
digitalWrite(RM2, 0);
digitalWrite(FL, 0);
digitalWrite(RL, 1);
digitalWrite(BL, 0);
digitalWrite(LL, 0);
lcd.clear();
lcd.setCursor(5, 0);
lcd.print("Robot");
lcd.setCursor(5, 1);
lcd.print("Rhigt");
}
void Robotleft()
{
digitalWrite(LM1, 0);
digitalWrite(LM2, 0);
digitalWrite(RM1, 0);
digitalWrite(RM2, 1);
digitalWrite(FL, 0);
digitalWrite(RL, 0);
digitalWrite(BL, 0);
digitalWrite(LL, 1);
lcd.clear();
lcd.setCursor(5, 0);
lcd.print("Robot");
lcd.setCursor(5, 1);
lcd.print("left");
}