GMServer - This is the TCP/IP server which dynamically loads the third party DLLs that communicate with the hardware (interface-supported devices). The ManualCMM.dll behaves as a TCP/IP client to this server.
Configuration of GMServer - GMS.XML
TCPPortNumber - This parameter is optional. It defines the TCP port that the GMS uses to communicate with the ManualCMM.dll. The default port is 1390.
WINDOW_HIDE_SHOW - This parameter shows or hides the GMServer dialog box. You can use this parameter to test if you set this parameter to SHOW.
POLL_TIME - This parameter sets the time interval for when the GMServer executes. It polls the status of hardware. The default value is 50 ms.
HitBeepFrequency - This parameter sets the frequency of the sound in hertz. The valid values for this parameter are 37 through 32767 (0x25 through 0x7FFF) inclusive. Set it to 0 to switch off the sound.
HitBeepDurationMS - This parameter sets the duration of the sound in ms after you take the hit. It uses the Windows API call Beep.
DEBUG - This parameter defines the name of the file with information you can use to troubleshoot.
INTERFACES
Interface - This is a mandatory section of the XML file. There is an <Interface> section for each supported interface. On installation, all sections are commented out with the XML comment (<!-- -->) except for the <Simulator> section. To use the appropriate Device, comment out the <Simulator> section and uncomment the desired <Device> section. By default, the supported interfaces are:
DEVA 037 Manual Counter Card
ENC7360
ENC7480
GENERICCMM
SIMULATOR
XNPCI
Example of a complete GMS.XML file using HitBeepFrequency and HitBeepDurationMS
Based on the value, INTERFACE various DLLs which interface to devices are expected and configuration XML files are processed:
Interface |
DLL |
XML Configuration File |
ENC7360 |
ENC7360.dll |
GMSENC7360_MH3D_RT_X.XML |
ENC7480 |
ENC7480.dll |
GMSENC7480.XML |
SIMULATOR |
GmsSimulator.dll |
Simulator.XML |
XNPCI |
XNPCI09.dll |
GMSXNPCI.XML |
DEVA |
ENCLIB64.dll |
GMSDEVA_ENCLIB.XML |
Generic CMM |
GmsGenericCmm.dll |
GMSGENERICCMM.XML |
Command Line Options for GMServer.exe
/R or /r was added in version 1.0.15 for resetting the counters to zero. The ManualCMM.dll displays the dialog box which also calls the GMServer.exe with the parameter /R.
1.1. GmsSimulator.XML
Implemented and tested the ability to define BUTTONS for the GmsSimulator. For details, see "ManualCMM.dll Configuration GMICONFIGDATA.XML for ENC7480 and GmsSimulator".
1.2. GmsENC7480.XML
Hardware group:
The first five options are hardware related. The default values are the bold values that follow the options. For detailed information on how to use the ENC7480 and the Demo software, please see “User’s Manual for the ENC7480”. You can find this on the manufacturer’s website (http://www.leadshine.com).
Use ENC7480.exe to establish and test/debug the settings for the ENC7480. The PC-DMIS interface directly maps the settings from DEMO software.
SetTriggerLogic - RISING_EDGE or FALLING_EDGE
CountConfig - MODE_PULSE_DIRECTION (general mode), MODE_ONE_AB_PHASE, MODE_TWO_AB_PHASE or MODE_FOUR_AB_PHASE.
EZLogic - DISABLED or ENABLED
SetEZLogic - ACTIVE_LOW or ACTIVE_HIGH
TriggerChannel - TR_1 or TR_2
Counts group:
The encoder card returns distance in counts, which must be converted to millimeters. The sign of this value is used to set up the correct axis orientation:
X+ back to front
Y+ left to right
Z+ down to up.
You can use the GMServer.exe dialog box to establish these values. To do this, from the dialog box, select the Always monitor hits check box, then take hits on a qualification sphere of known diameter.
The dialog box displays the positions for the hits and the corresponding vectors. Rotary table support adds the W_COUNT_PER_TURN parameter which is the number of counts for a 360-degree turn.
X_COUNTS_PER_MM
Y_COUNTS_PER_MM
Z_COUNTS_PER_MM
W_COUNTS_PER_TURN
Point history group:
POINT_HISTORY - This parameter is the number of points kept by GMSServer for the ENC7480 last 20 positions. The default is 20.
CAL_VEC_DEPTH - This parameter is the offset point history which is used to calculate the vector. The default is 5.
VECTOR_SENSITIVITY - When the distance (in millimeters) between current position and the point taken from the point history on CAL_VEC_DEPTH is smaller than VECTOR_SENSITIVITY, the first point in the history which satisfies this distance condition is used for the vector calculation. The default is 0.0 mm.
Example:
<GmsENC7480>
<Card number="0">
<SetTriggerLogic>RISING_EDGE</SetTriggerLogic>
<CountConfig>MODE_FOUR_AB_PHASE</CountConfig>
<EZLogic>DISABLED</EZLogic>
<SetEZLogic>ACTIVE_LOW</SetEZLogic>
<TriggerChannel>TR_1</TriggerChannel>
<X_COUNTS_PER_MM>-2500</X_COUNTS_PER_MM>
<Y_COUNTS_PER_MM>2500</Y_COUNTS_PER_MM>
<Z_COUNTS_PER_MM>2500</Z_COUNTS_PER_MM>
<W_COUNTS_PER_TURN>3600</ W_COUNTS_PER_TURN>
<POINT_HISTORY>20</POINT_HISTORY>
<CAL_VEC_DEPTH>5</CAL_VEC_DEPTH>
<VECTOR_SENSITIVITY>0.5</VECTOR_SENSITIVITY>
</Card>
</GmsENC7480>