upm  0.4.1
Sensor/Actuator repository for libmraa (v0.8.0)
Public Member Functions | List of all members

API for the DFRobot URM37 Ultrasonic Ranger. More...

Detailed Description

The driver was tested with the DFRobot URM37 Ultrasonic Ranger, V4. It has a range of between 5 and 500 centimeters (cm). It supports both analog distance measurement, and UART based temperature and distance measurements. This driver does not support PWM measurement mode.

For UART operation, the only supported baud rate is 9600. In addition, you must ensure that the UART TX/RX pins are configured for TTL operation (the factory default) rather than RS232 operation, or permanent damage to your URM37 and/or MCU will result. On power up, the LED indicator will blink one long pulse, followed by one short pulse to indicate TTL operation. See the DFRobot wiki for more information:

(https://www.dfrobot.com/wiki/index.php?title=URM37_V4.0_Ultrasonic_Sensor_%28SKU:SEN0001%29)

An example using analog mode

An example using UART mode

Public Member Functions

synchronized void delete ()
 
 URM37 (int aPin, int resetPin, int triggerPin, float aref)
 
 URM37 (int aPin, int resetPin, int triggerPin)
 
 URM37 (int uart, int resetPin)
 
void reset ()
 
float getDistance (int degrees)
 
float getDistance ()
 
float getTemperature ()
 
short readEEPROM (short addr)
 
void writeEEPROM (short addr, short value)
 

Constructor & Destructor Documentation

URM37 ( int  aPin,
int  resetPin,
int  triggerPin,
float  aref 
)

URM37 object constructor (Analog mode)

Parameters
aPinAnalog pin to use
resetPinGPIO pin to use for reset
triggerPinGPIO pin to use for triggering a distance measurement
arefThe analog reference voltage, default 5.0
URM37 ( int  uart,
int  resetPin 
)

URM37 object constructor (UART mode)

Parameters
uartDefault UART to use (0 or 1).
resetPinGPIO pin to use for reset

Member Function Documentation

float getDistance ( int  degrees)

Get the distance measurement. A return value of 65535.0 in UART mode indicates an invalid measurement.

Parameters
degreesin UART mode, this specifies the degrees to turn an attached PWM servo connected to the MOTO output on the URM37. Default is 0. Valid values are 0-270. This option is ignored in analog mode.
Returns
The measured distance in cm
float getTemperature ( )

Get the temperature measurement. This is only valid in UART mode.

Returns
The measured temperature in degrees C
short readEEPROM ( short  addr)

In UART mode only, read a value from the EEPROM and return it.

Parameters
addrThe address in the EEPROM to read. Valid values are between 0x00-0x04.
Returns
The EEPROM value at addr
void reset ( )

Reset the device. This will take approximately 3 seconds to complete.

void writeEEPROM ( short  addr,
short  value 
)

In UART mode only, write a value into an address on the EEPROM.

Parameters
addrThe address in the EEPROM to write. Valid values are between 0x00-0x04.
valueThe value to write
Returns
The EEPROM value at addr

The documentation for this class was generated from the following file: