# Medicion de distancia mediante modulo SRF08 con puerto paralelo



## SeI_Mesa (May 23, 2008)

Buen dia, Soy estudiando de la facultad de ingenieria UTN argentina, estoy armando un proyecto que consiste en una torreta que cumple 2 funciones:

*1 - Detectar cambios en la configuracion espacial de su entorno*

_1a - Verificar si los cambios fueron casuales, o si siguen ocurriendo
     1b - Tratar de ubicar un patron de movimiento de la singularidad 
     1c - Guardar datos acerca de la singularidad_
*
2 - Calcular distancia a una ubicacion puntual*

_ 2a - Mediante software el usuario podra apuntar los sensores utilizando la torreta                                             omnidireccional, y realizar un pulso teniendo como resultado la distancia aproximada
    2b - Mediante software el usuario podra realizar un barrido de un angulo determinado teniendo como resultado una lista de distancias por puntos. formando un mapa aproximado de la zona elegida._

Tengo pensando realizarlo mediante modulos SRF08, y utilizando dos motores de corriente continua, los cuales manejare a mi antojo mediante un control de pulsos controlados por software. Todo controlado mediante el puerto paralelo de la PC

Mi problema es el siguiente:

1) Necesitaria saber si alguno conoce una placa para armar como interfaz PC-SRF08, y si conoce  como programar dichos modulos.

2) Una etapa de potencia necesaria para utilizar los motores de continua.

Con el software dentro de la PC no tengo muchos problemas. Utilizo el Borland C como software de control.

Desde ya muchas gracias, y suerte a todos.
*
Mario Mesaglio*


----------



## MaMu (May 23, 2008)

Hola SeI_Mesa, que gusto me da encontrar a gente de la UTN, mi facultad.

Con respecto a tu proyecto, es muy interesante. Los módulos SRF08 se comunican por I2C con cualquier dispositivo, por lo que tu interfase va a quedar reducida a un Acondicionamiento de Señal, salvo que quieras utilizar algún uC, esto da la ventaja de poder darle una dirección al dispositivo y tener conectados algunos más. Además, estos módulos tienen incorporado un sensor de luz, para conocer la luminosidad, y esta medición tambien es por I2C. 
La dirección por defecto de fábrica del SRF08 es 0xE0. El usuario puede cambiar esta dirección y asignar 16 valores diferentes: E0, E2, E4, E6, E8, EA, EC, EE, F0, F2, F4, F6, F8, FA, FC o FE, por lo que es posible utilizar hasta 16 sensores sobre un mismo bus I2C.
Además de las direcciones anteriores, todos los sonares conectados al bus I2C responderán a la dirección 0, que es la dirección de atención general. Esto significa que escribir un comando de medición de la distancia para la dirección 0 de I2C (0x00) dará inicio a la medición en todos los sensores al mismo tiempo. Los resultados deben leerse de manera individual desde cada una de las direcciones reales de los sensores. 
Yo particularmente, no optaría por motores de CC controlados por PWM, sino, que implementaria motores PaP y en cuyo caso, tendría la opción de usar la técnica de los micropasos para un control de posicionamiento óptimo de medición.

Te adjunto la Hoja de Datos del SRF08, ahi encontrarás todo para saber como programarlo, y por cierto, todo lo demás, ya que vas a usar el puerto paralelo, es cuestión de hacerlo mediante la programación, es decir, cada "a" grados de giro, un disparo de pulso y a guardar, asi hasta terminar la trayectoria del area de medición, al finalizar la misma, solo debes leer cada porcion de memoria en donde se guardo cada daro y listo el pollo, aunque, cada quien puede usar una tecnica diferente.

Seria bueno que despues de revisar la hoja de datos, nos digas en que punto estas parado, como para empezar  por el hardware que vas a controlar, es decir, el control de potencia de los motores, etc etc, como para ir definiendo que tenes y que no.

Un saludo


----------



## SeI_Mesa (May 23, 2008)

Desde ya muchas gracias por tu pronta respuesta...

Encontre la respuesta a unos de mis problemas, La interfaz _PC - SRF08_, Que se encuentra en el archivo adjunto a esta respuesta.

En cuanto a los motores de CC los hiba a utilizar a causa de mi poco conocimiento acerca de los PaP, En los que estoy investigando, ya que vi en muchos logares que los recomiendan para este tipo de trabajos.

Estoy tambien tratando de aprender la comunicacion mediante el bus IC2, porque veo que usa solo una salida del puerto paralelo, y no se el orden en el que se mandan los comandos hacia el Slave, En este caso, el SRF08.

Con el software, Como dijiste, es cuestion de programar, con eso no tengo mucho problema. Mi mayor preocupacion ahora es entender en funcionamiento del Bus IC2, el de los Motores PaP, y el lugar donde conseguir el modulo SRF08, Para poder empezar a hacer pruebas y asi avanzar en el proyecto, ya que a causa de su supuesta dificultad me encuentro desarrollandolo solo, ya que lo consideran inutil a este punto de la carrera.

Gracias tambien por el archivo que enviaste, tenia la DataSheet del SRF08 pero esta es mas completa..
*
Mucha suerte*


----------



## MaMu (May 24, 2008)

La interfase que adjuntaste esta muy bien. Ahora bien, hay mucho material en internet acerca de los motores paso a paso, y controlarlos es bastante sencillo, sean unipolares o bipolares. En cuanto a las salidas del I2C, efectivamente, CLK y SDA, simplemente eso, es cuestión que leas un poco del protocolo y verás que es sencillo, sobre todo para esta aplicación.

Saludos


----------



## yerua (Ene 29, 2009)

gente:
           Soy bastante nuevo en esto y carezco de alguna información, estamos tratando de desarrollar un sistema similar de medicion de nivel de agua, y por las investigaciones que realizamos la el sensor SRF08 y la I2C seria lo que necesitamos, alguien me puede decir donde se pueden conseguir aqui en argentina.

Saludos
Yerua


----------

