Grupo 5
jueves, 29 de septiembre de 2011
Actividad numero 5 - Contadores - Sistemas secuenciales
He aquí el video que comprueba el correcto funcionamiento del contador discreto armado por nuestro grupo.
miércoles, 14 de septiembre de 2011
LCD- Hola Mundo
;====================================================================
; Programa principal
;====================================================================
inicio
call LCD_Inicializa
call Retardo_1ms
movlw 'H'
Call LCD_Caracter
movlw 'o'
Call LCD_Caracter
movlw 'l'
Call LCD_Caracter
movlw 'a'
Call LCD_Caracter
movlw ' '
Call LCD_Caracter
movlw 'm'
Call LCD_Caracter
movlw 'u'
Call LCD_Caracter
movlw 'n'
Call LCD_Caracter
movlw 'd'
Call LCD_Caracter
movlw 'o'
call LCD_Caracter
goto $
INCLUDE <RETARDOS.INC>
INCLUDE <LCD_4BIT.INC>
;====================================================================
END ;Directiva que indica la finalización del pgm
Para no tener problemas con el LCD, modificamos la subrutina "LCD_Inicializa" de la siguiente manera:
; Subrutina "LCD_Inicializa" ------------------------------------------------------------
;
; Inicialización del módulo LCD: Configura funciones del LCD, produce reset por software,
; borra memoria y enciende pantalla. El fabricante especifica que para garantizar la
; configuración inicial hay que hacerla como sigue:
;
LCD_Inicializa
bsf STATUS,RP0
bcf LCD_PinRS
bcf LCD_PinEnable
bcf LCD_PinRW
bcf STATUS,RP0
bcf LCD_PinRW
bcf LCD_PinEnable
bcf LCD_PinRS
call Retardo_20ms
movlw b'00110000'
call LCD_EscribeLCD
call Retardo_5ms
movlw b'00110000'
call LCD_EscribeLCD
call Retardo_200micros
movlw b'00110000'
call LCD_EscribeLCD
call Retardo_20micros ; NUEVO
movlw b'00100000'
call LCD_EscribeLCD
call Retardo_20micros ; NUEVO
; Programa principal
;====================================================================
inicio
call LCD_Inicializa
call Retardo_1ms
movlw 'H'
Call LCD_Caracter
movlw 'o'
Call LCD_Caracter
movlw 'l'
Call LCD_Caracter
movlw 'a'
Call LCD_Caracter
movlw ' '
Call LCD_Caracter
movlw 'm'
Call LCD_Caracter
movlw 'u'
Call LCD_Caracter
movlw 'n'
Call LCD_Caracter
movlw 'd'
Call LCD_Caracter
movlw 'o'
call LCD_Caracter
goto $
INCLUDE <RETARDOS.INC>
INCLUDE <LCD_4BIT.INC>
;====================================================================
END ;Directiva que indica la finalización del pgm
Para no tener problemas con el LCD, modificamos la subrutina "LCD_Inicializa" de la siguiente manera:
; Subrutina "LCD_Inicializa" ------------------------------------------------------------
;
; Inicialización del módulo LCD: Configura funciones del LCD, produce reset por software,
; borra memoria y enciende pantalla. El fabricante especifica que para garantizar la
; configuración inicial hay que hacerla como sigue:
;
LCD_Inicializa
bsf STATUS,RP0
bcf LCD_PinRS
bcf LCD_PinEnable
bcf STATUS,RP0
bcf LCD_PinRW
bcf LCD_PinEnable
bcf LCD_PinRS
call Retardo_20ms
movlw b'00110000'
call LCD_EscribeLCD
call Retardo_5ms
movlw b'00110000'
call LCD_EscribeLCD
call Retardo_200micros
movlw b'00110000'
call LCD_EscribeLCD
call Retardo_20micros ; NUEVO
movlw b'00100000'
call LCD_EscribeLCD
call Retardo_20micros ; NUEVO
jueves, 25 de agosto de 2011
indexado_02
En assembler:
INICIO
MOVF PORTA,W ; CARGA DATOS DEL PORTA EN W
ANDLW B'00000111' ; SE QUEDA CON LOS 3 BITS DE ENTRADA
ADDWF PCL,F ; SALTA A LA CONFIGURACION ADECUADA
TABLA
GOTO VACIO
GOTO LLENANDOSE
GOTO ALARMA
GOTO LLENO
GOTO ALARMA
GOTO ALARMA
GOTO ALARMA
GOTO REBOSA
ADDWF PCL,F ; SALTA A LA CONFIGURACION ADECUADA
TABLA
GOTO VACIO
GOTO LLENANDOSE
GOTO ALARMA
GOTO LLENO
GOTO ALARMA
GOTO ALARMA
GOTO ALARMA
GOTO REBOSA
VACIO
MOVLW B'01100001' ;VACIO
MOVWF PORTB ;PUERTO SALIDA
GOTO INICIO
LLENANDOSE
MOVLW B'01100010' ;LLENANDOSE
GOTO SALIDA
ALARMA
MOVLW B'00010000' ;ALARMA
GOTO SALIDA
LLENO
MOVLW B'00100100' ;LLENO
GOTO SALIDA
ALARMA
MOVLW B'00010000' ;ALARMA
GOTO SALIDA
ALARMA
ALARMA
MOVLW B'00010000' ;ALARMA
GOTO SALIDA
ALARMA
MOVLW B'00010000' ;ALARMA
GOTO SALIDA
REBOSA
MOVLW B'00001000' ;REBOSA
GOTO SALIDA
SALIDA
MOVWF PORTB
GOTO INICIO
EN C:
#DEFINE SV PORT_A0
#DEFINE SLL PORT_A1
#DEFINE SR PORT_A2
#DEFINE VACIO PORT_B0
#DEFINE LLENANDOSE PORT_B1
#DEFINE LLENO PORT_B2
#DEFINE REBOSE PORT_B3
#DEFINE ALARMA PORT_B4
#DEFINE BOMBA1 PORT_B5
#DEFINE BOMBA2 PORT_B6
WHILE(1){
IF(SR=0){
IF(SLL=0){
IF(SV=0)(GOTO_ADDRESS(VACIO)}}}
ELSE(GOTO_ADDRESS(ALARMA)
ELSE(GOTO_ADDRESS(LLENANDOSE)
ELSE(GOTO_ADDRESS(LLENO)
WHILE(1){
IF(SR=1){
IF(SLL=1){
IF (SV=1) GOTO_ADDRESS(REBOSE)}}}
ELSE(GOTO_ADDRESS(ALARMA)
ELSE(GOTO_ADDRESS(ALARMA)
ELSE(GOTO_ADDRESS(ALARMA)
ALARMA
BIT_CLEAR(BOMBA1);
BIT_CLEAR(BOMBA2);
BIT_SET(ALARMA) ;}
REBOSE
BIT_CLEAR(BOMBA1);
BIT_CLEAR(BOMBA2);
BIT_SET(REBOSE) ;
VACIO
BIT_SET(BOMBA1);
BIT_SET(BOMBA2);
BIT_SET(VACIO) ;
LLENO
BIT_CLEAR(BOMBA2);
BIT_SET(BOMBA1) ;
BIT_SET(LLENO) ;
LLENANDOSE
BIT_SET(BOMBA1) ;
BIT_SET(BOMBA2) ;
BIT_SET(LLENANDOSE;
miércoles, 17 de agosto de 2011
Actividad 4 - Amplificadores Operacionales
Introducción
Los Amplificadores Operacionales (AO) son circuitos integrados que contienen varias etapas transistorizadas acopladas todas ellas en continua con el objetivo de lograr una altísima ganancia de tensión.
Por su gran versatilidad, quizás éstos sean los circuitos integrados analógicos de baja señal más usados hoy dia como interfases de entrada al mundo digital.
Es muy abundante la bibliografía que explica su funcionamiento y se detallan aplicaciones, pero para empezar, un apretado resúmen de las características y usos que poseen los AO las pueden leer de Wikipedia.
Por su gran versatilidad, quizás éstos sean los circuitos integrados analógicos de baja señal más usados hoy dia como interfases de entrada al mundo digital.
Es muy abundante la bibliografía que explica su funcionamiento y se detallan aplicaciones, pero para empezar, un apretado resúmen de las características y usos que poseen los AO las pueden leer de Wikipedia.
Algunos items para tener en cuenta:
- Se los suele alimentar con una fuente de alimentación simétrica.
- Si no se los realimenta (se toma parte de la señal de salida y se reinyecta en la entrada normalmente con redes pasivas) los circuitos que se logran son alineales. El ejemplo típico es el comparador a lazo abierto que funciona entragando dos tensiones bien definidas a su salida en función del valor de tensiones a la entrada.
- En el caso de realimentarlos, puede suceder que la realimentación sea negativa. En este caso lo que se persigue es tener un amplificador lineal cuya ganancia de tensión dependa casi exclusivamente de la red pasiva externa utilizada. Si en cambio la realimentación es positiva entonces lo que se persigue es un circuito inestable. Esta situación se da en circuitos osciladores o también en comparadores con histéresis.
En esta actividad vamos a evaluar el comportamiento del amplificador operacional realimentado negativamente usado para amplificar señales continuas o alternas. Se realizarán experiencias relacionadas con su funcionamiento, buscando fijar los conceptos que subyacen al emplearlos en distintas situaciones.
Experiencia 1:
Amplificador Inversor
1 - Armar prolijo el circuito del amplificador inversor, mostrado en la siguiente figura:
1 - Armar prolijo el circuito del amplificador inversor, mostrado en la siguiente figura:
Parte A - Comportamiento en continua
3 - Retirar del circuito el puente J1 y medir con el multímetro en el punto medio del PRESET (Va) los valores máximos y mínimos que entrega el divisor resistivo construido. Registrar y verificar los valores hallados contrastando en una tabla tanto los valores medidos y como los calculados.
Tension minima -1.5 Volt Tension Maxima 1.5
4 - Antes de realizar más mediciones, conectar el nodo marcado como Vs, a GND y verificar que la tensión de salida Vo es muy cercana a los cero volts. De no ser asi volver a verificar el correcto conexionado. Si aún persistiera la situación y si la tensión de salida fuese cercana a los +12 V ó -12V es probable que el amplificador operacional esté quemado.
La medición dio de manera correcta, muy cercana a los 0 Volts, la medición fue de 8 mV.
5 - Conectar ahora el puente J1.
6 - Con el fin de realizar un gráfico, realizar 11 mediciones, variando de un extremo a otro el cursor del preset, registrar nuevamente el valor máximo y mínimo medido en Va ¿Varió significativamente respecto de la medición realizada en el punto 3?. Cinco de esas mediciones deben ser valores de tensión Vs positivas, las otras cinco negativas; la restante se debe desconectar nuevamente J1 y conectar la entrada Vs a tierra (GND). Para esta última medición leer cuidadosamente el valor de tensión de salida. (Esa tensión se conoce como tensión residual de salida u offset). Tratar de tomar valores de tensión a intervalos regulares.
7 - Volcar los valores medidos en una tabla similar a la mostrada.
8 - Usando un programa graficador (elegir cualquiera: excel, mathcad etc...) dibujar la función transferencia del circuito (Vo en función de Vs). A partir de las mediciones realizadas, ¿dentro de qué rango de valores el circuito se comporta linealmente? ¿porqué el circuito dice ser un inversor?
Se comporta de manera lineal en los pequeños tramos que la linea es recta, es. El circuito se denomina inversor porque invierte el signo del valor que esta en la entrada, como podemos ver en la tabla, los valores de entrada y de salida nunca tienen el mismo signo, siempre que Vs es positivo, Vo es negativa, y cuando Vs es negativa, Vo es positiva.
9 - Contestar las siguientes preguntas y redactar los resultados del ensayo. (Para contestarlas quizás deba hacer algunas mediciones extras en el circuito).
- Dentro de la zona lineal ¿cuánto vale la ganancia de tensión del circuito? Exprese esa ganancia en veces y en dB. RESPUESTA: la ganancia de tensión vale -10 veces.
- Si varía la tensión de alimentación, ¿cambia su ganancia? (no sobrepase el 75 % los valores máximos admisibles). RESPUESTA: Si, la ganancia varia al modificar la tension de alimentación, por ejemplo, si lo alimento con una tensión de 8 Volts, la ganancia es AVS = -8,37
- Disminuir el valor de la tensión de alimentación. Observar en que momento deja de funcionar el circuito. Anotar la tensión mínima de alimentación que permite que el circuito funcione. RESPUESTA: La tensión mínima a la que deja de funcionar el circuito es de 0,5 Volts y su correspondiente ganancia es de AVS= -0,01138
- Si aumenta el valor de R2 llevándola a 220KOhms, ¿aumenta o disminuye la ganancia de tensión? RESPUESTA: Llevando R2 a 220KOhms, la ganancia de tensión varia, de tal manera que pasa a valer AVS = -22 veces
- Si disminuye el valor de R1 a 5600 Ohms, ¿aumenta o disminuye la ganancia de tensión? RESPUESTA: Con el valor de R1 en 5600 Ohms, la ganancia de tensión varia de tal forma que pasa a valer AVS = -26 veces
- Si desconecta la resistencia de carga RL ¿cambia la ganancia? RESPUESTA: Cuando desconecto la resistencia de carga RL, la ganancia de tensión cambia, volviéndose mayor que antes.
- Si en vez de conectar el terminal 4 (pin 4) a Vee = -12 V, lo desconecto de -12 V y lo conecto a tierra, ¿funciona de la misma manera el circuito? ¿qué cambios observa? RESPUESTA: Sige amplificando, aunque la ganancia disminuye.
- Si disminuyo el valor R1 a 390 Ohms y R2 a 5600 Ohms, tratando de mantener la ganancia similar a los valores originales medir la nueva tensión Vs. RESPUESTA: El valor de Vs
jueves, 30 de junio de 2011
PARTE C
Astable y Mono-estable con micro-controlador
1) Armar el circuito con el PIC12F683. (Vcc = 5 V Regulados).
2) Leer los programas fuentes relacionados con el astable y el monoestable.
3) Grabar el micro controlador con el programa ejecutable denominado AST_40K.hex.
3) Grabar el micro controlador con el programa ejecutable denominado AST_40K.hex.
4) Medir con el osciloscopio los tiempos y valores de tensión de salida.
Obtuvimos una tensión de salida de 5,2 Volts y un tiempo de estado alto y bajo de 12,4uS (los dos iguales)
5) Ahora grabar el microcontrolador con un nuevo programa ejecutable denominado MST_5s.hex.
6) Medir con el osciloscopio los tiempos y valores de tensión de salida.
6) Medir con el osciloscopio los tiempos y valores de tensión de salida.
El tiempo del disparo de entrada es igual a la cantidad de tiempo que mantengo oprimido el pulsador, el pulso dura 5 segundos y tiene una tensión de 5.04 Volts
Como podemos ver no importa la cantidad de veces que oprimamos el pulsador, el tiempo de estado en alto empieza a ser contado desde el primer disparo de entrada.
Como podemos ver aquí, la única forma de que el estado en alto se mantenga por mas del tiempo para el cual fue programado, es oprimir el pulsador un instante antes de que cambie de estado.
7) Diseñar (NO HACER) una placa impresa de no más de 30 mm x 30 mm (0,09 dm2) para el circuito con el microcontrolador. Usar molex para todos los conectores.
8) ¿Qué ventajas y desventajas tiene el uso de micro-controladores en el diseño?
8) ¿Qué ventajas y desventajas tiene el uso de micro-controladores en el diseño?
Básicamente las ventajas de utilizar un micro-controlador a la hora de diseñar, es un ahorro de espacio, lugar físico en la placa, la cual necesitara menos componentes para realizar la acción que quiero realizar. También obtengo una mayor precisión con un micro-controlador, que utilizando varios componentes, si se quemara alguno de los componentes tendría que verificar uno por uno a ver cual es el que esta dañado y reemplazarlo, en cambio con el micro-controlador, tengo menos posibles errores para buscar.
jueves, 16 de junio de 2011
Actividad 3 Circuito Monoestable
PARTE B
CIRCUITO MONOESTABLE
1) Dibujar en PROTEUS el circuito del monoestable con 555. (Vcc = 5V)
2) Verificar su correcto funcionamiento corriendo la simulación. Medir con el osciloscopio virtual y el contador de tiempo la duración del estado en alto al generar el disparo de entrada. La tensión de salida máxima y mínima. Capturar y mostrar las formas de onda de carga y descarga del capacitor responsable de la temporización, relacionándolas con el cambio de estado de la salida.
Como podemos ver en la imagen de arriba el tiempo de estado en alto nos da 5,23 S, tambien podemos ver en la grafica azul la carga y descarga del capacitor encargado de la temporizacion. El mismo momento en el que el capacitor se descarga por completo, dejamos de tener 5 Volts en la salida.
La tension maxima 5,30 V y la minima 200mV.
En esta captura podemos observar con el contador de tiempo, la duracion del estado en alto.
3)Calcular y modificar los valores necesarios de resistores y capacitores del circuito monoestable anterior para llevar el tiempo de activación a la salida a 5s, usando para ello las fórmulas y tablas disponibles. Antes de proceder al armado simular y verificar su correcto funcionamiento.
[segundos]
El capacitor debera ser de 4,7 uF y el R1 de 1Mohm
4) Agrupar ordenadamente las mediciones de tiempo en un cuadro para compararlas a posteriori con el circuito armado.
Osciloscopio Virtual Real
Tiempo de estado en alto 5,23 S 5,92 S
Vmax 5,30 V 5 V
Vmin 200mV 0V
5) Armar el circuito diseñado en el punto 3 por el grupo en protoboard.
6) Medir y registrar los valores de resistores y capacitores usados para la temporización del circuito con el puente RLC digital de banco.
Frecuencia Capacidad Resistencia
Capacitor 4,7 uF 0,012Khz 5,3129uF 43,31 Ohm
Resistor 1M 1Khz --------------- 1006 K
Resistor 330 1Khz --------------- 325 Ohm
Resistor 10K 1Khz --------------- 9,906 K
7) Realizar las mismas mediciones efectuadas en el punto 2 usando solamente el osciloscopio digital. Capturar la señal de salida agregar los cursores y mostrar en pantalla las mediciones.
El tiempo de estado en alto con el osciloscopio digital nos dio 5,92 S, la tension maxima 5V y la minima 0V.
¿Que pasa si el disparo de entrada lo ejecuto mas de una vez en un tiempo menor a los 5,92 segundos?
El tiempo de estado en alto es, ¿Mas largo o igual?
Como vemos en la grafica por mas que el disparo de entrada se ejecute mas de una vez ( grafica amarilla), en este caso 4, el tiempo de estado en alto sigue siendo 5,92 segundos (grafica celeste).
8) Ordenar toda la información y explicar todos los pasos realizados para comprender el funcionamiento del circuito.
Pordia decir que, este circuito es un temporizador muy versatil, que sirve para ser utilizado en muchos proyectos. Funciona generando una señal cuadrada durante un tiempo que define el usuario, variando los valores de una resistencia y un capacitor, se puede cambiar de manera muy facil y con un calculo muy sencillo el tiempo de estado en alto de la señal cuadrada.
CIRCUITO MONOESTABLE
1) Dibujar en PROTEUS el circuito del monoestable con 555. (Vcc = 5V)
2) Verificar su correcto funcionamiento corriendo la simulación. Medir con el osciloscopio virtual y el contador de tiempo la duración del estado en alto al generar el disparo de entrada. La tensión de salida máxima y mínima. Capturar y mostrar las formas de onda de carga y descarga del capacitor responsable de la temporización, relacionándolas con el cambio de estado de la salida.
Como podemos ver en la imagen de arriba el tiempo de estado en alto nos da 5,23 S, tambien podemos ver en la grafica azul la carga y descarga del capacitor encargado de la temporizacion. El mismo momento en el que el capacitor se descarga por completo, dejamos de tener 5 Volts en la salida.
La tension maxima 5,30 V y la minima 200mV.
En esta captura podemos observar con el contador de tiempo, la duracion del estado en alto.
3)Calcular y modificar los valores necesarios de resistores y capacitores del circuito monoestable anterior para llevar el tiempo de activación a la salida a 5s, usando para ello las fórmulas y tablas disponibles. Antes de proceder al armado simular y verificar su correcto funcionamiento.
En este caso el circuito entrega a su salida un solo pulso de un ancho establecido por el diseñador.El esquema de conexión es el que se muestra. La fórmula para calcular el tiempo de duración (tiempo en el que la salida está en nivel alto) es:
[segundos][segundos]
El capacitor debera ser de 4,7 uF y el R1 de 1Mohm
4) Agrupar ordenadamente las mediciones de tiempo en un cuadro para compararlas a posteriori con el circuito armado.
Osciloscopio Virtual Real
Tiempo de estado en alto 5,23 S 5,92 S
Vmax 5,30 V 5 V
Vmin 200mV 0V
5) Armar el circuito diseñado en el punto 3 por el grupo en protoboard.
6) Medir y registrar los valores de resistores y capacitores usados para la temporización del circuito con el puente RLC digital de banco.
Frecuencia Capacidad Resistencia
Capacitor 4,7 uF 0,012Khz 5,3129uF 43,31 Ohm
Resistor 1M 1Khz --------------- 1006 K
Resistor 330 1Khz --------------- 325 Ohm
Resistor 10K 1Khz --------------- 9,906 K
7) Realizar las mismas mediciones efectuadas en el punto 2 usando solamente el osciloscopio digital. Capturar la señal de salida agregar los cursores y mostrar en pantalla las mediciones.
El tiempo de estado en alto con el osciloscopio digital nos dio 5,92 S, la tension maxima 5V y la minima 0V.
¿Que pasa si el disparo de entrada lo ejecuto mas de una vez en un tiempo menor a los 5,92 segundos?
El tiempo de estado en alto es, ¿Mas largo o igual?
Como vemos en la grafica por mas que el disparo de entrada se ejecute mas de una vez ( grafica amarilla), en este caso 4, el tiempo de estado en alto sigue siendo 5,92 segundos (grafica celeste).
8) Ordenar toda la información y explicar todos los pasos realizados para comprender el funcionamiento del circuito.
Pordia decir que, este circuito es un temporizador muy versatil, que sirve para ser utilizado en muchos proyectos. Funciona generando una señal cuadrada durante un tiempo que define el usuario, variando los valores de una resistencia y un capacitor, se puede cambiar de manera muy facil y con un calculo muy sencillo el tiempo de estado en alto de la señal cuadrada.
Suscribirse a:
Entradas (Atom)