Page 1
Gocator 2000 & 2300 Series USER’S MANUAL Version 3.5.2.143 Revision: B...
Page 2
LMI Technologies, Inc. Trademarks and Restrictions Gocator™ is a registered trademark of LMI Technologies, Inc. Any other company or product names mentioned herein may be trademarks of their respective owners. Information contained within this manual is subject to change.
Introduction The Gocator 2000 and 2300 series of laser profiling sensors are designed for 3D measurement and control applications. Gocator sensors are configured using a web browser and can be connected to a variety of input and output devices. This guide describes the installation and use of Gocator sensors. Notational Conventions This guide uses the following notational conventions: Warning...
Table of Contents Introduction Operation Modes Table of Contents Data Viewer Video Mode Profile and Raw Mode Whole Part Safety and Maintenance Region Definition Data Viewer Controls Laser Safety Height Map Color Scale Laser Classes Profile Output Precautions and Responsibilities Coordinate Systems Class 3B Responsibilities Resampled And Raw Profile Format...
Page 5
Script Measurement Centroid Z Built-in Functions Height Ellipse Angle Ellipse Minor Ellipse Major Profile Measurement Tools Ellipse Ratio Bounding Box X Feature Points Bounding Box Y Fit Lines Bounding Box Width Measurement Types Bounding Box Length Width Script Height Distance Position X Position Z Output...
Page 6
Recovery Get Time Get Encoder Sensor Recovery Tool Start Scheduled Start Stop Trigger Gocator Configuration File Scheduled Digital Output Setup Scheduled Analog Output Profile Ping Part Reset Output Backup Calibration File Restore SysCal Restore Factory Set Connection Type Get Connection Type Clear Calibration Gocator Protocol Data Results...
Safety and Maintenance Laser Safety Gocator sensors contain semiconductor lasers that emit visible or invisible light and are designated as Class 2M, Class 3R, or Class LASER 3B, depending on the chosen laser option. Gocator sensors are referred to as components, indicating that SENSOR they are sold only to qualified customers for incorporation into their own equipment.
Laser Classes Class 2M laser components Class 2M laser components would not cause permanent LASER RADIATION damage to the eye under reasonably foreseeable DO NOT STARE INTO THE BEAM OR VIEW DIRECTLY WITH OPTICAL conditions of operation, provided that any exposure INSTRUMENTS OR MAGNIFIERS CLASS 2M LASER PRODUCT can be terminated by the blink reflex (assumed to take...
Class 3B Responsibilities LMI Technologies has filed reports with the FDA to assist customers in achieving certification of laser products. These reports can be referenced by an accession number, provided upon request. Detailed descriptions of the safety items that must be added to the system design are listed below.
IEC warning sign example FDA warning sign example Systems Sold or Used in the USA Systems that incorporate laser components or laser products manufactured by LMI Technologies require certification by the FDA. Customers are responsible for achieving and maintaining this certification.
Electrical Safety Sensors should be connected to earth ground All sensors should be connected to earth ground through their housing. All sensors should be mounted on an earth grounded frame using electrically conductive hardware to ensure the housing of the sensor is connected to earth ground.
Turn off lasers when not in use LMI Technologies uses semiconductor lasers in 3D measurement sensors. To maximize the lifespan of the sensor, turn off the laser when not in use. Gocator 2000 & 2300 Series Safety and Maintenance •...
Page 15
Avoid excessive modifications to files stored on the sensor Settings for Gocator sensors are stored in flash memory inside the sensor. Flash memory has an expected lifetime of 100,000 writes. To maximize lifetime, avoid frequent or unnecessary file save operations. Gocator 2000 &...
Getting Started System Overview Gocator sensors can be installed and used in a variety of scenarios. Sensors can be connected as standalone devices, dual sensor (Main and Buddy) system, or multi-sensor system. Standalone System Standalone systems are typically used when only a single Gocator sensor is required. The sensor can be connected to a computer’s Ethernet port for setup and can also be connected to devices such as encoders, photocells, or PLCs.
Page 17
GOCATOR 2300 SERIES POWER: 24-48VDC @ 13W LASER SAFETY: +24-48VDC TO ENABLE GOCATOR WIRE RICH I/O AS REQUIRED BY APPLICATION IN - ENCODER / TRIGGER OUT - SERIAL / ANALOG / DIGITAL GOCATOR I/O CORDSET POWER & ETHERNET CORDSET USER PC (can be disconnected after setup) Gocator 2000 &...
Dual Sensor System In a dual sensor system, two Gocator sensors work together to perform profiling and output the combined results. The controlling sensor is referred to as the Main sensor, and the helper is referred to as the Buddy sensor. Gocator’s software recognizes three installation orientations – None, Opposite and Wide.
Page 19
GOCATOR 2300 SERIES MAIN GOCATOR BUDDY GOCATOR POWER, LASER SAFETY, TRIGGER INPUTS, ENCODER MASTER 400/800/1200/2400 GOCATOR I/O CORDSET GOCATOR POWER AND ETHERNET GIGABIT ETHERNET SWITCH CORDSET Gocator 2000 & 2300 Series Getting Started •...
Multi-Sensor System Master 400/800/1200/2400 networking hardware can be used to connect two or more sensors into a Multi-sensor system. Gocator Master cordsets are used to connect the sensors to a Master. The Master provides a single point of connection for power, safety, encoder and digital inputs. A Master 400/800/1200/2400 can be used to ensure that the scan timing is precisely synchronized across sensors.
Hardware Gocator 2000 Sensor CAMERA LASER EMITTER POWER, RANGE, LASER INDICATORS LAN CONNECTOR I/O CONNECTOR SERIAL NUMBER Item Description Camera Observes laser light reflected from target surfaces. Laser Emitter Emits structured light for laser profiling. I/O Connector Accepts power and input/output signals. LAN Connector Connects to 100 Mbit/s Ethernet network.
Gocator 2300 Sensor CAMERA LASER EMITTER I/O CONNECTOR POWER/LAN CONNECTOR POWER, RANGE, LASER INDICATORS SERIAL NUMBER LAN CONNECTOR Item Description Camera Observes laser light reflected from target surfaces. Laser Emitter Emits structured light for laser profiling. I/O Connector Accepts input and output signals. Power / LAN Connector Accepts power and laser safety signals and connects to 1000 Mbit/s Ethernet network.
Master 100 The Master 100 is used by the Gocator 2300 series for standalone system setup. The Master 100 is designed for development use only. Master Ethernet Port Master Host Port Master Power Port 48V Power Supply* (Pin 1) Sensor IO Port (Pin 1) Encoder/Output Port Item...
Master 200 The Master 200 supports standalone or dual sensor setup. It is only used by the Gocator 2000 series. CONNECTION TO SENSOR 1 CONNECTION TO SENSOR 2 LASER SAFETY SWITCH POWER SWITCH POWER (FOR DEMO USE ONLY*) ENCODER ENCODER INPUT/OUTPUT POWER AND (PORT 1 ONLY)
Master 400/800 SENSOR PORTS 1-4 LED INDICATORS MASTER 400 FRONT SENSOR PORTS 5-8 SENSOR PORTS 1-4 LED INDICATORS MASTER 400 FRONT MASTER 400/800 REAR POWER AND SAFETY ENCODER INPUT Item Description Sensor Ports Master connection for Gocator sensors (no specific order required). Ground Connection Earth ground connection point.
Gocator 2000 Cordsets Gocator 2000 sensors use three cordsets. The Ethernet cordset is used for sensor communication via 100 Mbit/s Ethernet with a standard RJ45 connector. The Gocator I/O cordset provides power and laser safety interlock to sensors. It also provides digital I/O connections, an encoder interface, RS-485 serial connection, and an analog output.
Calibration disks are typically used with systems containing a single sensor and can be ordered from LMI Technologies. When choosing a disk for your application, select the largest disk that fits entirely within the required field of view. Refer to Parts and Accessories (page 360) for calibration disk part numbers.
Installation Grounding - Gocator Gocators should be grounded to the earth/chassis through their housings and through the grounding shield of the Power I/O cordset. Gocator sensors have been designed to provide adequate grounding through the use of M5 x 0.8 pitch mounting screws. Always check grounding with a multi-meter to ensure electrical continuity between the mounting frame and the Gocator's connectors.
Mounting Sensors should be mounted using four M5 x 0.8 pitch screws of suitable length. The recommended thread engagement into the housing is 8 - 10 mm. Proper care should be taken in order to ensure that the internal threads are not damaged from cross-threading or improper insertion of screws. Sensors should not be installed near objects that might occlude a camera’s view of the laser.
Orientations The examples below illustrate the possible mounting orientations for standalone and dual sensor system. For more information on orientations, refer to Dual Sensor System Layout (page 70). Single Sensor Orientations: Single sensor above conveyor Single sensor on robot arm Gocator 2000 &...
Page 32
Dual Sensor System Orientations: Main Buddy Main must be on the left side (when looking into the Side-by-side for wide-area measurement (Wide) connector) of the Buddy (Wide) Main Buddy Above/below for two-sided measurement (Opposite) Main must be on the top with Buddy on the bottom (Opposite) Gocator 2000 &...
Software User Interface Overview Gocator sensors are configured by connecting to a Main sensor with a web browser. The Gocator web interface is illustrated below. Element Description Connection Page For network configuration and maintenance. Setup Page For configuring settings such as trigger source and exposure, and to perform calibration steps.
Connecting to a New Sensor Sensors are shipped with the following default network configuration: Setting Default DHCP Disabled IP Address 192.168.1.10 Subnet Mask 255.255.255.0 Gateway 0.0.0.0 All Gocator sensors are configured to 192.168.1.10 as the default IP address. For a dual sensor system, the Main and Buddy sensors must be assigned unique addresses before they can be used on the same network.
Page 35
2 Change client network settings. Windows 7: » Open the Control Panel and select Network and Sharing Center, then click Change Adapter Settings. » Right-click the desired network connection, and then click Properties. » On the Networking tab, click Internet Protocol Version 4 (TCP/IPv4), and then click Properties.
Running for the First Time The Gocator is shipped with a default configuration that will produce laser ranges on most targets. The following sections walk through the steps required to setup the sensor(s) to produce laser ranges. Running a Standalone Sensor System After the sensor is installed, laser profiling can be exercised to verify basic sensor operation.
Page 37
6 Ensure that the Data Source selector is showing LIVE. RECORD START SNAPSHOT DATA SOURCE 7 Ensure that the Laser Safety Switch is enabled Safety_in+ 5V - 48VDC or the Laser Safety input is high. Safety_in- 8 Select the Setup Page. 9 Press the Start button to start the sensor.
Running a Dual Sensor System After the sensors are installed, laser profiling can be exercised to verify basic sensor operation. If Master 200 is used and an encoder input is required, the encoder signals must be connected to the Encoder (Port 1 & 2). Refer to Master 200 (page 24) for more details. To run a dual sensor setup for the first time: 1 Turn off the sensors and unplug the Ethernet GOCATOR POWER I/O CORDSET...
Page 39
6 Modify the IP address to 192.168.1.11 in the Network settings and click the Save button. When you click the Save button, you will be prompted to confirm your selection. 7 Turn off the sensors, re-connect the Main sensor's Ethernet connection and power-cycle GOCATOR POWER I/O CORDSET MAIN the sensors.
Page 40
11 Specify the Connect To setting. The Connect To setting specifies whether the sensor system is standalone, connected to a Master 200 or a Master 400/800/1200/2400. For dual sensor operation select Master 200 or Master 400/800/1200/2400. 12 Go to Connection Page > Available Sensors panel.
Page 41
15 Ensure that the Laser Safety Switch is enabled or the Laser Safety input is high. 16 Select the Setup Page. 17 Press the Start button to start the sensors. The Start button is used to run sensors continuously, while the Snapshot button is used to trigger a single profile.
Next Steps After completing the steps in this chapter, the Gocator measurement system is ready to be configured for an application using the software interface. The interface is explained in the following chapters: Setup and Calibration (page 43) Fine tunes laser profiling for an application. Measurement (page 82) Programs measurements on sensors that are equipped with profile tools.
Setup and Calibration Setup Page This chapter describes the steps to configure Gocator sensors for laser profiling using the Setup Page. Setup and calibration steps should be performed before programming measurements or outputs. Element Description Operation Mode Panel Use the Operation Mode panel to set the current operation mode (Video, Profile, Part or Raw) and other options.
Page 44
Element Description Data Viewer Use the Data Viewer to display sensor data and adjust regions of interest. Depending on the current operation mode, the data viewer can display video images, profile plots or part views. The following table provides quick references for specific goals that users could achieve from the panels in the setup page.
Operation Modes The Gocator web interface supports four operation modes: Video, Profile, Raw and Whole Part. The operation mode can be selected in the Operation Mode panel. Mode and Option Description Video Output video images from the Gocator. This mode is useful for configuring exposure time and troubleshooting stray light or ambient light problems.
Data Viewer The Data Viewer can display video images, profile plots, intensity images and height maps. It is also used to configure active area and measurement tools. Its use is dependent on the current operation mode and the panel selection. Video Mode The Data Viewer displays camera images.
Profile and Raw Mode In Profile and Raw mode, the Data Viewer displays profile plots. In a dual sensor system, profiles from individual sensors or from a combined view can be displayed. While in the Setup Page, selecting a panel (e.g. Sensor Panel or Layout Panel) will automatically set the display to the most appropriate display view.
Whole Part In addition to displaying profiles, the Data Viewer can display height maps and intensity images of the detected objects. Users select the data to display from the View option. Users can use the 3D button to view Whole Part data in 3D viewer. The 3D model is overlaid with the information selected in the View option.
Page 49
3D viewer with height map overlay 3D viewer dwith intensity overlay 3D data viewer with uniform overlay Users can toggle between 2D and 3D viewer by clicking on the 3D button. Refer to Data Viewer Controls (page 50) for explanations on the available controls. In a dual sensor system, data from individual sensors or from a combined view can be selected.
Region Definition The Data Viewer can also be used to define a region of interest. To setup a region of interest: 1 Move the mouse cursor to the rectangle. The rectangle is automatically displayed when a setup or measurement requires an area to be specified. 2 Drag the rectangle to move it, and use the handles on the rectangle’s border to resize it.
Height Map Color Scale Height maps are displayed in pseudo-color; the height (Z) axis is color coded. The scaling of the colors to the height values can be adjusted. To change the scaling of the height map: 1 Select Height Map from the View setting. 2 Click the Scaling button.
Profile Output Goactor measures the height of the object calculated from laser triangulation. The Gocator reports a series of ranges along the laser line, with each range representing the distance from the sensor's origin plane. Each range contains a height and a position in the sensor's field of view. Coordinate Systems Range data is reported in sensor or system coordinates depending on the calibration state.
Resampled And Raw Profile Format Profile data produced by Profile or Part mode are processed differently than by Raw Mode. In Profile or Part mode, the ranges are resampled to an even interval along the laser line (x-axis). The resampling divides the x-axis into fixed size "bins"...
Intensity Output Gocator sensors can produce intensity images that measure the amount of light reflected by an object. An 8-bit intensity value is output for each range value along the laser line. Gocator applies the same coordinate system and resampling logic as the ranges (page 52) to the intensity values. Gocator 2000 &...
Trigger A trigger is an event that causes a sensor to take a single picture. When a trigger is processed, the laser is strobed and the camera exposes to produce an image. The resulting image is processed inside the sensor to yield a laser profile (range/distance information), which can then be used for measurement. The laser and camera inside a sensor can be triggered by one of four sources: Trigger Source Description...
Page 56
Trigger Source Description Encoder 3. Bi-directional A scan is triggered when the target object moves forward or backward. When triggers are received at a frequency higher than the maximum frame rate, some triggers may not be accepted. The Trigger Drops Indicator in the Dashboard can be used to check for this condition.
Examples Example: Encoder + Conveyor Encoder triggering is used to perform profile measurements at a uniform spacing. The speed of the conveyor can vary while the object is being measured; an encoder ensures that the measurement spacing is consistent, independent of conveyor speed.
Page 58
Example: Software Trigger + Robot Arm Software triggering can be used to produce a snapshot for profile measurement. A software trigger can be used in systems that employ external software to orchestrate the activities of system components. Gocator 2000 & 2300 Series Setup •...
Settings The trigger source is selected using the Trigger panel in the Setup page. After specifying a trigger source, the Trigger Panel will show the parameters that can be configured. Parameters Trigger Source Description Trigger Selects the trigger source. (Time, Encoder, External Input, or Software) Max Frame Rate Reports the maximum frame rate, which is a function of the current Active Area, Exposure, and Resolution settings.
Active Area Active area refers to the region within the sensor’s maximum field of view that is used for laser profiling. By default, the active area covers the sensor’s entire field of view. By reducing the active area, the sensor can operate at higher speeds. Active area is specified in sensor coordinates, rather than in system coordinates.
Tracking Window The Gocator can track a relatively flat object in real-time to achieve very high scan rates. This feature is based on tracking the object height using a small window, called the Tracking Window, that moves dynamically to cover a larger measurement range. Users can balance the gain in speed and the tracking ability by configuring the size of the tracking area.
Page 62
To enable tracking window: 1 Check the Tracking Window box. Checking the Tracking Window box expands the panel to reveal the settings for the window used to track the object height. 2 Resize the Tracking Window shown in the Data Viewer. Only the height of the window is required.
Exposure Exposure determines the duration of camera and laser on-time. Longer exposures can be helpful to detect laser signals on dark or distant surfaces, but increasing exposure time decreases the maximum speed. Different target surfaces could require different exposures for optimal results. Gocator sensors provide three exposure modes for the flexibility needed to scan different types of target surfaces.
Single Exposure The sensor uses a fixed exposure in every scan. The is used when the target surface is uniform and is the same for all parts. To enable single exposure: 1 Place a representative target in view of the sensor. The target surface should be similar to the material that will normally be measured.
Dynamic Exposure The sensor automatically uses past profile information to adjust the exposure to yield the best profile. This is used when the target surface changes from scan to scan. To enable dynamic exposure: 1 Select Profile, Part or Raw Mode. 2 Navigate to the Sensor panel for the Main or Buddy sensor.
Multiple Exposures The sensor combines data from multiple exposures to create a single laser profile. Multiple exposures can be used to increase the ability to detect light and dark materials that are in the field of view simultaneously. Up to five exposures can be defined with each set to a different exposure level. For each exposure the sensor will perform a complete scan at the current frame rate making the effective frame rate slower.
Resolutions Resolutions can be set independently for the x-axis and z-axis. Reducing the resolution increases speed or reduces CPU utilization while maintaining the sensor's field of view. X Resolution The X Resolution setting can be used to decrease the profile's x-resolution in order to decrease sensor CPU utilization.
Z Resolution The Z Resolution setting can be used to decrease the profile's Z resolution in order to increase speed. The Z Resolution setting works by reducing the number of image rows that is used for laser profiling. On the Gocator 2000, decrease Z resolutions will increase speed. On the Gocator 2300, both X and Z resolutions need to be decreased to increase speed.
Transformations The transformation settings are used to control how ranges are converted from sensor coordinates to system coordinates. Element Description X Offset Specifies the shift along the x-axis. With Normal orientation, a positive value shifts the profiles to the right. With Reverse orientation, a positive value shifts the profile to the left. Z Offset Specifies the shift along the z-axis.
Dual Sensor System Layout Mounting orientations need to be specified for a dual sensor (Buddy) system. This information allows the Alignment or Travel Calibration procedures to determine the correct system-wide coordinates for laser profiling and measurements. Refer to Coordinate Systems (page 52) in this chapter for more information on sensor and system coordinates.
Orientation Example Opposite Sensors are mounted in Top (Main) or Bottom (Buddy) positions for a larger combined measurement range and the ability to perform Main Top/Bottom differential measurements. Buddy Overlap If the Main and Buddy sensors are mounted such that the camera from one sensor can detect the laser from the other sensor, the Overlap feature can be used to eliminate laser interference.
Calibration Although Gocator sensors are pre-calibrated and ready to deliver profiles out of the box, calibration procedures are required to compensate for sensor mounting inaccuracies, to align multiple sensors into a common coordinate system, and to determine the resolution (with encoder) and speed of the transport system.
Alignment Calibration Alignment calibration can be used to compensate for mounting inaccuracies by aligning sensor data to a common reference surface (often a conveyor belt). To perform alignment calibration: 1 Ensure that all sensors have a clear view of the target surface. Remove any irregular objects from the sensor's field of view that might interfere with alignment calibration.
Travel Calibration Travel calibration can be used to achieve alignment calibration and motion calibration in a single procedure. To perform travel calibration: 1 Place the calibration target prior to the laser plane. Remove extraneous objects from the transport system such that the calibration target will be the only object that is scanned.
Clearing Calibration To clear calibration: 1 Navigate to the Calibration panel on the Setup page. 2 Click the Calibration or Clear Calibration button. If the Clear Calibration button is pressed, the calibration will be erased and sensors will revert to using Sensor Coordinates.
Filters The Filters Panel can be used to post process the profile before it is output or is used by measurement tools. Three types of filters are supported: Filters Description X Resampling Interval Configure resampling interval size to balance between CPU loading, output data rate and x-resolution.
X Resampling Interval Resampling interval is the spacing between data points in a resampled profile (page 52). A larger interval creates profiles with lower x-resolution but reduces CPU usage and potentially increases the maximum frame rate. A larger interval also reduces the data output rate. By default, the Gocator output data at the medium resolution.
Gap Filling Gap filling works by filling in missing data points using the lowest values from the nearest neighbors. The sensor can fill gaps along both the x-axis and the y-axis. X gap filling works by filling in the gaps within the same profile.
Smoothing Smoothing works by substituting a profile result with the average value of itself and its nearest neighbors. Smoothing can be applied along the x-axis or the y-axis. X smoothing works by calculating a moving average across samples within the same profile. Y smoothing works by calculating a moving average in the direction of travel at each x location.
Part Detection In Part Mode, the Gocator sensor analyzes each profile to identify discrete objects. Part measurements can then be performed on each discrete object. Part detection can be performed when the trigger source is set to Time or Encoder. To use the Time trigger source, the travel speed needs to be calibrated.
Page 81
2 Navigate to the Part Detection panel. Adjust the settings. Gocator 2000 & 2300 Series Setup •...
Measurement Measurement Page Measurement tools are configured using the Measurement Page. The content of the Measurement Page is controlled by the current operation mode. In Profile Mode, the Measurement Page displays tools for profile measurement. In Part Mode, the Measurement page displays tools for part measurement.
Adding and Removing Measurements To add a new profile measurement: 1 Select the desired measurement type. Click on the item in the drop-down list next to Add Measurement to select the measurement type. 2 Press the Add button. A configuration panel for the new measurement will be added to the bottom of the stack. To remove a new profile measurement: 1 Select the desired measurement.
Changing the Measurement Name Each measurement can be assigned a unique name. This allows multiple measurements of the same type to be distinguished in the web interface. The name is also referenced by the Script tool. To edit a measurement name: 1 Click on the measurement name.
Page 85
Measurement ID Measurement ID is used to uniquely identify a measurement in the Gocator protocol or in the SDK. The value must be unique amongst all profile and part measurements. To edit a measurement ID: 1 Select a measurement. Click on the + in a measurement panel to expand the panel. 2 Click on the measurement ID.
Profile Sources For dual sensor systems, measurements must specify a profile source. The profile source determines the data that will be used for the measurement. The following options are available: Profile Source Description Main Profile data is provided by the Main sensor. This is the only option for standalone systems.
Decisions Results from a measurement tool can be compared against minimum and maximum thresholds to generate pass / fail decisions. The decision state is pass (value displayed in green) if a measurement value is between the minimum and maximum threshold, otherwise the decision state is fail (value displayed in red).
Output Filters Filters can be applied to measurement values before they are output from the Gocator sensors. Two filters are supported. Operation Description Hold Last Valid Hold the last valid value when the measurement is invalid. Measurement is invalid if there is no valid value.
Profile Fixturing Profile fixturing is used to track the movement of parts along the laser line (x-axis and z-axis). The movement is calculated as an offset and is used to correct the positions of the feature areas. This ensures that the regions-of-interest used to detect features are correctly positioned for every part. Profile fixturing is not required in order to use measurement functions.
Page 90
To set up profile fixturing in the x-axis: 1 Press the Fixturing button in the Measurement panel. 2 Enable X Fixturing Check the X-Fixturing box to enable fixturing in the x-axis. 3 Adjust the detection area. Profile data within the detection area will be used to calculate the feature point for fixturing. 4 Select an feature point type.
Script Measurement A Script measurement can be used to program a custom measurement using a simplified C-based syntax. Similar to other measurement tools, a script measurement can produce a measurement value and a measurement decision. The following elements of the C language are supported: Supported Elements Elements Supported...
Page 92
int Measurement_NameExists(char *name) Determines if a measurement exist by name. Parameter: name – name of a measurement Return: 0 – measurement does not exist 1 – measurement exists int Measurement_Id (char *name) Retrieves the measurement ID by the measurement name. Parameters: name –...
Page 93
int Memory_Exists (int id) Tests for the existence of a value by ID. Parameters: id – Value ID Returns: 0 – value does not exist 1 – value exists void Memory_Clear (int id) Erases a value associated with a ID. Parameters: id –...
Page 94
Example: Accumulated Volume The following example demonstrates how to create a custom measurement that is based on the values from other measurements and persistent values. The example calculates the volume of the target using a series of box area measurement values. /* Calculate the volume of an object by accumulating the boxArea measurements*/ /* Encoder Resolution is 0.5mm.
Profile Measurement Tools This chapter describes the profile measurement tools available in sensors that are equipped with Measurement Tools. Most measurement functions detect and compare feature points or lines found within laser profile data. Measurement values are compared against minimum and maximum thresholds to yield decisions. Measurement Examples Width...
Page 96
Measurement Examples Center X Center X Finds the average location of two features and measures the x-axis position of the average location. Refer to Center X (page 110). Center Z Finds the average location of two features and measures the Center Z z-axis position of the average location.
Page 97
Measurement Examples Intersect Area Measures the cross-sectional area within a region that is above or below a fitted baseline. Refer to Intersect Area (page 116). Intersect Area [Object] Intersect Area [Clearance] Box Area Measures the cross-sectional area within a region. Refer to Box Area (page 117).
Page 98
Measurement Examples Circle X Finds the best-fitted circle and measures the circle center position in the x-axis. Refer to Circle X (page 121). Center (X, Z) Circle Z Finds the best-fitted circle and measures the circle center position in the z-axis. Refer to Circle Z (page 122).
Page 99
Measurement Examples Measures the distance between two surfaces. The surface edges can be curved or sharp. Refer to Gap (page 127) Flush Measures the flatness between two surfaces. The surface edges can be curved or sharp. Flush Refer to Flush (page 132) Flush Groove Width Width...
Measurement Examples Groove X Measures the x-position of the bottom of a groove. Refer to Groove X (page 140) (X, Z) (X, Z) Groove Z Measures the z-position of the bottom of a groove. Refer to Groove Z (page 142) (X, Z) (X, Z) Strip Width...
Page 101
Measurement Examples Strip X (X, Z) (X, Z) Measures the x-position of a strip. Refer to Strip X (page 152) (X, Z) (X, Z) (X, Z) (X, Z) Strip Z (X, Z) (X, Z) Measures the z-position of a strip. Refer to Strip Z (page 155) (X, Z) (X, Z)
Feature Points Many profile measurements involve estimating the locations of feature points and then making comparisons between the feature points. The following types of points can be identified. Point Type Examples Finds the point with the maximum z-value within the region of interest.
Page 103
Point Type Examples Bottom Corner Finds the bottom-most corner within the region interest, where corner is defined as a change in profile shape. Bottom Corner Left Corner Finds the left-most corner within the region interest, where corner is defined as a change in profile shape. Left Corner Right Corner Finds the right-most corner within the region interest, where...
Fit Lines Some measurements involve estimating lines in order to measure angles or intersection points. A fit line can be calculated using data from either one or two fit areas. Refer to the following diagrams: LINE LINE AREA A AREA A AREA B A line can be defined using one or two areas.
Measurement Types Width A width measurement determines the difference along the x-axis between two feature points. The measurement value can be compared with minimum and maximum constraints to yield a decision. The difference can be calculated as an absolute or signed result. The difference is calculated by Width = Feature 2 –...
Height A height measurement determines the difference along the z-axis between two feature points. The measurement value can be compared with minimum and maximum constraints to yield a decision. The difference can be expressed as an absolute or signed result. The difference is calculated by Height = Feature 2 –...
Distance A distance measurement determines the Euclidean distance between two feature points. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Distance measurement: 1 Add a new Distance measurement or select an existing Distance measurement. 2 Select the measurement Source.
Position X A Position X measurement finds the x-axis position of a feature point. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Position X measurement: 1 Add a new Position X measurement or select an existing Position X measurement. 2 Select the measurement Source.
Position Z A Position Z measurement finds the z-axis position of a feature point. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Position Z measurement: 1 Add a new Position Z measurement or select an existing Position Z measurement. 2 Select the measurement Source.
Center X A Center X measurement finds the average location of two features points and measures the x-axis position of the average location. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Center X measurement: 1 Add a new Center X measurement or select an existing Center X measurement.
Center Z A Center Z measurement finds the average location of two features points and measures the z-axis position of the average location. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Center Z measurement: 1 Add a new Center Z measurement or select an existing Center Z measurement.
Angle X An Angle X measurement determines the angle between a fit line and the x axis. The measurement value can be compared with minimum and maximum constraints to yield a decision. The angle can be expressed as a signed or an absolute result. The absolute result is used when the minimum and maximum constraints need to cover both positive and negative angles.
Intersect X An Intersect X measurement determines the intersection between two fit lines and measures the x-axis position of the intersection point. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Intersect X measurement: 1 Add a new Intersect X measurement or select an existing Intersect X measurement.
Intersect Z An Intersect Z measurement determines the intersection between two fit lines and measures the z-axis position of the intersection point. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Intersect Z measurement: 1 Add a new Intersect Z measurement or select an existing Intersect Z measurement.
Intersect Angle An Intersect Angle measurement determines the angle subtended by two fit lines. The measurement value can be compared with minimum and maximum constraints to yield a decision. The angle can be expressed as a signed or absolute result. The absolute result is used when the minimum and maximum constraints need to cover both positive and negative angles.
Intersect Area An Intersect Area measurement determines the cross-sectional area within a region that is above a baseline. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Intersect Area measurement: 1 Add a new Intersect Area measurement or select an existing Intersect Area measurement.
Box Area A Box Area measurement determines the cross-sectional area within a region. The measurement value can be compared with minimum and maximum constraints to yield a decision. Areas are positive in regions where the profile is above the x-axis. In contrast, areas are negative in regions where the profile is below the x-axis.
Difference Area A Difference Area measurement determines the difference in cross-sectional area between a live profile and template. The measurement value can be compared with minimum and maximum constraints to yield a decision. Area can be calculated as an absolute or signed value. Signed results are positive in regions where the live profile is closer to the sensors than the template.
Difference Peak A Difference Peak measurement determines the maximum difference in height between a live profile and the template. The measurement value can be compared with minimum and maximum constraints to yield a decision. The difference in peak can be calculated as an absolute or signed value. A signed difference is positive in regions where the live profile is closer to the sensors than the template.
Circle Radius A Circle Radius measurement fits a circle to the live profile and measures the radius of the circle. The measurement value can be compared with the minimum and maximum constraints to yield a decision. To create or edit a Circle Radius measurement: 1 Add a new Circle Radius measurement or select an existing Circle Radius measurement.
Circle X A Circle X measurement fits a circle to the live profile and measures the center's x-position of the circle. The measurement value can be compared with the minimum and maximum constraints to yield a decision. To create or edit a Circle X measurement: 1 Add a new Circle X measurement or select an existing Circle X measurement.
Circle Z A Circle Z measurement fits a circle to the live profile and measures the center's z-position of the circle. The measurement value can be compared with the minimum and maximum constraints to yield a decision. To create or edit a Circle Z measurement: 1 Add a new Circle Z measurement or select an existing Circle Z measurement.
Line Standard Deviation A Line Standard Deviation measurement fits a line to the live profile and measures the standard deviation of the points to the fitted line. The measurement value can be compared with the minimum and maximum constraints to yield a decision. To create or edit a Line Standard Deviation measurement: 1 Add a new Line Standard Deviation measurement or select an existing Line Standard Deviation measurement.
Line Error Min A Line Error Min measurement fits a line to the live profile and measures the point that is furthest from the bottom of the fitted line. The measurement value can be compared with the minimum and maximum constraints to yield a decision.
Line Error Max A Line Error Max measurement fits a line to the live profile and measures the point that is furthest from the top of the fitted line. The measurement value can be compared with the minimum and maximum constraints to yield a decision.
Line Percentile A Line Percentile measurement fits a line to the live profile and measures the range around the fitted line that covers a specified percentage of the points. The measurement value can be compared with the minimum and maximum constraints to yield a decision. To create or edit a Line Percentile measurement: 1 Add a new Line Percentile measurement or select an existing Line Percentile measurement.
A Gap measurement measures the distance between the edges of two surfaces. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Gap and Flush Algorithm (page 136) for an explanation of the feature locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 128
Parameters Descriptions Illustrations Reference Defines the side in which the gap is calculated from. Surface Axis Side Measurement Defines the direction that the gap is calculated. Axis Surface - In the direction of the fitted surface line of the reference surface. Edge - In the direction perpendicular to the edge of the reference suface.
Page 129
Parameters Descriptions Illustrations Surface Width The width of the surface area in which laser data is used to form the fitted surface line. This value should be as large as the surface allows. Fitted Surface Line Surface Offset The distance between the edge region and the surface region.
Parameters Descriptions Illustrations Edge Type Defines the type of feature point and it can be either a Edge Region corner or a tangent. A tangent edge point is the point selected based on the defined Edge Angle. A corner edge point is the intersect point between the fitted Fitted Surface Line surface line and a edge line formed by interpolating the points at and after the tangent within the edge...
The Data Viewer displays the gap measurement in real time. It also displays the results from the intermediate steps in the algorihtm. Surface Region Edge Region Edge Points Fit Circle Direction To create or edit a Gap measurement: 1 Add a new Gap measurement or select an existing Gap measurement. 2 Adjust the measurement regions.
Flush A Flush measurement measures the flatness between the edges of two surfaces. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Gap and Flush Algorithm (page 136) for an explanation of the feature locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Left/Right Side Parameters: Parameters Descriptions Illustrations Void Width The maximum width of the missing data caused by Fitted Surface Line occlusion or data drop out. A larger value prevents the algorithm from registering a section of missing data as an edge. Setting the value to 0 causes the algorithm to try to detect an edge in every missing data section.
Parameters Descriptions Illustrations Edge Angle A point on the best fit circle to be used to calculate Edge Region the feature point. The selected point is on the circumference at the specified angle from the start of the edge region. Nominal The angle is measured from the axis perpendicular to Radius...
The Data Viewer displays the flush measurement in real time. It also displays the results from the intermediate steps in the algorihtm. Direction Surface Region Edge Region Surface Point To create or edit a Flush measurement: 1 Add a new Flush measurement or select an existing Flush measurement. 2 Adjust the measurement regions.
Gap and Flush Algorithm The gap and flush tools use the same algorithm to locate the feature. It first searches for two regions on each side: a surface region and an edge region. Left Side Right Side Surface Region Surface Region Edge Region Edge Region After the regions are found, the algorithm place a feature point in the surface region based on a set...
Surface offset Surface offset Fitted Circle 4. If a valid edge region is detected, a model fit is applied to the surface and edge regions to accurately Adjusted Surface Area determine the region positions and feature point locations. The model fit takes into account the Surface Width, Surface Offset, Edge Angle and the Edge Type parameters.
Groove Width A Groove Width measurement measures the width of a V-shape, U-shape or open-shape groove. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Groove Algorithm (page 144) for an explanation of the feature locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 139
To create or edit a Groove Width measurement: 1 Add a new Groove Width measurement or select an existing Groove Width measurement. 2 Adjust the measurement region. For a stable measurement, The measurement region defines the region in which to search for the groove. the measurement region should be made large enough to cover some laser data on the left and right sides of the groove.
Groove X A Groove X measurement measures the x-position of the minimum point of a V-shape, U-shape or open- shape groove. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Groove Algorithm (page 144) for an explanation of the feature locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 141
Parameters Descriptions Maximum Width Maximum width of a groove to be considered valid. If set to 0, the maximum is set to the width of the measurement area. To create or edit a Groove X measurement: 1 Add a new Groove X measurement or select an existing Groove X measurement. 2 Adjust the measurement region.
Groove Z A Groove Z measurement measures the z-position of the bottom of a V-shape, U-shape or open-shape groove The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Groove Algorithm (page 144) for an explanation of the feature locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 143
Parameters Descriptions Maximum Width Maximum width of a groove to be considered valid. If set to 0, the maximum is set to the width of the measurement area. To create or edit a Groove Z measurement: 1 Add a new Groove Z measurement or select an existing Groove Z measurement. 2 Adjust the measurement region.
2. Shared peak Groove Algorithm The groove measurement tool first locates valley along the profile line. The bottom point of a valley, the valley point, is the first estimation of the position of the groove bottom. For each valley, the algorithm 2.
Page 145
Width Depth The actual groove bottom is calculated differently for different shapes. For a V-shaped groove, a line is fitted to the sides of the valley points starting from the corners, up to (but not including) the valley point. Width The groove bottom is the intersection of the left and right lines.
Strip Width A Strip Width measurement measures the width of a strip. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Strip Detection Algorithm (page 158) for an explanation of the strip locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 147
Parameters Descriptions Right Edge Specifies the features that will be considered as the strip's right edge. Users can select more than one condition. Rising - Rising edge detected based on the strip edge parameters. Falling - Falling edge detected based on the strip edge parameters. Data end - Last valid profile data point in the measurement region.
Page 148
Sides of the Strip 3 Adjust the measurement parameters. Adjust the parameters as described above. 4 Provide minimum and maximum constraints for a decision. Refer to Decisions (page 87) for more information on decisions. Gocator 2000 & 2300 Series Measurement •...
Strip Height A Strip Height measurement measures the height of a strip. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Strip Detection Algorithm (page 158) for an explanation of the strip locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 150
Parameters Descriptions Right Edge Specifies the features that will be considered as the strip's right edge. Users can select more than one condition. Rising - Rising edge detected based on the strip edge parameters. Falling - Falling edge detected based on the strip edge parameters. Data end - Last valid profile data point in the measurement region.
Page 151
Sides of the Strip 3 Adjust the measurement parameters. Adjust the parameters as described above. 4 Provide minimum and maximum constraints for a decision. Refer to Decisions (page 87) for more information on decisions. Gocator 2000 & 2300 Series Measurement •...
Strip X A Strip X measurement measures the x-position of a strip. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Strip Detection Algorithm (page 158) for an explanation of the strip locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 153
Parameters Descriptions Right Edge Specifies the features that will be considered as the strip's right edge. Users can select more than one condition. Rising - Rising edge detected based on the strip edge parameters. Falling - Falling edge detected based on the strip edge parameters. Data end - Last valid profile data point in the measurement region.
Page 154
The measurement region defines the region in which to search for the strip. If possible, the region should on the left and right sides of the strip. be made large enough to cover the base Sides of the Strip 3 Adjust the measurement parameters. Adjust the parameters as described above.
Strip Z A Strip Z measurement measures the z-position of a strip. The measurement value can be compared with minimum and maximum constraints to yield a decision. Refer to Strip Detection Algorithm (page 158) for an explanation of the strip locating algorithm. The behavior of the algorithm can be adjusted by changing the parameters in the measurement panel.
Page 156
Parameters Descriptions Right Edge Specifies the features that will be considered as the strip's right edge. Users can select more than one condition. Rising - Rising edge detected based on the strip edge parameters. Falling - Falling edge detected based on the strip edge parameters. Data end - Last valid profile data point in the measurement region.
Page 157
The measurement region defines the region in which to search for the strip. If possible, the region should on the left and right sides of the strip. be made large enough to cover the base Sides of the Strip 3 Adjust the measurement parameters. Adjust the parameters as described above.
Strip Detection Algorithm A strip is a flat region bounded on the left and on the right by edges. The Strip tool can measure the edge positions, width and height of a strip. The Strip tool assumes that regions outside the strip, referred to as the base regions (Region A and D below), deviate in height from the start and end parts of a strip (Region B and C).
Page 159
Conditions Descriptions Data end The first (for the left edge) or the last (for the right edge) valid profile data point in the measurement region. Left edge data end Right edge data end Measurement region Void Gaps in the data that are larger than the maximum void threshold. Gap >...
Page 160
Left and Right Edge Conditions Examples Left: Rising Right: Data end, void Strip 0 Left: Data end, void Strip 0 Right: Falling Left: Falling Right: Rising Strip 0 t r i p t e p d g e e f i n i t i o n S The Strip tool detects step edges based on the parameters Base Type, Edge Transition Width, Edge Support Width and Minimum Edge Height.
Page 161
Last point used for fitted line Projected edge point Back off by Edge Transition Width > Edge Height Last data point of continuous section First data point deviates by more than Edge Height The algorithm then backs off by the Edge Transition Width and uses the data up to the back-off point to create the fitted line and projects the edge point on the line.
Script A Script measurement can be used to program a custom measurement using a simplified C based syntax. A script measurement can produce a measurement value and a measurement decision. Refer to Script Measurement (page 91) for more information on the script syntax. To create or edit a Script measurement: 1 Add a new Script measurement or select an existing Script measurement.
Whole Part Measurement Tools Whole part measurement involves capturing a sequence of laser profiles, identifying discrete objects, and measuring properties of those objects, such as volume or maximum height. Multiple measurements can be performed on each part, limited only by the available CPU resources. The part measurement tools supported by Gocator sensors are summarized below.
Page 164
Measurement Examples Height Measures maximum height, minimum height, or the Height height at the 2D centroid in the XY plane, or the 3D centroid in XYZ space. Refer to Height (page 172). Centroid X Measures the x-position of the part’s 2D centroid in the XY plane, or the 3D centroid in XYZ space.
Page 165
Measurement Examples Ellipse Minor ELLIPSE MINOR Measures the minor axis length of an ellipse fitted to the part’s shape in the XY plane. Refer to Ellipse Minor (page 174). Ellipse Ratio RATIO: 1 Measures the minor/major axis ratio of an ellipse fitted to the part.
Page 166
Measurement Examples Bounding Box Width Width Measures the width of the smallest box that Width encapsulates the part. Refer to Bounding Box Width (page 179). Bounding Box Length Measures the length of the smallest box that encapsulates the part. Refer to Bounding Box Length (page 180). Height Height Gocator 2000 &...
Measurement Types Area An Area measurement determines part area in the XY plane. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Area measurement: 1 Add a new Area measurement or select an existing Area measurement. 2 Provide minimum and maximum constraints for a decision.
Volume A Volume measurement determines the volume of a part. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Volume measurement: 1 Add a new Volume measurement or select an existing Volume measurement. 2 Provide minimum and maximum constraints for a decision.
Centroid X A Centroid X measurement determines the x-position of the 2D or 3D centroid of a part. The measurement value can be compared with minimum and maximum constraints to yield a decision. The result is relative to the vertical Bounding Box X (page 177). To create or edit a Centroid X measurement: 1 Add a new Centroid X measurement or select an existing Centroid X measurement.
Centroid Y A Centroid Y measurement determines the y-position of the 2D or 3D centroid of a part. The measurement value can be compared with minimum and maximum constraints to yield a decision. The y-coordinate is relative to the vertical Bounding Box Y (page 178). To create or edit a Centroid Y measurement: 1 Add a new Centroid Y measurement or select an existing Centroid Y measurement.
Centroid Z A Centroid Z measurement determines the z-position of the 2D or 3D centroid of a part. The measurement value can be compared with minimum and maximum constraints to yield a decision. The z-position is relative to the sensor's system coordinate. To create or edit a Centroid Z measurement: 1 Add a new Centroid Z measurement or select an existing Centroid Z measurement.
Height A Height measurement determines the height (thickness) of a part. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit a Height measurement: 1 Add a new Height measurement or select an existing Height measurement. 2 Specify the height type.
Ellipse Angle An Ellipse Angle measurement determines the orientation angle of an ellipse fitted to the part’s area in the XY plane. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Ellipse Angle measurement: 1 Add a new Ellipse Angle measurement or select an existing Ellipse Angle measurement.
Ellipse Minor An Ellipse Minor measurement determines the minor axis length of an ellipse fitted to the part’s area in the XY plane. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Ellipse Minor measurement: 1 Add a new Ellipse Minor measurement or select an existing Ellipse Minor measurement.
Ellipse Major An Ellipse Major measurement determines the major axis length of an ellipse fitted to the part’s area in the XY plane. The measurement value can be compared with minimum and maximum constraints to yield a decision. To create or edit an Ellipse Major measurement: 1 Add a new Ellipse Major measurement or select an existing Ellipse Major measurement.
Ellipse Ratio An Ellipse Ratio measurement determines the minor/major axis ratio of an ellipse fitted to the part’s area in the XY plane. The measurement value can be compared with minimum and maximum constraints to yield a decision. The axis ratio for a very elongated ellipse will be close to zero; the axis ratio for a nearly circular ellipse will be close to one.
Bounding Box X A Bounding Box X measurement determines the x-position of the smallest rectangle box that encapsulates the part. The measurement value can be compared with minimum and maximum constraints to yield a decision. A bounding box can be vertical or rotated. A vertical bounding box provides the absolute position from which the Whole Part's Centroids tools are referenced from.
Bounding Box Y A Bounding Box Y measurement determines the y-position of the smallest rectangle box that encapsulates the part. A bounding box can be vertical or rotated. A vertical bounding box provides the absolute position (bottom left corner) from which the Whole Part's Centroids tools are referenced from. When rotation is enabled, the bounding box is rotated by the angle of an ellipse fitted to the part data.
Bounding Box Width A Bounding Box Width measurement determines the width of the smallest rectangle box that encapsulates the part. When rotation is enabled, the bounding box is rotated by the angle of an ellipse fitted to the part data. The width reports the dimension of the box in the direction of the minor axis.
Bounding Box Length A Bounding Box Length measurement determines the height (thickness) of the smallest rectangle box that encapsulates the part. When rotation is enabled, the bounding box is rotated by the angle of an ellipse fitted to the part data. The length reports the dimension of the box in the direction of the major axis.
Script Whole-part script measurements use the same syntax and functions as the profile script measurements. Refer to Script Measurement (page 91) for more information. Gocator 2000 & 2300 Series Measurement •...
Output Output Page Output configuration tasks are performed using the Output Page. Gocator sensors can transmit laser profiles and measurement results to a variety of external devices using a variety of output interface options. Element Description Ethernet Panel Use the Ethernet panel to select the data sources that will be transmitted via Ethernet. Digital Output 0 Panel Use the Digital Output 0 panel to select the data sources that will be combined to produce a digital output pulse on Output 0.
Ethernet Control and Output A sensor uses TCP messages (Gocator Protocol) to exchange commands, video, laser profile, intensity and measurement results with client computers. The sensor can also exchange commands and measurement results with a PLC using ASCII, Modbus TCP or EtherNet/IP protocol. Refer to Gocator Protocol (page 253), ASCII Protocol (page 296), Modbus TCP Protocol (page 284) and EtherNet/IP Protocol for the specification of these protocols.
Page 184
To exchange results using ASCII messages: 1 Navigate to the Ethernet panel. 2 Select ASCII in the Protocol Option. 3 Select the Operation Mode. In asynchronous mode, the data results are transmitted when they are available. In polling mode, users send commands on the data channel to request the latest result.
Page 185
To receive commands and send results using Modbus TCP messages: 1 Navigate to the Ethernet panel. 2 Select Modbus in the Protocol Option. Unlike using the Gocator Protocol, there is no need to select which measurement items to output. The Ethernet panel will list the register addresses that are used for Modbus TCP communication.
Page 186
To receive commands and send results using EtherNet/IP messages: 1 Navigate to the Ethernet panel. 2 Select EtherNet/IP in the Protocol Option. Unlike using the Gocator Protocol, there is no need to select which measurement items to output. The Ethernet panel will list the register addresses that are used for EtherNet/IP messages communication. The EtherNet/IP Protocol can be used to operate a sensor.
Digital Outputs Gocator sensors can convert measurement decisions or software commands to digital output pulses, which can then be used to output to a PLC or to control external devices, such as indicator lights or air ejectors. A digital output can act as a measurement valid signal to allow external devices to synchronize to the timing at which measurement results are output.
Page 188
4 Specify a Signal type. The signal type specifies whether the digital output is a continuous signal or a pulsed signal. If the signal is continuous its state is maintained until the next transition occurs. If the signal is pulsed, the user specifies the pulse width and how it is scheduled.
Page 189
To respond to software scheduled commands: 1 Navigate to the Digital Output 0 or Digital 1 panel. 2 Set Event to Software. 3 Specify a Signal type. The signal type specifies whether the digital output is a continuous signal or a pulsed signal. If the signal is continuous, its state is maintained until the next transition occurs.
Analog Output Gocator sensors can convert a measurement result or software request to an analog output. Each sensor supports one analog output channel. For the Gocator 2000 series, refer to Analog Output (page 342) for information on wiring analog output to an external device.
Page 191
The values specified here determine the minimum and maximum current values in milliamperes. The invalid current value is used when a measurement value is not valid. If invalid is not checked, the output holds the last value when a measurement value is not valid. 6 Specify if the output is Immediate or Scheduled.
Page 192
Serial Output The Gocator’s web interface can be used to select measurement values and decisions to be transmitted via RS-485 serial output. Each sensor has one serial output channel. Refer to ASCII Protocol (page 296) for serial connection parameters and data formats. For Gocator 2000 sensors, refer to Serial Output (page 341) for information on wiring serial output to an external device.
Toolbar The tool bar is the central place for performing common operations. This chapter explains how to use the toolbar to manage the sensor configurations and to operate the sensor. Element Description Configuration Controls Use the configuration controls to manage sensor settings. Recorded Data Controls Use the recorded data controls to download, export and upload recorded data.
Saving and Loading Settings When you change sensor settings using the Gocator web interface, some changes are saved automatically, while other changes are temporary until you take action to save them. The following table summarizes the types of information that can be saved in a sensor. Saved Information Information Type Behavior...
Page 195
To overwrite an existing pair of configuration and template files: 1 Select an existing file name in the File Name drop list. 2 Click the Save button. A dialog will be prompted to confirm overwriting the existing files. The configuration and the template will be saved to flash memory using the selected name.
Managing Multiple Settings A Gocator can store multiple sets of configurations and templates. This can be used when one set of equipment is used for different purposes or with different constraints during separate production runs. For example, width decision constraints might be loose during one production run and tight during another depending on the desired grade of the part.
Recording and Playback Gocator sensors have the ability to record and replay data. This feature is most often used for troubleshooting measurements, but can also be helpful during setup. Recording and playback are controlled by using commands in the tool bar. RECORD START SNAPSHOT...
Downloading, Exporting and Uploading Recorded Data Recorded data can be downloaded or exported to the client computer or uploaded to the Gocator. Export is often used for processing the recorded data using 3rd party tools. Recorded data can also be downloaded in a binary format.
Page 199
Similarly, recorded intensity data can be exported to a bitmap (.BMP format). To export recorded intensity data to BMP: 1 Toggle the Data Source to Replay. 2 Press the Export To BMP button. Select Export Intensity as BMP. Only the intensity data in the current replay location is exported. Use the step button to move to a different replay location.
Converting Recorded Data To Different Formats After exporting the recorded data to CSV, the Gocator CSV Converter Tool can be used to convert the exported profiles or part data into different formats, including ASCII (XYZI), 16-bit BMP, 16-bit PNG and GenTL formats.
Dashboard Dashboard Page The Dashboard Page summarizes logged events, sensor health information, and measurement statistics. Element Description State and Health Information Displays sensor state and health information. Measurement Statistics Displays measurement statistics. Metric Panel Summarizes important performance statistics. Event Log Displays log data from the sensor.
State and Health Information The following state and health information is available on the Dashboard: Dashboard Health Values Name Description System State Current system state (Ready or Running). Speed Current laser/camera speed (Hz). Firmware Version Gocator firmware version. Interface Version Gocator interface version.
Page 203
Measurement Statistics Statistics are displayed for each measurement that has been configured on the Measurement Page. The following information is available for each measurement: Dashboard Measurement Statistics Name Description Value The most recent measurement value. Minimum/Maximum Value The minimum and maximum measurement values that have been observed. Average The average of all measurement results collected since the sensor was started.
Metric Panel Metric panel displays two important performance statistics in real-time: CPU Load and Current Frame Rate (Speed). The CPU Load bar in the Metric panel (at the top of the interface) displays how much of the CPU is being utilized. A warning will appear if the sensor drops profiles because CPU is over utilized. The Speed bar displays the frame rate of the sensor.
Connection and Maintenance Connection Page Gocator’s security, file management and maintenance tasks are performed on the Connection Page. Element Description System Panel Use the System panel to configure sensor network and boot-up settings. Available Sensor Panel Use the Available Sensor panel to assign or unassign Buddy sensors. Security Panel Use the Security panel to change passwords.
Network Settings The network settings need to be configured to match the network to which the Gocator sensors are connected. To configure the network settings: 1 Navigate to the System panel. Click the arrow next to Networking to expand the panel. 2 Specify the Connect To setting.
Auto Starting Sensors With the Autostart setting enabled, laser profiling and measurement functions will begin automatically when the sensor is powered on. This setting is necessary when the sensor will be used without a computer connected. To enable/disable Autostart: 1 Check/Uncheck Autostart option box. 2 Save configuration.
Buddy Assignment In a dual sensor system, the Main sensor assumes control of the Buddy sensor after the Buddy sensor is assigned to the Main sensor. Configuration for both sensors can be performed through the Main sensor’s interface. Main and Buddy sensors must be assigned unique IP addresses before they can be used on the same network.
Security Gocator sensors can be secured with passwords to prevent unauthorized access. Each sensor has two accounts: Administrator and Technician. Gocator Account Types Account Description Administrator The Administrator account has privileges to view and edit all settings, and to perform setup procedures such as sensor calibration. Technician The Technician account has privileges to view the Dashboard Page and to Start or Stop the sensor.
File Management The Files panel can be used to manage configurations and templates. Element Description File Type Specifies the type of files to manage (Configuration and Profile Template). File Name Field Used to provide a file name when saving files. File List Displays the files that are currently saved in the sensor’s flash storage.
Maintenance The Maintenance panel can be used to create sensor backups, restore from a backup, or restore to factory defaults. Backup files contain all of the information stored on board a sensor, including configuration, calibration, and template. It is recommended that Administrators create a backup file in the unlikely event that a sensor fails and a replacement sensor is needed.
If the client computer is not connected to the Internet, firmware can be downloaded and transferred to the client computer by using another computer to download the firmware from the LMI Technologies website: http://www.lmi3D.com/support/downloads To upgrade the firmware 1 Navigate to the Maintenance panel.
Recovery Sensor Recovery Tool If a sensor’s network address or administrator password is forgotten, the sensor can be discovered on the network and/or restored to factory defaults by using a special software tool called the Sensor Discovery tool. This software tool can be obtained from the downloads area of LMI’s website at http://www.lmi3D.com.
Gocator Configuration File Configuration files contain settings that govern system behavior in the Running state. Configuration are saved in XML format. Elements contain three types of values: settings, constraints, and properties. Settings are input values that can be edited. Constraints are read-only limits that define the valid values for settings.
Page 215
Element Type Description SystemDomain Setting for units for trigger delay and output scheduling (Ignored when TriggerSource is Time or Encoder): 0 – Microseconds 1 – Millimeters FrameRate Setting for frame rate (Hz) (Applicable for time-based triggering). FullFrameRateEnable Setting to enable or disable full frame rate operation: 0 –...
Page 216
Element Type Description CalibratedZ Property for system-calibrated active area Z position (mm). CalibratedWidth Property for system-calibrated active area width (mm). CalibratedHeight Property for system-calibrated active area height (mm). a l i b rat i o n The Calibration element contains settings related to alignment and travel calibration. Calibration Child Elements Element Type...
Page 217
Element Type Description YGapFilling\Enable Setting for enable or disable Y Gap Filling filter: 0 – Disable 1 – Enable YGapFilling\Window Setting for Y Gap Filling filter window (mm). YGapFilling\WindowMin Minimum window size (mm). YGapFilling\WindowMax Maximum window size (mm). e n S o r S e n S o r Each Sensor element contains settings related to an individual sensor.
Page 218
Element Type Description FrontCameraX Property for x position of image ROI (pixels). FrontCameraY Property for y position of image ROI (pixels). FrontCameraWidth Property for width of image ROI (pixels). FrontCameraHeight Property for height of image ROI (pixels). CalibratedX Property for sensor calibrated active area X position (mm). CalibratedZ Property for sensor calibrated active area Z position (mm).
Profile The Profile element contains settings that affect profile measurements. Simple child elements in Profile are defined below: Profile Child Elements Element Type Description MeasurementOptions String Constraint for available measurement types - comma delimited list (e.g. “Width, Distance”). The Profile element also contains two significant sub-elements: Anchor and Measurements. The Anchor element defines profile anchoring behavior, while the Measurements element contains one sub-element for each requested profile measurement.
Page 220
i n e A Line element defines measurement areas used to calculate a line. Line Child Elements Element Type Description Area[2] Area 2 area elements used for line fitting. n C h o r An anchor element defines settings for anchoring (fixturing in the user interface). Anchor Child Elements Element Type...
Page 221
Width Child Elements Element Type Description Name String Setting for measurement name. Source Setting for profile source. DecisionMin Setting for decision threshold minimum (mm). DecisionMax Setting for decision threshold maximum (mm). AbsoluteResult Setting for selecting absolute or signed result: 0 – Signed result 1 –...
Page 222
Distance Child Elements Element Type Description Name String Setting for measurement name. Source Setting for profile source. DecisionMin Setting for decision threshold minimum (mm). DecisionMax Setting for decision threshold maximum (mm). Feature[2] Feature Elements for feature detection. SmoothingEnabled Setting to enable or disable the smoothing filter: 0 –...
Page 223
Element Type Description SmoothingEnabled Setting to enable or disable the smoothing filter: 0 – Disable 1 – Enable SmoothingWindow Setting for the smoothing window (frames) HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SourceOptions String Constraint for eligible profile sources (comma-delimited list).
Page 224
Element Type Description HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SourceOptions String Constraint for eligible profile sources (comma-delimited list). SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S n g l e An AngleX element defines settings for a profile angle-x measurement.
Page 225
Element Type Description HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SourceOptions String Constraint for eligible profile sources (comma-delimited list). SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S n t e r S e C t An IntersectZ element defines settings for a profile intersect-z measurement.
Page 226
Element Type Description SourceOptions String Constraint for eligible profile sources (comma-delimited list). SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S n t e r S e C t r e a An IntersectArea element defines settings for a profile intersect area measurement.
Page 227
e aS u r e m e n t S i f f e r e n C e r e a A difference area element defines settings for difference area measurement. Difference Area Child Elements Element Type Description Name String Setting for measurement name.
Page 228
e aS u r e m e n t S i r C l e a d i u S A CircleRadius element defines settings for a profile circle radius measurement. CircleRadius Child Elements Element Type Description Name String Setting for measurement name. Source Setting for profile source.
Page 229
Element Type Description DecisionMin Setting for decision threshold minimum (mm). DecisionMax Setting for decision threshold maximum (mm). Area Area Element for measurement area. SmoothingEnabled Setting to enable or disable the smoothing filter: 0 – Disable 1 – Enable SmoothingWindow Setting for the smoothing window (frames) HoldEnabled Setting to enable or disable the hold filter: 0 –...
Page 230
Element Type Description SmoothingWindow Setting for the smoothing window (frames) HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SourceOptions String Constraint for eligible profile sources (comma-delimited list). SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames).
Element Type Description SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S A Gap element defines settings for a profile gap measurement. Gap Child Elements Element Type Description...
Page 232
Gap Child Elements Element Type Description Name String Setting for measurement name. Source Setting for profile source. DecisionMin Setting for decision threshold minimum (mm). DecisionMax Setting for decision threshold maximum (mm). ReferenceSide Setting for reference Side: 0 – Left 1 – Right GapWidthMax Setting for maximum gap width (mm).
Page 233
Element Type Description SelectType Setting for selecting a groove out of multiple grooves: 0 – Maximum depth. 1 – 0-based index, from left to right. 2 – 0-based index, from right to left. SelectN Index when SelectType is set to 1 or 2. WidthMin Setting for minimum groove width (mm).
Page 234
Element Type Description HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SourceOptions String Constraint for eligible profile sources (comma-delimited list). SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S ro ov e A Groove Z element defines settings for a profile groove Z measurement.
Page 235
Strip X Child Elements Element Type Description Name String Setting for measurement name. Source Setting for profile source. DecisionMin Setting for decision threshold minimum (mm). DecisionMax Setting for decision threshold maximum (mm). Area Area Element for measurement area. Location Setting for the location of the strip: 0 –...
Page 236
e aS u r e m e n t S t r i p A Strip Z element defines settings for a profile strip Z measurement. Strip X Child Elements Element Type Description Name String Setting for measurement name. Source Setting for profile source.
Page 237
Element Type Description SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S t r i p i d t h A Strip Width element defines settings for a profile strip width measurement. Strip X Child Elements Element Type...
Page 238
Element Type Description SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S t r i p e i g h t A Strip height element defines settings for a profile strip height measurement. Strip X Child Elements Element Type...
Page 239
Element Type Description HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SourceOptions String Constraint for eligible profile sources (comma-delimited list). SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S C r i p t A Script element defines settings for a script measurement.
Part The Part element contains settings that affect part measurements. Simple child elements in Part are defined below: Part Child Elements Element Type Description MeasurementOptions String Constraint for available measurement types - comma delimited list (e.g. “Area, Volume”). The Part element also contains two significant sub-elements: Detection and Measurements. The Detection element defines the part detection behavior, while the Measurements element contains one sub-element for each requested part measurement.
Page 241
Element Type Description SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S a rt o l u m e A PartVolume element defines settings for a volume measurement. Part Volume Child Elements Element Type...
Page 242
Part Centroid X Child Elements Element Type Description Name String Setting for measurement name. DecisionMin Setting for decision threshold minimum (mm). DecisionMax Setting for decision threshold maximum (mm). Type Setting for measurement type: 0 – 2D Centroid 1 – 3D Centroid SmoothingEnabled Setting to enable or disable the smoothing filter: 0 –...
Page 243
Element Type Description SmoothingEnabled Setting to enable or disable the smoothing filter: 0 – Disable 1 – Enable SmoothingWindow Setting for the smoothing window (frames) HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SmoothingWindowMin Constraint for smoothing window minimum (frames).
Page 244
Part Ellipse Angle Child Elements Element Type Description Name String Setting for measurement name. DecisionMin Setting for decision threshold minimum (degrees). DecisionMax Setting for decision threshold maximum (degrees). SmoothingEnabled Setting to enable or disable the smoothing filter: 0 – Disable 1 –...
Page 245
Element Type Description HoldEnabled Setting to enable or disable the hold filter: 0 – Disable 1 – Enable SmoothingWindowMin Constraint for smoothing window minimum (frames). SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S a rt o u n d i n g A PartBoundingBoxY element defines settings for a bounding box Y measurement.
Page 246
Element Type Description SmoothingWindowMax Constraint for smoothing window maximum (frames). e aS u r e m e n t S a rt o u n d i n g e n g t h A PartBoundingBoxLength element defines settings for a bounding box length measurement. Part Bounding Box Length Elements Element Type...
Output The Outputs element has the following sub-element types: Ethernet, Serial, Analog, and Digital Output. Each of these subelements defines the output settings for a different type of Gocator output. The Source identifiers that are used with Video, profile, part and intensity outputs are profile source identifiers.
Page 248
Element Type Description ProfileIntensityOptions String Constraint for eligible profile intensity sources (comma-delimited list). RawProfileOptions String Constraint for eligible raw profile sources (comma-delimited list). PartOptions String Constraint for eligible part sources (comma-delimited list). PartIntensityOptions String Constraint for eligible part intensity sources (comma-delimited list). ValueOptions String Constraint for eligible value sources (comma-delimited list).
Page 249
Analog Child Elements Element Type Description CurrentMin Setting for minimum output current (mA). CurrentMax Setting for maximum output current (mA). CurrentInvalid Setting for invalid output current (mA). CurrentInvalidEnable 0 – Output keeps currently value if measurement is invalid. 1 – Outputs CurrentInvalid if measurement is invalid. DataScaleMin Setting for measurement value associated with the minimum current.
Page 250
Element Type Description Event Setting for which event control the output: 1 – Measurement 2 – Software 4 – Exposure ScheduleEnable Setting for scheduled output mode. When unscheduled, output updates immediately. When scheduled, output updates according to a target value in software command, or a delay.
Calibration File The calibration file, transform.xml, contains settings that define the transformation from sensor coordinates to system coordinates, encoder resolution and distance (in direction of travel) between main and buddy sensor. Use Read and Write File command to modify the calibration file. Calibration Example: <?xml version="1.0"...
SysCal The SysCal element contains the calibration record for both main and buddy sensor. The version attribute defines the version of the record format. <SysCal version="1"> SysCal Child Elements Element Type Description YDomain Reserved. Must be zero. YResolution Encoder Resolution (mm/tick). YSpeed Travel Speed (mm/s).
Gocator Protocol This chapter describes TCP and UDP commands and data formats used by a client computer to communicate with Gocator sensors. Network communication enables the client to: • Discover Main and Buddy sensors on an IP network and re-configure their network addresses. •...
Concepts Discovery Sensors ship with the following default network configuration: Setting Default DHCP 0 (disabled) IP Address 192.168.1.10 Subnet Mask 255.255.255.0 Gateway 0.0.0.0 (disabled) The Get Address and Set Address discovery commands can be used to modify a sensor’s network configuration.
Modes A Gocator system can operate in the following modes. System Modes Mode Description Video Sends raw video. AlignCalibrate Performs alignment calibration. TravelCalibrate Performs travel calibration. ExpCalibrate Performs automatic exposure adjustment. ProfileTemplate Performs profile template registration. ProfileMeasure Performs profile measurements (default mode). PartMeasure Performs part detection and measurements.
The minor part is updated when backward-compatible additions are made to the Gocator Protocol. The major part will be updated in the event that breaking changes are made to the Gocator Protocol. The firmware version refers to the version of the Gocator’s firmware installed on each individual sensor. The client can upgrade the Gocator’s firmware by sending the Upgrade command.
Status Codes Label Value Description Command succeeded. Failed Command failed. Invalid State -1000 Command is not valid in the current state. Item Not Found -999 A required item (e.g. file) was not found. Invalid Command -998 Command is not recognized. Invalid Parameter -997 One or more command parameters are incorrect.
Result Format Result messages that are received on the Data and Health channels have a common structure. Each result message has a flexible number of attributes in its header followed by a variable number of data blocks after the header. The structure of result messages is defined below. Result Field Type...
Discovery Commands Get Address The Get Address command is used to discover Gocator sensors across subnets. Command Field Type Description length Command size, in bytes. Command identifier (0x0001) signature Magic number (0x0000504455494D4C). identifier Device identifier (serial number) or zero to discover unknown devices. Reply Field Type...
Set Address The Set Address command modifies the network configuration of a Gocator sensor. Upon receiving the command, the Gocator will perform a reset. User should wait for 30 seconds before re-connecting to the Gocator. Command Field Type Description length Command size, in bytes.
Upgrade Commands Get Protocol Version The Get Protocol Version command reports the Upgrade protocol version of the connected sensor. Command Field Type Description length Command size – in bytes. Command identifier (0x0100). Reply Field Type Description length Reply size – in bytes. Reply identifier.
Field Type Description stage Current upgrade stage: -1 – Upgrade Failed 0 – Upgrade Completed 1 – Upgrade in Progress progress Percentage completed – valid when stage is Upgrade in Progress. Get Upgrade Log The Get Upgrade Log command can retrieve an upgrade log in the event of upgrade problems. Command Field Type...
Control Commands Get Protocol Version The Get Protocol Version command reports the Control protocol version of the connected sensor. Command Field Type Description length Command size – in bytes. Command identifier (0x4511). Reply Field Type Description length Reply size – in bytes. Reply identifier.
Field Type Description calibrationType Current calibration state: 0 – Not calibrated 1 – Auto calibrated 2 – Manual calibrated hasBuddy Current buddy assingment state: 0 – No Buddy assigned 1 – Buddy assigned BuddyInfo BuddyInfo Assigned Buddy information (not present if hasBuddy is 0). sensorCount Count of visible sensors.
Change Password The Change Password command is used to change log-in credentials for a user. Command Field Type Description length Command size – in bytes. Command identifier (0x4004). user type User account: 1 – Administrator 2 – Technician password[64] char New password (null-terminated).
Reply Field Type Description length Reply size – in bytes. Reply identifier. status Reply status. count Number of file names returned. name[count][64] char List of file names. Copy File The Copy File command copies a file from a source to a destination within the connected sensor. Copy a saved configuration to "_live.cfg"...
Command Field Type Description length Command size – in bytes. Command identifier (0x1006). fileName[64] char File name (null-terminated). fileSize File size – in bytes. file[fileSize] byte File content. Reply Field Type Description length Reply size – in bytes. Reply identifier. status Reply status.
Set Default File The Set Default File command sets the name of a default file that will be loaded at boot time. Default files can be defined for configuration, calibration, and profile templates (differentiated by extension). Command Field Type Description length Command size –...
Field Type Description Reply identifier. status Reply status. mode[16] char Mode name (null-terminated). Set Mode The Set Mode command sets the name of the current system mode. Command Field Type Description length Command size – in bytes. Command identifier (0x1004). mode[16] char Mode name (null-terminated).
Field Type Description status Reply status. encoder Current encoder value, in ticks. Start The Start command starts the sensor system (system enters the Running state). Command Field Type Description length Command size – in bytes. Command identifier (0x100D). reserved Reserved field – set to 0. Reply Field Type...
Reply Field Type Description length Reply size – in bytes. Reply identifier. status Reply status. Trigger The Trigger command applies a software trigger to the system. The system must be configured to accept software triggers and must be in the Running State. Command Field Type...
Scheduled Analog Output Scheduled Analog Output command schedules a analog output event. The analog output must be configured to accept software scheduled command and is in the Running State. Refer to Analog Output (page 190) on how to setup the digital output. Command Field Type...
Reply Field Type Description length Reply size – in bytes. Reply identifier. status Reply status. Backup The Backup command creates a backup of all files stored on the connected sensor and downloads the backup to the client. Command Field Type Description length Command size –...
Command Field Type Description length Command size – in bytes. Command identifier (0x4301). resetAddress Specifies whether network address should be restored to default: 0 – Do not reset address 1 – Reset address Reply Field Type Description length Reply size – in bytes. Reply identifier.
Clear Calibration The Clear calibration command deletes the calibration results. Command Field Type Description length Command size – in bytes. Command identifier (0x4102). Reply Field Type Description length Reply size – in bytes. Reply identifier. status Reply status. Gocator 2000 & 2300 Series Ethernet Protocol •...
Data Results A Data Result message adheres to the general structure for result messages as defined in Result Format (page 258) A Data Result contains a variable number of blocks depending on the sources selected for Ethernet output. Each selected source contributes two data blocks (and accompanying data block descriptors): one block for attributes and one block for content such as video pixels or measurement results.
Field Type Description source Profile source. xResolution X resolution (nm). zResolution Z resolution (nm). xOffset X offset (nm). zOffset Z offset (nm). exposure Exposure (us). Set to zero if multiple exposure mode is used. reserved[N] A variable number of additional attributes may be included. Profile Data (resampled) Field Type...
Field Type Description yOffset Y offset (nm). zOffset Z offset (nm). reserved[N] A variable number of additional attributes may be included. Part Profile Data Field Type Description ranges[partLength] Range values (unit is z-resolution, 0x8000 represents null range). [partWidth] Dimensions and data type given by block descriptor. Z system coordinate = zOffset + zResolution * ranges[indexY][indexX] X system coordinate = xOffset + xResolution * indexX Y system coordinate = yOffset + yResolution * indexY...
Travel Calibration Data Field Type Description status Calibration result. Exposure Calibration Exposure Calibration Attributes Field Type Description dataType Data type (0x06). reserved{N] A variable number of additional attributes may be included. Exposure Calibration Data Field Type Description status Calibration result. exposure Calibrated exposure (us).
Measurement Measurement Attributes Field Type Description dataType Data type (0x10, 0x11, 0x12, or 0x20). measurementType Measurement type: 0x00 – Width (um) 0x01 – Height (um) 0x02 – Distance (um) 0x03 – Center X (um) 0x04 – Center Z (um) 0x05 – Position X (um) 0x06 –...
Page 281
Measurement Data Field Type Description value Result value. decision Result decision: 0 – Fail 1 – Pass Gocator 2000 & 2300 Series Ethernet Protocol •...
Uptime 2017 Time elapsed since boot-up or reset (seconds). Speed 2018 Current speed (Hz). Trigger Drops 2019 Number of dropped triggers. Digital Output Drops 2020 Output index Number of dropped digital outputs. Gocator 2000 & 2300 Series Ethernet Protocol •...
Page 283
Indicator Instance Value Analog Output Drops 2021 Output Index Number of dropped analog outputs. Serial Output Drops 2022 Output index Number of dropped serial outputs. Laser Temperature 2023 Laser temperature (degrees Celsius). Only available on sensors equipped with 3B-N laser. Digital Inputs 2024 Current status of digital input...
Modbus TCP Protocol Modbus TCP is designed to allow industrial equipment such as Programmable Logic Controllers (PLC), sensors and physical input/output devices to communicate over an Ethernet network. Modbus/TCP embeds a Modbus frame into a TCP frame in a simple manner. This is a connection- oriented transaction and every query expects a response.
Messages All Modbus TCP messages consist of a MBAP header (Modbus Application Protocol), a function code and a data payload. The MBAP header contains the following field: Modbus Application Protocol Header Fields Length (Bytes) Description Transaction ID Used for transaction pairing. The Modbus Client sets the value and the Server (Gocator) copies the value into its responses.
Page 286
The Data payload contains the registers that can be accessed by Modbus TCP messages. If a message access registers that are invalid, a reply with an exception is returned. Modbus Application Protocol Specification defines the exceptions and describes the data payload format for each function code. The Gocator data includes 16-bit, 32-bit and 64-bit data.
Registers Modbus registers are 16-bit wide and are either control registers or output registers. Control registers are used to control the sensor states(e.g. start, stop or calibrate a sensor), and the output registers report the sensor states, stamps measurement values and decisions. User can read multiple output registers using a single Read Holding Registers or a single Read Input Registers command.
Value Name Description Load Configuration Activate a configuration file. Registers 1 - 21 specifies the filename. Output Registers Output registers are used to output states, stamps and measurements results. Each register address holds a 16-bit data value. State report the current sensor state. State Register Map Register Name...
Measurement Registers Measurement results are reported in pairs of value and decision. Measurement values are 32-bit wide and decisions are 8-bit wide. The measurement ID defines the register address of each pair. The register address of the first word can be calculated as (1000 + 3 * ID). For example, a measurement with ID set to 4 can be read from registers 1012 (high word), 1013 (low word) and the decision at 1015.
EtherNet/IP Ethernet/IP is an industrial protocol that allows bidirectional data transfer with PLCs. It encapsulates the object oriented Common Industrial Protocol (CIP). This chapter describes the EtherNet/IP messages and data formats. EtherNet/IP communication enables the client to: • Switch to a different active configuration. •...
Basic Object Identity Object (Class 0x01) Attribute Name Type Value Description Access Vendor ID UINT 1256 ODVA Provided Vendor ID Device Type UINT Device Type Product Code UINT 2000 Product Code Revision USINT Byte 0 - Major Revision USINT Byte 1 - Minor Revision Serial number UDINT 32-bit value...
Ethernet Link Object (Class 0xF6) The Ethernet Link Object contains read-only attributes such as MAC Address (Attr.3). See Volume 2, Chapter 5-4 of the CIP Specification for a complete listing of Ethernet Link object attributes. Attribute Name Type Value Description Access Interface UDINT...
Assembly Object (Class 0x04) The Gocator Ethernet/IP object model includes 3 different assembly objects: Command, State and Sample. All assembly object instances are static. Data in a data byte array in an assembly object are stored in the Big Endian format. Command Object The command object is used to start, stop, calibrate and switch configuration on the sensor.
Sensor State Assembly Object The sensor state assembly object contains sensor's states such as the current sensor temperature, frame count and encoder values. Sensor State Assembly Information Value Class Instance 0x320 Number of Attributes Length 100 bytes Supported Service 0x0E (Get Single Attribute) Attributes 1 and 2 are not implemented.
Sample State Assembly The sample state object contains measurements and their associated stamp information. Sample State Assembly Information Value Class Instance 0x321 Number of Attributes Length 180 bytes Supported Service 0x0E (Get Single Attribute) Attribute 3 Attribute Name Type Value Description Access Command...
ASCII Protocol This chapter describes the ASCII protocol available over the Ethernet and serial outputs. The protocol communicates using ASCII strings and the output result format from the sensor is user-configurable. Ethernet Communication Gocator's Ethernet communication is bidirectional. Measurement results are sent on the Ethernet output in one of two modes: Polling or Asynchronous.
Parameter Value Stop Bits Parity None Data Bits Baud Rate (b/s) 115200 Format ASCII Command and Reply Format Commands are sent from the client to the Gocator. Command strings are not case sensitive The command format is: <COMMAND><DELIMITER><PARAMETER><TERMINATION> If a command has more than one parameter, each parameter is separated by the delimiter. Similarly, the reply has the following format: <STATUS><DELIMITER><OPTIONAL RESULTS><DELIMITER>...
Standard Result Format: Field Shorthand Length Description MeasurementStart Start of measurement frame. Type Hexadecimal value that identifies the type of measurement. The measurement type is the same as defined inData Results (page 276) section. Decimal value that represents the unique identifier of the measurement.
Control Commands Optional parameters are shown in italic. Placeholder for data is surrounded by brackets (<>). In the examples, the delimiter is set to ','. Start The Start command starts the sensor system (enters the Running state). This command is only valid when the system is in the Ready state.
Formats Message Format Command Trigger, start target The start target (optional) is the time or encoder position at which the sensor will be started. The time and encoder target value should be set by adding a delay to the time or encoder position returned by the Stamp command. The delay should be set such that it covers the command response time of the Start command.
OK, 6 OK,test.cfg LoadConfig,wrongname.cfg Alignment Calibration The Alignment Calibration command performs an alignment calibration based on the calibration settings in the sensor's live configuration. A reply to the command is sent when the calibration has completed or failed. The command is timed out if there has been no progress after one minute. Formats Message Format...
Data Commands Optional parameters are shown in italic. Placeholder for data is surrounded by brackets (<>). In the examples, the delimiter is set to ','. Get Result The Get Result command retrieves measurement values and decisions. Formats Message Format Command Result, measurement ID, measurement ID...
Standard formatted measurement data with a non-existent measurement of ID 2: Value,2 ERROR,Specified measurement ID not found. Please verify your input Custom formatted data string (%time, %value[0]): Value OK, 1420266101, 151290 Get Decision The Get Decision command retrieves measurement decisions. Formats Message Format...
Health Commands Optional parameters are shown in italic. Placeholder for data is surrounded by brackets (<>). In the examples, the delimiter is set to ','. Get Health The Get Health command retrieves health indicators. Refer to (page 303) for details on health indicators Formats Message...
Gocator sensors. The latest version of the SDK can be downloaded from the downloads section, under the support tab, on the LMI Technologies website http://www.lmi3D.com. The following components are included in the SDK.
GenTL Driver GenTL is an industry standard method of controlling and acquiring data from an imaging device. Gocator provides a GenTL driver that allows GenTL compliant third party software (e.g. Halcon and Common Vision Blox) to acquire and process 3D point clouds and intensity generated from the Gocator Whole Part Mode in real-time.
Refer to the documentations in the GenTL\ directory for instructions on how to interface to various third party software. Gocator GenTL driver packs the part output, intensity and stamps (e.g. time stamp, encoder index etc) into either a 16-bit RGB image or a 16-bit grey scale image. User can select the format in the Go2GenTL.xml setting file.
The following table shows how the stamp information is packed into the blue channel. A stamp is a 64-bit value packed into four consecutive 16-bit blue pixels, with the first byte position storing the most significant byte. Stamp Information from GenTL driver: Stamp Index Blue Pixel Position Details...
Page 309
Rows Details (max part height) .. 2* Intensity information. The width and height of the image represent the dimension in the x and (max part height) the y-axis. Together with the pixel value, each blue pixel represents an intensity value in the real-world coordinates.
Registers GenTL registers are multiple of 32-bit. The registers are used to control the operation of the GenTL driver, send commands to the sensors or to report the current sensor information. Register Map Overview Register Length Name Read/Write Description Address (bytes) WidthReg Specify the width of the returned images.
Setting XML File The setting file, Go2GenTL.xml, resides in the same directory as the Gocator GenTL driver. Users can set the resample mode and output format by changing the setting in this file. Element Type Description ResampleMode Settings to disable or enable resampling mode: 0 –...
Troubleshooting Review the guidance in this chapter if you are experiencing difficulty with a Gocator sensor system. If the problem that you are experiencing is not described in this chapter, please refer to Warranty and Return Policy (page 363) for further assistance. Mechanical/Environmental The sensor is warm.
Performance The sensor CPU level is near 100%. • Consider reducing the speed. If you are using a time or encoder trigger source, refer to Trigger (page 55) for information on reducing the speed. If you are using an external input or software trigger, consider reducing the rate at which you apply triggers.
Specification Gocator 2000 Series The Gocator 2000 series consists of the sensor models defined below. MODEL 2020 2030 2040 2050 2070 2080 Data Points / Profile Linearity Z 0.02 0.02 0.02 0.02 0.05 0.05 (+/- % of MR) Resolution Z (mm) 0.006 - 0.014...
Gocator 2300 Series The Gocator 2300 series consists of the sensor models defined below. MODEL 2330 2340 2350 2370 2380 Data Points / 1280 1280 1280 1280 1280 Profile Linearity Z 0.01 0.01 0.01 0.04 0.04 (+/- % of MR) Resolution Z 0.006 - 0.014 0.013 - 0.037...
Gocator 2000 I/O Connector The Gocator 20x0 I/O connector is a 19 pin, M16 style connector that provides power input, laser safety input, digital input, digital output, serial output, and analog output signals. This section defines the electrical specifications for Gocator I/O Connector pins, organized by function. Gocator I/O Connector Pins Function Pins...
Laser Safety Input The Safety_in+ signal should be connected to a voltage source in the range listed below. The Safety_in- signal should be connected to the ground/common of the source supplying the Safety_in+. Laser safety requirements Function Pins Safety_in+ 24 V 48 V Safety_in- Confirm the wiring of Safety_in- before starting the sensor.
Digital Outputs Each Gocator sensor has two optically-isolated outputs. Both outputs are open collector and open emitter, this allows a variety of power sources to be connected and a variety of signal configurations. Out_1 (Collector – Pin N and Emitter – Pin O) and Out_2 (Collector – Pin S and Emitter Pin T) are independent and therefore V+ and GND are not required to be the same.
Digital Inputs Every Gocator sensor has a single optically-isolated input. To use this input without an external resistor, supply 2.5 - 12 V to Pin D and GND to Pin H. Active High 2.5V to 12V Digital Input (Vdata) Trigger_in+ Trigger_in- USER_GND If the supplied voltage is greater than 12 V, connect an external resistor in series to Pin D.
Encoder Input Encoder input is provided by an external encoder and consists of 2 RS-485 signals. These signals are connected to Encoder_A and Encoder_B. ENCODER Encoder_B+ Encoder_B- Encoder_A- Encoder_A+ Common Mode Voltage Differential Threshold Voltage Max Data Function Pins Rate Encoder_A M, U -7 V...
Analog Output The Sensor I/O Connector defines one analog output interfaces: Analog_out1. Function Pins Current Range Analog_out1 P, F 4 – 20 mA ANALOG ANALOG ANALOG+ ANALOG+ ANALOG- ANALOG- Analog_out- Analog_out- Analog_out1+ Analog_out1+ Current Mode Voltage Mode To configure for voltage output, connect a 500 Ohm ¼ Watt resistor between Analog_out- and Analog_ out+ and measure the voltage across the resistor.
Gocator 2300 Power/LAN Connector The Gocator 2300 Power/LAN connector is a 14 pin, M16 style connector that provides power input, laser safety input and Ethernet. This section defines the electrical specifications for Gocator 2300 Power/LAN Connector pins, organized by function. Gocator Power Connector Pins Function Color...
Laser Safety Input The Safety_in+ signal should be connected to a voltage source in the range listed below. The Safety_in- signal should be connected to the ground/common of the source supplying the Safety_in+. Laser safety requirements Function Pins Safety_in+ 24 V 48 V Safety_in- Confirm the wiring of Safety_in- before starting the sensor.
Gocator 2300 I/O Connector The Gocator 2300 I/O connector is a 19 pin, M16 style connector that provides encoder, digital input, digital outputs, serial output, and analog output signals. This section defines the electrical specifications for Gocator 2300 I/O Connector pins, organized by function.
Digital Outputs Each Gocator sensor has two optically-isolated outputs. Both outputs are open collector and open emitter, this allows a variety of power sources to be connected and a variety of signal configurations. Out_1 (Collector – Pin 6 and Emitter – Pin 4) and Out_2 (Collector – Pin 5 and Emitter Pin 8) are independent and therefore V+ and GND are not required to be the same.
Digital Inputs Every Gocator sensor has a single optically-isolated input. To use this input without an external resistor, supply 3.3 - 12 V to Pin 1 and GND to Pin 2. Active High Trigger_in- Trigger_in+ 3.3V to 12V Digital Input (Vdata) USER_GND If the supplied voltage is greater than 12 V, connect an external resistor in series to Pin 1.
Common Mode Voltage Differential Threshold Voltage Max Data Function Pins Rate Encoder_A 7, 8 -7 V 12 V -200 mV -125 mV -50 mV 1 MHz Encoder_B 9, 10 -7 V 12 V -200 mV -125 mV -50 mV 1 MHz Ecnoder_Z 11, 12 -7 V...
Analog Output The Sensor I/O Connector defines one analog output interfaces: Analog_out. Function Pins Current Range Analog_out 17, 18 4 – 20 mA ANALOG_OUTPUT ANALOG_OUTPUT Analog_out- ANALOG- Analog_out- ANALOG- Analog_out1+ ANALOG+ Analog_out1+ ANALOG+ Current Mode Voltage Mode To configure for voltage output, connect a 500 Ohm ¼ Watt resistor between Analog_out+ and Analog_ out1- and measure the voltage across the resistor.
Master 100 The Master 100 accepts connections for power, safety, encoder, and provides digital output. Master Ethernet Port Master Host Port Master Power Port 48V Power Supply* (Pin 1) Sensor IO Port (Pin 1) Encoder/Output Port *Contact LMI for information regarding this type of power supply Connect the Master Power port to the Gocator's Power/LAN connector using the Gocator Power/LAN to Master cordset.
Master 200 The Master 200 accepts I/O connections for power, safety, encoder, serial output, analog output, digital output, as well as digital input, and distributes these signals among 1 or 2 connected sensors. CONNECTION TO SENSOR 2 CONNECTION TO SENSOR 1 LASER SAFETY SWITCH POWER SWITCH POWER...
Page 353
Sensor Port 1 and Port 2 Pins Gocator I/O Pin Master Pin Conductor Color DC_24-48V (White/Green &Black) and (Green/Black) GND_0VDC (White/Orange &Black) and (Orange/Black) Safety_in+ Blue/Black Safety_in- White/Blue & Black Trigger_in+ Grey Trigger_in- Pink Out_1+ Out_1- Blue Out_2+ Out_2- Orange Analog_out1+ Green Unused...
Master 400/800 The Master 400/800 provides sensor power, safety interlock and broadcasts system-wide synchronization information (ie. time, encoder count, encoder index and digital I/O states) to all devices on a sensor network. SENSOR PORTS 1-4 LED INDICATORS MASTER 400 FRONT SENSOR PORTS 5-8 SENSOR PORTS 1-4 LED INDICATORS...
Master 400/800 Electrical Specifications Electrical specifications for Master 400/800: Master 400 Power Supply Voltage +48VDC Power Supply current (Max.) Power Draw (Min.) Safety Voltage +12 to +48VDC Encoder signal voltage range RS485 Differential Digital input voltage range Logical LOW: 0 VDC to +0.1VDC Logical HIGH: +11 VDC to +22.5VDC When using a Master 400/800 it is crucial that its chassis be well grounded.
Master 1200/2400 The Master 1200/2400 provides sensor power, safety interlock and broadcasts system-wide synchronization information (i.e. time, encoder count, encoder index, and digital I/O states) to all devices on a sensor network. SENSOR PORTS 1-12 LED INDICATORS MASTER 1200 FRONT SENSOR PORTS 13-24 (2400 ONLY) SENSOR PORTS 1-12 LED INDICATORS...
Master 1200/2400 Electrical Specifications Electrical specifications for Master 1200/2400: Master 1200 2400 Power Supply Voltage +48VDC Power Supply current (Max.) Power Draw (Min.) Safety Voltage +12 to +48VDC Encoder signal voltage range RS485 Differential Digital input voltage range Logical LOW: 0 VDC to +0.1VDC Logical HIGH: +3.5 VDC to +6.5VDC When using a Master 1200/2400 it is crucial that its chassis be well grounded.
Series Laser class: 2M or 3R or 3B Gocator 2000 Sensors (Model) Description Part Number Gocator 2020 with Class 2M laser (2020-2M) 312020-2M-00 with Class 3R laser (2020-3R) 312020-3R-00 Gocator 2030 with Class 2M laser (2030-2M) 312030-2M-00 with Class 3R laser (2030-3R)
Page 361
Masters Description Part Number Master 200 - for networking up to 2 sensors 30704 Master 400 - for networking up to 4 sensors 30680 Master 800 - for networking up to 8 sensors 30681 Master 1200 - for networking up to 12 sensors 30649 Master 2400 - for networking up to 24 sensors 30650...
Page 362
Gocator 2300 Sensors (Model) Description Part Number Gocator 2330 with Class 2M laser (2330-2M) 312330A-2M-00 with Class 3R laser (2330-3R) 312330A-3R-00 with Class 3B laser (2330-3B) 312330A-3B-00 Gocator 2340 with Class 2M laser (2340-2M) 312340A-2M-00 with Class 3R laser (2340-3R) 312340A-3R-00 with Class 3B laser (2340-3B) 312340A-3B-00...
Warranty and Return Policy Warranty Policy The sensor is warranted for one year from the date of purchase from LMI Technologies Inc. Products that are found to be non-conforming during their warranty period are to be returned to LMI Technologies Inc.
Page 364
Software Licenses Pico-C Website: http://code.google.com/p/picoc/ License: picoc is published under the "New BSD License". http://www.opensource.org/licenses/bsd-license.php Copyright (c) 2009-2011, Zik Saleeba All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Page 365
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial...
Page 366
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
Page 367
Copyright (c) 2010 Brandon Aaron Licensed under the MIT License (http://www.opensource.org/licenses/mit-license.php) jQuery.scaling Website: http://eric.garside.name License: Scaling 1.0 - Scale any page element Copyright (c) 2009 Eric Garside Licensed under the MIT License (http://www.opensource.org/licenses/mit-license.php) jQuery.scrollFollow Website: http://kitchen.net-perspective.com/ License: Copyright (c) 2008 Net Perspective Licensed under the MIT License (http://www.opensource.org/licenses/mit-license.php) Flex SDK Website:...
Page 368
Support For assistance regarding a component or product, please contact LMI Technologies. World Email support@lmi3D.com http://www.lmi3D.com North America Phone +1 604 636 1011 +1 604 516 8368 Europe Phone +31 45 850 7000 +31 45 574 2500 For more information on safety and laser classifications, please contact: U.S.
Page 369
North America Europe LMI Technologies Inc. LMI Technologies BV 1673 Cliveden Avenue Valkenburgerweg 223 Delta BC V3M 6V5 NL-6419AT Heerlen Canada The Netherlands Phone: +1 604 636 1011 Phone: +31 45 850 7000 Fax: +1 604 516 8368 Fax: +31 45 574 2500...
Need help?
Do you have a question about the 2020 and is the answer not in the manual?
Questions and answers