> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/arabic/alblwkat-alwzyfyh/blocks-reference/data-logic/signal-operators/on-delay.md).

# ON Delay

تأخير منطقية يقوم بتأخير تفعيل إشارة boolean. عند تغيُّر إشارة الدخول من False إلى True، ينتظر هذا البلوك مدة محددة قبل أن يسمح للخروج بأن يصبح True. إذا عادت الإشارة إلى False قبل انتهاء التأخير، يبقى الخرج False.

## 📥 Inputs (sockets)

* `Input` — زود البلوك بإشارة boolean ليتم تأخيرها.

## 📤 Outputs (sockets)

* `Output` — إشارة boolean المؤخرة. تصبح True فقط بعد انقضاء مدة التأخير المحددة بعد حدث الصعود (rising edge) في الإدخال.

## 🕹️ Controls (widgets)

* `Delay Time` — حقل نصي لوضع مدة التأخير بالثواني. أدخل قيمة رقمية (مثال: 5 يعني 5 ثوانٍ).

## ⚙️ Running mechanism

* يراقب البلوك إشارة `Input`.
* عند حدوث صعود (عندما تتغير `Input` من False إلى True)، يبدأ البلوك مؤقتاً لمدة الثواني المحددة في `Delay Time`.
* أثناء تشغيل المؤقت يظل `Output` على False.
* إذا اكمل المؤقت مدته ولا تزال `Input` True، يتحول `Output` إلى True.
* إذا عادت `Input` إلى False قبل اكتمال المؤقت، يُلغى المؤقت ويظل `Output` False.
* أي صعود لاحق يعيد بدء عملية التأخير.

## ✨ Features

* تأخير بسيط وقابل للضبط لإشارات الصعود دون كتابة سكربت.
* إلغاء آمن للتأخير عندما تعود الإشارة إلى False.
* يعمل مع أي بلوك أو إشارة تُنتج قيمة boolean في النظام.

## 📝 Usage instructions

1. وصل مصدر boolean إلى مقبس `Input` (مثل `Logic Input` يدوي أو بلوك يُنتج حدثاً).
2. عيّن `Delay Time` إلى عدد الثواني التي تريد الانتظار بعدها بعد أن يصبح الإدخال True.
3. استخدم `Output` كإشارة تحكم مؤخرة للبلوكات التالية (مثال: تشغيل `Led Output` أو بدء عملية).

## 💡 Tips and Tricks

* أزواج مع `OFF Delay` إذا احتجت سلوك تأخيري مضبوط لكل من حواف الصعود والهبوط (ON Delay للصعود، OFF Delay للسقوط).
* استخدم `Rising Edge` إذا أردت تحويل إدخال True مستمر إلى نبضة مؤخرة واحدة أو لاكتشاف لحظة الانتقال الدقيقة قبل بدء منطق آخر.
* للاختبار اليدوي، وصل `Logic Input` إلى `Input` لتبديل ومراقبة السلوك تفاعلياً.
* وصل `Output` إلى `Led Output` لرؤية الإشارة المؤخرة أثناء الضبط.
* اجمع مع `Counter` لزيادة العد فقط بعد أن يصبح الخرج المؤخر True، متجنباً العد الناتج عن نبضات قصيرة.
* استعمل بوابات منطقية مثل `And` أو `Or` للتحكم في إخراج التأخير مع شروط أخرى قبل تشغيل المشغلات النهائية أو التسجيل.

## 🛠️ Troubleshooting

* إذا لم يصبح الخرج True قط بعد صعود الإدخال، تحقق أن `Delay Time` يحتوي على قيمة رقمية صحيحة وأن الإدخال يبقى True لمدة لا تقل عن هذه المدة.
* إذا أصبح الخرج True مبكراً جداً، زد قيمة `Delay Time` لتطابق المدة المطلوبة.
* إذا أردت تجاهل نبضات إدخال قصيرة، فكر في إضافة `Delay Step` قصير أو منطق تصفية مسبق بحيث تبدأ عملية التأخير فقط مع الصعود المستمر.
