> 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/logic/equals.md).

# Equals

هذا الـ function block يقارن القيم العددية ويخرج نتيجة منطقية تشير إلى ما إذا كانت كل الأرقام المُدخَلة متساوية أم لا. مناسب لفحوصات المطابقة التامة، مقارنة نقاط الضبط، وقرارات منطقية بسيطة في تدفقك البصري.

## 📥 المُدخلات <a href="#inputs" id="inputs"></a>

`Number` هذا المدخل الرقمي (socket) يستقبل إحدى القيم للمقارنة.\
`Number` هذا المدخل الرقمي (socket) يستقبل قيمة أخرى للمقارنة.\
ملاحظة: يمكنك توفير مدخلين أو أكثر عن طريق إضافة مقابس عددية إضافية في واجهة الـ block.

## 📤 المخرجات <a href="#outputs" id="outputs"></a>

`Boolean` هذا المخرج (socket) يكون TRUE عندما تكون كل المُدخلات الرقمية المتصلة متساوية، وإلا فسيكون FALSE.

## 🕹️ الضوابط <a href="#controls" id="controls"></a>

`Add / Remove Input Sockets` استخدم واجهة الـ block لإضافة أو إزالة مقابس عددية عندما تحتاج لمقارنة أكثر من قيمتين.\
لا توجد متغيرات أو قوائم منسدلة إضافية لهذا الـ block — سلوكه يعتمد فقط على المُدخلات الرقمية المتصلة.

## ⚙️ آلية التشغيل <a href="#running-mechanism" id="running-mechanism"></a>

عند تشغيل الـ block، يتحقق مما إذا كانت كل قيمة مُدخَلة رقمية لها نفس القيمة تمامًا. إذا كانت كل القيم متطابقة بالضبط، يخرج الـ block TRUE على مقبس الـ `Boolean`. إذا اختلفت أي قيمة، يخرج FALSE. يقوم الـ block بالتقييم في كل مرة تتحدّث فيها المُدخلات المتصلة.

## ✨ الميزات <a href="#features" id="features"></a>

* فحص المساواة التامة عبر عدة مُدخلات رقمية.
* عدد مرن من المُدخلات — أضف مقابس رقمية أكثر عبر الواجهة لمقارنة قيم إضافية.
* منطق بسيط وزمن استجابة منخفض مناسب لاكتشاف نقاط الضبط وبوابات المساواة.

## 📝 أمثلة الاستخدام <a href="#usage" id="usage"></a>

* قارن قراءة مستشعر مع قيمة ضبط ثابتة مقدمة من `Number Input` لتشغيل إجراءات عند تطابقها.
* قارن عدّادات متعددة أو قيم حالة متقطعة للتأكد من أن كل الأنظمة تُبلغ نفس الحالة.
* ادمجه مع منطق تثبيت (latching) للاحتفاظ بحالة عندما يتحقق شرط المساواة (انظر نصائح وحيل).

أمثلة بلغة بسيطة:

* المُدخلات: 5, 5, 5 → المخرج: TRUE
* المُدخلات: 5, 5, 4 → المخرج: FALSE

## 💡 نصائح وحيل <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* للقيم التي يدخلها البشر أو القيم العشرية العائمة، المساواة التامة قد تكون غير موثوقة بسبب التقريب. للمقارنة بقبول هامش خطأ، استخدم `Absolute` و `Smaller`: احسب الفرق المطلق بين القيم وتحقق إن كان أصغر من رقم التسامح.
* استخدم `Number Input` لتوفير قيم مرجعية أو نقاط ضبط لتجارب سهلة.
* ادمج نتائج مساواة متعددة مع `And` أو `Or` لبناء شروط منطقية أغنى.
* استخدم `All True` للتحقق من قائمة نتائج منطقية (مثال: عدة بلوكات `Equals` تغذيها).
* إذا أردت الاحتفاظ بنتيجة TRUE حتى إعادة تعيين، زوج الـ block مع `Set - Reset` أو `Data Memory` لتنفيذ سلوك تثبيت.
* استخدم `Logic Input` كمُشغّل يدوي لتمكين أو تعطيل المقارنات أثناء الاختبار أو الصيانة.

مقترحات بلوكات للدمج مع `Equals`:\
`Number Input`, `Logic Input`, `And`, `Or`, `Not`, `Greater`, `Smaller`, `Absolute`, `Round`, `All True`, `Set - Reset`, `Data Memory`, `Scope`.

## 🛠️ استكشاف الأخطاء وإصلاحها <a href="#troubleshooting" id="troubleshooting"></a>

* نتائج FALSE غير متوقعة مع الأعداد العشرية: جرّب تقريب القيم باستخدام `Round` أو نفّذ مقارنة تعتمد على هامش خطأ باستخدام `Absolute` + `Smaller`.
* مُدخَل مفقود: تأكد أن كل مقبس رقمي تنوي مقارنته موصول أو مملوء بواسطة `Number Input`؛ قيمة غير موصولة قد تجعل المقارنة غير صالحة.
* سلوك غير متوقع مع مُدخلات متعددة: تحقق أن كل المُدخلات المتصلة تمثل نفس نوع/مقياس الرقم (مثلاً، كلها بنفس الوحدات).
