Ayuda con conexion de sensores a Pic

Buenas soy nuevo en el foro y eh estado buscando informacion acerca de mi problema pero no eh tenido exito, se los planteo para quien me pueda ayudar.
Quisiera conectar unos 100 sensores ultrasonios para posicionamiento en un pic, ¿seria esto posible con multiplexores? o alguien tiene una idea con que hacerlo, el pic que quiero utilizar aun no lo se porque quiero basarme a las entradas que necesito.
De antemano muchas gracias por su atencion y sus respuestas.:apreton:
 
100 sensores ultrasonicos.... pero que quieres hacer con tanto sensor???

Dejando a un lado el tema de los pines necesarios no creo que un PIC simple te pueda dar tanto poder de calculo... forzosamente necesitaras un PIC grande (18Fxxx, 24Fxxx o incluso DsPIC), o incluso un ARM
 
XD... seria para un proyecto de estacionamiento inteligente.
Si estube viendo los pic grandes pero se me hacen muchas conexiones, lo que me gustaria saber es si se pueden conectar varios en una linea o forzosamente tiene que ser 1 entrada por cada sensor :S.

De igual manera lo haria fisico con unos pocos sensores para demostracion, pero en el documento del proyecto si debo hacerlo con una gran cantidad.
 
Última edición:
Puedes utilizar los expansores de IO como el MCP23016/17 el cual es Serial i2C se pueden poner 8 de 16IO=128IO

ahora el reto a vencer seria el cableado:unsure:
 
Última edición:
Claro que es posible... igual puedes conectarle 2000 o 50000 sensores al pobre PIC, la duda que deberias tener es, podra el PIC tener suficientes recursos (RAM, ROM, velocidad, etc) para manejarlos a todos???

Tambien tienes limitantes de tipo fisico.....a que distancia estaran los sensores entre si??, por que poner cables muy largos tiene inconvenientes de ruido, asi que tienes que irlos juntando por medio de protocolos seriales que te permitan mandar datos a grandes distancias...
 
hola interesante proyecto, como dice Chico3001, si la extención del sensor al pic es muy grande no solo ruido si no también atenuación de la señal en el cable, eso en el caso de hacerlo físicamente con todos los sensores. Una manera de solucionarlo seria seccionar por módulos o concentradores utilizando por secciones físicas una cantidad de sensores digamos 25 a un modulo esclavo y a través de una comunicación serial ya sea por cable o RF, comunicarlo a un máster que sea el control del sistema completo, no necesitarías conectar los 100 sensores a un solo pic y el cableado seria mas cómodo. Costaría un poco mas pero si es para un estacionamiento eso se recuperaría rápido.
 
Encontre este archivo por el foro, mi pregunta es, ¿es posible realizar esas conexiones?

si es posible, yo no lo utilizaria....:D

yo lo haria con los expansores i2c de 16bits... no los he probado a grandes distancias pero con esos solucionas muchos problemas como la velocidad del pic puesto que tienen interrupcion propia, es comunucacion serial, solo necesitarias poner dos cables largisimos pero se tendria que solucionar por la caida de tension. claro que con este y cualquier metodo con cables se tendria que solucionar.
 
Muchas gracias por ayudarme e interes en el tema.
Estube leyendo sus ideas y gogliando para orientarme mejor, les quiero plantear una solucion que se me ocurrio partiendo de las suyas claro perono se si sea posible.

Si realizo la conexion por secciones (como bien menciono reyvilla) a un esclavo, por ejemplo 16 sensores a un expansor (como dijo lubeck) de ahi la conexion i2c a un pic que funcione como esclavo o podria conectar los 16 sensores directos al pic o usando algun multiplexor y la comunicacion del esclavo con el maestro en conexion serial rs485 por eso de la atenuacion de señal y ruido en el cable (como dijo chico3001).

Puede haber esa comunicacion o habria algun inconveniente? Disculpen en realidad estoy oxidado en pics pero estoy dispuesto a investigar y aprender, no pido que me lo realicen si no que me orienten y creo que es la manera en que mejor se aprende.

Les planteo bien el proyecto para que se den una mejor idea y seria que en un estacionamiento a la entrada se encuentre un display que muestre el num de lugares disponibles en cada piso, en esecia de eso se trata XD.
 
I2C solo soporta conexiones de no mas de 1 o 2 metros... asi que yo recomendaria comunicar todo por medio de rs485, ethernet o incluso RF....
 
:unsure:

me parece que no me explique bien con mi propuesta, yo decia que se necesitan 2 cables largisimos entre el sensor y el expansor, no entre el expansor y el micro para el i2c que en realidad serian 4, pero bueno se me ocurrio esta idea OneWire a 110VAc aprovechando la red eléctrica para el neutro...

Image0002.JPG

Todo solucionado o que opinan.... :D

solo seria ver si los expansores cumplen con la norma AN521 de microchip y solo se necesita 1 cable largisimo entre el sensor y el expansor, 1 optotriac, 1resistencia de 5M, y 1 reistencia de 180Ω para acoplarlos....
 
Última edición:
Lubeck se ve bien pero no entendi la idea XD... no habia escuchado del one wire, busque informacion y aun quede con dudas.

Me inclinaria mas a conectarlo por rs485 ya que puedo conectar 32, 128 en dos lineas, busque la manera de conectarlo y en la hoja de datos del 485 viene ya sea usar el max485 o DS75176N, lo que no estoy seguro es como conectar el sensor al 485 mi idea es: la alimentacion del sensor a tx, salida del sensor a rx y tierra aterrizada, ahora del 485 -RE y DE no se donde se conectan.

Si me podiran explicar o algun diagrama para darme una mejor idea?
 
hola counterchuy estuve revisando el datasheet del integrado max485 el maximo es de 32, el que es de 128 es el max487, y con respecto a conectar el sensor directo no lo veo muy posible ya que no se trata de un simple circuito si no de un Transceiver, lo cual necesita un control para enviar y recibir la información para que no choquen las señales en la salidas. Pero no se que tan posible sea lo que tu quieres hacer, encontré un enlace que hablan al respecto esta en ingles espero te sea de ayuda.

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1270227591
 
Efectivamente.... con cualquier metodo de transmision cada sensor requerira su propio PIC que actue de controlador... pero puede ser un PIC muy pequeño (12XXXX) y para todos el programa sera siempre el mismo... solo se les cambia por medio de algun switch la direccion para que sea unica...
 
Tengo vistos:

S320124 SRF01 (que no se donde lo puedo conseguir XD)
GH311

Si saben de algunos se los agradezo.

Entonces creo que la idea es hacer una placa en cada ubicacion del sensor donde la conexion seria: sensor-pic-max48X de ai conectado a la red 485 para que se conecte con el pic maestro. Ahora si quiero agregar una luz arriba del cajon disponible lo puedo hacer con el mismo pic en la placa para que cuando haya un cambio de estado cambie la luz no es asi.
 
hola primero tendrias que definir bien cual sensor vas a usar a pesar de que muchos cumplen la misma funcion de ultrasonido no todos tienen las mismas características, hay unos que vienen un un chip driver para el sensor y generan una secuencia de pulsos y señales, otros son unicamente los sensores y ya. Por eso es importante que lo hagas primero antes que nada, luego si vas a utilizar un pic para cada sensor yo te recomendaria el 12F675 que tiene los adc y es económico y pequeño.
 
Les planteo bien el proyecto para que se den una mejor idea y seria que en un estacionamiento a la entrada se encuentre un display que muestre el num de lugares disponibles en cada piso, en esecia de eso se trata XD.

Saludos... una sugerencia, ¿porque no intentar darle vuelta al problema?, conectar tantos sensores a un uC sea cual sea el uC me parece una tarea hercúlea, (sin mencionar el costo, los problemas de ruido como mencionan y demás).
Mi sugerencia es sencilla, mediante una interfaz contar los automóviles que vayan entrando a cada piso e ir restando de un contador los que vayan saliendo. Para eso sería suficiente un par de sensores infrarrojos o ultrasónicos en la entrada de cada piso o del edifico en si (me imagino un edificio con estacionamientos en la planta baja).
 
Atrás
Arriba