public class BrickletLaserRangeFinderV2 extends Device
Modifier and Type | Class and Description |
---|---|
class |
BrickletLaserRangeFinderV2.Configuration |
class |
BrickletLaserRangeFinderV2.DistanceCallbackConfiguration |
static interface |
BrickletLaserRangeFinderV2.DistanceListener
This listener is triggered periodically according to the configuration set by
setDistanceCallbackConfiguration(long, boolean, char, int, int) . |
class |
BrickletLaserRangeFinderV2.MovingAverage |
class |
BrickletLaserRangeFinderV2.SPITFPErrorCount |
class |
BrickletLaserRangeFinderV2.VelocityCallbackConfiguration |
static interface |
BrickletLaserRangeFinderV2.VelocityListener
This listener is triggered periodically according to the configuration set by
setVelocityCallbackConfiguration(long, boolean, char, int, int) . |
Device.Identity
Constructor and Description |
---|
BrickletLaserRangeFinderV2(String uid,
IPConnection ipcon)
Creates an object with the unique device ID \c uid.
|
Modifier and Type | Method and Description |
---|---|
void |
addDistanceListener(BrickletLaserRangeFinderV2.DistanceListener listener)
Adds a Distance listener.
|
void |
addVelocityListener(BrickletLaserRangeFinderV2.VelocityListener listener)
Adds a Velocity listener.
|
int |
getBootloaderMode()
Returns the current bootloader mode, see
setBootloaderMode(int) . |
int |
getChipTemperature()
Returns the temperature as measured inside the microcontroller.
|
BrickletLaserRangeFinderV2.Configuration |
getConfiguration()
Returns the configuration as set by
setConfiguration(int, boolean, int, int) . |
int |
getDistance()
Returns the measured distance.
|
BrickletLaserRangeFinderV2.DistanceCallbackConfiguration |
getDistanceCallbackConfiguration()
Returns the listener configuration as set by
setDistanceCallbackConfiguration(long, boolean, char, int, int) . |
int |
getDistanceLEDConfig()
Returns the LED configuration as set by
setDistanceLEDConfig(int) |
boolean |
getEnable()
Returns the value as set by
setEnable(boolean) . |
Device.Identity |
getIdentity()
Returns the UID, the UID where the Bricklet is connected to,
the position, the hardware and firmware version as well as the
device identifier.
|
BrickletLaserRangeFinderV2.MovingAverage |
getMovingAverage()
Returns the length moving average as set by
setMovingAverage(int, int) . |
int |
getOffsetCalibration()
Returns the offset value as set by
setOffsetCalibration(int) . |
BrickletLaserRangeFinderV2.SPITFPErrorCount |
getSPITFPErrorCount()
Returns the error count for the communication between Brick and Bricklet.
|
int |
getStatusLEDConfig()
Returns the configuration as set by
setStatusLEDConfig(int) |
int |
getVelocity()
Returns the measured velocity.
|
BrickletLaserRangeFinderV2.VelocityCallbackConfiguration |
getVelocityCallbackConfiguration()
Returns the listener configuration as set by
setVelocityCallbackConfiguration(long, boolean, char, int, int) . |
long |
readUID()
Returns the current UID as an integer.
|
void |
removeDistanceListener(BrickletLaserRangeFinderV2.DistanceListener listener)
Removes a Distance listener.
|
void |
removeVelocityListener(BrickletLaserRangeFinderV2.VelocityListener listener)
Removes a Velocity listener.
|
void |
reset()
Calling this function will reset the Bricklet.
|
int |
setBootloaderMode(int mode)
Sets the bootloader mode and returns the status after the requested
mode change was instigated.
|
void |
setConfiguration(int acquisitionCount,
boolean enableQuickTermination,
int thresholdValue,
int measurementFrequency)
The **Acquisition Count** defines the number of times the Laser Range Finder Bricklet
will integrate acquisitions to find a correlation record peak.
|
void |
setDistanceCallbackConfiguration(long period,
boolean valueHasToChange,
char option,
int min,
int max)
The period is the period with which the
BrickletLaserRangeFinderV2.DistanceListener listener is triggered
periodically. |
void |
setDistanceLEDConfig(int config)
Configures the distance LED to be either turned off, turned on, blink in
heartbeat mode or show the distance (brighter = object is nearer).
|
void |
setEnable(boolean enable)
Enables the laser of the LIDAR if set to *true*.
|
void |
setMovingAverage(int distanceAverageLength,
int velocityAverageLength)
Sets the length of a `moving averaging <https://en.wikipedia.org/wiki/Moving_average>`__
for the distance and velocity.
|
void |
setOffsetCalibration(int offset)
The offset is added to the measured distance.
|
void |
setStatusLEDConfig(int config)
Sets the status LED configuration.
|
void |
setVelocityCallbackConfiguration(long period,
boolean valueHasToChange,
char option,
int min,
int max)
The period is the period with which the
BrickletLaserRangeFinderV2.VelocityListener listener is triggered
periodically. |
void |
setWriteFirmwarePointer(long pointer)
Sets the firmware pointer for
writeFirmware(int[]) . |
int |
writeFirmware(int[] data)
Writes 64 Bytes of firmware at the position as written by
setWriteFirmwarePointer(long) before. |
void |
writeUID(long uid)
Writes a new UID into flash.
|
getAPIVersion, getResponseExpected, setResponseExpected, setResponseExpectedAll
public static final int DEVICE_IDENTIFIER
public static final String DEVICE_DISPLAY_NAME
public static final byte FUNCTION_GET_DISTANCE
public static final byte FUNCTION_SET_DISTANCE_CALLBACK_CONFIGURATION
public static final byte FUNCTION_GET_DISTANCE_CALLBACK_CONFIGURATION
public static final byte FUNCTION_GET_VELOCITY
public static final byte FUNCTION_SET_VELOCITY_CALLBACK_CONFIGURATION
public static final byte FUNCTION_GET_VELOCITY_CALLBACK_CONFIGURATION
public static final byte FUNCTION_SET_ENABLE
public static final byte FUNCTION_GET_ENABLE
public static final byte FUNCTION_SET_CONFIGURATION
public static final byte FUNCTION_GET_CONFIGURATION
public static final byte FUNCTION_SET_MOVING_AVERAGE
public static final byte FUNCTION_GET_MOVING_AVERAGE
public static final byte FUNCTION_SET_OFFSET_CALIBRATION
public static final byte FUNCTION_GET_OFFSET_CALIBRATION
public static final byte FUNCTION_SET_DISTANCE_LED_CONFIG
public static final byte FUNCTION_GET_DISTANCE_LED_CONFIG
public static final byte FUNCTION_GET_SPITFP_ERROR_COUNT
public static final byte FUNCTION_SET_BOOTLOADER_MODE
public static final byte FUNCTION_GET_BOOTLOADER_MODE
public static final byte FUNCTION_SET_WRITE_FIRMWARE_POINTER
public static final byte FUNCTION_WRITE_FIRMWARE
public static final byte FUNCTION_SET_STATUS_LED_CONFIG
public static final byte FUNCTION_GET_STATUS_LED_CONFIG
public static final byte FUNCTION_GET_CHIP_TEMPERATURE
public static final byte FUNCTION_RESET
public static final byte FUNCTION_WRITE_UID
public static final byte FUNCTION_READ_UID
public static final byte FUNCTION_GET_IDENTITY
public static final char THRESHOLD_OPTION_OFF
public static final char THRESHOLD_OPTION_OUTSIDE
public static final char THRESHOLD_OPTION_INSIDE
public static final char THRESHOLD_OPTION_SMALLER
public static final char THRESHOLD_OPTION_GREATER
public static final int DISTANCE_LED_CONFIG_OFF
public static final int DISTANCE_LED_CONFIG_ON
public static final int DISTANCE_LED_CONFIG_SHOW_HEARTBEAT
public static final int DISTANCE_LED_CONFIG_SHOW_DISTANCE
public static final int BOOTLOADER_MODE_BOOTLOADER
public static final int BOOTLOADER_MODE_FIRMWARE
public static final int BOOTLOADER_MODE_BOOTLOADER_WAIT_FOR_REBOOT
public static final int BOOTLOADER_MODE_FIRMWARE_WAIT_FOR_REBOOT
public static final int BOOTLOADER_MODE_FIRMWARE_WAIT_FOR_ERASE_AND_REBOOT
public static final int BOOTLOADER_STATUS_OK
public static final int BOOTLOADER_STATUS_INVALID_MODE
public static final int BOOTLOADER_STATUS_NO_CHANGE
public static final int BOOTLOADER_STATUS_ENTRY_FUNCTION_NOT_PRESENT
public static final int BOOTLOADER_STATUS_DEVICE_IDENTIFIER_INCORRECT
public static final int BOOTLOADER_STATUS_CRC_MISMATCH
public static final int STATUS_LED_CONFIG_OFF
public static final int STATUS_LED_CONFIG_ON
public static final int STATUS_LED_CONFIG_SHOW_HEARTBEAT
public static final int STATUS_LED_CONFIG_SHOW_STATUS
public BrickletLaserRangeFinderV2(String uid, IPConnection ipcon)
public int getDistance() throws TinkerforgeException
setEnable(boolean)
.
If you want to get the value periodically, it is recommended to use the
BrickletLaserRangeFinderV2.DistanceListener
listener. You can set the listener configuration
with setDistanceCallbackConfiguration(long, boolean, char, int, int)
.TinkerforgeException
public void setDistanceCallbackConfiguration(long period, boolean valueHasToChange, char option, int min, int max) throws TinkerforgeException
BrickletLaserRangeFinderV2.DistanceListener
listener is triggered
periodically. A value of 0 turns the listener off.
If the `value has to change`-parameter is set to true, the listener is only
triggered after the value has changed. If the value didn't change
within the period, the listener is triggered immediately on change.
If it is set to false, the listener is continuously triggered with the period,
independent of the value.
It is furthermore possible to constrain the listener with thresholds.
The `option`-parameter together with min/max sets a threshold for the BrickletLaserRangeFinderV2.DistanceListener
listener.
The following options are possible:
\verbatim
"Option", "Description"
"'x'", "Threshold is turned off"
"'o'", "Threshold is triggered when the value is *outside* the min and max values"
"'i'", "Threshold is triggered when the value is *inside* or equal to the min and max values"
"'<'", "Threshold is triggered when the value is smaller than the min value (max is ignored)"
"'>'", "Threshold is triggered when the value is greater than the min value (max is ignored)"
\endverbatim
If the option is set to 'x' (threshold turned off) the listener is triggered with the fixed period.TinkerforgeException
public BrickletLaserRangeFinderV2.DistanceCallbackConfiguration getDistanceCallbackConfiguration() throws TinkerforgeException
setDistanceCallbackConfiguration(long, boolean, char, int, int)
.TinkerforgeException
public int getVelocity() throws TinkerforgeException
setConfiguration(int, boolean, int, int)
) is configured. Also the laser
has to be enabled, see setEnable(boolean)
.
If you want to get the value periodically, it is recommended to use the
BrickletLaserRangeFinderV2.VelocityListener
listener. You can set the listener configuration
with setVelocityCallbackConfiguration(long, boolean, char, int, int)
.TinkerforgeException
public void setVelocityCallbackConfiguration(long period, boolean valueHasToChange, char option, int min, int max) throws TinkerforgeException
BrickletLaserRangeFinderV2.VelocityListener
listener is triggered
periodically. A value of 0 turns the listener off.
If the `value has to change`-parameter is set to true, the listener is only
triggered after the value has changed. If the value didn't change
within the period, the listener is triggered immediately on change.
If it is set to false, the listener is continuously triggered with the period,
independent of the value.
It is furthermore possible to constrain the listener with thresholds.
The `option`-parameter together with min/max sets a threshold for the BrickletLaserRangeFinderV2.VelocityListener
listener.
The following options are possible:
\verbatim
"Option", "Description"
"'x'", "Threshold is turned off"
"'o'", "Threshold is triggered when the value is *outside* the min and max values"
"'i'", "Threshold is triggered when the value is *inside* or equal to the min and max values"
"'<'", "Threshold is triggered when the value is smaller than the min value (max is ignored)"
"'>'", "Threshold is triggered when the value is greater than the min value (max is ignored)"
\endverbatim
If the option is set to 'x' (threshold turned off) the listener is triggered with the fixed period.TinkerforgeException
public BrickletLaserRangeFinderV2.VelocityCallbackConfiguration getVelocityCallbackConfiguration() throws TinkerforgeException
setVelocityCallbackConfiguration(long, boolean, char, int, int)
.TinkerforgeException
public void setEnable(boolean enable) throws TinkerforgeException
getDistance()
to ensure stable measurements.TinkerforgeException
public boolean getEnable() throws TinkerforgeException
setEnable(boolean)
.TinkerforgeException
public void setConfiguration(int acquisitionCount, boolean enableQuickTermination, int thresholdValue, int measurementFrequency) throws TinkerforgeException
TinkerforgeException
public BrickletLaserRangeFinderV2.Configuration getConfiguration() throws TinkerforgeException
setConfiguration(int, boolean, int, int)
.TinkerforgeException
public void setMovingAverage(int distanceAverageLength, int velocityAverageLength) throws TinkerforgeException
TinkerforgeException
public BrickletLaserRangeFinderV2.MovingAverage getMovingAverage() throws TinkerforgeException
setMovingAverage(int, int)
.TinkerforgeException
public void setOffsetCalibration(int offset) throws TinkerforgeException
TinkerforgeException
public int getOffsetCalibration() throws TinkerforgeException
setOffsetCalibration(int)
.TinkerforgeException
public void setDistanceLEDConfig(int config) throws TinkerforgeException
TinkerforgeException
public int getDistanceLEDConfig() throws TinkerforgeException
setDistanceLEDConfig(int)
TinkerforgeException
public BrickletLaserRangeFinderV2.SPITFPErrorCount getSPITFPErrorCount() throws TinkerforgeException
TinkerforgeException
public int setBootloaderMode(int mode) throws TinkerforgeException
TinkerforgeException
public int getBootloaderMode() throws TinkerforgeException
setBootloaderMode(int)
.TinkerforgeException
public void setWriteFirmwarePointer(long pointer) throws TinkerforgeException
writeFirmware(int[])
. The pointer has
to be increased by chunks of size 64. The data is written to flash
every 4 chunks (which equals to one page of size 256).
This function is used by Brick Viewer during flashing. It should not be
necessary to call it in a normal user program.TinkerforgeException
public int writeFirmware(int[] data) throws TinkerforgeException
setWriteFirmwarePointer(long)
before. The firmware is written
to flash every 4 chunks.
You can only write firmware in bootloader mode.
This function is used by Brick Viewer during flashing. It should not be
necessary to call it in a normal user program.TinkerforgeException
public void setStatusLEDConfig(int config) throws TinkerforgeException
TinkerforgeException
public int getStatusLEDConfig() throws TinkerforgeException
setStatusLEDConfig(int)
TinkerforgeException
public int getChipTemperature() throws TinkerforgeException
TinkerforgeException
public void reset() throws TinkerforgeException
TinkerforgeException
public void writeUID(long uid) throws TinkerforgeException
TinkerforgeException
public long readUID() throws TinkerforgeException
TinkerforgeException
public Device.Identity getIdentity() throws TinkerforgeException
getIdentity
in class Device
TinkerforgeException
public void addDistanceListener(BrickletLaserRangeFinderV2.DistanceListener listener)
public void removeDistanceListener(BrickletLaserRangeFinderV2.DistanceListener listener)
public void addVelocityListener(BrickletLaserRangeFinderV2.VelocityListener listener)
public void removeVelocityListener(BrickletLaserRangeFinderV2.VelocityListener listener)
Copyright © 2021 Tinkerforge GmbH. All rights reserved.