Automatic College Bell Project Using Arduino| Arduino mini project

Hey guys, welcome back to Techatronic. You all have seen the electric bells that are used in schools and colleges to maintain the schedule or timetable. But these bells are manual and rings when someone presses the switch. In this article, we are going to make an automatic college bell project using Arduino . This could be a good Arduino mini-project. A major problem with these manual bells is that there should be a person present to press the switch according to the time. So sometimes it produces delays and the timetable disturbs. We use an Arduino UNO microcontroller and a 16×2 LCD for making this project. You can set it according to the timetable so it automatically rings. You can also check the more amazing project on Arduino made by us.

Arduino mini-project working Explanation

This project helps to manage the schedule and works automatically according to it. You have to set the instructions at once and then it will work accordingly. Press the first push button to set the number of periods. You can see the entered data on the LCD screen. You can set as many periods as you want. Use the last push button to confirm the periods then set the time for each period in this cool Arduino mini-projects. You can increment or decrement the time with the help of the other two push buttons. The time represent in LCD is in seconds. Then confirm the time and a timer will start on the LCD. When the time is over the buzzer starts ringing. Check here how a push button works with Arduino.

Arduino mini project

Components Required

  • Arduino UNO
  • 16×2 LCD
  • 10K-ohm potentiometer
  • Buzzer
  • Three pushbuttons
  • Jumper wires
  • Breadboard
  • USB cable for uploading the code

Arduino Mini project circuit diagram.

automatic college bell project using arduino

automatic college bell project using arduino

You have to make the connections according to the circuit diagram given above. Place all the three push buttons on the breadboard in such a way that when we press them they complete the path otherwise breaks the circuit. Connect the one side of the first push button to the GND pin of Arduino and the other side to the digital-6 pin of Arduino. Join the one side of the second push button to the GND pin of Arduino and the other side to Arduino’s digital-5 pin. Attach one side of the third push button to the GND pin of Arduino and the other side to the digital-4 pin of Arduino.This Arduino mini project is easy to make.  Now connect the negative wire of the buzzer with the GND pin of the Arduino and the positive wire of the buzzer to the digital-3 pin of the Arduino. Join the 5-volts pin of the Arduino to the positive rail on the breadboard and the GND pin of Arduino to the negative rail of the breadboard. Connect the LCD module with the Arduino digital pins and attach the 10K-ohm potentiometer to it as shown above. You can view how to connect a 16×2 LCD with Arduino and make the connections according to it.

Code for the Project

NOTE: Please upload the given code to the Arduino. You have to install <LiquidCrystal.h> library before uploading the code. You can check here how to install a zip library to the Arduino IDE application.

 // TECHATRONIC.COM  
 #include<LiquidCrystal.h>  
 LiquidCrystal lcd(12, 11, 10, 9, 8, 7);  
 int i =0,j=0,k=0,a[12],h=0;  
 int up = 6,down = 5,set = 4;   
 void setup(){   
  lcd.begin(16,2);  
  pinMode(up,INPUT);  
  pinMode(down,INPUT);  
  pinMode(set,INPUT);  
  pinMode(3,OUTPUT);  
  digitalWrite(up,HIGH);  
  digitalWrite(down, HIGH);  
  digitalWrite(set,HIGH);  
  }  
 void loop()  
 {  
  lcd.setCursor(0,0);  
  lcd.print("set no.of periods:");  
  while(1){  
  lcd.setCursor(0,1);  
  lcd.print(i);  
   if( digitalRead(up) == LOW){  
    delay(300);  
    i++;  
   }  
    if( digitalRead(down) == LOW){  
    delay(300);  
    i--;  
   }  
   if(digitalRead(set) == LOW){  
    delay(300);  
    break;  
   }  
  }  
   lcd.clear();  
   lcd.setCursor(1,0);  
   lcd.print("set time for ");  
   lcd.setCursor(0,1);  
   lcd.print("each period ");  delay(1500);  
   lcd.clear();  
   for(int j =1; j < i+1;j++)  
  {  
   lcd.setCursor(1,0);  
   lcd.print("period");  
   lcd.setCursor(10,0);  
   lcd.print(j);  
  while(1)  
  { lcd.setCursor(0,1);  
    lcd.print(k);  
   if( digitalRead(up) == LOW)  
   {delay(300);  
    k=k+10;  
   }  
   if( digitalRead(down) == LOW){  
    delay(300);  
    k= k-10;  
    if(k < 0)  
    {  
     k= -1*k;  
    }  
   }  
   if ( digitalRead(set) == LOW)  
   {delay(300);  
    break;  
   }  
  }  
  a[j] = k;  
  k = 0;  
  }  
  lcd.clear();  
  for( j =1 ; j<i+1 ;j++){  
   lcd.setCursor(1,0);  
   lcd.print("Period:");  
   lcd.setCursor(10,0);  
   lcd.print(j);  
   for(h =0;h<a[j]+1;h++){  
    if( h == a[j])  
   {  
    tone(3, 200);  
   delay(3000);  
   noTone(3);   
   }  
   lcd.setCursor(0,1);  
   lcd.print(h);  
   delay(1000);  
   }  
  lcd.clear();  
 }  
 lcd.clear();  
 i=0;  
 j=0;  
 k=0;  
  }  

We hope that you understand the project completely. If you are facing any errors while making this please let us know in the comments section below. Also, do check out more tutorials on Arduino and Raspberry Pi.

HAPPY LEARNING!