TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: jrgutierrez96 en 08 de Febrero de 2018, 21:47:14

Título: 40 sensores y PIC
Publicado por: jrgutierrez96 en 08 de Febrero de 2018, 21:47:14
Buenas.

antes que nada, me presento ya que soy nuevo en el foro.  mi nombre es jose gutierrez, tengo 22 años, soy estudiante del ultimo semestre de ingenieria electronica, mencion automatizacion y control.

tengo bastante nocion de la programacion del pic en lenguaje c ya que en la universidad nos lo han enseñado. pero ahora necesito realizar un proyecto mas grande y es el siguiente.

necesito hacer un barrido de 40 sensores de temperatura con un pic y mostarlo en una interfaz grafica de labview.  evidentemente el pic solo tiene analogicos en el puerto A. Como haria para realizar la lectura de los 40 sensores  con tan pocas entradas analogicas ???

Puede ser con multiplexacion??

De antemano gracias y ayuda¡¡¡
Título: Re:40 sensores y PIC
Publicado por: tsk en 08 de Febrero de 2018, 22:24:33
El siguiente se podría emplear.

CD74HC4067  (16:1)

Es un multiplexor/demultiplexor analógico de 16 canales.
Título: Re:40 sensores y PIC
Publicado por: Pinolillo16 en 09 de Febrero de 2018, 05:38:55
jrgutierrez96 no solo tienes ADCs en el Puerto A... Depende de que pic hablas? El PIC18F46k22 tiene 28 ADCs o el 18F86k40 tiene 35 ADCs. O bien el 18F67k40 te provee de 47 canales ADC.

Saludos
Título: Re:40 sensores y PIC
Publicado por: Picuino en 09 de Febrero de 2018, 05:47:06
Yo utilizaría sensores digitales:
https://www.digikey.es/product-detail/es/texas-instruments/TMP102AIDRLR/296-26834-2-ND/1907043
0,44 Euros cada uno, bien baratos.

Si ya existen y son analógicos, yo utilizaría varios pic conectados entre sí o ADC externos:
https://www.digikey.es/product-detail/es/maxim-integrated/MAX11625EEG/MAX11625EEG-ND/2591492


En cualquier caso, lo más sencillo posible.

Un saludo.
Título: Re:40 sensores y PIC
Publicado por: luismh en 09 de Febrero de 2018, 08:52:58
Hola,

Citar
El PIC18F46k22 tiene 28 ADCs o el 18F86k40 tiene 35 ADCs. O bien el 18F67k40 te provee de 47 canales ADC.

Esto no es correcto. Los micros que mencionas tienen solo un ADC, pero tienen varias entradas analógicas conectadas a un multiplexor interno.

Si quieres ahorrar en hardware externo, el 18F67k40 que te sugirió Pinolillo puede ser muy útil, ya que conectarías todos tus sensores directo al micro. Eso si, tendrás que trabajar con el multiplexor del micro para acceder a cada uno de ellos apropiadamente.

Saludos.
Luis
Título: Re:40 sensores y PIC
Publicado por: elreypic2 en 09 de Febrero de 2018, 15:20:29
La opción que yo escogería sería el usar sensores de temperatura digitales. Yo optaría por el DS18B20 que es 1-wire es barato y fácil de conseguir.

elreypic.
Título: Re:40 sensores y PIC
Publicado por: KILLERJC en 09 de Febrero de 2018, 16:19:59
El tema de los sensores digitales es el protocolo que se va a elegir. Pero eso va a depender de la distancia que se tenga al sensor.

- El DS18B20 por 1-wire para mi es una pesadilla, ya que es todo por software y delays, ademas no tenes la posibilidad de asignar direccion asi que el multiplexado es simple (todo externo o seleccionar que pin deseas modificar) pero requiere mas cantidad de pines o tiempo.. Es cierto que es barato y facil de conseguir.
- Hay otros digitales que son I2C pero no poseen direccion, lo cual te deja peor que antes ya que ahora hay que multiplexar 2 pines.
- Hay sensores digitales con I2C que soportan hasta 8 direcciones, esto se podria llegar a multiplexar. Y el costo del sensor seguramente sea un poco mayor. Ahora con eso solo deberias multiplexar 1-5 (entrada-salidas) dos veces y señales digitales, uno para el SDA y otro para el SCLK

- Si son PTC/NTC va a depender de la distancia que tengas, y la resistencia que tengas por el error introducido del multiplexor.
Título: Re:40 sensores y PIC
Publicado por: jrgutierrez96 en 09 de Febrero de 2018, 17:47:12
Usaria el pic 16f877a que es el que ya poseo , gracias a los que han comentado y generado ideas hasta ahora.

un saludo desde venezuela.
Título: Re:40 sensores y PIC
Publicado por: elreypic2 en 10 de Febrero de 2018, 10:48:29

- El DS18B20 por 1-wire para mi es una pesadilla, ya que es todo por software y delays, ademas no tenes la posibilidad de asignar direccion asi que el multiplexado es simple (todo externo o seleccionar que pin deseas modificar) pero requiere mas cantidad de pines o tiempo.. Es cierto que es barato y facil de conseguir.


Bueno esto no es un debate para nada, es cuestion de compartir ideas a otros y ayudarles con sus dudas.
En cuanto a lo que comentas KILLERJC, si bien el protocolo de comunicación del DS18B20 se implementa por software, y no puedes asignar la dirección, estos tienen un código único de identificación lo que permite que puedas colocar varios sensores un un solo hilo tal como lo especifica la hoja de datos y es ahí donde veo la ventaja. De hecho el número de sensores colocados en el bus 1-wire prácticamente es ilimitado.
Un tema que no menciona jrgutierrez96 es la distancia a la que estarán los sensores, por lo que ya las opciones serían bastantes, tal como ya mencionó picuino.
Esa es mi humilde opinión, pero obviamente también está la disponibilidad de componentes electrónicos en Venezuela (que ahora me imagino ha de ser muy escasa). Así que lo mejor sería jrgutierrez96 nos comentara lo que tiene disponible y tratar de encontrar la mejor forma de realizar el proyecto que tiene en mente.

Saludos a todos

P.S Por cierto KILLERJC realmente admiro la habilidad que tienes para el lenguaje C, gracias por toda la ayuda que compartes en este maravilloso foro.
Título: Re:40 sensores y PIC
Publicado por: KILLERJC en 10 de Febrero de 2018, 11:43:05
Citar
Bueno esto no es un debate para nada, es cuestion de compartir ideas a otros y ayudarles con sus dudas.En cuanto a lo que comentas KILLERJC, si bien el protocolo de comunicación del DS18B20 se implementa por software, y no puedes asignar la dirección, estos tienen un código único de identificación lo que permite que puedas colocar varios sensores un un solo hilo tal como lo especifica la hoja de datos y es ahí donde veo la ventaja. De hecho el número de sensores colocados en el bus 1-wire prácticamente es ilimitado.

Tenes razón en cuanto al debate, yo pienso debatir todo porque considero una fuente de aprendizaje genial ejej  :D, y sobre el DS18B20 parece que me salte la parte donde decía del identificador de 48bits (60 si contas todo) que posee el DS18B20.
Lo que no encuentro por ahí factible es que este numero tal ves sea único, pero quiere decir que tengas que revisar uno por uno antes de introducirlo en el circuito para saber cual es su identificador y así comunicarte con este. O hacer un reconocimiento de todas las direcciones posibles pero seria una locura 2,8x10^14 posibilidades jeje.

Y como decís, un solo hilo y tendría todos los sensores.

Citar
P.S Por cierto KILLERJC realmente admiro la habilidad que tienes para el lenguaje C, gracias por toda la ayuda que compartes en este maravilloso foro.

Y hay gente que considero que sabe mucho mas que yo respecto a los compiladores y su manejo. Uno de ellos es tsk, parece que sacara los codigos de una galera rapidamente.
Ultimamente me estuve enfocando un poco mas en C++, tiene sus ventajas, pero puede ser un gran dolor de cabeza rapidamente si no se sabe de pie a cabeza lo que esta sucediendo.
Título: Re:40 sensores y PIC
Publicado por: elreypic2 en 11 de Febrero de 2018, 23:45:54
Lo que no encuentro por ahí factible es que este numero tal ves sea único, pero quiere decir que tengas que revisar uno por uno antes de introducirlo en el circuito para saber cual es su identificador y así comunicarte con este. O hacer un reconocimiento de todas las direcciones posibles pero seria una locura 2,8x10^14 posibilidades jeje.

Bueno si lo ves desde ese punto de vista sí es una locura. Pero existe un algoritmo basado en un comando que tienes todos los dispositivos  1-wire de maxim. Ese comando se llama "Search ROM[F0h]" y su función es ayudarte a buscar los numeros de identificación de cada sensor colocado en el bus.

Según la nota de aplicación 937 (Book of iButton® Standards) se pueden localizar hasta 75 sensores en un segundo sin contar el tiempo de proceso del propio microcontrolador (ver parte final de la página 53 de la nota de aplicacion).

https://pdfserv.maximintegrated.com/en/an/AN937.pdf

En las páginas 50 a la 53 explican el proceso de búsqueda y maravillosamente tienen otra nota de aplicación con el código en C del algoritmo de búsqueda. La nota de aplicación es la numero 187 (1-Wire Search Algorithm):

https://www.maximintegrated.com/en/app-notes/index.mvp/id/187

Ahora que si te quieres evitar la programación del algoritmo puedes usar un driver (también de maxim) que realiza la búsqueda por hardware, que básicamente es un convertidor de serial a 1-wire. Este es el DS2480B:

https://pdfserv.maximintegrated.com/en/an/AN192.pdf

Espero esto pueda servir de ayuda.

elreypic.
Título: Re:40 sensores y PIC
Publicado por: KILLERJC en 12 de Febrero de 2018, 00:15:22
Muy interesante, gracias!