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

# Logic Operations

هذه الدالة تقوم بتقييم عمليات منطقية ومقارنات على مدخل واحد أو أكثر. استخدمها لدمج فحوصات منطقية (boolean)، مقارنة قيم رقمية، أو اختزال شروط متعددة إلى مخرج واحد صحيح/خاطئ مناسب للتدفق التالي.

## 📥 المدخلات

* `Generic` يقبل أي نوع من البيانات. يمكن توصيل عدة مداخل ليتم تقييمها معًا.
* `Generic` مقبس افتراضي ثانٍ؛ يمكن إضافة مزيد من المداخل حسب الحاجة.

## 📤 المخرجات

* `Boolean` القيمة الناتجة (True/False) بعد تقييم العملية المنطقية أو المقارنة المختارة.

## 🕹️ الضوابط

* `Method` اختر العملية المنطقية أو المقارنة التي سيتم تطبيقها على المداخل. من الطرق الشائعة: `AND`, `OR`, `GREATER`, `SMALLER`, `EQUALS`, و `NOT EQUALS`.

## 🎨 الخصائص

* `Multi-input support` يدعم تقييم مدخلين أو أكثر معًا، وليس مقيدًا بقيمتين فقط.
* `Flexible input types` المداخل عامة ويمكن إرسال أرقام، boolean، قوائم أو قيم أخرى حسب السيناريو.
* `Context-aware comparisons` طرق المقارنة تعمل للمقارنات الزوجية وأيضًا لمقارنة المدخل الأول بعدة مدخلات أخرى.

## 📝 تعليمات الاستخدام

1. وصل قيمة واحدة أو أكثر إلى المداخل. المصادر الشائعة: أعداد، قياسات، أو إشارات boolean من كتل أخرى.
2. اختر العملية المطلوبة من صندوق `Method`.
3. يخرج البلوك قيمة واحدة `Boolean` تمثل نتيجة العملية.

أمثلة:

* استخدم `Method` = `AND` عندما تحتاج أن تكون كل الشروط صحيحة لتمرير الحالة.
* استخدم `GREATER` للتحقق ما إذا كانت قيمة مقاسة أكبر من عتبة أو أكبر من عدة قيم مرجعية.
* استخدم `EQUALS` للتحقق أن عدة مداخل متطابقة.

## 📊 سلوك التقييم

* `AND` يرجع True فقط إذا كانت كل القيم المدخلة تقيم كـ True.
* `OR` يرجع True إذا كانت أي قيمة من المداخل تقيم كـ True.
* `GREATER` يقارن المدخل الأول بالمدخل الثاني؛ عند وجود مداخل إضافية، يتحقق ما إذا كان المدخل الأول أكبر من كل الباقيين.
* `SMALLER` يعكس سلوك `GREATER` ويتحقق ما إذا كان المدخل الأول أصغر من الآخرين.
* `EQUALS` يرجع True عندما يكون المدخل الأول مساوٍ لكل المداخل الأخرى.
* `NOT EQUALS` يرجع True إذا اختلف أي من المداخل الأخرى عن المدخل الأول.

## 💡 نصائح وحيل

* دمجه مع كتل الكشف والعد
  * وصل `Object Count` من `Object Detection` أو `Object Detection - Custom` للتحقق إن كان عدد العناصر أكبر من عتبة باستخدام `GREATER` ثم تفعيل `Record Video` أو `Image Logger`.
* استخدامه مع نتائج التتبع
  * أدخل مخرجات التتبع مثل `Position - ID List` من `Object_Detection_Tracker` إلى هذا البلوك لإنشاء قواعد مثل "هل يوجد أي كائن متتبع" باستخدام `OR` أو `NOT EQUALS`.
* منطق القناع/السلامة
  * دمج مخرجات `Mask Detection` أو `Safety Equipment Detection` مع `AND` للتأكد من تحقق شروط السلامة المتعددة قبل إطلاق إنذار أو حفظ إطار.
* تحقق مسبق والتحكم في التدفق
  * استخدمه مع `Is None` أو `Replace None` للتحقق من المداخل قبل المعالجة التالية. مثال: تأكد من وجود بيانات الصورة وأن الكاشف أنتج نتائج قبل المتابعة.
* مقارنات القياسات
  * أدخل مخرجات رقمية من `Measure Position Distance`, `Get Dimension`, أو `Mean Value of Image` إلى طرق `GREATER`/`SMALLER` لعمل شروط نجاح/فشل لفحوصات الجودة.
* الاستخدام في أتمتة التدفق
  * اربط الناتج البولياني إلى `Led Output`, `Write Text On Image`, `CSV Export`, أو `MQTT Publish` للتصرف بناءً على نتائج الكشف أو القياس.

## 🛠️ استكشاف الأعطال وإصلاحها

* نتائج خاطئة غير متوقعة
  * تحقق من أنواع البيانات المارة إلى المداخل. قم بتحويل أو تطبيع القيم (مثلاً استخدم `Round` أو `String Operations`) حتى تعمل المقارنات كما هو متوقع.
* المقارنات مع مداخل متعددة تختلف في السلوك
  * تذكّر أن `GREATER` و `SMALLER` تقارن المدخل الأول بالآخرين. إذا كنت بحاجة لمقارنات زوجية، مرّر أزواج مناسبة أو استخدم عدة كتل Logic Operations.
* لا يوجد مخرج أو التدفق متوقف
  * تأكد من توصيل أو صلاحية مدخل واحد على الأقل. استخدم `Is None` أو `Replace None` للحماية من القيم المفقودة.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.augelab.com/arabic/alblwkat-alwzyfyh/blocks-reference/data-logic/logic/logic-operations.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
