|
|
|
Estamos mudando
uControl. La página que estas viendo en breve va a ser dada de baja,
dado que ya fué migrada al nuevo sitio.
Te invitamos a
que descubras el nuevo ucontrol, y que cambies los links desde tu
pagina o tus favoritos. Perdon por las disculpas, y nos vemos en el
nuevo ucontrol.
[Has
click aqui para ir a la nueva página] |
Sugerencias, preguntas o dudas? Escribe a arielpalazzesi @
gmail.com
Ultima actualización: 21/03/2007
Circuitos básicos de Entrada y Salida - FORO
TODOPIC
LINKS:
[Foro TodoPIC]
[Hilo
Circuitos E/S - Esquemas listos para usar original]
[PDF]
|
CIRCUITOS DE E/S APORTADOS POR LOS
USUARIOS DEL FORO
TODOPIC
|
|
INTRODUCCIÓN:
Este documento se basa en un hilo del foro
TodoPIC, en el
que se propuso armar una especie de biblioteca virtual de circuitos que
generalmente usamos para resolver los problemas de entrada-salida de
nuestros proyectos.
Recomendamos SIEMPRE visitar el
hilo original dentro del foro, ya que esta siendo permanentemente
actualizado, cosa que no sucede con este resumen, que tiene su razón de
ser como base para generar el documento PDF.
Se ha consignado en cada caso el autor del circuito, usando como
identificación su nombre dentro del
foro. |
> 001 - Activar un Rele:
AUTOR: Aitopes
Circuito
básico que
generalmente utilizo para activar un rele desde un pin del PIC.
Algunas aclaraciones: el diodo protege al transistor de la corriente
devuelta por la bobina del rele. El transistor puede ser reemplazado sin
demasiados problemas por algún TUN.

> 002 - Manejo de lámparas y motores a 220v:
AUTOR:
Xocas06
El circuito es de lo mas
genérico. La señal del pic llega, a través de una resistencia limitadora, al
fototriac moc3041 que dispone de un alto nivel de aislamiento y un detector
de paso por cero en su interior. La resistencia R2 limita la corriente que
pasa por el fototriac para evitar que se dañe y puede estar en el orden de
los 360 a 470 ohm. Todas las resistencias usadas son de 1/2w exceptuando r1
que es de 1/4w. La elección del triac ira en función de nuestras
necesidades. En este caso se eligió un bta08600 (8A/600v) porque su parte
metálica esta aislada (en muchos casos esta parte metálica esta conectada a
uno de los ánodos, con el consiguiente peligro de descarga) porque soporta
sin necesidad de radiador hasta 500w y porque esta indicado especialmente
para cargas altamente inductivas según su hoja de datos. aunque podría ser
perfectamente un bt136,137 etc. Se recomiendo la lectura de la hoja de
datos tanto del triac como del moc3041 antes de proceder. La resistencia R4
y el condensador C1 no serán necesarias si la carga es resistiva (lámparas).

Se deben de tomar las precauciones que se corresponden con el
manejo de una tensión de 220v
> 003 - RS-232 en 8 pines con DS275
AUTOR:
Xocas06
Cuando pensamos en
comunicar nuestro PIC vía RS-232 a todos nos viene a la cabeza el famoso
max232 de Maxim. Es un chip con 16 pines y dos canales rs-232 de los cuales
en muchos casos solo utilizamos uno. Maxim dispone también del ds275 que
puede servirnos en bastantes casos a nuestros propósitos, si nos conformamos
con un solo canal. en tan solo 8 pines y sin necesidad de condensadores
externos. Recomiendo una lectura de su hoja de datos:
http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2929 . Aquí un sencillo
esquema que creo no requiere de ningún tipo de explicación.

> 004 - Adaptación de sensor LM35 a PIC 16F877
AUTOR:
flacoclau
Aquí les comparto como
adapté un LM35 a un 16f877, me funciona de maravilla, está configurado para
un fondo de escala de 102,3ºC
En la pata 5 (RA3) tenemos la Vref+ con un diodo de referencia de 2,5V que
sería el fondo de escala, o sea el valor 1023 en el conversor A/D, por lo
tanto serían 2,5V/1023=2,44mV por cada paso del conversor, esto se obtiene
calibrando el preset de 1K (Yo uso un trimpot multivuelta) y midiendo con el
tester en la pata 2 del lm35 para que en el display se lea lo mismo. Si el
lm35 entrega 1mV por cada décima de grado (salvando la exactitud del bicho)
tendría que amplificar la tensión 2,44 veces aproximadamente.

> 005 - Adaptador de niveles de voltaje, 5-25 v a Vcc.
AUTOR:
RedPIC
Aquí tenéis un muy simple
adaptador de niveles de tensión. Cualquier cosa entre 5 y 25 voltios que
pongáis en la entrada tendréis Vcc en la salida:

> 006 - RS-232 sin integrados, solo con componentes
discretos:
AUTOR: Aitopes
Este es el esquema para
utilizar conexiones RS-232 sin necesidad del MAX232 o similares. A veces,
para salir de un apuro, con unos pocos componentes discretos que seguro
tenemos en un cajón podemos resolver el problema.

> 007 - RS-232 con MAX232
AUTOR: Aitopes
El mas popular de los
esquemas de conversión TTL <-> RS-232 :

> 008 - RELE desde el PIC, con luz piloto
AUTOR: Aitopes
Esta es una variación
sobre el primer circuito del hilo, solo agrega un led que indica visualmente
si el rele esta o no energizado.

> 009 LED, enciende con "0" o con "1"
AUTOR:
Aitopes
El led de arriba enciende
cuando el pin del PIC esta en 0. En el segundo caso, cuando el pin esta en
1.

> 010 - Una Fuente de alimentación de 5V sencilla
AUTOR:
RedPIC
Si este
esquema, u otro similar, nada de lo que hagamos sirve para nada .

> 011 - Optoacoplador para aislar una Entrada o una
Salida
AUTOR:
RedPIC
Una forma fácil de
proteger un pin del PIC
 
> 012 - LEDS en serie - Multiplexados para display
AUTOR:
Aitopes
Bueno, el titulo de este
esquema era medio complicado, pero la idea es la siguiente: Se trata de un
display de 7 segmentos gigante, donde cada segmento de cada digito esta
formado por varios leds en serie. Como son varios dígitos, los tengo que
multiplexar, y poder desde el PIC seleccionar que segmento de que digito voy
a encender.
La solución que encontré es usar dos transistores, uno para la selección del
digito, y otro para el segmento. El ánodo del primer LED de cada segmento de
un digito están unidos a un transistor (el de arriba), de forma de poder
seleccionarlo independientemente de los otros, y los cátodos del ultimo led
de cada segmento (por ejemplo el del medio de cada digito) unido a otro
transistor que se encarga de seleccionar el segmento adecuado. Es un lío la
explicación, pero el esquema se entiende mejor.
Puse el mismo esquema 4 veces, para cubrir los 4 posibles estados, donde se
ve que el segmento enciende solo cuando el digito se selecciona con un"0" y
el segmento con un "1". Por supuesto, se supone que dos pines del PIC
controlan los voltajes que ingresan por las resistencias de 1K.
La resistencia limitadora se puede calcular haciendo R = (V - NLeds x VLed)
/ ILed. Tener en cuenta la caída de tensión en el transistor. V debe ser por
supuesto mayor a NLeds x VLed. El transistor de arriba debe ser elegido para
que soporte la corriente que circulara por todos los LEDS implicados. Un
BC327 puede ser mejor que el sugerido.

> 013 - Salida con Optoacoplador y rele
AUTOR:
MarioGuillote
No hay mucho que decir
sobre el.

> 014 - CD4511
AUTOR:
Aitopes
Este integrado nos permite
controlar un display de 7 segmentos mediante cuatro pines del PIC. No es muy
complicado multiplexarlo para usar mas de un digito con solo un integrado (y
un pin adicional por digito, para el multiplexado).

> 015 - ON-OFF con el popular 555
AUTOR:
MarioGuillote
Este circuito es muy útil
para el encendido/apagado de nuestros proyectos.
Según cómo se conecte C1, arranca el circuito, si se conecta a GND arranca
con un cero a la salida, por el contrario, si se conecta a VCC el circuito
arrancará con un uno a la salida. Pulsamos una vez el botón, ON ... pulsamos
otra vez, OFF. Sencillo y útil.
Esa salida la podemos conectar a cualquiera de los circuitos propuestos para
relés u optotriacs y con eso activar cargas importantes. Una función ON-OFF
que nos puede ahorrar líneas de programa y terminales del PIC.

> 016 - Protector de Alimentación
AUTOR:
MarioGuillote
Muchos de los que nos
dedicamos a esto de la Electrónica, hacemos nuestros ensayos de los
proyectos con fuentes variables, generalmente entre 2 o 3 Volts y unos 18
Volts, construidas con un transformador de algunos amperes, unos diodos que
andaban por ahí, un electrolítico súper-gigante que no se usaba en
absolutamente nada y nos vino bárbaro para nuestra fuente. El LM317, el/los
2N3055 o TIP35 , un par de capacitores más, (los más puristas, el 723) y
listo! Nuestra fuente de laboratorio!
Y lógicamente como todo proceso de existencia, alguna vez trabajando con un
circuito de 5 Volts ....... PIFFFF ! , los transistores se ponen en corto
por algún error de manipulación nuestro y adiós circuito.
Aquí les propongo un circuito que encontré hace muchos años y es tan
sencillo como eficiente.
El fusible de entrada se va a colocar de acuerdo al consumo del circuito a
alimentar, como se calculan siempre los fusibles, tema ya tratado en el
foro. El zener debe ser de 1V más que el circuito a alimentar y de potencia
1W. El tiristor puede ser cualquiera, con un TIC226 anda perfecto, pero
también depende de la aplicación a usar.
El funcionamiento habla por sí solo, viendo el esquema:
1) Ante una inversión de
polaridad se ceba el triac, funde el fusible y circuito salvado.
2) Ante una suba de tensión de alimentación, por el zener circula una
corriente inversa que ceba el triac y funde el fusible.
3) No provoca caída de tensión en el circuito que se intercale.
Sencillo, barato, muy eficaz y lo mejor de todo ..... Es a prueba de genios
como nosotros. Espero sea útil.

> 017 - Driver para Motores CC
AUTOR:
MarioGuillote
En este último tiempo he
estado usando unos motores CC de casi 1 Amper (para que tengan una idea, un
poco más grandes que los usados en los reproductores de cassete) y utilicé
este esquema que lo operaba desde un 16F84A. Los motores deslizaban unas
puertas pequeñas de vidrio y la posición de la mismas se detectaban con
switch's en las correderas usadas. Pocos componentes, útil y fácil de
construir. Este tipo de circuito se usa en algunos equipos de audio para la
bandeja de 3 CD (Open/Close).

> 018 - Beep .... Beep .... Beep !
AUTOR:
MarioGuillote
El típico pi-pi-pi-pi
..... ("nerviosador") de activación de algún sistema de alerta. R1 y C1
determinan la frecuencia de activación de los beep, mientras que R2 y C2
determinan el tono del mismo. Para BUZ1 he usado con estridente éxito los
piezoeléctricos (campanillas) de los teléfonos de mesa. Cualquier
tweeter barato es útil para esta aplicación.
Menos líneas de código nunca vienen mal.

> 019 - Registro de desplazamiento para manejar
4x7segmentos (+ 2 puntos)
AUTOR: Aitopes
El
presente esquema esta pensado para controlar 4 displays LED de 7 seg.
mediante unas pocas líneas de control desde el PIC: Clock, Data, Reset y una
para el apagado del display (puede ser útil para evitar parpadeos durante el
refresco).
Hay que tener en cuenta que las entradas de datos del 74LS164 están NEGADAS,
por lo que se debe escribir un "0" para que la salida correspondiente este
activa. Tener en cuenta el estado del RESET.
El primer bit que se ingresa va siendo "empujado" hacia el "fondo" por los
demás, por lo que si metemos 32 bits, el primero en entrar seria el que
queda en la ultima posición del registro. Si seguimos enviando mas bits, se
empiezan a "perder" por el "fondo". Se pueden conectar mas en cascada.

> 020 - Adaptador de niveles 5V/3.3V bidireccional
AUTOR:
Manofwar

> 021 - Mini-Amplificador de Audio con LM386
AUTOR:
MarioGuillote
Alimentando el circuito,
como muestra la figura, con tensiones entre 5 y 12 Volts, obtendremos sobre
un pequeño parlante una potencia de audio de entre 300 y 800 mW. Más que
suficientes para algún speech ó para los sonidos "DING DONG !" de los
indicadores de turnos en los cajeros del banco, o para cualquier aplicación
que requiera un poquito de sonido.

> 022 - Interfaz para medir temperatura con una
termocupla y un PIC
AUTOR:
Charly29
Hola a todos, aquí les
dejo un circuito que permite por medio de una termocupla medir temperaturas
de más de 1000°C, el mismo posee compensación de la unión fría para
conservar la linealidad, el esquema es el siguiente:

Como se
puede apreciar, a la entrada de la termocupla se la filtra fuertemente para
evitar cualquier tipo de interferencias.
Las 2 bobinas que están sobre la misma se construyen sobre un único núcleo
toroidal de ferrita con un diámetro de entre 10 y 15 mm, en el mismo y con
doble alambre de 0.2mm de cobre esmaltado (de los usado para bobinar
transformadores y motores eléctricos) se realizan entre 30 y 40 vueltas, al
ser el alambre doble una ves realizadas las 30 vueltas ya se tendrá
construidas ambas bobinas. Entonces las 2 puntas pertenecientes al principio
del bobinado se sueldan del lado de la termocupla, y las 2 pertenecientes al
final se sueldan del lado del circuito.
Luego del filtrado la señal es amplificada por un OA tipo OP07 que es de
bajo offset y alta ganancia, para luego atacar la entrada del conversor A/D
del PIC.
El LM35 (sensor de temperatura) debe ser instalado lo más próximo posible de
la unión donde los hilos de la termocupla se conectan a la PCB, para unir la
termocupla a la PCB es conveniente usar un conector ya que la misma será muy
difícil de soldarla directamente, por lo tanto el sensor de temperatura debe
estar lo más cerca posible de este conector.
La señal entregada por el LM35 es filtrada y
amplificada por un OA del tipo LM358 para luego introducirla al conversor
del PIC
El circuito integrado LM336-2.5 es usado como tensión de referencia de 2.5V
para los conversores, ya que si usáramos de referencia la tensión de
alimentación del propio PIC, las lecturas de temperatura podrían tener
grandes errores.
Por ultimo queda aclarar que la compensación de la unión en frío se realiza
mediante software, como la termocupla a temperatura ambiente entrega a su
salida una tensión igual a 0V lo único que hay que realizar es la suma de la
temperatura medida por la termocupla y la temperatura entregada por el
sensor, de tal manera que:
T°C = Tcupla + Tsensor
Por lo tanto este circuito solo medirá temperaturas iguales o mayores a la
temperatura ambiente, siendo imposible medir temperaturas inferiores a la
ambiente.
Para calibrar el circuito se debe hacer lo siguiente:
1) Retirar la termocupla y en su lugar realizar un puente con un cable lo
más corto posible.
2) Ajustar el preset del LM358 hasta que la temperatura leída sea igual a la
ambiente.
3) Retirar el puente y conectar la termocupla (prestar atención que posee
polaridad)
4) Usando un termómetro como referencia y ambos (termocupla y termómetro)
sumergidos en agua hirviendo ajustar el preset del OP07 hasta que el
circuito indique la misma temperatura que el termómetro.
> 023 - Interfaz de celda de carga para usar con
PIC
AUTOR:
Charly29
Hola a
todos, como lo prometido es deuda, aquí les dejo un circuito que estoy
usando para una celda de carga y funciona lindo:

El
esquema hace uso de los OA tipo OP07, los mismos pueden ser reemplazados por
los OP77 o los OP177, pero no garantizo su correcto funcionamiento si son
reemplazados por otro tipo de amplificador operacional.
La ganancia del circuito de entrada puede ser regulada entre 200 y 1000
aproximadamente, por lo tanto no impide que se usen celdas con distintos
coeficiente de salida.
Una ves puesto en funcionamiento el circuito hay que ajustar el preset del
LM336-Z2.5 hasta que en el emisor del transistor BC548 nos indique una
tensión de 5V.
Luego sin peso sobre la celda se ajusta OFFSET hasta que el pin 7 del 12F675
se encuentre en cero volts, para esto es muy conveniente usar un voltímetro
en la escala de 200mV o menor.
Por ultimo con un peso conocido sobre la celda debe ajustarse el preset de
GANANCIA hasta que sobre el pin 7 del PIC nos indique la tensión correcta
para ese peso. Para saber la tensión según el peso conocido se realiza el
siguiente cálculo:
Vpin7 = ( peso colocado en Kg * 5 ) / carga admitida por la
celda en Kg
Es muy importante el uso
de resistencias de 1% en las posiciones indicadas caso contrario se perderá
exactitud en las lecturas.
Personalmente e usado dicho circuito con una celda de 50 Kg que poseía un
coeficiente de 2mV por cada volt de alimentación a la misma, y con el PIC
indicado y dicha celda e conseguido mediciones muy buenas de hasta 50 Kg con
exactitudes de 50 gr.
¿Cómo funciona la parte que genera la
referencia con el lm336,el operacional y el transistor?
El LM336-Z2.5 regulado adecuadamente entrega una referencia de 2.5V, que se
introduce al pin12 del OA, a la salida del mismo (pin14) tenemos un
transistor conectado como seguidor de emisor el cual oficia de driver para
proporcionar una buena corriente a la regulación ya que por medio de esta
también alimentamos la celda (pueden tener resistencias de 350 ohms) y
usamos esta misma tensión como referencia para el A/D del PIC, al usar la
misma tensión para la celda y la referencia conseguimos que no haya errores
en las lecturas por las pequeñas derivas térmicas de los componentes usados.
Desde el emisor del transistor y por medio de 2 resistencias de 10K se
consigue un divisor de tensión que divide a la mitad la tensión de dicho
emisor y esta es la tensión que se introduce al pin 13 del OA para que el
mismo quede configurado como buffer o seguidor de tensión, en realidad a la
ves de buffer el OA actúa también de multiplicador con una ganancia de 2.
Con esa tensión de 5V muy estable y regulada se consigue en el pin 7 del OA
una tensión de referencia de -5V haciendo que el mismo actué como
amplificador inversor de ganancia unitaria.
Y con esas dos tensiones (5V y -5V) se atacan las resistencias en los
extremos del preset OFFSET, por lo tanto esas resistencias están alimentadas
de 5V y -5V respectivamente, como las mismas poseen un valor de 100K y el
preset 10K nos queda que:
Ej ramal
positivo:
Resistencia de 100K + preset de 5K, el preset se divide su valor a la mitad
ya que la otra mitad corresponde al ramal negativo, por lo tanto
(5V / 105K) * 5K = 0.238095V
Por lo tanto tenemos una variación de +/- 0.24V, lo que es lo mismo un
variación de pico a pico de 0.48V aproximadamente.
El resto del circuito esta conformado de un clásico amplificador diferencial
con ganancia unidad (al cual se le regula el offset por medio del pin 8 del
TL084) con sus respectivos amplificadores de entrada con ganancia de 200 a
1000 regulable por medio del preset y por un sencillo seguidor de tensión o
buffer que es el encargado de otorgar la baja impedancia que necesita el
convertidor A/D del PIC.
Los diodos 1N4148 conectados al pin 7 del PIC le ofrecen una protección por
sub o sobre tensiones a la entrada del mismo.
El condensador de 0.1uF y la resistencia de 470 ohms ofician de filtro pasa
bajos, para la señal que proviene del pin 1 del OA, la misma función
realizan el condensador y la resistencia conectados al pin 3 del TL084, pero
al ser la frecuencia de corte de este ultimo filtro muy baja también estamos
conseguimos que la lectura sea más estable.
Los condensadores de 0.1uF y las resistencias de 1K presentes en cada
entrada hacen la función del filtros contra cualquier interferencia
proveniente desde la celda, otorgando junto a la bobina y el amplificador
diferencial muy buena inmunidad bajo cualquier condición de trabajo.
> 024 - Circuito para
obtener la señal de un led que posee el ánodo a positivo
AUTOR:
Charly29
Este circuito que permite
obtener la señal de un led. Cuando un led de un equipo cualquiera esta
conectado a positivo y esta tensión es superior a los 5Vcc de la
alimentación del PIC podemos usar este sencillo circuito que nos entregará
un alto cada ves que el led este encendido, la señal obtenida se la puede
introducir al PIC para que este actué de la manera programada.

> 025 - Circuito para
comandar display de 7 segmentos
AUTOR:
Charly29
Como se puede ver en el esquema, este circuito es apto para funcionar con
cualquier tensión de alimentación hasta un máximo de 30Vcc, la intensidad
máxima por cada segmento puede ser de asta 300mA.
Las entradas son todas activas en alto, las 3 superiores pertenecen una a
cada display y las 7 inferiores una a cada segmento, por lo tanto para hacer
un refresco adecuado de los display se debe hacer lo siguiente:
1) Colocar las señales en los pines de control de los segmentos.
2) Colocar en alto la señal de control del display que corresponda.
3) Esperar un tiempo adecuado.
4) Colocar en bajo la señal de todos los display.
5) Volver a comenzar con el siguiente display.

>
026 - Usar LM35 en todo el rango de temperatura con fuente simple.
AUTOR:
Charly29
El circuito que les propongo en esta ocasión hace uso del sensor de
temperatura LM35, el mismo puede medir temperatura desde -50°C asta 150°C
(mirar data sheet), pero para medir todo el rango normalmente es necesario
el uso de una fuente simétrica.
Bueno con la idea de simplificar la fuente de alimentación cuando nuestra
aplicación debe ser de bajo costo, con el circuito mostrado más arriba
obtenemos lo deseado.
Su implementación es muy sencilla y para tal es necesario en uso de 2
entradas análogas del PIC y la entrada de tensión de referencia para el
convertidor.
Las resistencia de 1K5 y 3K3 (deben ser de 1%) proveen la tensión de
referencia y con tales valores será de aproximadamente 3.5Vcc
Los diodos 1N914 le otorgan al LM35 de una tensión de masa superior a la
masa real del circuito y esto es lo que nos permite medir temperaturas por
debajo de 0°C.
Por el motivo anterior y considerando que la tensión que el LM35 tomará como
masa puede variar con la temperatura es necesario conoces esa tensión para
luego con los consiguientes cálculos matemáticos obtener la temperatura
real, para conoces esa tensión de "masa" se usa la entrada AN1.
La señal de salida del LM35 es introducida al PIC por medio de AN0, entonces
a esta altura ya tenemos todas las señales necesarias dentro del PIC, por lo
que solo falta realizar los cálculos.
Para los mismo se hace lo siguiente:
Si AN0 > AN1
(Valor de AN0) - (Valor de AN1) = (Valor Temp.)
Si AN0 < AN1
(Valor de AN1) - (Valor de AN0) = (Valor Temp.)
Una ves obtenido Valor Temp hacemos:
(Valor Temp.) * (344 / 1023) = Temp ----------> si usamos conversor de 10
bits
(Valor Temp.) * (344 / 255 ) = Temp ----------> si usamos conversor de
8 bits
donde:
344 = tensión de referencia * 100
Entonces ya tenemos la temperatura real, solo faltaría saber si es por sobre
o debajo de cero grado, para lo cual analizamos nuevamente cual de los 2
valores de entrada era el mayor:
Si AN0 > AN1 la temperatura es por sobre cero grado centígrado o sea +XX°C
Si AN0 < AN1 la temperatura es por debajo de cero grados centígrados o sea -XX°C
Este circuito que obtener la señal de un led. Cuando un led de un equipo
cualquiera esta conectado a positivo y esta tensión es superior a los 5Vcc
de la alimentación del PIC podemos usar este sencillo circuito que nos
entregará un alto cada ves que el led este encendido, la señal obtenida se
la puede introducir al PIC para que este actúe de la manera programada.

>
027 -
Inversor con 555
AUTOR:
Arlequin
El
circuito que se muestra a continuación, nos da la posibilidad de obtener una
inversión de tensión. El mismo puede ser utilizado con amplificadores
operacionales o en cualquier circuito donde se necesite de una tensión
negativa, con un bajo consumo de corriente.

El
corazón del circuito es el famoso 555,
donde por medio del mismo y en conjunción con elementos comunes se obtiene
una configuración sencilla y funcional. La tensión +VCC debe estar
comprendida entre +5V y +15V.
>
028 - Circuito de Entrada
AUTOR:
Fer_TACA

|