
THM1176/TFM1186 Use
r’s Manual
v 2.0 r 1.0
– 02/20
Copyright © 2020 Metrolab Technology SA
www.metrolab.com
17
PROGRAMMING THE THM1176/TFM1186
4-
Options for Computer Control
The THM1176 family of magnetometers has no built-in display or controls, so
computer control of the instrument is indispensable. This chapter outlines the
different approaches to computer control that Metrolab supports, and tries to
summarize the pros and cons of each.
4-1 EZMAG3D TURN-KEY SOFTWARE
The simplest approach is to use the supplied software, EZMag3D. EZMag3D is
the second generation of software for the THM1176 family, and its rich feature set
is based on more than ten years of experience in a wide variety of applications.
EZMag3D is supplied as Open Source software, so if you just need that
“one
additional
feature”, modifying EZMag3D might be the simplest approach. To get
started, please see the chapters in the EZMag3D manual concerning the source
code and license conditions.
Even if you plan to develop your own control software from scratch, we strongly
recommend you install EZMag3D, to learn the instrument and to serve as a
baseline.
4-2 EZMAG3D PLUGINS
You can integrate the THM1176 family of magnetometers into a larger
measurement system by writing a plugin to support your trigger source or your
mapping system. With this approach, you do not have to worry about the details of
the instrument or EZMag3D, but
you can take advantage of all of EZMag3D’s
features. Sample plugins provide manual triggering and mapping. EZMag3D
plugins are written in C++ and use the
; to get started, please see
the corresponding chapter in the EZMag3D manual.
4-3 THM1176 INSTRUMENT CONTROL API
EZMag3D communicates with the THM1176/TFM1186 via a C++ Application
Programming Interface (API). This second-generation API is completely public
and well-
documented. Unlike the plugins, the API is “pure” C++11, and does not
. To get started, please refer to the chapter in the