Skip to content

Camera-Laser-Pairs

Definition

For all JS-50 models, there is an implicit pairing of camera (A or B) and laser (1-8)1. ScanHead firmware and API only handle the predefined pairings. Here is a quick reference:

Camera Laser
A 1
B 1
Camera Laser
A 4
A 5
A 6
B 1
B 2
B 3
Camera Laser
A 5
A 6
A 7
A 8
B 1
B 2
B 3
B 4
Camera Laser
A 1

Camera vs. Laser Driven Models

The JS-50 model line has two somewhat different model types, camera-driven (JS-50 MX, JS-50 WX and JS-50 WSC), and laser-driven (JS-50 X6B and JS-50 Z8). Although fundamentally the same hardware, there are some differences in how they are treated in the API and how software must be structured to retrieve data. The API will take into consideration the mapping in the table above, and offer two functions, based on the model type, e.g. to set the alignment:

In the .NET version of the API, we actually use function overloads:

public void SetAlignment(Camera camera, double rollDegrees, double shiftX, double shiftY);
public void SetAlignment(Laser laser, double rollDegrees, double shiftX, double shiftY)

You must use the first version, when talking to camera-driven models, and the second when talking to laser-driven ones.

In the C version of the API, two separate functions are needed, as there is no function overloading:

int32_t jsScanHeadSetAlignmentCamera(jsScanHead scan_head,  jsCamera camera,  double roll_degrees,  double shift_x,  double shift_y) 
int32_t jsScanHeadSetAlignmentLaser(jsScanHead scan_head,  jsLaser laser,  double roll_degrees,  double shift_x,  double shift_y)

You must use the first version, when talking to camera-driven models, and the second when talking to laser-driven ones.

Usage in JsSetup

JsSetup automatically handles the differences in camera-driven vs. laser driven models for you. In the User Interface, you will see that Camera-Laser-Pairs are displayed with the implicit element left out, e.g. for a WX model, the interface will always show the relevant Camera (Laser 1 being implicit), for an X6B model, it will always show the Laser Number (the corresponding camera being implicit).


  1. Please note that laser numbering starts with 1.