Use when configuring Keyence safety and IO-Link devices for APR: (1) GL-VM72HP safety light curtain setup and OSSD wiring, (2) NQ-EC8L EtherCAT IO-Link master configuration, (3) ESI file import and PDO mapping for NQ-EC8L, (4) IO-Link sensor integration, (5) Light curtain trigger logic in TwinCAT.
Version: APR-2026.01 | TwinCAT: 3.1 Build 4024.65
Safety light curtain and IO-Link master setup for APR system.
This skill covers the configuration of Keyence devices in the APR system, including the GL-VM72HP safety light curtain for personnel protection and the NQ-EC8L EtherCAT IO-Link master for sensor integration.
| Device | Model | Purpose |
|---|---|---|
| Safety Light Curtain | GL-VM72HP | Personnel protection |
| IO-Link Master | NQ-EC8L | Sensor/actuator hub |
| Parameter | Value |
|---|---|
| Model | GL-VM72HP |
| Optical Axes | 72 |
| Pitch (Spacing) | 20 mm |
| Protection Height | 1440 mm (72 × 20mm) |
| Output Type | OSSD (PNP, 24VDC) |
| Safety Level | Type 4 / SIL 3 / PLe |
GL-VM72HP EL1904 (TwinSAFE)
┌─────────────┐ ┌─────────────┐
│ OSSD1 (PNP) │─────────────►│ DI 3 │
│ OSSD2 (PNP) │─────────────►│ DI 4 │
│ 24V │◄─────────────│ 24V Supply │
│ 0V │◄─────────────│ 0V │
└─────────────┘ └─────────────┘
| Condition | OSSD1 | OSSD2 |
|---|---|---|
| Clear (No obstruction) | HIGH | HIGH |
| Blocked (Intrusion) | LOW | LOW |
| Fault | Discordant | - |
If muting is required (e.g., product passage):
| Parameter | Value |
|---|---|
| Model | NQ-EC8L |
| Ports | 8 × IO-Link / DI / DO |
| Protocol | EtherCAT (CoE) |
| IO-Link Version | 1.1 |
EK1100 → E1 Axis A → E1 Axis B → NQ-EC8L → (expansion)
File: Keyence_NQ-EC8L_R1_8508.xml
Installation:
C:\TwinCAT\3.1\Config\Io\EtherCAT\Each port can be configured as:
| Object | Name | Type |
|---|---|---|
| Port 1 Input | IO-Link data or DI | Variable |
| Port 2 Input | IO-Link data or DI | Variable |
| ... | ... | ... |
| Port 8 Input | IO-Link data or DI | Variable |
| Object | Name | Type |
|---|---|---|
| Port 1 Output | IO-Link data or DO | Variable |
| ... | ... | ... |
VAR
// From NQ-EC8L or direct wiring
bLightCurtain_OSSD1 AT %I* : BOOL;
bLightCurtain_OSSD2 AT %I* : BOOL;
// Derived signals
bLightCurtainOK : BOOL;
bLightCurtainFault : BOOL;
END_VAR
// Both OSSD must be HIGH for clear condition
bLightCurtainOK := bLightCurtain_OSSD1 AND bLightCurtain_OSSD2;
// Discordant signals indicate fault
bLightCurtainFault := bLightCurtain_OSSD1 XOR bLightCurtain_OSSD2;
// Safety interlock
IF NOT bLightCurtainOK THEN
// Trigger safety stop
bSafetyStop := TRUE;
END_IF
For simulation with Omniverse Isaac Sim:
| Symptom | Cause | Solution |
|---|---|---|
| OSSD always LOW | Alignment issue | Realign emitter/receiver |
| Intermittent triggers | Vibration/dust | Clean optics, check mounting |
| Discordant OSSD | Internal fault | Replace unit |
| Symptom | Cause | Solution |
|---|---|---|
| Not detected | Wrong ESI | Install correct ESI file |
| IO-Link error | Wrong IODD | Install sensor IODD |
| No data | Port mode wrong | Configure correct mode |
references/gl-vm72hp-specs.md - GL-VM72HP safety light curtain specificationsreferences/nq-ec8l-esi.md - NQ-EC8L EtherCAT ESI referencereferences/nq-ec8l-xml-analysis.md - Complete XML analysis of NQ-EC8L ESI file