Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Raspberry Pi Pico
120 min
Share

كيفية صنع بوابة تفتح بشكل أوتوماتيكي لجراج السيارات باستخدام لوحة راسبيرى باى بيكو

مع تطور التكنولوجيا، أصبحت الأنظمة الذكية جزءًا لا يتجزأ من حياتنا اليومية. من بين هذه الأنظمة، البوابات الأوتوماتيكية التي تُستخدم في جراجات السيارات لتوفير الراحة والأمان. في هذا المشروع، سنوضح كيفية بناء بوابة جراج تفتح وتغلق تلقائيًا عند مرور سيارة أمامها باستخدام لوحة راسبيرى باى بيكو 2W.

Project Video

Overview

Getting the Items

Raspberry Pi Pico 2 wireless
Get Item
2×16 LCD with I2C Module
Get Item
Ultrasonic Sensor (HC-SR04)
Get Item
SG90 Servo -Positional Rotation
Get Item
Full-size Breadboard
Get Item
Jumper Wires - Male to Male (40 Pack)
Get Item
Jumper Wires – Male to Female (40 Pack)
Get Item

Steps

Wiring it Up

‍قم بتوصيل الأسلاك بين لوحة راسبيرى باى بيكو 2W وحساس الموجات فوق الصوتية والشاشة الكريستالية كما فى الصورة التالية:

التوصيلات من لوحة راسبيرى باى بيكو 2W :

• منفذ ال VBUS بلوحة راسبيرى باى بيكو  2W← المنافذ الموجبة بلوحة التجارب

• منفذ الGND بلوحة راسبيرى باى بيكو W2 ←  المنافذ السالبة بلوحة التجارب

ثانيا: التوصيلات من الشاشة الكريستالية

منفذ الVCC للشاشة الكريستالية ← المنافذ الموجبة بلوحة التجارب

منفذ الGND للشاشة الكريستالية ← المنافذ السالبة بلوحة التجارب

منفذ SDA للشاشة الكريستالية ← منفذ رقم 0 فى لوحة راسبيرى باى بيكو 2W

منفذ SCL للشاشة الكريستالية ← منفذ رقم 1 فى لوحة راسبيرى باى بيكو 2W

ثالثا: التوصيلات من حساس الموجات فوق الصوتية

منفذ ال VCC للحساس ← المنافذ الموجبة بلوحة التجارب

منفذ ال GND للحساس ← المنافذ السالبة بلوحة التجارب

منفذ الـ TRIG للحساس ← منفذ رقم 28 في لوحة راسبيرى باى بيكو 2W

منفذ الـ Echo للحساس ← منفذ رقم 27 في بلوحة راسبيرى باى بيكو 2W

رابعا: التوصيلات من محرك السيرفو

المنفذ الموجب لمحرك السيرفو ← المنافذ الموجبة بلوحة التجارب

المنفذ السالب لمحرك السيرفو ← المنافذ السالبة بلوحة التجارب

منفذ الإشارة لمحرك السيرفو ← منفذ رقم 16 في لوحة راسبيرى باى بيكو 2W

Coding

وظيفة الكود البرمجي هي فتح بوابة جراج تلقائيًا باستخدام محرك سيرفو عند مرور سيارة أمام البوابة وعرض حالة البوابة سواء كانت مفتوحة أم مغلقة على شاشة كريستالية.

'''

Voltaat Learn (http://learn.voltaat.com)

Link to the full tutorial:

Tutorial: automatic_opening_gate_for_a_car_garage.

This code opens the garage gate automatically using

a servo motor when a car passes in front of the garage

and displays whether the gate is open or not on the LCD screen..

Note: You can use this sketch with any Raspberry Pi Pico.

'''

import machine

from machine import Pin, I2C

import utime

from servo import Servo

from lcd_api import LcdApi

from pico_i2c_lcd import I2cLcd

# Initialize the LCD screen

I2C_ADDR = 0x27

I2C_NUM_ROWS = 2

I2C_NUM_COLS = 16

i2c = I2C(0, sda=Pin(0), scl=Pin(1), freq=400000)

lcd = I2cLcd(i2c, I2C_ADDR, I2C_NUM_ROWS, I2C_NUM_COLS)

# Initialize the ultrasonic sensor

trig = Pin(28, Pin.OUT)

echo = Pin(27, Pin.IN)

# Initialize the servo motor using the Servo library

my_servo = Servo(pin_id=16)   # Use GP16 pin for the servo motor

# Function to calculate the distance

def get_distance():

   trig.low()

   utime.sleep_us(2)

   trig.high()

   utime.sleep_us(10)

   trig.low()

   start = 0

   end = 0

   while echo.value() == 0:

       start = utime.ticks_us()

   while echo.value() == 1:

       end = utime.ticks_us()

   duration = utime.ticks_diff(end, start)

   distance = (duration * 0.0343) / 2  # cm

   return distance

# Main function

def main():

   lcd.clear()

   lcd.putstr("  System Ready")

   my_servo.write(90)   # Close the gate initially

   utime.sleep(2)

   lcd.clear()

   while True:

       dist = get_distance()

       lcd.move_to(0, 0)

       

       if dist <= 25:  # If an object (e.g., a car) is detected nearby

           lcd.putstr(" Gate is opened")

           my_servo.write(180)   # Open the gate

           utime.sleep(3)

       else:

           lcd.putstr(" Gate is closed")

           my_servo.write(90)    # Close the gate

       utime.sleep(0.5)

       lcd.clear()

# Run the program

main()

Testing it Out

بعد رفع الكود البرمجى سوف تجد انه عند مرور سيارة امام الجراج, يتم فتح بوابة الجراج ويتم طباعة جملة "Gate is opened", بينما اذا لم تكن هناك سيارة يتم طباعة جملة " Gate is closed"  ولن يتم تحريك محرك السيرفو.

Resources

No items found.