Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidades de
Cuatrimestre HORAS
aprendizaje
2021 2022
MANUAL DE PRÁCTICAS
Índice
CONTENIDO
Página
1. Objetivo de la Asignatura 3
2. Competencia 3
3. Objetivo de la Unidad 3
4. Marco teórico 4
6. Desarrollo de Prácticas.
7. Conclusiones
8. Referencias
MANUAL DE PRÁCTICAS
1. Objetivo de la Asignatura
El alumno utilizará la lógica combinacional y secuencial para el control de una variable física
de un proceso mediante arquitecturas PLD.
2. Competencia
3. Objetivo de la Unidad
El alumno utilizará convertidores ADC y DAC para configurar las aplicaciones de control de
procesos con un PLD.
4. Marco teórico
Convertidor ADC
Un ADC por sus siglas en inglés » analog to digital converter » o convertidor analógico a
digital, es un sistema de conversión de señales continuas en datos binarios «1» y «0» estos
datos son obtenidos de la toma de muestras de la señal analógica como lo son de voltaje y
corriente a esto también se le conoce como discretizar una señal. Es un dispositivo electrónico
capaz de convertir una señal analógica, ya sea de tensión o corriente, en una señal digital
mediante un cuantificador y modificándose en muchos casos en un código binario en
particular. Donde un código es la representación unívoca de los elementos, en este caso,
cada valor numérico binario hace corresponder a un solo valor de tensión o corriente.
La representación gráfica de medio ciclo positivo (+) , correspondiente a una señal eléctrica
analógica de sonido, con sus correspondientes armónicos. Como se podrá observar, los
valores de variación de la tensión o voltaje en esta sinusoide pueden variar en una escala.
Para convertir una señal analógica en digital, el primer paso consiste en realizar un muestreo
(sampling) de ésta, o lo que es igual, tomar diferentes muestras de tensiones o voltajes en
diferentes puntos de la onda senoidal. La frecuencia a la que se realiza el muestreo se
denomina razón, tasa o también frecuencia de muestreo y se mide en kilohertz (kHz).
Para realizar el muestreo (sampling) de una señal eléctrica analógica y convertirla después
en digital, el primer paso consiste en tomar valores discretos de tensión o voltaje a intervalos
regulares en diferentes puntos de la onda senoidal.
Por tanto, una señal cuyo muestreo se realice a 24 kHz, tendrá menos calidad y fidelidad que
otra realizada a 48 kHz. Sin embargo, mientras mayor sea el número de muestras tomadas,
mayor será también el ancho de banda necesario para transmitir una señal digital, requiriendo
también un espacio mucho mayor para almacenarla.
ADC de conversión directa o ADC Flash. Tiene un comparador que lo enciende para cada
rango de voltaje decodificado. El banco comparador introduce un circuito lógico que genera
un código para cada rango de voltaje. La conversión directa es muy rápida, pero usualmente
MANUAL DE PRÁCTICAS
solamente tiene 8 bits de resolución (256 comparadores) o menos, y necesita un circuito caro
y grande. Los ADCs de este tipo son físicamente grandes, tienen una alta entrada de
capacitancia, y son propensos a producir fallos en las salidas (Al poner en las salidas un
código fuera de secuencia). Hay muchos de estos utilizados para señales de video u otras
rápidas.
ADC Delta-Encoded (Codificación Delta). Tiene un contador arriba abajo que provee un
convertidor digital analógico (DAC). Tanto la señal de entrada como el DAC ambos van a un
comparador. El comparador controla el contador. El circuito utiliza retroalimentación negativa
del comparador para ajustar el contador mientras la salida del DAC está lo suficientemente
cerca de la entrada de la señal. El número es leído del contador. Los convertidores Delta
tienen rangos muy amplios, y una alta resolución, pero el tiempo de conversión depende del
nivel de la señal de entrada, por lo que siempre tendrá una garantía aún en el peor de los
casos. Los convertidores Delta son muchas veces buenas opciones para leer señales del
mundo real. Muchas señales de sistemas físicos no cambian abruptamente. Algunos
convertidores combinan las aproximación delta y la de aproximación sucesiva, Esto trabaja
bien con altas frecuencias que son conocidas para ser pequeñas en magnitud.
ADC Comparador de Tipo Rampa. (También llamado ADC Integrado, ADC Doble rampa,
o ADC Multi rampa). Produce una señal de tipo diente de sierra que se eleva, luego
rápidamente cae a cero. Cuando la pendiente inicia, el contador comienza a contar. Cuando
la pendiente encuentra la entrada, un comparador inicia, y el valor del timer (temporizador)
se almacena. Los convertidores de pendientes en tiempo requieren el menor número de
MANUAL DE PRÁCTICAS
transistores. El tiempo de la rampa es sensible a la temperatura por que el circuito que genera
la rampa es muchas veces un oscilador simple. Hay dos soluciones: Utilizar un contador de
reloj para manejar el DAC y después utilizar el comparador para preservar el valor del
contador, o calibrar el tiempo de la rampa. Una ventaja especial del sistema comparador de
rampas es que compara una segunda señal solo requiere otro comparador, y otro registro
para almacenar los valores de voltaje.
ADC Pipeline (Tipo tubería). También llamado cuantizador de subrangos, utiliza dos o más
etapas de sub rangos. Primero, una conversión amplia es hecha. Como segundo paso, la
diferencia de la señal de entrada es determinada con un convertidor digital analógico (DAC).
La diferencia es el convertidor fijo, y los resultados son combinados en un último paso. Este
tipo de ADC es rápido, tiene una alta resolución y sólo ocupa un tamaño pequeño.
ADC Sigma-Delta. Muestra la señal deseada con un factor grande y filtros deseados de la
banda de señal. Generalmente un número más pequeño de bits que requiere y convierte
utilizando un ADC tipo Flash después del filtro. La señal resultante, junto con el error
generado por la discretización de niveles del Flash, es el resultado y sustracción de la entrada
al filtro. Esta retroalimentación negativa ha afectado la forma ruido de error debido al Flash
así que si no aparecen las señales de frecuencias deseadas. Un filtro digital (Filtro de
conversión digital) sigue el ADC que reduce el tiempo de muestreo, los filtros apagan la señal
de ruido no deseada e incrementan la resolución de la salida.
Convertidor DAC
Un convertidor digital a analógico (DAC) es un dispositivo que convierte los datos digitales
en una señal analógica que es una tensión, corriente o carga eléctrica. Los datos digitales
generalmente son una secuencia de impulsos de tiempo finitos que se procesan y convierten
en una señal analógica física continua. La resolución, tasa de muestra y linealidad son los
parámetros de rendimiento clave que describen la calidad del DAC. La resolución se refiere
al número de bits digitales por muestra que se pueden convertir con precisión en una señal
analógica. La tasa de muestra es la frecuencia en la que se prueban los datos digitales de
MANUAL DE PRÁCTICAS
entrada. La linealidad, que está relacionada con la resolución, describe qué tan
uniformemente el DAC responde a los cambios de entrada digitales incrementales. La no
linealidad diferencial (DNL) y no linealidad integral (INL) se utilizan normalmente para
caracterizar la linealidad del DAC.
Existen muchos tipos diferentes de DAC y la escala de resistores es la más simple. La red
de resistores forma un promedio ponderado de todos los bits de entrada digital; el bit más
significativo (MSB) de la palabra de entrada digital recibe la ponderación más alta, mientras
que el bit menos significativo (LSB) recibe la más baja.
Un DAC contiene normalmente una red resistiva divisora de tensión, que tiene una tensión
de referencia estable y fija como entrada. Hay que definir qué tan exacta será la conversión
entre la señal analógica y la digital, para lo cual se define la resolución que tendrá.
Este número máximo está dado por: 2n donde “n” es el número de bits. También la resolución
se entiende como el voltaje necesario (señal analógica) para lograr que en la salida (señal
digital) haya un cambio del bit menos significativo (LSB). Para hallar la resolución se utiliza
la siguiente fórmula: Resolución = VoFS / [2^n – 1], donde:
Si el voltaje máximo es 10 Voltios, entonces el Vref (voltaje de referencia) será 10/16 = 0.625
Voltios. Si el voltaje máximo es 7 voltios, Vref = 7 / 16 = 0.4375 Voltios. Se puede ver que
estos voltajes de referencia serán diferentes (menores) si se utiliza un DAC de 8 o más bits.
Con el de 8 bits se tienen 256 combinaciones en vez de 16. Esto significa que el voltaje
máximo posible se divide en más partes, logrando una mayor exactitud.
MANUAL DE PRÁCTICAS
Figura 4.5 Voltaje máximo obtenido con voltaje de referencia de 15 volts con diferentes bits
Aquí B3 es el dígito más significativo (MSB) mientras que B0 es el dígito menos significativo
(LSB). El circuito aquí opera para producir una señal de salida analógica ponderada de
acuerdo con las posiciones de los bits y sumarlos.
En el circuito, los voltajes lógicos, que representan la entrada binaria, se aplican a las
resistencias correspondientes mediante interruptores. Las resistencias de los circuitos
MANUAL DE PRÁCTICAS
Una escalera de resistencias puede convertir una palabra binaria en analógica. Este tipo de
DAC se conoce como convertidores de tipo escalera R - 2R.
Aplicamos el teorema de Thevenin a los nodos a0, a1, a2, a3 relacionados con el suelo.
Obtenemos el circuito equivalente de Thevenin, que se muestra con más detalle en el curso
a continuación: La fuente equivalente tiene un voltaje de VR / 16 en serie con una resistencia
3R. Nuevamente, si el terminal B1 está conectado a Vr y los terminales B0, B2, B3 están
conectados a tierra, entonces aplicando también el teorema de Thevenin, se puede
demostrar que la fuente tiene un voltaje VR / 8 en serie con una resistencia 3R.
De manera similar, cuando B2 está conectado con VR y las entradas de reposo están
conectadas a tierra, encontraremos que el circuito equivalente de Thevenin tiene un voltaje
de fuente de VR / 4 en serie con una resistencia 3R.
MANUAL DE PRÁCTICAS
En esta sección se describen los softwares que se utilizaron para el desarrollo de las
simulaciones descritas en la sección 6.
▪ CCS Compiler
CCS C es una herramienta que permite programar un microcontrolador por medio de
lenguaje C, a diferencia del lenguaje máquina o ensamblador (ASM) que se maneja por
defecto, este hace los programas más fáciles de escribir, analizar y comprender. CCS C ha
sido desarrollado por PIC CMU, y cuenta con una gran cantidad de librerías o drivers que
permiten optimizar los programas en el momento de manejar dispositivos externos, tales
como pantallas LCD, memorias, conversores, etc.
Los compiladores IDE del CCS C (PCW, PCWH y PCWHD) tienen el exclusivo entorno de
desarrollo integrado C para compilar, analizar y depurar en tiempo real. Otras funciones y
herramientas integradas se pueden ver en el archivo de ayuda. En comparación con un
compilador de C más tradicional, PCB, PCM y PCH tienen algunas limitaciones.
PCB, PCM y PCH son compiladores independientes. PCB es para códigos de operación de
12 bits, PCM es para códigos de operación de 14 bits y PCH es para microcontroladores
PIC® de código de operación de 16 bits. Estos compiladores están diseñados
específicamente para satisfacer las necesidades únicas del microcontrolador PIC®. Esto
permite a los desarrolladores diseñar rápidamente aplicaciones de software en un lenguaje
de alto nivel más legible.
MANUAL DE PRÁCTICAS
La figura 5.1 muestra el icono del programa CCS C, que es el mismo para los diferentes IDE
de este programa, simplemente cambia el compilador interno para ejecutar la instrucción
programada.
La estructura del programa en CCS C se muestra en la figura 5.2, está conformada por:
MANUAL DE PRÁCTICAS
Para mayor información sobre la directivas, librerías e instrucciones del compilador CCS C
consultar su manual en: https://www.ccsinfo.com/downloads/ccs_c_manual.pdf
▪ PROTEUS
PROTEUS es considerado uno de los mejores y más completos programas para el diseño
de circuitos electrónicos en la actualidad, no solo por su capacidad de simulación y análisis,
sino también por el hecho de poder utilizar una gran cantidad de microcontroladores de
diferentes familias.
Las siglas VSM significan Virtual System Modelling, que en español podemos traducir como
sistema de modelado virtual, ya que Proteus VSM permite modelar de forma virtual en la
computadora prácticamente cualquier circuito. La figura 5.3 muestra el icono del programa
PROTEUS, que en este manual es la versión 8.9 y en la cual se estará trabajando en la
sección 5.
Para más información referente al uso de este software se recomienda consultar el libro:
PROTEUS VSM SIMULACIÓN DE CIRCUITOS ELECTRÓNICOS de Víctor Rossano.
6. Desarrollo de Prácticas.
Objetivo
El alumnado deberá de construir circuitos esquemáticos de convertidores DAC, mediante el
uso de las configuraciones de resistencia ponderadas, escalera R-2R, así como el uso del
circuito integrado DAC0800 una señal senoidal discretizada a una frecuencia fija de 100 Hz
en un microcontrolador de su preferencia.
Desarrollo de la practica
A continuación, se muestran los diagramas que corresponden a los circuitos de cada
convertidor, haciendo uso del método de resistencias ponderadas, escalera de resistencias
R-2R y haciendo uso del integrado DAC0800.
Figura 6.1 simulación del convertidor DCA mediante resistencias ponderadas y escalera 2-R2
MANUAL DE PRÁCTICAS
INT I;
void MAIN(){
TRISB = 0X00;
PORTB = 0X00;
MANUAL DE PRÁCTICAS
delay_ms(1000);
WHILE(TRUE){
}
}
Resultado de la práctica
La practica consiste en realizar un conversor de una señal digital a una análoga. Para ello,
se menciono con anterioridad, el proceso que se debe llevar a cabo para dicha conversión.
En el primer esquema podemos visualizar los dos métodos de conversión, las resistencias
ponderadas y la escalera r-2r. En las entradas de cada resistencia, se introduce un código
binario que ya fue codificado con anterioridad. En dicho código, se encuentra la propiedad
de la onda senoidal, los valores binarios codificados viajan a través de las resistencias hasta
el operador operacional, para que construya una señal analógica. El pic16f877A se utiliza
para introducir en él, el código de programación previamente adjuntado de números
decimales, los cuales sirven como muestra, en las salidas del pic, se mostrarán cada uno de
esos valores en notación binaria que llegan a las resistencias, dando como resultado en el
osciloscopio una onda senoidal donde su voltaje mínimo es de 2V y va creciendo hasta llegar
a un voltaje final de 4V.
Al mismo tiempo se agrega el esquema de un conversor DAC utilizando resistencias
ponderadas, para ello, hay que recordar que este método se basa en una línea de
resistencias, los cuales, dependiendo de su cantidad, es el total de bits de la que se hará el
conversor, en este caso, al igual que el método de escalera, se realiza de 8 bits, se toma
desde el bit menos significativo hasta el mas significativo. En la parte derecha se tiene una
resistencia de 1k, es el menos significativo, este valor se obtiene por la potencia de 2 elevado
a la n, para este bit se comienza con 2 elevado a la 0, el cual da 1, hasta llegar a 2 elevado
a la 8, el cual no da 128k (cada resistencia se presenta en miles, ya que son valores más
comerciales). Para la resistencia de referencia al amplificador, se hace la división de 128k
MANUAL DE PRÁCTICAS
entre 255, da un total cerca de 502 ohms. A cada una de estas resistencias se le agrega los
mismos valores que el método de escalera ya codificados por medio del pic, el cual nos dará
una onda senoidal con las mismas características.
Figura 6.3 Ondas senoidales obtenidas con el método de escalera R-2R y resistencias ponderadas.
Objetivo.
El alumnado deberá de construir circuitos esquemáticos de convertidores ADC, mediante el
uso del circuito integrado DAC0804 para digitalizar una señal análoga de temperatura
proveniente de un LM35.
Además, emplea un microcontrolador de su preferencia para leer los datos digitales
provenientes de ADC0804 para convertirlos, con la finalidad de visualizar el dato de la
temperatura en una LCD16x2.
Desarrollo de la práctica.
La practica se basa en realizar ahora un conversor analógico a digital, para ello, se utiliza el
modulo de temperatura, el cual muestra señales analógicas al momento de medir su
respectiva variable, esta misma se convierte en una señal digital al plasmar la temperatura
en un dislplay 16x2 haciendo uso del integrado ADC0804. Se muestra el esquema de la
practica en proteus, además de adjuntar el código de programación.
MANUAL DE PRÁCTICAS
Código de programación
#include<16F877A.H>
#FUSES HS, NOWDT, NOLVP
#USE DELAY(CLOCK=4MHZ)
#USE STANDARD_IO(B)
#USE STANDARD_IO(C)
#USE STANDARD_IO(D)
FLOAT TEMP=0;
while(TRUE){
OUTPUT_LOW(WR_ADC);
RETARDO;
OUTPUT_HIGH(WR_ADC);
WHILE(INPUT(INTR_ADC==1));
OUTPUT_LOW(RD_ADC);
TEMP=INPUT_B();
LCD_GOTOXY(1,1);PRINTF(LCD_PUTC, "TEMPERATURA :");
LCD_GOTOXY(1,2);PRINTF(LCD_PUTC, "%04.2f GRADOS C ",TEMP);
ESPERA;
OUTPUT_HIGH(RD_ADC);
}
}
Resultado de la practica
Para esta practica se utilizo el microcontrolador PIC16F877A para llevar a cabo el proceso
de conversor junto con el integrado, el puerto B del pic se denomina entradas, ya que recibe
la información del integrado. El puerto C se denomina salidas para el integrado y finalmente
el puerto D sirve como salidas al display de 16x2. Se crea una variable de tipo entero, el cual
es referido como la temperatura, esta no puede contener decimales ya que no se permite en
el módulo empleado. Parte del código se ve convirtiendo el voltaje analógico producido por
el sensor LM35 en datos digitales y luego se convierte en temperatura y se muestra en una
pantalla LCD de 16*2. Para que ADC0804 comience la conversión, debemos enviar un pulso
de bajo a alto, luego debemos esperar el final de la conversión.
En la prueba final de la simulación, se observa que los datos obtenidos en la pantalla del
sensor de temperatura se muestran también en la pantalla del display.
MANUAL DE PRÁCTICAS
Conclusiones
Existen diversas partes del proceso de los conversores que para algunos integrantes es
entendible, por parte de todos lo integrantes del equipo, se menciona que es más
comprensible la conversión de una señal digital a analógica, aunque cada uno tiene una
opinión diferente.
Uzzyel: Se comprende de mejor manera el proceso del convertidor digital a analógico, parte
del conocimiento adquirido es que se obtiene al inicio una entrada, la cual es una señal
digital, a partir se esta se obtiene un tiempo de muestreo, el cual consiste básicamente en
tomar valores de la señal continua que tenemos. El tiempo que se tarda entre muestra y
muestra se le denomina frecuencia de muestreo. Una vez obtenido los valores de cada
muestra a partir del voltaje máximo, esta se debe codificarla, si se trabaja un sistema digital,
MANUAL DE PRÁCTICAS
este se hace por medio de lenguaje binario, los valores de cada muestra son diferente, cada
uno posee una terminación binaria, al tener menos bits, se obtiene una señal senoidal menos
precisa. Mas que nada se emplea mas el algebra para este proceso, el otro tipo de
convertidor se aplica más la implementación de la programación.
Matsuri: Hablando del convertidor digital a analógico, se puede decir que un método largo de
realizar, puesto que depende de que tipo del tema de este conversor se desea hacer, es un
calculo diferente para cada uno, por ejemplo, las resistencias ponderadas, aunque varia
mucho de la cantidad de bits a utilizar, en este caso fue extenso realizarlo de 8 bits. El
conversor analógico a digital fue un proceso más rápido ya que, parte de su proceso es ver
la funcionalidad de cada modulo a utilizarse, ya que los datos que se obtengan sirven como
base para la programación de convertir las señales analógicas leídas y pasarlas a código
binario.
Vilchis: Ambos conversores tienen la complejidad de evaluar cada componente a utilizar, por
ejemplo, el caso del conversor analógico a digital se empieza por diagramas de muestreo de
tiempos, se debe investigar cuanto vale cada muestra a partir de un voltaje. Por consiguiente,
el cómo convertir las señales a partir de un pic usando programación, tiene como base el
saber la funcionalidad de cada pin de este, para determinar las salidas hacia el tipo de
conversor planteado de manera manual o al integrado que ya lleva consigo todo, donde se
visualiza la implementación del algebra, al igual que el conversor analógico-digital, pero en
este es conocer la hoja de datos del integrado encargado de realizar dicha conversión de
señales.
Giovanni: Se muestra dificultad al entender de manera muy asertiva todo el proceso, ya sea
matemático, teórico, programable y físico, pero se entiende en ambos tipos de conversores
el como funciona el proceso de cada uno de como convertir señales de un tipo a otro, ya se
que elaborando diagramas manuales existentes o haciendo uso de circuitos integrados en el
mercado. Por último, es interesante convertir una señal analógica a digital por su utilidad, ya
que Facilita el procesamiento de la señal (codificación, compresión, etc.) y hacer la señal
resultante (la digital) más inmune al ruido y otras interferencias a las que son más sensibles
las señales analógicas.
MANUAL DE PRÁCTICAS
Referencias
Rossano, V. (2013). Manual Users: PROTEUS VSM Simulación de Circuitos Electrónicos (1a
ed.). Buenos Aires, Argentina: REDUSERS.
Custom Computer Services, Inc. (2019). CCS C Compiler Manual. Recuperado de:
https://www.ccsinfo.com/downloads/ccs_c_manual.pdf
https://unicrom.com/convertidor-digital-analogico-cda-dac/
https://www.revistacec.com/didactica/3101-convertidor-digital-analogico-dac-
3101.html
https://prezi.com/avcckdblorh3/tipos-de-convertidores-analogico-digital/
https://www.arrow.com/es-mx/categories/data-acquisition/data-converters/adcs
https://soundgirls.org/entendiendo-los-convertidores-ad-da/
MANUAL DE PRÁCTICAS
https://www.ni.com/knowledgebase/B7DE8B85625186F3862575690078F150
Roy, S. (2022, July 26). Digital To Analog Converter (DAC): Types, Working 5 Uses.