The configuration files must conform to the rules defined in an XSD
format file. This file is available in
\startup\Manufacturing\Samples\MyPost
and
\startup\Manufacturing\Samples\MyCE
.
Example of a MyPost Configuration File
In the example below, the following post-processors are defined:
My Post Processor 1
and
My Post Processor 2
.
<?xml version="1.0" encoding="UTF-8"?>
<MyPostList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="E:\Install\win_b64\startup\Manufacturing\Samples\MyPost\MyPostConfiguration.xsd">
<MyPost id="MyPost1">
<Name>My Post Processor 1</Name>
<HelpFilePath>E:\Install\PP1.html</HelpFilePath>
<Path>E:\Install\MyPost1.exe</Path>
<ArgumentList>
<Argument>Arg1</Argument>
<Argument>Arg2</Argument>
</ArgumentList>
</MyPost>
<MyPost id="MyPost2">
<Name>My Post Processor 2</Name>
<HelpFilePath>E:\Install\PP2.html</HelpFilePath>
<Path>E:\Install\MyPost2.exe</Path>
</MyPost>
</MyPostList>
The table below lists the XML elements you must define:
XML Element
|
Description
|
<MyPostList>
|
Root node of the configuration file.
|
<MyPost
id="MyPostId">
|
Node specific to the post-processor file.
The
id is the attribute.
|
<Name>
|
Name of the post-processor.
|
<HelpFilePath>
|
Path to the help file.
|
<Path>
|
Path to the post-processor file (.exe or
.bat).
|
<ArgumentList>
|
List of arguments (optional).
|
<Argument>
|
String that corresponds to an input
parameter of the post-processor file (optional).
|
Example of a MyCE Configuration File
In the example below, the following controller emulators are defined:
Control Emulator 1
and
Control Emulator 2
.
<?xml version="1.0" encoding="utf-8"?>
<MyCEList xmlns:xsi='http://www.w3.org/2001/XMLSchema-instanPP'
xsi:noNamesoaPPSchemaLocation='c:\MyCEConfigurationFile.xsd'>
<MyCE Id="Id1">
<Name>Control Emulator 1</Name>
<Path>c:\ExternalMyCE1.exe</Path>
</MyCE>
<MyCE Id="Id2">
<Name>Control Emulator 2</Name>
<Path>c:\ExternalMyCE2.exe</Path>
</MyCE>
</MyCEList>
The table below lists the XML elements you must define:
XML Element
|
Description
|
<MyCEList>
|
Root node of the configuration file.
|
<MyCE id="MyCEId">
|
Node specific to the controller emulator.
The
id is the attribute.
|
<Name>
|
Name of the controller emulator.
|
<Path>
|
Path to the controller emulator (.exe or
.bat).
|
Recommendations
- You must define at least one root node.
- You must add a link to the XSD format file at the root node of each
configuration file.
- The
id
attribute value must be unique for each
controller emulator or post-processor you define.
- If you use the
<ArgumentList>
element, you must also use at
least one
<Argument>
element.
- The name of the configuration file must be different from its
related post-processor or controller emulator file.
Instruction Files
Instruction Files can be used to create an Instruction Table instead
of using a controller emulator. They contain variables that are defined by
MyCE. These variables are generated by the MachineXMLFileDump.xml file, which
is generated automatically when the MyCE batch is called.
MachineXMLFileDump.xml contains all the relevant information for MyCE to
generate an instruction file.
Note:
If MyCE is used,
iUniqueFileID
and
iDeviceID
are given by the file
MachineXMLFileDump.xml.
There are four types of generic instruction files.
- DofInstruction
- This type of instruction file is used to define machine
movements. It is composed of:
Variable Name
|
Type of input
|
Description
|
iNumFile
|
int
|
Number of NC code files associated
to the instruction. Set
iNumFile as -1 if the NC code file is
the same as the previous instruction.
|
iUniqueFileID
|
int*
|
Array of unique NC code file IDs
corresponding to the instruction. Set
iUniqueFileID as -2 to indicate the end
of the NC code file.
|
iLine
|
long*
|
Array of NC code file line numbers
corresponding to the instruction. Line number starts from 1.
|
iDuration
|
double
|
Duration of the instruction.
|
iNumDevice
|
int
|
Number of devices.
|
iFeedValue
|
double*
|
Array of feed values for devices. Set
iFeedValue as -1 for Rapid and >0 for
feed value.
|
iDeviceID
|
int*
|
Array of device IDs for each device.
|
iNumDof
|
int*
|
Array of number of DOF's for each
device.
|
iDofID
|
int**
|
Array of array of DOF IDs for each
device.
|
iDofValue
|
double**
|
Array of array of DOF values for
devices.
|
*: signifies a data array.
**: signifies an array of a data array.
- IntegerInstruction
- This type of instruction file is used to define tool assembly
using NC code such as T, D, or H. It is composed of:
Variable Name
|
Type of input
|
Description
|
iNumFile
|
int
|
Number of NC code files associated
to the instruction. Set
iNumFile as -1 if the NC code file is
the same as the previous instruction.
|
iUniqueFileID
|
int*
|
Array of unique NC code file IDs
corresponding to the instruction. Set
iUniqueFileID as -2 to indicate the end
of the NC code file.
|
iLine
|
long*
|
Array of NC code file line numbers
corresponding to the instruction. Line number starts from 1.
|
iNumDevice
|
int
|
Number of devices to be instructed.
|
iDeviceID
|
int*
|
Array of device IDs for each device.
|
iNumDVariable
|
int*
|
Array of number of integer variable
IDs for each device.
|
iVariableID
|
int**
|
Array of array of integer variable
values for each device.
|
iVariableValue
|
int**
|
Array of array of integer variable
values for each device. The value can be any integer value.
|
*: signifies a data array.
**: signifies an array of a data array.
For integer instruction files, the following variable IDs can be
used:
Variable
|
Description
|
ToolVarID = 0,
|
//Tool number
|
ToolCorrVarID = 0,
|
//H number
|
ToolCorrDVarID = 0,
|
//D number
|
MountStationVarID =
3,
|
//Station ID for mounting a tool or a
head
|
HeadVarID = 4,
|
//Head Device ID
|
Clamp = 5,
|
//For Clamp, set 0 as this value type
|
UnClamp = 6,
|
//For Unclamp, set 0 as this value
type
|
HeadUnsetVarID = 7,
|
//Head Unset ID
|
ToolUnsetVarID = 8,
|
//Tool Unset ID
|
- DoubleInstrucution
- This type of instruction file is used to define user parameters
using NC code such as S. It is composed of:
Variable Name
|
Type of input
|
Description
|
iNumFile
|
int
|
Number of NC code files associated
to the instruction. Set
iNumFile as -1 if the NC code file is
the same as the previous instruction.
|
iUniqueFileID
|
int*
|
Array of unique NC code file IDs
corresponding to the instruction. Set
iUniqueFileID as -2 to indicate the end
of the NC code file.
|
iLine
|
long*
|
Array of NC code file line numbers
corresponding to the instruction. Line number starts from 1.
|
iNumDevice
|
int
|
Number of devices to be instructed.
|
iDeviceID
|
int*
|
Array of device IDs for each device.
|
iNumDVariable
|
int*
|
Array of number of integer variable
IDs for each device.
|
iVariableID
|
int**
|
Array of array of integer variable
values for each device.
|
iVariableValue
|
double**
|
Array of array of double variable
values for each device.
|
*: signifies a data array.
**: signifies an array of a data array.
For double instruction files, the following variable ID can be
used:
Variable
|
Description
|
SpindleSpeedVarID = 0,
|
//Spindle speed value
|
- StringInstruction
- This type of instruction file is used to define user parameter
values. It is composed of:
Variable Name
|
Type of input
|
Description
|
iNumFile
|
int
|
Number of NC code files associated
to the instruction. Set
iNumFile as -1 if the NC code file is
the same as the previous instruction.
|
iUniqueFileID
|
int*
|
Array of unique NC code file IDs
corresponding to the instruction. Set
iUniqueFileID as -2 to indicate the end
of the NC code file.
|
iLine
|
long*
|
Array of NC code file line numbers
corresponding to the instruction. Line number starts from 1.
|
iNumDevice
|
int
|
Number of devices to be instructed.
|
iDeviceID
|
int*
|
Array of device IDs for each device.
|
iNumDVariable
|
int*
|
Array of number of integer variable
IDs for each device.
|
iVariableID
|
int**
|
Array of array of integer variable
values for each device.
|
iVariableValue
|
char**
|
Array of array of string variable
values for each device.
|
*: signifies a data array.
**: signifies an array of a data array.
For string instruction files, the following variable IDs can be
used:
Variable
|
Example
|
WorkOriginNameVarID =
0,
|
//G54
|
CutterCompensationVarID =
1,
|
//LEFT, RIGHT, OFF
|
SpindleDirectionVarID =
2,
|
//CW, CCW, OFF
|
SpindleModeVarID =
3,
|
//RPM, CSS
|
CoolantVarID = 4,
|
//ON, OFF, MIST
|
- Instruction File Example
- Below is an example of an instruction file.

Where:
- 1: DofInstruction to set the initial machine position.
- 17: StringInstruction for a G40 interpretation where:
1
is the
CutterCompensationVarID
(line 20), and;
OFF
sets the value is off (line 21).
- 27: DofInstruction with an IntegerInstruction to specify a
tool change:
- DofInstruction to go to the tool change point.
- IntegerInstruction to set the tool number where
0
(line 42) is the
ToolVarID
and
101
(line 43) is the tool number.