0% found this document useful (0 votes)
174 views95 pages

HeliCamC4 UserManual 2024-03-06-1

Uploaded by

Momel GOmel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
174 views95 pages

HeliCamC4 UserManual 2024-03-06-1

Uploaded by

Momel GOmel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 95

heliCamTM C4 ­ User Manual

Heliotis AG

Mar 06, 2024


CONTENTS

1 Introducing the heliCamTM C4 Lock‑In Camera 1


1.1 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 A) Set Up 7
2.1 Hardware Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1 Package Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1.1 heliCamTM C4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1.1.1 Thermal Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.1.1.2 Sensor Opening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.1.1.3 Connection Interface . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1.1.4 Mounting Holes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1.1.5 SD Card Opening . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1.2 heliDriverTM D3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1.2.1 Mainboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1.2.2 Communication Interface . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.1.2.3 Illumination Control . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.1.3 LED Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.1.4 Interconnecting Cables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.2 Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.3 Checking the Hardware Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Software Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.1 Software Organization and Integration Options . . . . . . . . . . . . . . . . . . . . . 15
2.2.1.1 Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1.2 Software Development Kit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1.3 updateTool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1.4 C4Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.1.5 heliViewerTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.2 Heliotis Software Download . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.3 Installing C4Utility and heliViewerTM . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.4 Establishing Network Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.4.1 Configuring the Host Ethernet Adapter’s IP‑Address . . . . . . . . . . . . . . 18
2.2.4.2 Configuring Host Security Software . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.4.3 Network Interface Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.5 Checking the Software Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.6 Updating Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3 B) Get Started 27
3.1 Outline of Starter Lock‑In Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 Setup Preparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3 Choice of Application Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4 Using heliViewerTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.1 Enable Lock‑In Camera Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.2 Create Measurement Recipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

i
3.5 Lock‑In Camera Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5.1 Lock‑In Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.5.2 Key Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.5.2.1 Light Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.5.2.2 Coupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.5.2.3 Sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.5.2.4 Recording Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.5.2.5 Reference Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.5.2.6 Time Constant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.5.2.7 Frame Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.6 Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.6.1 Fixed Pattern Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.6.1.1 Estimating Offset from Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.6.1.2 Measuring Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.6.2 Conversion to Polar Coordinates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4 C) Basics of Application Software Development 43


4.1 Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.1 API Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.2 Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.2.1 Writing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.2.2 Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.3 Special Feature Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.3.1 Selector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.3.2 Target and Actual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2 Status, Trigger and Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2.1 Monitoring and Control of Measurement Sequence . . . . . . . . . . . . . . . . . . . 47
4.2.1.1 Trigger Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2.1.2 Status Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.3 Retrieving Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.4 Basic Sequence of Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5 D) Advanced Concepts and Control 51


5.1 Lock‑In Amplification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.1.1 Single‑ and Dual‑Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.1.2 Idealized Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.1.2.1 Time Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.1.2.1.1 Sinusoid Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.1.2.1.2 Comparison to Reference Signal . . . . . . . . . . . . . . . . . . . . 53
5.1.2.1.3 Averaging in Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.1.2.2 Frequency Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.1.2.2.1 Noisy, Amplitude Modulated Input . . . . . . . . . . . . . . . . . . 60
5.1.2.2.2 Down‑Mixing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.1.2.2.3 Low‑Pass Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.2 Smart Pixel Image Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2.1 Temporal Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2.1.1 Trigger Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2.1.2 Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2.1.3 Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.1.4 Quarter Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.2 Processing in Pixel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.3 Effective Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.2.3.1 Mixing with a Pulse Wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.2.3.2 Rectangular Filter and Sampling . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.2.4 Background Suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.2.5 Reference Signal Synthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

6 Graphical Summary 73

ii
7 Worldwide Support 77

8 Document History 79

9 Annex 81
9.1 Technical Drawings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
9.1.1 heliCam™ C4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
9.1.1.1 C4.1.x‑S4xx‑R0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
9.1.1.2 C4.1.x‑S4xx‑R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
9.1.2 heliDriverTM D3 with LIA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
9.1.3 Heliotis LED Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

iii
iv
CHAPTER

ONE

INTRODUCING THE HELICAMTM C4 LOCK­IN CAMERA

The heliCamTM C4 lock‑in camera enables rapid and massively parallel dual‑phase demodulation of optical
signals. The centerpiece of the camera is a custom‑designed CMOS image sensor, the heliSensTM S4. It has
analogue signal processing circuitry integrated into each pixel sensor unit cell; an approach known as smart
pixel technology. This way, the sensor addresses the two major constraints of conventional image sensors
when used for lock‑in applications: frame rate limitations and insufficient dynamic range. The former curbs
the maximum demodulation frequency and the latter hampers the acquisition of signals with large offset but
small modulation amplitude.

Fig. 1.1: heliCamTM C4 Lock‑In Camera

1.1 Outline

This user manual has four main parts:


• A) Set Up
Hardware and Software Commissioning Guide
• B) Get Started
Tutorial for a First Lock‑In Measurement
• C) Basics of Application Software Development
Lock‑In Camera Operation from a Programming Environment
• D) Advanced Concepts and Control
Detailed Discussion of Available Settings and the Measurement Signal

1
heliCamTM C4 ­ User Manual

1.2 Specifications

Table 1.1: heliSensTM S4 ‑ Lock‑In Pixel Image Sensor


Feature C4.0­S40 C4.0­S40U C4.0­S41U C4M.0­S4M0

Number of
512 x 542 1024 x 1102
Pixels

Pixel Size 24 μm × 24 μm 12 μm × 12 μm

Fill factor 21% 55% with micro‑lens array 23%


(angular aperture ± 12°)

Full Well
500 ke− 125 ke− 70 ke−
Capacity

nm 400 450 500 550 600 650 700 750 800


Quantum
Efficiency
% 61.7 73.1 78.7 78.6 74.9 72.9 69.4 58.4 45.5

Detection
Threshold mW
Pmin in m2

fref , T
, at a given reference frequency, fref , and filter time constant, T

1kHz, 10ms 1.03 0.34 0.14 1.2

10kHz, 1ms 10.3 3.4 1.4 12

100kHz, 1ms 33.3 10.9 4.2 NA

2 Chapter 1. Introducing the heliCamTM C4 Lock­In Camera


heliCamTM C4 ­ User Manual

Table 1.2: heliCamTM C4 ‑ Lock‑In Features


Feature Internal Reference External Reference
Number of
277 504
parallel, C4
dual‑phase
Demodulators 1 110 016
C4M

reference pulse wave with adjustable duty cyle


Reference Signal
(causing residual sensitivity to odd
harmonics of the reference frequency)

Reference C4 305 Hz ‑ 135 kHz ≤ 135 kHz


Frequency, fref

C4M 305 Hz ‑ 50 kHz ≤ 50 kHz

Frequency quarter period trigger


Resolution ∆fref ≈ 5 · 10−8 · fref
2
registered with
80 MHz clock rate

Phase Resolution
0.1 deg

Filter
C4 0.25 ms ‑ 325 ms ≥ 0.25 ms
Time
Constant
C4M 0.8 ms ‑ 100 ms ≥ 0.8 ms

Number of 4 ‑ 900
C4
Frames
per Acquisition
4 ‑ 225
C4M

Output Data amplitude & phase /


in‑phase & quadrature

Dynamic Range
2 × 10 bit (X, Y)

Background 21 bit equivalent


Suppression / C4
AC Coupling
18 bit equivalent
C4M

1.2. Specifications 3
heliCamTM C4 ­ User Manual

Table 1.3: heliCamTM C4 ‑ Interfaces

Software Software GenICam producer DLL


Development
Kit
GenICam producer DLL
with examples for
Python, MATLABTM
LabVIEWTM , C++ and .NET

heliViewerTM GUI based application


Application Software for camera control,
data acquisition,
visualization, and storage

Control Signal and Gigabit Ethernet


Electrical
Data Transfer

reference input and


LIA Module acquisition trigger with
adjustable phase delay

internal reference output

other in‑ and output signals

Configurable sine wave


Modulated (continuous/bursts)
Test Signal
50 kHz maximum frequency

adjustable DC

electrical output via SFIO

optical output via LED module

Peak Power 24 VDC, 30 W


Consumption

Mechanical Objective detachable C‑mount

Mounting M6 holes (front, left, right, top)

4 Chapter 1. Introducing the heliCamTM C4 Lock­In Camera


heliCamTM C4 ­ User Manual

Table 1.4: heliCamTM C4 ‑ Temperature Control


Feature C4x.0­S4x C4x.0­Sx + HSFC4.1

Cooling Option user provided cooling, forced convection


e.g., mounting on with on‑ and off switch
heat sink

Dimensions 46 × 65 × 180 mm 3 67 × 65 × 180 mm 3

Mass 850 g 1150 g

Permissible Ambient depends on the 0 ‑ 40 ° C


Temperature cooling setup

Note: These values reflect currently available settings. Possible discrepancies with respect to the heliCamTM
C4 data sheet are due to software limitations. Freely installable updates will overcome these in the future. Get
in touch with Heliotis support for more information.

1.2. Specifications 5
heliCamTM C4 ­ User Manual

6 Chapter 1. Introducing the heliCamTM C4 Lock­In Camera


CHAPTER

TWO

A) SET UP

This chapter guides you through the process of connecting hardware components and installing software to
make the heliCamTM C4 ready for use.

2.1 Hardware Installation

A pre‑requisite for its operation is that heliCamTM C4 is properly powered, temperature‑regulated and wired to
control elements. The following hardware setup guide lays out how the camera is installed, and which precau‑
tions must be observed to prevent damage.

2.1.1 Package Contents

The recommended order of the heliCamTM C4 package includes several hardware accessories:
• 1x heliCamTM C4 Lock‑In Camera
• 1x heliDriverTM D3 Power Supply, Interface, and Illumination Control Unit (LIA Module)
• 1x AC/DC Switching Adapter with 24V DC, 60W Output for Power Supply to the heliDriverTM D3
• 1x LED Module with Integrated Cable (beige) and Connector to generate Test Inputs
• Interconnecting Cables:
– 1x GigE Cable (green)
– 1x Connecting Cable (gray)
– 2x BNC‑BNC Cable (black)

Note: If the contents of the package are incorrect, insufficient, or damaged in any way, contact Heliotis or your
local distributor.

2.1.1.1 heliCamTM C4

In this document, the term heliCam™ C4 refers to the physical camera, which performs in‑pixel lock‑in amplifi‑
cation of optical signals. Several elements on its surface are important for its installation and operation or are
prone to damage if handled improperly (see Fig. 2.1). Hereafter, each of them is elaborated on.

7
heliCamTM C4 ­ User Manual

Fig. 2.1: heliCamTM C4 Exterior

2.1.1.1.1 Thermal Requirements

Important: At room temperature and under standard operating conditions, the heliCamTM C4 requires cool‑
ing.

The heliCamTM C4’s power consumption is 25‑30 W. Its surface area is too small for passive cooling by the sur‑
rounding air to dissipate the generated heat fast enough without additional measures. With this cooling effect
alone, the camera’s core temperature will eventually exceed the scope of valid values, which is below 85 °C.
Overheating may cause operational instabilities and ultimately leads to a safety shutdown.
An integrated, fan‑based cooling accessory is available (see Fig. 2.2). It suffices at ambient temperatures ≤
40 °C. When mounting a heliCamTM C4 equipped with this accessory, make sure that air can be aspired and
discharged without obstruction. The fans may be switched off temporarily, e.g., before taking very vibration‑
sensitive measurements. This prevents any interference that could be caused by the cooling mechanism.

8 Chapter 2. A) Set Up
heliCamTM C4 ­ User Manual

Fig. 2.2: heliCamTM C4 with HSFC4.1 Cooling Accessory

If the accessory for temperature control is not purchased, it is the user who must provide external cooling to
the lock‑in camera. Although the choice of cooling system is ultimately up to him or her, its heat dissipating
capacity must be at least equivalent to that of either of the following measures:
• at ambient temperatures ≤ 40 °C, an airflow ≥ 1.5 m3 /min ≈ 45 CFM can be provided to the heliCamTM C4.
This condition is met by most fans with at least 40 mm diameter when operated at 12 VDC.
• the heliCamTM C4 may be thermically well‑connected to a heat sink with a thermal resistance < 0.65 K/W,
e.g., an aluminum surface > 0.14 m2 with a recommended length / cross‑section ratio < 50 m‑1 . The areas
most suitable for dissipating heat by conduction are marked in Fig. 2.1.

2.1.1.1.2 Sensor Opening

The lock‑in camera’s light‑sensitive zone ‑ the front of its image sensor ‑ is located within a shallow cavity, as
shown in Fig. 2.1. The heliCamTM C4 opening has a C mount. By way of these standardized screw threads,
corresponding objectives may be affixed at a normed distance from the sensor.
During shipment, the cavity containing the image sensor is sealed either with a screwed‑on cap or, if commis‑
sioned, the LED module. Upon arrival, the latter is thus already correctly placed for the starter experiment
described in the next section, B) Get Started. Eventually, either cover will have to be removed before acquiring
images of the ultimate object of interest.

Important: There is no additional protective layer on the sensor. So be careful not to contaminate or dam‑
age the image sensor once it is exposed. The cap may be reattached when the camera is not used for pro‑
longed periods to protect the sensor from dust and damage.
The sensor’s photoactive area is cleaned before shipping. If the sensor gets dirty during use, contact Heliotis
support. Do not proceed with cleaning the sensor on your own before you receive precise instructions and
apply the utmost caution when you clean it under the guidance of the support team.

2.1. Hardware Installation 9


heliCamTM C4 ­ User Manual

2.1.1.1.3 Connection Interface

The bottom of the heliCamTM C4 contains an interface with three color‑coded connectors (see Fig. 2.3):
1. An 8 Pin acquisition control and data transfer connector (grey) for linking the camera to a computer by
means of a Gigabit Ethernet (GigE) cable (green). Its counterpart lies at the grey coated end of said cable.
2. A 19 Pin Power Supply and I/O connector (orange), for wiring the camera to the heliDriverTM D3. The
corresponding end of the Connecting Cable (grey) has an orange coat.
3. A 2 Pin output connector (green) for relaying a modulated signal originating from the heliDriverTM D3 to
the LED module. The LED module can be attached with the green coated end of its cable.

Fig. 2.3: heliCamTM C4 Connection Interface

2.1.1.1.4 Mounting Holes

In an experimental setup, the camera’s position may be fixed by means of dedicated M6x1.0 mm ‑ 6H mounting
holes (9 x ↓ 4 mm on the front, 6 x ↓ 5 mm on left and right faces each, 2 x ↓ 4 mm on top, see Fig. 2.1 and
technical drawings in Annex).

2.1.1.1.5 SD Card Opening

The heliCamTM C4 stores its file system on an SD card, which is located underneath a screwed‑tight cover (see
Fig. 2.1).

Note: If you suspect that the SD card is corrupt, please contact Heliotis support to receive guidance on how to
rewrite its contents. Do not unseal the SD card opening unless explicitly instructed to do so by the Heliotis
support team.

2.1.1.2 heliDriverTM D3

The heliDriverTM D3 is a connection module, which supplies power to the lock‑in camera. Moreover, it option‑
ally serves as a communication interface to feed in and process external control signals, as well as to read out
camera and sensor status information in real time. The illumination of the accessory LED module can be con‑
trolled from the heliDriverTM D3 too.

10 Chapter 2. A) Set Up
heliCamTM C4 ­ User Manual

Fig. 2.4: heliDriverTM D3 Front Panel with Mainboard and Communication Interface

2.1.1.2.1 Mainboard

The heliDriverTM D3 requires a 24 VDC, 60 W input via its main board (see Fig. 2.4). This can be ensured by
connecting it to a 115/230 VAC socket via the AC/DC switching adapter included in the standard shipment. A
power cable with C13 coupling for the adapter must be procured separately by the user.
The AC/DC switching adapter included in the standard delivery comprises a counterpart to the power input
connector (see Table 2.1). Located just above this input connector are four LED status indicators, providing
useful feedback on the state of hardware components once the setup is powered.

2.1. Hardware Installation 11


heliCamTM C4 ­ User Manual

Table 2.1: heliDriverTM D3 Power Supply Connector Pin Assignment

Pin Terminal designation Details

1 GND Camera GND

2 VDD Camera supply 24 V

3 User GND Camera User GND and


heliDriverTM D3 GND

4 User VDD Camera User supply and


heliDriverTM D3 supply 24 V

The Connecting Cable (grey) fits the D‑Sub connector for power supply and signal transmission to the lock‑in
camera on the heliDriverTM D3’s main board. In addition, the heliDriverTM D3 offers surge, reverse polarity, and
transient protection to the camera.

2.1.1.2.2 Communication Interface

For many lock‑in applications it is desirable to synchronize the data acquisition and demodulation with external
control signals. For this purpose, the heliDriverTM D3 offers a communication interface (see Fig. 2.4).
• Trigger signals to activate the recording or to time the demodulation sequence in the image sensor, such
as the external reference signal, are most conveniently delivered to the camera via the inputs FI2/FI3
(with BNC connectors) and RTIO6/RTIO7 (with SMA connectors). External triggers should be rectangu‑
lar signals with 0 V minima 5 V and maxima.
• Synchronization, debugging or monitoring may require reading back status signals from the camera in
real time. For this purpose, outputs RTIO2 and RTIO3 are the preferred connectors. Note that output
signals from the camera have a fixed latency of ~ 1 μs.
With the BNC‑BNC cables included in the standard delivery, these inputs and outputs can be connected to other
elements of your experimental setup or to electronic test equipment.
Alternatively, DIO and SFIO pins can be used to input and output signals at the cost of a reduced transmis‑
sion speed. For the (default) DIO and SFIO pin assignment see the heliDriverTM D3 data sheet, Section Lock‑In
Amplifier Module.

12 Chapter 2. A) Set Up
heliCamTM C4 ­ User Manual

2.1.1.2.3 Illumination Control

The heliDriverTM D3 that comes with the heliCamTM C4 comprises an internal, software‑controlled signal gen‑
erator. This unit allows you to create an electrical sine wave in a user configurable fashion to drive the Heliotis
LED module included in the standard delivery.

2.1.1.3 LED Module

The LED module ‑ when fed via the heliCamTM C4 with electric control signals generated by the heliDriverTM D3
‑ can be used to generate simple, well‑controlled, amplitude‑modulated optical signals. Even if you ultimately
do not need such input signals in your research, the LED module should be useful when getting familiar with
the lock‑in camera and testing your setup.

2.1.1.4 Interconnecting Cables

The three cable types included in the standard shipment are respectively used for the following:
• GigE Cable (green): relaying software control commands to the heliCamTM C4 and fast transmission of
measurement data back to the lab computer.
• Connecting Cable (gray): power supply of the heliCamTM C4 and transfer of control signals between
heliDriverTM D3 and heliCamTM C4.
• BNC‑BNC Cable (black): communication of time‑continuous control signals from and to non‑Heliotis el‑
ements of the experimental set up via the heliDriverTM D3.

2.1.2 Wiring

Fig. 2.5 summarizes schematically how the heliCamTM C4 and its accessories are wired together. To get started,
join the contents of the shipment accordingly.

Important: For safety reasons, power the ensemble only after all individual pieces are connected.

2.1. Hardware Installation 13


heliCamTM C4 ­ User Manual

Fig. 2.5: Wiring of the heliCamTM C4 with Components of the Standard Delivery Package

2.1.3 Checking the Hardware Setup

When you are done, the LED status indicators on the heliDriverTM D3’s mainboard allow you to check if the
heliDriverTM D3 and the heliCamTM C4 are properly powered and can communicate with one another. After
switching on these devices, they will boot for a few seconds. In the process, the LED designated “Cam PWR”
should go from initial yellow to green, indicating the camera is powered and ready (see Fig. 2.6).

Fig. 2.6: heliDriverTM D3 LED Status Indicators during and after Booting

Note: If “Cam PWR” does not turn green or the error indicator “ERR” stays on, check the wiring. Should the
problem be persistent when you switch the power supply off and on again, contact Heliotis support. Please
report the state of the LED status indicators when you reach out to the support team to ensure that you receive
focused help right from the start. For the detailed meaning of individual LED status indicators, you may consult
the heliDriverTM D3 data sheet.

14 Chapter 2. A) Set Up
heliCamTM C4 ­ User Manual

2.2 Software Installation

Here, you are introduced to Heliotis software for the heliCamTM C4 and receive instructions on how to download
as well as install it on the computer, which you connect to the lock‑in camera. With this software, the heliCamTM
C4 can be operated in different ways.
• A software development kit (SDK) with usage examples, allows you to control the heliCamTM C4 from
most common programming platforms, such as Python, MATLABTM , or LabVIEWTM .
• To get started and for simple validation tasks, the proprietary heliViewerTM application is the recom‑
mended and simple‑to‑use alternative to more powerful, but rudimentary, developing environments.
It is a LabVIEWTM ‑based program, built upon the SDK, that features a graphical user interface (GUI) to
command the heliCamTM C4.

2.2.1 Software Organization and Integration Options

A brief overview follows, outlining the contents and organization of the software provided by Heliotis and its
interfaces with third party software (see Fig. 2.7) in more detail.

Fig. 2.7: Overview of Heliotis Software

2.2. Software Installation 15


heliCamTM C4 ­ User Manual

2.2.1.1 Firmware

A set of programs, preinstalled before shipment and collectively named firmware, operate on the Heliotis hard‑
ware itself, i.e., the heliCamTM C4 and the heliDriverTM D3. In particular, the heliCamTM C4 runs a special Linux
version, with a custom‑written service. This service, handling the lock‑in camera at a low level, is called heliS‑
ervice. No direct user interaction with heliService is envisaged.

2.2.1.2 Software Development Kit

The communication with heliService is managed by Diaphus, a Heliotis driver software for the connected com‑
puter. Diaphus provides a normed interface for controlling machine vision cameras. It complies with the in‑
dustrial Generic Interface for Cameras (GenICam) consortium standard, which is administered by the European
Machine Vision Association (EMVA). More precisely, Diaphus is what is called a GenTL producer within the GenI‑
Cam framework.
Two principal options for using the heliCamTM C4 through this generic camera interface are supported:
1. The heliCamTM C4 can be operated using the GenICam interface directly without intermediary software
from Heliotis. You can access measurement data and all configurable or readable camera parameters
from any environment with a so‑called GenTL consumer implementation.
• For some programming languages, such as C++, Java, and Python, third party libraries are freely
available, that include such a GenTL consumer. Notable are in particular the official reference im‑
plementation from GenICam and its user‑friendly spin‑off for Python, Harvesters, which is available
through pip.
• In addition, commercial machine vision software often supports GenICam compliant cameras, e.g.,
MVTec Halcon, the MatroxTM Imaging Library (MIL) and AuroraTM Vision Library (AVL) from Zebra.
This list is neither exhaustive, nor does it imply a Heliotis recommendation for these programs.
• If you are already familiar with GenICam, you may even wish to implement a GenTL consumer your‑
self.
2. You can also control the heliCamTM C4 via the C4 Handler Library (C4Hdl) from Heliotis. The C4Hdl pro‑
vides a simplified and reduced Application Programming Interface (API) that is proprietary. The core of
the C4Hdl is a C++ wrapper around Diaphus. It underlies several libraries, each of which enables you to in‑
teract with the heliCamTM C4 in different programming environments. Currently, Dynamic‑Link Libraries
(DLL) are available in C, Common Language Runtime (CLR) for .NET programs, Python, and LabVIEWTM .
Wrapped in this form, libraries can be easily imported into the targeted user application. With this second
option, the same camera parameters are accessible as with the first one and the overhead is minimal.
Diaphus, the C4 Handler Library and examples of their use in different programming languages form the soft‑
ware development kit, which is aiding you in the development of application programs for the heliCamTM C4.

2.2.1.3 updateTool

Heliotis firmware is subject to active further development. Updates make new features available and fix bugs.
The GUI‑based program updateTool is available to manage comfortably firmware versions installed on the
heliCamTM C4 and the heliDriverTM D3 from the connected computer. The updateTool is also useful to check
your software set up.

16 Chapter 2. A) Set Up
heliCamTM C4 ­ User Manual

2.2.1.4 C4Utility

The SDK applications on the computer side, along with the updateTool, are grouped together into a single
package named C4Utilitiy.

2.2.1.5 heliViewerTM

The application software heliViewerTM is used to control camera and illumination parameters through a GUI, as
well as to acquire, visualize and store data. It is not a tool for software development, however. The heliViewerTM
uses the C4Hdl wrapper library for LabVIEWTM and must be installed on top of the underlying software devel‑
opment kit.

2.2.2 Heliotis Software Download

On the Heliotis website under Support/Downloads, you find the most recent firmware, C4Utility package and
heliViewerTM . To gain access, you must register once (see Fig. 2.8) and wait for your account to be approved.

Fig. 2.8: Heliotis Account Registration for Software Download

You receive the heliCamTM C4 with the latest version of the firmware installed at the time of shipment. For
the first commissioning, you will therefore just need to download the computer‑side applications; C4Utility
and optionally the heliViewerTM . The description of the starter experiment in the next section, B) Get Started, is
based on the (full version of the) heliViewerTM (for Heliotis devices of the latest generation), which you therefore
might want to install. Alternatively, you can get started directly in Python with the help of an illustrative Jupyter
Notebook you receive as part of C4Utility. Make sure you download a version of the Heliotis software which is
compatible with your operating system.

2.2. Software Installation 17


heliCamTM C4 ­ User Manual

Later, you may wish to download (updated) firmware and install it on the Heliotis hardware. It is available in
two forms:
• as an Image Package to upgrade the firmware on your heliCamTM C4 through updateTool once a newer
version is released.
• as a heliBoard B4 image, the way it is stored on an SD card within the heliCamTM C4. The firmware is
only needed in this format if the Heliotis support team explicitly instructs you to overwrite a corrupt file
system on the heliCamTM C4.
At the same location, you find a changelog informing you about changes between versions and bug fixes.

2.2.3 Installing C4Utility and heliViewerTM

After you downloaded the Heliotis software, install C4Utility by running the executable “C4Utility*.exe” and
following the instructions of the installation wizard. If you decided to install the heliViewerTM as well, do so by
unzipping its installation folder and running “setup.exe”. Make sure you install heliViewerTM after C4Utility. As
explained above, the latter provides the drivers and interface libraries for communication with the heliCamTM
C4, which heliViewerTM relies on. Please restart the computer when the installation is complete.

2.2.4 Establishing Network Connection

The heliCamTM C4 is connected to the host computer via Ethernet in a local area network. To exchange control
commands and data, the heliCamTM C4 and the computer must locate each other within this network.

2.2.4.1 Configuring the Host Ethernet Adapter’s IP­Address

The heliCamTM C4 and the host use the internet protocol suite, TCP/IP, to communicate with each other. These
devices therefore need an identifier called IP address. In private networks, as is the case here, IP addresses
are not routed on the Internet. Thus, they need not be coordinated with an IP address registry. But within the
confines of the private network, each device’s IP address needs to be unique to avoid ambiguity. Additionally,
the IP addresses of the heliCamTM C4 and host must specify that they are both found in the same subnet. The
two conditions are usually not met by default.
To ensure these requirements are satisfied, you may manually configure the IP address of the host computer’s
Ethernet adapter, through which it is connected to the heliCamTM C4. By default, the static IPv4 address of the
heliCamTM C4 is 192.168.2.71 with subnet mask 255.255.255.0. This subnet mask indicates that the first three
octets of bits in the IP address designate the network and only the last octet is used to identify devices within
this network. Hence, the first three octets of the host IP address must match the heliCamTM C4’s and the last
must differ. IP addresses specified in this way lie within a range of IPv4 addresses reserved for private networks.
In short, if you do not change the heliCam™ C4 ’s default IP address, the host Ethernet adapter must use
an IPv4 address of the form 192.168.2.x, where x is an integer between 1 and 254 other than 71 and the
subnet mask 255.255.255.0 (see Fig. 2.9 ).

2.2.4.2 Configuring Host Security Software

The firewall or other security software may prevent you from opening a connection to the heliCamTM C4 from
the updateTool and the heliViewerTM . Check that these Heliotis programs are not blocked from interfacing the
camera by your computer’s security measures. How the Windows firewall can be configured to let updateTool
(and by analogy the heliViewerTM ) communication pass through is depicted in Fig. 2.10.

18 Chapter 2. A) Set Up
2.2. Software Installation

heliCamTM C4 ­ User Manual


Fig. 2.9: Network Adapter IP Address Configuration
1. Open Network settings. (Start > System control > Network & Internet > Ethernet)
2. Open the dialog “Change settings”.
3. Select network to which the heliCamTM C4 is connected.
4. Open TCP/IPv4 ‑ properties. (We also recommend you disable GigE vision filters if possible since they can interfere with the connection.)
5. Set the IP address to 192.168.2.x (with x=1‑70 or 72‑254), the subnet mask to 255.255.255.0 and confirm your choice.
19
20

heliCamTM C4 ­ User Manual


Chapter 2. A) Set Up

Fig. 2.10: Allowing Apps to communicate through the Windows Firewall


1. In the Windows firewall configuration menu (Start > System Control > Windows Firewall), open the dialog “Allow an app through the Firewall”.
2. Open the dialog “Change settings”.
3. Add authentication exceptions for C4Utility and heliViewer TM
⇒ Add exceptions (tick) for public, private and domain networks.
heliCamTM C4 ­ User Manual

2.2.4.3 Network Interface Controller

Heliotis recommends you use a separate Network Interface Controller (NIC) for the heliCamTM C4 instead of a
router and switches. This ensures that the data transmission is faster, as the transmission line is not shared by
multiple clients.

2.2.5 Checking the Software Setup

The program updateTool, that you installed as part of C4Utitlity , allows you to check if the software is set up
correctly by verifying:
• if the computer‑side driver software is compatible with the firmware on the hardware.
• whether the network connection between host computer and heliCamTM C4 could be properly estab‑
lished.
You may do so by opening the updateTool and pressing the button “Update Device List” to tabulate all available
devices in the network (see Fig. 2.11).

Fig. 2.11: Software Setup Check in updateTool


1. Detect devices in the network using the “Update Device List” button.
2. Select the heliCamTM C4. The status indicator reveals if the camera is ready for use or, if necessary, why it is
not. A specific status message is displayed if you hover over the status indicator with your mouse.
3. A network configuration mismatch indicates that the network adapter IP address is not compatible with
the heliCamTM C4’s, which is marked on the window’s right‑hand side.
4. The heliCamTM C4 firmware component heliService and the computer‑side driver software Diaphus com‑
municate directly with one another. This communication is only successful if their versions match.
5. If necessary, update the selected heliCamTM C4 with an Image Package from the Heliotis download page.

The heliCamTM C4 should then appear along with a color‑coded status indicator (see Table 2.2) to the left of
its IP address. Your software setup is functional if the status indicator is a check mark. In the contrary case,
it is a cross, meaning you must make adjustments. If the indicator’s color is orange, there is already an open
connection to the camera. The indicator is green if the camera is ready for use, or red otherwise.

2.2. Software Installation 21


heliCamTM C4 ­ User Manual

Table 2.2: Software Connection Status Indicator in updateTool


Sign Meaning

A green check mark indicates that the camera is ready for use.

An orange check mark stipulates that your setup is


functional, and that you already have an open connection
to the heliCamTM C4 in some application.

An orange cross means you are not properly set up to


connect to heliCamTM C4 with this computer but
that another device in the network has an open connection
to it.

A red cross tells you, that an issue needs to be fixed


before you can interact with the camera.

Trouble Shooting
If the camera is not marked ready for use by a green check mark, proceed as follows (see Fig. 2.12):
• An orange check mark does not indicate an error per se. If you want to update the heliCamTM C4 or open
a new connection, simply close the application program from which originates the open connection or
terminate the software connection within it.
• The orange cross status indicator becomes a red cross, when closing the program that is accessing the
heliCamTM C4 from some device in the network other than the computer running updateTool.
• If the status indicator is a red cross, hover over it with your mouse to receive a specific status message.
– A network configuration mismatch is flagged if the IP addresses of host and heliCamTM C4 are not
compatible (see Fig. 2.11).
⇒ Configure the host ethernet adapter’s IP address as described earlier.
– The connection to the camera cannot be established either if the firmware version on the heliCamTM
C4 does not match the Heliotis software version installed on the host computer. The status message
tells you in this case that the software versions of the camera‑side heliService and computer‑side
Diaphus do not match (cf. Fig. 2.7).
⇒ Install firmware to match C4Utility or vice versa. We recommend installing the latest
version of C4Utility and updating the firmware accordingly. You can compare the version
of the camera‑side firmware component heliService (select the camera in the updateTool
and the version is displayed on the right‑hand side) explicitly with that of the computer‑
side counterpart Diaphus (found in the updateTool menu under Help/about). This is illus‑
trated in Fig. 2.11.
• If the heliCamTM C4 is not detected at all when pressing “Update Device List”, proceed with checking the
hardware setup according to the relevant, foregoing section and making sure that your computer’s security
measures do not prevent updateTool from connecting to the camera.

22 Chapter 2. A) Set Up
heliCamTM C4 ­ User Manual

Fig. 2.12: Network Connection Trouble Shooting

2.2.6 Updating Firmware

In addition to verifying your software setup, updateTool also allows you to upgrade the firmware on both
heliCamTM C4 and heliDriverTM D3 from the host computer using an installable board image.
If you wish to do so, make sure that the following prerequisite is met before continuing.
• You have retrieved the installable Image Package, with the extension “.ipkg”, from the Heliotis webpage
as described in the paragraph on downloading Heliotis software. There are multiple Image Packages
available containing different versions of the firmware. Double‑check that you have the desired version,
which is usually the most recent one.
Then, update the lock‑in camera in the updateTool as follows (see Fig. 2.13).
Click on the “Update Device” button, select the firmware Image Package you downloaded and press “Open”.
The updating process gets initiated and can be tracked in a console that opens. The message “update done”
appears once the installation is complete. Please be patient as the update can take several minutes. Since a
reboot is initiated automatically, you can finish the update by clicking “Close”.

2.2. Software Installation 23


24

heliCamTM C4 ­ User Manual


Fig. 2.13: Firmware Update

1. Update the device list. 5. Press “Open”.


2. Select the heliCamTM C4.
Chapter 2. A) Set Up

6. Wait until the Message “update done” appears in the box that pops up. Please be pa‑
3. Click on the “Update Device” button. tient. The update process can take several minutes.
4. Select the firmware Image Package you downloaded. 7. Finish the update by clicking “Close”.
heliCamTM C4 ­ User Manual

Trouble Shooting
After the update is done, check that you can still connect to the heliCamTM C4 in updateTool. When updating the
device list by pressing the corresponding button, the heliCamTM C4 must be listed and bearing a green status
indicator in the update Tool. Should this not be the case, proceed as follows:
• If the heliCamTM C4 is displayed, but its status indicator is not green:
⇒ Make sure that the version of Diaphus running on your computer matches that of the newly
installed firmware as described in the previous paragraph.
⇒ Then, press “Reboot”, wait 10‑30 seconds until the reboot is complete and update the device list
again. (The first boot takes longer.)
• If the previous step was unsuccessful or the heliCamTM C4 is not listed in the updateTool:
⇒ Perform a power cycle (unplug the power supply and plug it back again) and update the list of
devices after it booted.
Should the list still not contain the heliCamTM C4, contact Heliotis support. Please report the LED status on the
heliDriverTM D3 so that Heliotis can provide you with targeted help.

2.2. Software Installation 25


heliCamTM C4 ­ User Manual

26 Chapter 2. A) Set Up
CHAPTER

THREE

B) GET STARTED

The following section describes a simple starter experiment to test your setup and to get familiar with the
heliCamTM C4 as well as the application software used for its control.

3.1 Outline of Starter Lock‑In Measurement

The LED included in the standard shipment is used to produce a continuous, sinusoid optical signal with a well‑
controlled carrier frequency of ten kilohertz and constant modulation amplitude. The heliCamTM C4 can de‑
modulate this input. We use a camera‑internally generated reference signal with a slight frequency mismatch
of a few ten Hertz compared to the carrier. As a result, a so‑called sinusoid “beat” across the sequence of ac‑
quired frames is produced in the I and Q output components. For a detailed explanation of this phenomenon,
which is mathematically related to its namesake in acoustics, the curious reader is referred to the paragraph
Idealized Signal Processing in the next section.

3.2 Setup Preparation

To embark on the starter experiment, the hardware and software must be set up as described in the previous
two chapters. Make sure that the LED Module shines through the heliCamTM C4’s sensor opening onto the
image sensor, as shown in Fig. 2.5.
If you wish to follow the experiment step‑by‑step as it is described below, you will need to have downloaded
and installed the heliViewer™ in addition to C4Utility.

3.3 Choice of Application Software

The starter experiment is readily realizable with two choices of software to operate the heliCamTM C4.
• If you wish, you can learn how to control the heliCamTM C4 in a software development environment right
from the start. Scripts in different programming languages named “c4DemodSimple” implement the
starter experiment.
– When interacting with the heliCamTM C4 via the C4 Handler Library (C4Hdl) from Heliotis, these
examples are found in C4Utility’s dedicated C4Hdl folder (C: > Program Files > C4Utitlity > c4hdl >
%os‑folder% > examples).
– If you use a third‑party library to control the heliCamTM C4 through its generic camera interface
directly, you find them with the general examples (C: > Program Files > C4Utitlity > examples).
There, you may also obtain the well‑documented, interactive Jupyter Notebook
“c4DemodAdvanced.ipynb”, verbally detailing the starter experiment and more advanced
configuration options alongside Python code. It uses the freely available, user‑friendly PyPI‑
package Harvesters to interface with the heliCamTM C4. More setup instructions are available in its
“README.md” document.

27
heliCamTM C4 ­ User Manual

• Here on the other hand, we showcase how the GUI‑based application software heliViewerTM can be em‑
ployed to perform basic lock‑in experiments. The heliViewerTM is well‑suited for such standard tasks and
first‑time users might do well to use it for replicating the experiment before moving on.
For a complete overview of the possible software options to interact with the heliCamTM C4, see the previous
section on integration options.

3.4 Using heliViewerTM

It is beyond the scope of this text to discuss all functionalities of heliViewerTM systematically or comprehen‑
sively. The aim here is rather that you learn about heliViewerTM ’s core features in passing as you see them
applied in a step‑by‑step user guide for making a first measurement. That said, before undertaking the lock‑in
measurement, there are a few purely heliViewerTM ‑specific preparatory steps in the procedure.

3.4.1 Enable Lock­In Camera Mode

Heliotis devices other than the heliCamTM C4 can be controlled with the heliViewerTM . At first use, you need
to specify explicitly that you operate a heliCamTM C4 (and not the interferometers heliInspectTM H8/H9 which
the heliViewerTM ’s base settings support). To do so, open the heliViewerTM and set the device operation mode
to “lockInCam” with the switch in toolbar. In older versions, this is achieved via the menu bar (Tools > System
Settings > System) from “Default” to “LockInCam” and confirm your choice (see Fig. 3.1). The heliViewerTM
layout will change to accommodate the operation of the heliCamTM C4. These settings are saved for the future.

Fig. 3.1: Enabling the heliViewerTM ’s Lock‑In Camera Mode

3.4.2 Create Measurement Recipe

The heliViewerTM offers the possibility to save specific camera configurations as measurement “recipes”. To
make the starter experiment easily reproducible, we show here how to store the corresponding operating in‑
structions for the heliCamTM C4 in this form.
Clicking on “3D‑heliCam > Manage Configuration” opens a dialog box allowing you to manage your recipes.
The simplest way to create a recipe for the experiment at hand is to start from the example “C4 LockIn‑
Cam_internalRef”. Ideally, you duplicate it to work with the copy as shown in Fig. 3.2.

28 Chapter 3. B) Get Started


heliCamTM C4 ­ User Manual

Fig. 3.2: Loading and Duplicating Heliotis Example Recipe


1. Open the configuration manager using the menu bar (“3D‑heliCam > Manage Configuration”).
2. Click on the “Add examples” button, select the example recipe “C4 LockInCam_internalRef” and confirm.
3. Select the new recipe, which should have appeared in the configuration manager, and press “Duplicate”. Give the
copy a name and press “OK”.

3.5 Lock‑In Camera Settings

By default, this example recipe does not yet configure all parameters according to the outlined experiment. It
must be adapted slightly to introduce a small mismatch between the respective frequencies of the modulation
carrier and the reference signal.

3.5. Lock­In Camera Settings 29


heliCamTM C4 ­ User Manual

3.5.1 Lock­In Wizard

In the configuration manager, select your recipe by clicking on it. The menu to edit the recipe is then accessible
via the corresponding button. (See Fig. 3.3, ditto for the following steps.) The recipe is thus shown as a list of
heliCamTM C4 configurations, which can be manipulated directly. It is more straightforward, however, to use
the dedicated graphical user interface “Lock‑In Wizard” for this purpose.

Fig. 3.3: Graphical User Interface for Configuration of Lock‑In Camera


1. To alter an existing recipe, select it in the configuration manager and press “Edit”.
2. The opening window shows the list of its configuration commands. (If you changed the heliCamTM ’s IP address,
make sure that it matches the one in the box “SN”.) Open the “Lock‑In Wizard” with the corresponding button. It
allows you to change the heliCamTM C4 ’s key settings interactively.
3. Where necessary, change the Lock‑In Wizzard configurations according to Table 3.1. Note that the same settings are
depicted in this figure except for the “Sensitivity Level”, which may differ depending on your camera version.
4. By clicking on the signal generator symbol, a separate dialog opens, enabling you to control the LED module.

30 Chapter 3. B) Get Started


heliCamTM C4 ­ User Manual

Note: The “Settings” button in the toolbar gives you quick access to the same menu. In that case, however,
any changes you make are saved to the to the “ad‑hoc” configuration, which is also listed in the configuration
manager, instead of the chosen recipe.

In the lock‑in wizard’s main user interface, you can configure the principal lock‑in amplification parameters. A
set of valid parameters is proposed in see Table 3.1. Note that the adequate the camera exposure (Sensitivity)
setting changes if you have a non‑standard version of the heliCam™ C4’s in terms of pixel size, full well capacity,
or equipment with micro lenses (see Table 1.1). In this way, one achieves an appropriate signal level and avoids
saturation.

Table 3.1: Recommended Settings

Lock­In Wizzard Configurations


C4.0­S40 C4.0­S40U C4.0­S41U C4M.0­S4M0
Sensitivity (Level)
50 % 20 % 5% 25 %

Coupling DC

Time Constant # Periods 10

Reference Input Internal

Reference Frequency 10000 Hz

# Frames 60

Light Controller Source Signal Generator

Signal Generator Configurations


C4.0­S40 C4.0­S40U C4.0­S41U C4M.0­S4M0
Modulation Mode On

Frequency 9975 Hz

Amplitude 10 %

Offset 20 %

The signal generator driving the test illumination can be configured in a separate window, which opens when
you click on its symbol in the block diagram, see Fig. 3.4. Replicate the settings in Table 3.1 / Fig. 3.4 manually,
where they deviate from the default.

3.5. Lock­In Camera Settings 31


heliCamTM C4 ­ User Manual

Fig. 3.4: Signal Generator Configuration

32 Chapter 3. B) Get Started


heliCamTM C4 ­ User Manual

3.5.2 Key Parameters

The heliCam™ C4 is primarily a research tool. It is used in diverse experimental settings and hence supports a
wide range of applications. With this focus on general applicability comes a relatively large set of configuration
and control options. Navigating this landscape is not trivial, especially for first‑time users. In most applications,
however, you only need a small subset of what is possible.
The “Lock‑in Wizard” summarizes the heliCam™ C4‘s most important settings. Here, we briefly walk you through
them even though you might not need to alter them for the starter experiment. Concepts and parameter names
generalize largely beyond the heliViewer™ to software developing environments. Configurable lock‑in camera
parameters and selection options are highlighted in bold in the following.
A deeper understanding of this passage requires a familiarity with the basic concepts of lock‑in amplification
and, at times, with the specific implementation of the principle in the heliCam™ C4. If necessary, an extensive
discussion can be found in section D) Advanced Concepts and Control.

3.5.2.1 Light Control

By means of the “Light Control” field, you can configure the illumination with the Heliotis LED module. The switch
Light Controller Source lets you choose the source of the driving current to the LED module.
• Signal Generator: The heliDriver™ D3 comprises an signal generator, which can be configured in a sepa‑
rate window, see Fig. 3.4. It produces a sinusoidal modulation signal whose characteristics like Frequency,
Amplitude, and Offset you can control.
Furthermore, the internal signal generator features three principal Modulation Modes:
• On: With this setting enabled, the signal generator produces a continuous output. This behav‑
ior is chosen in our starter experiment.
• Off: The oscillating portion is disabled such that only a constant, non‑zero Offset remains.
• Pulsed: In the pulsed mode, the LED emits sinusoidal bursts. In between individual bursts,
the illumination is constant and given by the Offset. Additional parameters govern the pulse
characteristics.
– The Pulse Duration of individual bursts can be set.
– Trigger Source specifies the pin on the heliDriver™ D3’s communication interface, whose
signal can be used to trigger the next burst. In ‘Auto’ mode, the trigger is generated auto‑
matically as soon as the set Pulse Duration and Trigger Delay allow it.
– Trigger Activation specifies the flank of the trigger signal, which is detected.
– Trigger Delay introduces a delay of the modulation burst with respect to the trigger event,
which causes it.
– Triggered modulation bursts can be subjected to a common Phase Shift.

Note: Please note that you specify (peak‑to‑peak) Amplitude and Offset as a percentage value of
the full scale. Part of the signal will therefore be cropped if,
Amplitude Amplitude
Offset − < 0% or Offset + > 100%
2 2

• External: A signal from an external source is routed to the current source supply of the LED module. The
default pin on the heliDriver™ D3’s communication interface to feed in the electrical input (0‑5 V, e.g. sine
wave) is SFIO 5, cf. the heliDriver™ D3 data sheet, Section Lock‑In Amplifier Module.
• Off: The driving current is disabled, the only software configuration that leaves the LED completely dark.

3.5. Lock­In Camera Settings 33


heliCamTM C4 ­ User Manual

3.5.2.2 Coupling

The Coupling controls the activation of background subtraction. If it is set to AC, the potentially large DC com‑
ponent in the input is removed. Thus, the sensor’s full well capacity is available for integrating the modulated,
AC component, without becoming saturated by DC light. The background is not suppressed, when the mode DC
coupling is enabled. The background suppression affects the signal‑to‑noise ratio negatively and should there‑
fore only be used when necessary. For more detailed information see the relevant paragraph on Background
Suppression.

3.5.2.3 Sensitivity

The Sensitivity (level) controls the heliCam™ C4’s exposure. Roughly speaking, it determines the fraction of the
measurement time during which the sensor light sensitive. A more technical explanation is given in the paragraph
Processing in Pixel et seq.

3.5.2.4 Recording Start

You may also choose the trigger, which causes the camera to start a recording. (In the heliViewer™, this can be
done via “Input > Trigger Source”)
• Internal: A software command from the computer connected to the camera directly triggers the onset of a
measurement.
• External: An electric signal (rect pulse, 0‑5 V) relayed to the heliCam™ C4 via a selectable pin on the he‑
liDriver™ D3’s communication interface triggers the recording.

3.5.2.5 Reference Signal

The synthesis of the effective reference signal from configurable parameters and (possibly) a reference input sig‑
nal is technically sophisticated and complex in its details. Here, you will be shown in a simplistic way how to
choose parameter values. A comprehensive and mechanistic explanation can be found in paragraph Reference
Signal Synthesis of section D) Advanced Concepts and Control.
The Reference Frequency (“Input > Frequency”) must be set to the frequency of the reference signal.
The heliCam™ C4 lock‑in camera can derive the pace of demodulation from an internal or an external clock. Which
mode is enabled depends on the Reference Input setting (configurable in lock‑in wizard under “Input > Reference
Input”):
• Internal: The heliCam™ C4 synthesizes an effective dual‑phase, pulse wave reference signal with a refer‑
ence frequency as specified by the corresponding parameter.
• External: An external reference input (rect wave, 0‑5 V) is provided to the heliCam™ C4 via a pin on the he‑
liDriver™ D3’s communication interface. As a first approximation, the injected pulse wave can be considered
as the in‑phase portion of the reference signal with which the optical input is mixed in lock‑in amplification.
In the external mode, additional parameters are used to configure and modify the reference input.
• The Reference (Trigger) Source selects from which pin the reference input is drawn.
• The Reference (Frequency) Scaler multiplies or divides the frequency of the reference input
by a select factor. Its original frequency multiplied or divided by this factor must be equal to
that of the carrier of the optical input signal.
• The Phase Delay parameter specifies the delay of the reference trigger input introduced on the
way to the image sensor.
• The maximum (Expected) Frequency Deviation makes the measurement tolerant to un‑
steadiness of the reference input frequency up to the specified value in percent.

34 Chapter 3. B) Get Started


heliCamTM C4 ­ User Manual

Note: Please note that the idea of considering the reference input directly as the reference signal
has its limits. Attributes other than its frequency, such as amplitude, offset, and duty cycle are
ignored. Also, you must specify the Reference Frequency parameter correctly even when you use
an external reference input.

3.5.2.6 Time Constant

The Time Constant defines the number of periods over which the mixed signal is integrated into a frame. Thus,
it serves a double role as the filter width and the sampling period. Increasing this parameter gives you a stronger
signal and makes it more selective for the target reference frequency.

3.5.2.7 Frame Rate

A frame rate violation can occur with default settings if the following inequality is not satisfied.

Time Constant − 0.5 + int (Coupling == AC)


 
Frequency Deviation
Reference Frequency × 1 + int (Reference Input == External) × 100%
1
− (Time Constant − 0.5) × 6.3 × 10−6 s >
flim

, where flim = 4960 Hz in the case of the heliCam™ C4 and flim = 1390 Hz for the megapixel heliCam™ C4M.

Note: If the set frame rate is too high for the lock‑in camera, it does not transfer measurement data. With
conventionally accessible settings, the lock‑in camera is not fully optimized to achieve high frame rates. A
corresponding mode will become available with future software updates.

3.6 Measurement Data

Now ready to start the measurement, click “Acquire” in the toolbar and wait a few seconds. The heliCamTM C4
should acquire a three dimensional “data volume matrix”, i.e., a sequence of frames ‑ 60 by default. Each frame
can be thought of as an image with “complex pixel values”, whose real and complex parts part represent the I
and Q components resulting from dual‑phase lock‑in amplification, respectively. The expected result is shown
in Fig. 3.5. With baseline settings, the heliViewerTM exclusively displays sections through the “raw I volume”.

3.6. Measurement Data 35


36

heliCamTM C4 ­ User Manual


Chapter 3. B) Get Started

Fig. 3.5: Expected Raw I/Q Result of Starter Lock‑In Measurement


After completing the heliCamTM C4 ’ s configuration, press “Acquire” in the tool bar to take a measurement. HeliViewerTM will show the raw I component of your measurement. You should
expect a similar result with a distinct sinusoid tendency across the series of acquired frames. The beat frequency, fb is expected to coincide with the carrier/reference frequency mismatch,
here 25 Hz. That this is so can be checked by estimating the beat period, Tb . For the data presented in this manual, we have:
1 1
fb = ≈ = 25 Hz
Tb 40 ms
heliCamTM C4 ­ User Manual

3.6.1 Fixed Pattern Noise

The raw I and Q measurement data is not centered at zero. For one, these data are offset by half the full scale
of possible values, i.e., FS/2 = 1024/2. Additionally, they are affected by fixed pattern noise (FPN, see Fig. 3.6 a).
This type of lateral noise is due to small differences in the offset of individual pixel units across the image sensor
array. The pixel‑specific offset it introduces depends on camera settings like the sensitivity and environmental
parameters, such as the operation temperature but is otherwise constant.

3.6.1.1 Estimating Offset from Fit

In this experiment, the I/Q components of any single pixel are known in advance to vary sinusoidally with time.
Each pixel’s individual offset, including the FPN component, can thus be estimated easily by fitting the expected
time dependence function (see Fig. 3.6 b). In heliViewerTM , this option is available by default to convert raw I/Q
values to offset‑free I/Q values proper by subtraction.

Fig. 3.6: Offset in Raw I/Q Measurement Data


a) Offset in single pixel
b) Offset removal by sinusoid fit
FS = Full Scale, FPN = Fixed Pattern Noise

3.6.1.2 Measuring Offset

More generally, the offset can be measured by illuminating the sensor with the DC part of the input alone, under
the same experimental conditions otherwise.
The constant illumination component should be kept on when evaluating the offset, because said offset also
depends on the total amount of incoming light the pixel is exposed to. That is because the DC attenuation factor
inherent to the lock‑in principle is finite and the constant part is often much larger than the time dependent
one.
In the case at hand, you can set the Modulation Mode to “Off” (see Fig. 3.7) to disable the illumination’s AC
part.

3.6. Measurement Data 37


heliCamTM C4 ­ User Manual

Fig. 3.7: Signal Generator Setting for Offset Measurement


To measure the offset, set the signal generator’s Modulation Mode to “Off” in the lock‑in wizard (Settings > Lock‑In
Wizard). Do not forget to turn it back on after having recorded the offset.

Trigger another acquisition afterwards. In the heliViewerTM , such background data can be saved as an “offset
map”, according to which the offset can be removed automatically in subsequent measurements (for step‑by‑
step instructions, see Fig. 3.8).

3.6.2 Conversion to Polar Coordinates

It is especially important to remove the offset, I0 and Q0 , from the raw measurement results Iraw and Qraw
before you convert to polar coordinates (see heliViewerTM example in Fig. 3.9), so that you obtain correct values
for amplitude A and phase φ.
p
A = I 2 + Q2

φ = arctan2(Q, I)
, where I = I raw − I0 and Q = Qraw − Q0 .

38 Chapter 3. B) Get Started


3.6. Measurement Data

heliCamTM C4 ­ User Manual


Fig. 3.8: Offset Measurement and Subtraction

1) After setting the carrier amplitude to zero, make a measurement of the offset. 4) Add a new algorithm command that uses the offset map to convert raw data.
2) Set the recorded data as “offset map”. 5) Remove/comment the default conversion method based on a sinusoid fit function.
3) Open the “Algorithm” dialogue box. 6) Confirm your changes.
39
40

heliCamTM C4 ­ User Manual


Chapter 3. B) Get Started

Fig. 3.9: Expected Amplitude Result of Starter Lock‑In Measurement


The conversion to polar coordinates, either with offsets from the default sine fit or a set offset map, is seamless in the heliViewerTM . Simply choose in which form you wish to display the
results on the right‑hand side of the heliViewerTM . You may also show phase or offset‑corrected I/Q values via the same menu.
heliCamTM C4 ­ User Manual

Trouble Shooting
We encourage you to get in touch with Heliotis support without hesitation in case you face difficulties with the
starter experiment. Error analysis is difficult without further clues, however. Here are a few hints for collecting
indications about the source of the problem, debugging common issues, and getting effective help.
No Data Received:
• Power Cycle: If you do not get any data after launching an acquisition, switch the power supply to the
heliCamTM C4 off and on again and proceed by Checking the Software Setup as described previously be‑
fore you try once more.
• Enabling heliViewer™ Log: The heliViewerTM can display a log with status messages (see Fig. 3.10). They
can often point you to the source of the issue. Please include a copy of the heliViewerTM log when you
work with the heliViewerTM and contact Heliotis for support.

Fig. 3.10: heliViewerTM Log

Deviating Results:
• Potential Causes: Various issues can make your starter experiment results differ from the data presented
in this manual.
• Example: It is common that you run into saturation issues ‑ especially if you have an image sensor which
features a signal enhancing micro‑lens array. Saturation manifests itself in cropped I and Q signals when
they exceed the full scale or, in severe cases with large DC input components, even flat signals (cf. Back‑
ground Suppression).
⇒ Reduce the signal generator Amplitude, the Sensitivity (level) / enable the background
suppression by setting the Coupling to AC in the Lock‑In Wizard.
• Sharing Data: If you wish to consult the Heliotis support team with regards to your data, consider sharing
them in the “.hdat” ‑format (heliViewerTM menu bar > file > Save Measurement) via file transfer. In this
form, your heliCamTM C4 settings are saved alongside as metadata, which helps Heliotis considerably.

3.6. Measurement Data 41


heliCamTM C4 ­ User Manual

42 Chapter 3. B) Get Started


CHAPTER

FOUR

C) BASICS OF APPLICATION SOFTWARE DEVELOPMENT

Here, we briefly introduce the fundamental organizing principles behind software control of the heliCamTM C4.
These concepts and the associated terminology are heavily shaped by the Generic Interface for Cameras (GenI‑
Cam) framework, to which the heliCamTM C4’s programming interface complies. Rather than explaining this
standard in depth, the following section wants to present you with the fundamental notions required to adapt
Heliotis provided example code in C4Utility according to your needs. For more complete information, the
reader is referred to the Programmer’s Guide of the heliInspectTM H8 interferometer, whose software integra‑
tion works on the same principles as that of the heliCamTM C4.
Implementation details differ depending on the software integration option you choose. Specific versions of
the Programmer’s Guide of the heliInspectTM H8 and code examples for different programming languages are
available. To avoid a purely abstract discussion, we give examples in Python syntax in the style of a camera
interaction through the “Harvesters” package. Thus, the code is directly comparable with the lock‑in camera
specific usage examples “c4DemodSimple.py” and “c4DemodAdvanced.ipynb” (C: > Program Files > C4Utility
> examples).

4.1 Feature

The heliCamTM C4’s application user interface (API) defines special software variables used for reading and writ‑
ing operation modes and lock‑in camera parameters. They are referred to as features. In the starter experiment,
you have already encountered some, such as the SignalGeneratorAmplitude or the LockInTarge-
tReferenceFrequency, albeit they were plainly called Amplitude and Offset.

4.1.1 API Description

If C4Utility is installed, you can find a complete list of all currently available lock‑in camera features and their
properties (C: > Program Files > C4Utility > doc). Table 4.1 illustrates how features are described using the
example of the feature LockInSensitivity.

Table 4.1: Example Feature Description

Name LockInSensitivity Specifies the sensitivity range of 0.0 – 1.0.


Type Float
Visibility Expert The highest sensitivity setting 1.0 maximizes the
OperationMode LockInCam signal amplitude.
AccessMode RW LockInSensitivity is an alias of the feature
Min 0.0 ExposureRatio.
Max 1.0

This example also reveals some generic elements of features and their description.

43
heliCamTM C4 ­ User Manual

• Features are typed like other programming variables (see Table 4.2).

Table 4.2: Data Types of Features


Data Type Description
Boolean Boolean value (True or False)
Command Executable command
Enumeration Discrete value list
Float Floating point number
Integer Integer number
String Character string

• Visibility is a GenICam concept. Useful for application software developers, it specifies at what approxi‑
mate level of expertise camera users should be exposed a certain feature, given its complexity, see Table
4.3.

Table 4.3: Visibility Levels of Features


Visibility Description
Beginner Feature can be used easily.
Expert Feature requires in‑depth knowledge of the device or transport technology.
Guru Features requires exact knowledge about that specific device or transport technology.

• The description moreover reveals if one has the authorization to access and modify a feature (see Table
4.4).

Table 4.4: Accessibility Levels of Features


Accessibility Abbrevia­ Description
tion
Read Only RO Status information only or currently not write‑able because of the device
state
Write Only WO Written feature (command)
Read and Write RW Full access (writing changes state or an attribute of the device)
Not Available NA Temporary not available
Not Imple‑ NI Not implemented on this device or not active
mented

• Operating the device in a different mode can change the accessibility of a feature. The camera device
type can be changed by the feature DeviceOperationMode.

Important: The heliCamTM C4 shares the same configuration interface with other Heliotis devices.
⇒ Always use the heliCamTM C4 specific setting DeviceOperationMode = 'LockIn-
Cam'.

• The scope of valid entries is also indicated, and a short text portrays the feature in words.

44 Chapter 4. C) Basics of Application Software Development


heliCamTM C4 ­ User Manual

4.1.2 Access

Which features are available and how they need to be configured is the same in all development environments
which are supported. The syntax to access the features varies among the different languages available, how‑
ever, and is shown in sample scripts (C: > Program Files > C4Utility > examples).
With the Python library “Harvesters”, you configure the heliCamTM C4 by interacting with a camera object,
which is simply called camera in the examples. A feature’s value is accessed by prepending camera.
remote_device.node_map. to the feature name and appending .value.

4.1.2.1 Writing

Setting the LockInSensitivity feature to its maximum 1.0 can thus be achieved with the following line.

camera.remote_device.node_map.LockInSensitivity.value = 1.0

4.1.2.2 Reading

Similarly, reading back the camera configuration for the same parameter (and storing it in a float variable called
sensitivity) is done as follows.

sensitivity = camera.remote_device.node_map.LockInSensitivity.value

4.1.3 Special Feature Types

Some special features are not as directly accessible as the previous example LockInSensitivity.

4.1.3.1 Selector

One such feature category is under the control of specific integer and enumeration features called selectors.
These selectors enable indexed access to other features. What this means is best illustrated with an example.
The feature TriggerSelector determines which of multiple triggers (e.g, 'FrameStart', 'Record-
ingStart', or 'Reference' – see Table 4.5) is configured. Features under the control of this selector,
such as TriggerSource, change their behavior according to the value of the selector. TriggerSource,
for instance, controls which input channel is used for the selected trigger. To choose the input pin 'FI2' for
the 'Recording Start' trigger, for instance, one would write:

camera.remote_device.node_map.TriggerSelector.value = 'RecordingStart'
camera.remote_device.node_map.TriggerSource.value = 'FI2'

In the feature description document, the selector features include a list with all possible selection options.
Selector‑controlled features have the corresponding selector printed in square brackets after their name.

4.1. Feature 45
heliCamTM C4 ­ User Manual

Table 4.5: Selector and Selector‑Controlled Features

Selector Selector­Controlled
Name TriggerSelector Name TriggerSource [TriggerSe‑
Type Enumeration lector]
Visibility Beginner Type Enumeration
AccessMode RW Visibility Beginner
EnumEntry AccessMode RW
• AcquisitionStart
EnumEntry
• FrameStart • Software
• FrameBurstStart • Auto
• RecordingStart • …
• Reference • FI2
• …

4.1.3.2 Target and Actual

There are lock‑in camera parameters which can only assume discrete values in their range of validity. The
LockInReferenceFrequency feature, for example, can only take values that are a fraction of the sensor’s
clock frequency. In this case, the parameter is covered by two separate features (see Table 4.6). The user sets
a “target” feature, from which the closest possible parameter value is deduced automatically and stored in the
feature reflecting the “actual” setting. The actual value cannot be written directly but is readable.

Table 4.6: Target and Actual Feature Pairs

Target Actual
Name LockInTargetReference‑ Name LockInActualReference‑
Frequency Frequency
Type Float Type FloatReg
Visibility Beginner Visibility Beginner
OperationMode LockInCam OperationMode LockInCam
AccessMode RW AccessMode RO
Min 305 Hz
Max 135000 Hz

46 Chapter 4. C) Basics of Application Software Development


heliCamTM C4 ­ User Manual

4.2 Status, Trigger and Event

The camera goes through a sequence of states during a measurement (see Fig. 4.1), more than one of which
can be active at the same time. Changes of state require an internal – often software‑controlled – or an external
trigger signal (cf. paragraph on the temporal sequence of the sensor operation). Following a change of state,
software events may be sent or recorded.

4.2.1 Monitoring and Control of Measurement Sequence

Let us consider the initiation of a measurement to illustrate what this means in practice.
1. During acquisition, the heliCamTM C4 is initially in a state where it waits for the 'FrameStart' trigger,
the first signal required to start a measurement.
2. Upon arrival of this trigger, the lock‑in camera enters another state in which it waits for the 'Record-
ingStart' trigger.
3. Only when it receives this second trigger, does it get into a third state, one of active recording.

Note: There is currently no option to acquire individual frames. In each measurement, an entire burst of
frames is recorded. Note that both the 'FrameStart' and the 'RecordingStart' trigger, are thus only
needed once per measurement to induce its beginning.

4.2. Status, Trigger and Event 47


heliCamTM C4 ­ User Manual
Fig. 4.1: Status and Event Signaling during Measurement Sequence
48 Chapter 4. C) Basics of Application Software Development
heliCamTM C4 ­ User Manual

4.2.1.1 Trigger Configuration

As you have seen in a previous example, these triggers are configured via selector features. For further illus‑
tration, let us assume more specifically that we wish to start a new measurement with a software command,
camera.remote_device.node_map.TriggerSoftware.execute(). In this case, we specify that
the 'FrameStart' trigger should come internally from 'Software' and set the 'RecordingStart'
trigger to 'Off'. By switching it off, 'RecordingStart' is triggered automatically after a “FrameTrigger”
event.
These settings can be achieved with the following code sniplet.

camera.remote_device.node_map.TriggerSelector.value = 'FrameStart'
camera.remote_device.node_map.TriggerMode.value = 'On'
camera.remote_device.node_map.TriggerSource.value = 'Software'

camera.remote_device.node_map.TriggerSelector.value = 'RecordingStart'
camera.remote_device.node_map.TriggerMode.value = 'Off'

Note: The 'RecordingStart' trigger goes directly to the image sensor. To start a measurement with an
external synchronization signal via the heliDriverTM D3’s communication interface, you thus usually employ this
trigger. To do so, enable it and set the TriggerSource feature to the relevant input pin. Note also that the
'FrameStart' signal cannot come from an external source.

4.2.1.2 Status Output

You may also wish to monitor the status of your camera with an oscilloscope. To route a status signal, such as
'RecordingActive', in real time to a heliDriverTM D3 output pin, e.g., 'RTIO2', you may use the selector
LineSelecter and the feature LineSource depending on it.

camera.remote_device.node_map.LineSelector.value = 'RTIO2'
camera.remote_device.node_map.LineSource.value = 'RecordingActive'

For currently available status, trigger and event monitoring/control, see chapters 1, 6, and 8 of the device fea‑
ture description document (C: > ProgramFiles > C4Utility > doc > ftrDesc.pdf). Status signals from the camera
are delayed by ~ 1 μs.

4.3 Retrieving Measurement Data

After a measurement, we would like to retrieve the data. This is not done via heliCamTM C4 features. Measure‑
ment data are transferred as multi‑part buffers. Consult the code examples (C: > ProgramFiles > C4Utility >
example > Python) to learn how they are retrieved.

4.4 Basic Sequence of Operations

Application programs to operate the heliCamTM C4 should follow the sequence shown below. When developing
camera software, we recommend you start with a Heliotis code example and adapt it while preserving the
following structure.

4.3. Retrieving Measurement Data 49


heliCamTM C4 ­ User Manual

Fig. 4.2: Basic Sequence of Operations

Note: Only in “configuration mode” can the heliCamTM C4’s settings be altered. Once the acquisition has
started, this is no longer possible until it is stopped again.

50 Chapter 4. C) Basics of Application Software Development


CHAPTER

FIVE

D) ADVANCED CONCEPTS AND CONTROL

This chapter offers a detailed, mathematical, and mechanistic view of the measured signal, which enables the
user to exploit the full potential of the heliCamTM C4 lock‑in camera.

5.1 Lock‑In Amplification

This first section aims to convey the basic theory behind lock‑in amplification in depth to users with a technical
background, who are not fully familiar with the subject. Later sections draw heavily on the picture presented
here.
A lock‑in amplifier exclusively extracts frequency components in a defined band around a tunable reference
frequency from the input. Lock‑in amplifiers can be used to isolate the information‑bearing modulation am‑
plitude from a known carrier wave in a process called demodulation. Due to their selectivity for specific fre‑
quencies, lock‑in detectors are effective at suppressing background noise.
The implementation of lock‑in amplification comprises two key steps:
• First, the input signal is compared to a standard oscillation called reference signal by multiplication. This
process is also called heterodyning ‑ or homodyning if the reference oscillation has the same frequency
as the input.
• Then, the result is averaged in time.
Lock‑in amplification is equivalently described in the frequency domain as (down‑)mixing and subsequent low‑
pass filtering.

5.1.1 Single­ and Dual­Phase

In their most basic form, so‑called single‑phase lock‑in amplifiers also attenuate signal components that are out
of phase with the reference signal even if they oscillate at the same frequency. Dual‑phase or phase‑sensitive
lock‑in amplification refers to a more advanced technique, which can detect both the amplitude of the input
oscillation and its phase shift with respect to the reference signal. With this approach, used by the heliCamTM
C4, the lock‑in process is repeated once more with the reference signal shifted by π2 (see Fig. 5.1).

51
heliCamTM C4 ­ User Manual

Fig. 5.1: Block Diagram of Single‑ and Dual‑phase Lock‑In Amplification


Lock‑in amplification selectively extracts frequency components around the reference frequency. To this end, the input is
mixed with a reference signal provided by a local oscillator and subsequently low‑pass filtered. Single‑phase lock‑in
amplification (black part) not only suppresses signal components with frequency‑ but also with phase‑mismatch relative
to the reference signal. With a dual‑phase lock‑in design (grey part included), the amplification is repeated with a π2 ‑
shifted copy of the reference signal. The two outputs components, “In‑Phase” and “Quadrature” after their phase relation
to the reference, are usually transformed to polar coordinates. In this manner, both the signal amplitude of the passing
frequency components and their phase with respect to the local oscillator can be retrieved. In the literature on lock‑in
amplification, “In‑Phase” and “Quadrature” components are often referred to as X and Y, respectively.

Most lock‑in amplifiers use a sine wave as reference signal. It is a pulse wave in some instruments, however,
including the heliCamTM C4. These lock‑in amplifiers are also sensitive to odd harmonics of the fundamental
reference frequency. For the sake of simplicity, we will first focus on ideal dual‑phase demodulation with a
perfect sine and its π2 ‑shifted twin, a cosine wave, as reference signals. Only then will we consider the impact
of demodulating with a pulse wave instead in the next section.

5.1.2 Idealized Signal Processing

A mathematical examination of lock‑in amplification reveals how the processing steps outlined above act upon
the input. We will set out in time domain to track the treatment of the signal directly as it is implemented by the
hardware. The analysis of the lock‑in principle in the frequency domain offers a complementary view. Although
very intuitive, this second perspective requires the reader to be familiar with the Fourier transform.

52 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

5.1.2.1 Time Domain

In time domain, signals are expressed by their value as a function of time. Not with all inputs is lock‑in ampli‑
fication easily described using this representation.

5.1.2.1.1 Sinusoid Input

Oscillatory inputs with a single frequency arise often, are suitable for analysis in time domain and the results
generalize readily. They can also be considered as pure carriers, i.e., amplitude modulated signals of the sim‑
plest form, which do not contain any information. Let us initially assume a sinusoid input signal sin with con‑
stant amplitude, Ain , frequency, fin , and phase, φin .

sin (t) = Ain · cos (2πf in t + φin ) (5.1)

Dual‑phase lock‑in amplification of this input, as described formally below, is graphically summarized in Fig. 5.2
at the end of the paragraph. Using complex numbers, this process can be expressed concisely. Euler’s formula
(5.2) establishes a relationship between the trigonometric functions and the complex exponential function.

eix = cos(x) + i sin(x) (5.2)

From (5.2) follows that the cosine can be written as a sum of complex exponentials.

eix + e−ix
cos(x) = (5.3)
2
Using this identity (5.2), the input signal (5.1) can be recast in complex form a clockwise and a counterclockwise
rotating component in the complex plane.

ei(2πf in t+φin ) + e−i(2πf in t+φin ) (5.4)


sin (t) = Ain
2

5.1.2.1.2 Comparison to Reference Signal

Writing the input in this fashion, the two‑stage processing of the input in dual‑phase demodulation can be
mathematically treated in a single pass with a single, yet complex, reference signal sref (t). The real part of
sref is in phase with a local oscillator, that is setting the pace. Its imaginary part accounts for the second de‑
modulation and is thus shifted by π2 with respect to the real part. Here, sref ’s two parts are presumed sinusoid.
Euler’s formula (5.2) is used once more for the second equality.

sref (t) = 2 cos (2πfref t) − i2 sin (2πfref t) = 2e−i(2πfref t) (5.5)

Mixing the input signal (5.3) with the reference signal (5.5) yields:
 
smix (t) = sin (t) · sref (t) = Ain ei(2π(fin −f ref )t+φin ) + e−i(2π(fin +f ref )t+φin ) (5.6)

To measure the magnitude of the input signal, the frequency of the configurable reference signal, fref , is closely
matched to the input’s frequency fin . The first step of lock‑in amplification therefore results in two complex
sinusoids with very different oscillation frequencies, called heterodynes.
• The higher frequency is given by the sum of the signal and the reference frequency and thus commonly
referred to as the 2f ‑component.
• The lower, so‑called baseband frequency, is given by the difference between the two.
Only the baseband is of interest in lock‑in amplification.

5.1. Lock­In Amplification 53


heliCamTM C4 ­ User Manual

5.1.2.1.3 Averaging in Time

The mixed signal smix (t) is then averaged over a shifting time interval to produce the lock‑in output. Intu‑
itively, computing this moving average on a sine wave that is much longer than the sine’s period, reduces the
oscillation amplitude. Conversely, if this “mean” is taken over a very short time compared to the sine’s period,
its amplitude is largely unaffected. Oscillations with higher frequencies therefore tend to be selectively more
attenuated by the averaging.
The moving average is a linear filtering operation and can be mathematically expressed as a convolution. The
impulse response of the averaging filter is denoted as havg (t).
Z +∞
sout (t) = (havg ∗ smix )(t) = havg (τ )smix (t − τ )dτ
−∞
 Z +∞
= Ain ei(2π(fin −f ref )t+φin ) havg (τ ) e−i2π(fin −f ref )τ dτ (5.7)
−∞
Z +∞ 
+ e−i(2π(fin +f ref )t+φin ) havg (τ ) ei2π(fin +f ref )τ dτ
−∞

You may recognize the integral terms as Fourier transforms of the filter’s impulse response, i.e., its frequency
response function, Havg .
Z +∞
Havg (f ) = havg (τ ) e−i2πf τ dτ = F{ havg (τ )}(f ) (5.8)
−∞

Equation (5.7) can then be written more succinctly. The change is in notation only.
 
sout (t) = Ain ei(2π(fin −f ref )t+φin ) Havg (fin − f ref ) + e−i(2π(fin +f ref )t+φin ) Havg (−fin − f ref ) (5.9)

Expression (5.9) shows that the amplitudes of the output’s two oscillating components are given by the filter’s
response at their respective frequencies. Note that the filter serves a dual purpose. On the one hand, it se‑
lects the frequency band around the reference frequency in which input frequencies are detected via the first
term of the sum. On the other hand, it eliminates the second, fast undulating 2f ‑component, product of the
multiplication with the reference signal.
In practice, the heliCamTM C4 uses a rectangular filter function with adjustable size. In this introduction to lock‑
in amplification, however, we will use an ideal low‑pass filter instead. The intuition gained in this simplified
case remains largely valid in the detailed mathematical description of a more realistic signal processing model,
which can be found in the following section.
The ideal “brick‑wall” filter lets frequency components below a cut off, fc , pass unaffected and removes all
others completely. As is discussed in most textbooks on signals and systems, the impulse response, havg (t),
of such a filter is the sinc function dilatated by the “averaging duration”, T . The cutoff frequency is inversely
1
related to this dilation factor, fc = 2T .
   
1 t F f
havg (t) = sinc → Havg (f ) = rect (5.10)
T T 2f c

sin(πx) 1 if |x| < 21
, where sinc(x) ≡ and rect(x) ≡
πx 0 otherwise
Plugging the frequency response of the ideal low‑pass filter, Havg , into equation (5.9) yields an expression for
the amplification output, sout (t).
    
i(2π(fin −f ref )t+φin ) fin − f ref −i(2π(fin +f ref )t+φin ) fin + f ref
sout (t) = Ain e rect + e rect
2f c 2fc
(5.11)

The interplay between the frequency of the input, fin , the reference frequency, fref , and the filter’s cut‑off
frequency parameter, fc , determines the lock‑in output.

54 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

The simplest case arises if the reference frequency, fref , matches the input frequency, fin , exactly and the filter
removes the fast‑rotating 2f ‑component.

sout (t) = Ain eiφin if fin = f ref and fc < f in + f ref (5.12)

This is the principal output of a dual‑phase lock‑in amplifier (see Fig. 5.2 a). The result is a complex constant
with amplitude and phase given by the amplitude and the phase shift of the input sinusoid before lock‑in am‑
plification, respectively.
In the general case fin ̸= f ref , three outcomes (see Fig. 5.2 b) can be distinguished based on the filter’s cut off
frequency, fc .
I. When averaging over a long interval compared to the period of the signal’s two frequency components,
both slow‑ and fast‑rotating signal terms are stripped away.
sout (t) = 0 if fc < fin − f ref (5.13)
In this incident, the sinusoid input signal is outside the frequency band around fref , which gets detected. If fc
tends to zero, all but oscillations at the reference frequency are rejected.
II. As the “averaging duration” shortens, fc increases and at first, the slower oscillation alone is extracted
from the mixed signal.

sout (t) = Ain ei(2π(fin −f ref )t+φin ) if fin − f ref < fc < f in + f ref (5.14)
Note that the amplitude of the output oscillation is the same as that of the input sinusoid, sin , which can there‑
fore be retrieved. Its frequency, however, is given by the difference between the input frequency and the ref‑
erence frequency, which is in general much lower than that of the input. This outcome is sometimes called a
“beat” in analogy to the well‑known phenomenon in acoustics occurring when two waves with slightly differ‑
ent frequencies are superimposed. Expression (5.12) is a particular instance of the more general case II.
III. If averaging occurs over too short a period, the fast‑rotating term introduced by the mixing is not removed
either. The output is the same as the signal before filtering.
sout (t) = smix (t) if fin + fref < fc (5.15)
To sum up, the case distinction implies for practical lock‑in applications in general that:
• The reference frequency, fref , should be chosen to match the input frequency, fin .
• The filter time constant T , or equivalently the bandwidth, should be picked so that case II is attained.
Adjusting the filter size and hence fc , may change the result of lock‑in amplification more gradually if the input
does not consist of a single sinusoid. Yet the result with a sine wave input can easily be extended to more
complex input signals; as we will see next, they can be decomposed into their frequency components by Fourier
analysis (see Fig. 5.2 c).

5.1. Lock­In Amplification 55


heliCamTM C4 ­ User Manual

Fig. 5.2: Dual‑Phase Lock‑In Amplification with Monofrequent Inputs


The idealized signal processing pipeline of lock‑in detection is shown sequentially from left to right. The real input signal,
sin , is multiplicatively mixed with a complex sinusoid reference signal, sref , which oscillates at the reference frequency
fref . Subsequently, the mixed signal, smix , is averaged with an ideal low‑pass filter with impulse response href . sout is
complex; its real and the imaginary part, are respectively called the “in‑phase”, I, and “quadrature”, Q, component.
a. Time domain (TD) view of lock‑in detection with a sinusoid input in the special case where its frequency fin is equal
to fref and the filter size is adequate. The output is a complex constant whose amplitude and phase are given by
the amplitude and phase shift of sin . Note that I(t) = Re [sout (t)] and Q(t) = Im [sout (t)].
b. The general case of a sinusoid input when fin ̸= fref with cases distinguished by the adjustable filter size in TD.
I fin is outside the frequency band around fres that passes the filter. This input is hence rejected and sout is zero.
II With a shorter “averaging period”, the input gets detected. The modulation frequency of sinusoid sout is fin −fref .
III If the averaging duration is too short, the undesirable high‑frequency component in smix is still present in sout .
c. Fourier domain (FD) view of lock‑in detection with a multifrequential, amplitude modulated input. The reference
frequency, fref , is equal to that of the sinusoid carrier signal, fcar . Frequency components treated individually in a.
and b. are highlighted in blue and red, respectively. The same filters I‑III as in b. are considered. Only with filter II is
the modulation signal retrieved faithfully.
56 Chapter 5. D) Advanced Concepts and Control
heliCamTM C4 ­ User Manual

Conversion to Polar Coordinates


By default, the lock‑in output is in cartesian coordinates. Its real and imaginary parts are named “in‑phase”
I (t) and the “quadrature” Q (t) components after their respective phase relationship with the local oscillator,
that is driving the reference signal.

I (t) = Re [sout (t)]


(5.16)
Q (t) = Im [sout (t)]

A conversion to polar coordinates yields amplitude and phase terms, which are often more natural to interpret.
p
A (t) = I 2 (t) + Q2 (t)
(5.17)
φ (t) = arctan2 (Q (t) , I (t))

5.1.2.2 Frequency Domain

Lock‑in amplification is linear, meaning the system’s response to a signal is equal to the sum of the responses
to its constituent parts. Signals can generally be expressed as a continuous sum of complex sinusoids with
different frequencies and phases. The Fourier transform determines how strongly each of these components
are present in a signal – the frequency domain representation of a signal.
Z +∞
x(t) e−i2πf t dt = F {x(t)} (f ) = X(f ) (5.18)
−∞

By Fourier transforming input, intermediary and processing signals, the chain of operations in lock‑in detection
introduced above can be analyzed in the frequency domain. Because its action is frequency‑specific by design,
lock‑in amplification is inherently well‑describable in the frequency domain.

Fourier Transform Summary


Knowledge of a set of its notable properties facilitates the handling of the Fourier transform. It is beyond the
scope of this text to justify them. Fourier properties and relations, which are used in the following are listed
hereafter in table form.

5.1. Lock­In Amplification 57


heliCamTM C4 ­ User Manual

Table 5.1: Properties of the Fourier Transform


Operation

x(t) X(f )

Linear
α1 x1 (t) + α2 x2 (t) α1 X1 (f ) + α2 X2 (f ) (5.19)
Combination

Convolution
x1 (t) ∗ x2 (t) X1 (f ) · X2 (f ) (5.20)

Multiplication
x1 (t) · x2 (t) X1 (f ) ∗ X2 (f ) (5.21)

Translation
x (t − t0 ) e−i2πf t0 X(f ) (5.22)

Modulation
ei2πf0 t x(t) X (f − f0 ) (5.23)

58 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

Table 5.2: Fourier Transforms of Selected Signals

Signals with Finite Energy Tempered Distributions

x(t) X(f ) x(t) X(f )

 
t T · sinc (T · f ) 1 δ(f )
rect
T (5.24) (5.29)

 
t T · rect(T · f ) δ(t) 1
sinc
T (5.25) (5.30)

 
t T · sinc2 (T · f ) ei2πf0 t δ (f − f0 )
tri
T (5.26) (5.31)

 
2 t T · tri(T · f ) cos (2πf0 t) δ (f − f0 ) + δ (f + f0 )
sinc
T (5.27) 2 (5.32)

1 t2
e−2π
2
σ2 f 2 δ (f − f0 ) − δ (f + f0 )
√ e− 2σ2 sin (2πf0 t)
σ 2π (5.28) 2i (5.33)

X  
δ(t − nT ) 1X k
δ f−
n∈Z T T (5.34)
k∈Z

In this table, δ(·) denotes the delta Dirac distribution. This generalized function, also known as unit impulse,
is zero everywhere except at t = 0. It is furthermore constrained to satisfy the following integral relation:
Z +∞
δ(t) dt = 1 (5.35)
−∞

Shifting a function in time by t0 can be expressed by means of a convolution with a t0 ‑shifted version of δ(·).

x (t − t0 ) = x(t) ∗ δ (t − t0 ) (5.36)

5.1. Lock­In Amplification 59


heliCamTM C4 ­ User Manual

5.1.2.2.1 Noisy, Amplitude Modulated Input

An amplitude modulated signal, sam , consists of a sinusoid carrier wave, scar , whose amplitude is varied or
modulated slowly compared to its oscillation frequency (see Fig. 5.3 a). These amplitude variations bear the
information contained in the signal. The time evolution of the amplitude is called the modulation signal, smod .

sam (t) = A(t) · cos (2πf car t + φcar ) = smod (t) · scar (t) (5.37)

Demodulation of such signals, with variable amplitude and thus more than a single frequency component,
is a common application of lock‑in amplification. It can be achieved by matching the reference frequency to
the carrier frequency. Realistic inputs moreover contain background noise. So, let us examine an arbitrary
amplitude modulated signal, sam , with additive noise, sσ , as input, sin .

sin (t) = sam (t) + sσ (t) (5.38)

We would like to perform our analysis in the Frequency domain and must therefore find the Fourier transform
of sin . It is given by the sum of the Fourier transforms of sin ’s addends since the Fourier transform is a linear
operation (5.19).

Sin (f ) = Sam (f ) + Sσ (f ) (5.39)

Sam can be stated in terms of Smod , the carrier frequency, fcar , and phase shift, φcar . Expressions (5.19), (5.21),
(5.31), and (5.36) from summary on the Fourier transform are used in conjunction with the complex form of the
cosine (5.3) to derive Sam in this form from its time domain expression (5.37).

Sam (f ) = Smod (f ) ∗ Scar (f )


= Smod (f ) ∗ F {cos (2πf car t + φcar )} (f )
 i(2πf t+φcar ) 
e car + e−i(2πf car t+φcar )
= Smod (f ) ∗ F (f )
2
 
eiφcar F ei2πf car t (f ) + e−iφcar F e−i2πf car t (f ) (5.40)
= Smod (f ) ∗
2
eiφcar δ (f − fcar ) + e−iφcar δ (f + fcar )
= Smod (f ) ∗
2
eiφcar S mod (f − fcar ) + e−iφcar S mod (f + fcar )
=
2
As the last term reveals, the frequency domain description of amplitude modulation is that it produces a signal
with power concentrated in two bands around plus and minus the carrier frequency.
Plugging (5.40) into (5.39) yields the frequency domain expression of the noisy, amplitude‑modulated input to
the lock‑in amplifier.

eiφcar Smod (f − fcar ) + e−iφcar S mod (f + fcar )


Sin (f ) = + Sσ (f ) (5.41)
2

60 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

Fig. 5.3: Amplitude Modulation and Ideal Dual‑Phase Demodulation with Noise
In both a. and b., time‑domain (TD) signals s· (t) are depicted alongside their frequency domain (FD) representations
S· (f ).
a. Synthesis of an Amplitude Modulated Signal with Noise in TD (left) and FD (right).
The amplitude of a sinusoid carrier signal scar is varied in time according to a modulation signal smod . The result
is the amplitude modulated signal, sam . The FD equivalent is a convolution of the modulation spectrum, Smod ,
with that of the carrier wave, Scar . The ensuing signal in FD is a duplicated and generally phase‑shifted version of
Smod with half the original amplitude, whose two component parts are shifted to +/‑ the carrier frequency, fcar .
Broadband noise, sσ , is added to the signal sam yielding the input signal sin .
b. Dual‑Phase Demodulation of Noisy, Amplitude Modulated Signal in TD (left) and FD (right).
The noisy, amplitude modulated input signal, sin , from a. is demodulated with an ideal dual‑phase lock‑in amplifier.
First, the input, sin , is multiplied with a complex sinusoid reference signal whose frequency is equal to fcar . With
the effect in the frequency domain in mind, this step is called down‑mixing. The spectrum of the product of mixing,
Smix , is shifted by fref with respect to that of the input Sin . In this fashion, one of Sin ’s two spectral components
corresponding to Smod comes to lie in the baseband. Smix is then low‑pass filtered so that only the baseband passes.
The ideal “brick‑wall” filter, Havg , lets frequency components below the cut off pass freely and completely blocks all
others. As the noise is much more broadband than the signal, much of it gets removed along with the high‑frequency
copy of Sin . The modulation signal with little remaining noise is given by the amplitude of the complex output, sout .

5.1. Lock­In Amplification 61


heliCamTM C4 ­ User Manual

5.1.2.2.2 Down­Mixing

Fourier relation (5.31) spells out that the Fourier transform of sref (t), given by (5.5), is a frequency‑shifted Delta
Dirac distribution scaled by a factor two.

Sref (f ) = 2δ (f + fref ) (5.42)

The first step in demodulation (see Fig. 5.3 b) ‑ multiplication of the input with the reference signal ‑ is a convo‑
lution of the two in the frequency domain (5.21). It can be computed using (5.36). This step introduces negative
shift of the frequency spectrum by fref hence the name down‑mixing.

Smix (f ) = Sin (f ) ∗ Sref (f ) = Sin (f ) ∗ 2δ (f + fref ) = 2Sin (f + fref ) (5.43)

With the amplitude modulated input under consideration, Smix is given by the following expression.

Smix (f ) = eiφcar S mod f − fcar +f ref + e−iφcar S mod (f + fcar + fref ) + 2 Sσ (f + fref ) (5.44)

If the reference frequency approximately matches the carrier frequency, one part of the duplicated frequency
spectrum comes to lie in the baseband. The other portion is shifted to a highly negative frequency band. If in
addition fref = fcar , the baseband component of the signal coincides with the spectrum of the modulation
signal up to a phase shift. (The noise is shifted in frequency too.)

5.1.2.2.3 Low­Pass Filtering

At this point, the purpose of the filtering step in lock‑in amplification is straightforward. The baseband com‑
ponent of the signal, the first term in equation (5.44), is the only one of interest. To retrieve the modulation
signal, its high‑frequency copy and as much noise as possible ought to be removed by a low‑pass filter.
In the frequency domain, applying a low‑pass filter amounts to multiplying with its frequency response, Havg .
Lock‑in amplification is thus captured by a simple equation, which expresses a frequency shift of the input
followed multiplicative, frequency‑dependent scaling of spectral components.

Sout (f ) = Smix (f )×H avg (f ) = 2Sin (f + fref ) ×H avg (f ) (5.45)

Inserting expressions for the frequency response of the ideal low‑pass filter (5.10) and Smix (5.44), yields the
output when used in demodulation of a noisy signal.
 
 f
Sout (f ) = e iφcar
S mod f − fcar +f ref · rect
2f
 c
f
+ e−iφcar S mod (f + fcar + fref ) · rect (5.46)
2f c
 
f
+ 2·S σ (f + fref ) · rect
2f c

Ignoring the noise term for now and assuming a finite modulation bandwidth, three cases depending on filter
cut‑off may be distinguished, analogous to those discussed in time‑domain (see Fig. 5.2 c):
I. If the filter bandwidth is too narrow compared to the frequency spectrum of modulation signal, a non‑
negligible part of its power can be chucked away by the filter. A distorted version of the modulation signal
is retrieved.
II. With an appropriate cut‑off frequency of the ideal filter, the baseband term alone is extracted. This is the
usual, desired behavior in dual‑phase demodulation.

Sout (f ) = eiφcar S mod f − fcar +f ref (5.47)

Using the modulation property (5.23), the time‑domain output can be deduced from (5.47).

sout (t) = ei(2π(fcar −f ref )t+φcar ) smod (t) (5.48)

62 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

The oscillatory component in (5.48) is generally of low frequency or entirely constant, as f ref is usually
chosen to match fcar . Converting the output to polar coordinates allows to retrieve the original modu‑
lation signal in the lock‑in amplitude.

Aout (t) = smod (t)


 (5.49)
φout (t) = 2π fcar −f ref t + φcar

III. Using a filter that is too broad, high frequency components from the 2f spectral component may enter
the output.
The frequency domain picture also illustrates nicely how noise is suppressed by the filter (see Fig. 5.3 b). Noise
is usually more broadband than the modulation signal. Wherever there is no overlap with extracted modulation
spectrum, it can be removed without penalty. The noise spectrum and its overlap with the signal give therefore
a supplementary criterion for tuning the filter bandwidth.

5.2 Smart Pixel Image Sensor

The lock‑in principle presented above is implemented directly in the heliCamTM C4’s specially designed camera
sensor, the proprietary heliSensTM S4. Its pixel sensor units register the light intensity in a precisely clocked,
periodic fashion and promptly process acquired signals. In the following, several sensor‑related concepts are
introduced, which may help with the operation of the lock‑in camera.

5.2.1 Temporal Sequence

We have seen that lock‑in detection uses prior knowledge about the time evolution of a signal’s carrier to ex‑
tract only the slow‑varying, information‑bearing part. Thus, the exact control of the temporal sequence of
processing steps is predictably crucial for the realization of this principle in a physical system.

5.2.1.1 Trigger Signals

The heliSensTM S4 relies on trigger signals to schedule its operation (Fig. 5.4 a). These control signals are tightly
linked to configuration options. Understanding of how they structure the lock‑in process helps exploit the
full performance of the heliCamTM C4. Trigger signals can be generated camera‑internally and then operate
unbeknownst to the user. However, many experiments require pinpoint temporal synchronization to other
elements of the set up. For these cases, the heliCamTM C4 offers the possibility to provide external trigger
signals.

5.2.1.2 Period

The heliCamTM C4 initiates a measurement upon receiving a recording trigger. Thereafter, the pace is dictated
by the reference trigger signal, a pulse wave which by default determines ‑ roughly speaking ‑ the start of a new
period of the reference signal. In the heliSensTM S4, this period also imposes constraints on the filtering and
sampling during analogue to digital conversion.

5.2. Smart Pixel Image Sensor 63


heliCamTM C4 ­ User Manual

5.2.1.3 Frame

The optical input generally depends on the location of the pixel on the image sensor that records it. Each
pixel can be interpreted to perform a multiplication of the local input, sin (t, x, y), with a spatially uniform,
effective reference signal, sref (t), followed by an integration over a selectable number of full periods, NP .
The result of this averaging is a frame (with complex pixel values due to the dual‑phase nature of the lock‑in
implementation). Multiple frames are acquired in instant succession.
In short, a single pixel with discrete indices x and y, according to its spatial location in pixel coordinates, takes
the following value in the mth frame.
Z tm + T2m
sout, m [x, y] = sin (t, x, y)sref (t)dt (5.50)
tm − T2m

Here, tm is the timestamp at the center of the interval feeding into the frame and Tm is its duration. Tm is given
by the sum of the periods making up frame m.
Lock‑in amplification in the heliSensTM S4 can be brought in line with the view presented in the previous sec‑
tion, by expressing the output as a sequence of a mixing, a filtering, and a sampling step. To this end, the
integral over a finite interval in (5.50) is restated as a convolution with a rectangular function evaluated a single
point in time.
  
sout, m [x, y] = havg ∗ sin (x, y) × sref (tm ) (5.51)

, where havg is the impulse response of a central moving average filter with window length Tm .
 
t
havg (t) = rect (5.52)
Tm

With an irregular reference trigger, the starts of a period are uneven. But normally, periods are of uniform
duration so that the filter width is also a constant, T = Tm ∀ m . In this case, which is presumed from here
onwards, frame acquisition is regularly spaced in time with sampling period T .

5.2.1.4 Quarter Period

Again, the heliSensTM S4 performs dual‑phase demodulation. As in the previous introduction to lock‑in amplifi‑
cation, the notation of this twofold process is condensed using a single, yet complex reference signal, sref (see
Fig. 5.4 b). Its imaginary part, accounting for the second demodulation, is also shifted by a quarter period with
respect to the real part. Both these signal components are well‑approximated by a pulse wave with two short,
equally spaced pulses per period ‑ every other pulse having a negative sign. sref ‘s fundamental frequency is
the reference frequency fref (cf. Fig. 5.5).
Since by default, the external reference trigger signal is deemed to oscillate between two values at the refer‑
ence frequency, it ordinarily signals the onset of a period. Yet to realize the effective reference signal, sref , the
heliSensTM S4 needs an indication of the start of each quarter period. This timing information is extracted from
the external reference trigger by a programmable processing unit for frequency scaling to a power of two. With
baseline settings it performs frequency multiplication by four behind the scenes.

5.2.2 Processing in Pixel

Understanding how the camera sensor, heliSensTM S4, uses this derived quarter‑period trigger to do lock‑in
amplification with a pulse wave as reference, demands an additional information layer.
Like other image sensors, the heliSensTM S4 is an array of light‑sensitive semiconductor devices, called pho‑
todiodes, which convert the incidence of photons to an electric current. Photodiodes integrate the intensity
of the light they receive in a time interval. In the heliSensTM S4, they do so over the duration of single quarter
periods (see Fig. 5.4 c). The fraction of the full quarter period during which the photodiode is sensitive to light,
ps , is configurable up to a hardware overhead of < 2µs.

64 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

The signal thus retrieved in each quarter period constitutes the basic building block from which the lock‑in
output is synthesized by simple addition and subtraction.
Z
sm,n,qp [x, y] = sin (t, x, y)dt (5.53)
ps ×tqpm,n

, where tqp is the duration of a quarter period, identified unambiguously by indices m, n and qp.
• m ∈ {1, ..., NF } specifies in which of NF frames acquired the quarter period is situated.
• n ∈ {1, ..., NP } indicates in which of the NP periods of frame m the quarter period is situated.
• qp ∈ {I, II, II, IV } specifies which quarter period in period n it is.
From this element, a complex lock‑in signal per period is computed.

sm,n [x, y] = sm,n,I [x, y] + i · sm,n,II [x, y] − sm,n,III [x, y] − i · sm,n,IV [x, y] (5.54)

In each pixel, the contributions of NP individual periods are summed up into a frame.

X
NP
sout, m [x, y] = sm,n [x, y] (5.55)
n=1

These sums and differences of the basic element sm,n,qp [x, y] can be executed with low power dissipation and
small footprint within the architecture of the individual smart pixel.

5.2. Smart Pixel Image Sensor 65


heliCamTM C4 ­ User Manual

Fig. 5.4: Operational Sequence in the heliSensTM S4


a. The recording trigger prompts the start of a recording. Subsequently, the beginning of each period of the effective
reference signal is prompted by the reference trigger. A frame holds a complex value for each pixel. It is the result
of integrating the input mixed with the complex, effective reference signal, sref , over an adaptable number of full
periods. T is both the window width of the equivalent central moving average filter, havg , and the sampling period.
b. The heliSensTM S4 needs a trigger impulse every quarter period to realize the effective signal as it is a modified com‑
plex pulse wave with rectangular impulses at that same rate. By default, the input reference trigger is meant to
oscillate with the reference frequency, which is normally chosen to match the input’s carrier frequency. The desired
quarter period trigger is deduced from the reference trigger via frequency scaling.
c. In every quarter period, the image sensor’s photodiodes integrate the intensity of the incident light. Except for an
overhead, the light‑sensitive proportion of the full period is configurable. The acquired signal in a single pixel forms
the basic unit from which the lock‑in output at that site is assembled via simple summation and subtraction. Al‑
though intermediate steps are executed in a different order, the output is strictly the same as when described in
terms of multiplicative mixing with sref and convolutive filtering with havg .

66 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

5.2.3 Effective Signal Processing

The following paragraph offers an implementation‑oriented model of the signal processing in a single pixel
of the heliCamTM C4, which is more accurate than the previous analysis of ideal lock‑in amplification. For ad‑
vanced experiments, the implications of this specific implementation may become significant for an informed
choice of camera settings and accurate interpretation of measurement results. The preceding explanation of
the image sensor’s operation principle implies two consequential deviations from the ideal; both the reference
signal, sref , and the filter’s impulse response, havg , differ from their ideal counterparts.

5.2.3.1 Mixing with a Pulse Wave

As argued above, a pulse wave is a good approximation of the effective reference signal of the heliCamTM C4.
This pulsed approximation of sref can be represented analytically in a plethora of ways. The option chosen
here is conceptually close to the hardware implementation. sref is viewed as the convolution of the rectangular
sensor response in a single quarter period and a modified Dirac comb (see Fig. 5.5 a).
! !
t X  n
sref (t) = 2 · rect ps ∗ e−i2πfref t · δ t− (5.56)
4fref 4fref
n∈Z

−1
The sensor is uniformly responsive in a fraction ps of the full quarter period (4 · fref ) , which determines the
width of the first, “boxcar”‑like function. The spacing between spikes of the modified Dirac comb is a quarter
period, indicating the timing of individual acquisitions. Spikes are alternately real and imaginary. Their sign
flips after each consecutive pair to account for subtraction and summation quarter‑periodic measurement re‑
sults.
An advantage of this complicated representation is that its frequency domain representation can be broken
down to basic relations (5.20), (5.23), (5.24) and (5.34), found in the summary on the Fourier Transform.
( !) ( )
t X  n
−i2πfref t
Sref (f ) = F 2 · rect ps (f ) × F e × δ t− (f )
4fref 4fref
n∈Z
X    (5.57)
1
=2 ps sinc ps k − × δ (f + fref − 4kfref )
4
k∈Z

In contrast to the ideal case, the reference signal comprises also non‑zero components at frequencies other
than (−)1 × f ref , namely at (+)3 × f ref , (−)5 × f ref , (−)7 × f ref and so forth. They are called odd har‑
monics of the fundamental frequency fref . The sinc term determines the magnitude with which these fre‑
quencies appear in the reference signal. Although higher frequencies components tend to be attenuated more,
not all higher odd harmonics are insignificant compared to the first harmonic. The potential to selectively re‑
duce their prominence is limited by the fact that ps , being the fraction of the quarter period in which photodi‑
odes are sensitive, cannot exceed 1.
Mixing is described analogous to (5.6) in time‑ and to (5.43) in frequency domain (see Fig. 5.5 b).
X  
4fref t − n
e−i2π 4 rect
n
smix (t) = sin (t) × sref (t) = sin (t) × 2 (5.58)
ps
n∈Z



F
y
X   
1
Smix (f ) = Sin (f ) ∗ Sref (f ) = 2 ps sinc ps k − × Sin (f + fref − 4kfref )
4
k∈Z

5.2. Smart Pixel Image Sensor 67


heliCamTM C4 ­ User Manual

Fig. 5.5: Effective Reference Signal and Dual‑Phase Demodulation


In both a. and b., time‑domain (TD) signals s· (t) are depicted left alongside their frequency domain (FD) representations
S· (f ) on the right.
a. Synthesis of the Effective Reference Signal in TD (left) and FD (right) from elementary components.
In TD, a Dirac comb indicating quarter periodic sampling is multiplied with the ideal complex reference oscillation to
indicate how individual samples are weighted when summed together. The result is convolved with the rectangular
sensor sensitivity response in a single quarter period to yield the effective reference signal, sref of the image sensor
heliSensTM S4. sref differs from the ideal case in that it contains non‑zero frequency components at odd harmonics
of the fundamental reference frequency, fref . Moreover, the salience of all these components, inclusively that at
reference frequency, is given by the sinc of their frequency.
b. Demodulation of an amplitude modulated input with a complex pulse wave as reference and a rectangular filter.
The demodulation process is analogous to the ideal case but for a different reference signal and filter. The filter width
is also the sampling period. This final sampling step is not shown. In contrast to the ideal case, mixing not only shifts
the input spectrum by the reference frequency. Each odd harmonic component in the reference signal produces a
frequency‑shifted copy, according to its own magnitude. Input frequency components around each odd multiple of
the reference frequency end up in the baseband. The lock‑in amplifiers that use a pulse wave such as the heliCamTM
C4 are therefore sensitive to odd harmonics of the reference frequency.

68 Chapter 5. D) Advanced Concepts and Control


heliCamTM C4 ­ User Manual

5.2.3.2 Rectangular Filter and Sampling

The frequency response of the rectangular averaging filter (5.52) is a sinc according to (5.24).

Havg (f ) = T · sinc(T · f ) (5.59)

The (continuous) output signal is obtained by convolution of the mixed signal smix with the filter’s impulse
response havg (see Fig. 5.5 b) like in the ideal case (5.7). In the frequency domain, again, this corresponds to a
multiplication with the filter’s frequency response Havg .

sout (t) = havg (t) ∗ smix (t)


  X  !
t −i2π n 4fref t − n (5.60)
= 2 · rect ∗ sin (t) × e 4 rect
T ps
n∈Z



F
y

Sout (f ) = Havg (f ) × Smix (f )


X   
1
= 2 · T · sinc(T · f ) × ps sinc ps k − · Sin (f + fref − 4kfref )
4
k∈Z

The low‑pass filter still extracts the baseband after the input is subjected to down‑mixing. Yet unlike an ideal fil‑
ter, not all the baseband components are treated with precise uniformity. They rather pass with the sinc of the
frequency. Moreover, the filter cannot selectively remove generally undesirable parts of the signal ‑ associated
with higher odd harmonics ‑ from the baseband.
The output of the heliCamTM C4 is not actually continuous but expression (5.60) is sampled with time constant
T , the filter width. In the frequency domain, sampling is a periodization of the spectrum and aliasing occurs if
the modulation signal’s highest frequency is above the Nyquist frequency.

5.2.4 Background Suppression

Lock‑in amplification, as presented above, is in principle insensitive to large DC offsets on input signals (see
Fig. 5.6 a). By measuring differences in input intensity at different moments during the period, a constant offset
theoretically cancels out.
In practice, the dynamic range of image sensors is limited (see Fig. 5.6 b). If photodiodes register too many
photon arrivals in one go, they saturate. As uniformly saturated measurements propagate through the in‑pixel
processing, they can erroneously result in an absence of AC signal.
To circumvent this issue, the heliCamTM C4 offers a background suppression mechanism (see Fig. 5.6 c). If
background suppression is enabled, the first period in each frame is reserved to register the input intensity
(at the end of the period). This value is then subtracted as background from the input during the rest of the
frame, when lock‑in amplification is performed ‑ thus effectively preventing saturation due to large constant
background signals. Suppressing the background is only recommended if the DC offset is much larger than the
AC amplitude.
This background suppression is referred to as AC coupling because its implementation is analogous to the
namesake recording modality of a conventional lock‑in amplifier or an oscilloscope. Consequentially, the op‑
eration mode without background suppression is called DC coupling.

5.2. Smart Pixel Image Sensor 69


70

heliCamTM C4 ­ User Manual


Chapter 5. D) Advanced Concepts and Control

Fig. 5.6: Background Suppression / AC‑Coupling


a) Demodulation of square wave without saturation limit. b) If the input’s DC background is large, photodiodes saturate in each quarter periodic measurement. Integrating them into a
frame erroneously produces no AC‑signal. c) With enabled AC coupling, the background is measured in the frame’s first period and subtracted from subsequent frames to avoid saturation.
heliCamTM C4 ­ User Manual

5.2.5 Reference Signal Synthesis

Once the functionality of the sensor is understood, the parametrization of the effective reference signal through
lock‑in camera features can be explained clearly (cf. Fig. 6.1). Such parameters and important selection options
are printed in bold below.
As described earlier, the basic building block of the sensor schedule is the quarter period. The pace of the
reference signal, to which the input is compared, is determined by a trigger indicating the start of each new
quarter period. How this trigger is obtained, depends on the Reference Source Type:
• Internal: The heliCamTM ’s internal clock signals the onset of each quarter period. Another quarter pe‑
riod is automatically initiated when the sensor operation in the preceding one is finished. The fixed time
it takes the sensor to run a quarter periodic measurement sequence, t′qp , is derived from the configurable
Reference Frequency, f′ ref .
1
t′qp = (internal ref erence) (5.61)
(4 · f′ ref )

In this case, the Reference Frequency feature value, f′ ref , corresponds directly to the frequency of the
effective reference signal, fref . Equivalently, t′qp coincides with the effective quarter period duration, tqp .
• External: A reference input (rect wave, 0‑5 V) from an external source, potentially processed camera‑
internally, triggers the onset of a new quarter period in the responsive period after the completion of the
fixed sensor operation sequence in its predecessor. This trigger – and not the set Reference Frequency
– dictates sref ’s effective frequency in the external mode. Additional parameters influence the effective
reference signal.
– The Reference Frequency Scaler multiplies or divides the frequency of the trigger input by a select
factor, M ‑ in addition to a multiplication by four since the sensor needs indication of the quarter
period rather than the period onset. With all factors M other than “DivideBy4”, establishing the
reference frequency thus involves averaging incoming discrete pulses (evaluated once immediately
prior to the onset of the recording). Alone with the setting M = “DivideBy4” is the incoming signal
directly routed to the sensor, where each pulse triggers a new quarter period.
– The Expected Frequency Deviation, d, gives a security margin that is necessary should the ref‑
erence trigger’s frequency be unsteady. If a trigger signal arrives too early when the sensor is still
busy, the impulse is missed. This introduces an error, which is prevented by accounting for the ex‑
pected frequency deviation in the computation of the fixed duration of sensor activity per quarter
period t′qp . The minimal effective quarter period duration, tqp is hence given by t′qp .

′ 1
tmin
qp = tqp = (external ref erence) (5.62)
(4 · f′ ref · d)

Increased trigger timing error tolerance comes at the cost of a reduced signal amplitude. Ex‑
pected Frequency Deviation is ignored in the internal reference mode.
The camera feature Sensitivity determines the fraction of t′qp during which the sensor is light‑sensitive and
corresponds to ps from the previous paragraph.

ts = ps × t′qp (5.63)

, were ts denotes the photoreceptive portion of the quarter period. Viewed like this, the Sensitivity controls
the duty cycle of the effective reference pulse wave.

5.2. Smart Pixel Image Sensor 71


heliCamTM C4 ­ User Manual

Note: The heliSensTM S4 has a clock frequency of 80 MHz ⇒ clock cycle, tc = 12.5 ns. Thus, actually feasible
Reference Frequency values, f′ ref , are inverse multiples of tc × 4 ‑ to account for all quarter periods.

1  f′ ref
f′ ref = , n ∈ 146, ..., 216 ⇒ ∆f′ ref = ′ ′ 2
−1 − f ref ≈ 4 · tc · f ref (5.64)
n · 4 · tc ′
4 · tc · f ref
In Internal reference mode, the effective reference frequency, fref , is restricted to these values. With an Ex‑
ternal reference, other frequencies may be fed in, but individual trigger pulses are registered only with a time
resolution of ±tc . This can produce a period‑to‑period jitter of the effective fref .

72 Chapter 5. D) Advanced Concepts and Control


CHAPTER

SIX

GRAPHICAL SUMMARY

73
74

heliCamTM C4 ­ User Manual


Chapter 6. Graphical Summary

Fig. 6.1: Schematic Summary of Principal Operation Modes and User‑Configurable Features
heliCamTM C4 ­ User Manual

The heliCamTM C4 can be employed in different operation modes. Fig. 6.1 summarizes the most important
switching points between them. Additionally, it shows other critical configurable lock‑in camera features.
• For testing purposes, the heliCamTM C4 can be fed with a well‑controlled optical input signal emitted
by the Heliotis LED module. To that end, the signal generator unit in the heliDriverTM D3 can create a
sinusoid current output, which is redirected to the LED via the heliCamTM C4 and drives its illumination.
Three main signal generator modulation modes are available.
– The signal generator modulation can be operated in the always On mode, producing AC and DC
output continuously.
– The amplitude modulation can be set to Off, so that the signal generator produces only DC offset.
This is useful for Fixed Pattern Noise (FPN) correction.
– Alternatively, there is the Pulsed mode, in which oscillating bursts, brought about by the external
Signal Generator Trigger, are interrupted by period with constant light intensity.
Certain features, such as the signal generator’s Pulse Duration or the Signal Generator Trigger Source
determining the trigger signal’s source, are specific to the last mode. Others, such as the Frequency,
(peak‑to‑peak) Amplitude and the Offset of the input sinusoid are common in all configurations. Both
Amplitude and Offset are indicated in percent of the signal generator’s full range.
• A new measurement can be initiated by an internal trigger from software or fed in via a pin on the
heliDriverTM D3’s communication interface.
• The heliCamTM C4 can be used with Internal or External reference, which determines if the clock signal
driving the demodulation, is produced internally or externally. The switch between these two operating
modes is set by the feature Reference Source Type.
– If the reference source is set to Internal, the heliCamTM C4 determines the duration of the sensor
operation in each quarter period according to the feature Lock‑In Actual Reference Frequency.
Another quarter period is immediately initiated once the sensor has completed its scheduled oper‑
ation in the preceding one.
– In the External Reference mode, a pulse wave (0‑5 V) must be supplied to the camera via the
heliDriverTM D3’s communication interface. By default, it is expected to oscillate at the reference
frequency. However, you have the option of setting a frequency multiplication or division factor
with the feature Reference Frequency Scaler. Behind the scenes the input frequency (evaluated
once immediately before measurement onset) is scaled with an additional multiplication factor
four, such that the trigger signals the beginning of a new quarter period, rather than a period. Only
with the setting “DivideBy4” is frequency scaling effectively disabled and the reference trigger sig‑
nal is directly relayed to the sensor. Additional features are only active with the External Refer‑
ence mode enabled. By setting an Expected Frequency Deviation, for instance, you may artificially
shorten the time per quarter period during which the camera sensor is busy and unresponsive to
trigger signals. In this fashion, you can prevent missing early trigger impulses if your trigger signal
is unsteady.
• The Sensitivity determines during which fraction of a quarter period, the sensor is light‑sensitive.
• The combined information about the onset of a quarter period and the sensor activity within it deter‑
mines a “dual‑phasic”, complex effective reference signal. The first step of the sensor action can be
thought of as multiplying this effective reference signal with the optical input in a mixing step.
• Setting the Coupling to AC enables background suppression. The potentially large DC background is
hence removed prior to mixing at the cost of an integration cycle.
• The function of the feature Time Constant N Periods is twofold. It determines the duration of the rect‑
angular filter that is applied to result of mixing and, at the same time, the sampling period.
• Finally, the feature Burst Frame Count determines the number of frames acquired in a measurement.

75
heliCamTM C4 ­ User Manual

76 Chapter 6. Graphical Summary


CHAPTER

SEVEN

WORLDWIDE SUPPORT

If you have a problem that you are unable to solve or have technical questions beyond the scope of this user
manual, do not hesitate to contact Heliotis Support for further assistance.
T: +41‑41‑455‑6700
E: [email protected]
I: www.heliotis.com

77
heliCamTM C4 ­ User Manual

78 Chapter 7. Worldwide Support


CHAPTER

EIGHT

DOCUMENT HISTORY

Version Date Changes Responsible

1.0.0 03‑07‑2023 Initial version bm

1.0.1 06‑03‑2024 Minor corrections and additional specifications bm


Added document versioning
Update reference to code examples
Full description of light control options
Ensure compatibility with new heliCam C4M

79
heliCamTM C4 ­ User Manual

80 Chapter 8. Document History


CHAPTER

NINE

ANNEX

Contents

• Technical Drawings
– heliCam™ C4

* C4.1.x‑S4xx‑R0
* C4.1.x‑S4xx‑R1
– heliDriverTM D3 with LIA Module
– Heliotis LED Module

9.1 Technical Drawings

9.1.1 heliCam™ C4

81
heliCamTM C4 ­ User Manual
9.1.1.1 C4.1.x­S4xx­R0
82 Chapter 9. Annex
heliCamTM C4 ­ User Manual
9.1.1.2 C4.1.x­S4xx­R1
9.1. Technical Drawings 83
heliCamTM C4 ­ User Manual

9.1.2 heliDriverTM D3 with LIA Module

84 Chapter 9. Annex
heliCamTM C4 ­ User Manual

9.1.3 Heliotis LED Module

9.1. Technical Drawings 85


heliCamTM C4 ­ User Manual

86 Chapter 9. Annex
LIST OF FIGURES

1.1 heliCamTM C4 Lock‑In Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2.1 heliCamTM C4 Exterior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8


2.2 heliCamTM C4 with HSFC4.1 Cooling Accessory . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 heliCamTM C4 Connection Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4 heliDriverTM D3 Front Panel with Mainboard and Communication Interface . . . . . . . . . . . . 11
2.5 Wiring of the heliCamTM C4 with Components of the Standard Delivery Package . . . . . . . . . 14
2.6 heliDriverTM D3 LED Status Indicators during and after Booting . . . . . . . . . . . . . . . . . . 14
2.7 Overview of Heliotis Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.8 Heliotis Account Registration for Software Download . . . . . . . . . . . . . . . . . . . . . . . 17
2.9 Network Adapter IP Address Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.10 Allowing Apps to communicate through the Windows Firewall . . . . . . . . . . . . . . . . . . 20
2.11 Software Setup Check in updateTool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.12 Network Connection Trouble Shooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.13 Firmware Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.1 Enabling the heliViewerTM ’s Lock‑In Camera Mode . . . . . . . . . . . . . . . . . . . . . . . . . 28


3.2 Loading and Duplicating Heliotis Example Recipe . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3 Graphical User Interface for Configuration of Lock‑In Camera . . . . . . . . . . . . . . . . . . . 30
3.4 Signal Generator Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.5 Expected Raw I/Q Result of Starter Lock‑In Measurement . . . . . . . . . . . . . . . . . . . . . 36
3.6 Offset in Raw I/Q Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.7 Signal Generator Setting for Offset Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.8 Offset Measurement and Subtraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.9 Expected Amplitude Result of Starter Lock‑In Measurement . . . . . . . . . . . . . . . . . . . . 40
3.10 heliViewerTM Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4.1 Status and Event Signaling during Measurement Sequence . . . . . . . . . . . . . . . . . . . . 48


4.2 Basic Sequence of Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.1 Block Diagram of Single‑ and Dual‑phase Lock‑In Amplification . . . . . . . . . . . . . . . . . . 52


5.2 Dual‑Phase Lock‑In Amplification with Monofrequent Inputs . . . . . . . . . . . . . . . . . . . 56
5.3 Amplitude Modulation and Ideal Dual‑Phase Demodulation with Noise . . . . . . . . . . . . . 61
5.4 Operational Sequence in the heliSensTM S4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.5 Effective Reference Signal and Dual‑Phase Demodulation . . . . . . . . . . . . . . . . . . . . . 68
5.6 Background Suppression / AC‑Coupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

6.1 Schematic Summary of Principal Operation Modes and User‑Configurable Features . . . . . . . 74

87
heliCamTM C4 ­ User Manual

88 List of Figures
LIST OF TABLES

1.1 heliSensTM S4 ‑ Lock‑In Pixel Image Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2


1.2 heliCamTM C4 ‑ Lock‑In Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 heliCamTM C4 ‑ Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 heliCamTM C4 ‑ Temperature Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1 heliDriverTM D3 Power Supply Connector Pin Assignment . . . . . . . . . . . . . . . . . . . . . 12


2.2 Software Connection Status Indicator in updateTool . . . . . . . . . . . . . . . . . . . . . . . . 22

3.1 Recommended Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.1 Example Feature Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43


4.2 Data Types of Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.3 Visibility Levels of Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.4 Accessibility Levels of Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.5 Selector and Selector‑Controlled Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.6 Target and Actual Feature Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.1 Properties of the Fourier Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58


5.2 Fourier Transforms of Selected Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

89

You might also like