background image

12.6

TriSpector1000 Result Output Function Block

A guide for connecting your TriSpector1000 to a Siemens PLC

This operating instruction will guide you through the process of connecting the TriSpec‐
tor1000 to the PLC, using the TriSpector1000 function block to parse an example string
and finally how to modify the function block to suit your needs.

12.6.1

About this document

Please read this chapter carefully before working with this documentation and the
TriSpector1000 Result Output function block.

12.6.1.1

Purpose of this document

This operating instruction will guide you through the process of connecting the TriSpec‐
tor1000 to the PLC, using the TriSpector1000 function block to parse an example string
and finally how to modify the function block to suit your needs.

NOTE

This document does not provide a plug-and-play solution that will fit any result output
string. This document is a 

guide

 how to set up the PLC for a specific example output

string from the TriSpector1000. This document will also guide you how to modify the
function block by editing the structured text implementation of the function block.

12.6.1.2

Target group

This operating instruction addresses planning engineers, developers and operators of
machines and systems who use a TriSpector1000 vision sensor and who are familiar
with S7 PLC programming using the TIA-Portal.

12.6.1.3

Scope

This document applies to the following variants of TriSpector1000:

TriSpector1008

TriSpector1030

TriSpector1060

12.6.1.4

Supported PLCs

The function blocks can be downloaded from the 

SICK Support Portal

:

1.

Log on to the SICK Support Portal.

2.

Under the 

Vision

 tab, click 

TriSpector1000

 and navigate to the 

TriSpector PLC function

blocks for Siemens S7

 page.

3.

Click on 

Zip to start the function blocks

 to start the download.

The zip folder contains function blocks for the following controllers:

S7-300

S7-400

S7-1200

S7-1500

The table below tells you what function block to choose depending on your PLC version.
It is important that you choose the correct function block corresponding to your PLC ver‐
sion. The function blocks are different and not compatible with each other. The differ‐
ences are explained in more detail in 

chapter 12.6.7

.

APPENDIX 

12

8021808/12ID/2019-01 | SICK

O P E R A T I N G   I N S T R U C T I O N S | TriSpector1000

85

Subject to change without notice

Summary of Contents for TriSpector1000

Page 1: ...O P E R A T I N G I N S T R U C T I O N S TriSpector1000 3D Vision...

Page 2: ...within the limits of the legal determination of Copyright Law Any modifica tion abridgment or translation of this document is prohibited without the express writ ten permission of SICK AG The trademar...

Page 3: ...4 1 Transport 15 4 2 Transport inspection 15 4 3 Storage 15 5 Mounting 16 5 1 Mounting instructions 16 5 1 1 Mounting a microSD memory card 16 5 2 Field of view diagrams 17 6 Electrical installation 1...

Page 4: ...ol 40 7 6 13 Angle tool 40 7 6 14 Application example Counting chocolates 41 7 7 Results workflow step 43 7 7 1 Result handling 43 7 7 2 Tool result output 43 7 7 3 Decision model 44 7 7 4 Conditions...

Page 5: ...ssories 64 12 Appendix 65 12 1 Declarations of conformity 65 12 2 Licenses 66 12 3 Available commands for command channel 67 12 3 1 Sending a command 67 12 3 2 Command examples 67 12 3 3 General comma...

Page 6: ...ion 86 12 6 4 PLC Configuration 87 12 6 5 Modify the Function Block to fit your output 94 12 6 6 Troubleshooting 100 12 6 7 Function block differences 102 CONTENTS 6 O P E R A T I N G I N S T R U C T...

Page 7: ...operating instructions do not provide information on operating the machine or system in which the device is integrated For information about this refer to the operat ing instructions of the specific...

Page 8: ...ata sheets for device variants containing technical data dimensional drawings and diagrams EU declaration of conformity for the product family Dimensional drawings and 3D CAD dimension models in vario...

Page 9: ...ser Notice No 50 dated June 24 2007 The legal regulations on laser safety for the laser class of TriSpector1000 must be adhered to CAUTION Optical radiation Laser class 2 The human eye is not at risk...

Page 10: ...ross section of the object By making a scan which means collecting height profiles across the object while it moves a complete 3D image can be acquired 2 1 Figure 1 Laser triangulation principle 1 Fie...

Page 11: ...r 4077575 A mouse with at least three buttons or a scroll wheel is recommended 3 4 TriSpector1000 variants TriSpector1000 is available with three different field of view FoV sizes and two differ ent w...

Page 12: ...r I O thread outside 4 LED On 5 LED State 6 LED Link Data 7 LED Result 8 LED Laser 9 Fastening threads M5x8 5 length Optical receiver center Optical sender center SD card 3 5 2 TriSpector1030 1 2 4 5...

Page 13: ...82 3 23 83 3 3 28 1 2 4 5 6 7 8 3 9 M12 x 1 M12 x 1 M12 x 1 1 Connector Encoder thread inside 2 Connector Gigabit Ethernet Gig E 3 Connector Power I O thread outside 4 LED On 5 LED State 6 LED Link D...

Page 14: ...Pass Red Overall result Fail Blue Result not found No light Result invalid or neutral Laser Green Laser on 3 PRODUCT DESCRIPTION 14 O P E R A T I N G I N S T R U C T I O N S TriSpector1000 8021808 12I...

Page 15: ...ws Do not accept the delivery or only do so conditionally Note the scope of damage on the transport documents or on the transport com pany s delivery note File a complaint NOTE Complaints regarding de...

Page 16: ...for the TriSpector1000 Minimize shock and vibration Ensure a clear view of the objects to be detected 5 1 1 Mounting a microSD memory card NOTICE If the TriSpector1000 is powered on click the Eject b...

Page 17: ...1008 291 11 46 800 31 50 660 25 98 H W 540 x 200 21 26 x 7 87 180 7 09 TriSpector1060 141 5 55 400 15 75 330 12 99 H W 270 x 100 10 63 x 3 94 90 3 54 TriSpector1030 Y X TriSpector1000 Y Max height ran...

Page 18: ...d qualifications are permitted to perform electrical installation Standard safety requirements must be met when working in electrical systems Electrical connections between the TriSpector1000 and othe...

Page 19: ...ults may be inaccurate due to object traversing speed variations The encoder must fulfill the following requirements The encoder must be an incremental encoder The encoder must have a RS 422 TTL inter...

Page 20: ...rted input 5 Not connected 6 Not connected 7 GND Power Signal 8 24 V Voltage supply output Gigabit Ethernet 4 3 6 5 7 8 1 2 Figure 8 M12 female connector 8 pin X coded Pin Signal 1 GETH_L1 2 GETH_L1 3...

Page 21: ...V I O 3 Trigger in 4 24 V I O 4 Configurable 5 24 V I O 2 Input 6 24 V I O 5 Configurable 7 24 V I O 6 Configurable 8 24 V I O 1 Input 9 24 V I O 7 Configurable 10 Reserved 11 RS 232 Rx 12 RS 232 Tx...

Page 22: ...to SOPAS ET 1 Start SOPAS ET The SOPAS ET main window opens The main window is split into two panes the project pane to the left and the device pane to the right NOTICE At the first use the TriSpector...

Page 23: ...30 7 2 Description of the user interface The TriSpector1000 is configured through the SOPAS ET device window 2 4 5 1 3 6 Figure 11 SOPAS ET device window 1 Image area 2 Image handling controls and vie...

Page 24: ...o longer be changed Import Import a saved device configuration from a PC For details see Exporting and importing data page 56 Export Export the current device configuration to a PC For details see Exp...

Page 25: ...Click the same arrowhead twice to flip the 2D projection for example to switch between the top and bottom view for the Z axis Press Home to restore the original viewing position Z X Y Figure 12 3D nav...

Page 26: ...or View image in color or grayscale Options Contains options for Color Range Grid Surface and Points as described below b Click Color Range to adjust the color interval of the displayed image This opt...

Page 27: ...red to as a configuration Use SOPAS ET to manage jobs and to save the resulting configuration A maximum of 32 jobs can be included in a configuration Up to 32 tools can be applied to each job but only...

Page 28: ...PAS ET functions panel to save the configuration to the device s flash memory 7 4 Workflow steps To configure the TriSpector1000 click the workflow steps in the user interface see figure 19 It is poss...

Page 29: ...iSpector1000 laser line to make a scan 7 5 1 1 Encoder modes The TriSpector1000 has a two directional up down encoder pulse counter The for ward up scanning direction is defined as clockwise encoder s...

Page 30: ...ew A smaller region allows faster processing and higher profile frequency rate Make the pixels in the selected field of view more square by setting the X resolution parameter to a value similar to the...

Page 31: ...xposure time Long exposure time Sensor view Live 3D view 7 5 4 Configuring the trigger settings The Image Trigger section is used to determine when image acquisition starts b Set the Image trigger par...

Page 32: ...ax number of images checkbox was selected the recording will stop automatically when the specified number of images have been saved 7 6 Task workflow step 7 6 1 Using the tools 1 After the image confi...

Page 33: ...rtant to only include relevant data and to reduce the processing time 5 In the 3D navigation control click the blue arrowhead for a TOP view 6 Select the most applicable Region shape in the parameter...

Page 34: ...ool Point tool Peak tool Inspect tools Area tool Measure tools Angle tool Distance tool 7 6 4 Shape tool y x Shape The Shape tool locates a 3D shape in the image and reposi tions other tools according...

Page 35: ...nk them Drag and drop tools outside the Shape tool to unlink them Figure 26 Tools linked to Shape tool 7 6 5 Blob tool y x Blob The Blob tool locates clusters of points within a defined height interva...

Page 36: ...the blob vol ume as a Pass Fail condition The checkbox is only visible if blob volume measurements have been enabled in the Settings section First blob blobs index cogX cogY cogZ width length cx cy bo...

Page 37: ...elect the Mean deviation checkbox to use the mean deviation as a Pass Fail condition 7 6 7 Plane tool Plane The Plane tool uses pixels inside its region of interest to find a flat surface Use the Plan...

Page 38: ...xis Fix Plane tool result output Result Output Decision OK Not OK Invalid Neutral Not found Cx Cy Cz Nx Ny Nz Equation of the plane through center point normal Px Py Pz Pd Equation of the plane throug...

Page 39: ...id Neutral Not found x y z User defined position x y z 7 6 11 Area tool Area The Area tool calculates surface coverage by counting points within a defined 3D region or within a specified intensity int...

Page 40: ...lect dimensions to measure distance in Distance tool result output Result Output Decision OK Not OK Invalid Neutral Not found Distance Distance in mm Select the Distance checkbox to use the dis tance...

Page 41: ...or in SOPAS ET For instructions on how to start the emulator see Starting the emulator page 54 The SOPAS ET device window opens 2 Go to the Image workflow step and check that chocolate box images are...

Page 42: ...f blobs as a Pass Fail condition Adjust the slider so that both the minimum and the maxi mum value are set to 20 See figure 31 Figure 31 Blobs checkbox 11 Click Live 3D and then the Run button to loop...

Page 43: ...t output Tools return results as values for example area 42 mm2 angle 12 degrees or binary results OK NOK The binary results are controlled by tolerances set by the user in the tool parameter pane in...

Page 44: ...ee Condition examples page 44 7 7 4 Conditions In the Conditions section the results from the Task workflow step are used to create true false expressions Condition examples page 44 and Handling array...

Page 45: ...ns true if the condition NewCondition2 returns true or if the Distance output from the Distance1 tool is less than 50 mm When using conditions inside condi tions make sure not to create a circular dep...

Page 46: ...h results to send to the available outputs The outputs must first be enabled in the I O Definitions section in the Interfaces workflow step Digital outputs can be activated based on the following Devi...

Page 47: ...age transfer was successful To check the status of the connection to the FTP server see Setting parameters of the Ethernet interface The following log conditions are available 1 None Log no images 2 A...

Page 48: ...NUM Decimal 7 7 8 4 Mathematical functions Table 7 Mathematical functions Functions Syntax Result type Description min min x1 NUM Find the minimum value in a list of elements or an array max max x1 N...

Page 49: ...hasSub string str sub str BOOL Check if a string contains a substring Case sensitive find find str sub str NUM Check if a string contains a substring Returns index of the first character of a found s...

Page 50: ...nal modification of image and tool parameter settings The following command channel interfaces are available for the TriSpector1000 Ethernet TCP IP Serial EtherNet IP see Setting up a TriSpector1000 t...

Page 51: ...in both height data and reflectance data Destination folder If the Path field in the FTP image logging section is empty images are saved to the speci fied folder on the FTP server To create a sub fold...

Page 52: ...Results workflow step see Image logging page 47 The logged images are saved in Portable Network Graphics png format and contain both height data and reflectance data Destination folder The first time...

Page 53: ...ging see figure 37 and figure 38 for examples For further information on how to create and use conditions see Conditions page 44 Figure 37 Example of a condition which returns true if the available me...

Page 54: ...ive EtherNet IP support To connect the TriSpector1000 to a PROFINET network use the fieldbus module CDF600 2200 from SICK See Connect ing TriSpector1000 to CDF600 2200 page 72 for details 7 9 Using th...

Page 55: ...ne click the Device catalog tab 2 Click the Device driver management button The Device driver management window opens 3 Select the Install option and click Next 4 Select www mysick com as source and c...

Page 56: ...a TriSpector1000 If the emulator was started from the SOPAS ET main window 1 In the SOPAS ET device window click Export on the Device menu The Device Export window opens 2 Save the configuration as a...

Page 57: ...enu The configuration is saved to the device flash memory If the device has a microSD memory card inserted the configuration is saved to both the flash memory and the microSD memory card OPERATION 7 8...

Page 58: ...ctions on the page to install the firmware NOTICE Old firmware for the TriSpector1000 is available on the SICK Support Portal and can be used to downgrade the device Before downgrading make sure all a...

Page 59: ...pike Such a voltage spike is common if the TriSpector1000 is powered on by mechanically plugging in an already powered 24 V contact into the device b When all cables are connected make sure that the p...

Page 60: ...etails of the contact person Description of the application Description of the fault that occurred 9 4 Disposal CAUTION Risk of injury due to hot device surface In analysis mode the surface of the dev...

Page 61: ...ne 24 2007 Laser fan angle 45 2 Imaging angle 1008 1030 65 1060 67 Offline support Emulator Toolset Angle Area Blob Distance Edge Fix Plane Plane Peak Point Shape 10 2 Ambient data Attribute Value Sho...

Page 62: ...maximum external fuse required Power consumption 11 W maximum Ripple 5 Vpp Current consumption 400 mA with no output loads Enclosure rating IP 67 Safety EN 60950 1 2014 08 Protection class III EMC Imm...

Page 63: ...ling diode otherwise permanent damage to the device can occur 10 7 Performance Attribute Value Typical height resolution Near field Far field 1008 20 50 m 1030 40 280 m 1060 80 670 m Maximum performan...

Page 64: ...es and where applicable mounting information can be found online at www sick com TriSpector1000 11 ACCESSORIES 64 O P E R A T I N G I N S T R U C T I O N S TriSpector1000 8021808 12ID 2019 01 SICK Sub...

Page 65: ...aration of conformity for the TriSpector1000 series vision sensor can be found online on the device webpages at www sick com APPENDIX 12 8021808 12ID 2019 01 SICK O P E R A T I N G I N S T R U C T I O...

Page 66: ...program is provided for general use but WITHOUT ANY WARRANTY OF ANY KIND This warranty disclaimer also extends to the implicit assurance of marketability or suit ability of the program for a particula...

Page 67: ...Select active job by name get job string job name Get the name of the active job set exposure int exposure result Set the sensor exposure time in microseconds get exposure int exposure Get the sensor...

Page 68: ...only when profileTrig gerMode is set to FreeRun ning get speed real speed Get the specified object movement speed in mm s Relevant only when pro fileTriggerMode is set to FreeRunning set triggerDelay...

Page 69: ...g and toler ance for a tool set tool string tool name identifier setting name parameter value boolean OK Not OK Set the value of a setting or a tolerance for a tool get tools tool info Get the setting...

Page 70: ...e real 0 01 20 OutlierMode enum Auto Manual Polarity enum Any Positive Negative ProbeSpacing int 1 20 Selection enum Strongest First Last Sharpness int 1 10 Table 15 Plane tool Setting Data type Value...

Page 71: ...oolean true false Measure tools Table 20 Distance tool Setting Data type Value range DistanceTolerance realrange 0 700 FeatureA FeatureRef FeatureB FeatureRef MeasureInX boolean true false MeasureInY...

Page 72: ...encoding switch found on the side of the CDF600 2200 to 2 Configuring the TriSpector1000 The data sent from the TriSpector1000 to the CDF600 2200 is the output string con figured in the Result workflo...

Page 73: ...s Intel PC running Windows 7 The hardware is set up in a simple network as shown below The software used to configure the SICK Scanner to the Rockwell Automation Allen Bradley controller is SOPAS Engi...

Page 74: ...r s device window EtherNet IP is active in the TriSpector1000 The data generated by the TriSpector1000 can be modified configured using the TriSpector s Ethernet output string The result string will a...

Page 75: ...tion Assembly is just a dummy and is not actually used The con nection will also use Unicast messaging After the Generic Ethernet Module has been configured for the TriSpector1000 three tag databases...

Page 76: ...BYTE 37 Result string status Result Length BYTE 38 LSB Result string length BYTE 39 MSB Result BYTE 40 through BYTE 493 Result string Device Ready The current state of the TriSpector1000 is set to 0...

Page 77: ...ements for a NEW configuration starting with hardware right out of the box would use Studio 5000 to start a NEW project configure all the hardware used in the programmable controller i e local I O car...

Page 78: ...le con troller is Name TriSpector Comm Format Data SINT IP Address 192 168 1 30 Assembly Instance Size Input 101 494 Output 100 130 Configuration 1 0 4 After the TriSpector1000 is configured its data...

Page 79: ...figuration data the device generates Description user description of the device this is entered during module setup Status the current condition of the module Could be Running I O Fault Con necting Sh...

Page 80: ...ber and Product Name 12 5 4 Triggering a TriSpector1000 To trigger the TriSpector1000 over EtherNet IP a trigger command is used The TriSpector1000 is configured using SOPAS to receive its trigger by...

Page 81: ...d into the Command channel string of the Output Tag Database This logic will Copy the content of the User Defined Tag UDT To the Command channel string The results will appear within the Result string...

Page 82: ...to switch jobs in the TriSpector1000 The command used to switch jobs is set job To select the correct job to switch to the name of the job can also be used In this example there are two jobs in the T...

Page 83: ...the job named Transponder When the command to select the job named Coin is sent from the programmable controller to the TriSpector1000 by way of the Command channel string APPENDIX 12 8021808 12ID 201...

Page 84: ...ENBT Scanner 1756 ControlLogix 1756 L6 Series 1756 EN2T Interface 1756 EN2F Interface 1756 ENBT Interface 1789 SoftLogix 5800 Controller Computer NIC Currently these controllers and the associated in...

Page 85: ...structured text implementation of the function block 12 6 1 2 Target group This operating instruction addresses planning engineers developers and operators of machines and systems who use a TriSpector...

Page 86: ...ut string from the TriSpector1000 The picture below shows the concept behind the TriSpector1000 PLC integration 12 6 3 TriSpector1000 configuration To integrate the TriSpector1000 into the TIA PLC env...

Page 87: ...s and stops a delimiter is used in the example above we use a semicolon between every value The string needs to start with a STX character and end with a ETX char acter NOTE To be able to use this fun...

Page 88: ...lock TCON_DB In the case of a reboot the Initial_Call flag triggers the TCON FB to open the TCP communication The ID of the TriSpector1000 FB Input must have the same value as the ID input of the TCON...

Page 89: ...TrispectorTest_FB scl file must be imported as an external source file Add new external file To use the block it is necessary to generate it first from the source file Right mouse click on the SCL Fil...

Page 90: ...your program After successful generation the blocks are created in the Program blocks and in the PLC data types folder in the TIA project tree 12 APPENDIX 90 O P E R A T I N G I N S T R U C T I O N S...

Page 91: ...ck which can interpret an incoming string with format string real integer character for example Invalid 1 004 28 A from the TriSpector1000 Function block parameters Parameter Declaration Data type Des...

Page 92: ...er needs a reference to the data structure instance You create this reference by adding a data block that contains a variable of data type Trispector_Test_Input Here this block is called DB_Trispector...

Page 93: ...ec tion results can be observed in the instance DB of the generated structure in this case DB_Trispector_Data The structure is updated each time when the inspector sends new data Done flag APPENDIX 12...

Page 94: ...ou want to send some other data in your result output from the TriSpec tor1000 You need to configure the function block and the data type UDT to fit your desired result An example of how that is done...

Page 95: ...to remove it later that is fine and it will save you some processing time How this is done is described in chapter 12 6 5 4 1 If we use the new example string defined in section 6 2 the UDT should loo...

Page 96: ...to four sec tions 1 String of unknown size WHILE BYTE_TO_CHAR arrData i i iReceivedLength 1 DO s_temp CONCAT IN1 s_temp IN2 CHAR_TO_STRING BYTE_TO_CHAR arrData i i i 1 END_WHILE Data StringValue s_tem...

Page 97: ...Since we now have a UDT with 3 real values followed by 2 string values this code need to be modified to fit this For the real values reuse section 2 Real of unknown size For the string values reuse se...

Page 98: ...CONCAT IN1 s_temp IN2 CHAR_TO_STRING BYTE_TO_CHAR arrData i i i 1 END_WHILE Data Blob3 OVDecision s_temp s_temp i i 1 5 String of unknown size WHILE BYTE_TO_CHAR arrData i i iReceivedLength 1 DO s_te...

Page 99: ...string s_total CONCAT IN1 s_total IN2 CHAR_TO_STRING BYTE_TO_CHAR arrData i i i 1 END_WHILE Data Total Result String s_total Start over and loop through incoming data again to cast every single data...

Page 100: ...be that you are missing the STX and the ETX characters at start and end of string those are needed for the PLC to retrieve the string 12 6 6 2 Error codes If none of the problems above have a look at...

Page 101: ...escription 16 0000_0000 No Error No Error 16 0001_0000 Invalid telegram length STX or ETX is missing Data sent from the Trispector contains too many bytes Default is maximum 100 bytes if sending more...

Page 102: ...TCP IP connection When received the data is only available when the data length specified at the LEN parameter has been completely received For the data to be available immediately even if the data l...

Page 103: ...APPENDIX 12 8021808 12ID 2019 01 SICK O P E R A T I N G I N S T R U C T I O N S TriSpector1000 103 Subject to change without notice...

Page 104: ...xico Phone 52 472 748 9451 E Mail mario garcia sick com Netherlands Phone 31 0 30 229 25 44 E Mail info sick nl New Zealand Phone 64 9 415 0459 0800 222 278 tollfree E Mail sales sick co nz Norway Pho...

Reviews: