Sie sind auf Seite 1von 6

Universidad de Los Andes

Faculta de Ingeniera
Escuela de Mecnica
Departamento de Tecnologa y Diseo
Mecnica de Robot
Integrantes:
Astrid Daz C.I.: 19.146.017
Alejandro Batatn C.I.: 19.751.293

Practica 8. Midiendo distancias con un sensor de ultrasonidos.


Objetivo General: Utilizar un sensor de ultrasonido para medir distancias
cuando se presente un obstculo a travs de la plataforma Arduino.
Materiales que se utilizaran para el desarrollo de la prctica:
1.
2.
3.
4.
5.
6.

Una tarjeta Arduino Uno-R3 o Arduino Mega 2560.


Un cable USB impresora.
Un computador.
Cables para el montaje del circuito.
Tarjeta Protoboard.
Un sensor de ultrasonido (no importa la marca o el serial), en este caso
para la prctica se utiliz un sensor HC-SR04.

Los sensores de ultrasonidos son detectores de proximidad que trabajan


libres de roces mecnicos y que detectan objetos a distancias que van desde
pocos centmetros hasta varios metros. El sensor emite un sonido y mide el
tiempo que la seal tarda en regresar. Estos reflejan en un objeto, el sensor
recibe el eco producido y lo convierte en seales elctricas, las cuales son
elaboradas en el aparato de valoracin. Estos sensores trabajan solamente en
el aire, y pueden detectar objetos con diferentes formas, colores, superficies y
de diferentes materiales. Los materiales pueden ser slidos, lquidos o
polvorientos, sin embargo han de ser deflectores de sonido. Los sensores
trabajan segn el tiempo de transcurso del eco, es decir, se valora la distancia
temporal entre el impulso de emisin y el impulso del eco.

Montaje de la prctica:

Con el fin de comprender de una manera ms fcil el funcionamiento del


circuito, as como verificar todas las conexiones existentes, se realiza en primer
lugar el montaje del circuito mediante el uso del programa Fritzing.

Figura 1. Montaje del circuito en el programa Fritzing.

Podemos observar quel sensor tiene 4 pines, la conexin del cable rojo
va desde el pin VCC del sensor al pin de 5V de la tarjeta Arduino, el cable azul
va desde el pin TRING del sensor al pin 12 de la tarjeta Arduino, el cable verde
va desde el pin ECHON del sensor al pin 11 de la tarjeta Arduino, el pin 11 de la
tarjeta tiene al lado un smbolo ( ) , esos puertos o pines que contienen al
lado este tipo de smbolo nos permiten mandar seal modulada, es decir los
pines que no tienen ese emblema solo mandan seales de 0 y 1; y es necesario
emular una seal digital por eso utilizaremos el pin 11, y por ltimo el cable
negro va desde el pin GND de sensor al pin de tierra de la tarjeta Arduino.

Figura 2. Sensor de Ultrasonido utilizado


en la prctica.
Luego que tengamos armado el circuito en el programa Fritzing,
podemos empezar con el desarrollo del programa en el IDE de Arduino.
Procedimiento de cmo llevar a cabo el codificado del programa:
1. Se debe seleccionar en la IDE de Arduino el tipo de tarjeta con el que
vamos a trabajar siendo Arduino Uno-R3 o Arduino Mega 2560.
2. Se selecciona el Puerto Serial, es decir el puerto USB se va a conectar la
tarjeta Arduino con el computador.
3. Se empieza a realizar el cdigo:
Inicialmente debemos identificar el programa que estamos
desarrollando, por tanto se asigna un nombre al programa, esto se
hace empleando el smbolo //, que permite colocar comentarios a
lo largo del cdigo para poder facilitar la comprensin de la
instruccin que realiza cada lnea, podemos colocar el ttulo de la
prctica o del programa en s.
Se deben declarar las variables globales que sern utilizadas en el
programa. Antes de eso debemos llamar a un paquete dentro de la
IDE de Arduino llamado NewPing, el carga comandos que trabajan
solamente con este tipo de dispositivo; a esto se le llama
programacin orientada a objetos. El comando para llamar al
importante paquete es #include<NewPing.h>. Debemos declarar
la variable de movimiento del sensor para esto utilizamos el
comando #define TRIGGER_PIN, se define la variable y se coloca
el valor del pin en la cual mandara esa seal de movimiento en
nuestro caso ser el pin 12. Nos quedara entonces #define
TRIGGER_PIN 12. Luego debemos declara la variable de
repeticin, la cual nos permitir saber a qu distancia encontrara
un obstculo para esto utilizamos el comando #define ECHO_PIN,
el pin que nos permitir mandar la seal modulada entre el
obstculo y el sensor ser el pin 11. Nos quedara entonces
#define ECHO_PIN 11. Y por ltimo debemos definir a que

distancia mxima podr leer nuestro sensor, para esto utilizaremos


el comando #define MAX_DISTANCE, en este caso queremos
darle un valor de distancia de 200 centmetro. Este comando es
importante ya que es el que le dar a la seal la distancia de ir y
venir para quel sensor pueda leerlo.
Nos quedara entonces #define MAX_DISTANCE 200.
Seguidamente se realiza la declaracin de las configuraciones de
las variables o la inicializacin de la comunicacin serie dentro de
los corchetes que delimitan el bloque de programa void setup ().
Para la realizacin de esta prctica se trabajara con la
comunicacin serie, es decir la comunicacin de datos con el
computador. Para abrir el puerto serie se utiliza el comando
Serial.Begin (115200); indicando dentro de los parntesis la
velocidad de comunicacin con el computador, esta generalmente
es 9600 bits por segundo, aunque otras tasas pueden ser
soportadas.
Luego de inicializada la comunicacin serie, se procede con el
bloque de programacin que se encuentra ubicado en el interior de
los corchetes del comando void loop () el cual se ejecutara
continuamente leyendo las entradas y generando las salidas. En las
primeras instrucciones del bloque de programa se quiere darle un
delay de 50, ya que es necesario que tenga un tiempo de espera
entre los pines. Luego a travs del comando unsigned int uS =
sonar.ping(), permite enviar la seal digital la cual es la distancia
que tomara el sensor al ser obstaculizada por algn objeto.
Posteriormente se empleara la funcin Serial.print(); para ensear
el valor medido a travs del monitor, en el interior de los parntesis
se debe colocar el valor, si se quieren escribir palabras o frases
estas deben ir delimitadas mediante los comillas, es decir
Serial.print (Ping:
). Luego para que pueda convertir el
tiempo en que la seal va y viene en distancia (cm) debemos
utilizar el comando
Serial.print (uS/ US_ROUNDTRIP_CM); y pasa ensear el valor
de distancia utilizaremos Serial.println(Cm: ).
Finalmente se debe verificar que al final de cada instruccin se
haya colocado el respectivo punto y coma, de lo contrario habrn
errores a la hora de compilar.
Una vez compilado el programa se ejecuta el mismo. Si las
conexiones se hicieron de manera correcta el seor capta y enva
las seal a la tarjeta y esta posteriormente al monitor, sin embargo
para poder observar estos datos es necesario activar el monitor
serial, esto se realiza oprimiendo click izquierdo en la barra de
herramientas del IDE de Arduino que sealiza el monitor serial en la
parte superior derecha.

NOTA: Para quel IDE de Arduino pueda entender los comandos es necesario
que al final de cada instruccin se coloque punto y coma (;).
En la siguiente imagen se mostrara como quedo plasmado en el IDE de
Arduino, los procedimientos anteriormente sealados:

Figura 3. Cdigo de Lectura de valor de distancia a travs de un


sensor de ultrasonido.

Figura 4. Botn para activar el Monitor Serial.

Conclusin: Como hemos visto a lo largo de esta prctica, utilizar el


sensor de ultrasonido con una librera facilita en gran medida el desarrollo de
aplicaciones. Sin embargo, podemos desarrollar tambin nuestro propio cdigo
que optimice el uso del tiempo del CPU, utilizando incluso interrupciones y
eventos.
El cdigo realizado con la librera NewPing queda bastante sencillo y
adems de aceptar el sensor ultrasnico HC-SR04 permite utilizar la gran
mayora de los sensores que utilizan interfaz del tipo Interfaz con pulsos con
3 y 4 pines.
Las ventajas e inconvenientes de estos sensores son, al no necesitar el
contacto fsico con el objeto, ofrece la posibilidad de detectar objetos frgiles,
como pintura fresca, adems detecta cualquier material, independientemente
del color, al mismo alcance, sin ajuste ni factor de correccin. Los sensores
ultrasnicos tienen una funcin de aprendizaje para definir el campo de
deteccin, con un alcance mnimo y mximo de precisin de 6 mm. El
problema que presentan estos dispositivos son las zonas ciegas y el problema
de las falsas alarmas. La zona ciega es la zona comprendida entre el lado
sensible del detector y el alcance mnimo en el que ningn objeto puede
detectarse de forma fiable.

Das könnte Ihnen auch gefallen