Welcome to the Industrial Automation website!

NameDescriptionContent
XING-Automation
E-mail  
Password  
  
Forgot password?
  Register
当前位置:

KEYENCE XG-8000/7000 adds new features

F: | Au:FANS | DA:2026-05-20 | 6 Br: | 🔊 点击朗读正文 ❚❚ | Share:

Keyence XG-8000/7000 Series Image Processing System Ver. 5.1/4.2 New Features Practical Guide

In the field of industrial visual inspection, the Keyence XG-8000 series and XG-7000 series are renowned for their ultra-high speed, multi camera support, and flexible processing capabilities. With the firmware upgrade to Ver.5.1 (XG-8000) and Ver.4.2 (XG-7000), the system has added a large number of practical features, including 1D barcode reading unit, image stitching unit, PROFINET industrial Ethernet communication, enhanced calculation functions, additional data output for target classification, FTP image transmission, and German interface support. The addition of these functions enables the XG series to not only complete traditional positioning, measurement, and appearance inspection, but also directly read barcodes, stitch large field of view images, and exchange data with PLCs at high speed through PROFINET, greatly expanding its application scope in intelligent manufacturing and automation production lines.

This article starts from the perspective of on-site application by engineers, systematically sorting out the configuration methods, typical application scenarios, common problems, and solutions of these new features, helping users quickly get started and avoid pitfalls.


1D barcode reading unit: allowing the visual system to directly read barcodes

1.1 Function Overview

Before Ver. 5.1/4.2, the XG series mainly relied on 2D code reading units to process QR codes, etc. The newly added 1D code reading unit supports the following code systems:

CODE39 (does not support Full ASCII conversion)

CODE128 (does not support FNC2 linking characters)

EAN/JAN/UPC (including EAN-8/13, UPC-A/E, and 2-digit/5-digit additional codes)

This unit can output rich result data such as barcode reading string, center position (X/Y coordinates), deflection angle, minimum bar width (pixels/module), reading stability (level 5), reasons for reading errors, etc. It also supports comparison with preset reference strings to achieve dynamic date, time, and serial number verification.

1.2 Key parameter settings and optimization

Suggested values for parameter description

Barcode type CODE39/CODE128/EAN/UPC can be selected as needed

When the minimum bar width module width (in pixels) position correction is turned off, it should be ≥ 1.5 pixels; Color image+position correction ≥ 3.2 pixels

The sensitivity of contrast feature extraction is set to Normal by default, and low contrast can be adjusted to Low

Barcode color black background white stripe/white background black stripe/both take a long time, it is recommended to fix them

The expected barcode direction of the reference angle is horizontal at 0 °, which can adapt to rotation

The maximum time for decoding timeout and single recognition is set to 3 seconds by default, which can be adjusted according to the beat

1.3 Advanced Features: Data Segmentation and Fixed Length Output

Data segmentation: The read string can be divided into up to 8 segments based on the starting position and length. Each segment can be output separately and used for reference comparison, suitable for composite information (such as batch number+production date+serial number).

Fixed length output: If the number of characters read is less than the set length, the specified characters (such as underscores) can be automatically filled in, making it convenient for PLC to receive fixed length data blocks.

Symbol identifier: Barcode type identification defined by JIS X 0530 can be added (such as "] J0" representing CODE39) to facilitate downstream system recognition of the code system.

1.4 Auto Tune

Click the "Auto Tune" button, and the system will automatically analyze the barcode in the current image, setting the most suitable contrast, minimum bar width, length range, etc. Possible reasons for automatic tuning failure:

There are multiple barcodes in the inspection area (unable to specify which one to read)

Excessive background noise or extremely low barcode contrast

The timeout period is too short

Solution: Reduce the inspection area to ensure that only one barcode is included; Increase lighting or use filters; Increase the decoding timeout value appropriately.

1.5 Error Handling and Common Problems

Possible causes and solutions for the phenomenon

Unable to read bar width too small (<1.2 pixels) to increase camera resolution or zoom in on objects

Read unstable and insufficient contrast. Enable the "contrast conversion" filter or use RGB grayscale extraction

Misunderstanding barcode with no static area around, increasing the detection area edge blank, or using a position correction unit

If the decoding time exceeds the set value, increase the decoding timeout, or optimize the image quality to reduce the computational load

Image stitching unit (XG-8700/8700L only)

2.1 Principles and Limitations

The image stitching unit can stitch 2-4 monochrome images (source images) into a large image with a maximum of 4864 × 4864 pixels according to the specified reference position and result position. The merged image can be used for all subsequent detection tools, such as pattern search, edge detection, etc.

Limitations:

Only supports XG-8700/8700L (high-speed models)

Only supports monochrome images (color images cannot be stitched together)

The combined image size needs to be pre allocated with multiple camera type image variables

2.2 Configuration steps

Add image variables of the "multi camera" or "multi camera array" type in the variable settings, and set sufficient width and height (32 pixel multiplier width, 1 pixel multiplier height).

In the image stitching unit, specify for each source image:

Whether to participate in splicing (Include=Yes)

Source image variable

Reference position (point in the source image coordinate system, default to top left corner)

Result location (target coordinates in the final image)

Rotation angle (around reference point)

Set the result image variable.

Choose the overlapping area processing method: Max (take the brightest pixel) or Min (take the darkest pixel).

If smooth edge stitching is required, enable "interpolation processing" (which will increase computation time).

2.3 Typical Applications

Multiple cameras capture large-sized workpieces and combine them into a complete image for overall defect detection.

The line scan camera captures long images in segments and then concatenates them to avoid excessive data volume in a single capture.

2.4 Precautions

To ensure the accuracy of stitching, it is recommended to first perform distortion correction on each camera image (using a calibration unit) before stitching.

The spliced image can only be used as a monochrome image and cannot restore color information.

If there is an overlapping area between the source images, selecting an appropriate overlay mode can eliminate the seam.


PROFINET Communication: Making XG a True Industrial IoT Node

3.1 Overview of Supporting Features

XG series Ver. 5.1/4.2 now supports PROFINET IO, following Conformance Class A, and can achieve:

Loop communication: Exchange I/O data according to the update cycle (≥ 4ms), with a maximum of 1408 bytes.

Record data communication (non cyclic): Use RDREC/WRREC instructions to read and write up to 1024 bytes of data records.

Data output: The data output unit can directly write the measurement results into the PROFINET output buffer.

I/O control: Mapping system variables (such as external triggers, gating signals) to input/output of PROFINET bits, replacing physical wiring.

Command control: Execute custom instructions (such as switching programs, obtaining versions, reading and writing variables) through PROFINET.

Variable synchronization: Through the% InDataMieldbus [] array, internal variable values can be efficiently modified externally.

3.2 Configuration Process (Taking Siemens S7-300 as an Example)

XG side settings:

System Settings → Communication&I/O → PROFINET → Enable

Set the device name (such as "xg-8000") and IP address (on the same network segment as the PLC)

Choose data processing priority (recommend prioritizing "communication" to avoid timeouts)

Configure I/O address mapping: specify command function start address, data output start address, etc

Generate GSDML file: Use "Create GSDML file" on XG to generate a device description file and import it into STEP 7.

PLC side configuration:

Install GSDML file in HW Config and drag XG-8XXX into PROFINET IO system.

Set the device name to match the XG end, and the IP address can be automatically assigned.

Attention: Do not delete the Bit module (slots 1-5, 12-16), otherwise communication will be abnormal.

The update time and parameter/result byte module size can be adjusted as needed.

Download configuration and run: After both PLC and XG are restarted, the LINK LED flashes to indicate successful communication.

3.3 Data output and handshake

After selecting "PROFINET" as the device for the data output unit, offset address and handshake mode can be configured.

Handshake ON (recommended): After each output, set the Result ready flag to 1. After the PLC completes reading, set the Result ack flag to 1. Only after XG receives it, clear the ready flag and prepare for the next output. Avoid data being overwritten.

Handshake OFF: XG continues to overwrite output data, and the PLC needs to determine the validity of the data on its own.

FAQ:

The Result OR flag is always 0 → Confirm that the data output unit has output at least one data to PROFINET.

Data misalignment or overlap → Check the byte range occupied by offset addresses and command functions to avoid conflicts.

3.4 Command Control Practice

The process of executing commands through PROFINET:

Write the command code into the Command Number (such as PW representing program switching).

Write the parameters into Command Parameters 1-16.

Set the Command request flag.

Wait for the Command complete flag to become 1 and check if the Command error flag is 0.

Read Command Data (return value) and Command Result (0 successful).

Clear the Command request flag and prepare for the next command.

Example: Switch the program to the 11th

Command Number=2 (Custom PW Command Number)

Command Parameter1 = 11

After triggering the request, the program switch is completed.

3.5 Variable synchronization

By mapping% InDataMieldbus [0]~[n] to the byte address of PROFINET output data, PLC can directly modify XG internal user variables. The use of the 'InDataMieldbus sync inhibit flag' enables multiple variables to be updated simultaneously, preventing intermediate states from being read.

Enhancement of data output unit

4.1 Crop array data according to the number of detections

When outputting array results (such as the coordinates of multiple spots), even if no object is detected, the default value (such as 0) will still be output. After adding the option 'Use number of detected items to control outputting array data', the output quantity will be consistent with the actual detection quantity, avoiding the PLC from processing a large amount of useless data.

Applicable scenario: Detecting changes in the number of targets (such as different numbers of screws on different batches of parts).

4.2 FTP Server as Output Destination

The image output unit has added an FTP server option. The inspection images can be directly saved to a remote FTP server for central data archiving. Use in accordance with file name rules (automatic date and time or sequential numbering) to avoid overwriting.

Attention: Before use, it is necessary to configure the IP address, port, username and password of the FTP server in the system settings.


New functions added to the computing unit

Ver. 5.1/4.2 has added multiple utility functions to the computing unit:

Typical Applications of Function Functions

CalibInfo (P1, P2, CALIB [], CINFO []) calculates the field of view size, pixel resolution, camera rotation angle, and whether left or right hand conversion occurs based on calibration parameters and camera pixel size to convert pixel coordinates into actual physical coordinates

AngleTrans (D, P) converts angle values to a specified range (-179.9~180 ° or 0~359.9 °) for normalized angle output

UVWTrans (P1, P2, P3, P4 [], P5 [], UVW []) converts the relative displacement of the XY θ platform into the displacement of each axis of the UVW (three-axis) platform for platform alignment control

ClearVariables S/P/L/C and array versions reset the accumulator by resetting user variables to zero

ResetVariable S/P/L/C and array versions restore user variables to their initial values and preset values

These functions greatly enhance the flexibility of on-site custom calculations and reduce reliance on external PLCs or PCs.


Additional data for target classification

The target classification function (used to classify detected defects or objects) now allows for the addition of three additional user specified data items (such as processing times, defect area, variable values). Additional data will be displayed on the classification result interface and can be output together with the classification results.

Note: This feature is only available for XG-8000 series Ver.5.1, and once enabled, unit parameters cannot be saved in Ver.5.0 format.


Communication monitoring and diagnosis

7.1 EtherNet/IP Monitoring

Added the "EtherNet/IP Monitor&Diagnostics" tool, which allows real-time viewing of the bit and byte status of input/output data, and supports manual forced modification of output data for offline testing. Very suitable for troubleshooting communication data mismatch issues.

7.2 PROFINET Monitoring

Similarly, "PROFINET Monitor&Diagnostics" can view loop data, connection status, and diagnostic information. When communication is disconnected, "Disconnected" will be displayed here to help quickly locate the problem.


Shadow Correction (HSP)

The shadow correction filter has added a "Shading Correction (HSP)" mode. Compared to regular shadow correction, HSP suppresses partial correction effects and has a faster processing speed. Suitable for scenes with uneven lighting but high real-time requirements.


German language support

German (Deutsch) has been added to the system interface. Change "System Language" to German in the system settings and restart. In display templates and custom menus, you can specify German text by adding the prefix "<G>" before the text to achieve multilingual switching.


Summary of Common Problems and Solutions

Cause and solution of the problem

PROFINET cannot connect to the device name or IP address mismatch. Ensure that the XG device name matches the PLC configuration; Check if the IP is on the same subnet; Restart both devices

1D code reading timeout, poor barcode quality or too large area, reduced inspection area; Enable automatic tuning; Adjust lighting or lens focal length

After image stitching, there are jagged edges and interpolation is not used. Enable 'Use Interpolation'; If it still exists, check if the reference position is accurate

The number of data output arrays is incorrect and not enabled. Control by detection quantity. Check 'Use number of detected items...'

Variable synchronization update is not synchronized. The synchronization suppression flag is not set to InDataMieldbus sync inhibition flag. Write all variables and then clear the flag

The German character display garbled system language has not been switched to German and restarted to ensure language consistency during upload/download

  • B&R 3AT660 6 Thermocouple Input Module
  • Honeywell EC7850A1080 Programmable Logic Controller
  • Mitsubishi A2ACPU21 CPU Module MELSEC A Series
  • Mitsubishi R60ADH3FR Analog Input Module iQ R
  • ELMO WLWHIA20 100 Servo Drive Whistle Series
  • Omron CJ1W-MAD42 Analog I O Module PLC
  • Siemens A5E03894525 SINAMICS S120 Power Module
  • Omron K3HB-HTA-DRT1 Temperature Panel Meter
  • Keyence KV-8000SO Programmable Controller CPU Unit
  • Harris 8800-00002-02 PLC Power Control Center
  • Siemens 3TY7480-0A Auxiliary Contact Block
  • Omron 3G3MX2-AB022-ZV1 Inverter
  • ABB ACS380-040S-12A6-4 VFD
  • ATTO controlSYS ATTO-CPU44 PLC System
  • Allen‑Bradley 5069-L330ERMS3 CompactLogix PLC
  • Emerson VE4003S2B2 Terminal Module
  • SND ATS48D38Q Soft Starter
  • Omron CJ1W-MCH71 Motion Control Module
  • Siemens 3TK28060BB4 24VDC Contactor
  • Mitsubishi FR-D740-160-NA Inverter
  • PILZ 312070 PSSuniversal PLC Head Module
  • Omron CJ2M-CPU35 SYSMAC CJ Series PLC CPU
  • KISTLER 4734AWDY2X400S1 Force Displacement Indicator
  • Beckhoff CX2100-0904 Power Supply UPS Module
  • Siemens 6ES7 194-4AD00-0AA0 ET 200PRO IM 154-1 DP Module
  • Siemens 6FC5110-0DB02-0AA2 SINUMERIK MMC CPU Module
  • EDWAR 3-SDDC2CF Dual Circuit Card Control Module
  • ABB CI856K01 S100 I O Communication Module
  • Omron C200HW-PCS01-V2 PC Card Unit Module
  • Pilz 777150 PZE X5P 24VDC Safety Relay
  • Siemens 6SE6430-2AD31-1CA0 Inverter
  • Pilz 774340 Safety Relay
  • Kübler 8.5868.1231.3112 Encoder
  • Stromag 51 NE 451 DV MS Switch
  • Mitsubishi Q20UDEHCPU CPU Unit
  • CON-MAL P86402251-00 PCB Board
  • Panasonic MDMA102A1D Servo Motor
  • Omron OS32C-SN-4M Safety Scanner
  • Mitsubishi LD-30FTA Tension Controller
  • Siemens 7SP8014 Genop 23 S Relay
  • GE 151X1235DB15SA01 SPEEDTRONIC Mark VI High Performance Turbine Control Module
  • GE DS3800HIOC High-Level Input Output Board
  • GE DS3800NHVG High-Voltage Gate Driver Board
  • GE DS3800NB1A Power Supply Regulator Board
  • GE DS3815PAHB1A1A Processor Interface Board
  • Allen-Bradley 100-D300EA11 IEC Contactor 300A
  • Omron BY50S 500VA 300W Uninterruptible Power Supply
  • Mitsubishi NF630-CW 3P 600A Molded Case Circuit Breaker
  • CLA-2 4L PLC Control Electric Lubricating Oil Pump
  • Pilz 6Z000002 PSEN enc sincos 4096 hs Encoder
  • Siemens 6ES7317-2FK14-0AB0 CPU 317F-2PN/DP
  • Fuji NP1AYH8V-MR Analog Output Module MICREX-SX
  • Kistler DMF-P A300 NCF 4734AWDY2X400S1 Force Displacement Monitor
  • ABB Pluto S20 v2 CFS Safety PLC
  • Parker IQAN-XS2 Expansion Controller Module
  • ABB CI867AK01 PLC Module
  • FANUC A20B-2002-0520 Main Board
  • Mitsubishi A6BR10 Repeater Module
  • Siemens 3TY6480-0A Contact Kit
  • Servax CDD34.008 Servo Drive
  • Renesas R5F2134CXJFP Microcontroller
  • Siemens 6SL3210-1SE31-0AA0 Power Module
  • Mitsubishi LE-40MTA-E Tension Controller
  • B&R 4PP035.0300-01 Operation Panel
  • HRTL 96B M666.01S-S12 Inductive Proximity Sensor
  • Mitsubishi GT1455HS-QTBDE GOT1000 Touch Screen
  • Braids PLC-24/30/E2UK 25m PLC Connection Cable
  • Omron NX-PD7001 NX Series Power Supply Unit
  • Pro-face FP3900-T41-U PFXFP3900TA Operating Panel
  • Siemens 6GK5204-2BB10-2AA3 Industrial Ethernet Switch
  • Mitsubishi GT2310-VTBA GT2310-VTBD Graphic Operation Panel
  • PILZ 774400 PNOZ 24VDC 2NO 2NC Safety Relay
  • Siemens 6ES7315-2EH14-0AB0 CPU 315-2 PN/DP
  • ABB PLUTO B42 AS-i Safety Relay 2TLA020070R1400
  • Applied Materials 0010-12123 PLC Controller
  • Pilz 774595 PZE X5 Safety Relay
  • Siemens 6GA2 490-0A AVR
  • Keyence KV-10T Micro PLC
  • Siemens 6ES7331-7PF01-0AB0 Analog Input
  • Siemens 6SN1145-1BA02-0CA1 PLC
  • FANUC A16B-3200-0521 Main Board
  • Siemens 6SL3120-2TE21-0AD0 Motor Module
  • Pilz 828010 S1IM Safety Relay
  • TRICONEX 3601E Digital Output
  • TRICONEX 8312 Power Module
  • TRICONEX MA2211-100 Media Adapter
  • TRICONEX 3720 Analog Input Module
  • TRICONEX 7400213-100 Extender Module
  • TRICONEX 3000602-100 Chassis Assembly
  • TRICONEX 3722X Analog Input Module
  • Triconex 7400322-100 Trident CIM Base Plate
  • TRICONEX 3721 Analog Input Module
  • TRICONEX 3005 Processor Module
  • ABB 3BUS208720-001 Industrial Power Signal Interconnection Module
  • TMEIC KPAD-3122A LCD Display Keypad
  • Siemens 6SN1145-1BA02-0CA1 PLC
  • LAM 2004365 TURBO BYPASS PLC ASM
  • Omron CJ1W-CORT21 PLC Module
  • Euchner MGB-L2B-PNA-L-121853 Safety Switch
  • XPSMC32ZP Safety Controller
  • Schneider 9070T3000D33 PLC
  • Omron C200H-MAD01 AD DA Module
  • Omron NJ501-1320 CPU Controller
  • Honeywell C36TR1UA1000 Thermostat
  • Honeywell TC-RPDXX1 Power Supply Module
  • Fuji NW0E32-3 PLC Programmable Controller
  • ASM 2004219 Turbo Bypass ASM 107864 Module
  • Future IHDW-BLA4S-IM CNC MPG Handwheel
  • Wieland R1.180.0080.0 SA-OR-S1-4RK-A Safety Module
  • Reliance Electric 57C493 AutoMax Power Supply 376W
  • Siemens 3VT8563-2AA03-2KA2 MCCB 3VT8
  • B&R X20IF1072 CAN Bus Interface Module
  • Mitsubishi OSE253S2 Rotary Encoder
  • Mitsubishi NV630-SW 4P 500A Earth Leakage Breaker
  • Euchner MGB-L1B-PNA-R-121857 Safety Switch
  • Honeywell 900A01-0102 Analog Input Module
  • OMRON C500-ID219 Input Unit
  • Westinghouse EL3030R Current Limiter
  • CLA-2 3L Electric Lubrication Pump
  • Proface GP2501-TC41-24V HMI
  • Omron KM-N1-FLK Small Power Monitor
  • HPM 1D703-0040 Command 9000 Console Card
  • Siemens 3RW5074-6AB14 SIRIUS Soft Starter
  • Genie 75032 Limit Switch
  • OMRON C200H-SP001 Space Module
  • OMRON C200H-PS211 Power Supply Unit
  • OMRON C200H-OC222 Relay Output Unit
  • Keyence KV-8000SO 4221 CPU Module