Sensor Table File

The sensor table (SensorTableAdvanced.xml) is a lookup file containing information about the sensors and the hardware configuration, such as the relative location of the sensor coil, number of gates, etc.

The lookup table is used with Create Depth Response Curve Plot and to support older/legacy systems that only store the measurement position and transient data in the raw (CSV) data file. Here, the sensor table contains the necessary details of the sensor coils needed to invert the data.

New sensor or hardware configurations can be added manually (see below) or by using the Add Sensor Configuration tool. For sensor or systems where the (HDF) data file fully describes the sensor hardware configuration, the Add Sensor Configuration tool will read the required fields from the survey databases (Target/Data or Parameter/Data) and create a custom sensor table. The custom sensor table is stored in your users folder (%USERPROFILE%\Documents\Geosoft\Desktop Applications \etc), so that you do not lose your changes during a software update.

Manually Editing the Sensor Table File

The sensor table file is an XML file and can be edited using a text editor, such as Notepad++.

The original sensor table file (SensorTableAdvanced.xml) is in the "C:\Program Files\Geosoft\Desktop Applications \etc" folder. You can manually modify the parameters for the existing sensors or add new sensors to the file.

  • If you want to customize the SensorTableAdvanced.xml file, you should manually copy the file to your "%USERPROFILE%\Documents\Geosoft\Desktop Applications \etc" folder (to not lose your changes during an update).
  • The sensor table file includes a main section, Sensors, which contains several Sensor sections for each sensor or hardware configuration. The Sensor section has two sub-sections, Transmitter and Receiver Coil Locations.

    The example below shows one of the sensor types and would be repeated for each sensor type or hardware configuration.

    Lines that include <!--****--> are comment lines – they are highlighted in blue in the example below.

    Sensor Example:
    <Sensor>    
    <!--Sensor name: should be a unique name.-->   
    <Name>MetalMapper 8ms 50gates</Name>      
    <!--Sensor type: can be one of METALMAPPER, METALMAPPER2x2, and TEM2x2x3.-->      
    <Type>METALMAPPER</Type>      
    <!--Specifies if the sensor is being used in a 'static', 'dynamic', or 
    'static;dynamic' mode.-->      
    <SurveyMode>static</SurveyMode>  
    <!--Number of transmitter coils.-->    
    <NoOfTxCoils>3</NoOfTxCoils>   
    <!--Number of receiver coils.-->    
    <NoOfRxCoils>21</NoOfRxCoils>  
    <!--Number of receiver cubes.-->     
    <NoOfRxCubes>7</NoOfRxCubes>      
    <!--Number of gates.-->      
    <NoOfGates>50</NoOfGates>
    
    <!--The lowest usable gate in the sensor is the first gate with a time greater than this.-->
    <LowGateTime>0.106</LowGateTime>
    <!--Gate time values, in milliseconds.-->
    <GateTime>0.024,0.05,0.056,0.064,0.072,0.08,0.088,0.096,0.106,0.118,0.13,0.144,0.16,0.178,0.198,0.22,0.244,0.27,0.3,0.334,0.372,0.414,0.46,0.51,0.566,0.63,0.7,0.776,0.862,0.958,1.064,1.182,1.314,1.46,1.622,1.804,2.006,2.23,2.478,2.752,3.058,3.4,3.78,4.202,4.67,5.19,5.768,6.41,7.122,7.912</GateTime>
    <!--Length of decay time/transmit pulse.-->
    <TxPulse>7.912</TxPulse>
    <!--Scale factor, used to scale sensor data.-->
    <DataScaleFactor>1</DataScaleFactor>
    <!--Specifies the Z position above the transmitter assembly-->
    <HeightOfZCoilCenterAboveTransmitterAssembly>0</HeightOfZCoilCenterAboveTransmitterAssembly>
    <!--The current receiver staturation threshold-->
    <ReceiverSaturationThreshold>800</ReceiverSaturationThreshold>
    <!--The current transmitter saturation threshold-->
    <TransmissionCurrentThreshold>1</TransmissionCurrentThreshold>
    <!--The trasmitter cicle, from transmitter cicle or firing sequence times-->
    <TransmitterCycleTime>0</TransmitterCycleTime>
    <FiringSequence>Z,Y,X</FiringSequence>
    <CartWidth>1</CartWidth>
    <CartLength>1</CartLength>
    <CartHeight>0.0</CartHeight>
    <QcWindowStartTime>0.1</QcWindowStartTime>
    <QcWindowEndTime>0.3</QcWindowEndTime>
    <!--Specifies the position and other information for Transmitter coils.-->
    <TxCoilLocations>
    <CoilInformation>
    <CoilType>R</CoilType>
    <Enabled>true</Enabled>
    <Index>Z</Index>
    <X>0</X>
    <Y>0</Y>
    <Z>0</Z>
    <NormalVector>0,0,1</NormalVector>
    <Vertices>(x=0.5,y=0.5,z=0),(x=0.5,y=-0.5,z=0),(x=-0.5,y=-0.5,z=0),(x=-0.5,y=0.5,z=0)</Vertices>
    <LengthX>1</LengthX>
    <LengthY>1</LengthY>
    <Extent>0.001</Extent>
    <Gain>1</Gain>
    <NoOfTurns>20</NoOfTurns>
    </CoilInformation>
    <CoilInformation>
    <CoilType>R</CoilType>
    <Enabled>true</Enabled>
    <Index>Y</Index>
    <X>0</X>
    <Y>0</Y>
    <Z>0.575</Z>
    <NormalVector>0,1,0</NormalVector>
    <Vertices>(x=0.476,y=0,z=1.075),(x=-0.476,y=0,z=1.075),(x=-0.476,y=0,z=0.075),(x=0.476,y=0,z=0.075)</Vertices>
    <LengthX>0.953</LengthX>
    <LengthY>1</LengthY>
    <Extent>0.001</Extent>
    <Gain>1</Gain>
    <NoOfTurns>20</NoOfTurns>
    </CoilInformation>
    <CoilInformation>
    <CoilType>R</CoilType>
    <Enabled>true</Enabled>
    <Index>X</Index>
    <X>0</X>
    <Y>0</Y>
    <Z>0.575</Z>
    <NormalVector>1,0,0</NormalVector>
    <Vertices>(x=0,y=0.5,z=1.075),(x=0,y=0.5,z=0.075),(x=0,y=-0.5,z=0.075),(x=0,y=-0.5,z=1.075)</Vertices>
    <LengthX>1</LengthX>
    <LengthY>1</LengthY>
    <Extent>0.001</Extent>
    <Gain>1</Gain>
    <NoOfTurns>20</NoOfTurns>
    </CoilInformation>
    </TxCoilLocations>
    <RxCoilLocations>
    <CoilInformation>
    <CoilType>R</CoilType>
    <Enabled>true</Enabled>
    <Index>1Z</Index>
    <X>0.39</X>
    <Y>0.39</Y>
    <Z>0</Z>
    <NormalVector>0,0,1</NormalVector>
    <Vertices>(x=0.44,y=0.44,z=0),(x=0.44,y=0.34,z=0),(x=0.34,y=0.34,z=0),(x=0.34,y=0.44,z=0)</Vertices>
    <LengthX>0.1</LengthX>
    <LengthY>0.1</LengthY>
    <Extent>0.001</Extent>
    <Gain>1000.0</Gain>
    <NoOfTurns>100</NoOfTurns>
    </CoilInformation>
    <CoilInformation>
    <CoilType>R</CoilType>
    <Enabled>true</Enabled>
    <Index>2Z</Index>
    <X>-0.26</X>
    <Y>0.26</Y>
    <Z>0</Z>
    <NormalVector>0,0,1</NormalVector>
    <Vertices>(x=-0.21,y=0.31,z=0),(x=-0.21,y=0.21,z=0),(x=-0.31,y=0.21,z=0),(x=-0.31,y=0.31,z=0)</Vertices>
    <LengthX>0.1</LengthX>
    <LengthY>0.1</LengthY>
    <Extent>0.001</Extent>
    <Gain>1000.0</Gain>
    <NoOfTurns>100</NoOfTurns>
    </CoilInformation>
    <!--**The receiver coil position and other information is repeated below for every 
    receiver coil.-->
    </RxCoilLocations>
    </Sensor>