L’installazione di questo sensore aiuterà il nostro irondrone a capire la distanza che intercorre tra lo stesso e l’utente oppure un eventuale ostacolo che si è posto davanti.
Precisiamo i collegamenti sulla nostra GPIO:
- VCC Connesso al Pin 2 (5v)
- Trig Connesso al Pin 7 (GPIO 4)
- Echo Connesso al Pin 5 (GPIO 3)
- GND Connesso al Pin 6 (Ground)
Realizziamo adesso un piccolo script in python che ci aiuterà a capire che tutto è andato per il meglio, restituendoci la distanza tra il nostro sensore e la nostra mano o un oggetto anteposto.
Vi posto il codice:
nano distance_sensor.py
#!/usr/bin/python
import RPi.GPIO as GPIO
import time
try:
GPIO.setmode(GPIO.BOARD)
PIN_TRIGGER = 7
PIN_ECHO = 11
GPIO.setup(PIN_TRIGGER, GPIO.OUT)
GPIO.setup(PIN_ECHO, GPIO.IN)
GPIO.output(PIN_TRIGGER, GPIO.LOW)
print "Waiting for sensor to settle"
time.sleep(2)
print "Calculating distance"
GPIO.output(PIN_TRIGGER, GPIO.HIGH)
time.sleep(0.00001)
GPIO.output(PIN_TRIGGER, GPIO.LOW)
while GPIO.input(PIN_ECHO)==0:
pulse_start_time = time.time()
while GPIO.input(PIN_ECHO)==1:
pulse_end_time = time.time()
pulse_duration = pulse_end_time - pulse_start_time
distance = round(pulse_duration * 17150, 2)
print "Distance:",distance,"cm"
finally:
GPIO.cleanup()
Salvate CTRL+X e poi YES, e testatelo conpython distance_sensor.py
Waiting for sensor to settle
Calculating distance
Distance: 29.69 cm
Se dovessero esserci problemi nell’installazione non esitate a contattarmi per chiedere.