آموزش آردوینوپروژه های آردوینو

پروژه چراغ راهنمایی سه راهه با آردوینو

سلام. پروژه چراغ راهنمایی سه راهه با آردوینو (آموزش کامل با Arduino) را آماده کردیم.

پروژه چراغ راهنمایی سه ترمینال با آردوینو

همه ما درباره Arduino میدانیم که یکی از محبوب ترین برد های متن باز میباشد که برای انجام پروژه ها DIY بسیار مناسب است. ما در این پروژه آردوینو یک سیستم چراغ راهنمایی میسازیم که میتواند تا سه مسیر را پشتیبانی کند. این یک پروژه ساده اما جذاب است که برای درک کار چراغ راهنمایی های موجود در سطح شهر و همچنین آشنایی بیشتر با کد های Arduino مناسب است. این پروژه همچنین مدار ساده ای دارد. فیلم عملکرد پروژه در انتهای صفحه قرار داده شده است.

در اینجا ما چراغ های راهنمایی را برای سه جاده نمایش میدهیم کد در هر سه طرف یک دنباله خاص را اجرا میکند. مثلا در هر زمان دو چراغ قرمز و در یک طرف چراغ سبز وجود خواهد داشت. همچنین در فاصله بین انتقال قرمز به سبز چراغ زرد نمایش داده میشود. مثلا چراغ قرمز به مدت 5 ثانیه میدرخشد سپس نور زرد به مدت 1 ثانیه میدرخشد و سر انجام چراغ سبز روشن میشود.

عملکرد مدار به خوبی در فیلم زیر نشان داده شده است. ابتدا در یک مسیر لامپ سبز روشن میشود و در دو مسیر دیگر دو لامپ قرمز روشن میشود و این قسمت 5 ثانیه طول میکشد. سپس چراغ زرد در سمت راست برای 1 ثانیه روشن میشود و به دنبال آن چراغ سبز روشن میشود و در دو طرف دیگر چراغ قرمز فعال میشود و این قسمت نیز 5 ثانیه طول میکشد. برای اینکه این عملکرد به طور مداوم تکرار شود کد آن را در void loop () قرار دادیم.

شماتیک مدار چراغ راهنمایی

نمودار مدار پروژه کنترل ترافیک نور آردوینو در زیر آورده شده است :

شماتیک مدار چراغ راهنمایی

همانطور که میبینید مدار پروژه بسیار ساده است و به راحتی میتوان آن را روی یک برد بورد راه اندازی کرد.

چراغ های ال ای دی را به ترتیب قرمز ، سبز و زرد قرار دهید. ترمینال منفی LED ها را به طور مشترک قرار دهید و مقاومت 220 اهم را به صورت سری متصل کنید. سیم ها را مانند تصویر متصل کنید. انتهای دیگر سیم ها را به طور متوالی به پین 4 تا 10 آردوینو Uno متصل کنید.

قطعات مورد نیاز

  1. برد آردوینو Uno
  2. چراغ LED قرمز – سه عدد
  3. چراغ LED زرد – سه عدد
  4. چراغ LED سبز – سه عدد
  5. مقاومت 220 اهم  – سه عدد
قطعات مورد نیاز را از فروشگاه قطعات آیرنکس تهیه کنید.

توضیحات کد پروژه

کد پروژه کنترل کننده چراغ ترافیک با Arduino بسیار ساده است و به راحتی درک میشود. در کد ابتدا پین های 3-10 را به عنوان خروجی در setup void () برای 9 چراغ ال ای دی تعریف میکنیم (سه عدد در هر مسیر).

void setup() {
  pinMode(2,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(4,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
  pinMode(10,OUTPUT);
}

سپس در تابع void loop () کد را مینویسیم که 9 عدد لامپ ما چطور و چه مدت زمانی روشن بمانند.

void loop() 
{

  digitalWrite(2,1);
  digitalWrite(7,1);
  digitalWrite(10,1);
  digitalWrite(4,0);
  digitalWrite(3,0);  
  digitalWrite(6,0);
  digitalWrite(8,0);
  digitalWrite(9,0);
  digitalWrite(5,0);
  delay(5000);
  ..... ....
  ..... ....

موارد موجود در فایل : سورس کامل ، شماتیک کامل

3.7 (8 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

10 نظر

  1. سلام .ممنون از سایت خوبتون . سوالی که داشتم این بود که در شماتیک چراغ راهنمایی ۳ راهه ، اون سیم ها یا خطوط سیاه رنگ داخل برد بورد چیست؟

    1. سلام عزیز
      سیم های مربوط به GND هست

  2. بیلینک اول ميشد ولی الان همش میزنه مشگل در آپلود کردن

    1. اگر مشکل آپلود در برد هست در انجمن مطرح کنید از بحث کد این پست خارج هست

  3. Arduino: 1.8.20 Hourly Build 2021/12/20 07:33 (Windows 10), Board: “Arduino Nano, ATmega328P”

    Sketch uses 1180 bytes (3%) of program storage space. Maximum is 30720 bytes.

    Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.

    An error occurred while uploading the sketch

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.
    سلام بفرمایید همینه میاره

    1. کد ساده blink رو از منوی examples آپلود کنید ببینید مشکلی داره یا نه

  4. سلام
    ممنون بابت مطالبتون
    من وقتی برنامه رو کامپایل میکنم ارور میده
    Arduino: 1.8.20 Hourly Build 2021/12/20 07:33 (Windows 10), Board: “Arduino Nano, ATmega328P”

    Sketch uses 1180 bytes (3%) of program storage space. Maximum is 30720 bytes.

    Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.

    An error occurred while uploading the sketch

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

    1. سلام عزیز
      متن کامل ارور رو بفرستید

  5. سلام
    ممنون بابت مطالب خوبتون
    میخواستم بدونم این پروژه رو میشه با آردوینو نانو را انداخت

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *