Home

Sentis-ToF- P509

image

Contents

1. 3 1 5 Alive Command frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 OxOC 0x0D OxOE OxOF 0x10 Ox3A OxSE Field Preamble ProtocolVersion Command SubCommand Status Flags Length HeaderDataO HeaderData1 HeaderData2 HeaderData3 Reserved 42 bytes DataCrc32 HeaderCrc16 Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Uint32 Uint8 Uint8 Uint8 Uint8 Uint8 Uint32 high byte first Uint16 high byte first Value OxA1EC 0x03 OxFE Refer to table 0x0 0x0 lt CRC16 checksum gt A BLUETECHNIX EN Last change 27 May 2015 Version 0 3 Description Unique identifier start of header This document refers to protocol version V3 0 Command code for Alive message Ignored Ignored Optional flags No Data present Ignored Ignored Ignored Ignored Ignored No data present after header Checksum over 60 bytes of Header 0x02 Ox3D Table 3 16 Alive command frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Response frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 0x0C 0x0D OxOE OxOF 0x10 Ox3A Ox3E Field Preamble ProtocolVersion Command SubCommand Status Flags Length HeaderDataO HeaderData1 HeaderData2 HeaderData3 Reserved 42 bytes DataCrc32 He
2. Coor Pixel 1 Lowbyte of Y Coor Pixel 19041 Highbyte of X Coor Pixel 1 Highbyte of X Coor Pixel 19041 Highbyte of Y Coor Pixel 1 Highbyte of Y Coor Pixel 19041 BLUETECHNIX J A Embedding Ideas Last change 27 May 2015 Version 0 3 Lowbyte of X Highbyte of X Coor Pixel 159 Coor Pixel 159 Lowbyte of X Highbyte of X Coor Coor Pixel 19199 Pixel 19199 Lowbyte of Y Highbyte of Y Coor Pixel 159 Coor Pixel 159 Lowbyte of Y Highbyte of Y Coor Pixel 19199 Coor Pixel 19199 Last Byte in Stream Figure 4 4 Data stream of XYZ Point Cloud 4 5 3 XYZ Point Cloud and Amplitudes In this mode the XYZ point cloud and the amplitude will be transferred in progressive mode first the X coordinate array then the Y and Z coordinate array The stream starts always with pixel 0 The coordinates are coded in millimeters as Int16 the amplitudes as Uint16 Bluetechnix 2015 Page 26 44 A BLUETECHNIX A Embedding Ideas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 First Byte in Stream Lowbyte of X Highbyte of X Lowbyte of X Highbyte of X n Lowbyte of X Highbyte of X Coor Pixel 0 Coor Pixel 0 Coor Pixel 1 Coor Pixel 1 Coor Pixel 159 Coor Pixel 159 Lowbyte of X Highbyte of X Lowbyte of X Highbyte of X Lowbyte of X Highbyte of X Coor Coor Coor Coor Eea Coor Coor Pixel 19040 Pixel
3. 32 is used Polynom 0x04C11DB7 start value OxFFFFFFFF Please ask the Bluetechnix support for an implementation example of the CRC 32 Response frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 OxOC OxOE OxOF 0x10 Ox3A OxSE Field Type Preamble Uint16 high byte first ProtocolVersion Uint8 Command Uint8 SubCommand Uint8 Status Uint8 Flags Uint16 Length Uint32 high byte first RegisterAddress Uint8 high byte first HeaderData2 Uint8 HeaderData3 Uint8 Reserved 42 bytes Uint8 DataCrc32 Uint32 high byte first HeaderCrc16 Uint16 high byte first Bluetechnix 2015 Table 3 7 Register write response frame Value OxA1EC 0x03 0x04 Refer to table Refer to table 0 lt Register Address gt 0x0 lt CRC16 checksum gt Description Unique identifier start of header This document refers to version V3 0 Command code for write registers Ignored Result code Optional flags No lt Data gt present Same as in sent command Ignored Ignored Ignored No data present after header Checksum over 60 bytes of Header 0x02 0x3D Page 12 44 Gei Sao E edding Ideas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Flags Flags Description Bit O 1 Ig
4. EthOlp1 EthOSnm0 EthoOSnm1 EthOGatewayO EthOGateway1 EthOTcpCtrlPort EthOUdpStreamlp0 EthOUdpStreamlp1 EthOUdpStreamPort Bluetechnix 2015 Default Value hex 000A COA8 FFOO FFFF 0001 COA8 2711 0001 E000 2712 R W R W R W R W R W R W R W R W R W R W BLUETECHNIX A Z Description Last change 27 May 2015 Version 0 3 Writing this register has no immediate effect Byte 3 and byte 2 of MAC address Writing this register has no immediate effect Byte 1 and byte 0 Low byte of MAC address Writing this register will update the network configuration with the new MAC address Low word of IP address Writing this register has no immediate effect see register 0x0249 High word of IP address Writing this register has no immediate effect see register 0x0249 Low word of subnet mask Writing this register has no immediate effect see register 0x0249 High word of subnet mask Writing this register has no immediate effect see register 0x0249 Low word of gateway Writing this register has no immediate effect see register 0x0249 High word of gateway Writing this register will update the network configuration with new IP address subnet mask and gateway Port for TCP control interface Low word of IP address for UDP stream Writing this register has no immediate effect High word of IP address for UDP stream Writing this register will
5. Uint8 0x04 Command code for write registers 0x04 SubCommand Uint8 Ignored Bluetechnix 2015 Page 11 44 Software User Manual Sentis ToF P509 Addr 0x05 0x06 0x08 OxOC OxOE OxOF 0x10 Ox3A Ox3E 0x40 Field Status Flags Length RegisterAddress HeaderData2 HeaderData3 Reserved 42 bytes DataCrc32 HeaderCrc16 Data Type Uint8 Uint16 Uint32 high byte first Uint16 high byte first Uint8 Uint8 Uint8 Uint32 high byte first Uint16 high byte first Uint16 high byte first for each register value Value Refer to table it of bytes to write Register Address CRC32 checksum CRC16 checksum gt lt data to write gt BLUETECHNIX A Z Description Ignored Optional flags Last change 27 May 2015 Version 0 3 The number of bytes to write Must be a multiple of two and match length of lt Data gt in bytes The length divided by two represents the of registers to write Start register address for write command Ignored Ignored Ignored Checksum over Data Checksum over 60 bytes of Header 0x02 Ox3D One or more 16 bit values in a stream that should be written Table 3 6 Register write command frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Note 2 For the CRC32 calculation the CRC
6. and Z values are set to 0 If the amplitude of the reflected signal is above a threshold overexposure the X of the appropriate pixel is set to 0 Y and Z values are set to O as well If the ACF plausibility check classified the pixel s distance as invalid the X value of the appropriate pixel is Set to 1 Y and Z values are set to 0 4 4 Camera Coordinate System The default coordinate system starts pixel numbering in the upper left corner of the pixel array seen from the camera s point of view Also note the directions of X Y and Z coordinates In XYZ image modes Bluetechnix 2015 Page 23 44 BLUETECHNIX Last change 27 May 2015 Version 0 3 Software User Manual Sentis ToF P509 Ce Ote agi Y Figure 4 2 Sentis ToF P509 Default Coordinate System Note If you are working with a BItTofApi library or the BltTofSuite the camera coordinate system is automatically converted Please refer to BItTofApi documentation for the coordinate system See chapter 7 45 Camera Data Format The camera provides up to four data channels via its data interface The meaning of each data channel depends on the selected data format The factory default setting provides an array of depth data and an array of grayscale values for each pixel In addition also a 3D XYZ point cloud can be provided Refer to chapter 4 3 5 for a description of the coordinate system of the camera A channel can carry the following data e De
7. gm das 19 39 Manual iame e e CN 20 34 Secure Shell SSA E UE 20 3 4 1 Change default password beret raid ni ee es 20 d Camera Features ER EA 21 4 1 rex re 21 42 3D Image Processing e EE 21 4 3 3Dimage ilterirng ince ee i e cena Exc ade Geom Eu Eae 22 4 3 1 Iu e hBl zT n 22 4 3 2 zweier T 22 43 3 Sliding Average Filter cai teiie ident adiri a e eta cte Era efe erar e SER DR e ratas 22 4 3 4 Frame Average teet etia iai Y i tiir ec 22 4 3 5 Pixel invaldatiOM m M 22 4 4 Camera Coordinate System et rper eed iei EENS ERR MEER RA EREKE 23 45 Camera Data Format 2 actetuer an ust ea ecu E Rua ea Ext de Bue ete e ee ee 24 4 5 1 Distances and Amplitudes AAA 25 402 XYZ Poimi Cloud HN 25 4 5 3 XYZ Point Cloud and Amplitudes essssssssssssseeeeeeeee eene 26 4 5 4 Distances and XYZ Point Cloud AAA 27 4 5 5 X Coordinate and Ampltudes AAA 27 456 DISTANCES E 28 4o TES MOOO tertii ete reist eer t iei See Yoon e coco trc RE a one E A pant e cupa Eua 28 46 Tor Modulation Frequency sis iier ret er rer era ER Ud Ex e o EE Rande SER Rea eR lead 28 Bluetechnix 2015 4 7 Frame Rate and Integration Time ccccesccceee
8. register description The data interface provides a continuous stream of the distance and amplitude values or the XYZ data depending on the configuration 34 Control Interface The Sentis ToF P509 can be configured using a TCP IP connection For the control interface the Sentis is listening to the following factory default IP settings e IP Address 192 168 0 10 e Subnet mask 255 255 255 0 e Network protocol TCP e TCP port 10001 Note The Ethernet IP settings can be configured using the EthO_ registers The changes become active on writing register EthOGateway1 Once a TCP connection has been established the Sentis can be configured using a dedicated set of command frames The Sentis answers to each command frame with a dedicated response frame The following table shows the currently supported command frames Command frame Description Register Read Used to read one or more consecutive registers Register Write Used to write one or more consecutive registers Reset Used to reset reboot the Sentis ToF P509 Flash Update Used to either update the firmware or the boot loader Alive Used to keep the TCP control connection alive If no command is sent for 10 seconds the Sentis closes the control interface connection and waits for a new incoming connection request Up to 5 concurrent control connections are supported Table 3 1 Supported command frames The following section describes each command frame and the expected ans
9. stored in OTP flash Factor a of the temperature compensation function y mm a 100000 x b 10000 x c 1000 x Firmware Build date time Bit 14 4 Year Bit 3 0 Month Firmware Build day hour Bit 9 5 Day Bit 4 0 Hour Firmware Build date time Bit 11 6 Minute Bit 5 0 Second Lower 16 bit of uptime in s Higher 16 bit of uptime in s Serial Number of the TIM module low word Serial Number of the TIM module high word Bit 0 7 Temperature of the processor in C OxFF Sensor not available Bit 8 15 Processor speed in 10 MHz steps Factor c of the ToF sensor temperature compensation function y mm a 100000 x3 b 10000 x c 1000 x Factor b of the ToF sensor temperature compensation function y mm a 100000 x b 10000 x c 1000 x Page 36 44 Be BLUETECHNX DNS Addr hex 004C TempCompGradient3Tim Register Name Software User Manual Sentis ToF P509 Default Value hex R W R W Last change 27 May 2015 Version 0 3 Description Factor a of the ToF sensor temperature compensation function y mm a 100000 x3 b 10000 x c 1000 x Table 6 1 General registers Note 2 The content depends on the mounted lens and the calibration data and represents the real viewing angles 6 2 More General Registers Addr hex 00C1 00C2 00C3 00C4 00C5 00C6 00C7 0100 0101 0102 0103 0104 0105 0106
10. update the network configuration with the new UDP stream address Port for UDP streaming Table 6 7 Registers for Ethernet configuration Page 40 44 A BLUETECHNIX J A zs JE UIT ICI vC Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 7 Support 7 1 General Support General support for products can be found at Bluetechnix support site Support Link V https support bluetechnix at index html 7 2 Software Support Package Camera support packages are available for registered customers only Please contact Bluetechnix support if you do not yet have an account Software Download Portal i https support bluetechnix at software 7 3 Bluetechnix ToF API Bluetechnix offers an SDK for its ToF products called BItTofAPI Bluetechnix ToF API Please visit our support Wiki to get information and download library and header files Bluetechnix Time of Flight API S https support bluetechnix at wiki Section Software 7 4 Related Products e TIM 19kS3 Spartan 6 e LIM LED 850 Bluetechnix 2015 Page 41 44 A BLUETECHNIX gh Embedding Ideas Software User Manual Sentis ToF P509 8 Firmware History 81 Version Information Release Last change 27 May 2015 Version 0 3 Firmware Status date Changes 0 1 0 X Jan 2015 Mar 2015 May 2015 e Change factor for x 3 temperature compensation coefficients from 1 10000 to 1 100000
11. 0107 0108 0109 Register Name DistOffsetO DistOffset1 DistOffset2 DistOffset3 DistOffset4 DistOffset5 DistOffset6 UserDefinedO UserDefined1 UserDefined2 UserDefined3 UserDefined4 UserDefined5 UserDefined6 UserDefined7 UserDefined8 UserDefined9 Default Value hex OO OOOOOOO OCH Description An offset for distance values when operating at modulation frequency with index 0 5 MHz An offset for distance values when operating at modulation frequency with index 1 7 5 MHz An offset for distance values when operating at modulation frequency with index 2 10 MHz An offset for distance values when operating at modulation frequency with index 3 15 MHz An offset for distance values when operating at modulation frequency with index 4 20 MHz An offset for distance values when operating at modulation frequency with index 5 25 MHz An offset for distance values when operating at modulation frequency with index 6 30 MHz For any purpose For any purpose For any purpose For any purpose For any purpose For any purpose For any purpose For any purpose For any purpose For any purpose Table 6 2 More General registers 6 3 Registers for Automatic Exposure Control Addr hex 01A9 Register Name AecAvgWeightO Default Value hex 4444 R W HAN Description Bit 15 12 Weight for average area 1 Bit 11 8 Weight for average area 2 Bit 7 4 Weight for average area 3 Bit 3 0 Weight f
12. 19040 Pixel 19041 Pixel 19041 Pixel 19199 Pixel 19199 Lowbyte of Y Highbyte of Y Lowbyte of Y Highbyte of Y ee Lowbyte of Y Highbyte of Y Coor Pixel 0 Coor Pixel 0 Coor Pixel 1 Coor Pixel 1 Coor Pixel 159 Coor Pixel 159 Lowbyte of Y Highbyte of Y Lowbyte of Y Highbyte of Y Lowbyte of Y Highbyte of Y Coor Pixel 19040 Coor Pixel 19040 Coor Pixel 19041 Coor Pixel 19041 TS Coor Pixel 19199 Coor Pixel 19199 D i Jm es D Last Byte in Stream Figure 4 5 Data stream of XYZ Point Cloud and Amplitude 4 5 4 Distances and XYZ Point Cloud In this mode the distances and the XYZ point cloud will be transferred in progressive mode first the distances array then X Y and Z coordinate arrays in this order The stream starts always with pixel 0 The distances are coded in millimeters as Uint16 The coordinates are coded in millimeters as Int16 4 5 5 X Coordinate and Amplitudes In this mode a single coordinate array more specifically the one belonging to the optical axis of the camera X is transferred as well as the amplitudes Bluetechnix 2015 Page 27 44 BLUETECHNIX A ARP Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Coordinate values are coded in millimeters as Int16 The amplitudes are coded as Uint16 4 5 6 Distances In this mode a single array with distances is transferred The stream starts always with pix
13. 30 P Pixel orientation nn 24 R Register Map Delete o LAUD IE AE 31 DAVE ee EE Ot LL LEE 30 S SOftWare elio atenta t gd aa te qal p coe xta aad 33 Ie 41 T Time Stamp ID SeA MI HE 19 U UDP packet header 3D Stream EE 18 V Version Product Story 1 ead 42 Page 43 44 BLUETECHNIX DUN Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 B List of Figures and Tables Figures Figure 3 1 UDP streaming data format cccceseeceeeeseeeeeeenseneesesseeeeseaeeeesessensesesseeseseseesesesseesesessenseneesenees 17 Figure 4 1 Image processing NOW cessisse nen sec rp bre REES gegen a ERE D ce ex uc u a ERE Se xe Ses a Y vEE Deux 21 Figure 4 2 Sentis ToF P509 Default Coordinate System AAA 24 Figure 4 3 Data stream of Distance and Amplitude data 25 Figure 4 6 Data stream Of XYZ Polnt ClOUG eria tauri to t rero tae saure tior tae teure nro cce Ex eee ia 26 Figure 4 7 Data stream of XYZ Point Cloud and Ampltude AAA 27 Figure 4 8 AEC weighing WC 30 Tables Table 3 1 Supported command frames ccccccececeeeeececeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeseseeeseeeeeseseeeeeeeseseeeeeeeeeees 9 Table 3 2 Register read command Trame nennen nensis enhn nnn nnnenenn sane n nnne 10 Table 3 3 Register read response Tramen 11 Table 3 4 Register read flag description 11 Hle cue mmm 11 Table 3 6 Register write command Tramen 12 Table 3 7 Register write re
14. DP Packet c ENS UDP Packet ipis Data Section 3 Data Section AUS Data Section 1400 Bytes J 1400 Bytes J l lt 1400 Bytes Figure 3 1 UDP streaming data format The following types are used in the data streaming protocol e Uint8 8 bit unsigned integer e Uint16 16 bit unsigned integer e Uint32 32 bit unsigned integer Note Values with Ox as prefix are hexadecimal values The UDP streaming is enabled by factory default The Sentis streams to the following IP settings e IP Address Multicast address 224 0 0 1 e UDP port 10002 Note The UDP stream settings can be configured using the EthO registers Bluetechnix 2015 Page 17 44 e BLVETECHINX AA Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 As multicast is used more than one can receive the stream within the same subnet at the same time The client has to join the appropriate multi cast group and open the port 10002 on his local network interface card NIC where the Sentis is connected to The receiver should receive the stream and interpret it as the following protocol description shows Note Be aware that a multicast stream may slow down your Ethernet network as the stream must be spread to all active links of switches hubs and routers 3 2 1 UDP Streaming Header The current protocol version is 1 Each image transmitted on the UDP stream is split into packets of max 1432 bytes length except the la
15. OxOF 0x10 Ox3A Ox3E Field Preamble ProtocolVersion Command SubCommand Status Flags Length HeaderDataO HeaderData1 HeaderData2 HeaderData3 Reserved 42 bytes DataCrc32 HeaderCrc16 Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Uint32 high byte first Uint8 Uint8 Uint8 Uint8 Uint8 Uint32 high byte first Uint16 high byte first Value OxA1EC 0x03 OxOB or OxOC Refer to table Refer to table Refer to table 0x0 0x0 lt CRC16 checksum gt Description Unique identifier start of header This document refers to protocol version V3 0 OxOB Flash boot loader Ox0C Flash Application Indicates which flash to write to Result code Optional flags No Data present Ignored Ignored Ignored Ignored Ignored No data present after header Checksum over 60 bytes of Header 0x02 Ox3D Table 3 13 Flash update response frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Subcommand SubCommand Description Ignored For boot loader and application update Table 3 14 Flash update subcommand description Flags Flags Description Bit 0 1 Ignore DataCrc32 Table 3 15 Flash update flag description Result codes Bluetechnix 2015 Page 15 44 Software User Manual Sentis ToF P509 Please refer to Table 3 5
16. a itself is split into a 64 byte image header and the image data section The format of the image data depends on the selected image format and is described in chapter 4 3 Below you can find the format of the 64 byte image header Addr 0x00 0x02 0x04 0x06 0x08 0x09 0x0A 0x0C 0x10 0x12 Ox1A Ox1B Ox1C Ox1E 0x20 0x22 0x24 Ox3E Field Reserved HeaderVersion ImageWidth ImageHeight NofChannels BytesPerPixel ImageFormat Timestamp FrameCounter Reserved MainTemp LEDtemp FirmwareVersion MagicV31 IntegrationTime ModFreq Reserved CRC16 Bluetechnix 2015 Type Uint16 Uint16 high byte first Uint16 high byte first Uint16 high byte first Uint8 Uint8 Uint16 high byte first Uint32 high byte first Uint16 high byte first Uint8 Uint8 Uint16 high byte first Uint16 high byte first Uint16 high byte first Uint16 high byte first Uint16 high byte first Value OxFFFF 0x0003 0x00A0 0x0078 0x02 0x3331 Description Current header version Width of the image in pixels Height of the image in pixels Nof data channels Depends on the image format Bytes per pixel of the 3D image data The content is the same as in the register ImageDataFormat Timestamp of the actual image in us Continuous frame counter On an overrun it restarts at 0 TIM ToF Image sensor Module temperature in C 50 Decrement t
17. aderCrc16 Bluetechnix 2015 Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Uint32 high byte first Uint8 Uint8 Uint8 Uint8 Uint8 Uint32 high byte first Uint16 high byte first Value OxA1EC 0x03 OxFE Refer to table Refer to table 0x0 0x0 lt CRC16 checksum gt Description Unique identifier start of header This document refers to protocol version V3 0 Command code for Alive message Indicates which flash to write to Result code Optional flags No lt Data gt present Ignored Ignored Ignored Ignored Ignored No data present after header Checksum over 60 bytes of Header 0x02 Ox3D Page 16 44 BLUETECHNIX JR Embedding Ideas i Pm Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 A Table 3 17 Alive response frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Flags Flags Description Currently no flags defined for this command Table 3 18 Alive flag description Result codes Please refer to Table 3 5 3 2 Data Interface A UDP stream delivers depth and amplitude data from the Sentis Each UDP packet contains a header and up to 1400 bytes of data Ethernet IP and UDP headers are not shown in Figure 3 1 UDP Packet 0 UDP Packet 1 UDP Packet n d UDP Packet xe U
18. ceType 0008 Firmwarelnfo 0009 ModulationFrequency Bluetechnix 2015 Default Value hex 0001 0040 0000 05DC B320 07DO R W R W DD Description Bit 0 0 Manual Mode 1 Video Mode Bit 4 1 Manual Trigger self clearing bit Bit 6 1 Clear status register self clearing bit Bit 2 1 Ongoing Calibration Bit 3 1 LIM temperature sensor error Bit 4 1 ToF chip temperature sensor error Bit 6 1 Factory Regmap was loaded Bit 8 1 Previous firmware version was restored Bit 9 1 LIM over temperature Bit 3 10 0 2 bytes depth data 2 bytes amp data 3 X Y Z coordinates 2 bytes in signed format for each coordinate 4 X Y Z coordinates and amp data 2 bytes in signed format for each coordinate 2 bytes unsigned for the amp value 9 depth data and X Y Z coordinates 2 byte unsigned for the depth value 2 byte in signed format for each coordinate 10 X axis coordinate and amp data 2 bytes in signed format 2 bytes unsigned for amp data 11 4 channels Test mode Arithmetic functions 2 bytes ascending index 2 bytes constant Oxbeef 2 bytes ascending squared index 2 bytes constant 0x0000 12 2 bytes depth data Integration Time us min 1 max 24000 Hardware specific identification Bit 0 5 Non Functional Revision Bit 6 10 Minor Revision Bit 11 15 Major Revision Modulation frequency index 5 MHz 5 MHz 10 MHz 15 MHz 20 MHz 25 MHz 30 MH
19. d Ignored Ignored No data present after header Checksum over 60 bytes of Header 0x02 Ox3D Table 3 2 Register read command frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Response frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 Field Preamble ProtocolVersion Command SubCommand Status Flags Length Bluetechnix 2015 Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Uint32 high byte first Value OxA1EC 0x03 0x03 Refer to table Refer to table lt of bytes read gt Description Unique identifier start of header This document refers to protocol version V3 0 Command code for read registers Ignore Result code Optional flags The number of bytes read length of lt Data gt in bytes The length divided by two represents the of registers read Page 10 44 E IU I g IAC AA Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Addr Field Type Value Description OxOC RegisterAddress Uint16 high Register Start register address of read data byte first Address OxOE HeaderData2 Uint8 Ignored OxOF HeaderData3 Uint8 Ignored 0x10 Reserved 42 bytes Uint8 Ignored Ox3A DataCrc32 Uint32 high lt CRC32 Checksum over Data byte first checksum
20. d distance data Bit 3 0 AEC Off 1 AEC On Temperature of LIMs in 0 01 C FFFF Sensor not available Temperature of ToF chip in 0 01 C FFFF Sensor not available Distance to the calibration target mm Bit 0 7 Status error 0 Idle 19 FPPN calibration 20 Erasing flash 21 DistOffset calibration 161 Operation done 246 Wrong image mode Need depth or Mode setting Need video mode 248 Invalid modulation frequency 255 Generic error Bit 10 1 Error occurred Bit 12 1 No FPPN Calibration data in NVM Bit 14 1 No Lens Calibration data in NVM Set a password for critical operations 0x4877 Register map flash operations register CmdExec 0x0033 Ox5e6b Test commands register TestConfig 0x01c0 Maximum tolerable LIM temperature 0 01 C Horizontal field of view in 0 01 Vertical field of view in 0 01 Delay between trigger assertion either software or hardware and image capturing ms Bit 14 15 Firmware Load Counter This counter is reset by the firmware It counts the boot attempts Factor c of the illumination temperature compensation function y mm a 1000000 x b 10000 x c 1000 x Page 35 44 Software User Manual Sentis ToF P509 Addr hex Register Name 0030 TempCompGradient2Lim 0032 CPLDversion 0033 CmdExec 0034 CmdExecResult 0035 FactoryMacAddr2 0036 0037 FactoryMacAddr1 FactoryMacAddrO 0038 0039 FactoryYear FactoryMonthDa
21. different settings and configurations a NET demo application for Microsoft Windows is provided BLT ToF Suite The demo application can be downloaded from our support web site Software and documentation L https support bluetechnix at index html 5 2 Getting Started Software Development Example To facilitate the integration of the Sentis in your own application a getting started example will be available on our download site Please refer to our support site Software and documentation S https support bluetechnix at index html 5 3 Camera Firmware Development KITs The camera offers the possibility to bring your own application onto the Sentis ToF P509 Using the quad core i MX6 processor from Freescale Inc one to three cores depending on camera configuration can be used by customers for their own applications The Sentis ToF P509 is based on an embedded Linux system Bluetechnix 2015 Page 33 44 Software User Manual Sentis ToF P509 6 Register Description Note BLUETECHNIX A Last change 27 May 2015 Version 0 3 Some critical registers are password protected To enable the functionality a specific value must be written to the CmdEnablePasswd register in advance to enable the functionality This should prevent from accidentally executing certain functions 6 1 General registers Addr Register Name hex 0001 Mode 0003 Status 0004 ImageDataFormat 0005 IntegrationTime 0006 Devi
22. e New firmware version V2 1 0 for TIM uP 10kS3 Spartan6 e Change order of applying filters 1 Average 2 Sliding Average 3 Median 4 Bilateral e Remove BtaEth library from firmware e Support Pxxx Linux Development Package Version Grade 0 2 0 X Grade 0 2 1 X Grade Note Table 8 1 Overview Sentis ToF P509 firmware changes Please refer to our support site for additional information about product changes 8 2 Anomalies Applies to Date Description Table 8 2 Firmware anomalies 8 3 Document Revision History Document Revision Initial version of the document Updated register description for V0 2 0 firmware version Updated chapter 8 1 for VO 2 1 firmware version Version Date 1 2014 08 01 2 2015 03 18 3 2015 05 27 Bluetechnix 2015 Table 8 3 Revision history Page 42 44 Software User Manual Sentis ToF P509 A Index 3 3D Stream Data Interface UDP data format A ue Tu E E C Control Interface cccccccccecceeeeeeeeeeeeeeeeeeeeeseceeeeeeeseress Coordinate System eeeseeeeseeeeeeee D Data Interface TR ctae usa bcr coru es dec ek dude E External Lrigget iiiuue reiecit otn innate enne Image data header SD Streami C Image Processing Chain eeeeeeeeseeee M Modulation Frequency eee Bluetechnix 2015 BLUETECHNIX A P UN Last change 27 May 2015 Version 0 3 Modulation Signal Interface
23. eecceeeseseeeeeeeseneeeseeneeeseseeeeeseseneeeseseeeeeseseneeetens 28 4 8 Distance Offset Calibration eeseeesessssseseeeeseeeseeesee enne enne nenne nnn ennt nennen nn nnnne nnn 29 4 9 ToF Automatic Exposure Control AEC eene nnne nennen nnn nnne 29 4 10 Manual geile eg adepest bts wns teas teed Giste salen ege zeereerg 30 4 11 Over Temperature Protection 30 4 12 DAVE ROGISTSNS vast ETE 30 4 13 Ethernet IP ie CEET 20 4131 ee 20 413 2 IP TCP UDP ett pe ccs base dG freie trt eege 31 4 14 Reset to Factory Default rere rr t eer E ER e dL eee 31 4 15 giunti 31 AVS Firmware BeCOVOLby cic ie eee epe Leer tren cr teer Yee cre RnB coa Reese eu ue oca a Fe ER s RE LORS 31 4 16 Ese e T8 e DEE 31 Sri H 33 5 1 DeMO APPliCation pm 33 5 2 Getting Started Software Development Example sess 33 5 3 Camera Firmware Development KITS c ccceeeeeeeeeeeceeeeeeeeeeeeeeaaanaeeeeeeeeeeseaaeeeeeeeeeeeeeeeaaees 33 Register Descriptior EE 34 6 1 X General registers cit eei oeste rra icu i AA ERENER ENEE EES ENEE ANEREN 34 6 2 More General Heglsters eee edet Ga sea dd See SEKR 37 6 3 Registers for Automatic Exposure Control 37 6 4 Hegisters for Test Commands exea bene REL RR Ex E ERR x ERE Rx YF RR RE E 38 6 5 Registers for Device Update eseeesesseseseseeseseeenene nennen nennen nannten nnne nene 39 6 6 Registe
24. el 0 The distances are coded in millimeters as Uint16 45 7 Test mode In this mode four arrays with test data are transferred in progressive order e First array Uint16 value Pixel Index e Second array Uint16 value always constant Oxbeef e Third array Uint16 value Pixel Index e Fourth array Uint16 value always constant 0x0000 46 ToF Modulation Frequency The modulation frequency is set to 20 MHz per default Other modulation frequencies can be set using the register ModulationFrequency Be aware that this also changes the ambiguity range of the camera The following modulation frequencies can be selected Index Frequency 0 5 MHz 1 7 5 MHz 2 10 MHz 3 15 MHz 4 20 MHz 5 25 MHz 30 MHz Oo Table 4 1 Pre defined modulation frequencies In the register you can either write the frequency in 10 kHz steps frequency 10000 or the index On a read of the register you get the currently selected modulation frequency again in 10 kHz steps Other frequencies between 5 MHz and 30 MHz can be set as well but as there is no calibration data available for other frequencies than the indexed ones it may result in unpredictable distance values 4 7 Frame Rate and Integration Time The frame rate and the integration time of the ToF sensor can be set by using the registers Framerate and IntegrationTime The ToF sensor s integration time is limited by hardware to 24ms The maximum frame rate for the ToF sensor is 160
25. es RAER Ea ia 37 Table 6 5 Registers for automatic exposure Control 38 Table 6 6 Registers for Test Commande A 38 Table 6 7 Registers for device update AE 39 Table 6 8 Register for filter Gopfiouration NEEN 39 Table 6 9 Registers for Ethernet configuration EE 40 Table 8 1 Overview Sentis ToF P509 firmware changes AAA 42 Table 8 2 Firmware anomalies 2 rrr hen ain head ani ber ERR Vana eaaa EE aa A EEA Aa Eaa rE OaE ER E EEan i 42 RTE REVISION TRO E 42 Bluetechnix 2015 Page 44 44
26. f a uniform white target 2 Avoid extreme environmental light conditions or avoid light completely 3 Set the desired modulation frequency using register ModulationFrequency 4 Check the amplitude in the center of the image and increase decrease the IntegrationTime until the amplitude is about 3000 5000 in the center 5 Measure the real distance in millimeters from the camera to the white target Write this value into register RealWorldXCoordinate 6 Write decimal value 19 into register CalibrationCommand and wait until the CalibrationExtended register Bits 0 7 read decimal value 161 finished The appropriate DistOffsetX register is updated 7 If you want to keep the setting don t forget to save registers to flash Chapter 4 12 4 9 ToF Automatic Exposure Control AEC The Sentis ToF P509 provides an automatic exposure control feature which controls the integration time according to the currently observed scene The AEC is disabled by default and must be enabled in the register Mode The AEC is controlled through dedicated registers which are listed in chapter 6 3 The AEC algorithm also supports weighing One may assign specific weights to each of 25 areas into which the sensor area is divided These weights are inputs to calculate the current amplitude Please see Figure 4 6 AEC weighing areas for an illustration Each area s weight is a Uint8 value and can range from 0 0x0 to 100 Oxf Bluetechnix 2015 Pa
27. first Uint32 high byte first Uint8 Uint32 high byte first Uint16 high byte first Uint8 Value OxA1EC 0x03 OxOB or OxOC Refer to table Refer to table it of bytes to write Flash Address CRC32 checksum gt lt CRC16 checksum gt lt binary loader file gt Table 3 11 Reset flag description Description Unique identifier start of header This document refers to protocol version V3 0 OxOB Flash boot loader OxOC Flash Application Indicates which flash to write to Ignored Optional flags The size of the binary file to flash Ignored Ignored Checksum over Data Checksum over 60 bytes of Header 0x02 Ox3D The file to flash as a binary byte stream Bluetechnix 2015 Page 14 44 Ge Sg E edding Ideas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Table 3 12 Flash update command frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Note 2 For the CRC32 calculation the CRC 32 is used Polynom 0x04C11DB7 start value OXFFFFFFFF Please ask the Bluetechnix support for an implementation example of the CRC 32 Note 3 The DataCrc32 is mandatory the appropriate flag must be set to 0 Response frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 OxOC 0x0D OxOE
28. fps but may be reduced by increasing its integration time The combination of frame rate and integration time influences the input current as well as the dissipated heat and will be characterized by the Frame rate Integration Time Product FITP which has been defined as follows Bluetechnix 2015 Page 28 44 BLUETECHNIX A Se 4 Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 1 FITP tyr ms fps 4 Caution Be careful in setting different integration times and frame rate combinations Not all combinations are possible Without appropriate cooling the device may be damaged Refer to the Hardware User Manual for more information 4 8 Distance Offset Calibration Each Sentis ToF P509 is offset calibrated out of factory For each pre defined modulation frequency there is an absolute offset in millimeters all distances measured with this frequency are corrected with The absolute offsets are stored in registers DistOffsetO for 5 MHz modulation frequency to DistOffset6 for 30 MHz You can modify these values by direct register writes The camera has also a built in offset calibration function which is described in the following procedure You let the camera know the real distance and the camera will calculate the correct absolute offset It uses a square of 4x4 pixels in the center of the distance image Procedure Offset Calibration 1 Place your Sentis co planar in front o
29. ge 29 44 BLUETECHNIX A Se A Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Pixel 0 Area 1 2 3 4 5 6 7 8 9 10 i1 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Figure 4 6 AEC weighing areas 4 10 Manual Frame Trigger To enable the manual software trigger you have to disable the video mode in register Mode Bit 0 To start a frame capturing by software set the appropriate bit Bit 4 in register ModeO 4 11 Over Temperature Protection The Sentis ToF P509 firmware has a built in monitoring for over temperature condition of the LIMs If the LIM temperature exceeds 70 C the camera will automatically stop illumination and streaming for 15 seconds During over temperature condition Bit 9 of the Status register is set 4 12 Save Registers The entire register map can be saved into the flash using the register CmdExec It will be restored from flash after a reboot or power cycle Use this feature to save a user specific configuration 4 13 Ethernet IP Settings 4 13 1 MAC Address A dedicated Ethernet MAC address from Bluetechnix MAC address pool is assigned to each Sentis by factory default This MAC address is saved in the OTP and cannot be changed by the user The user is allowed to assign the Sentis another MAC address using the registers EthOMacO to EthOMac2 Be aware that in order to make the changes persistent you have to save the register map to f
30. gt Ox3E HeaderCrc16 Uint16 high lt CRC16 Checksum over 60 bytes of Header byte first checksum gt 0x02 Ox3D 0x40 Data Uint16 high result data Result One or more 16 bit values byte first Table 3 3 Register read response frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Note 2 For the CRC32 calculation the CRC 32 is used Polynom 0x04C11DB7 start value OXFFFFFFFF Please ask the Bluetechnix support for an implementation example of the CRC 32 Flags Flags Description Bit 0 1 Ignore DataCrc32 Table 3 4 Register read flag description Result codes Status Description 0x00 Ok OxOD Invalid handle internal error OxOF Illegal write The Address is not valid or the register is not write enabled 0x10 Illegal read The Address is not valid deprecated replaced by 17 0x11 Register end reached OxFA Length exceeds maximum file size not enough memory for file download OxFB HeaderCrc16 mismatch OxFC DataCrc32 mismatch OxFD Length invalid Cannot be equal 0 OxFE Length invalid Cannot be grater 0 OxFF Unknown command Table 3 5 Result codes 3 1 2 Register write Command frame Addr Field Type Value Description 0x00 Preamble Uint16 high OxA1EC Unique identifier start of header byte first 0x02 ProtocolVersion Uint8 0x03 This document refers to version V3 0 0x03 Command
31. his field by 50 to get the current TIM temperature LIM Light Module Temperature in C 50 Decrement this field by 50 to get the current LIM temperature Content of the register Firmwarelnfo These magic bytes indicate that header version is 3 1 Integration time in us Modulation frequency with resolution 10 kHz e g a value of 0x1234 means frequency 46 6 MHz CRC16 checksum over the header without the first two bytes and the CRC16 checksum itself addr 0x02 to addr Ox3D Table 3 21 Image data header Page 19 44 Aas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT ECH ding Id 3 3 Manual frame triggers The default mode of the Sentis is video mode where the camera streams continuously with configured frame rate To use manual frame triggering you have to disable the video mode in register ModeO You can trigger a frame via Software trigger See register ModeO 3 4 Secure Shell SSH Login The Sentis ToF P509 camera features an OpenSSH server listening to TCP port 22 Root account User account Username root user Default password root user Table 3 22 Default login credentials 3 4 1 Change default password Change default password 1 Login via SSH e g ssh root 192 168 0 10 2 Typepas
32. lash using register CmdExec otherwise the changes will be lost on a reboot or power cycle If the register map in the flash will be cleared the factory default MAC address from OTP will be loaded Bluetechnix 2015 Page 30 44 BLUETECHNIX A AA Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 4 13 2 IP TCP UDP Settings The IP Settings of the Sentis can be changes via the EthO registers A change of the IP settings IP address subnet mask default gateway will take effect on writing the latter one Port settings will take effect immediately UDP destination IP addresses will take effect immediately Please see the register description for details To make the changes persistent you have to save the register map by writing a dedicated value to the CmdExec register 4 14 Reset to Factory Default The Sentis ToF P509 can be reset to the factory default register settings by deleting the saved register map This can be done by writing a dedicated value to the register CmdExec Alternatively a factory reset is executed via the camera s reset signal Please consult the Hardware User Manual for details It must be active until the firmware is completely booted and the 3D stream is present 4 15 Firmware Update The Sentis ToF P509 firmware is capable of updating the camera s firmware as well as the boot loader The update procedure is executed using dedicated TCP IP command frames over the co
33. nchanged Each of the filter provides one or more configuration parameters The iteration count for each filter can also be configured The filters can be enabled or disabled by writing the ImgProcConfig register Enabling more than one filter is possible but each added filter reduces the maximum achievable frame rate as does the number of iterations 4 3 1 Median Filter A 3x3 median filter can be applied Register FilterMedianConfig The number of iterations is configurable 4 3 2 Bilateral filter Registers FilterBilateralConfig FilterBilateralConfig2 Configuration options are or Width of range kernel os Width of spatial kernel number of iterations and window size 4 3 3 Sliding Average Filter Register FilterSLAFconfig A sliding average filter over up to 255 frames can be applied The number of frames is configurable Only the distance data will be averaged The amplitude data will be left unchanged An increasing number of frames will not decrease the frame rate but may add blurring effects 4 3 4 Frame Average Filter Register FilterFrameAverageConfig A frame average filter over up to 15 frames can be applied The number of frames is configurable Only the distance data will be averaged The amplitude data is left unchanged The frame rate of the data interface will be divided by the number of configured frames to be averaged e g if the camera is configured to 40 frames per second and the frame average filter wi
34. nore DataCrc32 Table 3 8 Register write flag description Result codes Please refer to Table 3 5 34 3 Reset Command frame Addr Field Type Value Description 0x00 Preamble Uint16 high OxA1EC Unique identifier start of header byte first 0x02 ProtocolVersion Uint8 0x03 This document refers to version V3 0 0x03 Command Uint8 0x07 Command code for reset 0x04 SubCommand Uint8 Ignored 0x05 Status Uint8 Ignored 0x06 Flags Uint16 Refer to table Optional flags 0x08 Length Uint32 high 0x0 No lt Data gt present byte first OxOC HeaderDatad Uint8 Ignored OxOD HeaderData1 Uint8 Ignored OxOE HeaderData2 Uint8 Ignored OxOF HeaderData3 Uint8 Ignored 0x10 Reserved 42 Uint8 Ignored bytes Ox3A DataCrc32 Uint32 high 0x0 No data present after header byte first DOE HeaderCrc16 Uint16 high CRC16 Checksum over 60 bytes of Header 0x02 byte first checksum Ox3D Table 3 9 Reset command frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Response frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 Field Preamble ProtocolVersion Command SubCommand Status Flags Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Value OxA1EC 0x03 0x07 Refer to table Refer to table Description Unique identifier start of header This document refer
35. ntrol interface connection Bluetechnix provides a NET based tool for updating the Sentis firmware over Ethernet Please refer to our support site BltTofSuite Downloader firmware update tool o https support bluetechnix at index html Note In order to complete a firmware update a complete reboot of the camera is required The camera will NOT reboot automatically 4 15 1 Firmware Recovery If a new firmware fails to load for 3 times the Sentis boot loader will recover the old firmware automatically After a firmware recovery Bit 8 of the Status register is set The Sentis camera also features a firmware load attempt counter in register BootStatus It is usually 1 first boot attempt successful It will lose its value if power is completely removed from the camera 4 16 Logging The camera automatically saves log messages to a dedicated partition in the internal flash Bluetechnix 2015 Page 31 44 A BLUETECHNIX ARA Embedding Ideas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 Log data may be retrieved using the Secure Shell login see chapter 3 4 and can be found at mnt logs messages files Newest log data is contained in file messages Bluetechnix 2015 Page 32 44 A BLUETECHNIX DUN Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 5 Software 5 1 Demo Application For the first evaluation of the camera and to evaluate
36. or average area 4 Bluetechnix 2015 Page 37 44 Software User Manual Sentis ToF P509 Addr hex 01AA 01AB 01AC 01AD 01AE 01AF 01BO 01B1 01B2 01B3 01B4 01B5 Register Name AecAvgWeight1 AecAvgWeight2 AecAvgWeight3 AecAvgWeight4 AecAvgWeight5 AecAvgWeight6 AecAmpTarget AecTintStepMax AecTintMax AecKp AecKi AecKd Default Value hex 44CC C44C FC44 CCC4 4444 4000 02BC 0021 2710 0028 OOOF 0000 R W R W R W R W R W R W R W BLUETECHNIX A AA Description Last change 27 May 2015 Version 0 3 Bit 15 12 Weight for average area 5 Bit 11 8 Weight for average area 6 Bit 7 4 Weight for average area 7 Bit 3 0 Weight for average area 8 Bit 15 12 Weight for average area 9 Bit 11 8 Weight for average area 10 Bit 7 4 Weight for average area 11 Bit 3 0 Weight for average area 12 Bit 15 12 Weight for average area 13 Bit 11 8 Weight for average area 14 Bit 7 4 Weight for average area 15 Bit 3 0 Weight for average area 16 Bit 15 12 Weight for average area 17 Bit 11 8 Weight for average area 18 Bit 7 4 Weight for average area 19 Bit 3 0 Weight for average area 20 Bit 15 12 Weight for average area 21 Bit 11 8 Weight for average area 22 Bit 7 4 Weight for average area 23 Bit 3 0 Weight for average area 24 Bit 15 12 Weight for average area 25 Auto ex
37. posure target amplitude value to which the controller is controlling to Auto exposure maximum change of integration time percentage The relative change of the integration time will be lower than this percentage Auto exposure maximum integration time the controller calculates Proportional part of the auto exposure controller in percent Integral part of the auto exposure controller in percent Differential part of the auto exposure controller in percent Table 6 3 Registers for automatic exposure control 6 4 Registers for Test Commands Addr hex Register Name 01CO TestConfig Bluetechnix 2015 Default Value hex 0000 R W R W Description Bit 1 1 Watchdog Test Writing this register must be preceded by writing Ox5E6B into register CmdEnablePasswd 0x0022 Table 6 4 Registers for Test Commands Page 38 44 A BLUETECHNIX A in Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 6 5 Registers for Device Update Addr Register Name Default R W Description hex Value hex 01D1 FileUpdateStatus 0000 R idle 0 3 out of memory 6 file crc error 8 erasing flash 9 flashing 11 erasing failed 12 flashing failed 14 update success 16 header version conflict 18 wrong fw identifier 20 data inconsistent 21 in progress 255 protocol violation Table 6 5 Registers for device update 6 6 Registers for Filter Configuration Addr Regis
38. pth data from the ToF sensor in millimeters as 16 bit unsigned Uint16 values Resolution is always 160x120 pixels e Grayscale amplitude data from the ToF sensor as 16 bit unsigned Uint16 values Resolution is always 160x120 pixels e Xcoordinate values in millimeters as 16 bit signed Int16 values No negative values allowed Resolution is always 160x120 e Y coordinate values in millimeters as 16 bit signed Int16 values Resolution is always 160x120 e Z coordinate values Same as Y Which image format will be transferred can be selected by the register ImageDataFormat The following sections describe each of the supported formats in detail Only the data section which contains the image Bluetechnix 2015 Page 24 44 BLUETECHNIX J 9 Embedding Ideas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 data of the transferred frame will be described For information about the packet format and meta data please refer to chapter 3 2 4 5 1 Distances and Amplitudes In this mode the distances and amplitudes will be transferred in progressive mode first the distance array then the amplitude array The stream starts always with pixel 0 The distances are coded in millimeters as Uint16 the amplitudes also as Uint16 First Byte in Stream Lowbyte of Highbyte of Distance Distance Pixel 159 Pixel 159 Lowbyte of Highbyte of Lowbyte of Highbyte of Distance Pixel 0 Distance Pixel 0 Di
39. rranties or conditions express implied statutory or in any communication with you Bluetechnix specifically disclaims any implied warranty of merchantability or fitness for a particular purpose Bluetechnix takes no liability for any damages and errors causing of the usage of this board The user of this board is responsible by himself for the functionality of his application He is allowed to use the board only if he has the qualification More information is found in the General Terms and Conditions AGB Information For further information on technology delivery terms and conditions and prices please contact Bluetechnix http www bluetechnix com Warning Due to technical requirements components may contain dangerous substances Bluetechnix 2015 Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 1 General Information This guide applies to the Sentis ToF P509 camera platform from Bluetechnix Follow this guide chapter by chapter to set up and understand your product If a section of this document only applies to certain camera parts this is indicated at the beginning of the respective section 131 Symbols Used This guide makes use of a few symbols and conventions Caution Indicates a situation which if not avoided may result in minor damage to the device in malfunction of the device or in data loss Warning Indicates a situation which if not avoided could resul
40. rs for Filter Configuration ssseesesesseseeseseeeeeeennnene nennen nnne nnne nennen 39 6 7 X Registers for Ethernet configuration eessesessseeseeseeeeeeeeenennene nennen nnne nnne 39 se c 41 7 1 General SUP POM E 41 7 2 Software Support Package 41 To Bl etechnix ToE API ip ee e Gash exe er ge eneen dese 41 WA Related Products sodio scan ssc EU EREUI ius cedaa di ceeeericeb a ee ene ES 41 Firm Ware HIStory m NENEA 42 P MEER VERSIOMMMIONMALON EM 42 ee EE 42 8 3 Document Revision History eesessssseseseeseeeseeeee nennen nennen a nnn nennt nennen nnn nennt 42 lk D EH 43 Listof Figures and Tables uci erra t rnit ecrit etin i Runs cd eo ios 44 Bluetechnix 2015 A BLUETECHNIX Ae Embedding Ideas Bluetechnix 2015 A BLUETECHNIX ARP Bluetechnix 2015 All Rights Reserved The information herein is given to describe certain components and shall not be considered as a guarantee of characteristics Terms of delivery and rights of technical change reserved We hereby disclaim any warranties including but not limited to warranties of non infringement regarding circuits descriptions and charts stated herein Bluetechnix makes and you receive no wa
41. s PV NS gt BLUETECHNIX Embedding Ideas Sentis ToF P509 Software User Manual Version 0 3 A BLUETECHNIX N Embedding Ideas DN Bluetechnix WaidhausenstraBe 3 19 A 1140 Vienna AUSTRIA office bluetechnix com www bluetechnix com Sentis ToF P509 Software User Manual Document No 900 308 A Publication date May 27 2015 Subject to change without notice Errors excepted This document is protected by copyright All rights reserved No part of this document may be reproduced or transmitted for any purpose in any form or by any means electronically or mechanically without expressly written permission by Bluetechnix Windows is a registered trademark of Microsoft Bluetechnix 2015 Table of Contents 1 General Information retirer ee tes Ce te Bla aaa EANA EENAA EEEN EEES AANA EEANN ERECAN aS 7 ti oymbols USCC ees uiii n eterno eei ric reet d tei ce eere a ede teer 7 MERCI UCET avn tera Grint E 8 9 d terfacilig EE 9 nEMCxnoliiem 9 3 1 1 sua MH 10 3 1 2 Rogister Vl TEE 11 3 1 3 png 13 3 1 4 Flash Ree 14 Sidi CAMO iiiter tff fr ae ce ife i da cui E ER EE Eed 16 3 Jatadrterfdce u asi echte uhi eim a ees ed DOR toy EF eI ERR EE YERERE eeng 17 3 2 1 UDP Streaming Header reor iun eese spa te mex uade oie eee 18 3 2 2 Image Header
42. s to version V3 0 Command code for reset Ignored Result code Optional flags Bluetechnix 2015 Page 13 44 Gr GE rm l Jg E dine Software User Manual Addr 0x08 OxOC OxOC OxOE OxOF 0x10 Ox3A Ox3E Field Length HeaderDataO HeaderData1 HeaderData2 HeaderData3 Reserved 42 bytes DataCrc32 HeaderCrc16 Sentis ToF P509 Type Uint32 high byte first Uint8 Uint8 Uint8 Uint8 Uint8 Uint32 high byte first Uint16 high byte first Value 0x0 0x0 lt CRC16 checksum gt Last change 27 May 2015 Version 0 3 Description No lt Data gt present Ignored Ignored Ignored Ignored Ignored No data present after header Checksum over 60 bytes of Header 0x02 Ox3D Table 3 10 Reset response frame Note 1 For the CRC16 calculation the CRC CCITT is used Polynom 0x1021 start value 0 Please ask the Bluetechnix support for an implementation example of the CRC CCITT Flags Flags Description Currently no flags defined for this command Result codes Please refer to Table 3 5 3 1 4 Flash Update Command frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 OxOC 0x10 Ox3A Ox3E 0x40 Field Preamble ProtocolVersion Command SubCommand Status Flags Length FlashAddress Reserved 42 bytes DataCrc32 HeaderCrc16 Data Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Uint32 high byte
43. sponse Tramen 12 Table 3 8 Register write flag description ssssssssssssesssssssssssssseesseeee nenne nennen nnn nnnnenenn snnt nn nnn nnns 13 Table 3 9 Reset command Irame EE 13 Table 3 10 Reset response frame EE 14 Table 3 11 Reset flag desto See ege rre ttr rte d e sage teed eeu CR EH e CE HRRR TE EE EX ERE e EAR DER ERR Rug 14 Table 3 12 Flash update command frame sse eene nn nennen nennen nennen nennen nnn nnne 15 Table 3 13 Flash update response Trame eene ennnnenenn nahen nennen nnns nan n nnn nn nnns 15 Table 3 14 Flash update subcommand description eeeessssssssssssssessseeeeeenneneneee nennen nnns 15 Table 3 15 Flash update flag AeSCription ccccceceesecceeeeeeeceeeesenceeeeseneeeseeeeeeeeseeseesesaeeeeseeeeeeseseeeeesesenseetens 15 Table 3 16 Alive command Trame EE 16 Table 3 17 Alive response Trame EE 17 Table 3 18 Alive flag description oit E n ERE Re EXER D RR Ee HERES Ga S EERE Re ERR S ERR RERR Ta e VERER AX MEER E ERA ag 17 Table 3 19 UDP packet header 18 Table 3 20 UDP packet header flag description 18 RTE ene RER e EE 19 Table 3 23 Default login CredemntialS ceccccecceeeceeeeeeceeeeeeeceeeeeeceeeesseeeeesagaeaeesesaeeeeseeeeeeseseeeeeseseeeeseneeeeetens 20 Table 4 2 Pre defined modulation frequencies nennen nennen nnne nnne 28 RER KE Ee EE 37 Table 6 2 More General registers 2 cerco Geseis asks geseet tee Dese bau Ee Eu EE PE ec senid
44. st which may be smaller Each packet consists of a 32 byte UDP Streaming Header and up to 1400 bytes of image data section refer to Figure 3 1 Addr Field Type Value Description 0x00 Version Uint16 0x0001 Protocol version high byte first 0x02 FrameCounter Uint16 high Continuous frame counter On an overrun it byte first restarts at 0 0x04 PacketCounter Uint16 high Actual packet The frame data must be byte first recomposed in order of the packet 0x06 DataLength Uint16 high Length of the image data section of the current byte first packet 0x08 FrameSize Uint32 high Size of the image data It may be used to byte first calculate the expected of packets for a frame OxOC PacketCRC32 Uint16 high CRC32 checksum over the entire packet pos 0 byte first to pos n 0x10 Flags Uint32 Refer to Optional flags Table 3 20 0x14 Reserved Reserved for future use 0x20 ImageData Image data section Table 3 19 UDP packet header Note 1 For the CRC32 calculation the CRC 32 is used Polynom 0x04C11DB7 start value OXFFFFFFFF Please ask the Bluetechnix support for an implementation example of the CRC 32 Flags Flags Description Bit 0 1 Ignore DataCrc32 Table 3 20 UDP packet header flag description Bluetechnix 2015 Page 18 44 Software User Manual Sentis ToF P509 3 2 2 Image Header The current header version is 3 1 BLUETECHNIX A L DN Last change 27 May 2015 Version 0 3 The image dat
45. stance Pixel 1 Distance Pixel 1 Lowbyte of Highbyte of Lowbyte of Highbyte of Lowbyte of Highbyte of Distance Distance Distance Distance us Distance Distance Pixel 19040 Pixel 19040 Pixel 19041 Pixel 19041 Pixel 19199 Pixel 19199 Lowbyte of Highbyte of Amplitude Amplitude Pixel 159 Pixel 159 Lowbyte of Highbyte of Lowbyte of Highbyte of Amplitude Pixel 0 Amplitude Pixel 0 Amplitude Pixel 1 Amplitude Pixel 1 Lowbyte of Highbyte of Lowbyte of Highbyte of Lowbyte of Highbyte of Amplitude Amplitude Amplitude Amplitude eee Amplitude Amplitude Pixel 19040 Pixel 19040 Pixel 19041 Pixel 19041 Pixel 19199 Pixel 19199 Last Byte in Stream Figure 4 3 Data stream of Distance and Amplitude data 4 5 2 XYZ Point Cloud In this mode the XYZ point cloud will be transferred in progressive mode first the X coordinate array then the Y and Z coordinate array The stream starts always with pixel 0 The coordinates are coded in millimeters as Int16 Bluetechnix 2015 Page 25 44 Software User Manual Sentis ToF P509 First Byte in Stream Lowbyte of X Highbyte of X Coor Pixel 0 Coor Pixel 0 Lowbyte of X Highbyte of X Coor Coor Pixel 19040 Pixel 19040 Lowbyte of Y Highbyte of Y Coor Pixel 0 Coor Pixel 0 Lowbyte of Y Highbyte of Y Coor Pixel 19040 Coor Pixel 19040 Lowbyte of X Coor Pixel 1 Lowbyte of X Coor Pixel 19041 Lowbyte of Y
46. swd root Orpasswd user 3 Supply the new password for two times 4 Copy the file etc shadow containing the encrypted passwords to the non volatile settings partition to be restored again on next camera reboot cp etc shadow mnt settings Bluetechnix 2015 Page 20 44 BLUETECHNIX A N 4 Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 4 Camera Features 4 1 Basic Settings The Sentis comes up according to the reset default values as described in the register description chapter refer to chapter 6 Likely your camera has been pre configured and the register map has already been saved to internal flash memory 42 3D Image Processing Chain The following flow diagram shows the image processing chain of the Sentis for the depth data For the amplitude data currently no post processing is performed Integration Image capturing Distance and amplitude Amplitude Image ready calculation Further steps performed only on depth image Apply filter x Filtering Finished Perform Polar to Cartesian Transformation XYZ Point Cloud needed Figure 4 1 Image processing flow Bluetechnix 2015 Page 21 44 BLUETECHNIX A DUN Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 4 3 3D Image filtering After the distance and amplitude calculation some filters can be applied to the depth data The amplitude data will be left u
47. t in minor or moderate injury and or property damage or damage to the device Note 1 Notes provide information on special issues related to the device or provide information that will make operation of the device easier Procedures A procedure always starts with a headline 1 The number indicates the step number of a certain procedure you are expected to follow Steps are numbered sequentially This sign gt indicates an expected result of your action References This symbol indicates a cross reference to a different chapter of this manual or to an external document Bluetechnix 2015 Page 7 44 A BLUETECHNIX gh Embedding Ideas Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 2 Overview The document describes the necessary steps and settings to work with the Sentis ToF P509 and describes the firmware dependent interfaces This document applies to firmware version 0 2 x For a hardware compatibility list please refer to our support site Software and documentation S https support bluetechnix at index html Bluetechnix 2015 Page 8 44 A BLUETECHNIX A Cen Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 3 Interfacing The Sentis ToF P509 provides control and data interfaces via Gigabit Ethernet The control interface is used to set and read the configuration of the Sentis via a set of registers Refer to chapter 6 for a detailed
48. ter Name Default R W Description hex Value hex 01E0 ImgProcConfig 28C0 R W Bit 0 1 enable Median Filter Bit 3 1 enable Bilateral Filter Bit 4 1 enable Sliding Average Bit 6 1 enable wiggling compensation Bit 7 1 enable FPPN compensation Bit 10 1 enable FrameAverage Filter Bit 1 1 1 enable temperature compensation Bit 13 1 enable offsets via registers DistCalibOffsetX 0x00C1 onwards 01E1 FilterMedianConfig 0001 R W Bit 0 7 Nr of Median Iterations 01E4 FilterBilateralConfig 13DE R W Bit 0 5 Sigma R Width of range kernel Bit 6 11 Sigma S Width of spatial kernel Bit 12 15 Nr of iterations DIER FilterSlafConfig 0005 R W Bit 0 7 Window size 01E6 FilterBilateralConfig2 0003 R W Bit 0 5 Square size gt Window size square size x square size 01E7 FilterFrameAverageConfig 0002 R W BIit 0 3 Number of Frames Table 6 6 Register for filter configuration 6 7 Registers for Ethernet configuration Addr Register Name Default R W Description hex Value hex 0240 EthOConfig 0006 R W Bit 0 1 Enable DHCP Bit 1 1 Enable UDP streaming Bit 2 1 Ignore CRC for UDP streaming 0241 EthOMac2 R W Byte 5 High byte and byte 4 of MAC address Bluetechnix 2015 Page 39 44 Software User Manual Sentis ToF P509 Addr hex 0242 0243 0244 0245 0246 0247 0248 0249 024B 024C 024D 024E Register Name EthOMac1 EthOMacO EthOlpO
49. th number 4 is used the resulting output frame rate will be 10 4 3 5 Pixel invalidation The Sentis ToF P509 provides an on board check for invalid pixels Bluetechnix 2015 Page 22 44 BLUETECHNIX A DUN Software User Manual Sentis ToF P509 Last change 27 May 2015 Version 0 3 e Underexposed pixels The amplitude is too low for the distance value to be trustworthy The Sentis ToF P509 can set the pixel distance to the maximum value The threshold is set via register ConfidenceThresLow e Overexposed pixels The amplitude is too high for the distance value to be trustworthy The Sentis ToF P509 can set the pixel distance to the minimum value The threshold is set via register ConfidenceThresHigh e Invalid pixels The Sentis ToF P509 features an additional amplitude check called ACF auto correlation function Plausibility Check It detects inconsistent pixels e g in case of fast movement in the scene 4 3 5 1 Distance values If the amplitude of the reflected signal is below a threshold underexposure the distance value of the appropriate pixel will be set to OxFFFF If the amplitude is too high overexposure the distance value will be set to 0x0000 For inconsistent pixels the distance value is set to 0x0001 4 3 5 2 XYZ values If the amplitude of the reflected signal is below a threshold underexposure the X value of the appropriate pixel is set to 32767 Ox7FFF i e the largest positive Int16 value Y
50. wer in detail To be able to communicate with the Sentis ToF P509 the frame must be composed exactly as described The following types are used e Uint8 8 bit unsigned integer e Uint16 16 bit unsigned integer e Uint32 32 bit unsigned integer Bluetechnix 2015 Page 9 44 Software User Manual Sentis ToF P509 3 1 1 Note Values with Ox as prefix are hexadecimal values Register read Command frame Addr 0x00 0x02 0x03 0x04 0x05 0x06 0x08 0x0C OxOE OxOF 0x10 Ox3A OxSE Field Preamble ProtocolVersion Command SubCommand Status Flags Length RegisterAddress HeaderData2 HeaderData3 Reserved 42 bytes DataCrc32 HeaderCrc16 Type Uint16 high byte first Uint8 Uint8 Uint8 Uint8 Uint16 Uint32 high byte first Uint16 high byte first Uint8 Uint8 Uint8 Uint32 high byte first Uint16 high byte first Value OxA1EC 0x03 0x03 Refer to table lt of bytes to read gt lt Register Address gt 0x0 lt CRC16 checksum gt E A BLUETECHNIX Last change 27 May 2015 Version 0 3 Description Unique identifier start of header This description refers to protocol version V3 0 Command code for read registers Ignored Ignored Optional flags Number of bytes to read Must be a multiple of two The length divided by two represents the of registers to read Start register address for read command Ignore
51. y 003A FactoryHourMinute 003B 003C FactoryTimezone TempCompGradient3Lim 003D BuildYearMonth 003E BuildDayHour OOSF BuildMinuteSecond 0040 0041 0043 0044 0046 UpTimeLow UpTimeHigh TimSerialLow TimSerialHigh ProcessorStatus 004A TempCompGradientTim 004B TempCompGradient2Tim Bluetechnix 2015 Default Value hex 0000 0000 0000 BLUETECHNIX A I j Last change 27 May 2015 Version 0 3 R W Description RAN R W 222200 Factor b of the illumination temperature compensation function y mm a 10000 x b 10000 x c 1000 x Version of the firmware on TIM uP 19kS3 Spartan6 Bit description see register Firmwarelnfo Initiate an operation OxC2AE Clear RegMap in flash Ox9E20 Read RegMap from flash Ox909A Read factory RegMap OxDD9E Save RegMap in flash Writing this register must be preceded by writing 0x4877 into register CmdEnablePasswd 0x0022 Result code of the operation initiated using CmdExec 1 Success Other Error Hi byte and byte 4 of the MAC address stored in OTP flash Byte 3 and 2 of the MAC address stored in OTP flash Byte 1 and low byte of the MAC address stored in OTP flash Production year stored in OTP flash Bit 0 7 Production day stored in OTP flash Bit 8 15 Production month stored in OTP flash Bit 0 7 Production hour stored in OTP flash Bit 8 15 Production minute stored in OTP flash Production time zone
52. z 1 1 1 Bit 5 1 Calibration data missing 1 1 e 9 se Mw c E Page 34 44 Software User Manual Sentis ToF P509 Addr hex 000A 000B 000C 000D 000E OOOF 0010 0011 0019 001B 001C 0020 0021 0022 0024 0026 0027 002B 002C 002D Register Name Framerate HardwareConfiguration SerialNumberLowWord SerialNumberHighWord FrameCounter CalibrationCommand ConfidenceThresLow ConfidenceThresHigh Mode LedboardTemp MainboardTemp RealWorldXcoordinate CalibrationExtended CmdEnablePasswd MaxLedTemp HorizontalFov VerticalFov TriggerDelay BootStatus TempCompGradientLim Bluetechnix 2015 Default Value hex 0028 0000 012C 3A98 0000 0000 0000 0000 1B58 2 2 0000 4000 R W R W R W R W BLUETECHNIX A d Last change 27 May 2015 Version 0 3 Description or a modulation frequency in multiples of 10kHz may take a while to apply and no calibration data will be available Frame rate Hz Lens opening angle identifier Lower 16bit of the 32bit Serial Number Higher 16bit of the 32bit Serial Number Frame Counter increments on every captured frame Bit 0 7 Cmd code 13 FPPN calibration for the current modulation frequency 16 Clear FPPN calibration data for the current modulation frequency 19 Calibrate DistOffset for the current modulation frequency Amplitude threshold for valid distance data Amplitude threshold for vali

Download Pdf Manuals

image

Related Search

Related Contents

Copyright © All rights reserved.
Failed to retrieve file