ToF based light distance meters and rangefinders are one of the most accurate contactless distance measuring devices. The ability to precisely measure distance without making actual contact, allows Light Ranger 3 to be used in industry - for counting dimensions of goods in industry, controlling a safety area, building contactless digital measurement tools. Some other uses for this device could be building 3D visual guidance applications in robotics, for moving it through obstacles, and similar.
How does it work?
Light Ranger 3 click uses the Simblee™ enabled RFD77402 ToF sensor module from RF Digital. This sensor uses the VCSE (Vertical Cavity Surface Emitting) narrowband LASER, which emits light in the range of 850 nm. The light emission is in the IR range of the spectrum and it is not visible by a human eye. It is received by the IR sensor and processed by the integrated sections of the RFD77402, giving an 11-bit result on the output register, available via the standard I2C interface. The device is rated as Class 1 LASER product, and it does not cause harmful eye injuries. However, it should not be pointed towards the eyes.
The highly integrated RFD77402 ToF sensor encompasses several integrated sections. It has an embedded MCU, OTP memory, RAM area, ranging processing unit and the VCSEL driver. It exposes a simple I2C interface for the communication with the host MCU, offering a range of registers, used for configuring and status reporting. In addition, it offers an interrupt pin (INT) routed to the INT pin of the mikroBUS™. Highly configurable interrupt engine allows this pin to be configured to generate interrupt signals for various events, alerting the host MCU about some important status changes, such as the Data Ready event, for example. It can be set to work in both open-drain configurations, as well as in the push-pull mode. The Click board™ is equipped with the 10K pull-up resistor, so it is advised to configure the INT pin in open-drain mode.
The measurement is done by comparing the modulation shift of the light in the reflected beam. Therefore, the range and the accuracy depend on the material of the measured object, as well as the photo - pollution of the IR spectrum. The module is designed to suppress the noise and interference. The narrow Field of Illumination (29°) allows focused measurement and prevents beam scattering. The receiver has a bit wider Field of View (55°), allowing it to catch the reflected beam. The measurement is naturally affected by the IR reflectance of an object, so best results are achieved when measuring the distance of the objects that have high IR reflectance. The maximum range that can be measured is 2000mm, while the minimum operational range is 100mm. The measurement error is linear, and it grows with the distance. It stays within 10% of the distance
The Click board™ uses only 3.3V power rail from the mikroBUS™. No additional jumpers or selectors exist on the Click board™ since the RFD77402 ToF sensor module is highly integrated and requires a minimum number of external components to work. The RFD77402 module datasheet offers an extensive information about internal registers and how to configure them. However, the click comes with the library of functions that provide simplified operation and measurement. The use of these functions is demonstrated in the example, which can be used as the reference for custom design.
Specifications
Type |
Optical |
Applications |
Can be used for counting dimensions of goods in industry, controlling a safety area, building contactless digital measurement tools, 3D visual guidance applications in robotics, for moving it through obstacles, and similar |
On-board modules |
Simblee™ enabled RFD77402 ToF sensor module, from RF Digital |
Key Features |
Contactless measurement up to 2000m, with up to 10% accuracy. The device is rated Class 1 laser product, operating in the IR (invisible) spectrum range. Integrated sections allow minimum number of external components to be used |
Interface |
I2C |
Input Voltage |
3.3V |
Click board size |
S (28.6 x 25.4 mm) |
Pinout diagram
This table shows how the pinout on LightRanger 3 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | | Pin | Notes |
---|
|
NC |
1 |
AN |
PWM |
16 |
NC |
|
|
NC |
2 |
RST |
INT |
15 |
INT |
Interrupt OUT |
|
NC |
3 |
CS |
RX |
14 |
NC |
|
|
NC |
4 |
SCK |
TX |
13 |
NC |
|
|
NC |
5 |
MISO |
SCL |
12 |
SCL |
I2C Clock |
|
NC |
6 |
MOSI |
SDA |
11 |
SDA |
I2C Data |
Power supply |
3.3V |
7 |
3.3V |
5V |
10 |
NA |
|
Ground |
GND |
8 |
GND |
GND |
9 |
GND |
Ground |
Onboard settings and indicators
Label | Name | Default | Description |
---|
PWR |
PWR |
- |
Power LED indicator |
Software support
We provide a library for the LightRanger_3 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library initializes and defines the I2C bus driver and drivers that offer a choice for writing data in registers and reading data from registers. The library includes functions for full initialization chip with the procedure is written following the instructions from the datasheet. The user has the functions available for softReset, read distance and confidence distance value, Then functions for go to standby mode, go to off mode, go to on mode and measurement mode.
Key functions:
uint8_t lightranger3_init()
- Functions for initializes chip
uint8_t lightranger3_takeSingleMeasurement()
- Functions for measurement
uint16_t lightranger3_getDistance()
- Functions for reads distance
Example description
The application is composed of three sections:
- System Initialization - Initializes I2C module and sets the INT pin as INPUT
- Application Initialization - Initializes driver init and configuration chip
- Application Task - (code snippet) - Includes measurements, reads distance, and logs distance to USBUART for every 300 ms. Distance measurement at distances ranging from 100 mm to 2000 mm
void applicationTask()
{
lightranger3_takeSingleMeasurement();
Distance = lightranger3_getDistance();
IntToStr(Distance,DistanceTxt);
mikrobus_logWrite( "Distance =", _LOG_TEXT );
mikrobus_logWrite( DistanceTxt, _LOG_TEXT );
mikrobus_logWrite( " mm", _LOG_LINE );
Delay_ms( 300 );
}
The full application code, and ready to use projects can be found on our LightRanger 3 click LibStock page.
Other mikroE Libraries used in the example:
Additional notes and information
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
mikroSDK
This click board is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant click board demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.