Package com.diozero.devices
Class HCSR04
java.lang.Object
com.diozero.devices.HCSR04
- All Implemented Interfaces:
DistanceSensorInterface
,SensorInterface
,Closeable
,AutoCloseable
public class HCSR04 extends Object implements DistanceSensorInterface
User's manual:
https://docs.google.com/document/d/1Y-yZnNhMYy7rwhAgyL_pfa39RsB-x2qR4vP8saG73rE/edit#
Product specification:
http://www.micropik.com/PDF/HCSR04.pdf
Provides 2cm - 400cm non-contact measurement function, the ranging accuracy
can reach to 3mm You only need to supply a short 10uS pulse to the trigger
input to start the ranging, and then the module will send out an 8 cycle
burst of ultrasound at 40 kHz and raise its echo. The Echo is a distance
object that is pulse width and the range in proportion. We suggest to use over
60ms measurement cycle, in order to prevent trigger signal to the echo signal
-
Constructor Summary
Constructors Constructor Description HCSR04(int triggerGpioNum, int echoGpioNum)
Initialise GPIO to echo and trigger pins -
Method Summary
Modifier and Type Method Description void
close()
Free device GPIOsfloat
getDistanceCm()
Send a pulse to HCSR04 and compute the echo to obtain distance
-
Constructor Details
-
HCSR04
Initialise GPIO to echo and trigger pins- Parameters:
triggerGpioNum
- GPIO connected to the HC-SR04 trigger pinechoGpioNum
- GPIO connected to the HC-SR04 echo pin- Throws:
RuntimeIOException
- if an I/O error occurs
-
-
Method Details
-
getDistanceCm
Send a pulse to HCSR04 and compute the echo to obtain distance- Specified by:
getDistanceCm
in interfaceDistanceSensorInterface
- Returns:
- distance in cm
- Throws:
RuntimeIOException
- if an I/O error occurs
-
close
public void close()Free device GPIOs- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceSensorInterface
-