Detalles para proyecto con 16f877a

Buen dia foreros, soy estudiante de ing. eléctrica pero siempre me ha llamado la atención la electrónica tambien como hobbie, en especifico estoy metido con la programacion con pics, aun estoy iniciando de forma autodidacta pero ya tengo en mente un proyecto.

Sucede que tengo ciertas dudas, tengo pensado sensar temperatura en dos zonas distintas por medio del 16f877a y dos lm35, ya en el foro he encontrado mucha informacion sobre el termometro con este pic. Hasta el momento yo ya genere mi codigo y la simulacion funciona correctamente, aun no lo he montado en un protoboard para probarlo pero no creo tenga problema alguno. Mi primera duda es que, para mi proyecto quiero sensar la temperatura a unos 20 metros de donde estaria mi pic, por ahi he leido que debo ocupar un circuito para amplificar la señal del lm35, es cierto esto? ¿hasta que distancia puedo conectar el lm35 sin necesidad de un amplificador?

Una compañera del foro posteo un circuito que segun ella le funciono y tengo pensado emplearlo, en el ocupa 3 integrados lm358 y unos filtros a la salida del lm35.

Segun me informe para alimentar mi lm35 lo que seria GND y V+ no tendria necesidad de ocupar nada pues no habria caida de tension, es correcto? , osea que solo necesitaria el amplificador para mi señal de salida del sensor?

Saludos y espero no haberlos aburrido.
 
por ahi he leido que debo ocupar un circuito para amplificar la señal del lm35, es cierto esto? ¿hasta que distancia puedo conectar el lm35 sin necesidad de un amplificador?

Buenas preguntas....

y si manejas 12v no creo que necesites mas que una resitencia para acondicionar la señal... :unsure:

Segun me informe para alimentar mi lm35 lo que seria GND y V+ no tendria necesidad de ocupar nada pues no habria caida de tension, es correcto? , osea que solo necesitaria el amplificador para mi señal de salida del sensor?

si utilizas 5v seguramente si sera significativa la caida de voltaje, si utilizas 12v no lo creo....

yo haria la prueba con 12v o quizas 24v....
 
Yo estuve alguna vez en una empresa que usaba LM35 con cables de hasta 25 metros sin amplificacion.....

Debes tener mucho cuidado en el cable que escojas, en esa epoca usabamos un 4x24 blindado, aunque no recuerdo la alimentacion tiene que ser elevada.. unos 12V

Tambien tienes que tomar en consideracion la resistencia del cable... ya que va a generar una caida de tension que te va a afectar a la entrada del PIC.... necesitas compensarla con un opamp o por medio de software...
 
Bueno a ver doy mas datos, pienso hacer un sensor de temperatura para un invernadero, mi pic y el lcd estaran en un modulo y los sensores estaran en el invernadero como a unos 20 mts del modulo. Pienso ocupar una bateria a 12v recargable con un modulo fotovoltaico para hacer esto autonomo. La pregunta es como debo hacer la conexion del sensor lm35?
Inicialmente yo tenia pensado alimentar el pic con 5 volts y de igual forma todo el sistema, pero no se que recomienden, buscare el circuito que posteo una compañera del foro para que lo vean.
 
Inicialmente yo tenia pensado alimentar el pic con 5 volts y de igual forma todo el sistema

el pic en voltaje positivo solo aguanta de 3 a 5.5V si le metes mas lo quemas, con respecto al lm35 reviza el datashit, en pocas palabras lo que entiendo es que con simples resistencias puedes acondicional la señal sin amplificarlo y como dice chico con cable apantallado si no quieres una tremenda antena , y que si quieres algo muy preciso utilices cerca del sensor un conversor analogo a digital ya sea paralelo o serial y esa informacion es la que mandas a grandes distancias....

y el lm35 lo puedes alimentar de 4 a 40V.... yo nunca lo he utilizado en esas distancias pero yo intentaria alimentarlo con 12v...
 
Última edición:
Gracias por la ayuda compañeros, lubeck para como te entiendo entonces el pic si lo mantengo alimentado con 5 volts y me recomiendas aumentar la alimentacion unicamente del lm35 a digamos 12 volts?

Aqui esta el link de una compañera 'jomara' del foro que posteo una solución, es el archivo de word en el que hace uso de lm358, no se si puedieran darle un vistazo y decirme si necesito o no de el.
Disculpen tanta pregunta pero como soy novato en electrónica no se que esta bien o que no necesito, en este caso para sensar la temperatura no se si necesite este circuito que les comento o si solo un buen cable blindado, he visto tambien y no se si pudiesen explicarme porque hay unos diagramas en internet para hacer el termometro que a la salida del lm35 le conectan una resistencia? ¿cual es su funcion de dicha resistencia entre el lm35 y el pic?

saludos.
 
lubeck para como te entiendo entonces el pic si lo mantengo alimentado con 5 volts y me recomiendas aumentar la alimentacion unicamente del lm35 a digamos 12 volts?

sip... asi lo intentaria yo, 5v al pic...12v al lm35 y cable apantallado....

¿cual es su funcion de dicha resistencia entre el lm35 y el pic?
es para tomar el rango completo del sensor de -55 a 150 ºC, pero pon algun link para ver de lo que estas hablando...
 
Gracias por tu pronta respuesta Lubeck, tomare en cuenta lo que me dices para realizar el proyecto. Ahora con respecto al cable, en steren creo venden un cable de red blindado, crees que con este sea suficiente, porque la verdad que por estos rumbos no tengo muchas opciones en cuanto a electronicas bien surtidas.

Y de lo de la resistencia que te comentaba no se donde lo vi, fue mientras investigaba en la red como fabricar un termometro con el pic 16f877a que venian unos circuitos con una resistencia a la salida del lm35 y otros sin la resistencia.

Entonces para mi caso no necesito poner nada entre el pic y el sensor lm35? No se si le echaste un ojo al link que puse del circuito de la compañera del foro con unos lm358.

Saludos.
 
Una disculpa estaba completamente seguro que lo habia anexado.

https://www.forosdeelectronica.com/f23/conectar-lm35-15-metros-pic16f877-11294/

Por cierto abusando de su amabilidad, precisamente ahorita me encuentro con el circuito que arme y como les comentaba soy novato asi que me ando dando de topes jaja, primeramente ya logre que el lcd 16x2 encendiera ya conecte los pines de alimentacion, tierra y backlight. Pero solo me aparece la segunda linea con los cuadros iluminados pero nada de nada con mi programa. Cabe aclarar que mi codigo y la simulacion han funcionado a la perfección pero ya montado en la placa nadamas no funciona.

Como he dicho tiene unas cuantas horas que lo arme y estoy poco a poco entendiendo el funcionamiento de cada pata, pero aun me quedan ciertas dudas.

Para el pic 16f877a que estoy ocupando que debo conectarle? se que sonara torpe pero quiero saber que es lo vital para que opere. Actualmente tiene A0 y A1 funcionando como entradas, en los pines OSC1 y OSC2 conecte mi cristal de 4 MHz, en los pines VDD y VSS el positivo y la tierra, y de ahi todos los pines dedicados al lcd.

Mis dudas son, en el pic aparecen 2 puertos vdd y 2 puertos vss, todos estos deben estar conectados o solo un par de ellos?

El pin Vpp a donde se conecta?

Saludos y disculpen tanta lentitud pero estoy aprendiendo.
 
Última edición:
en los pines OSC1 y OSC2 conecte mi cristal de 4 MHz,

debes poner dos capacitores de 22pF en el oscilador, por un lado a masa y en el otro en cada patita del oscilador respectivamente

en el pic aparecen 2 puertos vdd y 2 puertos vss, todos estos deben estar conectados o solo un par de ellos?

Pin 11 y 32 a positivo
pin 12 y 31 a negativo
y no son puertos son los pines de alimentacion.

El pin Vpp a donde se conecta?

el Vpp pin 1 cuando no estas progrmando deja de llamarse vpp y pasa a ser MCLR y si debe estar a positivo con una resistencia de 10k o 4k7

con respecto a las demas dudas.... no des por echo que nosotros tenemos idea de lo que estés haciendo,
osea que pongas el codigo y el archivo del simulado que estas haciendo.

con respecto al filtro de Jomara pues teoricamente deberia de funcionar... no hay mas que probarlo!...:D
 
Última edición:
Infinitamente agradecido compañeros, acabo de hacer las correciones que me comentan. Lubeck los capacitores ceramicos que me dices son de micro faradios o pico faradios?

Hice las correciones pertinentes pero mi lcd solo se ilumina, estuve leyendo por internet y mencionan que es problema del codigo, unos dicen que es como se inicializa el lcd y por ahi otros decian que se necesita trabajar con otra libreria llamada flex cuando se ocupa el ccs.

Les anexo mi código:

Código:
#include<16f877a.h>
#device adc=10
#fuses XT,NOWDT
#use delay(clock=4000000)
#include<lcd.c>
#use standard_io(D)
void main()
{
   float temp1,temp2,lect1,lect2;
   lcd_init();
   lcd_putc("Vituvi  demo\n");
   lcd_gotoxy(5,2);
   delay_us(20);
   lcd_putc("iniciando...");
   delay_ms(2000);
   lcd_putc("\f");
   
   while(1)
   {
      setup_adc(adc_clock_internal);
      setup_adc_ports(0);
      
      lcd_putc("Temp. zona 1:\n");
      delay_ms(500);
      lcd_gotoxy(10,2);
      lcd_putc("oC");      
      lcd_gotoxy(5,2);
      set_adc_channel(0);
      delay_us(20);
      lect1=read_adc();      
      temp1=lect1*(0.48875);
      printf(lcd_putc,"%02.1f",temp1);
      delay_ms(1000);
      
      lcd_putc("\f");
      lcd_gotoxy(1,1);
      
      setup_adc_ports(1);
      
      lcd_putc("Temp. zona 2:\n");
      delay_ms(500);
      lcd_gotoxy(10,2);
      lcd_putc("oC");
      lcd_gotoxy(5,2);
      set_adc_channel(1);
      delay_us(20);
      lect2=read_adc();      
      temp2=lect2*(0.48875);
      printf(lcd_putc,"%02.1f",temp2);
      delay_ms(1000);
      
      lcd_putc("\f");
      lcd_gotoxy(1,1);
            
      setup_adc(adc_off);      
   }
}


Como les decia en proteus no hay ningun problema, todo simula de maravilla pero ahora que esta montado en el proto no hay señales de vida del programa.

Saludos.
 
Última edición por un moderador:
Infinitamente agradecido compañeros, acabo de hacer las correciones que me comentan. Lubeck los capacitores ceramicos que me dices son de micro faradios o pico faradios?

Hice las correciones pertinentes pero mi lcd solo se ilumina, estuve leyendo por internet y mencionan que es problema del codigo, unos dicen que es como se inicializa el lcd y por ahi otros decian que se necesita trabajar con otra libreria llamada flex cuando se ocupa el ccs.

Les anexo mi código: ....

ja ja ja hay cosas que los simuladores no podran hacer nunca!!!
 
Última edición por un moderador:
Gracias por el recordatorio del contraste compañero pero todo eso ya lo tengo checado, realice bien esas conexiones del LCD se ilumina y todo pero no aparece nada de mi programa, ni siquiera el saludo de bienvenida.
 
Te recomendaria mejor utilizar condensadores de 33pF a veces fallan los de 22pF

Siempre es recomendable empezar por encender un simple led intermitente cada 1 segundo, asi verificas que realmente el micro funciona, arranca el oscilador...


La LCD siempre sale un segmente iluminado si no esta bien iniciada y puede ser devido amultiples causas, puertos mal configurados, velocidad del micro demasiado rapida...

Yo montaria el circuito de la figura 8 del datasheet, ademas utilizacia un 78L05 solo para alimentar los sensores.
Donde pone twited pair debes utilizar cable de audio apantallado de 2 hilos o sino calbe de red (ethernet) apantallado utilizando los uno de los cuatro pared entrelazados (los pares entrelazados es una tecnica para evitar interferencias magneticas, es simplemente coger dos cables y retorcelos una vez a la derecha y otra a la izquierda, derecha izquierda, de tal forma que sumen y resten)

http://www.google.es/url?sa=t&sourc...sg=AFQjCNENZbT8LU9FiMNcj0B-2pHbkdUr4w&cad=rja

Yo personalmente me decantaria por sensores digitales.
http://electronics-diy.com/pic_temperature_meter.php
 
Desesperación total, compañeros aun no hago que funcione ya cheque todo, probe el pic y lo cambie por uno nuevo recien programado y nada. No cabe duda que es la inicializacion del LCD, por ahi encontre una liga con alguien que tenia el mismo problema y dice que era por la libreria que debia de ocupar otra, pero ¿alguien sabe como anexo una libreria nueva a mi codigo?

Gracias por toda su ayuda, y por cierto tiopepe se agradece el tip del sensor digital ya lei el link que me enviaste y veo que si lo puedo conseguir y a un precio razonable, definitivamente cambiare al uso de esos sensores.

Aun asi alguien podria ayudarme a corregir el problema del LCD, todo indica que es cuestion de como se inicializa.
 
Atrás
Arriba