0% found this document useful (0 votes)
92 views96 pages

LJ-V7000 Series Communication Library: Reference Manual

Manual

Uploaded by

Tien Anh Pham
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
92 views96 pages

LJ-V7000 Series Communication Library: Reference Manual

Manual

Uploaded by

Tien Anh Pham
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 96

376GB

LJ-V7000 Series Communication Library


Reference Manual

Please read this manual before use.


After reading this manual, store it in a safe place where it can be used at any time.
Contents
1 Software License Agreement.................................................................................................................. 5
2 Introduction .............................................................................................................................................. 6
3 Operating Environment ........................................................................................................................... 6
4 USB Driver ................................................................................................................................................ 6
5 File Structure............................................................................................................................................ 6
6 Incorporating the Library ........................................................................................................................ 7
6.1 File structure .................................................................................................................................... 7
6.2 Linking ............................................................................................................................................. 7
6.2.1 C++ .................................................................................................................................... 7
6.2.2 C#/VB.NET.......................................................................................................................... 7
7 Types......................................................................................................................................................... 7
8 Constant, Structure Definitions.............................................................................................................. 8
8.1 Constant definitions ......................................................................................................................... 8
8.2 Structure definitions....................................................................................................................... 11
8.3 Callback function interface definition ............................................................................................ 22
9 Functions................................................................................................................................................ 25
9.1 Function list.................................................................................................................................... 25
9.1.1 Operations for the DLL ..................................................................................................... 25
9.1.2 Establish/disconnect the communication path with the controller ................................... 25
9.1.3 System control.................................................................................................................. 25
9.1.4 Measurement control........................................................................................................ 25
9.1.5 Functions related to modifying or reading settings .......................................................... 26
9.1.6 Acquiring measurement results ....................................................................................... 26
9.1.7 Storage function related ................................................................................................... 27
9.1.8 High-speed data communication related......................................................................... 27
9.2 Function reference......................................................................................................................... 28
9.2.1 Operations for the DLL ..................................................................................................... 28
9.2.2 Establish/disconnect the communication path with the controller ................................... 29
9.2.3 System control.................................................................................................................. 29
9.2.4 Measurement control........................................................................................................ 31
9.2.5 Functions related to modifying or reading settings .......................................................... 33
9.2.6 Acquiring measurement results ....................................................................................... 37
9.2.7 Store function related ....................................................................................................... 41
9.2.8 High-speed data communication related......................................................................... 45
9.2.9 Supplement ...................................................................................................................... 47
10 Common Return Codes......................................................................................................................... 59
10.1 Return codes returned by the communication library ................................................................... 59
10.2 Return codes returned from the controller .................................................................................... 59
11 Sample Program .................................................................................................................................... 60
11.1 User interface specification........................................................................................................... 60
11.2 Save file format .............................................................................................................................. 63

LJ-V7000_COM_RM_E 3 376GB
12 Appendix................................................................................................................................................. 65
12.1 Sending/Receiving Settings .......................................................................................................... 65
12.2 Batch sending/receiving................................................................................................................ 66
12.3 Details of Items for Sending/Receiving Settings ........................................................................... 67
12.4 Examples of sending/receiving measurement mode settings....................................................... 87
13 Using the high-speed data communication command ...................................................................... 88
13.1 Preparation for high-speed data communication .......................................................................... 88
13.2 High-speed communication without using the batch setting ........................................................ 89
13.3 High-speed communication using the batch function .................................................................. 90
Revision History............................................................................................................................................ 94

4 LJ-V7000_COM_RM_E
1 Software License Agreement
NOTICE TO USER: PLEASE READ THIS SOFTWARE LICENSE AGREEMENT (THIS “AGREEMENT”)
CAREFULLY. BY USING ALL OR ANY PORTION OF THIS “SOFTWARE”, YOU ARE AGREEING TO BE
BOUND BY ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ANY
TERMS OF THIS AGREEMENT, DO NOT USE THIS SOFTWARE.

1. Grant of License.
Conditioned upon compliance with all of the terms and conditions of this Agreement, KEYENCE grants you a
nonexclusive and nontransferable license.

2. Restrictions
Except for installation of updates or new functions provided by KEYENCE, you may not modify or add any
function to this Software.
a) You may not reverse engineer, decompile or disassemble this Software.
b) You may not create derivative works based on this Software.
c) Other than expressly stated by KEYENCE, you may not resell, retransfer, rent or otherwise redistribute this
Software to any third parties. However, you may redistribute this Software with the application that you
developed using this Software.

3. Intellectual Property Rights.


Except as expressly stated herein, KEYENCE reserves all right, title and interest in this Software, and all
associated copyrights, trademarks, and other intellectual property rights therein.

4. Disclaimer.
Keyence is licensing this Software to you “AS IS” and without any warranty of any kind. In no event will
KEYENCE or its suppliers be liable to you for any damages, claims, costs or any lost profits caused by using
this Software.

5. Support
KEYNCE shall not provide technical support in accordance with this Software including the use of this
Software.

6. Termination.
6.1 Your license under this Agreement will terminate automatically if you destroy this Software and the
copy of this Software in your possession or voluntarily return this Software to us.
6.2 Your license under this Agreement will terminate automatically without any notice from KEYENCE if you
fail to comply with any of the terms and conditions of this Agreement. Promptly upon termination, you
shall cease all use of this Software and destroy all copies, full or partial, of this Software in your
possession or control.
6.3 You will compensate KEYENCE for costs or any lost profits caused by your violation or breach of any
term of this Agreement.

7. Governing Law.
This Agreement will be governed by and construed in accordance with the substantive laws of Japan without
regards to the principles of conflicts of law.

LJ-V7000_COM_RM_E 5
2 Introduction
The LJ-V7000 Series communication library provides a communication interface for controlling the LJ-V7000
Series from a user application (Win32 DLL). For specific ways to use the communication library, refer to the
sample program.

3 Operating Environment
Windows 10 (Home/Pro/Enterprise)
Windows 7 (SP1 or later) (Home Premium/Professional/Ultimate)
OS
Windows Vista (SP2 or later) (Home Basic/Home Premium/Business/Ultimate)
Windows XP (SP3 or later) (Home Edition/Professional Edition)
CPU Core i3 2.3 GHz or faster
Memory 2 GB or more
Secondary cache
2 MB or more
memory
Free drive space 10 GB or more
A PC equipped with either of the interfaces below.
Interface
USB 2.0/1.1 *1, Ethernet 1000BASE-T/100BASE-TX *2
*1 Operation is not guaranteed with connections via a USB hub
*2 Operation is not guaranteed with connections to a LAN or via a router

3.1 Execution environment


This section describes the necessary environment to execute applications that use the LJ-V7000 Series
communication library.
3.1.1 Microsoft C runtime library
The Microsoft C runtime library is required for the DLL to operate.
Run vcredist_x86.exe included on the installation media to install the library.
3.1.2 Microsoft .NET Framework
The Microsoft .NET Framework is required to run the sample application.
Run NetFx20SP2_x86.exe included on the installation media to install the library.

4 USB Driver
Install and use LJ-Navigator2 for the USB driver.

5 File Structure
LJV7_IF.dll The DLL.
LJV7_IF.lib The import library for LJV7_IF.dll.
LJV7_ErrorCode.h The header file that defines the error codes.
LJV7_IF.h The header file that defines the LJV7_IF.dll interface.
The folder for the sample source code.
Source
The source code for the sample program created in C#.

6 LJ-V7000_COM_RM_E
6 Incorporating the Library
6.1 File structure
The files required at execution are listed below.
Place these folders/files in the same folder as the executable file.
• LJV7_IF.dll

6.2 Linking
6.2.1 C++
6.2.1.1 Linking
The library can be linked implicitly or explicitly.
To implicitly link the library, link with "LJV7_IF.lib".
* "LJV7_IF.lib" was built with Visual C++ 2008 SP1.

6.2.1.2 Include files


Include the following header files in the necessary source files.
• LJV7_IF.h
• LJV7_ErrorCode.h

6.2.2 C#/VB.NET
Call each interface using the DllImport attribute.
When passing a structure as an interface argument, specify the StructLayout attribute and pass a structure
of the same memory structure as the DLL.
For details, refer to the NativeMethods class (NativeMethods.cs) in the sample.
The processing to call each function has been implemented.

7 Types
In this document, variable types are described according to the following definitions.

CHAR Signed 8-bit integer


BYTE Unsigned 8-bit integer
SHORT Signed 16-bit integer
WORD Unsigned 16-bit integer
LONG Signed 32-bit integer
DWORD Unsigned 32-bit integer
FLOAT Single precision floating point number (32 bits)
DOUBLE Double precision floating point number (64 bits)

LJ-V7000_COM_RM_E 7
8 Constant, Structure Definitions
8.1 Constant definitions
Name Setting value storage level designation
Typedef enum {
LJV7IF_SETTING_DEPTH_WRITE = 0x00, // Write settings area
Definition LJV7IF_SETTING_DEPTH_RUNNING = 0x01, // Running settings area
LJV7IF_SETTING_DEPTH_SAVE = 0x02 // Save area
} LJV7IF_SETTING_DEPTH;
This enumeration designates the operation target level in functions that modify or read
Description settings. For details on the setting value storage level, refer to "9.2.9.3 Write processing for
settings".
The controller retains three sets of settings data.
Those levels are used in the applications below.
Write settings area
Settings that do not affect operation.
In order to not allow an error in controller operations from inconsistencies in settings that
occur temporarily when changing multiple settings, the operation of the controller can be
Comment changed without causing an error by reflecting the settings from this area to the running
settings area after writing the settings to this area.
Running settings area
The settings the controller is using in its operation.
When the controller starts, this area is initialized with the settings in the save area.
Save area
The settings that are saved even when the controller's power is turned off.

Name Initialization target setting item designation


Typedef enum {
LJV7IF_INIT_SETTING_TARGET_PRG0 = 0x00, // Program 0
LJV7IF_INIT_SETTING_TARGET_PRG1 = 0x01, // Program 1
LJV7IF_INIT_SETTING_TARGET_PRG2 = 0x02, // Program 2
LJV7IF_INIT_SETTING_TARGET_PRG3 = 0x03, // Program 3
LJV7IF_INIT_SETTING_TARGET_PRG4 = 0x04, // Program 4
LJV7IF_INIT_SETTING_TARGET_PRG5 = 0x05, // Program 5
LJV7IF_INIT_SETTING_TARGET_PRG6 = 0x06, // Program 6
LJV7IF_INIT_SETTING_TARGET_PRG7 = 0x07, // Program 7
Definition
LJV7IF_INIT_SETTING_TARGET_PRG8 = 0x08, // Program 8
LJV7IF_INIT_SETTING_TARGET_PRG9 = 0x09, // Program 9
LJV7IF_INIT_SETTING_TARGET_PRG10 = 0x0A, // Program 10
LJV7IF_INIT_SETTING_TARGET_PRG11 = 0x0B, // Program 11
LJV7IF_INIT_SETTING_TARGET_PRG12 = 0x0C, // Program 12
LJV7IF_INIT_SETTING_TARGET_PRG13 = 0x0D, // Program 13
LJV7IF_INIT_SETTING_TARGET_PRG14 = 0x0E, // Program 14
LJV7IF_INIT_SETTING_TARGET_PRG15 = 0x0F, // Program 15
} LJV7IF_INIT_SETTING_TARGET;
Description This enumeration designates which settings to initialize in settings initialization function.
Comment -

8 LJ-V7000_COM_RM_E
Name Definition that indicates the validity of a measurement value
Typedef enum {
LJV7IF_MEASURE_DATA_INFO_VALID = 0x00, // Normal measurement data
Definition LJV7IF_MEASURE_DATA_INFO_ALARM = 0x01, // Measurement alarm data
LJV7IF_MEASURE_DATA_INFO_WAIT = 0x02 // Judgment wait data
} LJV7IF_MEASURE_DATA_INFO;
Description This enumeration indicates the validity or invalidity of the measurement value.
Comment -

Name Definition that indicates the tolerance judgment result of the measurement value
Typedef enum {
LJV7IF_JUDGE_RESULT _HI = 0x01, // HI
Definition LJV7IF_JUDGE_RESULT _GO = 0x02, // GO
LJV7IF_JUDGE_RESULT _LO = 0x04 // LO
} LJV7IF_JUDGE_RESULT;
This enumeration indicates the tolerance judgment result for the measurement value in bit
Description
units.
If the measurement value is measurement alarm data, the judgment result is 0x05 (both HI
Comment
and LO bits are 1).

Name Get profile target buffer designation


Typedef enum {
LJV7IF_PROFILE_BANK_ACTIVE = 0x00, // Active surface
Definition
LJV7IF_PROFILE_BANK_INACTIVE = 0x01 // Inactive surface
} LJV7IF_PROFILE_BANK;
When the memory allocation is "double buffer" in the get profile command, this enumeration
Description
designates which surface to get the profiles from.
"Active surface" refers to the surface of the buffer that profile data is being written onto. For
Comment
further details, refer to "9.2.9.2 Internal memory".

Name Get profile position specification method designation (batch measurement: off)
Typedef enum {
LJV7IF_PROFILE_POS_CURRENT = 0x00, // From current
Definition LJV7IF_PROFILE_POS_OLDEST = 0x01, // From oldest
LJV7IF_PROFILE_POS_SPEC = 0x02, // Specify position
} LJV7IF_PROFILE_POS;
In the get profile command, this enumeration indicates the specification method for the
profiles to get out of the profile data retained in the controller. In get profile, the profiles are
stored from oldest to newest.
From current
Gets the current profiles.
The end of the acquired profiles becomes the current profile.
Description
From oldest
Gets the oldest profile.
The head of the acquired profiles becomes the oldest profile.
Specify position
Gets the specified number of profiles from the specified profile position.
The head of the acquired profiles becomes the profiles at the specified position.
Comment For the specified number of profiles, refer to the individual structure definitions.

LJ-V7000_COM_RM_E 9
Name Get profile batch data position specification method designation (batch measurement: on)
Typedef enum {
LJV7IF_BATCH_POS_CURRENT = 0x00, // From current
LJV7IF_BATCH_POS_SPEC = 0x02, // Specify position
Definition LJV7IF_BATCH_POS_COMMITED = 0x03, // From current after batch
commitment
LJV7IF_BATCH_POS_CURRENT_ONLY = 0x04 // Current only
} LJV7IF_BATCH_POS;
In the get batch profile command, this enumeration indicates the specification method for the
profiles to get in what batch out of the batch data retained in the controller. In get profile, the
profiles are stored from oldest to newest.
From current
Gets the profiles in the current batch data.
Description Specify position
Gets the profiles in the batch data with the specified number.
From current after batch commitment
Gets the profiles in the current batch data after commitment.
Current only
Gets one current profile in the current batch data.
Comment For the specified number of profiles, refer to the individual structure definitions.

Name Number of OUT settings


Definition Const static LONG LJV7IF_OUT_COUNT = 16;
Description This constant indicates the number of OUT settings.
Comment -

Name Number of simultaneously connectable controllers


Definition Const static LONG LJV7IF_DEVICE_COUNT = 6;
This constant is the upper limit for the number of controllers that can simultaneously
Description
communicate.
Comment -

10 LJ-V7000_COM_RM_E
8.2 Structure definitions

Name Ethernet settings structure


Typedef struct {
BYTE abyIpAddress[4];
Definition WORD wPortNo;
BYTE reserve[2];
} LJV7IF_ETHERNET_CONFIG;
This structure contains the settings passed during an Ethernet communication connection.
abyIpAddress
The IP address of the controller to connect to.
For 192.168.0.1:
Description
Set abyIpAddress[0]=192, abyIpAddress[1]=168,
and so on.
wPortNo(in)
The port number of the controller to connect to.
Comment -

Name Date/time structure


Typedef struct {
BYTE byYear;
BYTE byMonth;
BYTE byDay;
Definition BYTE byHour;
BYTE byMinute;
BYTE bySecond;
BYTE reserve[2];
} LJV7IF_TIME;
The date/time for the controller.

byYear Year. Set from 0 to 99, which means 2000 to 2099.


byMonth Month.1 to 12.
Description
byDay Day.1 to 31.
byHour Hour.0 to 23.
byMinute Minute.0 to 59.
bySecond Second.0 to 59.
Comment -

LJ-V7000_COM_RM_E 11
Name Setting item designation structure
Typedef struct {
BYTE byType;
BYTE byCategory;
BYTE byItem;
BYTE reserve;
Definition
BYTE byTarget1;
BYTE byTarget2;
BYTE byTarget3;
BYTE byTarget4;
} LJV7IF_TARGET_SETTING;
Information for specifying target setting items.
byType, byCategory, byItem
When modifying or reading a setting, these variables are used to specify the target setting
item.
Description
byTarget1, byTarget2, byTarget3, byTarget4
These variables are used when specifying further details for the setting item.
For example, when configuring OUT measurement mode, these are used to specify the
OUT number.
Comment For details, see the appendix.

Name Measurement results structure


Typedef struct {
BYTE byDataInfo;
BYTE byJudge;
Definition
BYTE reserve[2];
FLOAT fValue;
} LJV7IF_MEASURE_DATA;
Measurement value and judgment results.
byDatainfo
This variable indicates whether or not the measurement value (fValue) is valid, and if it is
not a valid value, what kind of data it is. See LJV7IF_MEASURE_DATA_INFO.
byJudge
Tolerance judgment result. See LJV7IF_JUDGE_RESULT.
Description fValue
Measurement value. The unit used for measurement values is the minimum display unit
set for Target OUT in program settings.
When the minimum display unit is 1 mm to 0.001 mm, the measurement value unit is [mm].
When 1 um to 0.1 um, the measurement value unit is [um]. The unit for sectional areas is
mm2, and the unit for angles is deg.
When not a valid value, a large negative value is stored (-1010).
Comment -

12 LJ-V7000_COM_RM_E
Name Profile information structure
Typedef struct {
BYTE byProfileCnt;
BYTE byEnvelope;
BYTE reserve[2];
Definition WORD wProfDataCnt;
BYTE reserve2[2];
LONG lXStart;
LONG lXPitch;
} LJV7IF_PROFILE_INFO;
Information related to the profile.
byProfileCnt
Wheter dicates the amount of profile data stored.
(When 2 head/combine (wide) is off, 2 profile data units is stored, otherwise 1 profile data
unit is stored.)
byEnvelope
Whether profile compression (time axis) is on.
Description 0: off, 1: on.
wProfDataCnt
Profile data count (initial setting: 800).
lXStart
1st point X coordinate.
lXPitch
Profile data X direction interval.
Comment lXStart and lXPitch are stored in 0.01 μm units.

Name Profile header information structure


Typedef struct {
DWORD reserve;
DWORD dwTriggerCnt;
Definition
DWORD dwEncoderCnt;
DWORD reserve2[3];
} LJV7IF_PROFILE_HEADER;
The header information added to the profile.
reserve
7th bit: Indicates whether the encoder's Z phase has been entered. (*)
㪤㪪㪙 㸣 㪣㪪㪙
㪊㪈 㵺 㪎 㪍 㪌 㪋 㪊 㪉 㪈 㪇
Description
dwTriggerCnt
Indicates which number trigger from the start of measurements this profile is.
(Trigger counter) The first number is 0.
dwEncoderCnt
The encoder count when the trigger was issued.
(Encoder counter) The first number is 0.
Other than when settings are modified or the program is switched, the trigger counter and the
encoder counter are reset at the following times.
Comment • When the memory is cleared in high-speed mode (profile only)
• When laser emission stops and is restarted with the LASER_OFF terminal
• When laser emission is allowed after it was prohibited with the REMOTE terminal
*: About the Z-phase flag
This flag can be used when the controller is version 3.0 or later.
This flag is turned ON when Z-phase ON input is received during the period between the previous trigger input (or the start of
measurement if there was no previous trigger input) and the current trigger input.

LJ-V7000_COM_RM_E 13
Example: Single phase 1x multiplier encoder trigger with no skipping

A phase ON
OFF

Z phase ON
OFF

Encoder count 1 2 3 4 5
Z-phase flag OFF ON ON OFF ON

Note: When the Z-phase input uses a negative logic encoder, set the TRG minimum input time, which is a common measurement
setting, to 7 μs. With negative logic, the Z-phase flag turns ON as shown in the following figure.

A phase ON
OFF

Z phase ON
OFF

Encoder count 1 2 3 4 5
Z-phase flag OFF ON ON OFF OFF

Name Profile footer information structure


Typedef struct {
Definition DWORD reserve;
} LJV7IF_PROFILE_FOOTER;
The footer information added to the profile.
Description
None (reserved only).
Comment -

Name High-speed mode get profile request structure (batch measurement: off)
Typedef struct {
BYTE byTargetBank;
BYTE byPosMode;
BYTE reserve[2];
Definition DWORD dwGetProfNo;
BYTE byGetProfCnt;
BYTE byErase;
BYTE reserve[2];
} LJV7IF_GET_PROFILE_REQ;
The get profile designation information when the operation mode is "high-speed (profile only)"
and batch measurements are off in the get profile command.
byTargetBank
Specifies whether to get the profiles from the active surface or whether to get the profiles
from the inactive surface. See LJV7IF_PROFILE_BANK. (P.9)
byPosMode
Specifies the get profile position specification method. See LJV7IF_PROFILE_POS.

Description dwGetProfNo
When byPosMode is LJV7IF_PROFILE_POS_SPEC, specifies the profile number for the
profile to get. The first profile number is 0.
byGetProfCnt
The number of profiles to read.
byErase
Specifies whether or not to erase the profile data that was read and the profile data older
than that.
0: Do not erase, 1: erase
If the communication buffer is insufficient, the number of profiles specified by byGetProfCnt
Comment may not be acquired. In this situation, the maximum number of profiles that can be acquired
is returned.

14 LJ-V7000_COM_RM_E
Name High-speed mode get profile request structure (batch measurement: on)
Typedef struct {
BYTE byTargetBank;
BYTE byPosMode;
BYTE reserve[2];
DWORD dwGetBatchNo;
Definition
DWORD dwGetProfNo;
BYTE byGetProfCnt;
BYTE byErase;
BYTE reserve[2];
} LJV7IF_GET_BATCH_PROFILE_REQ;
The get profile designation information when the operation mode is "high-speed (profile only)"
and batch measurements are on in the get profile command.
byTargetBank
Specifies whether to get the profiles from the active surface or whether to get the profiles
from the inactive surface. See LJV7IF_PROFILE_BANK. (P.9)
byPosMode
Specifies the get profile position specification method. See LJV7IF_BATCH_POS.
dwGetBatchNo
When byPosMode is LJV7IF_BATCH_POS_SPEC, specifies the batch number for the
Description profile to get. The first batch number is 0.
dwGetProfNo
Specifies the profile number to start getting profiles from in the specified batch number.
The first profile number is 0.
byGetProfCnt
The number of profiles to read.
byErase
Specifies whether or not to erase the batch data that was read and the batch data older
than that.
0: Do not erase, 1: erase
If the communication buffer is insufficient, the number of profiles specified by byGetProfCnt
Comment may not be acquired. In this situation, the maximum number of profiles that can be acquired
is returned.

LJ-V7000_COM_RM_E 15
Name Advanced mode get profile request structure (batch measurement: on)
Typedef struct {
BYTE byPosMode;
BYTE reserve[3];
DWORD dwGetBatchNo;
Definition
DWORD dwGetProfNo;
BYTE byGetProfCnt;
BYTE reserve[3];
} LJV7IF_GET_BATCH_PROFILE_ADVANCE_REQ;
The get profile designation information when the operation mode is "advanced (with OUT
measurement)" and batch measurements are on in the get batch profile command.
byPosMode
Specifies the get profile position specification method. See LJV7IF_BATCH_POS.
dwGetBatchNo
Description When byPosMode is LJV7IF_BATCH_POS_SPEC, specifies the batch number for the
profiles to get. The first batch number is 0.
dwGetProfNo
Specifies the profile number for the profiles to get.
byGetProfCnt
The number of profiles to read. The first profile number is 0.
If the communication buffer is insufficient, the number of profiles specified by byGetProfCnt
Comment may not be acquired. In this situation, the maximum number of profiles that can be acquired
is returned.

Name High-speed mode get profile response structure (batch measurement: off)
Typedef struct {
DWORD dwCurrentProfNo;
DWORD dwOldestProfNo;
Definition DWORD dwGetTopProfNo;
BYTE byGetProfCnt;
BYTE reserve[3];
} LJV7IF_GET_PROFILE_RSP;
The profile information returned for the get profiles command when the operation mode is
"high-speed (profile only)" and batch measurements are off.
dwCurrentProfNo
The profile number at the current point in time.
dwOldestProfNo
Description
The profile number for the oldest profile held by the controller.
dwGetTopProfNo
The profile number for the oldest profile out of those that were read this time.
byGetProfCnt
The number of profiles that were read this time.
Comment -

16 LJ-V7000_COM_RM_E
Name High-speed mode get profile response structure (batch measurement: on)
Typedef struct {
DWORD dwCurrentBatchNo;
DWORD dwCurrentBatchProfCnt;
DWORD dwOldestBatchNo;
DWORD dwOldestBatchProfCnt;
DWORD dwGetBatchNo;
Definition
DWORD dwGetBatchProfCnt;
DWORD dwGetBatchTopProfNo;
BYTE byGetProfCnt;
BYTE byCurrentBatchCommited;
BYTE reserve[2];
} LJV7IF_GET_BATCH_PROFILE_RSP;
The profile information returned for the get profiles command when the operation mode is
"high-speed (profile only)" and batch measurements are on.
dwCurrentBatchNo
The batch number at the current point in time.
dwCurrentBatchProfCnt
The number of profiles in the newest batch.
dwOldestBatchNo
The batch number for the oldest batch held by the controller.
dwOldestBatchProfCnt
The number of profiles in the oldest batch held by the controller.

Description dwGetBatchNo
The batch number that was read this time.
dwGetBatchProfCnt
The number of profiles in the batch that was read this time.
dwGetBatchTopProfNo
Indicates what number profile in the batch is the oldest profile out of the profiles that were
read this time.
byGetProfCnt
The number of profiles that were read this time.
byCurrentBatchCommited
Indicates if the batch measurements for the newest batch number has finished.
0: Not finished, 1: finished
Comment -

LJ-V7000_COM_RM_E 17
Name Advanced mode get profile response structure (batch measurement: on)
Typedef struct {
DWORD dwGetBatchNo;
DWORD dwGetBatchProfCnt;
Definition DWORD dwGetBatchTopProfNo;
BYTE byGetProfCnt;
BYTE reserve[3];
} LJV7IF_GET_BATCH_PROFILE_ADVANCE_RSP;
The profile information returned for the get profiles command when the operation mode is
"advanced mode (with OUT measurement)" and batch measurements are on.
dwGetBatchNo
The batch number that was read this time.
dwGetBatchProfCnt
Description The number of profiles in the batch that was read this time.
dwGetBatchTopProfNo
Indicates what number profile in the batch is the oldest profile out of the profiles that were
read this time.
byReadProfCnt
The number of profiles that were read this time.
Comment -

Name Get storage status request structure


Typedef struct {
Definition DWORD dwReadArea;
}LJV7IF_GET_ STRAGE_STATUS_REQ;
Get target designation information in the get storage status command.
dwReadArea
The storage surface to read.
Description • When the memory allocation setting is "double buffer"
0: Active surface, 1: Surface A, 2: Surface B
• When the memory allocation setting is "entire area (overwrite)", fixed as 1
• When the memory allocation setting is "entire area (do not overwrite)"
0: Active surface, surface specification (1 to 999)
"Active surface" refers to the surface of the buffer that profile data is being written onto. For
Comment
further details, refer to "9.2.9.2 Internal memory".

Name Get storage status response structure


Typedef struct {
DWORD dwSurfaceCnt;
Definition
DWORD dwActiveSurface;
} LJV7IF_GET_STRAGE_STATUS_RSP;
The storage status information returned for the get storage status command.
dwSurfaceCnt
Storage surface count
Description
dwActiveSurface
The active storage surface.
When the active program has storage off, 0.
For details about "Storage surface", refer to "9.2.9.2.2 For operation mode: advanced (with
Comment
OUT measurement)".

18 LJ-V7000_COM_RM_E
Name Storage information structure
Typedef struct {
BYTE byStatus;
BYTE byProgramNo;
Definition BYTE byTarget;
BYTE reserve[5];
DWORD dwStorageCnt;
} LJV7IF_ STORAGE_INFO;
Information related to the storage status.
byStatus
Storage status.
0: Empty (Takes on this value when the target surface has not operated even once in a
program with storage on)
1: There is still space to store data in the internal memory.
2: The internal memory is full and data cannot be stored.
Description byProgramNo
The program number for the relevant storage surface.
byTarget
Storage target.0: Data storage, 2: profile storage, 3: batch profile storage.
However, when batch measurements are on and profile compression (time axis) is on, 2:
profile storage is stored.
dwStorageCnt
Storage count (batch count when batch is on)
For details about "Storage surface", refer to "9.2.9.2.2 For operation mode: advanced (with
Comment
OUT measurement)".

Name Get storage data request structure


Typedef struct {
BYTE reserve[4];
DWORD dwSurface;
Definition
DWORD dwStartNo;
DWORD dwDataCnt;
} LJV7IF_GET_STORAGE_REQ;
The get data designation information in the get data storage data command and the get
profile storage data command.
dwSurface
The storage surface to read.
• When the memory allocation setting is "double buffer"
0: Active surface, 1: Surface A, 2: Surface B
Description • When the memory allocation setting is "entire area (overwrite)", fixed as 1
• When the memory allocation setting is "entire area (do not overwrite)"
0: Active surface, surface specification (1 to 999)
dwStartNo
The data number to start reading. The first storage data entry number is 0.
dwDataCnt
The number of items to read.
For details about "Storage surface", refer to "9.2.9.2.2 For operation mode: advanced (with
Comment
OUT measurement)".

LJ-V7000_COM_RM_E 19
Name Get batch profile storage request structure
Typedef struct {
BYTE reserve[4];
DWORD dwSurface;
DWORD dwGetBatchNo;
Definition
DWORD dwGetBatchTopProfNo;
BYTE byGetProfCnt;
BYTE reserved[3];
} LJV7IF_GET_BATCH_PROFILE_STORAGE_REQ;
Get data designation information in the get batch storage data command.
dwSurface
Storage surface to read.
dwGetBatchNo
Description Batch number to read. The first batch number is 0.
dwGetBatchTopProfNo
Specifies from what profile number in the batch to get the data. The first profile number is 0.
byGetProfCnt
The number of profiles to read.
For details about "Storage surface", refer to "9.2.9.2.2 For operation mode: advanced (with
Comment
OUT measurement)".

Name Get storage data response structure


Typedef struct {
DWORD dwStartNo;
Definition DWORD dwDataCnt;
LJV7IF_TIME stBaseTime;
} LJV7IF_GET_STORAGE_RSP;
The get data information returned for the get storage data command and the get profile
storage command.
dwStartNo
The data number to start reading.
Description
dwDataCnt
The number of items to read.
stBaseTime
Base time.
Comment For details about base time, refer to "9.2.9.9 Time data added to storage data".

20 LJ-V7000_COM_RM_E
Name Get batch profile storage response structure
Typedef struct {
DWORD dwGetBatchNo;
DWORD dwGetBatchProfCnt;
DWORD dwGetBatchTopProfNo;
Definition
BYTE byGetProfCnt;
BYTE reserve[3];
LJV7IF_TIME stBaseTime;
} LJV7IF_GET_BATCH_PROFILE_STORAGE_RSP;
The get data information returned for the get batch profile storage command.
dwGetBatchNo
The batch number that was read this time.
dwGetBatchProfCnt
The number of profiles in the batch that was read this time.

Description dwGetBatchTopProfNo
Indicates what number profile in the batch is the oldest profile out of the profiles that were
read this time.
byGetProfCnt
The number of profiles that were read this time.
stBaseTime
Base time.
Comment -

Name High-speed communication prep start request structure


Typedef struct {
BYTE bySendPos;
Definition
BYTE reserve[3];
} LJV7IF_HIGH_SPEED_PRE_START_REQ;
High-speed communication start preparation request command

Description bySendPos
Send start position. 0: From previous send complete position (from oldest data if 1st time),
1: From oldest data (reacquire), 2: From next data
Comment -

LJ-V7000_COM_RM_E 21
8.3 Callback function interface definition

void (*pCallBack)(
Format BYTE* pBuffer, DWORD dwSize, DWORD dwCount, DWORD dwNotify, DWORD
dwUser);
pBuffer(in)
A pointer to the buffer that stores the profile data.
The profile data is stored in this buffer with "LJV7IF_PROFILE_HEADER - signed 32-bit
profile data - LJV7IF_PROFILE_FOOTER" as a single unit of profile data, and only the
number of profiles that could be acquired (dwCount) are returned.
dwSize(in)
The size in BYTEs per single unit of the profile "LJV7IF_PROFILE_HEADER - signed 32-
bit profile data - LJV7IF_PROFILE_FOOTER" contained in pBuffer.
Parameters
dwCount(in)
The number of profiles stored in pBuffer.
dwNotify(in)
Notification of an interruption in high-speed communication or a break in batch
measurements.
For details, see "8.3.1 Supplement".
dwUser(in)
User information set when high-speed communication was initialized.
Return
None
value
When using the high-speed communication function, this callback function is called when
data is received and when there is a change in the communication state.
This callback function is called from a thread other than the main thread.
Take care to only implement storing profile data in a thread save buffer in the callback
Explanation function. As the thread used to call the callback function is the same as the thread used to
receive data, the processing time of the callback function affects the speed at which data
is received, and may stop communication from being performed properly in some
environments. Refer to the sample program for details.
Profile data is stored in 0.01 μm units.

22 LJ-V7000_COM_RM_E
8.3.1 Supplement
8.3.1.1 dwNotify parameter
This section describes the dwNotify parameter used in the callback function.
In high-speed communication, the callback function is called when any number of events occur, in
addition to when profile data is received. These events can be checked with the dwNotify
parameter.
dwNotify = 0: Indicates that profile data is being communicated correctly. Refer to the table below
for values other than 0.

: May be returned. Batch Batch


: Will not be returned. off on
LSB 0 Continuous send was stopped (stop by command)  
1 Continuous send was stopped (automatic stop) *1  
2 *2  
Continuous send was stopped (automatic stop)
3 Reserved
4 Reserved
5 Reserved
6 Reserved
7 Reserved
8 Send interrupted by clear memory  
9 Reserved
10 Reserved
11 Reserved
12 Reserved
13 Reserved
14 Reserved
15 Reserved
16 Finished sending the batch measurement amount of data *3  
17 Reserved
18 Reserved
19 Reserved
20 Reserved
21 Reserved
22 Reserved
23 Reserved
24 Reserved
25 Reserved
26 Reserved
27 Reserved
28 Reserved
29 Reserved
30 Reserved
MSB 31 Reserved

*1 The setting was modified


*2 The program was switched
*3 However, when REMOTE OFF/LASER OFF is turned ON, profiles up to the one currently
being sent are forwarded, so some of the batch measurement data may not be forwarded.

LJ-V7000_COM_RM_E 23
Bit 0 to 2 and bit 8 indicate that continuous send was stopped.
To restart continuous send, start the high-speed data communication in the following order:
"Finalize high-speed data communication"  "Disconnect ethernet communication"  "Start
ethernet communication"  "Initialize ethernet high-speed communication"  "Request preparation
for Ethernet high-speed data communication".
Bit 16 is only valid when batch measurements are on.
When batch measurements are on, the batch measurements can be ended even when the
configured batch count is not fulfilled. Therefore, the callback function is notified with this bit on in
order to determine the break in batch data.

24 LJ-V7000_COM_RM_E
9 Functions
9.1 Function list

9.1.1 Operations for the DLL


These functions are processed normally even when the controller is in the system error state.

Function name Overview


LJV7IF_Initialize Initializes the DLL
LJV7IF_Finalize Performs the termination processing for the DLL
LJV7IF_GetVersion Gets the DLL version

9.1.2 Establish/disconnect the communication path with the controller


These functions are processed normally even when the controller is in the system error state.

Function name Overview


LJV7IF_UsbOpen Establishes a USB connection
LJV7IF_EthernetOpen Establishes an Ethernet connection
Disconnects the connection (both USB and
LJV7IF_CommClose
Ethernet)

9.1.3 System control


Excluding LJV7IF_RetrunToFactorySetting, these functions are processed normally even when the controller
is in the system error state. LJV7IF_RetrunToFactorySetting may fail in the system error state (when a head is
not connected, etc.).

Function name Overview


LJV7IF_RebootController Reboots the controller
LJV7IF_RetrunToFactorySetting Returns the controller to the factory settings
LJV7IF_GetError Gets the controller system error information
LJV7IF_ClearError Clears the controller system error

9.1.4 Measurement control


Processing for these functions fails when the controller is in the system error state.

Function name Overview


LJV7IF_Trigger Issues a trigger
LJV7IF_StartMeasure Starts measurements
LJV7IF_StopMeasure Stops measurements
LJV7IF_AutoZero Issues auto zero
LJV7IF_Timing Issues timing
LJV7IF_Reset Issues a reset
LJV7IF_ClearMemory Clears the internal memory

LJ-V7000_COM_RM_E 25
9.1.5 Functions related to modifying or reading settings
Processing for these functions fails when the controller is in the system error state.

Function name Overview


LJV7IF_SetSetting Sends a setting to the controller
LJV7IF_GetSetting Gets a setting from the controller
LJV7IF_InitializeSetting Initializes a controller setting
Reflects the contents of the write settings area in
LJV7IF_ReflectSetting
the running settings area and the save area
Overwrites the contents of the write settings area
LJV7IF_RewriteTemporarySetting with the settings in the running settings area and
the save area
Checks whether or not settings are being saved to
LJV7IF_CheckMemoryAccess
the save area
LJV7IF_SetTime Sets the date/time for the controller
LJV7IF_GetTime Gets the date/time for the controller
LJV7IF_ChangeActiveProgram Changes the active program number
LJV7IF_GetActiveProgram Gets the active program number

9.1.6 Acquiring measurement results


Processing for these functions fails when the controller is in the system error state.

Function name Overview


LJV7IF_GetMeasurementValue Gets measurement values
Gets profiles when the operation mode is "high-
LJV7IF_GetProfile
speed (profile only)"
Gets profiles when the operation mode is "high-
speed (profile only)"
LJV7IF_GetBatchProfile
* Use LJV7IF_GetProfile when Compression (time
axis) is on.
Gets profiles when the operation mode is
LJV7IF_GetProfileAdvance
"advanced (with OUT measurement)"
Gets profiles when the operation mode is
"advanced (with OUT measurement)"
LJV7IF_GetBatchProfileAdvance
* Use LJV7IF_GetProfileAdvance when
Compression (time axis) is on.

26 LJ-V7000_COM_RM_E
9.1.7 Storage function related
Processing for these functions fails when the controller is in the system error state.

Function name Overview


LJV7IF_StartStorage Starts storage
LJV7IF_StopStorage Stops storage
LJV7IF_GetStorageStatus Gets the storage status
Gets the stored data when the storage target is
LJV7IF_GetStorageData
"OUT value"
Gets the stored profiles when the storage target is
LJV7IF_GetStorageProfile
"Profiles"
Gets the stored profiles when the storage target is
"Profiles"
LJV7IF_GetStorageBatchProfile
* Use LJV7IF_GetStorageProfile when
Compression (time axis) is on.

9.1.8 High-speed data communication related


Processing for these functions fails when the controller is in the system error state.

Function name Overview


Performs the initialization required for
LJV7IF_HighSpeedDataUSBCommunicationInitalize
high-speed data communication (USB)
Performs the initialization required for
LJV7IF_HighSpeedDataEthernetCommunicationInitalize high-speed data communication
(Ethernet)
Requests preparation before starting
LJV7IF_PreStartHighSpeedDataCommunication
high-speed data communication
LJV7IF_StartHighSpeedDataCommunication Starts high-speed data communication
LJV7IF_StopHighSpeedDataCommunication Stops high-speed data communication
Performs high-speed data
LJV7IF_HighSpeedDataCommunicationFinalize
communication termination processing

LJ-V7000_COM_RM_E 27
9.2 Function reference
The type of the return value for the functions where there is a possibility of an error occurring is LONG.
Normally, 0 (ERR_NONE) is returned, and the return code is expressed in the lower 2 bytes (the upper 2
bytes are reserved).
For the common return codes for functions, see "10 Common Return Codes". For the individual return codes
for functions, see the function description in this chapter. The return codes are listed as the lower 2 bytes in
hexadecimal (example: 0x0100).

9.2.1 Operations for the DLL


 Initialize DLL
Format LONG LJV7IF_Initialize(void);
Parameters -
Return value No individual return code
Explanation This function initializes the DLL. (Always run this function)
Supported version 1.00

 Finalize DLL
Format LONG LJV7IF_Finalize(void);
Parameters -
Return value No individual return code
This function performs the termination processing for the DLL. (Always run this
Explanation
function)
Supported version 1.00

 Get DLL version


Format DWORD LJV7IF_GetVersion(void);
Parameters -
Return value DLL version
This function gets the DLL version.
The version is expressed as a hexadecimal number. Viewed as hexadecimal,
the 4th digit is the major version, the 3rd digit is the minor version, the 2nd digit
is the revision, and the 1st digit is the build. For example, the initial version
Explanation (1.2.3.4) is expressed as 0x1234.

The major version is incremented when the DLL's backward compatibility is lost.
The minor revision is incremented when the version is updated with additional
functions.
Supported version 1.00

28 LJ-V7000_COM_RM_E
9.2.2 Establish/disconnect the communication path with the controller
For communication devices, see "9.2.9.1 Communication devices".

 USB communication connection


Format LONG LJV7IF_UsbOpen(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value No individual return code
This function establishes a connection with the controller so that the library can
Explanation
communicate with a USB-connected controller.
Supported version 1.00

 Ethernet communication connection


LONG LJV7IF_EthernetOpen
Format
(LONG lDeviceId, LJV7IF_ETHERNET_CONFIG* pEthernetConfig);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters pEthernetConfig(in)
Ethernet communication settings.
For each member, see "8 Constant, Structure Definitions"
Return value No individual return code
This function establishes a connection with the controller so that the library can
Explanation
communicate with an Ethernet-connected controller.
Supported version 1.00

 Disconnect communication path


Format LONG LJV7IF_CommClose(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value No individual return code
This function closes the USB or Ethernet connection.
Explanation Even if this function is called when a connection has not been established, an
error does not occur.
Supported version 1.00

9.2.3 System control


For communication devices, see "9.2.9.1 Communication devices".

 Reboot the controller


Format LONG LJV7IF_RebootController(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value 0x80A0: Accessing the save area
This function reboots the controller and connected devices.
Explanation
An error occurs while accessing the save area.
Supported version 1.00

LJ-V7000_COM_RM_E 29
 Return to factory state
Format LONG LJV7IF_RetrunToFactorySetting(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value No individual return code
This function returns all of the controller's settings to the factory state.
After processing returns from this interface, write processing is being performed
to the save area in the controller.
Explanation
Before turning off the power, ensure that you check the access status to the save
area with the LJV7IF_CheckMemoryAccess function (see "9.1.5 Functions
related to modifying or reading settings").
Supported version 1.00

 Get system error information


LONG LJV7IF_GetError
Format
(LONG lDeviceId, BYTE byRcvMax, BYTE* pbyErrCnt, WORD* pwErrCode);
lDeviceId(in)
Specifies the communication device to communicate with.
byRcvMax(in)
Specifies the maximum amount of system error information to receive.
(Size of the buffer passed in pwErrCode)
Parameters pbyErrCnt(out)
The buffer to receive the amount of system error information.
pwErrCode(out)
The buffer to receive the system error information. In order from the newest
error, *pbyErrCnt items (byRcvMax items max) worth of system error
information is stored.
Return value No individual return code
This function gets the controller's system error information.
Explanation For the details of the meanings of the error codes that are returned, refer to the
"LJ-V7000 Series User's Manual".
Supported version 1.00

 Clear system error


Format LONG LJV7IF_ClearError(LONG lDeviceId, WORD wErrCode);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters
wErrCode(in)
The error code for the error you wish to clear.
Return value No individual return code
This function clears the system error occurring on the controller.
When all of the system errors that are occurring are successfully cleared, the
controller will start measurements.
Explanation Only the errors listed below can be cleared.
0x0084: Two heads were connected when previously started, but only one head
could be recognized
0x0085: The connected head type is different than when previously started
Supported version 1.00

30 LJ-V7000_COM_RM_E
9.2.4 Measurement control
For communication devices, see "9.2.9.1 Communication devices".

 Trigger
Format LONG LJV7IF_Trigger(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value 0x8080: The trigger mode is not "external trigger"
Explanation This function issues a trigger.
Supported version 1.00

 Start batch measurements


Format LONG LJV7IF_StartMeasure(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
0x8080: Batch measurements are off
0x80A0: Batch measurement start processing could not be performed
Return value
because the REMOTE terminal is off or the LASER_OFF terminal is
on
This function starts batch measurements. When batch measurements have
Explanation
already been started, nothing happens and there is no error.
Supported version 1.00

 Stop batch measurements


Format LONG LJV7IF_StopMeasure(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
0x8080: Batch measurements are off
0x80A0: Batch measurement stop processing could not be performed
Return value
because the REMOTE terminal is off or the LASER_OFF terminal is
on
This function stops batch measurements. When batch measurements have not
Explanation
been started, nothing happens and there is no error.
Supported version 1.00

LJ-V7000_COM_RM_E 31
 Auto zero
Format LONG LJV7IF_AutoZero(LONG lDeviceId, BYTE byOnOff, DWORD dwOut);
lDeviceId(in)
Specifies the communication device to communicate with.
byOnOff(in)
Other than 0: Auto zero on request, 0: off request.
dwOut(in)
Parameters Specifies the OUT to target for processing as a bit.
From the LSB, OUT1, OUT2, to OUT16 are indicated by bits, and the OUT is
the target for processing when the bit is 1 (upper 16 bits are reserved).
Example: When you wish to set OUT1 and OUT5 to be the targets for
processing
Specify dwOut = 0x00000011 (... 0000 0000 0001 0001).
Return value 0x8080: The operation mode is "high-speed (profile only)"
This function issues an auto zero request.
Explanation Even when the OUT targeted for processing is configured to not be measured,
an error will not occur.
Supported version 1.00

 Timing
Format LONG LJV7IF_Timing(LONG lDeviceId, BYTE byOnOff, DWORD dwOut);
lDeviceId(in)
Specifies the communication device to communicate with.
byOnOff(in)
Parameters
Same specification method as auto zero (LJV7IF_AutoZero).
dwOut(in)
Same specification method as auto zero (LJV7IF_AutoZero).
Return value 0x8080: The operation mode is "high-speed (profile only)"
This function issues a timing request.
Explanation Even when the OUT targeted for processing is configured to not be measured,
an error will not occur.
Supported version 1.00

 Reset
Format LONG LJV7IF_Reset(LONG lDeviceId, DWORD dwOut);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters
dwOut(in)
Same specification method as auto zero (LJV7IF_AutoZero).
Return value 0x8080: The operation mode is "high-speed (profile only)"
This function issues a reset request.
Explanation Even when the OUT targeted for processing is configured to not be measured,
an error will not occur.
Supported version 1.00

32 LJ-V7000_COM_RM_E
 Clear memory
Format LONG LJV7IF_ClearMemory(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value No individual return code
When the operation mode is "high-speed (profile only)", this function clears the
profile data accumulated in internal memory.
Explanation
When the operation mode is "advanced (with OUT measurement)", the
accumulated storage data is cleared.
Supported version 1.00

9.2.5 Functions related to modifying or reading settings


For communication devices, see "9.2.9.1 Communication devices".

 Send setting
LONG LJV7IF_SetSetting(LONG lDeviceId, BYTE byDepth,
Format LJV7IF_TARGET_SETTING TargetSetting, void* pData, DWORD dwDataSize,
DWORD* pdwError);
lDeviceId(in)
Indicates the communication device to communicate with.
byDepth(in)
Specifies the level to reflect the setting value to that was sent.
(LJV7IF_SETTING_DEPTH)
TargetSetting(in)
Identifies the item that is the target to send.

Parameters pData(in)
Specifies the buffer that stores the setting data to send.
dwDataSize(in)
The size in BYTEs of the setting data to send.
pdwError(out)
The buffer for receiving detailed setting errors (see "9.2.9.4 Detailed setting
errors").

* For details on the parameters, see the appendix.


Return value No individual return code
This function sends the setting for the specified item to the controller.
Explanation For the procedure to reflect the setting on the controller, see "9.2.9.3 Write
processing for settings".
Supported version 1.00

LJ-V7000_COM_RM_E 33
 Get setting
LONG LJV7IF_GetSetting(LONG lDeviceId, BYTE byDepth,
Format
LJV7IF_TARGET_SETTING TargetSetting, void* pData, DWORD dwDataSize);
lDeviceId(in)
Specifies the communication device to communicate with.
byDepth(in)
Specifies the level of the setting value to get. (LJV7IF_SETTING_DEPTH)
TargetSetting(in)
Identifies the item that is the target to get.
Parameters
pData(out)
Specifies the buffer to receive the setting data that was acquired.
dwDataSize(in)
The size of the buffer to receive the acquired data in BYTEs.

* For details on the parameters, see the appendix.


Return value No individual return code
Explanation This function gets the setting for the specified item from the controller.
Supported version 1.00

 Initialize setting
LONG LJV7IF_InitializeSetting(LONG lDeviceId, BYTE byDepth, BYTE
Format
byTarget);
lDeviceId(in)
Specifies the communication device to communicate with.
byDepth(in)
Parameters Specifies the level to reflect the initialized setting. (LJV7IF_SETTING_DEPTH)
byTarget (in)
Specifies the setting that is the target for initialization.
(LJV7IF_INIT_SETTING_TARGET)
Return value No individual return code
This function initializes the setting specified as the initialization target.
Explanation For the procedure to reflect the setting on the controller, see "9.2.9.3 Write
processing for settings".
Supported version 1.00

34 LJ-V7000_COM_RM_E
 Request to reflect settings in the write settings area
LONG LJV7IF_ReflectSetting(LONG lDeviceId, BYTE byDepth,
Format
DWORD*pdwError);
lDeviceId(in)
Specifies the communication device to communicate with.
byDepth (in)
Specifies to what level the settings written in the write settings area will be
Parameters
reflected to. (LJV7IF_SETTING_DEPTH)
pdwError(out)
The buffer for receiving detailed setting errors (see "9.2.9.4 Detailed setting
errors").
Return value No individual return code
This function reflects the settings stored in the write settings area to the running
settings area.
When LJV7IF_SETTING_DEPTH_SAVE is specified as a parameter, the settings
Explanation in the save area can be saved.
When the controller was instructed to overwrite the settings in the save area with
this function, ensure that you check the access status to the save area with the
LJV7IF_CheckMemoryAccess function before turning the power off.
Supported version 1.00

 Update write settings area


Format LONG LJV7IF_RewriteTemporarySetting(LONG lDeviceId, BYTE byDepth);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters byDepth (in)
Specifies the level of the settings to update the write settings area with.
(LJV7IF_SETTING_DEPTH)
Return value No individual return code
This function updates the contents of the write settings area with either the
Explanation
settings in the running settings area or the settings saved in the save area.
Supported version 1.00

 Check the status of saving to the save area


Format LONG LJV7IF_CheckMemoryAccess(LONG lDeviceId, BYTE* pbyBusy);
lDeviceId(in)
Specifies the communication device to communicate with.

Parameters pbyBusy(out)
The buffer for receiving information on whether the save area is being
accessed
Other than 0: Accessing the save area, 0: no access.
Return value No individual return code
This function checks whether or not the controller is accessing the save area
with an operation such as that to save settings.
When the controller was instructed to save settings to the save area with the
Explanation LJV7IF_RetrunToFactorySetting function (see "9.1.3 System control"), the
LJV7IF_SetSetting function, the LJV7IF_InitializeSetting function, or the
LJV7IF_ReflectSetting function, check that access to the save area has
completed with this function before turning off the power.
Supported version 1.00

LJ-V7000_COM_RM_E 35
 Set date/time
Format LONG LJV7IF_SetTime(LONG lDeviceId, LJV7IF_TIME* pTime);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters pTime(in)
The date/time to set.
For each member, see "8 Constant, Structure Definitions".
Return value No individual return code
Explanation This function sets the date/time for the controller.
Supported version 1.00

 Get date/time
Format LONG LJV7IF_GetTime(LONG lDeviceId, LJV7IF_TIME* pTime);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters pTime(out)
The buffer to store the acquired date/time.
For each member, see "8 Constant, Structure Definitions".
Return value No individual return code
Explanation This function gets the date/time from the controller.
Supported version 1.00

 Change program
Format LONG LJV7IF_ChangeActiveProgram(LONG lDeviceId, BYTE byProgNo);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters byProgNo(in)
Program number after the change.
Specify as 0 to 15 (0: Program 0, 1: Program 1, and so on).
Return value 0x8080: The change program setting is "terminal"
This function changes the active program number.
When specifying the same number as the active program number in byProgNo,
Explanation or when an invalid program number is specified, the operation to change the
program is performed (internal memory is cleared, etc.), but the active program
number is not changed.
Supported version 1.00

 Get the active program number


Format LONG LJV7IF_GetActiveProgram(LONG lDeviceId, BYTE* pbyProgNo);
lDeviceId(in)
Specifies the communication device to communicate with.
Parameters pbyProgNo(out)
The buffer to receive the active program number.
It is stored as 0 to 15 (0: Program 0, 1: Program 1, and so on).
Return value No individual return code
Explanation This function gets the active program number.
Supported version 1.00

36 LJ-V7000_COM_RM_E
9.2.6 Acquiring measurement results
For communication devices, see "9.2.9.1 Communication devices".
 Get measurement results
LONG LJV7IF_GetMeasurementValue(LONG lDeviceId,
Format
LJV7IF_MEASURE_DATA* pMeasureData);
lDeviceId(in)
Specifies the communication device to communicate with.
pMeasureData(out)
Parameters This buffer stores the data for all 16 OUTs including the OUTs that are not
measuring.
The host requires the passing of a buffer LJV7IF_MEASURE_DATA[16] in
size.
Return value 0x8080: The operation mode is "high-speed (profile only)"
This function gets the newest measurement results (measurement values and
Explanation judgment results). All measurements, including OUT measurements where the
measurement mode is set to "do not measure" are acquired.
Supported version 1.00

 Get profiles (operation mode "high-speed (profile only)")


LONG LJV7IF_GetProfile(LONG lDeviceId, LJV7IF_GET_PROFILE_REQ* pReq,
Format LJV7IF_GET_PROFILE_RSP* pRsp, LJV7IF_PROFILE_INFO* pProfileInfo,
DWORD* pdwProfileData, DWORD dwDataSize);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the position, etc., of the profiles to get.
For each member, see "8 Constant, Structure Definitions".
pRsp(out)
Indicates the position, etc., of the profiles that were actually acquired.
For each member, see "8 Constant, Structure Definitions".
pProfileInfo(out)
Parameters The profile information for the acquired profiles.
For each member, see "8 Constant, Structure Definitions".
pdwProfileData (out)
The buffer to get the profile data.
The profile data is stored in this buffer with "LJV7IF_PROFILE_HEADER -
signed 32-bit profile data - LJV7IF_PROFILE_FOOTER" as a single unit of
profile data, and only the number of profiles that could be acquired are
returned.
dwDataSize(in)
pdwProfileData size in BYTEs
0x8080: The operation mode is "advanced (with OUT measurement)"
Return value 0x8081: "Batch measurements on and profile compression (time axis) off"
0x80A0: No profile data
This function gets profile data.
Profile data is stored in 0.01 μm units.
For the details on the data stored in the profile data (storage order and size), see
"9.2.9 Supplement".
There is a limit to the number of profiles that can be read at once. This limit
depends on the measurement settings. Refer to byGetProfCnt (the number of
Explanation profiles read this time) in pRsp, and confirm that the data you wish to acquire
has all been acquired. If it could not be acquired, specify the following in this
function to acquire the remaining data:
byPosMode in pReq = LJV7IF_PROFILE_POS_SPEC
dwGetProfNo in pReq = dwGetTopProfNo in pRsp + byGetProfCnt in pRsp
(Specify the profile data to be read as the next profile data after the profile data
that was read this time)
Supported version 1.00

LJ-V7000_COM_RM_E 37
 Get batch profiles (operation mode "high-speed (profile only)")
LONG LJV7IF_GetBatchProfile(LONG lDeviceId,
LJV7IF_GET_BATCH_PROFILE_REQ* pReq,
Format
LJV7IF_GET_BATCH_PROFILE_RSP* pRsp, LJV7IF_PROFILE_INFO *
pProfileInfo, DWORD* pdwBatchData, DWORD dwDataSize);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the position, etc., of the profiles to get.
For each member, see "8 Constant, Structure Definitions".
pRsp(out)
Indicates the position, etc., of the profiles that were actually acquired.
For each member, see "8 Constant, Structure Definitions".
pProfileInfo(out)
Parameters The profile information for the acquired profiles.
For each member, see "8 Constant, Structure Definitions".
pdwBatchData(out)
The buffer to get the profile data.
The profile data is stored in this buffer with "LJV7IF_PROFILE_HEADER -
signed 32-bit profile data - LJV7IF_PROFILE_FOOTER" as a single unit of
profile data, and only the number of profiles that could be acquired are
returned.
dwDataSize(in)
pdwProfileData size in BYTEs
0x8080: The operation mode is "advanced (with OUT measurement)"
Return value 0x8081: Not "batch measurements on and profile compression (time axis) off"
0x80A0: No batch data (batch measurements not run even once)
This function gets profile data.
Profile data is stored in 0.01 μm units.
For the details on the data stored in the profile data (storage order and size), see
"9.2.9 Supplement".
To read all of the profiles in one batch, read them with the procedure below.
1. Call this function by specifying LJV7IF_BATCH_POS_CURRENT for
byPosMode in pReq. Save the start position and the amount of profiles that
Explanation
were read and the batch number that was read.
2. Configure pReq as listed below and call this function again.
byPosMode = LJV7IF_BATCH_POS_SPEC
dwGetBatchNo = batch number that was read
byGetProfNo = starting profile number of the unread profiles in the batch
3. Update dwGetProfNo in step 2 and call this function until all of the profiles in
the batch can be read.
Supported version 1.00

38 LJ-V7000_COM_RM_E
 Get profiles (operation mode "advanced (with OUT measurement)")
LONG LJV7IF_GetProfileAdvance(LONG lDeviceId, LJV7IF_PROFILE_INFO*
Format pProfileInfo, DWORD* pdwProfileData, DWORD dwDataSize,
LJV7IF_MEASURE_DATA* pMeasureData);
lDeviceId(in)
Specifies the communication device to communicate with.
pProfileInfo(out)
The profile information for the acquired profiles.
For each member, see "8 Constant, Structure Definitions".
pdwProfileData (out)
The buffer to get the profile data.
In the "LJV7IF_PROFILE_HEADER - signed 32-bit profile data -
Parameters
LJV7IF_PROFILE_FOOTER" format, one item of profile data is stored.
dwDataSize(in)
pdwProfileData size in BYTEs
pMeasureData(out)
This buffer stores the data for all 16 OUTs including the OUTs that are not
measuring.
The host requires the passing of a buffer LJV7IF_MEASURE_DATA[16] in
size.
0x8080: The operation mode is "high-speed (profile only)"
Return value 0x8081: "Batch measurements on and profile compression (time axis) off"
0x80A0: No profile data
This function gets profile data.
Profile data is stored in 0.01 μm units.
Explanation For the details on the data stored in the profile data (storage order and size), see
"9.2.9 Supplement". For pMeasureData, OUT measurements where the
measurement mode is set to "do not measure" are also stored.
Supported version 1.00

LJ-V7000_COM_RM_E 39
 Get batch profiles (operation mode "advanced (with OUT measurement)")
LONG LJV7IF_GetBatchProfileAdvance(LONG lDeviceId,
LJV7IF_GET_BATCH_PROFILE_ADVANCE_REQ* pReq,
LJV7IF_GET_BATCH_PROFILE_ADVANCE_RSP* pRsp,
Format
LJV7IF_PROFILE_INFO* pProfileInfo, DWORD* pdwBatchData, DWORD
dwDataSize, LJV7IF_MEASURE_DATA* pBatchMeasureData,
LJV7IF_MEASURE_DATA* pMeasureData);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the position, etc., of the profiles to get.
For each member, see "8 Constant, Structure Definitions".
pRsp(out)
Indicates the position, etc., of the profiles that were actually acquired.
For each member, see "8 Constant, Structure Definitions"
pProfileInfo(out)
The profile information for the acquired profiles.
For each member, see "8 Constant, Structure Definitions".
dwBatchData(out)
The buffer to get the profile data.
The profile data is stored in this buffer with "LJV7IF_PROFILE_HEADER -
Parameters signed 32-bit profile data - LJV7IF_PROFILE_FOOTER -
LJV7IF_MEASURE_DATA x 16 OUTs" as a single unit of profile data, and only
the number of profiles that could be acquired are returned.
The results of the measurement process for the relevant profile are stored in
LJV7IF_MEASURE_DATA.
dwDataSize(in)
pdwProfileData size in BYTEs.
pBatchMeasureData(out)
The measurement results for the batch data that is the target to get.
This buffer stores the data for all 16 OUTs including the OUTs that are not
measuring.
pMeasureData(out)
The newest measurement results at the time the command was processed.
This buffer stores the data for all 16 OUTs including the OUTs that are not
measuring.
The host requires the passing of a buffer LJV7IF_MEASURE_DATA[16] in size.
0x8080: The operation mode is "high-speed (profile only)"
Return value 0x8081: Not "batch measurements on and profile compression (time axis) off"
0x80A0: No batch data (batch measurements not run even once)
This function gets profile data.
Profile data is stored in 0.01 μm units.
For the details on the data stored in the profile data (storage order and size), see
"9.2.9 Supplement". For pdwBatchData/pBatchMeasureData, OUT
measurements where the measurement mode is set to "do not measure" are also
stored.
To read all of the profiles in one batch, read them with the procedure below.
1. Call this function by specifying LJV7IF_BATCH_POS_CURRENT for
byPosMode in pReq. Save the start position and the amount of profiles
Explanation
that were read and the batch number that was read.
2. Configure pReq as listed below and call this function again.
byPosMode=LJV7IF_BATCH_POS_SPEC
dwGetBatchNo = batch number that was read
dwGetProfNo = starting profile number of the unread profiles in the batch
3. Update dwGetProfNo in step 2 and call this function until all of the profiles
in the batch can be read.
When calling this function, do not perform communication between the target
controller and LJ-Navigation 2.
Supported version 1.00

40 LJ-V7000_COM_RM_E
9.2.7 Store function related
For communication devices, see "9.2.9.1 Communication devices".

 Start storage
Format LONG LJV7IF_StartStorage(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
0x8080: The operation mode is "high-speed (profile only)"
Return value 0x8081: Storage target setting is "OFF" (no storage)
0x8082: The storage condition setting is not "terminal/command"
When the storage condition setting is terminal/command, this function requests
Explanation
the start of storage.
Supported version 1.00

 Stop storage
Format LONG LJV7IF_StopStorage(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
0x8080: The operation mode is "high-speed (profile only)"
Return value 0x8081: Storage target setting is "off" (no storage)
0x8082: The storage condition setting is not "terminal/command"
When the storage condition setting is terminal/command, this function requests
Explanation
the stop (cancellation) of storage.
Supported version 1.00

 Get storage status


LONG LJV7IF_GetStorageStatus(LONG lDeviceId,
LJV7IF_GET_STORAGE_STATUS_REQ* pReq,
Format
LJV7IF_GET_STORAGE_STATUS_RSP* pRsp, LJV7IF_ STORAGE_INFO*
pStorageInfo);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the target of the storage status to get.
For each member, see "8 Constant, Structure Definitions".
Parameters pRsp(out)
Represents the actually acquired storage status.
For each member, see "8 Constant, Structure Definitions".
pStorageInfo(out)
Storage information destination. If dwActiveSurface in pRsp is 0, the storage
status is not updated
Return value 0x8080: The operation mode is "high-speed (profile only)"
Explanation When the storage target setting is not off, this function gets the storage status.
Supported version 1.00

LJ-V7000_COM_RM_E 41
 Get data storage data
LONG LJV7IF_GetStorageData(LONG lDeviceId, LJV7IF_GET_STORAGE_REQ*
Format pReq, LJV7IF_STORAGE_INFO* pStorageInfo, LJV7IF_GET_STORAGE_RSP*
pRsp, DWORD* pdwData, DWORD dwDataSize);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the storage data to get.
For each member, see "8 Constant, Structure Definitions".
pStorageInfo(out)
Represents the actually acquired storage information.
For each member, see "8 Constant, Structure Definitions".
pRsp(out)
Represents the position and size of the actually acquired storage data.
Parameters For each member, see "8 Constant, Structure Definitions".
pdwData(out)
The buffer to get the storage data.
The storage data is stored in this buffer with "counter value in 10 ms units
from the 32-bit base time - LJV7IF_MEASURE_DATA[16]" as a single unit of
storage data, and only the amount of storage data that could be acquired is
returned.
For each member, see "8 Constant, Structure Definitions". For details about
counter value in 10 ms units, refer to "9.2.9.9 Time data added to storage
data".
dwDataSize(in)
pdwData size in BYTEs
0x8080: The operation mode is "high-speed (profile only)"
Return value
0x8081: The storage target setting is not "OUT value"
When the storage target setting is "OUT value", this function gets the storage
data. Data can be acquired even if it is within the storage period. If there is no
accumulated data, 0 is returned for the number of items read in pRsp. If the data
specified by the data number to start reading in pRep has not been
accumulated, one piece of the newest data that has been accumulated is
returned. In pdwData, OUT measurements where the measurement mode is set
Explanation to "do not measure" are also stored. There is a limit to the amount of data that
can be read at once. This limit depends on the measurement settings. Refer to
dwDataCnt (the number of items read) in pRsp, and confirm that the data you
wish to acquire has all been acquired. If it could not be acquired, specify the
following in this function to acquire the remaining data:
dwStartNo in pReq = dwStartNo in pRsp + dwDataCnt (Specify the data to be
read as the next piece of data after the data that was read this time)
Supported version 1.00

42 LJ-V7000_COM_RM_E
 Get profile storage data
LONG LJV7IF_GetStorageProfile(LONG lDeviceId,
LJV7IF_GET_STORAGE_REQ* pReq, LJV7IF_STORAGE_INFO* pStorageInfo,
Format
LJV7IF_GET_STORAGE_RSP* pRsp, LJV7IF_PROFILE_INFO* pProfileInfo,
DWORD* pdwData, DWORD dwDataSize);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the profiles to get.
For each member, see "8 Constant, Structure Definitions".
pStorageInfo(out)
Represents the actually acquired storage information.
For each member, see "8 Constant, Structure Definitions".
pRsp(out)
Indicates the position and size of the profiles that were actually acquired.
For each member, see "8 Constant, Structure Definitions".
pProfileInfo(out)
Indicates the profile information that was actually acquired.
For each member, see "8 Constant, Structure Definitions".
Parameters
pdwData(out)
The buffer to get the storage data.
The profile storage data is stored in this buffer with "counter value in 10 ms
units from the 32-bit base time - LJV7IF_MEASURE_DATA[16] -
LJV7IF_PROFILE_HEADER - signed 32-bit profile data -
LJV7IF_PROFILE_FOOTER - LJV7IF_MEASURE_DATA[16]" as a single unit of
profile storage data, and only the amount of profile storage data that could
be acquired is returned.
The first LJV7IF_MEASURE_DATA[16] stores the newest measurement
values at that time, the second stores the measurement values for that profile.
For each member, see "8 Constant, Structure Definitions". For details about
counter value in 10 ms units, refer to "9.2.9.9 Time data added to storage
data".
dwDataSize(in)
pdwData size in BYTEs
0x8080: The operation mode is "high-speed (profile only)"
Return value 0x8081: The storage target setting is not profile, or "batch measurements on
and profile compression (time axis) off"
When the storage target setting is profile, this function gets the stored profile
data. (Batch setting: off) Data can be acquired even if it is within the storage
period.
For the details on the data stored in the profile data (storage order and size), see
"9.2.9 Supplement".
If there is no accumulated data, 0 is returned for the number of items read in
pRsp. If the data specified by the data number to start reading in pRep has not
been accumulated, one item of the newest data that has been accumulated is
returned.
Explanation In pdwData, OUT measurements where the measurement mode is set to "do not
measure" are also stored.
There is a limit to the amount of profile data that can be read at once. This limit
depends on the measurement settings. Refer to dwDataCnt (the number of
items read) in pRsp, and confirm that the profile data you wish to acquire has all
been acquired. If it could not be acquired, specify the following in this function
to acquire the remaining data:
dwStartNo in pReq = dwStartNo in pRsp + dwDataCnt in pRsp
(Specify the profile data to be read as the next profile data after the profile data
that was read this time)
Supported version 1.00

LJ-V7000_COM_RM_E 43
 Get batch profile storage data
LONG LJV7IF_GetStorageBatchProfile (LONG lDeviceId,
LJV7IF_GET_BATCH_PROFILE_STORAGE_REQ* pReq, LJV7IF_STORAGE_INFO*
Format pStorageInfo, LJV7IF_GET_BATCH_PROFILE_STORAGE_RSP* pRsp,
LJV7IF_PROFILE_INFO* pProfileInfo, DWORD* pdwData, ·DWORD dwDataSize,
DWORD* pdwTimeOffset, LJV7IF_MEASURE_DATA* pMeasureData);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Specifies the profiles to get.
For each member, see "8 Constant, Structure Definitions".
pStorageInfo(out)
Represents the actually acquired storage information.
For each member, see "8 Constant, Structure Definitions".
pRsp(out)
Indicates the position and size of the profiles that were actually acquired.
For each member, see "8 Constant, Structure Definitions".
pProfileInfo(out)
Indicates the profile information that was actually acquired.
For each member, see "8 Constant, Structure Definitions".
pdwData (out)
The buffer to get the storage data.
Parameters The storage data is stored in this buffer with "LJV7IF_PROFILE_HEADER -
signed 32-bit profile data - LJV7IF_PROFILE_FOOTER -
LJV7IF_MEASURE_DATA[16]" as a single unit of storage data, and only the
storage data that could be acquired is returned.
The measurement results for each profile are stored in
LJV7IF_MEASURE_DATA[16].
For each member, see "8 Constant, Structure Definitions".
dwDataSize(in)
pdwData size in BYTEs
pdwTimeOffset(out)
The buffer for receiving the counter value in 10 ms units from the 32 bit base time.
For details about counter value in 10 ms units, refer to "9.2.9.9 Time data
added to storage data".
pMeasureData(out)
The measurement results for the relevant batch data.
This buffer stores the data for all 16 OUTs including the OUTs that are not
measuring.
The host requires the passing of a buffer LJV7IF_MEASURE_DATA[16] in size.
0x8080: The operation mode is "high-speed (profile only)"
0x8081: The storage target setting is not profile, or not "batch measurements
Return value on and profile compression (time axis) off"
0x80A0: The batch data specified by the batch number to read
(dwGetBatchNo) in pReq has not been accumulated yet
When the storage target setting is profile, this function gets the stored profile
data. (Batch setting: on)
Data can be acquired even if it is within the storage period.
For the details on the data stored in the profile data (storage order and size), see
"9.2.9 Supplement"
If the data specified by the number of the profile in the batch to get in pRep has
not been accumulated, one item of the newest data that has been accumulated
is returned.
In pdwData/pMeasureData, OUT measurements where the measurement mode
Explanation is set to "do not measure" are also stored.
Use the following procedure to read all profiles in a batch.
1. Call this function by specifying 0 for dwGetBatchTopProfNo in pReq. Save the
start position and the number of profiles that were read and the batch number
that was read.
2. Configure pReq as listed below and call this function again.
dwGetBatchNo = batch number that was read
dwGetBatchTopProfNo = first profile number of the unread profiles in the batch
3. Update by dwGetBatchTopProfNo in step 2 and call this function until all of
the profiles in the batch can be read.
Supported version 1.00

44 LJ-V7000_COM_RM_E
9.2.8 High-speed data communication related
For communication devices, see "9.2.9.1 Communication devices".

 Initialize USB high-speed data communication


LONG LJV7IF_HighSpeedDataUsbCommunicationInitalize (LONG lDeviceId,
Format void (*pCallBack)(BYTE*, DWORD, DWORD, DWORD, DWORD), DWORD
dwProfileCnt, DWORD dwThreadId);
lDeviceId(in)
Specifies the communication device to communicate with.
pCallBack(in)
Specifies the callback function to call when data is received by high-speed
communication.
Parameters
dwProfileCnt(in)
Specifies the frequency to call the callback function. The callback function is
called when the specified number of profiles is received.
dwThreadId(in) (synonymous with dwUser)
Thread ID.
Return value No individual return code
This function initializes high-speed communication for a USB connected
controller. It is necessary to maintain a unique communication path (not used for
Explanation
normal command communication) for high-speed communication. This function
establishes a unique high-speed communication path.
Supported version 1.00

 Initialize Ethernet high-speed data communication


LONG LJV7IF_HighSpeedDataEthernetCommunicationInitalize (LONG
lDeviceId, LJV7IF_ETHERNET_CONFIG* pEthernetConfig, WORD
Format
wHighSpeedPortNo, void (*pCallBack)(BYTE*, DWORD, DWORD, DWORD,
DWORD), DWORD dwProfileCnt, DWORD dwThreadId);
lDeviceId(in)
Specifies the communication device to communicate with.
pEthernetConfig(in)
Specifies the Ethernet settings used in high-speed communication.
wHighSpeedPortNo(in)
Specifies the port number used in high-speed communication.

Parameters pCallBack(in)
Specifies the callback function to call when data is received by high-speed
communication.
dwProfileCnt(in)
Specifies the frequency to call the callback function. The callback function is
called when the specified number of profiles is received.
dwThreadId(in) (synonymous with dwUser)
Thread ID.
Return value No individual return code
This function initializes high-speed communication for an Ethernet connected
controller. It is necessary to maintain a unique communication path (not used for
normal command communication) for high-speed communication. This function
Explanation establishes a unique high-speed communication path.
It is necessary to set different TCP/IP port numbers for normal command
communication and high-speed communication (see the LJ-V7000 Series
User's Manual for details on setting port numbers).
Supported version 1.00

LJ-V7000_COM_RM_E 45
 Request preparation before starting high-speed data communication
LONG LJV7IF_PreStartHighSpeedDataCommunication (LONG lDeviceId,
Format LJV7IF_HIGH_SPEED_PRE_START_REQ* pReq, LJV7IF_PROFILE_INFO*
pProfileInfo);
lDeviceId(in)
Specifies the communication device to communicate with.
pReq(in)
Parameters
Specifies what data to send high-speed communication from.
pProfileInfo(out)
Stores the profile information.
0x8080: The operation mode is "advanced (with OUT measurement)"
Return value 0x8081: The data specified as the send start position does not exist
0x80A1: Already performing high-speed data communication
Explanation This function performs the preparation to start high-speed data communication.
Supported version 1.40

 Start high-speed data communication


Format LONG LJV7IF_StartHighSpeedDataCommunication(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
0x80A0: A high-speed data communication connection was not established
Return value 0x80A2: High-speed data communication was not prepared before starting
0x80A4: The send target data was cleared
This function starts high-speed data communication.
Explanation If high-speed data communication does not operate correctly, see "13.4 High-
speed data communication troubleshooting".
Supported version 1.00

 Stop high-speed data communication


Format LONG LJV7IF_StopHighSpeedDataCommunication(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value No individual return code
Explanation This function stops high-speed data communication.
Supported version 1.00

 Finalize high-speed data communication


Format LONG LJV7IF_HighSpeedDataCommunicationFinalize(LONG lDeviceId);
lDeviceId(in)
Parameters
Specifies the communication device to communicate with.
Return value No individual return code
Explanation This function finalizes high-speed data communication.
Supported version 1.00

46 LJ-V7000_COM_RM_E
9.2.9 Supplement
9.2.9.1 Communication devices
The controller that will communication with the PC is specified as a communication device. The
maximum number of controllers that can be communicated with simultaneously is 6.
In interfaces that involve communication, you can specify the controller to target for communication
with lDeviceId. lDeviceId can be specified as 0 to 5.
• Only one controller can communicate via USB.
Example:When USB has been opened specifying the communication device 0, and USB is
opened again specifying communication device 1, it will fail and 0x1001
(LJV7IF_RC_ERR_OPEN) is returned.
• When one controller is communicating with multiple PCs, it is possible to communicate with up
to three PCs via Ethernet communication.
When a fourth PC connects to the controller, the PC with the oldest date/time of last
communication of the three connected PCs is disconnected.
* However, in this situation, high-speed data communication is only possible between a single
controller and a single PC.

9.2.9.2 Internal memory


The size of measurement data that can be saved and the save interval differs according to the
memory allocation setting and the operation mode.
Use caution when using the following functions.
• LJV7IF_GetProfile (Get profiles (operation mode "high-speed (profile only)"))
• LJV7IF_GetBatchProfile (Get batch profiles (operation mode "high-speed (profile only)"))
• LJV7IF_GetStorageStatus (Get storage status)
• LJV7IF_GetStorageData (Get data storage data)
• LJV7IF_GetStorageProfile (Get profile storage data)
• LJV7IF_GetStorageBatchProfile (Get batch profile storage data)

The memory usage area for each memory allocation setting is listed below.
Double buffer Entire area (overwrite) Entire area (do not overwrite) *1
The internal memory is split The entire internal memory Of the entire internal memory
into two surfaces, surface A area is used. area, the areas where data has
and surface B. Each time the not accumulated can be used
program changes, surface A to accumulate data.
and surface B are alternately The save data is not deleted,
used.*2 even when the program is
changed.

Surface A

Surface B

*1 Can only be specified when the operation mode is "advanced (with OUT measurement)".

LJ-V7000_COM_RM_E 47
*2 The memory area being used by the active program is called the active surface. The unused
surfaces are inactive surfaces.
9.2.9.2.1 For operation mode: high-speed (profile only)
Save target data: profile

When the memory allocation is "double buffer"


The change program operation and the memory usage states transition as shown below.

(*: Active surface)


Program number Surface A Surface B

1 (measuring) Saving* No data

 Change program (save target surface is surface B)


Program number Surface A Surface B

2 (measuring) Program number 1 data Saving*

 Change program (save target surface is surface A. Surface A data is deleted.)


Program number Surface A Surface B 

3 (measuring) Saving* Program number 2 data

Internal memory save status (white: no data  gray: saved) 

When the memory allocation is "entire area (overwrite)"


The memory is deleted when a change program operation is performed.

When reading profiles, if the profiles were read by specifying 1 (erase the read profiles) in byErase
for LJV7IF_GET_PROFILE_REQ or LJV7IF_GET_BATCH_PROFILE_REQ, the read profiles (batch)
and the profiles (batch) older than those are deleted from memory. During high-speed
communication, sent profiles are deleted from memory when the controller sends the acquired
profiles.
When performing an operation to continuously get profiles from the controller, make sure that the
speed at which the PC reads and deletes files is faster than the speed at which data is saved on
the computer.

9.2.9.2.2 For operation mode: advanced (with OUT measurement)


Save target data: storage target data (OUT measurement values/profiles)

When the memory allocation is "double buffer"


When the memory allocation is "entire area (overwrite)"
See "9.2.9.2.1 For operation mode: high-speed (profile only)".

48 LJ-V7000_COM_RM_E
When the memory allocation is "entire area (do not overwrite)"

Change program operation and memory states transition example


Program
Surface 1 Surface 2 Surface 3
number

1 (measuring) Saving* No data No data

 Change program
Program
Surface 1 Surface 2 Surface 3
number

Program number Saving* No data 


2 (measuring)
1 data

 Change program
Program
Surface 1 Surface 2 Surface 3
number

Program number Program number Saving*


1 (measuring) 
1 data 2 data

 Change program and repeat measurements


Program
Surface 1 Surface 2 ... Surface N
number

Program number Program Saving*
1 (measuring)
1 data number 2 data

LJ-V7000_COM_RM_E 49
9.2.9.3 Write processing for settings
The 4 functions listed below are used when performing write processing for settings.
• LJV7IF_SetSetting (Send setting)
• LJV7IF_ReflectSetting (Request to reflect settings in the write settings area)
• LJV7IF_RewriteTemporarySetting (Update write settings area)
• LJV7IF_CheckMemoryAccess (Check the status of saving to the save area)

Depth must be specified using LJV7IF_SetSetting to send settings. The Depth options and their
respective uses are as below.

Depth Use
Settings written to this area are not applied to the
LJV7IF_SETTING_DEPTH_WRITE
controller. Settings written to this area are applied to
(Write settings area)
RUNNING or SAVE by LJV7IF_ReflectSetting.
Settings written to this area are applied to the
LJV7IF_SETTING_DEPTH_RUNNING
controller, but are not saved if the power is turned off.
(Running settings area)
(When rebooted, the SAVE settings are applied)
Settings written to this area are applied to the
controller. The settings are saved on the controller
even if the power is turned off. Writing to this area
LJV7IF_SETTING_DEPTH_SAVE
takes time. (Use LJV7IF_CheckMemoryAccess to
(Save area)
check if settings are currently being written to this
area. Make sure that writing using this function is
complete before turning off the power.)

<Usage example 1> Changing multiple settings at the same time


1: Modify settings LJV7IF_SetSetting (WRITE)
2: Modify settings LJV7IF_SetSetting (WRITE)

Last: Modify settings LJV7IF_SetSetting (WRITE)


Update write settings area LJV7IF_ReflectSetting (RUNNING)

The consistency of the settings is checked when writing to RUNNING or SAVE. If they are
inconsistent, an error occurs. (Refer to "9.2.9.4 Detailed setting errors" for information about errors)
Therefore, when multiple settings are changed and each setting is written individually to RUNNING
(SAVE), there will be inconsistencies depending on the setting item, and the settings will not be
applied to the controller. Write multiple settings to WRITE to create consistent settings before
applying them to the controller
Use LJV7IF_RewriteTemporarySetting to rewrite inconsistent WRITE settings with the settings in the
controller.

NOTICE

• Measuring is stopped when writing settings to RUNNING (SAVE).


• Do not turn the controller off when writing settings to SAVE. Use LJV7IF_CheckMemoryAccess
to check if settings are written to this area.
• The same results are achieved if the last LJV7IF_SetSetting (WRITE) is replaced with
LJV7IF_SetSetting (RUNNING). (Update write settings area is not required.)

50 LJ-V7000_COM_RM_E
<Usage example 2> Changing 1 setting
• When not saving settings to the controller
Modify setting LJV7IF_SetSetting (RUNNING)

• When saving settings to the controller


Modify setting LJV7IF_SetSetting (SAVE)

NOTICE

• Measuring is stopped when writing settings to RUNNING (SAVE).


• Do not turn the controller off when writing settings to SAVE. Use LJV7IF_CheckMemoryAccess
to check if settings are written to this area.

LJ-V7000_COM_RM_E 51
9.2.9.4 Detailed setting errors
The settings have a consistency that must be observed. The detailed setting errors (dwError) that
are returned for the send setting and reflect write settings area request commands for settings that
not satisfy this consistency are listed below.

dwError value Error details


The operation mode is "high-speed (profile only)" and the memory
0x01000000
allocation is set to entire area (do not overwrite)
0x1X000000 (*1) The sampling period is outside the configurable range
Invalid measurement mode (when set to simple 3D measurements in
0x1X06YY00 (*2)
batch measurement OUT, etc.)
0x1X06YY01 (*2) Measurement mode "operator" is set for OUT1
When the measurement mode is operator, the operator target OUT is
0x1X06YY02 (*2)
invalid
0x1X06YY03 (*2) Measurement value filter cutoff frequency error
Prohibited combination in the measuring range settings (when
0x1X06YY04 (*2)
configured to specify the measuring area when batch is off, etc.)
Measuring range setting (when the batch count and the measuring
0x1X06YY05 (*2) range do not match (also including simple 3D measurement Y
direction measurement range))
When the measuring range setting is reference OUT, the consistency
0x1X06YY06 (*2)
conditions were not fulfilled
Could not match the tolerance setting (upper/lower limit and
0x1X06YY07 (*2)
hysteresis)
Could not match the scaling setting (measurement value 1/2, span
0x1X06YY08 (*2)
after calculation)
Could not match the analog output scaling setting (OUT display value
0x1X070000 (*2)
1/2, span after calculation)
0x1X080000 (*2) The amount of storage has exceeded the configurable range
*1: X indicates the program number and 0 to F is stored there.
*2: YY indicates the OUT number and 00 to 0F is stored there.

9.2.9.5 Profile data values


Profile data is output as signed 32-bit data, but for points where the profile could not be correctly
detected, the following values are output.

Value (hexadecimal
Name Reason
notation)
-2147483648 Invalid data This value is output when the peak could not
(0x80000000) be detected.
This value is output when the data is invalid
-2147483647
due to a setting such as a mask having been
(0x80000001)
set.
Dead zone data This value is output when the data is located
-2147483646 in a dead zone.
(0x80000002) This value is only output when dead zone
processing is enabled.
-2147483645 Judgment wait data This value is output when there is an
(0x80000003) insufficient amount of profiles for averaging.

52 LJ-V7000_COM_RM_E
9.2.9.6 Profile data amount calculation method
The amount of profile data to get with LJV7IF_GetProfile and other functions is a value multiplied by
a correction factor determined from the settings below with 800 as the base.
Setting
Correction
Setting Comment
Category Item factor
value
Full 1.00 Initial value
Measurement range X
Middle 0.75
direction
Imaging settings Small 0.50
Off 1.00 Initial value
Binning
On 0.50
Off 1.00 Initial value
Combine (wide)
On 2.00
Profile settings Off 1.00 Initial value
Compression (X axis) 2 0.50
4 0.25
For example, the amount of profile data with the settings below is 300 (= 800 x 0.75 x 1.00 x 1.00 x
0.50) items of data.
Measurement range X direction: Middle
Binning: Off
Combine (wide): Off
Compression (X axis): 2
However, when the amount of profile data found as a result of the equation above is less than 200,
the profile compression (X axis) setting is adjusted so that the amount of profile data is 200 or
higher.
For example, in a situation like that below, the amount of profile data is 300.
Measurement range X direction: Middle
Binning: Off
Combine (wide): Off
Compression (X axis): 4
The specific calculation is described below.
1. 800 x 0.75 x 1.00 x 1.00 x 0.25 = 150
2. The result is less than 200, so the profile compression (X axis) setting is adjust to 2 instead of
4
3. 800 x 0.75 x 1.00 x 1.00 x 0.5 = 300
4. The result is 200 or higher, so the amount of profile data above is confirmed

9.2.9.7 Profile data storage order


In functions that get profile data, such as LJV7IF_GetProfile, the profile data stored in the area
between LJV7IF_PROFILE_HEADER and LJV7IF_PROFILE_FOOTER is 1 unit of profile data found
with "Profile data amount calculation method", and the data is stored in the order below.
• Storage order
1. 1st head profiles (when compression (time axis) is on, MAX profiles)
2. 1st head MIN profiles
3. 2nd head profiles (when compression (time axis) is on, MAX profiles)
4. 2nd head MIN profiles
• Notes
3 and 4 only exist when the number of heads is 2 and wide is off.
2 and 4 only exist when compression (time axis) is on.

LJ-V7000_COM_RM_E 53
9.2.9.8 Specific examples
(i) For configuration 1 (initial settings)
Heads: 2
Measurement range X direction: Full
Binning: Off
Wide: Off
Compression (X axis): Off
Compression (time axis): Off

The amount of profile data is 800


The profile data storage order is as follows. (See profile data storage order for 1)
1. Head A profiles (800)
3. Head B profiles (800)

When getting 10 profiles with LJV7IF_GetProfile, the data below is stored in pdwProfileData.

Profile 1 LJV7IF_PROFILE_HEADER 32bit×6


1. Head A profiles (800) 32bit×800
3. Head B profiles (800) 32bit×800
LJV7IF_PROFILE_FOOTER 32bit×1
.
.
.
Profile 10 LJV7IF_PROFILE_HEADER 32bit×6
1. Head A profiles (800) 32bit×800
3. Head B profiles (800) 32bit×800
LJV7IF_PROFILE_FOOTER 32bit×1

54 LJ-V7000_COM_RM_E
(ii) For configuration 2
Heads: 2
Measurement range X direction: Full
Binning: on
Wide: off
Compression (X axis): 2
Compression (time axis): On

The amount of profile data is 200


The profile data storage order is as follows. (See profile data storage order for 1)
1. Head A MAX profiles (200)
2. Head A MIN profiles (200)
3. Head B MAX profiles (200)
4. Head B MIN profiles (200)

When getting 10 profiles with LJV7IF_GetProfile, the data below is stored in pdwProfileData.

Profile 1 LJV7IF_PROFILE_HEADER 32bit×6


1. Head A MAX profiles (200)
2. Head A MIN profiles (200) 32bit×800
3. Head B MAX profiles (200) (800=200×4)

4. Head B MIN profiles (200)


LJV7IF_PROFILE_FOOTER 32bit×1
.
.
.
Profile 10 LJV7IF_PROFILE_HEADER 32bit×6
1. Head A MAX profiles (200)
2. Head A MIN profiles (200) 32bit×800
3. Head B MAX profiles (200) (800=200×4)

4. Head B MIN profiles (200)


LJV7IF_PROFILE_FOOTER 32bit×1

9.2.9.9 Time data added to storage data


Information that indicates the time that data was accumulated is added to storage data. The
information added is "Base time (LJV7IF_TIME)" and "counter value in 10 ms units".
The counter value refers to the amount of time passed since the base time. If it is 1, 10 ms have
passed, if it is 100, 10 ms x 100 = 1 s has passed. The time at which data was accumulated is
calculated using the following formula: base time + counter value x 10 ms.
Note 1 The most application must calculate "counter value x 10 ms" and change the time so it is
displayed in the following format: year, month, day, hour, minute and second.
Note 2 When the data is accumulated at a frequency greater than 10 ms, multiple pieces of data
may have the same counter value. (The time cannot be shown in units smaller than 10 ms)

9.2.9.10 Data storage data storage order and specific example


Stored measurements can be acquired using GetStorageData. The acquired data has the following
structure.

LJ-V7000_COM_RM_E 55
The structure of 1 piece of data storage data
0
1
Time accumulated DWORD
2
3
4 Measurement results (OUT1) Measurement value information BYTE
5 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE
6 reserve BYTE
7 reserve BYTE
8 Measurement value
9
FLOAT
10
11
䌾 䌾
124 Measurement results (OUT16) Measurement value information BYTE
125 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE
126 reserve BYTE
127 reserve BYTE
128 Measurement value
129
FLOAT
130
131

56 LJ-V7000_COM_RM_E
9.2.9.11 Profile storage data storage order and specific example
Stored profile data, measurement values and internal measurement values (*1) can be acquired
using GetStorageProfile. The acquired data has the following structure when there is 1 byte per
row.
*1 "Internal measurement values" refers to measurements taken immediately before the OUT
settings measuring mode processing. Each OUT internal measurement value is saved
individually for each piece of profile data.

The structure of 1 piece of profile storage data


0
1
Time accumulated DWORD
2
3
4 Measurement results (OUT1) Measurement value information BYTE
5 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE
6 reserve BYTE
7 reserve BYTE
8 Measurement value
9
FLOAT
10
11 Measurement value
䌾 䌾 (Example: When the
124 Measurement results (OUT16) Measurement value information BYTE measuring mode is
125 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE
peak hold, the held
126 reserve BYTE
127 reserve BYTE value is the output
128 Measurement value measurement value)
129
FLOAT
130
131
132 Profile data Header䇭LJV7IF_PROFILE_HEADER
133

154
155
156 When 800 profiles
䌾 * Refer to "Profile data amount calculation method" for the number of profiles.
3355 The number changes according to the settings. Unsigned 32 bit data

3356 Footer LJV7IF_PROFILE_FOOTER


3357
3358
3359
3360 Measurement results (OUT1) Measurement value information BYTE
3361 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE
3362 reserve BYTE
3363 reserve BYTE
3364 Measurement value
3365
FLOAT
Internal
3366
measurement value
3367
䌾 䌾
(Example:
3480 Measurement results (OUT16) Measurement value information BYTE Measurements for
3481 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE the profile.
3482 reserve BYTE
Measurements taken
3483 reserve BYTE
3484 Measurement value
immediately before
3485 measuring mode
FLOAT
3486 processing)
3487

* The tolerance judgment result of internal measurement values is always 0.

LJ-V7000_COM_RM_E 57
9.2.9.12 Batch profile storage data storage order and specific example
Stored profile data and measurement values can be acquired using GetStorageBatchProfile The
acquired data has the following structure. The acquired data has the following structure when there
is 1 byte per row.

The structure of 1 piece of batch profile storage data


0 Profile data Header䇭LJV7IF_PROFILE_HEADER
1

22
23
24 When 800 profiles
䌾 * Refer to "Profile data amount calculation method" for the number of profiles.
3223 The number changes according to the settings. Unsigned 32 bit data

3224 Footer LJV7IF_PROFILE_FOOTER


3225
3226
3227
3228 Measurement results (OUT1) Measurement value information BYTE
3229 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE
3230 reserve BYTE
3231 reserve BYTE
3232 Measurement value
3233 Internal
FLOAT
3234 measurement value
3235 (Example:
䌾 䌾
Measurements for
3348 Measurement results (OUT16) Measurement value information BYTE
3349 LJV7IF_MEASURE_DATA Tolerance judgment result BYTE the profile.
3350 reserve BYTE Measurements taken
3351 reserve BYTE immediately before
3352 Measurement value
measuring mode
3353
3354
FLOAT
processing)
3355

* The tolerance judgment result of internal measurement values is always 0.

58 LJ-V7000_COM_RM_E
10 Common Return Codes
10.1 Return codes returned by the communication library
The return codes shown below are judged in the communication library and returned to the application.
Specifically, these codes are returned when the library fails to communicate with the controller or when
processing could not be completed due to a state dependency in the communication library.

Data
Definition name Cause
(Lower 2 bytes)
LJV7IF_RC_OK 0x0000 Normal termination
LJV7IF_RC_ERR_OPEN 0x1000 Failed to open the communication path.
The communication path was not
LJV7IF_RC_ERR_NOT_OPEN 0x1001
established.
LJV7IF_RC_ERR_SEND 0x1002 Failed to send the command.
LJV7IF_RC_ERR_RECEIVE 0x1003 Failed to receive a response.
A timeout occurred while waiting for the
LJV7IF_RC_ERR_TIMEOUT 0x1004
response.
LJV7IF_RC_ERR_NOMEMORY 0x1005 Failed to allocate memory.
LJV7IF_RC_ERR_PARAMETER 0x1006 An invalid parameter was passed.
LJV7IF_RC_ERR_RECV_FMT 0x1007 The received response data was invalid.
High-speed communication initialization
LJV7IF_RC_ERR_HISPEED_NO_DEVICE 0x1009
could not be performed.
High-speed communication was
LJV7IF_RC_ERR_HISPEED_OPEN_YET 0x100A
initialized.
Error already occurred during high-
LJV7IF_RC_ERR_HISPEED_RECV_YET 0x100B speed communication (for high-speed
communication)
The buffer size passed as an argument
LJV7IF_RC_ERR_BUFFER_SHORT 0x100C
is insufficient.

10.2 Return codes returned from the controller


The return codes shown below are returned when communication with the controller was successful but the
controller could not process the command.

Data
Cause
(Lower 2 bytes)
0x8041 Status error (when a system error has occurred, etc.)
0x8042 Parameter error (when an invalid parameter was set, etc.)

LJ-V7000_COM_RM_E 59
11 Sample Program
This chapter describes the sample program which has been included as an example of how to create an
application using the communication library.
The program is fundamentally the same for C#, VB.NET, C++ and VB6. (With VB6, high-speed data
communication cannot be performed.) Below is an example using C#.
* C#, VB.NET, C++ were built with Visual Studio 2008 SP1, and VB6 was built with Visual Basic 6.0 SP6.

11.1 User interface specification


[DLL functions] Simple function sample tab

Refer to 12.1 for


information
about changing
settings.

On each button is the name of a function. Click the button to perform that function.
 Displays the number of profiles received using high-speed data communication. Up to 6 controllers can
be displayed.* Profiles received using standard (not high-speed) profile receiving are not counted.
 Displays commands that have been executed and their results. Displays error codes when there is an
error. For details about error codes, refer to each function's return value in "9.2 Function reference"
(P.28~P.46) or the list of return codes in "10 Common Return Codes" P.59.
 Used to change the size of arrays prepared to receive profiles in this sample program. (Used for
GetProfile, GetBatchProfile, GetProfileAdvance, GetBatchProfileAdvance, GetStorageProfile and
GetStorageBatchProfile.)
Align with the LJV main unit settings. If the prepared arrays are too small, profiles cannot be read
correctly.

60 LJ-V7000_COM_RM_E
 Use these items when checking the operation of high-speed data communication.
* Set these items before starting high-speed data communication.

<When you want to check the communication speed>


Select the "Start the timer" and "Count only the number of profiles." check boxes, and then start high-
speed data communication. The profiles received by the sample program are checked at the frequency
specified to the right (unit: ms, default setting: 500 ms). The display in  is updated with the obtained
number of profiles.
(Only the number of calls is counted in the Callback function.)

The following are possible reasons for the obtained number of profiles not corresponding to the
estimated speed.
• When you are using an encoder trigger, if the sampling period is set to a value that is slower than the
encoder input period, it will not be possible to recognize all encoder inputs.  Set the sampling period
to a value that is faster than the encoder input period.
• Other possible causes include the network environment, cable category, and device configuration.

Also, if the number of programs obtained with this sample program corresponds to the estimated
speed, the cause of the problem may lie in the program that you have created. The processing after the
Callback function is called may be heavy.

<When you want to save the profiles obtained in high-speed data communication>
Select just the "Start the timer" check box, and then start high-speed data communication. The profiles
received by the sample program are checked at the frequency specified to the right (unit: ms, default
setting: 500 ms).The display in  is updated with the obtained number of profiles.
(The profiles are stored on the PC.)

Use "Save destination" to specify the location in which the profile data will be saved. Also, use "Index of
the profile to save" to specify which number profile (0 to 999) to obtain from the stored profiles. Click
"Save the profile" in  to save the specified profile data entry.
* Click "Save the profile" before you click "HighSpeedData CommunicationFinalize".
 Each command in dotted lines and measurements and profiles received during high-speed data
communication can be output to a specified file.
<Example when using Save the measurement>
Results received in GetMeasurementValue or GetProfileAdvance etc. (OUT1 to 16) are saved to the file
specified in "Save destination". 2 files are created. The first file contains measurements, and the second
file contains internal measurement values. (Measurements for the profile. Measurements taken
immediately before measuring mode processing). When using GetMeasurementValue the second file is
empty as only measurement values are acquired.
<Example when using Save the profile>
Profiles received in GetProfile or GetProfileAdvance etc. are saved to the file specified in "Save
destination". In this case, set "Index of the profile to save" to 0.
From profiles received with GetStorageProfile, etc., the profile specified in "Index of the profile to save" is
saved to the file specified in "Save destination". (In Index of the profile to save, 0 refers to the first piece
of data. If, for example, 10 pieces of data are received, enter "5" to save the 6th piece.)

LJ-V7000_COM_RM_E 61
[DLL functions] Combination sample tab

The contents of previously distributed sample software can be found here. Communication establishment
(finalization) to the top left is a combined sample of DLL Initialize and Establish the communication path
(disconnect the communication path).
* The number of profiles that can be received at one time using the "Get high-speed mode profiles"
command in the Combination sample tab is specified as 10 in the source code. If you wish change this
specification refer to the "Get Profile" command in the Simple function sample tab.
"Start" and "Finalize" in High-speed data communication to the bottom right is a combined sample of the
following functions.

Reading or writing settings for each program number to the bottom left is a sample of "12.2 Batch sending/
receiving". Environment settings, Common measurement settings and settings for each program can be
saved in the specified file, or can be sent from the specified file.

62 LJ-V7000_COM_RM_E
11.2 Save file format
This section describes the file format for profiles that are saved in the get profile process.
• File format: TSV (tab separated text file)
• Values: The values acquired with the get profile interface are saved unmodified.
• Units: See "9.2.6 Acquiring measurement results".

 Image of the arrangement of data in the save file when "Save the measurement" in
the [DLL functions] Simple function sample tab is clicked
Output file

OUT1 measurement value OUT2 measurement value OUT16 measurement value

* 2 files are created. The second file contains internal measurement values (Measurements for the profile.
Measurements taken immediately before measuring mode processing). When using GetMeasurement-
Value the second file is empty as only measurement values are acquired.

 Image of the arrangement of data in the save file when "Save the profile" in the
[DLL functions] Simple function sample tab is clicked (2 heads, compression (time
axis) on)
Output file
Profile data
X Max. profiles for Min. profiles for Max. profiles for Min. profiles for
coordinates head A head A head B head B

LJ-V7000_COM_RM_E 63
 Image of the arrangement of data saved to "Save path" in the [DLL functions]
Combination sample tab (2 heads, compression (time axis) on)
Output file

X coordinates 
First profile data 
Second profile data 

Nth profile data 

Min. profiles
Max. profiles for head B

Min. profiles for head B


Max. profiles for head A
for head A

64 LJ-V7000_COM_RM_E
12 Appendix
12.1 Sending/Receiving Settings
With the LJ-V7000 Series, settings can be sent and received for each item using send settings
(LJV7IF_SetSetting) and receive settings (LJV7IF_GetSetting). (Each item refers to set parameters for
Environment settings/Common measurement settings/settings for programs 0 to 15.)
To send and receive Environment settings, Common measurement settings and settings for each program
together in a batch, refer to "12.2 Batch sending/receiving".

This section explains Target Setting and pData, which are input and output into Sending/Receiving Settings
commands. (Refer to "9.2.9.3 Write processing for settings" for information about byDepth)

Target Setting: Specify the item to send/receive settings for. Members are as follows. For detailed parameters
for each member refer to "Details of Items for Sending/Receiving Settings" on the following page.

Specify the settings to send/receive from Environment settings (01h), Common


Type
measurement settings (02h) and program 0 to program 15 (10h to 1Fh).
When sending/receiving program 0 to 15 settings, specify the settings to send/
receive from Trigger settings, Imaging settings etc.
Category
Specify 0 when sending/receiving Environment settings and Common
measurement settings.
Item Specify the settings to send/receive for the item specified in Category.
Target1
Target2 Specification may be required according to the setting to be sent/received.
Target3 When no setting is required, specify 0.

Target4

pData: Specifies the setting data to send/receive. For details, refer to "Details of Items for Sending/Receiving
Settings" on the following page.
<Supplement: Example of using the SetSetting command with the
sample software>
This example explains how to use the LJV7IF_SetSetting
command to set the upper limit of the tolerance of OUT1 of
program NO.3 to +10.000 mm.
The same as on P.82, the parameters to specify are those shown
below.
Specify four bytes of pData in this situation.
<Tolerance upper/lower limit>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15)
Category:06h, Item:0Eh (upper limit), 0Fh (lower limit)
Target1:00h~0Fh (OUT1~16) Target2~4:00h
byte Setting Data
0 Tolerance upper/lower limit value: 0.01μm unit.
1 Sined 32-bit integer.
2 * Display range lower limit for the minimum display
unit Tolerance upper/lower limit value display
3
range upper limit for the minimum display unit

LJ-V7000_COM_RM_E 65
The value must be entered in units of 0.01 μm, so if you want to specify +10.000 mm, you have to enter the
value "1000000" (which is equal to 10.000 mm). In hexadecimal, this value is "00 0F 42 40". With the sample
program, you have to enter comma-segmented values in little-endian format, so enter "40,42,0F,00".
For details on the top parameters 0: Write settings area, 1: Running settings area, and 2: Save area, see
"9.2.9.3 Write processing for settings".

12.2 Batch sending/receiving


Specify FFh in Category above to send/receive Environment settings/Common measurement settings/
settings for each program in a batch.

Example 1: Sending/receiving Common measurement setting data in a batch


Type: 02h, Category: FFh, Item: 00h, Target 1 to 4: 00h

Example 2: Sending/receiving program No. 5 settings in a batch


Type: 15h, Category: FFh, Item: 00h, Target 1 to 4: 00h

Refer to the sample program for details.

* When sent/received as a batch, Environment settings are 60 bytes, Common measurement settings are
12 bytes, and program settings are 10932 bytes.

66 LJ-V7000_COM_RM_E
12.3 Details of Items for Sending/Receiving Settings
Changing Environmental Settings
<TCP command port number/TCP high-speed port
<Device name>
Type:01h, Category:00h, Item:00h number >
Type:01h, Category:00h
Target1~4:00h
Item:07h (TCP command port number)/
byte Setting Data
08h (TCP high-speed port)
0 Device name, byte 1
Target1~4:00h
1 Device name, byte 2
byte Setting Data
2 Device name, byte 3
0
to to Port number (1~65535)
1
31 Device name, byte 32
2 Reserved (fixed as 0)
*32 characters max. 0 is not appended to the end.
3 Reserved (fixed as 0)
*SHIFT-JIS
Do not set TCP command ports number same as TCP
high-speed port number.
<Operation at next power on>
Type:01h, Category:00h, Item:01h <Baud rate>
Target1~4:00h Type:01h, Category:00h, Item:0Ah
byte Setting Data Target1~4:00h
Operation at next power on 0:BOOTIP byte Setting Data
0 addresses fixed, 1:IP address fixed, Baud rate: 0:9600, 1:19200, 2:38400, 3:57600,
0
2:BOOTP 4:115200
1 Reserved (fixed as 0) 1 Reserved (fixed as 0)
2 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0) 3 Reserved (fixed as 0)

<High-speed communication band restriction> <Parity>


Type:01h, Category:00h, Item:02h Type:01h, Category:00h, Item:0Bh
Target1~4:00h Target1~4:00h
byte Setting Data byte Setting Data
High-speed communication bandrestriction 0 Parity:0:NONE, 1:EVEN, 2:ODD
0
0:OFF, 1:500Mbps, 2:200Mbps, 3:100Mbps 1 Reserved (fixed as 0)
1 Reserved (fixed as 0) 2 Reserved (fixed as 0)
2 Reserved (fixed as 0) 3 Reserved (fixed as 0)
3 Reserved (fixed as 0)

<MTU during high-speed communication> Common measurement settings


Type:01h, Category:00h, Item:03h
<Operation mode>
Target1~4:00h Type:02h, Category:00h, Item:00h
byte Setting Data Target1~4:00h
0 byte Setting Data
MTU setting:1500~9216
1 0 Operation mode: 0:High-speed, 1:Advanced
2 Reserved (fixed as 0) 1 Reserved (fixed as 0)
3 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0)
<IPaddress/Subnet mask/Gateway>
Type:01h, Category:00h
Item:04h (IP address)/05h (Subnet mask)/06h (Gateway)
<Memory allocation>
Type:02h, Category:00h, Item:01h
Target1~4:00h
Target1~4:00h
byte Setting Data
byte Setting Data
0 IP address, 1st byte Memory allocation setting: 0:Double buffer, 1:Entire
0
1 IP address, 2nd byte area (overwrite), 2:Entire area (do not overwrite)
2 IP address, 3rd byte 1 Reserved (fixed as 0)
3 th 2 Reserved (fixed as 0)
IP address, 4 byte
3 Reserved (fixed as 0)
The following IP addresses are treated as invalid IP
addresses:
<Operation when memory full>
0.0.0.0./224.0.0.0~255.255.255.255
Type:02h, Category:00h, Item:02h
The following addresses are treated as invalid subnet
Target1~4:00h
masks:
0.0.0.0./255.255.255.255/ There are no consecutive[1]bits byte Setting Data
from the beginning (Example:255.255.255.64= 0 Operation when memory full: 0:Overwrite, 1:Stop
11111111.11111111.11111111.01000000 is an error) 1 Reserved (fixed as 0)
The following addresses are treated as invalid gateway: 2 Reserved (fixed as 0)
224.0.0.0~255.255.255.255 3 Reserved (fixed as 0)

LJ-V7000_COM_RM_E 67
<Parallel imaging> Change Program setting
Type:02h, Category:00h, Item:03h • Trigger settings
Target1~4:00h <Trigger mode>
byte Setting Data Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
0 Parallel imaging: 0:Disabled, 1:Enabled , 1F:Program NO.15)
1 Reserved (fixed as 0) Category:00h, Item:01h
2 Reserved (fixed as 0) Target1~4:00h
3 Reserved (fixed as 0) byte Setting Data
Trigger mode: 0:Continuous trigger, 1:External
0
<Strobe output time> trigger, 2:Encoder trigger
Type:02h, Category:00h, Item:04h 1 Reserved (fixed as 0)
Target1~4:00h 2 Reserved (fixed as 0)
byte Setting Data 3 Reserved (fixed as 0)
Strobe output time: 0:10μs, 1:20μs, 2:50μs,
0 3:100μs, 4:200μs, 5:500μs, 6:1ms, 7:2ms, 8:5ms, <Sampling frequency>
9:10ms, 10:20ms Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
1 Reserved (fixed as 0) , 1F:Program NO.15)
2 Reserved (fixed as 0) Category:00h, Item:02h
3 Reserved (fixed as 0) Target1~4:00h
byte Setting Data
<TRG minimum input time>
Type:02h, Category:00h, Item:06h Sampling frequency: 0:10Hz, 1:20Hz, 2:50Hz,
3:100Hz, 4:200Hz, 5:500Hz, 6:1KHz, 7:2KHz,
Target1~4:00h 0
8:4KHz, 9:4.13KHz, 10:8KHz, 11:16KHz,
byte Setting Data 12:32KHz, 13:64KHz
Constant when TRG input terminal: 0:7μs, 1:10μs, 1 Reserved (fixed as 0)
0
2:20μs, 3:50μs, 4:100μs, 5:200μs, 6:500μs, 7:1ms
2 Reserved (fixed as 0)
1 Reserved (fixed as 0)
3 Reserved (fixed as 0)
2 Reserved (fixed as 0)
3 Reserved (fixed as 0) <Batch measurement>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
<ENCODER minimum input time> , 1F:Program NO.15)
Type:02h, Category:00h, Item:07h Category:00h, Item:03h
Target1~4:00h Target1~4:00h
byte Setting Data byte Setting Data
Constant when ENCODER input terminal: 0:120ns, 0 Batch measurement: 0:Batch OFF, 1:Batch ON
0 1:150ns, 2:250ns, 3:500ns, 4:1μs, 5:2μs, 6:5μs,
1 Reserved (fixed as 0)
7:10μs, 8:20μs
2 Reserved (fixed as 0)
1 Reserved (fixed as 0)
3 Reserved (fixed as 0)
2 Reserved (fixed as 0)
3 Reserved (fixed as 0) <Inter-trigger pitch>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
<Control terminal minimum input time>
, 1F:Program NO.15)
Type:02h, Category:00h, Item:08h
Category:00h, Item:04h
Target1~4:00h
Target1~4:00h
byte Setting Data
byte Setting Data
Control terminal minimum input time: 0:250μs,
0 0 Inter-trigger pitch: 0:Pitch OFF, 1:Pitch ON
1:1ms
1 Reserved (fixed as 0) 1 Reserved (fixed as 0)
2 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0) 3 Reserved (fixed as 0)

<Change program> <Inter-trigger pitch count>


Type:02h, Category:00h, Item:09h Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15)
Target1~4:00h
Category:00h, Item:05h
byte Setting Data
Target1~4:00h
0 Change program: 0:Terminal, 1:Command
byte Setting Data
1 Reserved (fixed as 0)
0 Pitch count: 1~50000 (0.001mm unit,
2 Reserved (fixed as 0)
1 0.001~50.000mm)
3 Reserved (fixed as 0)
2 Reserved (fixed as 0)
3 Reserved (fixed as 0)

68 LJ-V7000_COM_RM_E
<Mutual interference prevention> • Imaging settings
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, <Binning>
, 1F:Program NO.15) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:00h, Item:06h , 1F:Program NO.15)
Target1~4:00h Category:01h, Item:01h
byte Setting Data Target1:00h (headA/wide), 01h (headB), Target2~4:00h
0 Mutual interference prevention: 0:OFF, 1:ON byte Setting Data
1 Reserved (fixed as 0) 0 Binning: 0: OFF, 1: ON
2 Reserved (fixed as 0) 1 Reserved (fixed as 0)
3 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0)
<Input mode>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, <X direction>
, 1F:Program NO.15) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:00h, Item:07h , 1F:Program NO.15)
Target1~4:00h Category:01h, Item:02h
byte Setting Data Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Encoder trigger input mode: 0: 1-phase 1TM (no byte Setting Data
0 dir_), 1:2-phase 1 times, 2:2-phase 2 times, Measurement range X direction: 0:FULL,
3:2-phase 4 times 0
1:MIDDLE, 2:SMALL
1 Reserved (fixed as 0) 1 Reserved (fixed as 0)
2 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0) 3 Reserved (fixed as 0)

<Skipping> <Z direction>


Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) , 1F:Program NO.15)
Category:00h, Item:08h Category:01h, Item:03h
Target1~4:00h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
byte Setting Data byte Setting Data
Encoder trigger skipping: 0: Skipping OFF, Measurement range Z direction: 0:FULL,
0 0
1:Skipping ON 1:MIDDLE, 2:SMALL
1 Reserved (fixed as 0) 1 Reserved (fixed as 0)
2 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0) 3 Reserved (fixed as 0)

<Points to skip> <CMOS sensitivity>


Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) , 1F:Program NO.15)
Category:00h, Item:09h Category:01h, Item:05h
Target1~4:00h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
byte Setting Data byte Setting Data
0 CMOS sensitivity characteristics: 0:High precision,
Encoder trigger skipping count: 2~1000
1 0 1:High dynamic range1, 2:High dynamic range2,
2 Reserved (fixed as 0) 3:High dynamic range3
3 Reserved (fixed as 0) 1 Reserved (fixed as 0)
2 Reserved (fixed as 0)
<Batch count> 3 Reserved (fixed as 0)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) <Exposure time>
Category:00h, Item:0Ah Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Target1~4:00h , 1F:Program NO.15)
byte Setting Data Category:01h, Item:06h
0 Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Batch count: 50~15000 byte Setting Data
1
2 Reserved (fixed as 0) Exposure time: 0:15μs, 1:30μs, 2:60μs, 3:120μs,
0 4:240μs, 5:480μs, 6:960μs, 7:1920μs, 8:5ms,
3 Reserved (fixed as 0)
9:10ms
1 Reserved (fixed as 0)
2 Reserved (fixed as 0)
3 Reserved (fixed as 0)

LJ-V7000_COM_RM_E 69
<Imaging mode> <Control mode>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) , 1F:Program NO.15)
Category:01h, Item:07h Category:01h, Item:0Bh
Target1:00h (headA/wide), 01h (headB), Target2~4:00h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
byte Setting Data byte Setting Data
Imaging mode: 0:standard, 1:multi emission 0 Control mode: 0:AUTO, 1:MANUAL
0 (synthesis), 2:multi emission (optimized light 1 Reserved (fixed as 0)
intensity) 2 Reserved (fixed as 0)
1 Reserved (fixed as 0) 3 Reserved (fixed as 0)
2 Reserved (fixed as 0)
3 Reserved (fixed as 0) <Upper limit value/Lower limit value>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
<Multi emission (optimized light intensity) detail> , 1F:Program NO.15)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Category:01h, Item:0Ch (upper limit value), 0Dh (lower limit
, 1F:Program NO.15) value)
Category:01h, Item:08h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Target1:00h (headA/wide), 01h (headB), Target2~4:00h byte Setting Data
byte Setting Data 0 FB upper/lower limit value: 1~99
0 Emission times: 0:2 times, 1:4 times 1 Reserved (fixed as 0)
1 Reserved (fixed as 0) 2 Reserved (fixed as 0)
2 Reserved (fixed as 0) 3 Reserved (fixed as 0)
3 Reserved (fixed as 0)
<FB target area>
<Multi emission (synthesis) detail> Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, , 1F:Program NO.15)
, 1F:Program NO.15) Category:01h, Item:0Eh
Category:01h, Item:09h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Target1:00h (headA/wide), 01h (headB), Target2~4:00h byte Setting Data
byte Setting Data 0
FB target area start: 0~639
0 Emission times: 0:3 times, 1:5 times 1
1 Reserved (fixed as 0) 2
FB target area end: 0~639
2 Reserved (fixed as 0) 3
3 Reserved (fixed as 0)
<Peak detection level>
<Mask setting> Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, , 1F:Program NO.15)
, 1F:Program NO.15) Category:01h, Item:0Fh
Category:01h, Item:0Ah Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Traget1:00h (headA/wide), 01h (headB) byte Setting Data
Target2:00h (Upper mask1), 01h (Upper mask2), 0 Peak detection level: 1~5
02h (Upper mask3), 03h (Lower mask1),
1 Reserved (fixed as 0)
04h (Lower mask2), 05h (Lower mask3)
Target3~4:00h 2 Reserved (fixed as 0)
byte Setting Data 3 Reserved (fixed as 0)
Enabled/disabled: 0:Mask disabled, 1:Rectangle,
0
2:Triangle
<Invalid data interpolation count>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
1 Reserved (fixed as 0)
, 1F:Program NO.15)
2 Reserved (fixed as 0)
Category:01h, Item:10h
3 Reserved (fixed as 0)
Target1:00h (headA/wide), 01h (headB), Target2~4:00h
4
X coordinate1: 2~640 byte Setting Data
5
0 Invalid data interpolation count: 0~255
6
Z coordinate1: 2~480 1 Reserved (fixed as 0)
7
2 Reserved (fixed as 0)
8
X coordinate2: 2~640 3 Reserved (fixed as 0)
9
10
Z coordinate2: 2~480
11
12
X coordinate3: 2~640 (invalid when Rectangle)
13
14
Z coordinate3: 2~480 (invalid when Rectangle)
15

70 LJ-V7000_COM_RM_E
<Peak selection> <Time axis compression count>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) , 1F:Program NO.15)
Category:01h, Item:11h Category:02h, Item:04h
Target1:00h (headA/wide), 01h (headB), Target2~4:00h Target1~4:00h
byte Setting Data byte Setting Data
Peak selection: 0:Standard, 1:NEAR, 2:FAR, 0
Time axis compression count: 2~1000
0 3:Remove X multi reflection, 4:Remove Y multi 1
reflection, 5:Make invalid data 2 Reserved (fixed as 0)
1 Reserved (fixed as 0) 3 Reserved (fixed as 0)
2 Reserved (fixed as 0)
3 Reserved (fixed as 0) <Dead zone process valid/invalid>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
<Peak width filter> , 1F:Program NO.15)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Category:02h, Item:05h
, 1F:Program NO.15)
Target1~4:00h
Category:01h, Item:12h
byte Setting Data
Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Dead zone processing enabled/disabled:
byte Setting Data 0
0:disabled, 1:enabled
0 Peak width filter: 0:OFF, 1:ON 1 Reserved (fixed as 0)
1 Reserved (fixed as 0) 2 Reserved (fixed as 0)
2 Reserved (fixed as 0) 3 Reserved (fixed as 0)
3 Reserved (fixed as 0)
<Reverse (X)/Reverse (Z)>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
• Profile , 1F:Program NO.15)
<Combine (wide)> Category:02h, Item:06h (ReverseX), 07h ( ReverseZ)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Target1:00h (headA/wide), 01h (headB), Target2~4:00h
, 1F:Program NO.15)
byte Setting Data
Category:02h, Item:01h
0 Reverse: 0: OFF, 1: ON
Target1~4:00h
1 Reserved (fixed as 0)
byte Setting Data
2 Reserved (fixed as 0)
0 Wide setting: 0:OFF, 1:ON
3 Reserved (fixed as 0)
1 Reserved (fixed as 0)
Note: This setting is not used when one sensor head
2 Reserved (fixed as 0)
3 Reserved (fixed as 0) <Shift(X)/Shift(Z)>
Note: This setting is not used when one sensor head. Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15)
<Compression (X axis)> Category:02h, Item:08h (Shift X), 09h (Shift Z)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Target1:00h (headA/wide), 01h (headB), Target2~4:00h
, 1F:Program NO.15) byte Setting Data
Category:02h, Item:02h 0
Target1~4:00h 1 Shift amount: any value in measurement range
(0.001μm unit, Sined 32-bit integer
byte Setting Data 2
example:1mm=100000, 2mm=200000)
0 Compression (X-axis): 0:OFF, 1:2, 2:4 3
1 Reserved (fixed as 0) Note: This setting is not used when one sensor head.
2 Reserved (fixed as 0)
3 Reserved (fixed as 0) <Median (X axis)/Median (time axis)>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
<Compression (time axis)> , 1F:Program NO.15)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Category:02h, Item:0Ah (Median (x axis)), 0Ch (Median
, 1F:Program NO.15) (time axis))
Category:02h, Item:03h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
Target1~4:00h byte Setting Data
byte Setting Data Median count: 0:OFF, 1:3 points, 2:5 points,
0
0 Compression (time axis): 0:OFF, 1:ON 3:7 points, 4:9 points
1 Reserved (fixed as 0) 1 Reserved (fixed as 0)
2 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0) 3 Reserved (fixed as 0)

LJ-V7000_COM_RM_E 71
<Smoothing> <Tilt correction>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) , 1F:Program NO.15)
Category:02h, Item:0Bh Category:02h, Item:0Fh
Target1:00h (headA/wide), 01h (headB), Target2~4:00h Target1:00h (headA/wide), 01h (headB), Target2~4:00h
byte Setting Data byte Setting Data
0 Smoothing: 0:1, 1:2, 2:4, 3:8, 4:16, 5:32, 6:64 ON/OFF: 0:Correction disabled, 1:Correction
0
1 Reserved (fixed as 0) enabled
2 Reserved (fixed as 0) 1 Reserved (fixed as 0)
3 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0)
<Averaging> 4
Linear calculation area count: 0:Area2 disabled,
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, 1:Area2 enabled
, 1F:Program NO.15) 5 Reserved (fixed as 0)
Category:02h, Item:0Dh 6 Reserved (fixed as 0)
Target1:00h (headA/wide), 01h (headB), Target2~4:00h 7 Reserved (fixed as 0)
byte Setting Data 8 Area start position1: any value in measurement
Averaging count: 0:1, 1:2, 2:4, 3:8, 4:16, 5:32, 9 range
0
6:64, 7:128, 8:256 10 (0.01μm unit Sined 32-bit integer
1 Reserved (fixed as 0) 11 example: 5mm=500000)
2 Reserved (fixed as 0) 12 Area end position1: any value in measurement
3 Reserved (fixed as 0) 13 range
14 (0.01μm unit Sined 32-bit integer
<Invalid data processing (time axis)> example: 5mm=500000)
15
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) 16 Area start position2: any value in measurement
Category:02h, Item:0Eh 17 range
18 (0.01μm unit Sined 32-bit integer
Target1:00h (headA/wide), 01h (headB), Target2~4:00h
19 example: 5mm=500000)
byte Setting Data
0 Processing timses: 0~255 20 Area end position2: any value in measurement
1 Resume times: 0~255 21 range
22 (0.01μm unit Sined 32-bit integer
2 Reserved (fixed as 0)
23 example: 5mm=500000)
3 Reserved (fixed as 0)
24 Post-correction angle (–45.00~+45.00deg) :
25 –4500~+4500
26 Correction angle (–45.00~+45.00deg) :
27 –4500~+4500

72 LJ-V7000_COM_RM_E
<Height correction> • Master regist
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, <Master profile>
, 1F:Program NO.15) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:02h, Item:10h , 1F:Program NO.15)
Target1:00h (headA/wide), 01h (headB), Target2~4:00h Category:03h, Item:01h
byte Setting Data Target1:00h (headA/wide), 01h (headB), Target2~4:00h
ON/OFF: 0:Correction disabled, 1:Correction byte Setting Data
0
enabled valid/invalid: 0:Master invalid,
0
1 Reserved (fixed as 0) 1:Master valid
2 Reserved (fixed as 0) 1 Reserved (fixed as 0)
3 Reserved (fixed as 0) 2 Reserved (fixed as 0)
4 3 Reserved (fixed as 0)
Area start position1: any value in measurement
5 range 4 Profile data amount (*1):
6 (0.01μm unit Sined 32-bit integer 50,75,100,150,200,300,400,600,
example: 5mm=500000) 5 800,1200,1600
7
8 6 Reserved (fixed as 0)
Area end position1: any value in measurement
9 7 Reserved (fixed as 0)
range
10 (0.01μm unit Sined 32-bit integer 8
11 example: 5mm=500000) 9 Xcoordinate data start position (*2)
12 10 (0.01μm unit Sined 32-bit integer)
Area start position2: any value in measurement
13 11
range
14 (0.01μm unit Sined 32-bit integer 12
15 example: 5mm=500000) 13 X direction pitch (*2)
16 14 (0.01μm unit, Sined 32-bit integer)
Area end position2: any value in measurement
17 15
range
18 (0.01μm unit Sined 32-bit integer 16
19 example: 5mm=500000) 17 Profile
20 18 (0.01μm unit Sined 32-bit integer)
21 19
Post-correction height 0~999.99mm: 0~99999 ~
22
23 ~
~ *3
24 Correction span: 1~131071 ~
25 *The correction span is the value devided by ~
26 65536. (Condition:0<Correction span<2) 3212
example: if 98304 is set, (98304÷65536=1.5) 3213
27 correction span is 1.5. Profile
3214 (0.01μm unit Sined 32-bit integer)
3215
*1 Profile data amount depend on the setting. Refer to 10.2
"Profile data amount calculation method" or receive
"MasterProfile" and confirm it.
*2 It depends on the type of sensor head and settings.
Please confirm by receiving "MasterProfile"
*3 This example is in case of 800 points (It depends on
Profile data amount.)

LJ-V7000_COM_RM_E 73
• Position correction settings < correction detail>
<Dual head mode> Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, , 1F:Program NO.15)
, 1F:Program NO.15)
Category:04h, Item:06h (correctionON/OFF)
Category:04h, Item:01h
Target1:00h (headA/wide), 01h (headB)
Target1~4:00h
Target2:00h (position correction1), 01h (position
byte Setting Data correction2), Target3~4:00h
Dual head mode: byte Setting Data
0
0:OFF, 1:ON
Linear calculation area: 0:Area 2 disabled, 1:Area2
1 Reserved (fixed as 0) 0
enabled
2 Reserved (fixed as 0) 1 Reserved (fixed as 0)
3 Reserved (fixed as 0) 2 Reserved (fixed as 0)
Note: This setting is not used when one sensor head. 3 Reserved (fixed as 0)
<Dual head mode target head> 4 Linear calculation area1 Left: any value in
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, 5 measurement range
, 1F:Program NO.15) 6 (0.01μm unit Sined 32-bit integer
Category:04h, Item:02h 7 example: 5mm=500000)
Target1~4:00h 8 Linear calculation area1 Right: any value in
byte Setting Data 9 measurement range
0 Correction target head: 0:headA, 1:headB 10 (0.01μm unit Sined 32-bit integer
1 Reserved (fixed as 0) 11 example: 5mm=500000)
2 Reserved (fixed as 0) 12 Linear calculation area2 Left: any value in
3 Reserved (fixed as 0) 13 measurement range
Note: This setting is not used when one sensor head. 14 (0.01μm unit Sined 32-bit integer
15 example: 5mm=500000)
<Dual head mode X/Z correction amount> 16 Linear calculation area2 Right: any value in
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, 17 measurement range
, 1F:Program NO.15) (0.01μm unit Sined 32-bit integer
18
Category:04h, Item:03h (X correction amount), 04h (Z example: 5mm=500000)
19
correctionamount)
20 Correction standard: 0:Horizontal,1:MasterProfile
Target1~4:00h
21 Reserved (fixed as 0)
byte Setting Data
22 Reserved (fixed as 0)
0
Correction amount: -10000.0~+10000.0mm 23 Reserved (fixed as 0)
1
(0.001μm unit, Sined 32-bit integer
2 example:1mm=100000, 2mm=200000) <preliminary correction detail><Xcorrection detail>
3 Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Note: This setting is not used when one sensor head. , 1F:Program NO.15)
Category:04h, Item:08h (preliminary correctiondetail), 0Bh
< correction ON/OFF><Backup correction ON/OFF> (Xcorrectiondetail)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Target1:00h (headA/wide), 01h (headB)
, 1F:Program NO.15)
Target2:00h (position correction1), 01h (position
Category:04h, Item:05h ( correctionON/OFF), 07h correction2), Target3~4:00h
(preliminary correctionON/OFF)
byte Setting Data
Target1:00h (headA/wide), 01h (headB)
0 Edge measuring area Left: any value in
Target2:00h (Position correction1), 01h (Position
1 measurement range
correction2), Target3~4:00h
2 (0.01μm unit Sined 32-bit integer
byte Setting Data example: 5mm=500000)
3
0 ON/OFF: 0:OFF, 1:ON
4 Edge measuring area Right: any value in
1 Reserved (fixed as 0)
5 measurement range
2 Reserved (fixed as 0)
6 (0.01μm unit Sined 32-bit integer
3 Reserved (fixed as 0) example: 5mm=500000)
7
8 Edge direction: 0:Rising, 1:Falling
9 Detaction direction: 0:+direction, 1:–direction
10 Detection No: 1~10
11 Reserved (fixed as 0)
12
Edge level: any value in measurement range
13
(0.01μm unit Sined 32-bit integer
14 example: 5mm=500000)
15

74 LJ-V7000_COM_RM_E
<XZcorrection selection> • Profilemask settings
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, <Profile mask area settings group>
, 1F:Program NO.15) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:04h, Item:09h , 1F:Program NO.15)
Target1:00h (headA/wide), 01h (headB) Category:05h, Item:01h
Target2:00h (position correction1), 01h (position Target1:00h (headA/wide), 01h (headB), Target2~4:00h
correction2), Target3~4:00h byte Setting Data
byte Setting Data Area selection: 0:Disabled,
0
XYcorrection selection: 0:OFF, 1:Xcorrection, 1:Rectangle, 2:Triangle
0 2:Zcorrection, 3:XZcorrection, 4:ZXcorrection, position correction selection: 0: No
5:Feature point correction 1 position correction, 1:Position
1 Reserved (fixed as 0) correction1, 2:Position correction2
2 Reserved (fixed as 0) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0) 3 Reserved (fixed as 0)
4 Xcoordinate1: any value in
<Z correction Height measurement detail> 5 measurement range
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, 6 (0.01μm unit Sined 32-bit integer
, 1F:Program NO.15) 7 example: 5mm=500000)
Category:04h, Item:0Ch 8 Zcoordinate1: any value in
Target1:00h (headA/wide), 01h (headB) 9 measurement range
Target2:00h (position correction1), 01h (position 10 (0.01μm unit Sined 32-bit integer
correction2), Target3~4:00h example: 5mm=500000)
11
byte Setting Data
12 Xcoordinate2: any value in
0 Height measuring area Left: any value in 13 measurement range
1 measurement range (0.01μm unit Sined 32-bit integer
14
2 (0.01μm unit Sined 32-bit integer example: 5mm=500000)
15
3 example: 5mm=500000)
16 Zcoordinate2: any value in *1
4 Height measuring area Right: any value in 17 measurement range
5 measurement range (0.01μm unit Sined 32-bit integer
18
6 (0.01μm unit Sined 32-bit integer example: 5mm=500000)
19
7 example: 5mm=500000)
20 Xcoordinate3: any value in
8 Height type: 0:Peak, 1:bottom, 6:Average
21 measurement range
9 Reserved (fixed as 0) (0.01μm unit Sined 32-bit integer
22
10 Reserved (fixed as 0) example: 5mm=500000)
23
11 Reserved (fixed as 0)
24
<Featurepoint correction detail> 25 Zcoordinate3: any value in
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, measurement range
, 1F:Program NO.15) 26 (0.01μm unit Sined 32-bit integer
Category:04h, Item:0Dh example: 5mm=500000)
Target1:00h (headA/wide), 01h (headB) 27
Target2:00h (position correction1), 01h (position ~
correction2), Target3~4:00h 139
byte Setting Data * When Rectangle is selected, upper left (Xcoordinate1,
Correction target selection: 0:Peak, 1:Bottom, Zcoordinate1) and bottom right (Xcoordinate2,
0
2:Knee, 3:Intsect (lines), , 4:Contact (lin-arc) Zcoordinate2) should be set. Xcoordinate3, Zcoordinate3
1 Reserved (fixed as 0) is no effect.
2 Reserved (fixed as 0) * When Triangle is selected, (Xcoordinate1, Zcoordinate1),
3 Reserved (fixed as 0) (Xcoordinate2, Zcoordinate2) and (Xcoordinate3,
Zcoordinate3) are used.
* From 4byte, unique parameters are assigned to each
correction target. For details on the unique parameters, * 1 the number of profile mask area (×5) is continuing.
see "Measurement area details" (page 84). (Total 140byte is used.)

LJ-V7000_COM_RM_E 75
<Profile Mask area settings individual> • OUT settings
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, <OUT name>
, 1F:Program NO.15) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:05h, Item:02h , 1F:Program NO.15)
Target1:00h (headA/wide), 01h (headB) Category:06h, Item:01h
Target2:00h~04h (Profile mask area1~5) Target3~4:00h Target1:00h~0Fh (OUT1~16) Target2~4:00h
byte Setting Data Byte Setting Data
0 Area selection:0:Disabled, 1:Rectangle, 2:Triangle 0 OUT name, byte1
position correction selection: 0: No position 1 OUT name, byte2
1 correction, 1:Position correction1, 2:Position 2 OUT name, byte3
correction2 ~ ~
2 Reserved (fixed as 0) 19 OUT name, byte20
3 Reserved (fixed as 0) *20 Characters max. 0 is not appended to the end.
4 *SHIFT-JIS
Xcoordinate1: any value in measurement range
5
(0.01μm unit Sined 32-bit integer
6 example: 5mm=500000) <Minimum display unit>
7 Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
8 , 1F:Program NO.15)
Zcoordinate1: any value in measurement range Category:06h, Item:02h
9
(0.01μm unit Sined 32-bit integer
10 Target1:00h~0Fh(OUT1~16) Target2~4:00h
example: 5mm=500000)
11 byte Setting Data
12 0 Minimum display unit
Xcoordinate2: any value in measurement range 1 Reserved (fixed as 0)
13
(0.01μm unit Sined 32-bit integer
14 2 Reserved (fixed as 0)
example: 5mm=500000)
15 3 Reserved (fixed as 0)
16 * The unit changes according to the measurement mode
Zcoordinate2: any value in measurement range assigned to the OUT.
17
(0.01μm unit Sined 32-bit integer Length system, 0:1mm, 1:0.1mm, 2:0.01mm, 3:0.001mm,
18
example: 5mm=500000) 4:1μm, 5:0.1μm
19
20 Area system, 0:1mm2, 1:0.1mm2, 2:0.01mm2, 3:0.001mm2,
21
Xcoordinate3: any value in measurement range 4:0.0001mm2, 5:0.00001mm2
(0.01μm unit Sined 32-bit integer Angle system, 0:1deg, 1:0.1deg, 2:0.01deg
22
example: 5mm=500000)
23
<Measurement mode>
24 Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Zcoordinate3: any value in measurement range
25 , 1F:Program NO.15)
(0.01μm unit Sined 32-bit integer
26 Category:06h, Item:03h
example: 5mm=500000)
27 Target1:00h~0Fh (OUT1~16) Target2~4:00h
* When Rectangle is selected, upper left (Xcoordinate1, byte Setting Data
Zcoordinate1) and bottom right (Xcoordinate2,
0 Minimum display unit (from)
Zcoordinate2) should be set. Xcoordinate3, Zcoordinate3 is
no effect. 1 Measurement mode (from)
* When Triangle is selected, (Xcoordinate1, Zcoordinate1), 2 Reserved (fixed as 0)
(Xcoordinate2, Zcoordinate2) and (Xcoordinate3, 3 Reserved (fixed as 0)
Zcoordinate3) are used.
4 From 4byte, unique parameters are assigned to
~ each measurement mode. For details on the
unique parameters, see [Unique parameters of
N measurement mode from 4byte]

 Length system 0:1mm, 1:0.1mm, 2:0.01mm,


3:0.001mm, 4:1μm, 5:0.1μm
Area system 0:1mm2, 1:0.1mm2, 2:0.01mm2,
3:0.001mm2, 4:0.0001mm2, 5:0.00001mm2
Angle system 0:1deg, 1:0.1deg, 2:0.01deg

 0:OFF, 1:Height, 2:Step, 3:Position, 4:Center position,


5:Width, 6:Thickness, 7:Angle, 8:R measurement, 9:Area,
10:Master comparison (Z), 11:Distance(point-point),
12:Distance(point-line), 13:Heigh (Profile compression
(time axis) on), 14:Position (Profile compression (time axis)
on), 15:Deflection width (Profile compression (time axis)
on), 16:Height (simple 3D), 17:Step (simple 3D),
18:Position (simple 3D), 19:Calculation

76 LJ-V7000_COM_RM_E
[Unique parameters of measurement mode from 3:Position (when profile compression (time axis) is off)
4byte] byte Setting Data
Measurement mode 0:OFF Measurement target head: 0: HeadA, 1: HeadB, 2:
4
Combined profile (only when profile combine (wide) is on)
byte Setting Data
Measurement target selection: 0:Peak, 1:Bottom,
4
5 2:Knee, 3:Intsect (lines), 4:Contact (lin-arc),
~ Reserved (fixed as 0) 5:Center of circle, 7:Edge
91 Position correction selection: 0: No position correction,
6
1: Position correction1, 2: Position correction2
1:Height (when profile compression (time axis) is off) 7 Reserved (fixed as 0)
byte Setting Data 8 Unique parameters are assigned to each
~ measurement target. For details on the unique
Measurement target head: 0: HeadA, 1: HeadB, 2:
parameters, see "Measurement area details"
4 Combined profile (only when profile combine N (page 84).
(wide) is on)
N+1
Measurement target selection: 0: Peak, 1: Bottom,
~ Reserved (fixed as 0)
5 2: Knee, 3: Intsect (lines), 4: Intsect (lin-arc), 5:
Center of circle, 6: Average 91
Position correction selection: 0: No position
6 correction, 1: Position correction1, 2: Position 4:Center position, 5:Width
correction2 byte Setting Data
7 Reserved (fixed as 0) Measurement target head: 0: HeadA, 1: HeadB, 2:
4
8 Unique parameters are assigned to each Combined profile (only when profile combine (wide) is on)
~ measurement target. For details on the unique Measurement target selection: 0:Peak, 1:Bottom,
parameters, see "Measurement area details" 5 2:Knee, 3:Intsect (lines), 4:Contact (lin-arc),
N (page 84). 5:Center of circle 7:Edge
N+1 Position correction selection: 0: No position correction,
6
1: Position correction1, 2: Position correction2
~ Reserved (fixed as 0)
7 Reserved (fixed as 0)
91
8 Unique parameters are assigned to each
~ measurement target. For details on the unique
2:Step
parameters, see "Measurement area details"
byte Setting Data M (page 84).
Measurement target head: 0: HeadA, 1: HeadB, 2: M+1
4 Combined profile (only when profile combine ~ Reserved (fixed as 0)
(wide) is on)
47
Measurement target selection: 0: Peak, 1: Bottom,
Reference target selection: 0: HeadA, 1: HeadB, 2:
5 2: Knee, 3: Intsect (lines), 4: Intsect (lin-arc), 5: 48
Combined profile (only when profile combine (wide) is on)
Center of circle, 6: Average
Reference target selection: 0:Peak, 1:Bottom,
Position correction selection: 0: No position 49 2:Knee, 3:Intsect (lines), 4:Contact (lin-arc),
6 correction, 1: Position correction1, 2: Position 5:Center of circle, 7:Edge
correction2 Position correction selection: 0: No position correction,
7 Reserved (fixed as 0) 50
1: Position correction1, 2: Position correction2
8 Unique parameters are assigned to each 51 Reserved (fixed as 0)
~ measurement target. For details on the unique 52 Unique parameters are assigned to each
parameters, see "Measurement area details" Reference target. For details on the unique
M ~
(page 84). parameters, see "Measurement area details"
M+1 N (page 84).
~ Reserved (fixed as 0) N+1
47 ~ Reserved (fixed as 0)
Reference target head: 0: HeadA, 1: HeadB, 2: 91
48 Combined profile (only when profile combine
(wide) is on) 6:Thickness
Referene target selection: 0:Peak, 1:Bottom, byte Setting Data
49 2:Knee, 3:Intsect (lines), 4:Contact (lin-arc), 5: Measurement target selection: 8:Max thickness,
Center of circle, 6: Average 4 9:Min thickness, 10:Ave thickness, 11:Max
Position correction selection: 0: No position thickness position, 12:Min thickness position
50 correction, 1: Position correction1, 2: Position Position correction selection (HeadA): 0: No position
5
correction2 correction, 1: Position correction1, 2: Position correction2
51 Reserved (fixed as 0) Position correction selection (HeadB): 0: No position
6
52 Unique parameters are assigned to each correction, 1: Position correction1, 2: Position correction2
~ Reference target. For details on the unique 7 Reserved (fixed as 0)
parameters, see "Measurement area details" 8 Unique parameters are assigned to each
N (page 84).
~ measurement target. For details on the unique
N+1 parameters, see "Measurement area details"
N (page 84).
~ Reserved (fixed as 0)
91 N+1
~ Reserved (fixed as 0)
91

LJ-V7000_COM_RM_E 77
7:Angle 8:R measurement
byte Setting Data byte Setting Data
Measurement target head: 0: HeadA, 1: HeadB, 2: Measurement target head: 0: HeadA, 1: HeadB, 2:
4 Combined profile (only when profile combine 4 Combined profile (only when profile combine
(wide) is on) (wide) is on)
Measurement reference selection: 0:Angle from Position correction selection: 0: No position
5
X-axis, 1:Angle between lines 5 correction, 1: Position correction1, 2: Position
6 Angle range: 0:0~180deg, 1:-90~90deg correction2
Measurement target position correction: 0: No 6 Reserved (fixed as 0)
7 position correction, 1: Position correction1, 2: 7 Reserved (fixed as 0)
Position correction2 Arc calculation area: 0: Area2 disabled, 1: Area2
8
Reference target position correction: 0: No enabled
8 position correction, 1: Position correction1, 2: 9 Reserved (fixed as 0)
Position correction2 10 Reserved (fixed as 0)
9 Reserved (fixed as 0) 11 Reserved (fixed as 0)
10 Reserved (fixed as 0) 12 Arc calculation area Left: any value in
11 Reserved (fixed as 0) 13 measurement range
Measurement target Linear calculation area: 14 (0.01μm unit Sined 32-bit integer
12
0:Area2 disabled, 1:Area2enabled example: 5mm=500000)
15
13 Reserved (fixed as 0)
16 Arc calculation area Right: any value in
14 Reserved (fixed as 0)
17 measurement range
15 Reserved (fixed as 0)
18 (0.01μm unit Sined 32-bit integer
16 Measurement target Linear calculation area Left: example: 5mm=500000)
19
17 any value in measurement range
20 Arc calculation area2 Left: any value in
18 (0.01μm unit Sined 32-bit integer
example: 5mm=500000) 21 measurement range
19
22 (0.01μm unit Sined 32-bit integer
20 Measurement target Linear calculation area Right: example: 5mm=500000)
23
21 any value in measurement range
24 Arc calculation area2 Right: any value in
22 (0.01μm unit Sined 32-bit integer
example: 5mm=500000) 25 measurement range
23
26 (0.01μm unit Sined 32-bit integer
24 Measurement target Linear calculation area2 Left: example: 5mm=500000)
27
25 any value in measurement range
28
26 (0.01μm unit Sined 32-bit integer
example: 5mm=500000) ~ Reserved (fixed as 0)
27
91
28 Measurement target Linear calculation area2
29 Right: any value in measurement range
30 (0.01μm unit Sined 32-bit integer
31 example: 5mm=500000)
Reference target Linear calculation area: 0:Area2
32
disabled, 1:Area2 enabled
33 Reserved (fixed as 0)
34 Reserved (fixed as 0)
35 Reserved (fixed as 0)
36 Reference target Linear calculation area Left: any
37 value in measurement range
38 (0.01μm unit Sined 32-bit integer
39 example: 5mm=500000)
40 Reference target Linear calculation area Right: any
41 value in measurement range
42 (0.01μm unit Sined 32-bit integer
43 example: 5mm=500000)
44 Reference target Linear calculation area2 Left: any
45 value in measurement range
46 (0.01μm unit Sined 32-bit integer
47 example: 5mm=500000)
48 Reference target Linear calculation area2 Right:
49 any value in measurement range
50 (0.01μm unit Sined 32-bit integer
51 example: 5mm=500000)
52
~ Reserved (fixed as 0)
91

78 LJ-V7000_COM_RM_E
9:Area 10:Master comparison (Z)
byte Setting Data byte Setting Data
Measurement target head: 0: HeadA, 1: HeadB, 2: Measurement target head: 0: HeadA, 1: HeadB, 2:
4
Combined profile (only when profile combine (wide) is on) 4 Combined profile (only when profile combine
Measurement reference selection: 0:Reference for 1 line, (wide) is on)
5
1:Reference for 2 lines, 2:Master reference
Position correction selection: 0: No position
Measurement target position correction: 0: No position 5 correction, 1: Position correction1, 2: Position
6
correction, 1: Position correction1, 2: Position correction2
correction2
Measurement target1 position correction: 0: No position
7 6 Reserved (fixed as 0)
correction, 1: Position correction1, 2: Position correction2
Measurement target2 position correction: 0: No position 7 Reserved (fixed as 0)
8
correction, 1: Position correction1, 2: Position correction2 8
9 Reserved (fixed as 0) Area setting Left: any value in measurement range
9
10 Reserved (fixed as 0) (0.01μm unit Sined 32-bit integer
10 example: 5mm=500000)
11 Reserved (fixed as 0)
11
12 Measurement area Area calculation area Left: any
13 value in measurement range 12 Area setting Right: any value in measurement
14 (0.01μm unit Sined 32-bit integer 13 range
15 example: 5mm=500000) 14 (0.01μm unit Sined 32-bit integer
16 Measurement area Area calculation area Right: any 15 example: 5mm=500000)
17 value in measurement range 16
18 (0.01μm unit Sined 32-bit integer ~ Reserved (fixed as 0)
19 example: 5mm=500000)
91
20 Linear calculation area: 0:Area2 disabled, 1:Area2 enabled
21 Reserved (fixed as 0)
22 Reserved (fixed as 0) 11:Distance(point-point)
23 Reserved (fixed as 0) byte Setting Data
24 Reference straight line1 Linear calculation area Measurement target head: 0: HeadA, 1: HeadB, 2:
25 Left: any value in measurement range 4 Combined profile (only when profile combine
26 (0.01μm unit Sined 32-bit integer (wide) is on)
27 example: 5mm=500000) Measurement target selection: 0:Peak, 1:Bottom,
28 Reference straight line1 Linear calculation area 5 2:Knee, 3:Intsect (lines), 4:Contact (lin-arc), 5:
29 Right: any value in measurement range Center of circle
30 (0.01μm unit Sined 32-bit integer Position correction selection: 0: No position
31 example: 5mm=500000) 6 correction, 1: Position correction1, 2: Position
32 Reference straight line1 Area2 Left: any value in correction2
33 measurement range 7 Reserved (fixed as 0)
34 (0.01μm unit Sined 32-bit integer 8 Unique parameters are assigned to each
35 example: 5mm=500000) measurement target. For details on the unique
~
36 Reference straight line1 Area2 Right: any value in parameters, see "Measurement area details"
37 measurement range M (page 84).
38 (0.01μm unit Sined 32-bit integer M+1
39 example: 5mm=500000) ~ Reserved (fixed as 0)
40 Linear calculation area: 0:Area2 disabled, 1:Area2 enabled
47
41 Reserved (fixed as 0)
Reference target selection: 0: HeadA, 1: HeadB, 2:
42 Reserved (fixed as 0)
48 Combined profile (only when profile combine
43 Reserved (fixed as 0)
(wide) is on)
44 Reference straight line2 Linear calculation area
Reference target selection: 0:Peak, 1:Bottom,
45 Left: any value in measurement range
49 2:Knee, 3:Intsect (lines), 4:Contact (lin-arc),
46 (0.01μm unit Sined 32-bit integer
5:Center of circle
47 example: 5mm=500000)
Position correction selection: 0: No position
48 Reference straight line2 Linear calculation area
50 correction, 1: Position correction1, 2: Position
49 Right: any value in measurement range
correction2
50 (0.01μm unit Sined 32-bit integer
example: 5mm=500000) 51 Reserved (fixed as 0)
51
52 52 Unique parameters are assigned to each
Reference straight line2 area2 Left: any value in
53 measurement range ~ Reference target. For details on the unique
parameters, see "Measurement area details"
54 (0.01μm unit Sined 32-bit integer N (page 84).
55 example: 5mm=500000)
56 N+1
Reference straight line2 area2 Right: any value in
57 measurement range ~ Reserved (fixed as 0)
58 (0.01μm unit Sined 32-bit integer 91
59 example: 5mm=500000)
60
~ Reserved (fixed as 0)
91
* Reference straight line2’s settings are not needed when
Reference for 1 line is selected.
* Reference straight line1, 2’s settings are not needed
whenMaster Reference is selected.

LJ-V7000_COM_RM_E 79
12:Distance (point-line) 14:Position (when profile compression (time axis) is on)
byte Setting Data byte Setting Data
Measurement target head: 0: HeadA, 1: HeadB, 2: Measurement target head: 0: HeadA, 1: HeadB, 2:
4
Combined profile (only when profile combine (wide) is on) 4 Combined profile (only when profile combine
Measurement target selection: 0:Peak, 1:Bottom, 2:Knee, (wide) is on)
5
3:Intsect (lines), 4:Contact (lin-arc), 5:Center of circle Measurement target selection: 0:Peak, 1:bottom,
5
Position correction selection: 0: No position correction, 7:Edge
6
1: Position correction1, 2: Position correction2 6 Reserved (fixed as 0)
7 Reserved (fixed as 0) 7 Reserved (fixed as 0)
8 Unique parameters are assigned to each 8 Unique parameters are assigned to each
~ measurement target. For details on the unique
~ measurement target. For details on the unique
parameters, see "Measurement area details"
M parameters, see "Measurement area details"
(page 84). N (page 84).
M+1
N+1
~ Reserved (fixed as 0)
~ Reserved (fixed as 0)
47
91
Reference target selection: 0: HeadA, 1: HeadB, 2:
48 Combined profile (only when profile combine
(wide) is on) 15:Deflection width (when profile compression (time axis)
Position correction selection: 0: No position is on)
49 correction, 1: Position correction1, 2: Position byte Setting Data
correction2
Measurement target head: 0: HeadA, 1: HeadB, 2:
50 Reserved (fixed as 0) 4 Combined profile (only when profile combine
51 Reserved (fixed as 0) (wide) is on)
Linear calculation area: 0: Area2 disabled, 1: Measurement target selection: 14:P-P(Z), 15:P-
52 5
Area2 enabled P(X)
53 Reserved (fixed as 0) 6 Reserved (fixed as 0)
54 Reserved (fixed as 0) 7 Reserved (fixed as 0)
55 Reserved (fixed as 0) 8 Unique parameters are assigned to each
56 ~ measurement target. For details on the unique
Linear calculation area Left: any value in
57 parameters, see "Measurement area details"
measurement range N
(0.01μm unit Sined 32-bit integer (page 84).
58
example: 5mm=500000) N+1
59
~ Reserved (fixed as 0)
60
Linear calculation area Right: any value in 91
61 measurement range
62 (0.01μm unit Sined 32-bit integer
example: 5mm=500000) 16:Height (simple 3D)
63
byte Setting Data
64 Measurement target head: 0: HeadA, 1: HeadB, 2:
65 Area2 Left: any value in measurement range
4 Combined profile (only when profile combine
(0.01μm unit Sined 32-bit integer
66 example: 5mm=500000) (wide) is on)
67 Measurement target
5
68 selection:0:Peak,1:bottom,6:Average,16:P-P
69 Area2 Right: any value in measurement range 6 Reserved (fixed as 0)
(0.01μm unit Sined 32-bit integer 7 Reserved (fixed as 0)
70 example: 5mm=500000)
71 8 Unique parameters are assigned to each
~ measurement target. For details on the unique
72
parameters, see "Measurement area details"
~ Reserved (fixed as 0) M (page 84).
91 M+1
~ Reserved (fixed as 0)
13:Height (when profile compression (time axis) is on) 15
byte Setting Data 16
Measurement target head: 0: HeadA, 1: HeadB, 2: Ycoordinate start position: value within Batch point
17
4 Combined profile (only when profile combine
18
(wide) is on) Ycoordinate endposition: value within Batch point
19
Measurement target selection: 0:Peak, 1:bottom,
5 20
13:Middle value
6 Reserved (fixed as 0) ~ Reserved (fixed as 0)
7 Reserved (fixed as 0) 91
8 Unique parameters are assigned to each
~ measurement target. For details on the unique
parameters, see "Measurement area details"
N (page 84).
N+1
~ Reserved (fixed as 0)
91

80 LJ-V7000_COM_RM_E
17:Step (simple 3D) 19:Calculation
byte Setting Data byte Setting Data
Measurement target head: 0: HeadA, 1: HeadB, Calculation mode: 0:Addition, 1:Subtraction.
4
4 2: Combined profile (only when profile combine 2:Absolute value, 3:AVE, 4:P-P, 5:MAX, 6:MIN
(wide) is on) 5 Reserved (fixed as 0)
Measurement target selection: 0:Peak, 1:bottom, 6 Reserved (fixed as 0)
5
6:Average
7 Reserved (fixed as 0)
6 Reserved (fixed as 0)
8 Unique parameters are assigned to each
7 Reserved (fixed as 0)
~ calculation mode. The unique parameters are
8 Unique parameters are assigned to each described below.
N
~ measurement target. For details on the unique
parameters, see "Measurement area details" N+1
M (page 84). ~ Reserved (fixed as 0)
M+1 91
~ Reserved (fixed as 0)
15
[Unique parameter of calculation from 8byte]
16 Measurement target Ycoordinate start position:
value withinBatch point 0:Addition 1:Subtraction
17
byte Setting Data
18 Measurement target Ycoordinate end position:
value withinBatch point Calculation target A: OUT number
19 8
(example:OUT1:00h, OUT12:0Bh)
Reference target selection: 0: HeadA, 1: HeadB, 2:
Calculation target B: OUT number
20 Combined profile (only when profile combine 9
(example:OUT1:00h, OUT12:0Bh)
(wide) is on)
10 Reserved (fixed as 0)
Reference target selection: 0:Peak, 1:bottom,
21 11 Reserved (fixed as 0)
6:Average
22 Reserved (fixed as 0)
23 Reserved (fixed as 0) 2:Absolute value
24 Unique parameters are assigned to each byte Setting Data
~ reference target. For details on the unique Target OUT: OUT number (example:OUT1:00h,
8
parameters, see "Measurement area details" OUT12:0Bh)
M (page 84). 9 Reserved (fixed as 0)
M+1 10 Reserved (fixed as 0)
~ Reserved (fixed as 0) 11 Reserved (fixed as 0)
31
32 Reference target Ycoordinate start position: 3:AVE/ 4:P-P/ 5:MAX/ 6:MIN
33 value withinBatch point byte Setting Data
34 Reference target Ycoordinate end position: OUT1: 0:Do not use as calculation target, 1: Use
8
value withinBatch point as calculation target
35
OUT2~15: 0:Do not use as calculation target, 1:
36 ~
Use as calculation target
~ Reserved (fixed as 0)
OUT16: 0:Do not use as calculation target, 1: Use
91 23
as calculation target

18:Position (simple 3D) <Measurement value hold count>


byte Setting Data Type:10h~1Fh (10h~Program NO.0, 11h:Program NO.1,
Measurement target head: 0: HeadA, 1: HeadB, 2: , 1F:Program NO.15)
4 Combined profile (only when profile combine Category:06h, Item:04h
(wide) is on) Target1:00h~0Fh (OUT1~16) Target2~4:00h
5 Output coordinate: 0:Xcoordinate, 1:Ycoordinate byte Setting Data
6 Measurement target selection: 0: Peak, 1: bottom 0
Measurement value hold count: 0~999
7 Reserved (fixed as 0) 1
8 Unique parameters are assigned to each 2 Reserved (fixed as 0)
~ measurement target. For details on the unique 3 Reserved (fixed as 0)
parameters, see "Measurement area details"
M (page 84). <Measurement value filter>
M+1 Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
~ Reserved (fixed as 0) , 1F:Program NO.15)
15 Category:06h, Item:05h
16 Target1:00h~0Fh (OUT1~16) Target2~4:00h
Ycoordinate start position: value withinBatch point
17 byte Setting Data
18 Measurement value filter: 0:OFF, 1:Moving
Ycoordinate end position: value withinBatch point 0
19 Average, 2:Low-pass filter, 3:High-pass filter
20 1 Reserved (fixed as 0)
~ Reserved (fixed as 0) 2 Reserved (fixed as 0)
91 3 Reserved (fixed as 0)

LJ-V7000_COM_RM_E 81
<Measurement valuefilter detail> [Unique parameters of Measuring period from
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) 4byte]
Category:06h, Item:06h 1:Measurement area
Target1:00h~0Fh (OUT1~16) Target2~4:00h byte Setting Data
Unique parameters are assigned to each measurement 4
Measure start position: value withinBatch point
value filter. 5
6
1:Moving average Measure end position: value withinBatch point
7
byte Setting Data 8
Averagecount: 0:4 times, 1:16 times, 2:64 times, ~ Reserved (fixed as 0)
0
3:256 times, 4:1024 times, 5:4096 times
15
1 Reserved (fixed as 0)
2 Reserved (fixed as 0)
2:OUT reference
3 Reserved (fixed as 0)
byte Setting Data
2:Low-pass filter 4 Reference OUT: 0:OUT1, 1:OUT2 15:OUT16
3:High-pass filter 5
byte Setting Data ~ Reserved (fixed as 0)
Cutoff frequency: 0:0.1Hz, 1:0.3Hz, 2:1Hz, 3:3Hz, 15
0
4:10Hz, 5:30Hz, 6:100Hz, 7:300Hz, 8:1000Hz
1 Reserved (fixed as 0) 3:Threshold (level)
2 Reserved (fixed as 0) byte Setting Data
3 Reserved (fixed as 0) 4 Upper limit: 0.01μm unit. Sined 32-bit integer.
5 *Display range lower limit for the minimum display
<Scaling measurement value1><Scaling display value1> 6 unit Upper limit display range upper limit for
<Scaling measurement value2><Scaling display value2> the minimum display unit
7
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) 8 Lower limit: 0.01μm unit. Sined 32-bit integer.
Category:06h, Item:07h (Scaling measurement value1), 9 *Display range lower limit for the minimum display
08h (Scaling display value1), 09h (Scaling measurement 10 unit Lower limit dislay range upper limit for the
value2), 0Ah (Scaling display value2) 11 minimum display unit
Target1:00h~0Fh (OUT1~16) Target2~4:00h 12
byte Setting Data 13
0 Measurement value/Display value: 0.01μm unit Reserved (fixed as 0)
14
1 Sined 32-bit integer.
*Display range lower limit for the minimum display 15
2
unit Measurement value/Display value Display
3 range upper limit for the minimum display unit. 4:Threshold (Edge)
byte Setting Data
<Measuring mode>
4 Edge threshold: 0.01μm unit. Sined 32-bit integer.
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) 5 *Display range lower limit for the minimum display
6 unit Edge threshold display range upper limit
Category:06h, Item:0Bh
7 for the minimum display unit
Target1:00h~0Fh (OUT1~16) Target2~4:00h
8 Edge direction: 0:Rising, 1:Falling
byte Setting Data
Measuring mode: 0:Normal, 1:Peak hold, 2:bottom 9 Reserved (fixed as 0)
0 hold, 3:Peak to Peak hold, 4:Average hold, 5:Sample 10 Reserved (fixed as 0)
hold, 6:Peak, 7:bottom, 8:Peak to Peak, 9:Average 11 Reserved (fixed as 0)
1 Reserved (fixed as 0) 12
2 Reserved (fixed as 0) 13 Measurement count:
3 Reserved (fixed as 0) when batch off:Integer from 1 to 999,999
14
when batch on:Integer from 1 to Batch point
15
<Measuring period>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
<Offset>
, 1F:Program NO.15)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:06h, Item:0Ch
, 1F:Program NO.15)
Target1:00h~0Fh (OUT1~16) Target2~4:00h
Category:06h, Item:0Dh
byte Setting Data Target1:00h~0Fh (OUT1~16) Target2~4:00h
Measuring period: 0:Terminal/command,
byte Setting Data
0 1:Measurement area 2 :OUT reference,
3:Threshhold (level), 4:Threshhold (Edge) 0 Offset: 0.01μm unit. Sined 32-bit integer.
1 Reserved (fixed as 0) 1 *Display range lower limit for the minimum display
2 Reserved (fixed as 0) 2 unit Offset display range upper limit for the
3 minimum display unit
3 Reserved (fixed as 0)
4 Unique parameters are assigned to each
~ measuring period. The unique parameters are
15 described below.

82 LJ-V7000_COM_RM_E
<Tolerance upper/lower limit> • Terminal settings
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, <Judgment output setting>
, 1F:Program NO.15) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Category:06h, Item:0Eh (upper limit), 0Fh (lower limit) , 1F:Program NO.15)
Target1:00h~0Fh (OUT1~16) Target2~4:00h Category:07h, Item:01h
byte Setting Data Target1:00h~0Bh (OUT_PIN1~12) Target2~4:00h
0 Tolerance upper/lower limit value: 0.01μm unit. byte Setting Data
1 Sined 32-bit integer. 0 Setting method: 0:No setting, 1:AND, 2:OR
2 * Display range lower limit for the minimum display 1 Reserved (fixed as 0)
unit Tolerance upper/lower limit value display 2 Reserved (fixed as 0)
3
range upper limit for the minimum display unit 3 Reserved (fixed as 0)
4 OUT1 judgment result: 0:Not specified, 2:HI, 4:GO, 8:LO
<Hysteresis>
5 OUT2 judgment result: 0:Not specified, 2:HI, 4:GO, 8:LO
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) ~ ~
Category:06h, Item:10h 21 OUT16 judgment result: 0:Not specified, 2:HI, 4:GO, 8:LO
Target1:00h~0Fh (OUT1~16) Target2~4:00h * The judgment result can be specified by bits with logical
OR. When HI and GO are both specified, the
byte Setting Data
measurement result value is “6”.
0
Hysteresis: 0.01μm unit. Sined 32-bit integer.
1 <Analog output target OUT>
*0 Hysteresis display range upper limit for the
2 Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
minimum display unit
3 , 1F:Program NO.15)
Category:07h, Item:02h
<ZERO>
Target1:00h (CH1), 01h (CH2) Target2~4:00h
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) byte Setting Data
Category:06h, Item:11h Target OUT: 0:OUT1, 1:OUT2 15:OUT16,
0
255:none
Target1:00h~0Fh (OUT1~16) Target2~4:00h
1 Reserved (fixed as 0)
byte Setting Data
2 Reserved (fixed as 0)
0 ZERO: 0:None, 1:ZERO1, 2:ZERO2
3 Reserved (fixed as 0)
1 Reserved (fixed as 0)
2 Reserved (fixed as 0) <Analog output scaling>
3 Reserved (fixed as 0) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15)
<TIMING/RESET> Category:07h, Item:03h
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Target1:00h (CH1), 01h (CH2) Target2~4:00h
, 1F:Program NO.15)
byte Setting Data
Category:06h, Item:12h
0
Target1:00h~0Fh (OUT1~16) Target2~4:00h
1
byte Setting Data OUT display value1: Sined 32-bit integer *1
2
TIMING/RESET: 0:None, 1:TIMING1/RESET1,
0 3
2:TIMING2/RESET2
1 Reserved (fixed as 0) 4
2 Reserved (fixed as 0) 5 Output voltage1: Sined 32-bit integer
6 -10.5V~10.5V (1mVunit)
3 Reserved (fixed as 0)
7
<Zero reference value> 8
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, 9
, 1F:Program NO.15) OUT display value2: Sined 32-bit integer *1
10
Category:06h, Item:13h 11
Target1:00h~0Fh (OUT1~16) Target2~4:00h 12
byte Setting Data 13 Output voltage2: Sined 32-bit integer
0 Zero reference value: 0.01μm unit. Sined 32-bit 14 -10.5V~10.5V (1mVunit)
1 integer.
15
*Display range lower limit for the minimum display
2 * 1 setting range
unit Zero reference value display range upper
3 limit for the minimum display unit Length (mm)…-999.999mm~999.999mm (0.01μm unit)
Area (mm2)…-9999.99mm2~9999.99mm2
(0.00001mm2unit)
Angle (deg)…-9999.99deg~9999.99deg (0.001degunit)

LJ-V7000_COM_RM_E 83
• Storage settings <Storage data amount (OUT data (level)>
<Storage target> Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, , 1F:Program NO.15)
, 1F:Program NO.15) Category:08h, Item:05h
Category:08h, Item:01h Target1~4:00h
Target1~4:00h byte Setting Data
byte Setting Data 0
0 Storage target: 0:OFF, 1:OUT value, 2:Profile 1 Upper limit value: The range that can be input in
the OUT minimum display unit. (0.01μm unit.
1 Reserved (fixed as 0) 2
Sined 32-bit integer)
2 Reserved (fixed as 0) 3
3 Reserved (fixed as 0) 4
5 Lower limit value: The range that can be input in
<Storage condition> the OUT minimum display unit. (0.01μm unit.
6
Sined 32-bit integer)
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1, 7
, 1F:Program NO.15)
8 Target OUT: 0:OUT1, 1:OUT2 15:OUT16
Category:08h, Item:02h
9 Reserved (fixed as 0)
Target1~4:00h
10 Reserved (fixed as 0)
byte Setting Data
11 Reserved (fixed as 0)
Storage condition: 0:Terminal/Command, 1: OUT
0
update, 2:OUT data (edge), 3:OUT data (level)
1 Reserved (fixed as 0) • Program name
2 Reserved (fixed as 0) <Program name>
3 Reserved (fixed as 0) Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15)
<Storage data amount (Terminal/Command)>
Category:09h, Item:00h
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) Target1~4:00h
Category:08h, Item:03h byte Setting Data
Target1~4:00h 0 Program name, byte0
1 Program name, byte1
byte Setting Data
0 2 Program name, byte2
1 Storage data amount: 0 to buffer size upper limit. ~ ~
*Upper limit value is the max points can be set by LJ- 23 Program name, byte23
2
Navigator2.
3 * 24 characters max. 0 is not appended to the end.
* SHIFT-JIS
<Storage data amount (OUT data (Edge))>
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15) • Measurement area details
Category:08h, Item:04h The correction target selection of feature point
Target1~4:00h correction of position correction and the unique
byte Setting Data
parameters of the measurement target of the
0
Storage data amount: 0 to buffer size upper limit. measurement mode are shown below.The byte
1
*Upper limit value is the max points can be set by LJ- numbers shown here indicate the byte numbers from
2 Navigator2.
3
the start of the corresponding data block. (see the
4 example at 12.4)
Threshold: The range that can be input in the OUT 0:Peak, 1:bottom, 6:Average, 8:Maximum thickness,
5
minimum display unit. (0.01μm unit. Sined 32-bit 9:Minimum thickness, 10:Average thickness, 11:Maximum
6
integer) thickness position, 12:Mimimum thickness position,
7 13:Middle value, 14:P-P (Z) (only when profile compression
8 (time axis) is on),16:P-P (only for Height (simple 3D)
9 Hysteresis: 0 Hysteresis display range upper
byte Setting Data
limit for the minimum display unit. (0.01μm unit.
10 0
Sined 32-bit integer)
11 Area Left: any value in measurement range
1
(0.01μm unit Sined 32-bit integer
Target OUT: 0:OUT1, 1:OUT2, 2
12 example: 5mm=500000)
2:OUT3 15:OUT16 3
13 Edgedirection: 0:Rising, 1:Falling 4
14 Reserved (fixed as 0) Area Right: any value in measurement range
5
15 Reserved (fixed as 0) (0.01μm unit Sined 32-bit integer
6
example: 5mm=500000)
7

84 LJ-V7000_COM_RM_E
2:Knee 4:Contact (line-arc)
byte Setting Data byte Setting Data
0 Linear calculation area: 0: Area2
Area Left: any value in measurement range disabled, 1: Area2 enabled
1
(0.01μm unit Sined 32-bit integer
2 1 Reserved (fixed as 0)
example: 5mm=500000)
3 2 Reserved (fixed as 0)
4 3 Reserved (fixed as 0)
Area Right: any value in measurement range 4
5
(0.01μm unit Sined 32-bit integer Line calculation area Left: Any
6 5
example: 5mm=500000) value in measurement range
7 (0.01μm unit Sined 32-bit integer.
6
8 Knee shape: 0:Valley, 1:Peak example: 5mm=500000)
9 Detection direction: 0: + direction, 1: - direction 7
10 Detection No: 1~10 8
11 Sensitivity: 0~100 Line calculation area Right: Any
9 value in measurement range
10 (0.01μm unit Sined 32-bit integer. Line
3:Intersection (lines) example: 5mm=500000)
byte Setting Data 11
Linear calculation area: 0: Area2 12
0
disabled, 1: Area2 enabled Area2 Left: Any value in
13 measurement range (0.01μm unit
1 Reserved (fixed as 0)
2 Reserved (fixed as 0) 14 Sined 32-bit integer.
example: 5mm=500000)
3 Reserved (fixed as 0) 15
4 Line calculation area Left: Any 16
5 value in measurement range
17 Area2 Right: Any value in
6 (0.01μm unit Sined 32-bit integer. measurement range (0.01μm unit
7 example: 5mm=500000) 18 Sined 32-bit integer.
8 example: 5mm=500000)
Line calculation area Right: Any 19
9 value in measurement range
10 (0.01μm unit Sined 32-bit integer. Line1 Arc calculation area: 0: Area2
example: 5mm=500000) 20
11 disabled, 1: Area2 enabled
12 21 Reserved (fixed as 0)
Area2 Left: Any value in
13 measurement range (0.01μm unit 22 Reserved (fixed as 0)
14 Sined 32-bit integer. 23 Reserved (fixed as 0)
15 example: 5mm=500000) 24
Arc calculation area Left: Any
16 25 value in measurement range
17 Area2 Right: Any value in
26 (0.01μm unit Sined 32-bit integer.
18 measurement range (0.01μm unit
example: 5mm=500000)
Sined 32-bit integer. 27
19 example: 5mm=500000)
28
Arc calculation area Right: Any
Linear calculation area count: 0: 29 value in measurement range
20
Area2 disabled, 1: Area2 enabled (0.01μm unit Sined 32-bit integer. Arc
30
21 Reserved (fixed as 0) example: 5mm=500000)
31
22 Reserved (fixed as 0)
23 Reserved (fixed as 0) 32
Area2 Left: Any value in
24 Line calculation area Left: Any 33 measurement range (0.01μm unit
25 value in measurement range Sined 32-bit integer.
34
26 (0.01μm unit Sined 32-bit integer. example: 5mm=500000)
27 example: 5mm=500000) 35
28 Line calculation area Right: Any 36
29 Area2 Right: Any value in
value in measurement range 37 measurement range (0.01μm unit
30 (0.01μm unit Sined 32-bit integer. Line2
38 Sined 32-bit integer.
31 example: 5mm=500000)
example: 5mm=500000)
32 39
Area2 Left: Any value in
33 measurement range (0.01μm unit
34 Sined 32-bit integer.
35 example: 5mm=500000)
36
37 Area2 Right: Any value in
38 measurement range (0.01μm unit
Sined 32-bit integer.
39 example: 5mm=500000)

LJ-V7000_COM_RM_E 85
5:Centerof circle 15:P-P (X) (only for when profile compression (time axis) is
byte Setting Data on)
Arc calculation areacount: byte Setting Data
0
0: Area2 disabled, 1: Area2 enabled 0 Edge measuring area Left: any value in
1 Reserved (fixed as 0) 1 measurement range
2 Reserved (fixed as 0) 2 (0.01μm unit Sined 32-bit integer
3 Reserved (fixed as 0) 3 example: 5mm=500000)
4 Arc calculation area Left: 4 Edge measuring area Right: any value in
5 any value in measurement range 5 measurement range
6 (0.01μm unit Sined 32-bit integer 6 (0.01μm unit Sined 32-bit integer
7 example: 5mm =500000) 7 example: 5mm=500000)
8 Arc calculation area Right: 8 Edge direction: 0:Rising, 1:Falling
9 any value in measurement range 9 Detect direction: 0:+direction, 1:–direction
10 (0.01μm unit Sined 32-bit integer 10 Detect No: 1~10
11 example: 5mm =500000) 11 Reserved (fixed as 0)
12 12
Area2 Left: any value in measurement range Edge level: any value in measurement range
13 13
(0.01μm unit Sined 32-bit integer (0.01μm unit Sined 32-bit integer
14 example: 5mm =500000) 14 example: 5mm=500000)
15 15
16
Area2 Right: any value in measurement range
17
(0.01μm unit Sined 32-bit integer example: 5mm
18 =500000)
19

7:Edge (when profile compression (time axis) is off)


byte Setting Data
0 Edge measuring area Left: any value in
1 measurement range
2 (0.01μm unit Sined 32-bit integer
3 example: 5mm=500000)
4 Edge measuring area Right: any value in
5 measurement range
6 (0.01μm unit Sined 32-bit integer
7 example: 5mm=500000)
8 Edge direction: 0:Rising, 1:Falling
9 Detect direction: 0:+direction, 1:–direction
10 Detect No: 1~10
11 Reserved (fixed as 0)
12
Edge level: Any value in measurement range
13
(0.01μm unit Sined 32-bit integer
14
example: 5mm=500000)
15

7:Edge (when profile compression (time axis) is on)


byte Setting Data
0 Edge measuring area Left: any value in
1 measurement range
2 (0.01μm unit Sined 32-bit integer
3 example: 5mm=500000)
4 Edge measuring area Right: any value in
5 measurement range
6 (0.01μm unit Sined 32-bit integer
7 example: 5mm=500000)
8 Detection target: 0:Upper profile, 1:Lower profile
9 Edge direction: 0:Rising, 1:Falling
10 Detect direction: 0:+direction, 1:–direction
11 Detect No: 1~10
12
Edge level: any value in measurement range
13
(0.01μm unit Sined 32-bit integer
14
example: 5mm=500000)
15

86 LJ-V7000_COM_RM_E
12.4 Examples of sending/receiving measurement mode
settings
Example: When "Height (profile compression (time These can be summarized as follows:
axis): OFF" is selected and "Average" height is
<Measurement mode>
measured. Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
, 1F:Program NO.15)
<Measurement mode>
Category:06h, Item:03h
Type:10h~1Fh (10h:Program NO.0, 11h:Program NO.1,
Target1:00h~0Fh (OUT1~16) Target2~4:00h
, 1F:Program NO.15)
byte Setting Data
Category:06h, Item:03h
0 Minimum display unit (from)
Target1:00h~0Fh (OUT1~16) Target2~4:00h
byte Setting Data 1 Measurement mode (from)
0 Minimum display unit (from) 2 Reserved (fixed as 0)
3 Reserved (fixed as 0)
1 Measurement mode (from)
Measurement target head: 0:
2 Reserved (fixed as 0)
HeadA, 1: HeadB, 2: Combined
3 Reserved (fixed as 0) 4
profile (only when profile combine
Measurement
4 From 4byte, unique parameters (wide) is on)
mode
~ are assigned to each Measurement target selection: 0:
measurement mode. For details on 1:Height
Peak, 1: Bottom, 2: Knee, 3:
the unique parameters, see 5
Intsect (lines), 4: Intsect (lin–arc),
N [Unique parameters of 5: Center of circle, 6: Average
measurement mode from 4byte]
Position correction selection: 0: No
6 position correction, 1: Position
1:Height (when profile compression (time correction1, 2: Position correction2
axis) is off) 7 Reserved (fixed as 0)
byte Setting Data 8
Measurement target head: 0: Area Left: any value in
9
HeadA, 1: HeadB, 2: Combined measurement range
4 10 (0.01μm unit Sined 32–bit integer Measurement
profile (only when profile combine
example: 5mm=500000) target
(wide) is on) 11
6:Average
Measurement target selection: 0:
12 Area Right: any value in
Peak, 1: Bottom, 2: Knee, 3:
5 13 measurement range
Intsect (lines), 4: Intsect (lin–arc),
5: Center of circle, 6: Average 14 (0.01μm unit Sined 32–bit integer
15 example: 5mm=500000)
Position correction selection: 0: No
6 position correction, 1: Position 16
correction1, 2: Position correction2 ~ Reserved (fixed as 0)
7 Reserved (fixed as 0) 91
8 Unique parameters are assigned
~ to each measurement target. For
details on the unique parameters,
N see "Measurement area details"
(page 84).
N+1
~ Reserved (fixed as 0)
91

6:Average
byte Setting Data
0 Area Left: any value in
1 measurement range
2 (0.01μm unit Sined 32–bit integer
3 example: 5mm=500000)
4 Area Right: any value in
5 measurement range
6 (0.01μm unit Sined 32–bit integer
7 example: 5mm=500000)

LJ-V7000_COM_RM_E 87
13 Using the high-speed data communication
command
When the high-speed data communication command is used, data for currently measured profiles can be
output from the controller to a computer at high speed. While performing measurements using the LJ-V
Series, data integrated into the computer can be processed.

13.1 Preparation for high-speed data communication


Make sure of and/or carry out the following before performing high-speed data communication.
[Device]
• Use a network interface card that supports gigabit communication.
• Use a hub that supports gigabit communication.
• Use an ethernet cable that is either category 7 or above, or that supports 10GBASE-T.

[Settings]
• Change the controller operation mode to "high-speed (profile only)".
* To create programs more easily.*
When LJ-H2 (setting/monitoring software for the LJ-V7000 Series) is installed, the DLL sample pro-
gram is stored in the folder that LJ-Navigator2 is installed in. Use this as a reference to make it easier
to create programs.
Example) When LJ-Navigator2 is stored in C:\Program Files, the DLL sample program is stored in the
following folder:
C:\Program Files\KEYENCE\LJ-Navigator 2\lib

• About Req and SendPos parameters which must be specified in request preparation before starting
high-speed data communication

Sendpos: Send start position.


0: From previous send complete position (from oldest data if first time)
1: From oldest data
2: From next data

* Specify 2 to read profiles after high-speed communication starts.


When 0 or 1 is selected, profiles stored in the controller are read before starting high-speed commu-
nication.
* Read profiles are deleted from the controller memory.
* If the sampling period is faster than the reading speed, the memory becomes FULL. If the setting
specified for "Operation when memory full" in Common measurement settings is "Stop", profiles are
not accumulated. If "Overwrite", data is overwritten from the oldest data.
* If there is a long period between the first high-speed data communication and the next, the memory
will be overwritten (when "Operation when memory full" is set to "Overwrite"), and previously sent
position data will be overwritten. In this case specifying 0 will cause an error.

[Performing high-speed data communication]


High-speed data communication uses one of two procedures listed below, according to the format and
measurement contents of the target.
• Without using the batch setting
• Using the batch setting
Batch setting is a function that treats the specified number of profiles as a batch.
It can be set to on or off in LJ-navigator2.

88 LJ-V7000_COM_RM_E
[Checking read profiles]
Profiles read using the callback function each have a header that contains the following information.
• Whether the encoder Z phase has been input. (Refer to "Profile header information structure" in "8.2
Structure definitions")
• Trigger counter - Indicates which number trigger from the start of measurements this profile is.
• Encoder count - The encoder count. (The encoder trigger count value can be checked in A-2 of the
User's Manual.) If the encoder input period is faster than the set sampling period, the encoder input is
not regarded as a trigger, but is counted as an encoder count value. (When a pulse exceeding the
encoder minimum input time is input)

Use this information to specify the profile position according to the intended use.

13.2 High-speed communication without using the batch


setting
Use this to continuously measure the target profile, as in the diagram below.
Use this to measure and output the results of the profile with no upper data limit.

[Command procedure]
Commands are sent using the following procedure.

Start ethernet communication


LIV7IF_EthernetOpen

Initialize ethernet high-speed data


communication
LIV7IF_HighSpeedDataEthernetCommunicationInitialize

Request preparation for high-speed data


communication
LIV7IF_PreStartHighSpeedDataCommunication

Callback function
Start high-speed data communication Deliver profile data to the application using the
Discharge Callback function.
LIV7IF_StartHighSpeedDataCommunication

Stop high-speed data communication


LIV7IF_StopHighSpeedDataCommunication

Finalize high-speed data communication


LIV7IF_HighSpeedDataCommunicationFialize

Disconnect ethernet
communication
LIV7IF_CommClose

 Start high-speed data communication


When the start high-speed data communication command is sent to the controller profile data measured
on LJ-V starts to be output. Measurement is carried out on LJ-V each time a trigger is input.

LJ-V7000_COM_RM_E 89
 Callback function
Use the callback function to deliver profile data to the application each time the amount of profile data
specified in high-speed data communication initialization is sent by the computer.
*1 The callback function is called in the following circumstances.
• The specified number of profiles are sent from the controller
• High-speed communication stops (settings are changed, a stop high-speed data
communication command is sent, a clear memory command is sent)
• The program is switched
*2 When the number of profiles specified in batch settings are sent by the computer, the 16th bit of the
8.3.1.1 dwNotify parameter turns ON.
*3 When the number of profiles specified in the callback function is low, the delivery frequency
becomes high and the computer load increases, which may cause the computer processing
speed to decrease. Check and consider the load status of the application when setting the delivery
amount.

 Stop high-speed data communication


Stops profiles from being output from the controller to the computer.
When high-speed communication stops, the 1st bit of the 8.3.1.1 dwNotify parameter turns ON.

 Restart high-speed data communication


To restart high-speed communication after it has stopped, start the high-speed data communication in the
following order:
"Finalize high-speed data communication"  "Disconnect ethernet communication"  "Start ethernet
communication"  "Initialize ethernet high-speed communication"  "Request preparation for Ethernet
high-speed data communication"

13.3 High-speed communication using the batch function


Use this when measuring each target in the batch individually as it arrives, as in the diagram below.
The batch function has the following advantages.
• Up to 15,000 profiles can be managed as one batch of data, making it easier to handle on the computer.
• When the previously set amount of data is measured, data measuring automatically finishes.
• When high-speed data communication starts, the timing of when profiles are sent to the computer can be
controlled using the batch start timing control for the controller.

90 LJ-V7000_COM_RM_E
[Command procedure]
Commands are sent using the following procedure. Confirm that the controller batch setting is ON.

Start ethernet communication


LIV7IF_EthernetOpen

Initialize ethernet high-speed data


communication
LIV7IF_HighSpeedDataEthernetCommunicationInitialize

Request preparation for high-speed data


communication
LIV7IF_PreStartHighSpeedDataCommunication

Start high-speed data communication


LIV7IF_StartHighSpeedDataCommunication

Start batch measurements


[Start batch measurements command]
LIV7IF_StartMeasure(LONG IDeviceld);
or [External terminal] MEASURE_START
Callback function
Deliver profile data to the application using the
Repeat Discharge Callback function.
Stop batch measurements
[Measurements of specified amount complete] or
[Batch stop command]
LIV7IF_StopMeasure(LONG IDeviceld);
or [External terminal] MEASURE_STOP

Stop high-speed data communication


LIV7IF_StopHighSpeedDataCommunication

Finalize high-speed data communication


LIV7IF_HighSpeedDataCommunicationFialize

Disconnect ethernet
communication
LIV7IF_CommClose

 Start high-speed data communication


When the start high-speed data communication command is sent to the controller profile data measured
on LJ-V starts to be output.
* When the batch setting is ON, trigger input cannot be received until batch measuring starts.
For this reason, profiles are not output even if the start high-speed data communication command in
step 1 is sent.

 Start batch measurements


Starts batch measurements. There are two ways to start batch measurements, as listed below.
• Terminal block: Page 11-10 of the LJ-V7000 User's Manual (Measure Start)
• Command: Start batch measurements command (9.2.4 Measurement control LONG
LJV7IF_StartMeasure(LONG lDeviceId);)
When a trigger is input after batch measurement is started, the controller starts ouputting profiles to the
computer.

LJ-V7000_COM_RM_E 91
 Callback function
Use the callback function to deliver profile data to the application each time the amount of profile data
specified in high-speed data communication initialization is sent by the computer.
*1 The callback function is called in the following circumstances.
• The specified number of profiles are sent from the controller
• High-speed communication stops (settings are changed, a stop high-speed data
communication command is sent, a clear memory command is sent)
• The data in the batch is all acquired.
• The program is switched
*2 When the number of profiles specified in batch settings are sent by the computer, the 16th bit of the
8.3.1.1 dwNotify parameter turns ON.
*3 When the number of profiles specified in the callback function is low, the delivery frequency
becomes high and the computer load increases, which may cause the computer processing
speed to decrease. Check and consider the load status of the application when setting the delivery
amount.

 Repeat
Repeat batch start to continuously output profiles.
Batch measurement stops in the following circumstances.
• The specified number of profiles are acquired.
• The stop batch measurements signal is input

 Stop high-speed data communication


Stops profiles from being output from the controller to the computer.
When high-speed communication stops, the 1st bit of the 8.3.1.1 dwNotify parameter turns ON.

 Restart high-speed data communication


To restart high-speed communication after it has stopped, start the high-speed data communication in the
following order:
"Finalize high-speed data communication"  "Disconnect ethernet communication"  "Start ethernet
communication"  "Initialize ethernet high-speed communication"  "Request preparation for Ethernet
high-speed data communication"

92 LJ-V7000_COM_RM_E
13.4 High-speed data communication troubleshooting
Symptom Item to check Remedy
The application exits with Have the callback function call Match the callback function call
an error after high-speed protocols been specified protocols with those in the header
data communication starts. correctly? file.
Is the data that is used by the
The profile data to be
main thread being used by a
obtained becomes Acquire exclusive processing
callback function without first
abnormal at irregular access for shared data.
acquiring exclusive processing
intervals.
access?
Is heavy processing (such as the Change the callback function so
The profile data to be saving of files) being performed that its processing time becomes
obtained becomes within a callback function? shorter.
abnormal at regular Is the communication speed of Change to a high-speed
intervals. your communication path communication path such as
sufficient? 1000BASE-T.
Is heavy processing (such as the Change the callback function so
saving of files) being performed that its processing time becomes
High-speed within a callback function? shorter.
communication is
interrupted. Is the communication speed of Change to a high-speed
your communication path communication path such as
sufficient? 1000BASE-T.
Check items such as the network
environment and the category of
Use the sample program to the LAN cable.
The expected number of
check the obtaining of profiles. The application-side processing
profiles are not obtained.
(See "11 Sample Program".) may not be in time, so review the
processing or reduce the speed
at which profiles are obtained.
The profile is divided into packets
The number of triggers when it is transmitted from the
specified with the Callback controller to the PC, so one
function have been trigger may not equate to the Apply a large number of triggers.
applied, but the Callback transmitting of one whole profile.
function is not called. * See the information shown
below.

Profile data is separated into packets for transmission.


Therefore, depending on the way the data is
First profile separated, all the data from a profile may not be
transmitted to the PC side when a single trigger is
applied. In this situation, the first profile will still be
transmitted when the next trigger is applied.

Second profile

LJ-V7000_COM_RM_E 93
Revision History
Revision date Revision number Revision details

June 2012 2nd edition Ver. 2

October 2012 1st revision Z-phase specifications were added.

February 2014 2nd revision

2nd revision,
August 2014
2nd edition

2nd revision,
July 2015
3rd edition

2nd revision,
December 2016
4th edition

94 LJ-V7000_COM_RM_E
WARRANTIES AND DISCLAIMERS

(1) KEYENCE warrants the Products to be free of defects in materials and workmanship for a period of one (1) year from
the date of shipment. If any models or samples were shown to Buyer, such models or samples were used merely to
illustrate the general type and quality of the Products and not to represent that the Products would necessarily
conform to said models or samples. Any Products found to be defective must be shipped to KEYENCE with all
shipping costs paid by Buyer or offered to KEYENCE for inspection and examination. Upon examination by
KEYENCE, KEYENCE, at its sole option, will refund the purchase price of, or repair or replace at no charge any
Products found to be defective. This warranty does not apply to any defects resulting from any action of Buyer,
including but not limited to improper installation, improper interfacing, improper repair, unauthorized modification,
misapplication and mishandling, such as exposure to excessive current, heat, coldness, moisture, vibration or
outdoors air. Components which wear are not warranted.
(2) KEYENCE is pleased to offer suggestions on the use of its various Products. They are only suggestions, and it is
Buyer's responsibility to ascertain the fitness of the Products for Buyer’s intended use. KEYENCE will not be
responsible for any damages that may result from the use of the Products.
(3) The Products and any samples ("Products/Samples") supplied to Buyer are not to be used internally in humans, for
human transportation, as safety devices or fail-safe systems, unless their written specifications state otherwise.
Should any Products/Samples be used in such a manner or misused in any way, KEYENCE assumes no
responsibility, and additionally Buyer will indemnify KEYENCE and hold KEYENCE harmless from any liability or
damage whatsoever arising out of any misuse of the Products/Samples.
(4) OTHER THAN AS STATED HEREIN, THE PRODUCTS/SAMPLES ARE PROVIDED WITH NO OTHER
WARRANTIES WHATSOEVER. ALL EXPRESS, IMPLIED, AND STATUTORY WARRANTIES, INCLUDING,
WITHOUT LIMITATION, THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
AND NON-INFRINGEMENT OF PROPRIETARY RIGHTS, ARE EXPRESSLY DISCLAIMED. IN NO EVENT SHALL
KEYENCE AND ITS AFFILIATED ENTITIES BE LIABLE TO ANY PERSON OR ENTITY FOR ANY DIRECT,
INDIRECT, INCIDENTAL, PUNITIVE, SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING, WITHOUT
LIMITATION, ANY DAMAGES RESULTING FROM LOSS OF USE, BUSINESS INTERRUPTION, LOSS OF
INFORMATION, LOSS OR INACCURACY OF DATA, LOSS OF PROFITS, LOSS OF SAVINGS, THE COST OF
PROCUREMENT OF SUBSTITUTED GOODS, SERVICES OR TECHNOLOGIES, OR FOR ANY MATTER ARISING
OUT OF OR IN CONNECTION WITH THE USE OR INABILITY TO USE THE PRODUCTS, EVEN IF KEYENCE OR
ONE OF ITS AFFILIATED ENTITIES WAS ADVISED OF A POSSIBLE THIRD PARTY’S CLAIM FOR DAMAGES
OR ANY OTHER CLAIM AGAINST BUYER. In some jurisdictions, some of the foregoing warranty disclaimers or
damage limitations may not apply.

BUYER'S TRANSFER OBLIGATIONS:


If the Products/Samples purchased by Buyer are to be resold or delivered to a third party, Buyer must provide such
third party with a copy of this document, all specifications, manuals, catalogs, leaflets and written information provided
to Buyer pertaining to the Products/Samples.

E 1101-3

LJ-V7000_COM_RM_E 95
Copyright (c) 2014 KEYENCE CORPORATION. All rights reserved. 122030E 1126-4 376GB Printed in Japan

You might also like