Guide d’intégration

FR-S01 — raccordement IO-Link

Capteur de niveau radar courte portée, affichage intégré. Trois modes de raccordement pour un seul capteur, et un assistant de réglage obligatoire au premier démarrage.

KEYENCE FR-S01 IO-Link Siemens Radar 60 GHz Maître Siemens, via S7-PCT
FR-S01

Caractéristiques de l’appareil

Grandeur mesuréeNiveau de liquide ou de poudre — sans contact
TechnologieRadar, bande 58 … 63 GHz
Plage de mesureJusqu’à 1,5 m — plage d’affichage jusqu’à 2 m
Permittivité relative cible2 minimum
Résolution1 mm
Précision< 0,1 m : ±20 mm · 0,1 à 0,3 m : ±5 mm · 0,3 à 1,5 m : ±1 mm
Temps de réponse0,4 s · 1,5 s · 4 s (défaut) · 10 s
Pression réservoir−0,1 à +1 MPa
MatériauxLentille PTFE · garniture FKM · joint SUS304 · boîtier PBT PAR
Raccord processG3/4 (20 A) — couple de serrage 30 N·m
Alimentation24 V DC +25 % / −20 % — 80 mA max
Sorties de commande5 max — collecteur ouvert NPN/PNP, 30 V DC, 50 mA par sortie
Sortie analogique0-20 mA ou 4-20 mA — charge max 260 Ω
IO-Linkv1.1 / COM2 — sur la sortie IO2
Connectique1 × M12 mâle, 8 broches
Température ambiante−20 à +55 °C (pas de gel)
ProtectionIP67 (CEI 60529)

Câblage

M12 mâle, 8 broches — 4 conducteurs utilisés — Câble compatible IO-Link — 20 m maximum en IO-Link

12345678
BrocheFilFonction
2 BN Marron Alimentation 24 V DC
6 PK Rose Sortie de commande 2 → C/Q, communication IO-Link
7 BU Bleu 0 V
Une liaison IO-Link n’utilise que 4 conducteurs L’alimentation, le 0 V, la ligne de communication C/Q, et un quatrième non utilisé en classe A. Peu importe que le connecteur en compte 8 : les autres fils restent inutilisés et doivent être isolés individuellement.
Autres broches du connecteur 1 Blanc — Sortie analogique — inutilisée en IO-Link · 3 Vert — Sortie de commande 3 · 4 Jaune — Sortie de commande 4 · 5 Gris — Sortie de commande 1 · 8 Rouge — Sortie de commande 5 / entrée externe
Isoler individuellement tous les fils non utilisés.
La règle « IO-Link = broche 4 » ne s’applique pas ici Connecteur 8 broches propriétaire : la communication passe par la broche 6, fil rose. Vérifiez toujours le brochage du fabricant plutôt que de vous fier à l’habitude.

Réglages sur l’appareil

Contrairement au LDH292, ce capteur n’est pas exploitable à la sortie du carton : un assistant de configuration s’impose au premier démarrage, et certains choix sont irréversibles.

Étape de l’assistantOptions
LangueAnglais · Japonais · Chinois · Allemand — pas de français
PNP / NPN⚠️ Ne se modifie plus ensuite sans réinitialisation complète
Sorties de commande0 à 5 — détermine combien de fils sont exploitables
Entrée externeON / OFF — limite à 4 sorties si activée
Cible de détectionÀ base d’eau (εr ≥ 3) · à base d’huile (εr < 3) · poudre
Unité de distancemm · m · inch · feet
Distance du fondDistance capteur → fond du réservoir = le 0 %
Distance au sommetDistance capteur → surface haute = le 100 %
Seuils 1 à 5Points de basculement des sorties de commande
Logique de sortieN.O. / N.F. par sortie
Ordre des indicateursCouleurs de l’anneau lumineux selon le niveau
Après l’assistantUne fois l’assistant terminé, KEYENCE recommande d’exécuter la « fonction d’adaptation » : le capteur diagnostique les échos parasites, propose de masquer les fausses crêtes et optimise seul ses réglages de suivi.

Intégration dans TIA Portal

Procédure « Capteur IO-Link, via un maître Siemens configuré par S7 Port Configuration Tool » — commune à tous les appareils raccordés de cette façon.

01 Insérer le maître Siemens dans le projet Module de communication CM 4xIO-Link ou CM 8xIO-Link, dans le rack d’une station ET 200SP (ou intégré à une CPU compacte selon le modèle). Depuis le catalogue matériel : modules de communication → maître IO-Link.
02 Installer S7-PCT Le S7 Port Configuration Tool est un logiciel séparé, téléchargeable chez Siemens. Redémarrer TIA Portal après l’installation, sinon l’outil n’apparaît pas.
03 Récupérer et installer l’IODD du capteur L’IODD décrit le capteur : paramètres, données process, plages. Source officielle : IODDfinder, ou le site du fabricant. Prendre la version correspondant au firmware.
04 Ouvrir S7-PCT depuis TIA Clic droit sur le module maître dans la vue appareil, puis « Démarrer l’outil d’appareil ». S7-PCT s’ouvre avec son propre catalogue.
05 Affecter le capteur à un port Dans le catalogue S7-PCT : rechercher le fabricant puis la référence exacte du capteur (l’IODD doit être installée pour qu’il apparaisse). Glisser sur le port voulu.
06 Charger dans les appareils Clic droit sur le maître → « Charger avec les appareils ». La configuration part vers le maître ET vers le capteur. Étape distincte du chargement du programme CPU.
07 Relever la plage d’adresses d’entrée S7-PCT indique les entrées numériques attribuées au port. C’est l’adresse de base des données process du capteur dans le programme.
S7-PCT ne configure que les maîtres IO-Link SiemensCette procédure suppose un maître Siemens (CM 4xIO-Link, CM 8xIO-Link…). Avec un maître d’un autre fabricant — ifm, Balluff, Turck… — S7-PCT ne le reconnaît pas, même déclaré via son propre GSDML : voir la voie « maître générique, sans S7-PCT » pour ce cas.

Structure des données process

Fichier IODDKEYENCE-FR-S-20240108-IODD1_1.xml
Version · dateV1.1 — 08.01.2024
VendorID · DeviceID509 (Keyence) · 2040
Variantes couvertesFR-S01 et FR-SA1C
Famille IODDKEYENCE série FR — structure de données process commune à toute la gamme
Data Storage✅ Pris en charge — le maître sauvegarde le paramétrage. Un capteur remplacé est reconfiguré automatiquement.
Le brochage déclaré dans l’IODD est génériqueLes trois IODD de la gamme annoncent un M12 4 broches avec C/Q en broche 4, fil noir. Ce sont les couleurs standard DIN EN 60947-5-2, pas celles du câble réel — le faisceau ne contient aucun fil noir. Règle générale : l’IODD sert aux données process et aux paramètres, jamais au câblage. Pour le câblage, c’est la notice constructeur.
96 bits — 12 octets
Valeur actuelle
MSB
Valeur actuelle
·
Valeur actuelle
·
Valeur actuelle
LSB
Niveau cumulé
MSB
Niveau cumulé
·
Niveau cumulé
·
Niveau cumulé
LSB
Diagnostics
Erreurs
Stabilité + couleur
État des sorties
0
1
2
3
4
5
6
7
8
9
10
11
Valeur actuelle — octets 0-3Niveau cumulé — octets 4-7Diagnostics — octet 8Erreurs — octet 9Stabilité + couleur — octet 10État des sorties — octet 11
DonnéeOffset bitLongueurTypePlage bruteConversion
Valeur actuelle64 32 bitsINT 32 -199999 … 99999 selon réglage
Niveau cumulé32 32 bitsINT 32 -199999999 … 99999999 selon réglage
Diagnostics24 8 bits8 × BOOL — bits d’état
Erreurs16 8 bits8 × BOOL — bits d’état
Stabilité + couleur8 8 bits2 × UINT 4 — bits d’état
État des sorties0 5 bits5 × BOOL — bits d’état
La valeur actuelle n’a pas de facteur d’échelleContrairement au LDH292 où le gradient est figé à 0,1, l’IODD ne définit ici aucune conversion. La plage brute va de −199999 à 99999, et sa signification dépend des réglages « unité de distance » et « position du point décimal » saisis sur l’afficheur du capteur. La même valeur brute peut valoir 1234 mm ou 1,234 m. Le programme automate doit connaître le paramétrage physique de l’appareil.

Bits de diagnostic

Tout ce que le capteur affiche à l’écran remonte en cyclique. Aucune lecture acyclique n’est nécessaire pour construire une supervision complète.

OctetBitSignification
831LOW — niveau sous la plage de mesure
830HIGH — niveau au-dessus de la plage
829Tracking — suivi en cours, valeur maintenue
828Temps de niveau cumulé invalide
827Stabilité dégradée — alerte de maintenance
826Mesure impossible
825Erreur d’apprentissage
824Interférence — autre source 60 GHz à proximité
923Erreur de tête de capteur
922 → 18Surintensité sur les sorties 5 à 1
917Erreur EEPROM
916Erreur système
1015 → 12Stabilité — 0 (détection impossible) à 4 (signal franc)
1011 → 8Couleur de l’indicateur — 0 éteint · 1 vert · 2 jaune · 3 rouge · 4 rouge clignotant
114 → 0État des sorties de commande 5 à 1

Programmation

// FR-S01 en IO-Link — adresses à adapter à la plage attribuée au port.

Réseau 1 — Diagnostics (octet 8, lecture directe des bits)
   diag.%X7
────┤ ├──────────────────────────────( niveauBas )      LOW

   diag.%X6
────┤ ├──────────────────────────────( niveauHaut )     HIGH

   diag.%X3
────┤ ├──────────────────────────────( maintenance )    stabilité dégradée

   diag.%X0
────┤ ├──────────────────────────────( interference )   autre source 60 GHz

Réseau 2 — Défaut bloquant (octet 9, trois bits en parallèle)
   erreurs.%X7
────┤ ├──┬───────────────────────────( defaut )
   erreurs.%X1
─────┤ ├──┤
   erreurs.%X0
─────┤ ├──┘

Réseau 3 — Mesure exploitable ?
   diag.%X2    defaut
────┤/├────────┤/├─────────────────( mesureOK )
  Not Measurable

Réseau 4 — Stabilité : 4 bits de poids fort de l'octet 10
      ┌──────────────┐    ┌──────────────┐
      │     SHR      │    │     AND      │
──────┤     Byte     ├────┤     Byte     ├───( stabilite )
      │IN       etat │    │IN2    16#0F  │
      │N           4 │    └──────────────┘
      └──────────────┘

Réseau 5 — Mise à l'échelle selon le réglage du capteur
   ⚠ Le diviseur dépend de la « position du point décimal » réglée
   sur l'afficheur. Ici : 1 décimale → division par 10.
              ┌──────────────┐    ┌──────────┐
   mesureOK   │     CONV     │    │   DIV    │
──────┤ ├─────┤ DInt →  Real ├────┤   Real   ├───( niveau )
              │IN valeurBrute│    │IN2   10.0│
              └──────────────┘    └──────────┘
// FR-S01 en IO-Link — 12 octets de données process
// 0-3 : valeur actuelle (INT 32)      4-7  : niveau cumulé (INT 32)
// 8   : diagnostics                   9    : erreurs
// 10  : stabilité + couleur           11   : état des sorties

FUNCTION_BLOCK "FB_FR_S01"
VAR_INPUT
    valeurBrute : DINT;   // octets 0-3
    valeur2Brute: DINT;   // octets 4-7 — Niveau cumulé
    diag        : BYTE;   // octet 8
    erreurs     : BYTE;   // octet 9
    etat        : BYTE;   // octet 10
    sorties     : BYTE;   // octet 11
    decimales   : USINT := 0;  // ⚠ doit refléter le réglage FAIT SUR LE CAPTEUR
END_VAR
VAR_OUTPUT
    niveau      : REAL;   // dans l'unité réglée sur l'appareil
    mesureOK    : BOOL;
    niveauHaut  : BOOL;   // HIGH
    niveauBas   : BOOL;   // LOW
    stabilite   : USINT;  // 0 = perdu … 4 = signal franc
    maintenance : BOOL;   // stabilité dégradée
    interference: BOOL;   // autre source 60 GHz
    defaut      : BOOL;   // erreur système / EEPROM / tête
END_VAR

BEGIN
    // ---- Octet 8 : diagnostics ----
    #niveauBas    := #diag.%X7;   // bit 31 — LOW
    #niveauHaut   := #diag.%X6;   // bit 30 — HIGH
    #maintenance  := #diag.%X3;   // bit 27 — stabilité dégradée
    #interference := #diag.%X0;   // bit 24 — interférence 60 GHz

    // ---- Octet 9 : erreurs bloquantes ----
    #defaut := #erreurs.%X7 OR #erreurs.%X1 OR #erreurs.%X0;
                  // tête        EEPROM         système

    // ---- Octet 10 : stabilité sur les 4 bits de poids fort ----
    #stabilite := BYTE_TO_USINT(SHR(IN := #etat, N := 4)) AND 16#0F;

    // ---- Mesure exploitable ? ----
    #mesureOK := NOT #diag.%X2 AND NOT #defaut;  // bit 26 = Not Measurable

    // ---- Mise à l'échelle ----
    // ⚠ Aucun gradient dans l'IODD : l'échelle dépend des réglages
    //   « unité de distance » et « position du point décimal » saisis
    //   sur l'afficheur du capteur. 0 décimale → la brute est déjà l'unité.
    IF #mesureOK THEN
        CASE #decimales OF
            0: #niveau := DINT_TO_REAL(#valeurBrute);
            1: #niveau := DINT_TO_REAL(#valeurBrute) / 10.0;
            2: #niveau := DINT_TO_REAL(#valeurBrute) / 100.0;
            3: #niveau := DINT_TO_REAL(#valeurBrute) / 1000.0;
            ELSE
               #niveau := DINT_TO_REAL(#valeurBrute) / 10000.0;
        END_CASE;
    ELSE
        #niveau := 0.0;
    END_IF;
END_FUNCTION_BLOCK
CONT ou SCL ?La mise à l’échelle est plus lisible en SCL. L’usage courant est d’écrire ce bloc en SCL et de l’appeler depuis le programme CONT. La version CONT existe pour les sites où le SCL n’est pas autorisé.
Code non validé sur installationGénéré depuis la documentation. À confirmer sur matériel avant mise en production.

Les pièges

IO-Link n’est PAS sur la broche 4Connecteur M12 8 broches propriétaire : la communication IO-Link passe par la broche 6 (fil rose, sortie de commande 2). La règle habituelle « C/Q = broche 4 » ne s’applique pas.
Longueur de câble : 30 m, mais 20 m en IO-LinkLa limite change selon le mode de raccordement. Dépassement = détection instable, sans message d’erreur explicite.
PNP/NPN irréversible sans réinitialisationChoisi dans l’assistant de premier démarrage. Le menu permet ensuite de le consulter, pas de le changer. Une erreur ici se paie par une réinitialisation complète du paramétrage.
Zone morte côté procheDistances minimales recommandées entre la surface de référence et le niveau haut : 100 mm pour un liquide aqueux, 120 mm pour un liquide huileux, 170 mm pour une poudre. En dessous, la détection décroche.
La bande 60 GHz interfèreDeux capteurs FR installés côte à côte génèrent une erreur « Interférence ». Idem à proximité de WiFi, fours micro-ondes, chauffage industriel HF ou matériel médical haute fréquence.
Mousse et turbulence faussent la mesureUne mousse épaisse atténue le signal. Ne pas installer à l’orifice d’entrée ni là où le liquide fait des vagues ou adhère à la lentille.
Cible de détection mal choisie = mesure fausseLe réglage eau / huile / poudre modifie automatiquement les zones de masquage. Un mauvais choix empêche la détection correcte de la surface.
Pas d’usage antidéflagrantLe FR-S01 n’est pas un produit ATEX. Pour une zone à risque, il faut la version FR-LEX20 avec barrière.

Sources

Fiche technique KEYENCE France 13.08.2026 · Manuel d’instructions MFR09FR · Manuel d’utilisation série FR M04FR (10/2025)

Autres modes de raccordement pour FR-S01
Autre maître IO-Link possible pour FR-S01

Le brochage du capteur ne change pas — seule la procédure TIA Portal diffère selon le maître utilisé.

Même famille

Même structure de données ou même bloc de commande — utile pour comparer les références de la gamme.

À propos de cette page Cette page est générée depuis des fiches de données structurées, pas écrite à la main — voir la maquette interactive pour naviguer parmi tous les guides.