(Por
CARCASS -Año 2007-)
Introducción:
Este proyecto
tiene como objetivo el diseño de un osciloscopio didáctico
que cumpla con las siguientes características:
- Muy bajo
costo.
- Fácil
de armar.
- Fácil
de usar.
- Impedancia
de entrada estándar (1Mohm // 20pF)
- Ancho de
banda desde continua hasta mas de 50KHz
- 2 canales.
Definiendo el proyecto:
Para poder
cumplir con la premisa de bajo costo tengo que apuntar primero al
componente mas caro de un osciloscopio de estas características,
que es la pantalla.
Por este motivo
se descarta cualquier tipo de osciloscopio analógico, ya que
un cañón de osciloscopio excede en varios ordenes de
magnitud al costo total que pretendo alcanzar.
Una forma de
reemplazar al tubo es utilizar una pantalla de TV o monitor, compensando
por medio de circuiteria la no linealidad en el comportamiento de
las bobinas del yugo a las distintas frecuencias. Pero en este caso
el circuito dependería de la pantalla que se utilice y tendríamos
un osciloscopio difícil de armar, relativamente caro, voluminoso,
de muy poco ancho de banda, etc.
Por estos motivos
es que opté por un osciloscopio digital.
Como utilizar
un display LCD grafico puede ser un poco costoso y encarece también
la circuiteria, la opción definitiva consiste en aprovechar
el hecho de que todo técnico o estudiante de electrónica
tiene una PC. Entonces todo el problema de graficar la señal
queda resuelto.
En la siguiente
figura podemos ver un diagrama en bloques del osciloscopio propuesto.
La señal
que queremos medir entra al SELECTOR / AMPLIFICADOR, el cual acondiciona
la señal a los niveles necesarios para la medición que
realiza el conversor A/D del microcontrolador PIC16F873A.
El circuito
de TRIGGER se encarga de amplificar la señal hasta la saturación,
obteniéndose una onda de salida casi cuadrada y en sincronismo
con la señal del canal CH1, esta señal entra al micro
por una entrada tipo schmit-trigger para lograr un mejor pulso de
disparo.
El PIC recibe
los datos de configuración y envía los valores medidos
a la PC, por medio de una conexión RS232 (Puerto Serie).
La PC transforma
los datos de las mediciones en formas de onda que aparecen en la pantalla
del monitor.
CIRCUITO
SELECTOR / AMPLIFICADOR
La idea original
era utilizar llaves analógicas para seleccionar el canal CH1
o CH2 y para conmutar la resistencia de realimentación de un
amplificador operacional, obteniendo las distintas ganancias necesarias.
Pero al descubrir el MCP6S28 de MICROCHIP, reemplacé toda la
etapa de entrada por este circuito amplificador de ganancia seteable
y 8 entradas multiplexadas, que además trabaja con fuente simple
de 5V y salida Rail-to-Rail.
Características
del MCP6S28:
• Entradas
multiplexadas: 8 canales
• 8 Ganancias Seleccionables: +1, +2, +4, +5, +8, +10, +16 o
+32 V/V
• Comunicación Serie (SPI™)
• Rail-to-Rail Entradas y Salidas
• Offset: ±275 µV (max)
• Ancho de Banda: 2 to 12 MHz (typ)
• Bajo Consumo: 1.0 mA (typ)
• Fuente Simple: 2.5V to 5.5V
Como todo el
circuito trabaja a 5V, creamos una masa ficticia a 2.5V por medio
de R2, R3, C5 y C4. Esta masa es la que esta presente en las puntas
del osciloscopio.
Para aprovechar las 8 entradas del selector, se les dan las siguientes
aplicaciones:
Ent 1 = CH1
DC
Ent 2 = CH1 AC
Ent 3 = CH1 DC (atenuado)
Ent 4 = CH1 AC (atenuado)
Ent 5 = CH2 DC
Ent 6 = CH2 AC
Ent 7 = CH2 DC (atenuado)
Ent 8 = CH2 AC (atenuado)
De esta forma
puedo tener control por soft de lo que seria la perilla (AC-GND-DC)
y extender el rango de amplitud por medio de las entradas atenuadas.
Esta disposición
se ve en la siguiente figura.

CIRCUITO
DE DISPARO
En una breve
búsqueda de amplificadores operacionales, no encontré
ninguno que tenga la ganancia y el ancho de banda necesarios, y que
trabaje a 5V. Por lo que el circuito de trigger lo hice con una etapa
colector común seguida de dos etapas emisor común, como
se ve en la siguiente figura.

La resistencia de emisor de cada etapa puede ser cortocircuitada (para
alterna) por medio de los capacitores de emisor, estos capacitores
están puestos a masa o a alta impedancia por el PIC.
De esta forma se logran 4 ganancias que nos dan 4 niveles de trigger,
seteables por soft.

CIRCUITO COMPLETO
En la figura se pueden diferenciar las distintas etapas:
- Fuente de
alimentación con 78L05.
- Entrada y atenuador del canal 1
- Entrada y atenuador del canal 2
- Selector y Amplificador con MCP6S28
- Circuito de disparo con BC337
- Interface RS232 con MAX232
- Microcontrolador PIC 16F873A
PRINCIPIO
DE FUNCIONAMIENTO
Aprovechando
la velocidad y capacidad de cálculo de la PC, esta se encarga
de establecer todos los parámetros necesarios para realizar
la medición, mientras que el circuito eléctrico se encarga
solo de medir la señal con los parámetros fijados por
la PC.
Para medir
señales de muy baja frecuencia (hasta 50 Hz), utilizo un sistema
de medición que podemos llamar CONTINUO el cual funciona de
la siguiente forma:
- Al producirse
el disparo, comienza la secuencia de medición.
- Se toma una muestra de la señal de entrada y se envía
a la PC.
- Transcurrido un tiempo T (depende de la base de tiempo) se toma
una nueva muestra y se envía a la PC.
- Este proceso se repite hasta terminar de tomar las 250 muestras
que se visualizan en pantalla.
(No confundir
T con el periodo de la señal 1/F)
La ventaja
de este método es que en tiempo real va apareciendo en pantalla
cada muestra en el momento en que se produce.
La desventaja es que solo sirve para señales de muy baja frecuencia,
ya que entre muestra y muestra se pierde tiempo enviando el dato a
la PC.
En la siguiente
figura se puede ver como son tomadas las muestras de una señal.

En el grafico las muestras aparecen distanciadas entre si unas 10
veces mas de lo que realmente están, esto es para que el grafico
sea legible.
Para medir
frecuencias de hasta 500 Hz utilizamos un sistema de medición
que podemos llamar POR RAFAGAS o BLOQUES. El cual funciona de la siguiente
forma:
- Al producirse
el disparo comienza la medición.
- Se toma una muestra de la señal y se la guarda en la RAM
del PIC.
- Transcurrido un tiempo T se toma una nueva muestra y se la guarda
en RAM.
- Este proceso se repite hasta terminar de tomar las 125 muestras
que entran en RAM (el resto de la memoria esta ocupada por variables).
- Terminada la medición, este bloque de datos es enviado a
la PC (en este modo la PC “estira” las 125 muestras para
que parezcan 250).
La ventaja
de este sistema es que el tiempo que tarda cada dato en enviarse a
la PC (por puerto serie a 57600Bauds) no interfiere con el tiempo
T de la base de tiempo.
La desventaja es que la señal aparece en pantalla recién
cuando la medición se completa, por lo que seria muy incomodo
este método para medir señales de muy baja frecuencia
(menos de 5 Hz).
Por encima
de los 500Hz comienzan las limitaciones del microcontrolador, el conversor
A/D puede tomar solo 50.000 muestras por segundo aproximadamente (Se
podría mejorar el proyecto utilizando un DSPIC de 1.000.000
m/seg, incrementando el costo).
Si la pantalla
tiene 250 puntos horizontales de resolución (250 muestras completan
el barrido), entonces un ciclo completo en la pantalla puede tener
como máximo 50000/250 = 200Hz.
Aunque nos conformásemos con 50 muestras por ciclo, solo podríamos
medir hasta frecuencias de 1 KHz.
Como un osciloscopio
con ancho de banda de 1KHz no solo no cumple con los requisitos del
proyecto, sino que prácticamente no sirve para nada, hay que
utilizar algún método de medición un poco mas
complejo que nos permita medir señales de mayor frecuencia.
Teniendo en
cuenta que casi siempre medimos señales periódicas,
podemos utilizar un sistema de medición llamado MUESTREO que
nos permitirá trabajar con señales de mayor frecuencia,
siempre que sean periódicas.
Este sistema
funciona de la siguiente forma:
- Al producirse
el disparo se inicia la medición.
- Transcurrido un tiempo T se toma la primera muestra y se envía
a la PC.
- Una vez que el dato fue enviado, se espera un nuevo disparo.
- Al producirse el disparo, se espera un tiempo igual a 2T para tomar
la segunda muestra.
- Una vez que el dato fue enviado, se espera un nuevo disparo.
- Al producirse el disparo, se espera un tiempo igual a 3T para tomar
la tercera muestra.
- Este proceso se repite hasta que se tomaron las 250 muestras necesarias
(250T)
Estas 250 muestras
fueron tomadas de distintos ciclos, pero gracias a la sincronización
de los disparos y a la periodicidad de la señal, se reconstruye
la señal con la forma de onda correcta.
Dependiendo
de la frecuencia que se este midiendo y del valor de T, las muestras
pueden ser de ciclos consecutivos o de ciclos separados entre si.
En la figura
se observa como funciona la medición por muestreo de una señal.

La ventaja de este sistema es que se pueden medir señales de
mas de 20KHz.
La desventaja es que por encima de los 20KHz se empieza a notar mucho
la imprecisión del trigger.
IMPRECISION DEL TRIGGER
El circuito
de disparo tiene un excelente desempeño hasta frecuencias de
mas de 1MHz, pero como para el sistema de muestreo se esta utilizando
la llave del conversor A/D del PIC, la apertura o cierre de esta llave
la realiza el PIC por soft produciéndose un defasaje entre
el momento en que el PIC detecta el disparo y el momento en que realmente
se produjo.
Si el micro
trabaja con cristal de 20MHz tenemos un periodo de 0.05uSeg que nos
da un tiempo de instrucción de 0.2uSeg (Utiliza 4 ciclos de
clock por instrucción).
A su vez el
soft usa 2 instrucciones para detectar el flanco, por lo que el defasaje
puede ser de hasta 0.4uSeg.
Esto significa
que una muestra puede adoptar el valor real o el valor que la señal
tendrá 0.4useg después (en el peor de los casos).
Si en una señal
de 1 KHz tomamos dos muestras separadas entre si 0.4uS no notaremos
diferencia apreciable, ya que su periodo es de 1000uS. Por lo tanto
la señal se ve nítida en la pantalla.
En cambio si
a una señal de 50 KHz le tomamos las mismas dos muestras, se
notara diferencia, ya que su periodo es de 20uS.
En las siguientes
figuras se puede ver una señal (no senoidal) de 30KHz con y
sin error de sincronización.

Esta limitación
para sincronizar el disparo en altas frecuencias hace que en la pantalla
la señal parezca tener algo de ruido, que se incrementa al
aumentar la frecuencia. Para señales de alrededor de 200KHz
la imprecisión es tan grande que no se puede medir, excepto
con el uso de aproximación por estadística.
APROXIMACION
POR ESTADISTICA
Una de las
ventajas de utilizar una PC como pantalla de osciloscopio es que podemos
acondicionar los datos antes de mostrarlos, esto sumado a la periodicidad
de la señal nos permite utilizar este método.
Sabemos que
en altas frecuencias cada muestra fluctúa entre un rango de
valores cuyo valor promedio es el valor real, entonces si nuestra
pantalla completa “ruidosa” la promediamos punto a punto
con la pantalla que desapareció un instante antes, logramos
una imagen bastante mejorada.
Si a una nueva
pantalla ruidosa la promediamos con las anteriores 2 pantallas, se
logra una imagen muy mejorada.
Por ultimo, si tenemos un buffer en memoria con la información
de las ultimas 10 pantallas, la imagen que se logra es muy buena incluso
para frecuencias de 200 KHz.
Una variante
de este buffer es el buffer realimentado, en el cual cada nuevo valor
es promediado con el buffer antes de ser guardado en el mismo. Lográndose
ver señales de hasta 500KHz.
La ventaja
de este método es que minimiza el error de imprecisión
del trigger y logra una imagen limpia aumentando el ancho de banda
del osciloscopio.
La desventaja es que la señal puede tardar hasta 3 segundos
en verse bien en pantalla y hasta 15 segundos para el caso del buffer
realimentado. (Por supuesto la señal a medir tiene que ser
periódica durante ese tiempo).
En la siguiente
figura podemos ver una señal rectangular asimétrica
de 100KHz, sin buffer (a la izquierda) y con buffer (a la derecha).

Aunque esté
muy lejos del rango de frecuencias medibles de este osciloscopio,
también podemos “ver” una señal cuadrada
de 1MHz, de la cual se pierden casi todos los armónicos y por
eso se ve triangular. Igualmente es un buen ejemplo de como funciona
el sistema de estadística en frecuencias muy altas e inmedibles
de otra forma.
La señal
que se ve a la izquierda en la siguiente figura, se encuentra en constante
movimiento a causa del gran error de sincronismo que se produce a
estas frecuencias, mientras que la de la derecha se mantiene estática
en la pantalla y bien definida, gracias al buffer realimentado.
EL SOFT
DE PC
Uno de los
detalles mas llamativos del proyecto es la parte gráfica, ya
que esta todo trabajado sobre la base de una foto de osciloscopio.
La señal
medida aparece sobre la pantalla del osciloscopio de la foto y las
perillas se pueden mover tocando directamente sobre ellas con el botón
derecho o izquierdo del mouse.
Todos los movimientos
de botones y perillas están hechos con superposición
de fotos.

AJUSTE DE LA PANTALLA
Por medio
de las perillas de INTEN y FOCUS se puede ajustar la forma en la que
queremos que se vea el trazo, de forma similar a un osciloscopio analógico.
Con la perilla
de SCALE se puede seleccionar el fondo donde se visualiza la imagen,
desde la imagen de la foto real hasta un fondo completamente negro,
pasando por distintos niveles de brillo de la cuadricula.
BOTON DE
ENCENDIDO
Con este botón
se enciende el osciloscopio y se lo apaga, al apagarlo se mantiene
en pantalla la ultima medición (función HOLD).
Cuando se encuentra
encendido, está constantemente enviando el comando de “Realizar
medición” al circuito y graficando los datos recibidos.
PALANCA
AC-GND-DC
Con esta se
elige ver la señal tal cual es (DC), o solo su componente de
alterna (AC).
También puede ponerse en la posición GND para ver el
valor de masa y ajustar la altura.
Al mover esta
palanca se configura el canal del selector del MCP6S28.
(Cada vez que alguna perilla es modificada se envía el dato
al circuito para que se ajuste con los nuevos parámetros de
medición).
VOLT / DIV
Con esta perilla
se ajusta la ganancia del MCP6S28 y/o el tipo de entrada normal o
atenuada.
POSITION
Manteniendo
presionado el botón izquierdo del mouse sobre esta perilla
y deslizando hacia arriba y hacia abajo se ajusta la posición
vertical de la señal.
Esto se logra
porque el conversor A/D del PIC es de 10 bit, de los cuales se utiliza
solo una franja de valores de 8 bit que son enviados a la PC, con
la perilla Position se indica la posición donde debe ubicarse
esta franja.
De esta forma
sin variar ningún valor analógico de tensión
de referencia, se logra un efecto real de movimiento vertical. (no
se mueve una imagen de 8 bit en la pantalla, sino que se recorre una
imagen de 10bit, que es muy distinto)

TIME / DIV
Con esta perilla
se seleccionan los distintos valores de la base de tiempo, según
la posición se envía un juego de dos valores que configuran
el “T” utilizado por el circuito, por limitaciones de
hard la base de tiempo del circuito puede tener errores de hasta un
5% que son fácilmente compensados por soft, estirando levemente
la grafica para que coincida exactamente con la cuadricula y desaparezca
el error.
Entre el fino
ajuste que se realiza por soft y la base de tiempo controlada por
cristal, se logra una excelente precisión en la medición
de periodos de las señales.
DISEÑO DEL IMPRESO
Siguiendo
por el camino del bajo costo del equipo y fácil armado, se
hizo con componentes de inserción (No SMD) y la placa en simple
faz.
Primero se realizo el esquemático en EAGLE y después
se acomodaron los componentes en una placa de 100mm por 50mm (tamaño
estándar comercial de placa virgen) para evitar andar haciendo
cortes en la placa, que pueden quedar desprolijos.
Por querer hacer el ruteo en simple faz, el AUTORUTER no llega al
100% y además las pistas quedan muy pegoteadas y poco estéticas,
lo que dificulta la fabricación casera de la placa aumentando
la posibilidad de fallas.
El autorouter deja una placa incompleta y de poca calidad, la cual
llevaría mucho tiempo corregirse manualmente (como se ve en
la próxima figura).

Para ganar tiempo y reducir la posibilidad de fallas, se hace un nuevo
ruteo totalmente manual de la placa. Quedando mucho mas prolija y
ruteada 100% como se ve en la siguiente figura.


Así
queda la simulación 3D de la placa.

Descargar
ASM .................Descargar
SOFT DE PC
Descargar
PCB (BRD) ...........Descargar
esquematico