Thank you for choosing EZSocket, the Mitsubishi communication middleware for Factory Automation controllers. In this user's reference manual, the usage of EZSocket OLE/COM interface is described.
Always read through this manual before use and fully understand the EZSocket function to ensure correct use.
TRADEMARKS
Windows, Windows NT, Visual C++ and Visual Basic are either trademarks or registered trademarks of Microsoft Corporation.
EZSocket is a registered trademark of Mitsubishi Electric Corporation.
Other brands and product names throughout this manual are trademarks or registered trademarks of the respective company.
(Read these precautions before using.)
When using this product, thoroughly read this manual and the associated manuals. Pay careful attention to safety and handle the product properly. The safety precautions described here are in relation to this product. Get acquainted with this CNC unit and thoroughly study the safety information and precautions before use. These SAFETY PRECAUTIONS classify the safety precautions into two categories: "DANGER" and "CAUTION".
!DANGER
!CAUTION
Indicates that incorrect handling may cause hazardous conditions, resulting in death or severe injury.
Indicates that incorrect handling may cause hazardous conditions, resulting in medium or slight personal injury or physical damage.
Note that the items under " ! CAUTION" could lead to serious consequences as well depending on the situation. Please follow all items listed in "Safety Precautions" as they are equally important.
Keep this manual handy for your future reference.
[DESIGN PRECAUTIONS]
!DANGER
•When connecting with NC unit, install an external safety circuit so that the entire system performs on the safe side when malfunction occurs in the external power supply or personal computer body.
•Incorrect input or incorrect operation may cause an accident.
•Writing function to NC unit directly affects to machine control.
•An unexpected operation may be resulted due to incorrect parameter setting. (EX. Setup)
•Execute after careful check.
[SETUP and MAINTENANCE PRECAUTIONS]
!CAUTION
•Operation error could result in damage to machine or accident.
•Some functions may be different or may not be available depending on the version of NC unit.
1. OVERVIEW ................................................................................................................................................ |
1-1 |
||
1.1 |
Features .......................................................................................................................................................... |
1-1 |
|
1.2 |
Supported Products ........................................................................................................................................ |
1-1 |
|
1.3 |
Connection Configuration ............................................................................................................................... |
1-2 |
|
1.3.1 Connection with MELDASMAGIC Series................................................................................................. |
1-2 |
||
1.3.2 Connection with MELDAS600 Series....................................................................................................... |
1-2 |
||
1.3.3 Connection with MELDAS C6/C64 Series ............................................................................................... |
1-3 |
||
1.3.4 Connection with Mitsubishi CNC700 Series............................................................................................. |
1-3 |
||
1.3.5 Connection with Mitsubishi CNC C70 Series ........................................................................................... |
1-4 |
||
1.4 |
Development Environment.............................................................................................................................. |
1-5 |
|
1.5 |
Installing EZSocket ......................................................................................................................................... |
1-6 |
|
1.6 |
Using EZSocket .............................................................................................................................................. |
1-6 |
|
1.7 |
EZSocket Interface ......................................................................................................................................... |
1-7 |
|
1.7.1 EZSocket custom interface ...................................................................................................................... |
1-7 |
||
1.7.2 EZSocket automation interface ................................................................................................................ |
1-8 |
||
1.8 |
EZSocket Programming Procedure ................................................................................................................ |
1-9 |
|
1.8.1 Programming procedure with VC++ (1) ................................................................................................... |
1-9 |
||
1.8.2 Programming procedure with VC++ (2) ................................................................................................. |
1-10 |
||
1.8.3 Programming procedure with VB (1)....................................................................................................... |
1-11 |
||
1.8.4 Programming procedure with VB (2)...................................................................................................... |
1-12 |
||
2. DETAILS OF I/F SPECIFICATION ............................................................................................................. |
2-1 |
||
2.1 |
Common Items................................................................................................................................................ |
2-1 |
|
2.2 |
Method List...................................................................................................................................................... |
2-4 |
|
2.3 |
IEZNcCommunication3 Interface.................................................................................................................... |
2-9 |
|
2.4 |
IEZNcSystem Interface ................................................................................................................................. |
2-24 |
|
2.5 |
IEZNcPosition Interface ................................................................................................................................ |
2-28 |
|
2.6 |
IEZNcCommand2 Interface .......................................................................................................................... |
2-36 |
|
2.7 |
IEZNcProgram2 Interface ............................................................................................................................. |
2-42 |
|
2.8 |
IEZNcTime Interface ..................................................................................................................................... |
2-48 |
|
2.9 |
IEZNcAxisMonitor Interface .......................................................................................................................... |
2-58 |
|
2.10 |
IEZNcRunStatus Interface .......................................................................................................................... |
2-79 |
|
2.11 IEZNcFile5 Interface.................................................................................................................................... |
2-85 |
||
2.12 |
IEZNcCommonVariable2 Interface ............................................................................................................ |
2-111 |
|
2.13 |
IEZNcLocalVariable2 Interface .................................................................................................................. |
2-117 |
|
2.14 |
IEZNcTool3 Interface ................................................................................................................................ |
2-120 |
|
2.15 |
IEZNcATC2 Interface ................................................................................................................................ |
2-155 |
|
2.16 |
IEZNcParameter2 Interface ...................................................................................................................... |
2-167 |
|
2.17 |
IEZNcOperation Interface ......................................................................................................................... |
2-171 |
|
2.18 |
IEZNcDevice Interface .............................................................................................................................. |
2-174 |
|
2.19 |
IEZNcGeneric2 Interface .......................................................................................................................... |
2-182 |
|
2.20 |
IEZNcSubFunction2 Interface................................................................................................................... |
2-190 |
|
3. ERROR CODE LIST................................................................................................................................... |
3-1 |
4. HOW TO USE API...................................................................................................................................... |
4-1 |
|
4.1 |
EZSocketAPI Operation Procedure ................................................................................................................ |
4-1 |
4.2 |
Initialization for OLE/COM Interface Use........................................................................................................ |
4-2 |
4.3 |
Create EZSocket Object ................................................................................................................................. |
4-3 |
4.4 |
EZSocket Include Files ................................................................................................................................... |
4-3 |
4.5 |
Programming EZSocket Automation Interface by VB ..................................................................................... |
4-4 |
4.5.1 How to use EZSocket OLE automation interface by VB .......................................................................... |
4-4 |
|
4.5.2 How to program by VB (1)........................................................................................................................ |
4-6 |
|
4.5.3 How to program by VB (2)........................................................................................................................ |
4-7 |
|
5. APPLICATION INSTALLATION PROCEDURE .......................................................................................... |
5-1 |
|
5.1 |
Overview ......................................................................................................................................................... |
5-1 |
5.2 |
Redistribution by Using EZSocket Installer for Redistribution ........................................................................ |
5-1 |
5.2.1 Path to the folder in which EZSocket installer for redistribution is saved................................................. |
5-1 |
|
5.2.2 Specification and processing of the EZSocket installer for redistribution ................................................ |
5-2 |
|
5.2.3 Troubleshooting........................................................................................................................................ |
5-4 |
|
5.3 |
Rules on EZSocket Redistribution .................................................................................................................. |
5-5 |
5.3.1 Redistributable module group .................................................................................................................. |
5-5 |
|
5.3.2 Redistributable files of EZSocket ............................................................................................................. |
5-5 |
|
5.4 |
Installation ....................................................................................................................................................... |
5-6 |
5.4.1 Upgrading redistributable files.................................................................................................................. |
5-6 |
|
5.4.2 Install destination directory of EZSocket files........................................................................................... |
5-6 |
|
5.5 |
Structure of the Install Destination Directory................................................................................................... |
5-7 |
5.6 |
Registry Setting............................................................................................................................................... |
5-8 |
5.6.1 Renewing EZSocket registry .................................................................................................................... |
5-8 |
|
5.7 |
System Environment Variable Setting............................................................................................................. |
5-8 |
5.8 |
COM Information Registry Setting .................................................................................................................. |
5-9 |
5.9 |
Precaution for Uninstalling .............................................................................................................................. |
5-9 |
6. SAMPLE APPLICATION............................................................................................................................. |
6-1 |
|
6.1 |
Overview of Sample Application ..................................................................................................................... |
6-1 |
6.2 |
Position Data Display Application ................................................................................................................... |
6-1 |
6.2.1 Performance environment ........................................................................................................................ |
6-1 |
|
6.2.2 Installation and uninstallation ................................................................................................................... |
6-1 |
|
6.2.3 Executing sample application................................................................................................................... |
6-1 |
|
6.2.4 Function list .............................................................................................................................................. |
6-2 |
|
6.2.5 Screen configuration and functions.......................................................................................................... |
6-2 |
|
6.2.6 Set project work space ............................................................................................................................. |
6-4 |
|
6.2.7 IEZNcCommunication object3.................................................................................................................. |
6-5 |
|
6.2.8 IEZNcPosition object ................................................................................................................................ |
6-5 |
|
6.3 |
Monitoring Application..................................................................................................................................... |
6-5 |
6.3.1 Performance environment ........................................................................................................................ |
6-5 |
|
6.3.2 Installation and uninstallation ................................................................................................................... |
6-6 |
|
6.3.3 Executing sample application................................................................................................................... |
6-6 |
|
6.3.4 Function list .............................................................................................................................................. |
6-6 |
|
6.3.5 Screen configuration and functions.......................................................................................................... |
6-7 |
|
6.3.6 Setting project work space ....................................................................................................................... |
6-8 |
|
6.4 |
Macro Sample Program .................................................................................................................................. |
6-8 |
6.4.1 Performance environment ........................................................................................................................ |
6-8 |
|
6.4.2 Installation and uninstallation ................................................................................................................... |
6-8 |
|
6.4.3 Executing sample program....................................................................................................................... |
6-8 |
7. CONSOLE PROGRAM SAMPLE............................................................................................................... |
7-1 |
7.1 The Console Program to Connect to CNC C70 (Via Ethernet) ...................................................................... |
7-1 |
7.2 The Console Program which Runs on the Computer on which MELDASMAGIC64 is Mounted ................... |
7-4 |
7.3 The Console Program which Runs MELDASMAGIC64 From the Remote Personal Computer Connected by
Ethernet................................................................................................................................................................. |
7-5 |
7.4 The Macro Sample Program that Uses EZSocketOLE Interface Macro ........................................................ |
7-7 |
8. RESCTRICTION ........................................................................................................................................ |
8-1 |
8.1 Restriction in Performance on EZSocket Server ............................................................................................ |
8-1 |
EZSocket (CNC edition) is the middleware product that enables programming applications with Windows interface for MITSUBISHI numerical control unit, including CNC700 series, MELDAS 600 series, MELDAS C6/C64 series, MITSUBISHI CNC C70 series and MELDASMAGIC series.
Development efficiency can be improved with EZSocket, by using the OLE interface with our MELDAS series, development is possible without knowing internal processes in the numerical controllers.
The functions of MITSUBISHI CNC700 series, MELDAS 600 series, MELDAS C6/C64 series, MITSUBISHI CNC C70 series and MELDASMAGIC64 can be easily used on Windows applications by Visual C ++, Visual Basic, and Visual Basic for Applications.
Complicated processes such as communication protocol between PC and MITSUBISHI CNC700 series, MELDAS 600 series, MELDAS C6/C64 series, MITSUBISHI CNC C70 series or MELMAGIC are done in EZSocket. Thus, solution providers can develop highly functional application very quickly.
EZSocket also has variations that enable application programs on Windows PC to communicate with the MITSUBISHI FA products other than MITSUBISHI CNC700 series, MELDAS 600 series, MELDAS C6/C64 series, MITSUBISHI CNC C70 series and MELDASMAGIC (including MELSEC sequencer, MELFA manufacturing robot, motion controller, and MELSERVO servo drive unit). Thus, the workload of solution providers can be drastically decreased by using API in the same way.
Immediately after our new products are released, corresponding new version of EZSocket will be released. By using new version of EZSocket, solution providers can timely and easily develop or enhance application programs that support new products.
EZSocket supports the products mentioned below. |
|
|
Table 1-1 Numerical control unit supported by EZSocket |
Product name |
|
|
Series |
|
|
MITSUBISHI CNC700 series (hereinafter called "CNC700") |
M720 M730 M750 |
|
|
M70A M70B |
|
MELDAS 600 series (hereinafter called "M6x5") |
M615M, M635M, M655M, M615L, M635L |
|
MELDASMAGIC series (hereinafter called "Magic64") |
MELDASMAGIC64* |
|
MELDAS C6/C64 series (hereinafter called "C64") |
MELDAS C6, MELDAS C64 |
|
MITSUBISHI CNC C70 series (hereinafter called "C70") |
C70 |
*EZSocket supports both PCI bus and ISA bus connection.
MELDASMAGIC64 products via PCI bus connection and those via ISA bus connection are hereinafter called,
respectively, "PCI NC card" and "ISA NC |
card". |
For details such as model name, refer to |
BNP-B2191 ”MELDASMAGIC64 Setup Instruction |
Manual”. |
|
1-1
This chapter explains the connection configuration between Mitsubishi CNC and PC. In order to carry out communication between CNC and PC using EZSocket, prepare necessary devices, such as CNC, PC, cable, etc. For details how to connect the deivces, refer to each CNC’s instruction manual.
PCI bus or ISA bus
Windows PC |
MELDASMAGIC64 |
Fig. 1-1 Connection with MELDASMAGIC Series
|
Ethernet |
|
|
|
|
|
|
To use MELDAS600 Series, setup of |
|||||
|
MELDAS600 Series is necessary. |
|
||||
|
For |
details |
of |
setup, |
refer |
to |
|
BAD-801Q048 |
|
|
|
|
|
Windows PC |
M6x5M/L |
|
|
|
|
|
Fig. 1-2 Connection with MELDAS600 Series
1-2
Ethernet
Windows PC |
MELDAS C6/C64 |
Fig. 1-3 Connection with MELDAS C6/C64 Series
Ethernet
Windows PC |
CNC 700M/L |
Fig. 1-4 Connection with Mitsubishi CNC700 Series
1-3
The connection path between Mitsubishi CNC C70 Series and PC is as follows.
Model |
Connection path |
Connected module |
Figure No. |
CNC C70 |
Ethernet connection |
CNC C70 |
Fig. 1-5 |
|
Ethernet connection via QJ71E71 |
QJ71E71 |
Fig. 1-5 |
|
Ethernet connection via QnUDE |
QnUDE |
Fig. 1-5 |
|
USB connection via QnUD |
QnUD |
Fig. 1-6 |
|
RS-232C connection via QnUD |
QnUD |
Fig. 1-6 |
|
USB connection via QnUDE |
QnUDE |
Fig. 1-6 |
|
GOT transparent |
Base unit |
Fig. 1-7 |
|
(USB connection) |
|
|
|
GOT transparent |
Base unit |
Fig. 1-7 |
|
(RS-232C connection) |
|
|
|
Table 1-1 Connection path with Mitsubishi CNC C70 Series |
|
Ethernet
Connect t he Ethernet cable to CNC C70 or QJ71E71 or QnUDE.
Windows PC |
CNC C70 |
Fig. 1-5 Ethernet connection with Mitsubishi CNC C70 Series
USB or RS-232C
Connect the USB cable to QnUD or QnUDE, and the RS-232C cable to QnUD.
Windows PC |
CNC C 70 |
Fig. 1-6 Connection with Mitsubishi CNC C70 Series via QnUD
1-4
GOT1000
GOT1575
USB or RS-232C
|
|
|
|
|
|
|
|
Bus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Windows PC |
|
|
||||||
|
|
|||||||
|
|
|
|
|
|
|
|
connection |
|
|
|
|
|
|
|
|
|
CNC C70
Fig. 1-7 GOT transparent with Mitsubishi CNC C70 Series
The required environment for development with EZSocket is as follows.
Table 1-2 Development and operation environment
Items |
|
Spec. |
|
|
Personal computer |
|
IBM PC / AT compatible (x86 processor) |
||
CPU |
|
Intel Pentium90MHz or more (Pentium 133MHz or more is recommended) |
||
Bus |
|
ISA bus or PCI bus when mounting MELDASMAGIC64 |
||
OS |
|
Microsoft WindowsXP Home Edition, Japanese edition/English edition (*3) |
||
|
|
Microsoft WindowsXP Professional, Japanese edition/English edition (*3) |
||
|
|
Microsoft Windows2000 SP3 and later, Japanese edition/English edition (*3) |
||
|
|
Microsoft Windows NT Ver4.0 SP4 and later, Japanese edition/English edition (*1) |
||
|
(*6) |
(*7) |
|
|
|
|
Microsoft WindowsMe, Japanese edition/English edition (*1) (*3) (*6) (*7) |
||
|
|
Microsoft Windows98SE, Japanese edition/English edition (*1) (*3) (*6) |
||
|
|
Microsoft Windows 95OSR2 and later, Japanese edition/English edition (*1) (*4) (*6) |
||
|
(*7) |
|
|
|
Memory |
|
In development |
96MB or more (128MB or more is recommended) |
|
|
|
In operation |
32MB or more (64MB or more is recommended) |
|
Disk space |
|
42MB or more (60MB or more is recommended) |
||
Peripheral device |
|
Floppy disk drive corresponding to 3.5 inches / 1.44MB format |
||
|
|
CD-ROM drive |
|
|
Programming language |
|
Microsoft Visual C++.NET 2003 (*2) |
||
|
|
Microsoft Visual C++ Ver.5.0, 6.0 |
||
|
|
Microsoft Visual Basic Ver.5.0 (*5), 6.0 |
||
|
|
Microsoft Visual Basic for Applications Ver.5.0 (Equivalent to Excel97VBA) (*5), |
||
|
|
Ver.6.0 (Equivalent to Excel2000VBA) |
||
Remark |
(*1) |
Development unavailable with Microsoft Visual C++.NET 2003. |
||
|
(*2) |
Development must be done by the native code (VC++). Manage code is not |
||
|
|
|
available. |
|
|
(*3) |
Not supported by MELDASMAGIC64 (ISA NC card). |
||
|
(*4) |
Not supported by MELDAS C6/C64. |
||
|
(*5) |
As VB5.0 and VBA Ver.5.0 don’t support DCOM, they cannot be used for |
||
|
|
MELDAS M600 series. |
||
|
(*6) |
Not supported by MITSUBISHI CNC 700 Series and MITSUBISHI CNC C70 |
||
|
|
series. |
|
|
|
(*7) |
Not supported by MELDASMAGIC64(PCI NC card). |
||
|
|
|
|
1-5 |
EZSocket Dynamic Link Library (DLL) is necessary to use EZSocket. Please refer to "Release note" that shows how to install EZSocket.
When creating applications with VC++, VB, or VBA by using EZSocket, the following include file or module is necessary. Table 1-3 shows the folder and file names when the CD-ROM, EZSocketNc, is installed on C drive.
Table 1-3 List of include files for each development language
|
VC++ |
VB, VBA |
Install folder |
C:\EZSocket\EZSoketNc\include\Vc |
C:\EZSocket\EZSoketNc\include\Vb |
File |
EZSocketNc.h |
EZNcDef.bas |
|
EZSocketNcStr.h |
EZNcErr.bas |
|
EZSocketNc_i.c |
EZComErr.bas |
|
EZSocketNcDef.h |
|
|
EZSocketNcErr.h |
|
|
EZSocketCommonErr.h |
|
In order to use EZSocket with Mitsubishi CNC C70 Series, following installation and inclusion are required beforehand; installing EZSocket for MELSEC PLC (EZSocketPc), and including EasysocketDef.h. For redistributable files of EZSocket for MELSEC PLC (EZSocketPc), and how to install, refer to User's Manual of EZSocket for MELSEC PLC.
1-6
EZSocket provides 2 kinds of interfaces as DLL type inprocess server, EZSocket custom interface and EZSocket automation interface. The both interfaces have nearly the same functions as for the data access.
EZSocket custom interface is fit for programming with VC++, and EZSocket automation interface is fit for programming with VB or VBA.
Please choose one of them depending on the programming language you use.
EZSocket interface is based on Microsoft COM (Compact Object Model). When using EZSocket, general knowledge of COM is essential though this manual is not explaining COM.
Table 1-4 is EZSocket custom interface list.
Interface name has to be "IEZNcXxxx", meaning it is EZSocket custom interface for MELDAS CNC.
Table 1-4 EZSocket custom interface list |
|
|
||
|
Component |
Interface |
|
Classification |
|
|
|
|
|
|
EZNcCommunication |
|
|
|
|
|
IEZNcCommunication3 |
|
Communication |
|
|
IEZNcSystem |
|
NC system |
|
|
IEZNcPosition |
|
Position |
|
|
IEZNcCommand2 |
|
Command (Command value) |
|
|
IEZNcProgram2 |
|
Program |
|
|
IEZNcTime |
|
Time |
|
|
IEZNcAxisMonitor |
|
Axis monitor |
|
|
IEZNcStatus |
|
Status |
|
|
IEZNcFile5 |
|
File |
|
|
IEZNcCommonVariable2 |
|
Common variable |
|
|
IEZNcLocalVariable2 |
|
Local variable |
|
|
IEZNcTool3 |
|
Tool |
|
|
IEZNcATC2 |
|
ATC |
|
|
IEZNcParameter2 |
|
Parameters |
|
|
IEZNcOperation |
|
Operation |
|
|
IEZNcDevice |
|
PLC device |
|
|
IEZNcGeneric2 |
|
Generic (for general purpose) |
|
EZNcSubFunction |
|
|
|
|
|
IEZNcSubFunction2 |
|
Sub function |
(Note 1) Due to upgrade of EZSocket, the interface name may be changed. However, as the new interface succeeds the old interface, the old one remains available.
E.g.) IEZNCFile4→IEZNcFile5
In addition, as the old interface is for backward compatibility, when newly introducing EZSocket, use the new interface.
(Note 2) Mitsubishi CNC C70 Series doesn't support the automation interface.
1-7
Table 1-5 is EZSocket automation interface list.
EZSocket automation interface includes all the functions in one interface, and it makes programming with VB easier. Interface name has to be "IDispEZNcXxxxx", meaning it is EZSocket automation interface for MELDAS CNC.
Table 1-5 EZSocket automation interface list |
|
|
||
|
Component |
Interface |
|
Classification |
|
|
|
|
|
|
DispEZNcCommunication |
|
|
|
|
|
IDispEZNcCommunication |
|
Communication |
|
|
|
|
NC system |
|
|
|
|
Position |
|
|
|
|
Command (Command value) |
|
|
|
|
Program |
|
|
|
|
Time |
|
|
|
|
Axis monitor |
|
|
|
|
Status |
|
|
|
|
File |
|
|
|
|
Common variable |
|
|
|
|
Local variable |
|
|
|
|
Tool |
|
|
|
|
ATC |
|
|
|
|
Parameters |
|
|
|
|
PLC device |
|
|
|
|
Operation |
|
|
|
|
Generic (for general purpose) |
|
DispEZNcSubFunction |
|
|
|
|
|
IDispEZNcSubFunction |
|
Sub function |
(Note) Mitsubhisi CNC C70 Series doesn’t support the automation interface.
1-8
The following flowchart shows the programming procedure with EZSocket custom interface with VC++ in creating an application that works with the PCs with MELDASMAGIC64 and an application for Mitsubishi CNC 700 Series, MELDAS C6/64 Series, and Mitsubishi CNC C70 Series.
Initialize COM library |
lret = CoInitialize(NULL); |
*1 |
|
IEZNcCommunication3* m_pezComm; |
|
|
IEZNcPosition* m_pezPos; |
|
|
CLSID clsid; |
|
|
CLSIDFromProgID(L"EZSocketNc.EZNcCommunication",&clsid); *2 |
|
Create the communication object |
lret =CoCreateInstance(clsid, |
|
|
|
NULL, |
|
|
CLSCTX_INPROC_SERVER, |
|
|
IID_IEZNcCommunication3, |
|
|
(void**)&m_pezComm); |
Create the query object |
lret = m_pezCommÆQueryInterface(IID_IEZNcPosition, |
|
|
|
(void**)&m_pezPos); |
Open the communication line |
lret = m_pezCommÆ SetTCPIPProtocol(...); *3 |
|
|
lret=m_pezCommÆOpen2(...); |
|
Various processing |
lret=m_ pezComm ÆSetHead(...) |
|
|
lret=m_pezPosÆGetMachinePsition(...); |
|
|
lret=m_pezPosÆGetCurrentPsition(...); |
|
|
lret=m_pezPosÆGetWorkPosition(...); |
|
Close the communication line |
m_pezCommÆClose(...); |
|
Release the object |
m_pezCommÆRelease( ); |
|
|
m_pezComm = NULL; |
|
|
m_pezPosÆRelease( ); |
|
|
m_pezPos = NULL; |
|
Release COM library |
CoUninitialized( ); |
*1 |
*1 When using EZSocket in the thread, call COM library variable CoInitialize( ) before using EZSocket, and then call CoUninitialize( ) after using EZSocket. After using each object of EZSocket, call Release( ) to release the object (decrement of reference count).
*2 In the case of a program to be connected to MELDAS600 Series, match PROGID with EZSocket embedded in the body of MELDAS600 Series . When designating PROGID, explicitly designate the interface version, too.
E.g.: "EZSocketNc.EZNcCommunication.7"
As for PROGID of EZSocket embedded in the body of MELDAS600 Series, contact us via your seller of MELDAS600 Series.
*3 When creating an application for CNC700 or C64 Series, call SetTCPIPProtocol before Open. However, when creating an application for C70, do not call SetTCPIPProtocol but SetMelsecProtocol.
1-9
The following flowchart shows the programming procedure with EZSocket custom interface with VC++ in creating an application remote-controlled by a PC connected by Ethernet. However, in the case of CNC700, C64 Series or C70, follow the procedure in 1.7.1. even when connected by Ethernet.
To perform this procedure, EZSocket must be installed in the PC connected by Ethernet.
Initialize COM library |
lret = CoInitialize(NULL); |
*1 |
|
|
|
IEZNcCommunication3* m_pezComm; |
IP address, domain name, etc. |
||
|
IEZNcPosition* m_pezPos; |
|
|
|
|
MULTI_QI qi; |
|
|
|
|
qi.hr = 0; |
|
|
|
|
qi.pIID = &IID_IUnknown; |
|
|
|
|
qi.pItf = 0; |
|
|
|
|
COSERVERINFO csi = { 0,L"10.20.123.12",NULL,0}; |
|||
|
CLSID clsid; |
|
|
|
|
CLSIDFromProgID(L"EZSocketNc.EZNcCommunication",&clsid); *2 |
|||
Connect with target remote machine |
lret=CoCreateInstanceEx(clsid, |
|
||
|
|
NULL, |
|
|
|
|
CLSCTX_REMOTE_SERVER, |
||
|
|
&csi, |
|
|
|
|
1, |
|
|
|
|
&qi ); |
|
|
Create the communication object |
lret = qi.pItfÆQueryInterface(IID_IEZNcCommunication3, |
|||
|
|
|
(void**)&m_pezComm ); |
|
Create the query object |
lret = m_pezCommÆQueryInterface(IID_IEZNcPosition, |
|||
|
|
|
(void**)&m_pezPos); |
|
Open the communication line |
lret = m_pezCommÆ Open2(...); |
|||
|
lret = m_pezCommÆSetHead(... |
); |
|
|
Various processing |
lret = m_pezPosÆGetMachinePosition(... |
); |
||
|
lret = m_pezPosÆGetCurrentPosition(...); |
|||
|
lret = m_pezPosÆGetWorkPosition(...); |
|
||
Close the communication line |
m_pezCommÆClose(...); |
|
|
|
Release the object |
m_pezCommÆRelease( ); |
|
|
|
|
m_pezComm = NULL; |
|
|
|
|
m_pezPosÆRelease( ); |
|
|
|
|
m_pezPos = NULL; |
|
|
|
|
qi.pItfÆRelease( ); |
|
|
|
Release COM library |
CoUninitialized( ); |
*1 |
|
|
*1 Refer to *1 of 1.8.1.
*2 Refer to *2 of 1.8.1.
1-10
The following flowchart shows the programming procedure with EZSocket automation interface with VB in creating an application that works with the PCs with MELDASMAGIC64 or an application for CNC700 or C64 Series.
(1)How to call EZSocket by early binding
For early binging, reference setting is necessary for the type library of EZSocket automation interface in advance.
Create the EZSocket object |
Dim EZNcCom As |
New DispEZNcCommunication |
|
|
lret = EZNcCom.SetTCPIPProtcol(...) *1 |
|
|
Open the communication line |
lret = EZNcCom.Open2(..., "EZNC_LOCALHOST") |
||
|
|
|
Means local host designation |
|
Iret = EZNcCom.SetHead( )... |
|
|
Various processing |
Iret = EZNcCom.Position_GetMachinePosition( |
...) |
|
|
Iret = EZNcCom.Position_GetCurrentPosition(... |
) |
|
|
Iret = EZNcCom.Position_GetWorkPosition( )... |
|
|
Close the communication line |
lret = EZNcCom.Close(...) |
|
|
Release the object |
Set EZNcCom= Nothing |
|
(2)How to call EZSocket by late binding
In late binding, reference setting is not necessary. However, VB’s object browser function cannot be used.
Declare the EZSocket object |
Dim EZNcCom As Object |
|
Create the EZSocket object |
Set EZNcCom=CreateObject(“EZNcAut.DispEZNcCommunication.5”) *2 |
|
|
|
Means local host designation |
|
lret = EZNcCom.SetTCPIPProtcol(...) *1 |
|
Open the communication line |
lret = EZNcCom.Open2(..., "EZNC_LOCALHOST") |
|
|
lret = EZNcCom.SetHead(...) |
|
Various processing |
lret = EZNcCom.Position_GetMachinePosition( |
...) |
|
lret = EZNcCom.Position_GetCurrentPosition(... |
) |
|
lret = EZNcCom.Position_GetWorkPosition(...) |
|
Close the communication line |
lret = EZNcCom.Close(...) |
|
Release the object |
Set EZNcCom= Nothing |
|
*1 Only when creating an application for CNC700 or C64 Series, call SetTCPIPProtocol before Open. *2 Refer to *2 of 1.8.1.
1-11
The following flowchart shows the programming procedure with EZSocket automation interface with VC++ in creating an application remote-controlled by a PC connected by Ethernet.
(1)How to call EZSocket by early binding
For early binging, reference setting is necessary for the type library of EZSocket automation interface in advance.
Create the EZSocket object |
Dim EZNcCom As New DispEZNcCommunication |
Open the communication line |
lret = EZNcCom.Open2(..., "10.20.123.12") |
|
IP address, domain name, etc. |
|
Iret = EZNcCom.SetHead(...) |
Various processing |
Iret = EZNcCom.Position_GetMachinePosition(...) |
|
Iret = EZNcCom.Position_GetCurrentPosition(...) |
|
Iret = EZNcCom.Position_GetWorkPosition(...) |
Close the communication line |
lret = EZNcCom.Close(...) |
Release the object |
Set EZNcCom= Nothing |
(2)How to call EZSocket by late binding
In late binding, reference setting is not necessary. However, VB's object browser function cannot be used.
Declare the EZSocket object |
Dim EZNcCom As Object |
|
Create the EZSocket object |
Set EZNcCom=CreateObject("EZNcAut.DispEZNcCommunication.7")*1 |
|
|
IP address, domain name, etc. |
|
Open the communication line |
lret = EZNcCom.Open2(..., "10.20.123.12") |
|
|
lret = EZNcCom.SetHead(...) |
|
Various processing |
lret = EZNcCom.Position_GetMachinePosition( |
...) |
|
lret = EZNcCom.Position_GetCurrentPosition(... |
) |
|
lret = EZNcCom.Position_GetWorkPosition(...) |
|
Close the communication line |
lret = EZNcCom.Close(...) |
Release the object |
Set EZNcCom = Nothing |
*1 Refer to *2 of 1.8.1.
1-12
(1) Character Code
UNICODE is used for all character string parameter of EZSocket interface.
(2) How to treat character code
When using character string data, EZSocket allocates the memory when returning the character string data to an application. Make the application release the memory of disused character string data, or it causes memory leak. When programming application by using EZSocket custom interface with VC++, release the memory of character string region explicitly with CoTaskMemFree( ).
When programming application by using EZSocket automation interface with VC++, release the memory of character string region explicitly with SysFreeString( )
(3) How to treat error code
Method returns 2 types of return value, (S_OK) and (S_FALSE). (S_OK) is returned when exited normally.
(S_FALSE) is returned when failed.
The detailed error code is returned as argument. The common error messages are below.
EZ_ERR_NOT_OPEN: Communication line is not opened
EZ_ERR_DOUBLE_OPEN: Double open error
EZ_ERR_DATA_TYPE: Data type of the argument is illegal EZ_ERR_DATA_RANGE: Data range of the argument is illegal
EZ_ERR_NOT_SUPPORT: Not supported
EZ_ERR_NULLPTR: Argument is NULL pointer
(4) How to treat errors when calling the interface that is not supported by the model
When calling the interface that is not supported by the model, EZ_ERR_NOT_SUPPORT is output.
(5) Descriptions of section 2.3 and later
Detailed specifications of each method are shown in section 2.3 and later with following Items and contents. “□Argument”: Describes the argument specifications for the method.
“□Return value: Describes the return values to the method. “□Functions”: Describes the function outline of the method. “□Reference”: Describes the related methods.
“□Designation”: Describes any required designations of part system #, PLC axis part system # or axis #. Unless the method is used with the described designations, the operation is not guaranteed. Required designations are described as follows.
System: Designation of part system # is required. Use SetHead() for the designation.
PLC axis: Designation of PLC axis part system # is required. Use SetHead() for the designation. Axis: Designation of axis # is required.
Some methods, such as the one in 2.12.1, may not require the part system designation due to the argument value, although System is shown in the column. See the complements at “□Designation” column of each method.
(6) Restriction in the method that requires part system designation
The result is uncertain when the method is executed with the invalid part system designated. Please confirm that the designated part system is valid before the execution.
In addition, after opening the EZSocket line open, part system 1 is designated.
2-1
(7) Designation of a file name
EZSocket treats NC system(*1) as a drive, and treats various kinds of data (including machining programs and tool offsets) on NC system as files. Unless any exceptions are provided, EZSocket uses the following designation of a file name to access a file on NC system:
Drive name+”:”+\Directory name+\File name Always use the absolute path to designate a file name. *2
The correspondence of drive names to NC system #s is as follows.
NC system # |
Drive name (NC memory) |
01 |
M01 |
02 |
M02 |
03 |
M03 |
: |
: |
: |
: |
FF |
MFF |
*1 Described as “NC card” from next section in this EZSocket manual. “NC card” is referred to as “NC control unit” in other manuals of NC series except Magic64.
*2 Use capital letters to designate a file name.
(8) Restriction in calling from more than one thread of Mitsubishi CNC C70 Series
In the case of Mitsubishi CNC C70 Series, if the number of threads using EZSocket exceeds 1000, error codes may not be output correctly. In creating an application for Mitsubishi CNC C70 Series, pay attention to the number of threads using EZSocket.
2-2
(9) Precaution when connecting to multiple CNCs
|
|
An object cannot communicate with multiple CNCs. |
Personal computer |
Objects |
Use several different objects to communicate with |
|
multiple CNCs. |
|
|
|
NC system # (Card #): 01
→ Drive name: M01
NC system # (Card #): 02
→ Drive name: M02
NC system # (Card #): 0
→ Drive name: M0
NC1 (IP address: XX.YY.ZZ.AAA) |
|
NC Memory |
CF card |
|
M01:\IC1\ |
Programs: M01:\PRG\USER\ |
|
Parameters: M01:\PRM\ |
|
Variables: M01:\DATA\ |
|
: |
|
: |
|
NC2 (IP address: XX.YY.ZZ.BBB) |
|
NC Memory |
CF Card |
|
|
Programs: M02:\PRG\USER\ |
M02:\IC1\ |
Parameters: M02:\PRM\ |
|
Variables: M02:\DATA\ |
|
: |
|
: |
|
NC (IP address: XX.YY.ZZ.***)
NC Memory
Programs: M0 :\PRG\USER\
Parameters: M0 :\PRM\
Variables: M0 :\DATA\
:
:
” ” stands for NC #
CF Card
M0 :\IC1\
2-3
Table 2-1 Interface list |
|
A: Available, L: Available with limitation, U: Unavailable |
|
||||||
No |
Function class |
Interface (Operation) |
Function |
Availability |
|
|
|
|
|
|
|
|
|
<![if ! IE]> <![endif]>Magic64 |
<![if ! IE]> <![endif]>M6x5M |
<![if ! IE]> <![endif]>M6x5L |
<![if ! IE]> <![endif]>C64 |
<![if ! IE]> <![endif]>*1 |
<![if ! IE]> <![endif]>CNC700 |
|
|
|
|
|
|
|
|
<![if ! IE]> <![endif]>C70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2.3.1 |
IEZNc- |
Open2 |
Opening NC card system line |
A |
A |
A |
A |
A |
A |
2.3.2 |
Communication3 |
Close |
Closing NC card system line |
A |
A |
A |
A |
A |
A |
2.3.3 |
(Communication) |
SetHead |
Setting part system |
A |
A |
A |
A |
A |
A |
2.3.4 |
|
GetHead |
Getting the part system |
A |
A |
A |
A |
A |
A |
2.3.5 |
|
SetTCPIPProtocol |
Setting TCPIP communication |
U |
U |
U |
A |
U |
A |
2.3.6 |
|
SetMelsecProtocol |
Setting MELSEC communication |
U |
U |
U |
U |
A |
U |
2.3.7 |
|
SetModalCondition |
Setting modal communication condition |
U |
U |
U |
A |
U |
U |
2.3.8 |
|
GetModalCondition |
Getting modal communication |
U |
U |
U |
A |
U |
U |
|
|
|
condition |
|
|
|
|
|
|
2.4.1 |
IEZNcSystem |
GetVersion |
Getting the system #, name and control |
L |
A |
A |
A |
A |
A |
|
(NC system) |
|
S/W version |
|
|
|
|
|
|
2.4.2 |
|
GetSystemInformation |
Getting the NC system information |
A |
A |
A |
A |
A |
A |
2.4.3 |
|
GetAlarm |
Getting the alarm information |
A |
A |
A |
A |
A |
A |
2.5.1 |
IEZNcPosition |
GetWorkPosition |
Getting the workpiece coordinate |
A |
A |
A |
A |
A |
A |
|
(Position) |
|
position (Skip ON supported) |
|
|
|
|
|
|
2.5.2 |
|
GetMachinePosition |
Getting the machine position |
A |
A |
A |
A |
A |
A |
|
|
|
(Skip ON supported) |
|
|
|
|
|
|
2.5.3 |
|
GetCurrentPosition |
Getting the current position |
A |
A |
A |
A |
A |
A |
2.5.4 |
|
GetDistance |
Getting the remaining distance |
A |
A |
A |
A |
A |
A |
|
|
|
(Skip ON supported) |
|
|
|
|
|
|
2.5.5 |
|
GetNextDistance |
Getting the next travel distance |
A |
A |
A |
A |
A |
A |
2.5.6 |
|
GetFeedSpeed |
Getting the feedrate |
A |
A |
A |
A |
A |
A |
2.5.7 |
|
GetManualOverlap |
Getting the manual interruption amount |
A |
A |
A |
A |
A |
A |
2.5.8 |
|
GetProgramPosition |
Getting the program position |
U |
A |
A |
A |
A |
A |
2.6.1 |
IEZNcCommand2 |
GetGCodeCommand |
Getting the G-code modal command |
A |
A |
A |
A |
A |
A |
|
(Command) |
|
value |
|
|
|
|
|
|
2.6.2 |
|
GetToolCommand |
Getting the tool offset # |
A |
A |
U |
A |
A |
A |
2.6.3 |
|
GetFeedCommand |
Getting the feedrate command value |
A |
A |
A |
A |
A |
A |
2.6.4 |
|
GetCommand2 |
Getting the M/S/T/B modal command |
A |
A |
A |
A |
A |
A |
|
|
|
value |
|
|
|
|
|
|
2.6.5 |
|
SetCommand2 |
Setting manual command (M, S, T, B) |
L |
A |
A |
L |
A |
A |
2.7.1 |
IEZNcProgram2 |
CurrentBlockRead |
Reading the current block |
A |
A |
A |
A |
A |
A |
2.7.2 |
(Program) |
GetProgramNumber2 |
Getting the program # (main, sub) |
A |
A |
A |
A |
A |
A |
2.7.3 |
|
GetSequenceNumber |
Getting the sequence # (main, sub) |
A |
A |
A |
A |
A |
A |
2.7.4 |
|
GetBlockNumber |
Getting the block # (main, sub) |
A |
A |
A |
A |
A |
A |
2.7.5 |
|
GetSubProLevel |
Getting the sub program calling level |
A |
A |
A |
A |
A |
A |
2.7.6 |
|
GetInformation |
Getting the program information |
A |
A |
U |
A |
A |
A |
2.8.1 |
IEZNcTime |
GetClockData |
Getting the date/time |
A |
A |
L |
A |
A |
A |
2.8.2 |
(Time) |
SetClockData |
Setting date/time |
A |
A |
A |
A |
A |
A |
2.8.3 |
|
GetAliveTime |
Getting the power ON time |
A |
A |
A |
A |
A |
A |
2.8.4 |
|
SetAliveTime |
Setting power ON time |
A |
A |
A |
A |
A |
A |
2.8.5 |
|
GetRunTime |
Getting the automatic operation time |
A |
A |
A |
A |
A |
A |
2.8.6 |
|
SetRunTime |
Setting automatic operation time |
A |
A |
A |
A |
A |
A |
2.8.7 |
|
GetStartTime |
Getting the automatic start time |
A |
A |
A |
A |
A |
A |
2.8.8 |
|
SetStartTime |
Setting automatic start time |
A |
A |
A |
A |
A |
A |
2.8.9 |
|
GetEstimateTime |
Getting the external elapsed time (1, 2) |
A |
A |
A |
A |
A |
A |
2.8.10 |
|
SetEstimateTime |
Setting external elapsed time (1, 2) |
A |
A |
A |
A |
A |
A |
2-4
No |
Function class |
Interface (Operation) |
Function |
Availability |
|
|
|
|
||
|
|
|
|
<![if ! IE]> <![endif]>Magic64 |
<![if ! IE]> <![endif]>M6x5M |
|
<![if ! IE]> <![endif]>M6x5L |
<![if ! IE]> <![endif]>C64 |
<![if ! IE]> <![endif]>C70 |
<![if ! IE]> <![endif]>CNC700 |
|
|
|
|
|
<![if ! IE]> <![endif]>*1 |
|||||
|
|
|
|
|
|
|
|
|
|
|
2.9.1 |
IEZNcAxisMonitor |
GetServoMonitor |
Servo monitor |
L |
A |
|
A |
A |
U |
A |
2.9.2 |
(Axis monitor) |
GetServoVersion |
Getting the servo information |
U |
A |
|
A |
A |
U |
A |
2.9.3 |
|
GetServoDiagnosis |
Getting the servo diagnosis information |
U |
A |
|
A |
A |
U |
A |
2.9.4 |
|
GetPowerVersion |
Getting the power supply version |
U |
A |
|
A |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.5 |
|
GetPowerDiagnosis |
Getting the power supply diagnosis |
U |
A |
|
A |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.6 |
|
GetSpindleMonitor |
Spindle monitor |
L |
A |
|
A |
A |
U |
A |
|
|
|
(Function limited for Magic64) |
|
|
|
|
|
|
|
2.9.7 |
|
GetSpindleVersion |
Getting the spindle version information |
U |
A |
|
A |
A |
U |
A |
2.9.8 |
|
GetSpindleDiagnosis |
Getting the spindle diagnosis |
U |
A |
|
A |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.9 |
|
GetAbsPositionMonitor |
Getting the absolute position monitor |
U |
A |
|
A |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.10 |
|
GetAuxAxisMonitor |
Getting the auxiliary axis monitor |
U |
A |
|
U |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.11 |
|
GetAuxAxisDiagnosis |
Getting the auxiliary axis diagnosis |
U |
A |
|
U |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.12 |
|
GetAuxAxisVersion |
Getting the auxiliary axis version |
U |
A |
|
U |
A |
U |
A |
|
|
|
information |
|
|
|
|
|
|
|
2.9.13 |
|
GetDowelTime |
Getting the remaining dwell time |
A |
A |
|
A |
A |
U |
A |
2.10.1 |
IEZNcRunStatus |
GetInvalidStatus |
Getting the invalid status |
A |
A |
|
A |
A |
A |
A |
2.10.2 |
(Status) |
GetCommandStatus |
Getting the operation command status |
A |
U |
|
U |
A |
A |
A |
2.10.3 |
|
GetCuttingMode |
Getting the cutting mode |
A |
A |
|
A |
A |
A |
A |
2.10.4 |
|
GetAxisStatus |
Getting the axis status |
A |
A |
|
A |
A |
A |
A |
2.10.5 |
|
GetRunStatus |
Getting the operation status |
A |
A |
|
A |
A |
A |
A |
2.11.1 |
IEZNcFile5 |
FindDir |
Finding directory |
A |
A |
|
A |
A |
A |
A |
2.11.2 |
(File) |
FindNextDir |
Finding the next directory |
A |
A |
|
A |
A |
A |
A |
2.11.3 |
|
ResetDir |
Finishing the directory search |
A |
A |
|
A |
A |
A |
A |
2.11.4 |
|
Copy2 *2 |
File copy |
A |
A |
|
A |
A |
A |
A |
2.11.5 |
|
Delete2 *2 |
Deleting file |
A |
A |
|
A |
A |
A |
A |
2.11.6 |
|
Rename2 *2 |
Renaming file |
A |
A |
|
A |
A |
A |
A |
2.11.7 |
|
GetDriveInformation |
Getting the drive information |
A |
A |
|
A |
A |
A |
A |
2.11.8 |
|
GetDriveSize |
Getting the drive free capacity |
A |
A |
|
A |
A |
A |
A |
2.11.9 |
|
OpenFile3 *3 |
Opening file |
A |
A |
|
A |
A |
A |
A |
2.11.10 |
|
CloseFile2 *2*3 |
Closing file |
A |
A |
|
A |
A |
A |
A |
2.11.11 |
|
AbortFile2 *2 |
Closing file compulsorily |
A |
A |
|
A |
A |
A |
A |
2.11.12 |
|
ReadFile2 *2 |
Reading the file |
A |
A |
|
A |
A |
A |
A |
2.11.13 |
|
WriteFile |
Writing file |
A |
A |
|
A |
A |
A |
A |
2.11.14 |
|
OpenNCFile2 *2 |
Opening NC program file |
A |
A |
|
A |
A |
U |
A |
2.11.15 |
|
CloseNCFile2 *2 |
Closing NC program file |
A |
A |
|
A |
A |
U |
A |
2.11.16 |
|
AbortNCFile2 *2 |
Closing NC program file compulsorily |
A |
A |
|
A |
A |
U |
A |
2.11.17 |
|
ReadNCFile2 *2 |
Writing NC program file |
A |
A |
|
A |
A |
U |
A |
2.11.18 |
|
WriteNCFile |
Reading the NC program file |
A |
A |
|
A |
A |
U |
A |
2-5
No |
Function class |
Interface (Operation) |
Function |
Availability |
|
|
|
|
||
|
|
|
|
<![if ! IE]> <![endif]>Magic64 |
<![if ! IE]> <![endif]>M6x5M |
|
<![if ! IE]> <![endif]>M6x5L |
<![if ! IE]> <![endif]>C64 |
<![if ! IE]> <![endif]>*1 |
<![if ! IE]> <![endif]>CNC700 |
|
|
|
|
|
|
|
|
|
<![if ! IE]> <![endif]>C70 |
|
|
|
|
|
|
|
|
|
|
|
|
2.12.1 |
IEZNcCommon- |
CommonVRead |
Reading the common variables |
A |
A |
|
A |
A |
A |
A |
|
Variable2 |
|
(#100, #500) |
|
|
|
|
|
|
|
2.12.2 |
(Common |
CommonVWrite |
Writing common variables (#100, #500) |
A |
A |
|
A |
A |
A |
A |
|
variable) |
|
|
|
|
|
|
|
|
|
2.12.3 |
|
GetSize |
Getting the the number of common |
A |
A |
|
A |
A |
A |
A |
|
|
|
variable sets (#100, #500) |
|
|
|
|
|
|
|
2.12.4 |
|
GetName |
Getting the common variable name |
A |
A |
|
A |
A |
A |
A |
|
|
|
(#500 to #519) |
|
|
|
|
|
|
|
2.12.5 |
|
SetName |
Setting common variable name |
A |
A |
|
A |
A |
A |
A |
|
|
|
(#500 to #519) |
|
|
|
|
|
|
|
2.12.6 |
|
GetCVNullData |
Getting the common variable null data |
A |
U |
|
A |
A |
A |
A |
2.13.1 |
IEZNcLocalVar- |
LocalVRead |
Reading the local variable |
A |
A |
|
A |
A |
A |
A |
|
iable2 |
|
|
|
|
|
|
|
|
|
2.13.2 |
(Local variable) |
GetMacroLevel |
Getting the macro sub program |
A |
A |
|
A |
A |
A |
A |
|
|
|
execution level (Level 0 to 4) |
|
|
|
|
|
|
|
2.13.3 |
|
GetLVNullData |
Getting the local variable null data |
A |
U |
|
A |
A |
A |
A |
2.14.1 |
IEZNcTool3 |
GetToolSetSize |
Getting the the number of tool offset sets |
A |
A |
|
A |
A |
U |
A |
2.14.2 |
(Tool) |
GetType |
Getting the tool offset type |
A |
A |
|
A |
A |
U |
A |
2.14.3 |
|
GetOffset |
Getting the tool offset value data |
A |
A |
|
A |
A |
U |
A |
2.14.4 |
|
SetOffset |
Setting tool offset value data |
A |
A |
|
A |
A |
U |
A |
2.14.5 |
|
GetToolWorkOffset |
Getting the workpiece coordinate |
A |
A |
|
A |
A |
U |
A |
|
|
|
system offset (#54 to 60) |
|
|
|
|
|
|
|
2.14.6 |
|
SetToolWorkOffset |
Setting workpiece coordinate system |
A |
A |
|
A |
A |
U |
A |
|
|
|
offset (#54 to 60) |
|
|
|
|
|
|
|
2.14.7 |
|
GetSurface |
Getting the reference surface level |
A |
A |
|
U |
A |
U |
A |
2.14.8 |
|
SetSurface |
Setting reference surface level |
A |
A |
|
U |
A |
U |
A |
2.14.9 |
|
GetToolLifeType2 |
Getting the tool life management type 2 |
U |
A |
|
A |
A |
U |
A |
2.14.10 |
|
SetToolLifeType2 |
Setting tool life management type 2 |
U |
A |
|
A |
A |
U |
A |
2.14.11 |
|
GetToolLifeGroupList |
Getting the tool life management group |
U |
A |
|
U |
A |
U |
A |
|
|
|
# list |
|
|
|
|
|
|
|
2.14.12 |
|
AddToolLifeGroup |
Adding tool life management group # |
U |
A |
|
U |
U |
U |
U |
2.14.13 |
|
ChangeToolLifeGroup |
Changing tool life management group # |
U |
A |
|
U |
A |
U |
A |
2.14.14 |
|
DeleteToolLifeGroup |
Deleting tool life management group # |
U |
A |
|
U |
A |
U |
A |
2.14.15 |
|
GetToolLifeToolNoList |
Getting the tool list in the tool life |
U |
A |
|
U |
A |
U |
A |
|
|
|
management group |
|
|
|
|
|
|
|
2.14.16 |
|
AddToolLifeToolNo |
Adding tool # in the tool life |
U |
A |
|
U |
A |
U |
A |
|
|
|
management group |
|
|
|
|
|
|
|
2.14.17 |
|
ChangeToolLifeToolNo |
Changing tool # of tool life management |
U |
A |
|
U |
A |
U |
A |
2.14.18 |
|
DeleteToolLifeToolNo |
Deleting tool # of tool life management |
U |
A |
|
U |
A |
U |
A |
2.14.19 |
|
GetToolLifeValue |
Getting the tool life management data |
U |
A |
|
A |
A |
U |
A |
2.14.20 |
|
SetToolLifeValue |
Respective setting of tool life |
U |
A |
|
A |
A |
U |
A |
|
|
|
management data |
|
|
|
|
|
|
|
2.14.21 |
|
SetToolLifeValue2 |
Setting tool life management data |
U |
A |
|
A |
A |
U |
A |
2.14.22 |
|
GetSpareTool |
Getting the spare tool for tool life |
U |
U |
|
A |
U |
U |
U |
|
|
|
management |
|
|
|
|
|
|
|
2.14.23 |
|
SetSpareTool |
Setting spare tool for tool life |
U |
U |
|
A |
U |
U |
U |
|
|
|
management |
|
|
|
|
|
|
|
2-6
No |
Function class |
Interface (Operation) |
Function |
Availability |
|
|
|
|
||
|
|
|
|
<![if ! IE]> <![endif]>Magic64 |
<![if ! IE]> <![endif]>M6x5M |
|
<![if ! IE]> <![endif]>M6x5L |
<![if ! IE]> <![endif]>C64 |
<![if ! IE]> <![endif]>*1 |
<![if ! IE]> <![endif]>CNC700 |
|
|
|
|
|
|
|
|
|
<![if ! IE]> <![endif]>C70 |
|
|
|
|
|
|
|
|
|
|
|
|
2.15.1 |
IEZNcATC2 |
GetMGNControl |
Getting the control parameter for ATC |
A |
A |
|
U |
A |
U |
A |
|
(ATC) |
|
tool register |
|
|
|
|
|
|
|
2.15.2 |
|
GetMGNSize |
Getting the total number of the ATC |
A |
A |
|
U |
A |
U |
A |
|
|
|
magazine pot sets |
|
|
|
|
|
|
|
2.15.3 |
|
GetMGNSize2 |
Getting the number of pots of each ATC |
U |
A |
|
U |
A |
U |
A |
|
|
|
magazine |
|
|
|
|
|
|
|
2.15.4 |
|
GetMGNReady |
Getting the ATC ready tool # |
A |
A |
|
U |
A |
U |
A |
2.15.5 |
|
GetMGNPot |
Getting the tool # of the ATC magazine |
A |
A |
|
U |
A |
U |
A |
|
|
|
pot |
|
|
|
|
|
|
|
2.15.6 |
|
GetMGNPot3 *4 |
Getting the tool # of each ATC |
U |
A |
|
U |
A |
U |
A |
|
|
|
magazine pot |
|
|
|
|
|
|
|
2.15.7 |
|
SetMGNPot |
Setting tool # of the ATC magazine pot |
A |
A |
|
U |
A |
U |
A |
2.15.8 |
|
SetMGNPot3 *4 |
Setting tool # of the pot of each ATC |
U |
A |
|
U |
A |
U |
A |
|
|
|
magazine |
|
|
|
|
|
|
|
2.15.9 |
|
GetMGNPotEx |
Getting the tool # of the ATC extended |
A |
U |
|
U |
U |
U |
U |
|
|
|
magazine pot |
|
|
|
|
|
|
|
2.15.10 |
|
SetMGNPotEx |
Setting tool # of the ATC extended |
A |
U |
|
U |
U |
U |
U |
|
|
|
magazine pot |
|
|
|
|
|
|
|
2.15.11 |
|
GetMGNAux |
Getting the ATC user PLC interface |
A |
A |
|
U |
A |
U |
A |
2.15.12 |
|
SetMGNAux |
Setting ATC user PLC interface |
A |
A |
|
U |
A |
U |
A |
2.16.1 |
IEZNcParameter2 |
GetParameterData |
Getting the parameter |
L*5 |
A |
|
A |
A |
A |
A |
2.16.2 |
(Parameter) |
SetParameterData |
Setting parameter |
L*5 |
A |
|
A |
A |
A |
A |
2.17.1 |
IEZNcOperation |
Search |
Search |
A |
A |
|
A |
A |
A |
A |
2.17.2 |
(Operation) |
Run |
Starting PLC program |
A |
A |
|
A |
A |
A |
A |
2.17.3 |
|
Stop |
Stopping PLC program |
A |
A |
|
A |
A |
A |
A |
2.18.1 |
IEZNcDevice |
SetDevice |
Setting device |
A |
A |
|
A |
A |
U |
A |
2.18.2 |
(Device) |
DeleteDeviceAll |
Deleting all device setting |
A |
A |
|
A |
A |
U |
A |
2.18.3 |
|
ReadDevice |
Reading the device |
A |
A |
|
A |
A |
U |
A |
2.18.4 |
|
WriteDevice |
Writing device |
A |
A |
|
A |
A |
U |
A |
2.19.1 |
IEZNcGeneric2 |
ReadData |
Reading the generic data |
A |
A |
|
A |
A |
U*6 |
A |
2.19.2 |
(Generic) |
WriteData |
Writing generic data |
A |
A |
|
A |
A |
U*6 |
A |
2.19.3 |
|
SetData |
Setting data |
A |
A |
|
A |
A |
A |
A |
2.19.4 |
|
DeleteDataAll |
Deleting all data setting |
A |
A |
|
A |
A |
A |
A |
2.19.5 |
|
ReadBlockData |
Batch reading of data |
A |
A |
|
A |
A |
A |
A |
2.19.6 |
|
WriteBlockData |
Batch writing of data |
A |
A |
|
A |
A |
A |
A |
2.20.1 |
IEZNcSubFunction |
ChangeInit |
Initializing sub function |
A |
A |
|
A |
A |
U |
A |
2.20.2 |
2(Sub function) |
GetToolLifeValueOfFile |
Getting the tool life management data of |
U |
A |
|
A |
U |
U |
U |
|
|
|
tool life management file |
|
|
|
|
|
|
|
2.20.3 |
|
SetToolLifeValueOfFile |
Setting the tool life management data of |
U |
A |
|
A |
U |
U |
U |
|
|
|
tool life management file |
|
|
|
|
|
|
|
2.20.4 |
|
GetToolLifeValueOfFile2 |
Getting tool life management data of |
U |
A |
|
A |
A |
U |
U |
|
|
|
tool life management file |
|
|
|
|
|
|
|
2.20.5 |
|
SetToolLifeValueOfFile2 |
Setting tool life management data of tool |
U |
A |
|
A |
A |
U |
U |
|
|
|
life management file |
|
|
|
|
|
|
|
2.20.6 |
|
GetSpareToolOfFile |
Getting tool exchange data of tool life |
U |
U |
|
A |
U |
U |
U |
|
|
|
management tile |
|
|
|
|
|
|
|
2.20.7 |
|
SetSpareToolOfFile |
Setting tool exchange data of tool life |
U |
U |
|
A |
U |
U |
U |
|
|
|
management tile |
|
|
|
|
|
|
|
2.20.8 |
|
GetToolWorkOffsetOfFile |
Getting the workpiece coordinate |
A |
A |
|
A |
A |
U |
A |
|
|
|
system offset data of workpiece offset |
|
|
|
|
|
|
|
|
|
|
file |
|
|
|
|
|
|
|
2.20.9 |
|
SetToolWorkOffsetOfFile |
Setting workpiece coordinate system |
A |
A |
|
A |
A |
U |
A |
|
|
|
offset data of workpiece offset file |
|
|
|
|
|
|
|
2-7
*1) Mitsubishi CNC C70 Series doesn’t support the automation interface.
*2) In this method, modifications have been added to the functions supporting MELDASC6/C64 Series. Conventional method is available to get the backward compatilibity.
*3) In this method, a file overwrite function has been added for Mitsubishi CNC700 Series. Conventional method remains available to get the backward compatilibity.).
*4) In this method, modifications have been added to the functions supporting Mitsubishi CNC 700 Series. Conventional method is available to get the backward compatilibity.
*5) Unavailable with PCI NC card. ISA NC card limits the function. Contact MITSUBISHI before using the card.
*6) Mitsubishi CNC C70 Series doesn't support this method, but reading and writing general-purpose data is enabled by use of ReadBlockData and WriteBlockData.
2-8