🚨 مدار آژیر (Siren Circuit): آژیر دوتایی با ۵۵۵ و آژیر آردوینو

صدای آژیر را همه می‌شناسند: آمبولانسی که دو نت را پشت سر هم تکرار می‌کند، ماشین پلیسی که صدایش بالا و پایین می‌رود، دزدگیری که بی‌وقفه جیغ می‌کشد. مدار آژیر (Siren Circuit) یکی از جذاب‌ترین پروژه‌های الکترونیک است، چون نتیجه‌اش را فوراً می‌شنوی و در دل خودش چند ایده‌ی مهم دارد: نوسان‌ساز، کنترل فرکانس با ولتاژ و ترکیب دو مدار با هم. در این راهنما اول انواع صدای آژیر و بلندگوها را می‌شناسیم، بعد آژیر دوتایی و آژیر بالارونده را با دو آی‌سی ۵۵۵ می‌سازیم، یک آژیر بدون کد در شبیه‌ساز تینکرکد فارسی می‌بندیم و در آخر یک آژیر سه‌حالته با آردوینو و تابع tone() می‌نویسیم.

انواع صدای آژیر (Siren Sounds)

اسم فارسیEnglishصدا چطور استکجا شنیده‌ای
آژیر دوتاییTwo-Tone / Hi-Lo Sirenدو نت ثابت یکی‌درمیان، مثلاً حدود ۴۴۰ و ۵۸۷ هرتز (نت لا و ر)آمبولانس و آتش‌نشانی در خیلی از کشورها
آژیر بالاروندهWail Sirenصدا در چند ثانیه آرام بالا می‌رود و پایین می‌آیدماشین پلیس، آژیر هشدار شهری
آژیر سریعYelp Sirenهمان بالا و پایین، ولی چند بار در ثانیهماشین پلیس در تقاطع‌ها
بوق منقطعPulsed Beeperیک نت ثابت که قطع و وصل می‌شوددزدگیر، هشدار دنده‌عقب
بوق ممتدContinuous Toneیک نت ثابت و بی‌وقفهزنگ هشدار ساده

همه‌ی این‌ها از یک ایده ساخته می‌شوند: یک نوسان‌ساز صوتی (Audio Oscillator) که چند صد بار در ثانیه بلندگو را هل می‌دهد و می‌کشد، و یک چیز دیگر که فرکانس آن نوسان‌ساز را عوض می‌کند. فرق آژیرها فقط در همین «چیز دیگر» است.

بازر یا بلندگو؟ (Buzzer vs Speaker)

قطعهEnglishبا ولتاژ ثابتبرای آژیر
بازر اکتیوActive Buzzerخودش نوسان‌ساز دارد و یک صدای ثابت می‌دهدفقط بوق منقطع؛ صدایش بالا و پایین نمی‌رود
بازر پسیوPassive Buzzerفقط یک تق می‌زند؛ موج مربعی لازم داردعالی؛ هر فرکانسی بدهی همان را پخش می‌کند
پیزوPiezo Discمثل بازر پسیوخوب و کم‌مصرف؛ صدای تیزتر
بلندگوSpeaker (8Ω)مقاومتش خیلی کم است و جریان زیاد می‌کشدبلندترین صدا، ولی با ترانزیستور یا تقویت‌کننده

یک راه ساده برای تشخیص: بازر را مستقیم به یک باتری ۳ تا ۵ ولتی وصل کن. اگر بوق ممتد زد، اکتیو است؛ اگر فقط یک تق کرد، پسیو است. بازر اکتیو معمولاً پشتش بسته است و برچسب دارد، بازر پسیو پشتش برد مدار سبز پیدا است.

آژیر دوتایی با دو آی‌سی ۵۵۵ (Two-Tone 555 Siren)

این مدار کلاسیک از دو چشمک‌زن ۵۵۵ ساخته شده: یکی خیلی کند (حدود یک بار در ثانیه) و یکی خیلی تند (چند صد بار در ثانیه، یعنی صدا). خروجی ۵۵۵ کند، فرکانس ۵۵۵ تند را عوض می‌کند.

قطعه‌ها

#قطعهEnglishمقدارکار
۱دو آی‌سی ۵۵۵2 × 555 Timer ICNE555 (یا یک آی‌سی ۵۵۶ که دو ۵۵۵ در یک بسته است)IC1 کند، IC2 تند
۲مقاومت‌های IC1R1, R2۱۰ و ۶۸ کیلواهمزمان‌بندی کند
۳خازن IC1C1۱۰ میکروفارادحدود یک تعویض نت در ثانیه
۴مقاومت‌های IC2R3, R4۱ و ۱۰ کیلواهمزمان‌بندی صوتی
۵خازن IC2C2۱۰۰ نانوفاراد سرامیکی یا پلی‌استرحدود ۷۰۰ هرتز
۶مقاومت رابطR5 (Modulation Resistor)۱۰ کیلواهماز پایه‌ی ۳ IC1 به پایه‌ی ۵ IC2
۷بلندگو یا بازر پسیوSpeaker / Passive Buzzerبلندگوی ۸ اهم با خازن ۱۰۰ میکروفاراد و مقاومت حدود ۴۷ اهم سری، یا یک بازر پسیو مستقیمپخش صدا
۸باتری ۹ ولت9V Batteryیک عددتغذیه‌ی هر دو آی‌سی

چطور کار می‌کند؟

  1. هر دو آی‌سی مثل چشمک‌زن آستابل سیم‌کشی می‌شوند: R بین مثبت و پایه‌ی ۷، R دوم بین ۷ و ۶، پایه‌ی ۶ به ۲، خازن از ۲ به منفی، پایه‌ی ۴ و ۸ به مثبت و پایه‌ی ۱ به منفی.
  2. IC1 با ۱۰ کیلواهم، ۶۸ کیلواهم و ۱۰ میکروفاراد حدود یک بار در ثانیه بالا و پایین می‌رود: f1 = 1.44 / ((10k + 2×68k) × 10µF) ≈ 0.99 Hz.
  3. IC2 به تنهایی حدود ۶۸۶ هرتز صدا می‌سازد: f2 = 1.44 / ((1k + 2×10k) × 100nF) ≈ 686 Hz.
  4. نکته‌ی کلیدی پایه‌ی ۵ است. این پایه مستقیم به ولتاژ مرجع دوسوم داخل آی‌سی وصل است. اگر ولتاژش را بالا ببری، خازن IC2 باید تا ولتاژ بیشتری شارژ شود، پس هر نوسان طول می‌کشد و صدا بم‌تر می‌شود. اگر پایینش بیاوری، صدا زیرتر می‌شود.
  5. خروجی IC1 از راه R5 پایه‌ی ۵ IC2 را یک نیم‌ثانیه بالا و یک نیم‌ثانیه پایین می‌کشد. نتیجه: دو نت یکی‌درمیان. با این مقدارها، حساب تقریبی دو نت حدود ۶۴۰ و ۸۷۰ هرتز را نشان می‌دهد؛ یعنی فاصله‌ای نزدیک به همان «چهارم» موسیقی که در آژیرهای واقعی می‌شنوی.

اگر بخواهی نت‌ها از هم دورتر شوند، R5 را کوچک‌تر کن (مثلاً ۴٫۷ کیلواهم)؛ اگر نزدیک‌تر، بزرگ‌ترش کن. سرعت عوض شدن نت‌ها هم فقط با C1 یا R2 عوض می‌شود.

آژیر بالارونده با ۵۵۵ (Wailing 555 Siren)

در آژیر دوتایی، پایه‌ی ۵ دو ولتاژ ثابت می‌گرفت و صدا بین دو نت می‌پرید. برای آژیر پلیسی که صدایش نرم بالا و پایین می‌رود، باید ولتاژ پایه‌ی ۵ هم نرم تغییر کند. خوشبختانه IC1 یک ولتاژ نرم دارد: ولتاژ خازن C1 که مثل دندانه‌ی اره بین یک‌سوم و دوسوم تغذیه بالا و پایین می‌رود.

مقدار دقیق مقاومت‌ها به آی‌سی و بلندگو بستگی دارد و بهتر است روی بردبورد کمی با آن‌ها بازی کنی. اگر کنترل دقیق‌تری روی شکل صدا می‌خواهی، نسخه‌ی آردوینو که پایین‌تر آمده خیلی ساده‌تر است.

ساخت آژیر در شبیه‌ساز تینکرکد فارسی (بدون کد)

در مود ساده‌ی شبیه‌ساز، هر بازر زنگی یک تنظیم «فرکانس» دارد که از ۲۰۰ تا ۵۰۰۰ هرتز عوض می‌شود. پس به‌جای این‌که یک ۵۵۵ صدا بسازد، دو بازر با دو صدای مختلف می‌گذاریم و یک ۵۵۵ کند آن‌ها را یکی‌درمیان روشن می‌کند؛ این همان آژیر دوتایی است و ما در شبیه‌ساز اجرایش کردیم:

  1. در شبیه ساز مدار مود ساده را باز کن و نمونه‌ی «چشمک‌زن ۵۵۵» (صفحه‌ی نمونه) را بارگذاری کن. این ۵۵۵ با ۱۰ کیلواهم، ۴۷ کیلواهم و ۱۰ میکروفاراد حدود ۰٫۴ ثانیه بالا و ۰٫۳۳ ثانیه پایین است.
  2. LED و مقاومتش را بردار. یک «بازر زنگی» بگذار، فرکانسش را در پنل تنظیمات روی ۴۵۰ هرتز بگذار، پایه‌ی + آن را به پایه‌ی ۳ و پایه‌ی − را به منفی باتری وصل کن.
  3. بازر دوم را روی ۶۰۰ هرتز تنظیم کن (نزدیک‌ترین عددهای اسلایدر به نت لا و ر). مثبت باتری را به آند یک دیود بده، کاتد دیود را به + بازر دوم و − بازر دوم را به پایه‌ی ۳ وصل کن.
  4. ▶ را بزن: دو صدا یکی‌درمیان پخش می‌شوند. وقتی خروجی بالاست بازر اول و وقتی پایین است بازر دوم می‌خواند.

چرا دیود؟ خروجی بالای ۵۵۵ حدود ۱٫۷ ولت از تغذیه کمتر است، پس بازر دوم حتی در نیمه‌ی «خاموش» هم ۱٫۷ ولت می‌بیند و کمی صدا می‌دهد. ما اول بدون دیود امتحان کردیم و بازر دوم هیچ‌وقت ساکت نشد؛ دیود ۰٫۷ ولت از این ولتاژ را می‌گیرد و مشکل حل می‌شود. این همان نکته‌ای است که در نسخه‌ی دو LED یکی‌درمیان هم دیدیم.

برای تمرین قدم‌به‌قدم، درس آژیر دوتایی در دوره‌ی برق بدون کد را ببین که اول با دو LED شروع می‌کند و بعد صدا اضافه می‌کند. نمونه‌ی بوق ۵۵۵ هم یک ۵۵۵ را مستقیم به بازر پسیو داده و چراغ اضطراری بخش نوری آژیر را ساخته است. یک محدودیت را هم بدان: شبیه‌ساز حدود ۳۰ بار در ثانیه مدار را حساب می‌کند، پس یک ۵۵۵ صدها هرتزی را نمی‌تواند به صدا تبدیل کند؛ نوسان‌ساز صوتی ۵۵۵ را روی بردبورد واقعی بساز و در شبیه‌ساز از تنظیم فرکانس بازرها کمک بگیر.

آژیر دوتایی را در شبیه‌ساز بساز 🚨

آژیر آردوینو با tone() (Arduino Siren)

با آردوینو، شکل صدای آژیر فقط چند عدد در کد است. تابع tone(pin, frequency) روی یک پین موج مربعی با فرکانس دلخواه می‌سازد و noTone(pin) آن را قطع می‌کند. این برنامه سه آژیر دارد که با یک دکمه عوض می‌شوند، و دو LED قرمز و آبی هم مثل چراغ گردان یکی‌درمیان چشمک می‌زنند. همه‌ی قطعه‌ها در مود آردوینوی شبیه‌ساز رایگان‌اند و صدا واقعاً از بلندگوی کامپیوترت پخش می‌شود.

قطعهپایه‌ی قطعهوصل به آردوینو
بازر پسیو+ / −پین ۸ / GND
کلید فشارییک پایه / پایه‌ی قطریپین ۲ / GND
LED قرمز + مقاومت ۲۲۰ اهمآند (از راه مقاومت) / کاتدپین ۱۲ / GND
LED آبی + مقاومت ۲۲۰ اهمآند (از راه مقاومت) / کاتدپین ۱۳ / GND
// آژیر آردوینو: سه صدای آژیر و چراغ گردان، با یک دکمه
const int BUZZER = 8;      // بازر پسیو
const int BUTTON = 2;      // دکمه‌ی عوض کردن صدا، به GND
const int LED_RED = 12;    // با مقاومت 220 اهم
const int LED_BLUE = 13;   // با مقاومت 220 اهم

int mode = 0;              // 0 = بالارونده (Wail)، 1 = سریع (Yelp)، 2 = دوتایی (Hi-Lo)
int freq = 600;            // فرکانس فعلی بر حسب هرتز
int stepHz = 10;           // هر قدم چند هرتز
bool upperNote = false;    // برای آژیر دوتایی
bool redOn = false;        // برای چراغ گردان
int lastButton = HIGH;
unsigned long lastStep = 0;
unsigned long lastFlip = 0;

void setup() {
  pinMode(BUTTON, INPUT_PULLUP);
  pinMode(LED_RED, OUTPUT);
  pinMode(LED_BLUE, OUTPUT);
  Serial.begin(9600);
  Serial.println("Siren: wail");
}

void loop() {
  unsigned long now = millis();

  // ۱) دکمه: رفتن به صدای بعدی
  int b = digitalRead(BUTTON);
  if (b == LOW && lastButton == HIGH) {
    mode = (mode + 1) % 3;
    freq = 600;
    stepHz = 10;
    if (mode == 0) Serial.println("Siren: wail");
    if (mode == 1) Serial.println("Siren: yelp");
    if (mode == 2) Serial.println("Siren: hi-lo");
    delay(30);                         // لرزش دکمه
  }
  lastButton = b;

  // ۲) صدا
  if (mode == 2) {                     // دوتایی: هر نیم ثانیه یک نت
    if (now - lastStep >= 500) {
      lastStep = now;
      upperNote = !upperNote;
      tone(BUZZER, upperNote ? 587 : 440);
    }
  } else {                             // بالارونده یا سریع
    unsigned long wait = (mode == 0) ? 20 : 2;
    if (now - lastStep >= wait) {
      lastStep = now;
      freq = freq + stepHz;
      if (freq >= 1400) stepHz = -10;
      if (freq <= 600) stepHz = 10;
      tone(BUZZER, freq);
    }
  }

  // ۳) چراغ گردان: قرمز و آبی یکی‌درمیان
  if (now - lastFlip >= 250) {
    lastFlip = now;
    redOn = !redOn;
    digitalWrite(LED_RED, redOn ? HIGH : LOW);
    digitalWrite(LED_BLUE, redOn ? LOW : HIGH);
  }
}

این کد چطور کار می‌کند؟

عددها را عوض کن و آژیر خودت را بساز: سقف ۲۰۰۰ هرتز صدای تیزتری می‌دهد و فاصله‌ی ۴۰ میلی‌ثانیه آژیری خیلی آرام. درس صدا و موسیقی تابع tone را از پایه درس می‌دهد، نمونه‌ی ملودی با بازر یک آهنگ کامل پخش می‌کند و پروژه‌ی پایانی ماشین پلیس همین آژیر را با چراغ‌ها ترکیب کرده است.

بلندتر کردن صدا (Louder Siren)

پین آردوینو حداکثر حدود ۲۰ میلی‌آمپر را راحت می‌دهد و بلندگوی ۸ اهمی مستقیم روی پین ۵ ولتی چند صد میلی‌آمپر می‌خواهد؛ یعنی پین آسیب می‌بیند. برای بلندگو یک ترانزیستور بگذار:

قطعهازبه
مقاومت ۱ کیلواهمپین ۸بیس ترانزیستور NPN (مثل 2N2222 یا BC337)
امیتر ترانزیستور—GND
بلندگوی ۸ اهم + مقاومت حدود ۲۲ اهم سری5Vکلکتور ترانزیستور

ترانزیستور مثل یک کلید سریع، جریان بزرگ بلندگو را از منبع ۵ ولت می‌کشد و پین آردوینو فقط چند میلی‌آمپر برای بیس می‌دهد. طرز کار این کلید را در ترانزیستور چطور کار می‌کند ببین. برای صدای خیلی بلند، از یک ماژول تقویت‌کننده‌ی صوتی آماده استفاده کن.

انواع مدار آژیر (Variations)

#اسم فارسیEnglishایده
۱آژیر دوتایی با ۵۵۵Two-Tone 555 Sirenخروجی ۵۵۵ کند به پایه‌ی ۵ ۵۵۵ تند
۲آژیر بالارونده با ۵۵۵Wailing 555 Sirenولتاژ خازن ۵۵۵ کند، از راه ترانزیستور به پایه‌ی ۵
۳آژیر پلیس دکمه‌ایPush-Button Police Sirenدکمه یک خازن را شارژ می‌کند؛ با فشار صدا بالا می‌رود و با ول کردن پایین می‌آید
۴بوق منقطع با دو ۵۵۵Pulsed 555 Beeperخروجی ۵۵۵ کند به پایه‌ی ریست (۴) ۵۵۵ تند: صدا قطع و وصل می‌شود
۵آژیر ترانزیستوریTransistor Sirenنوسان‌ساز دو ترانزیستوری با یک خازن که فرکانس را می‌کشد
۶آژیر با آی‌سی صداSiren Sound ICآی‌سی‌های آماده‌ای که چند صدای آژیر را در خودشان دارند
۷آژیر آردوینوArduino tone() Sirenکد همین مقاله؛ هر صدایی با چند عدد
۸آژیر با چراغ گردانSiren with Police Lightsصدا و دو LED یکی‌درمیان؛ نمونه‌ی چراغ پلیس
۹آژیر دزدگیرAlarm Sirenآژیر وقتی حسگر چیزی ببیند؛ در مدار دزدگیر ساده
۱۰آژیر اعلام حریقFire Alarm Sirenحسگر گاز و دما + آژیر؛ سیستم اعلام حریق با آردوینو
۱۱هشدار فاصلهDistance Warning Beeperبوق‌هایی که با نزدیک شدن مانع تندتر می‌شوند؛ سنسور پارک

اشتباه‌های رایج

ایمنی و احترام به گوش

آژیر بدون حسگر فقط سروصداست. وقتی یک حسگر حرکت یا یک کلید در به آن اضافه کنی، یک سیستم امنیتی واقعی ساخته‌ای؛ قدم بعدی مدار دزدگیر ساده است.

سؤال‌های رایج

ساده‌ترین مدار آژیر چیست؟

ساده‌ترین آژیر یک آی‌سی 555 در حالت چشمک‌زن است که دو بازر با دو صدای مختلف را یکی‌درمیان روشن می‌کند. اگر آردوینو داری، از آن هم ساده‌تر است: یک بازر پسیو روی یک پین و چند خط کد با تابع tone.

برای آژیر بازر بهتر است یا بلندگو؟

بازر اکتیو فقط یک صدای ثابت دارد و برای آژیر بالارونده مناسب نیست. بازر پسیو و پیزو هر فرکانسی که به آن‌ها بدهی پخش می‌کنند و برای شروع عالی‌اند. بلندگو بلندترین و خوش‌صداترین گزینه است ولی به ترانزیستور یا تقویت‌کننده نیاز دارد.

چطور صدای آژیر آردوینو را بلندتر کنم؟

بلندگو را مستقیم به پین آردوینو وصل نکن. پین را از راه یک مقاومت حدود 1 کیلواهم به بیس یک ترانزیستور NPN بده و بلندگو را با یک مقاومت کوچک سری بین 5 ولت و کلکتور بگذار. برای صدای خیلی بلند از ماژول تقویت‌کننده‌ی صوتی استفاده کن.

فرق آژیر دوتایی و آژیر بالارونده چیست؟

آژیر دوتایی بین دو نت ثابت جابه‌جا می‌شود، مثل آمبولانس‌های قدیمی. آژیر بالارونده صدا را پیوسته بالا و پایین می‌برد. اگر این بالا و پایین شدن خیلی تند باشد به آن آژیر سریع یا Yelp می‌گویند.

آیا صدای آژیر را در شبیه‌ساز می‌شنوم؟

بله. در مود آردوینو، تابع tone صدای واقعی را در مرورگر پخش می‌کند. در مود ساده هر بازر صدای خودش را با فرکانسی که در تنظیماتش گذاشته‌ای پخش می‌کند و آی‌سی 555 آن‌ها را روشن و خاموش می‌کند.

مقاله‌های دیگر

💫

مدار چشمک‌زن با آی‌سی ۵۵۵ (555 LED Flasher / Astable)

🛡️

مدار دزدگیر ساده (Burglar Alarm Circuit): بدون آردوینو و با آردوینو

🎹

پیانوی الکترونیکی با آردوینو و چند دکمه