> 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/french/function-blocks/blocks-reference/data-logic/logic/equals.md).

# Equals

Cette fonction compare des valeurs numériques et renvoie un résultat booléen indiquant si tous les nombres fournis sont égaux. Elle est idéale pour des vérifications d'égalité stricte, des comparaisons de consigne et des décisions logiques simples dans votre flux visuel.

## 📥 Entrées <a href="#inputs" id="inputs"></a>

`Number` Cette entrée numérique (prise) accepte l'une des valeurs à comparer.\
`Number` Cette entrée numérique (prise) accepte une autre valeur à comparer.\
Remarque : vous pouvez fournir deux valeurs ou plus en ajoutant des prises numériques supplémentaires via l'interface du bloc.

## 📤 Sorties <a href="#outputs" id="outputs"></a>

`Boolean` Cette sortie (prise) renvoie TRUE lorsque toutes les entrées numériques connectées sont égales, sinon FALSE.

## 🕹️ Contrôles <a href="#controls" id="controls"></a>

`Add / Remove Input Sockets` Utilisez l'interface du bloc pour ajouter ou supprimer des entrées numériques lorsque vous devez comparer plus de deux valeurs.\
Il n'y a pas d'autres paramètres, curseurs ou menus déroulants pour ce bloc — son comportement dépend uniquement des entrées numériques connectées.

## ⚙️ Mécanisme d'exécution <a href="#running-mechanism" id="running-mechanism"></a>

Lorsque le bloc s'exécute, il vérifie si chaque entrée numérique possède la même valeur. Si toutes les valeurs correspondent exactement, le bloc produit TRUE sur la prise `Boolean`. Si une valeur diffère, il produit FALSE. Le bloc évalue à chaque mise à jour des entrées connectées.

## ✨ Fonctionnalités <a href="#features" id="features"></a>

* Vérification d'égalité exacte sur plusieurs entrées numériques.
* Nombre d'entrées flexible — ajoutez des prises numériques via l'UI pour comparer davantage de valeurs.
* Logique simple et à faible latence, adaptée à la détection de consignes et aux portes d'égalité.

## 📝 Exemples d'utilisation <a href="#usage" id="usage"></a>

* Comparer une lecture d'un capteur avec une consigne fixe fournie par un `Number Input` pour déclencher des actions lorsque les valeurs correspondent.
* Comparer plusieurs compteurs ou valeurs d'état discrètes pour confirmer que tous les systèmes rapportent le même état.
* Combiner avec une logique de verrouillage pour maintenir une condition une fois l'égalité atteinte (voir Conseils et astuces).

Exemples en clair :

* Entrées : 5, 5, 5 → Sortie : TRUE
* Entrées : 5, 5, 4 → Sortie : FALSE

## 💡 Conseils et astuces <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Pour des valeurs saisies manuellement ou des valeurs flottantes, l'égalité exacte peut être fragile à cause des arrondis. Pour comparer avec une tolérance, utilisez `Absolute` et `Smaller` : calculez la différence absolue entre les valeurs et vérifiez si elle est inférieure à un nombre de tolérance.
* Utilisez `Number Input` pour fournir des valeurs de référence ou de consigne afin de faciliter les tests.
* Combinez plusieurs vérifications d'égalité avec `And` ou `Or` pour construire des conditions logiques plus riches.
* Utilisez `All True` pour vérifier une liste de résultats booléens (par exemple, plusieurs blocs `Equals` alimentant celui-ci).
* Si vous souhaitez maintenir un résultat TRUE jusqu'à réinitialisation, associez le bloc avec `Set - Reset` ou `Data Memory` pour implémenter un verrouillage.
* Utilisez `Logic Input` comme déclencheur manuel pour activer ou désactiver les comparaisons lors des tests ou de la maintenance.

Blocs recommandés à combiner avec `Equals` :\
`Number Input`, `Logic Input`, `And`, `Or`, `Not`, `Greater`, `Smaller`, `Absolute`, `Round`, `All True`, `Set - Reset`, `Data Memory`, `Scope`.

## 🛠️ Dépannage <a href="#troubleshooting" id="troubleshooting"></a>

* Résultats FALSE inattendus avec des nombres flottants : essayez d'arrondir les valeurs avec `Round` ou réalisez une comparaison basée sur une tolérance en utilisant `Absolute` + `Smaller`.
* Entrée manquante : assurez-vous que chaque prise numérique que vous souhaitez comparer est connectée ou remplie avec un `Number Input` ; une valeur non connectée peut rendre la comparaison invalide.
* Comportement inattendu avec plusieurs entrées : vérifiez que toutes les entrées connectées représentent le même type/échelle numérique (par exemple, toutes dans les mêmes unités).
