Icon Concept (For Designer)
Ek Toll Booth (choti cabin) bani ho. Uske andar ek guard ka haath hai jo Green Button daba raha hai aur bahar Barrier (danda) upar uth raha hai. Ek gaari wait kar rahi hai.
What It Does (Yeh Kya Karta Hai?)
Yeh project “Toggle Logic” sikhata hai.
- Pehli baar button dabane par: Barrier Khulega (Open) aur Green Light jalegi.
- Dusri baar button dabane par: Barrier Band hoga (Close) aur Red Light jalegi.
Components Required
- Microcontroller: Arduino Uno
- Servo Motor (Barrier)
- 1 Push Button (Guard ke liye)
- 1 Red LED (Ruko)
- 1 Green LED (Chalo)
- Jumper Wires & Breadboard
Wiring (Taarein Jorna)
1. Servo Motor:
- Brown/Black: → GND
- Red: → 5V
- Orange/Yellow: → Pin 6
2. Button:
- Ek taang → GND
- Doosri taang → Pin 2
3. LEDs:
- Red LED (+): → Pin 12
- Green LED (+): → Pin 11
- Sabki Choti Taangein (-): GND line mein.
Code
// Project 14: Manual Toll Plaza
// PlzPapa Robotic Kit
#include <Servo.h>
Servo tollGate;
int buttonPin = 2;
int redLed = 12;
int greenLed = 11;
int servoPin = 6;
// State variable (Yaad rakhne ke liye ke abhi kya haal hai)
bool isOpen = false;
void setup() {
tollGate.attach(servoPin);
pinMode(buttonPin, INPUT_PULLUP); // Internal Resistor ON
pinMode(redLed, OUTPUT);
pinMode(greenLed, OUTPUT);
// Shuru mein Darwaza Band rakho
tollGate.write(0); // 0 Degree (Closed)
digitalWrite(redLed, HIGH); // Red Light ON
digitalWrite(greenLed, LOW); // Green Light OFF
Serial.begin(9600);
}
void loop() {
// Agar Button Dabaya gaya (LOW)
if (digitalRead(buttonPin) == LOW) {
// Check karo: Agar abhi BAND hai, toh KHOL do
if (isOpen == false) {
Serial.println("Opening Gate...");
tollGate.write(90); // Open (90 degree)
digitalWrite(redLed, LOW); // Red OFF
digitalWrite(greenLed, HIGH); // Green ON
isOpen = true; // Yaad karlo ke khul gaya
}
// Agar abhi KHULA hai, toh BAND kar do
else {
Serial.println("Closing Gate...");
tollGate.write(0); // Close (0 degree)
digitalWrite(greenLed, LOW); // Green OFF
digitalWrite(redLed, HIGH); // Red ON
isOpen = false; // Yaad karlo ke band ho gaya
}
// 500ms ka delay taake ek baar dabane par system confuse na ho
delay(500);
}
}