Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

P13 Electronica

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 7

Índice de Contenido

1. Objetivos 3

2. Marco Teórico 3

3. Marco Conceptual 6

4. Desarrollo 7

4.1. Parte C 7

5. Análisis de Resultados y Conclusiones. 8

6. Aportaciones, Sugerencias, Etc. 9

7. Otros puntos adicionales que el alumno considere necesario agregar. 9

8. Bibliografía y Referencias Impresas (en formato digital).9

Índice de Figuras

Figura 1 Pines analógicos 4

Figura 2 Salidas analógicas PWM 5

Figura 3 Circuito físico Parte C 8


Objetivos

Conceptualización de Conversión analógico-Digital y Conver4sión Digital-


Analógico para la configuración del microcontrolador ATMEGA328P y RP2040.
Configuración de los registros del ADC en el microcontrolador ATMEGA328P y
RP2040.
Aplicación en el uso del microcontrolador ATMEGA328P y RP2040, en la
configuración de sus puertos ADC y DAC.

Marco Teórico

Un sistema de control (como un microcontrolador) no tiene capacidad alguna para


trabajar con señales analógicas, de modo que necesita convertir las señales
analógicas en señales digitales para poder trabajar con ellas.
La señal digital obtenida de una analógica tiene dos propiedades fundamentales:
Valores. Que valor en voltios define 0 y 1. En nuestro caso es tecnología TTL (0 –
5V)
Resolución analógica: nº de bits que usamos para representar con una notación
digital una señal analógica:
En el caso de un arduino Uno, el valor de 0 voltios analógico es expresado en
digital como B0000000000 (0) y el valor de 5V analógico es expresado en digital
como B1111111111 (1023). Por lo tanto todo valor analógico intermedio es
expresado con un valor entre 0 y 1023, es decir, sumo 1 en binario cada 4,883
mV.
Arduino Uno tiene una resolución de 10 bits, es decir, unos valores entre 0 y 1023.
Arduino Due tiene una resolución de 12 bits, es decir, unos valores entre 0 y 4095.
Entradas Analógicas en Arduino
Los microcontroladores de Arduino contienen en la placa un conversor analógico a
digital de 6 canales. El conversor tiene una resolución de 10 bits, devolviendo
enteros entre 0 y 1023. Los pines analógicos de Arduino también tienen todas las
funcionalidades de los pines digitales. Por lo tanto, si necesitamos más pines
digitales podemos usar los pines analógicos. La nomenclatura para los pines
analógicos es A0, A1, etc…

[Escriba aquí]
Figura 1 Pines analógicos

En Arduino para tratar las entradas y salidas digitales usamos las siguientes
funciones:
analogReference() – configura la referencia de voltaje usada para la entrada
analógica.  
analogRead() – lee el valor del pin analógico especificado.  
analogWrite() – escribe un valor analógico (onda PWM) al pin especificado. No en
todos los pines digitales se puede aplicar PWM. 
Salidas Analógicas. PWM
Como hemos dicho Arduino Uno tiene entradas analógicas que gracias a los
conversores analógico digital puede entender ese valor el microcontrolador, pero
no tiene salidas analógicas puras y para solucionar esto, usa la técnica de PWM.
Algunos pines digitales pueden usarse como salidas analógicas PWM:

Figura 2 Salidas analógicas PWM

[Escriba aquí]
Las Salidas PWM (Pulse Width Modulation) permiten generar salidas analógicas
desde pines digitales. Arduino Uno no posee salidas analógicas puras, sin
embargo el Arduino Due sí tiene salidas analógicas puras mediante dos DAC.
El arduino due, posee dos salidas analógicas puras mediante dos conversores
digital a analógico. Estos pines pueden usarse para crear salidas de audio usando
la librería correspondiente.
La función para hacer una salida PWM en un pin es:
analogWrite() – escribe un valor analógico (onda PWM) al pin especificado. No en
todos los pines digitales se puede aplicar
PWM. http://arduino.cc/en/Reference/AnalogWrite
Para aquellos proyectos donde haga falta una conversión de señal analógica a
digital, y que el microcontrolador usado no disponga de esta capacidad, es
interesante contar con este tipo de módulo ADS1115, que provee de esa
capacidad de conversión ADC con una precisión de 16-bit.
Además, este componente electrónico puede ser interesante también para
extender las capacidades de conversión, incluso si el microcontrolador que estás
usando para tu proyecto tiene dicha capacidad pero necesitas algo más.
Por otro lado, tienes que entender que el ADS1115 tiene dos modos de medición,
uno es el diferencial y otro el single ended:
Diferencial: usa dos ADCs para cada medición, reduciendo el número de canales
a 2, pero aporta una ventaja clara, y es que puede medir tensiones negativas y no
es tan vulnerable al ruido.
Single ended: tiene cuatro canales al no usar los dos como en el caso anterior.
Cada uno de los canales de 15-bits.
Además de esos modos, incluye un modo comparador en el que se genera una
alerta a través del pin ALRT cuando alguno de los canales supera un valor umbral
que se puede configurar en el código fuente del sketch.
Si quieres hacer mediciones inferiores a los 5v, pero con precisiones superiores,
debes saber que el ADS1115 tiene un PGA que puede ajustar la ganancia de
voltaje desde los 6.144v a los 0.256v. Siempre teniendo en cuenta que la máxima
tensión que se puede medir en cualquier caso será la tensión de alimentación
empleada (5v).
Los datos de entrada y configuración del DAC se pueden programar en la
memoria (EEPROM) utilizando el comando de interfaz I2C. El Convertidor Digital
Analógico tiene un pin de selección de bit de dirección A0 externo. Este pin A0
puede vincularse a VDD (5V) o GND (Tierra) de nuestro Arduino para así elegir

[Escriba aquí]
una de nuestras dos opciones de dirección que deseemos trabajar ya sea I2C:
0x62 o 0x63. El MCP4725 tiene una interfaz en serie compatible con I2C de dos
hilos para modo estándar (100 kHz), rápido (400 kHz) o alta velocidad (3.4 MHz).
Marco Conceptual

Una señal eléctrica analógica es aquella en la que los valores de la tensión o


voltaje varían constantemente y pueden tomar cualquier valor. En el caso de la
corriente alterna, la señal analógica incrementa su valor con signo eléctrico
positivo (+) durante medio ciclo y disminuye a continuación con signo eléctrico
negativo (–) en el medio ciclo siguiente.
La modulación por ancho de pulsos (también conocida como PWM, siglas en
inglés de pulse-width modulation) de una señal o fuente de energía es una técnica
en la que se modifica el ciclo de trabajo de una señal periódica (una senoidal o
una cuadrada, por ejemplo), ya sea para transmitir información a través de un
canal de comunicaciones o para controlar la cantidad de energía que se envía a
una carga.
Existen dos tipos de conversores de señal fundamentales, aunque también existen
otros chips capaces de hacer ambos tipos de conversión a la vez. Estos son:
CAD (Conversor Analógico a Digital) o ADC (Analog-to-Digital Converter): es un
tipo de dispositivo que convierte la señal analógica en una señal digital. Para ello,
puede ir usando un código binario que codifica la señal analógica. Por ejemplo,
asociando un valor binario a un valor de tensión o corriente concreto. Por ejemplo,
con 4-bit de resolución se puede ir desde el 0000 al 1111, y podría corresponder a
0v y 12v respectivamente. Aunque si se usa un bit de signo se pueden medir
valores negativos y positivos.
CDA (Conversor Digital a Analógico) o DAC (Digital-to-Analog Converter): es un
dispositivo que hace lo contrario a lo anterior, es decir, unos datos binarios los
transforma en una señal de corriente o tensión analógica.
El ADS1115 es un módulo conversor de señal. Lo que hace es convertir de
analógico a digital. Puedes pensar que la propia placa de desarrollo Arduino ya
incluye ADCs internos para poder hacer esta tarea cuando se usan las entradas
analógicas y que puedan ser compatibles con las señales del microcontrolador.
Sí, es cierto, tienen 6 ADCs de 10-bit de resolución en la UNO, Mini y Nano. Pero
con el ADS1115 agregas otro con una resolución de 16-bit, superior a la de
Arduino, además de poder liberar la carca de Arduino. Quince de ellos son para la
medición y un último bit para el signo de la señal analógica, ya que como sabes, la
señal analógica puede ser negativa o positiva.
El MCP4725 es un convertidor digital a analógico de baja potencia, alta precisión,
canal único y 12 bits con memoria (EEPROM).

[Escriba aquí]
Desarrollo

Material y equipo utilizado


1 Computadora
1 Software Arduino IDE y Thonny.
1 Tarjeta Arduino Uno y RP2040 (KIT Microcontrolador).

Parte C

Para este programa se alimentó un motor con una pila cuadrada de 9V, al
presionar el botón hacia que el motor girara en un sentido y con uno de los
potenciómetros hacia que cambiara el sentido de giro de este motor. El código
que hará este trabajo está diseñado en el software de Arduino ID.

int TermM1 = 9;

int TermM2 = 10;

boolean RotDir;

int VelRot;

void setup() {

   pinMode(TermM1,OUTPUT);

   pinMode(TermM2,OUTPUT);

void loop() {

  int VarPot = analogRead(A1);

  VelRot = VarPot - 512;

  if(VarPot > 512)

      RotDir = true;

  else

      RotDir = false;

  VelRot = abs(VarPot - 512);

[Escriba aquí]
  driveMotor(RotDir, map(VelRot,0, 512, 0, 255));

  delay(10);      

void driveMotor(boolean dir, int vel){

   if(dir){

     analogWrite(TermM1,vel);

     analogWrite(TermM2,0);

    }

    else {

     analogWrite(TermM1,0);

     analogWrite(TermM2,vel);

      }

  }

Bibliografía y Referencias Impresas (en formato digital).

Aprendiendo Arduino. Entradas y Salidas Analógicas Arduino. PWM


https://aprendiendoarduino.wordpress.com/tag/conversor-analogico-digital/
Hardwarelibre. (s.f). ADS1115: conversor analógico-digital para Arduino
https://www.hwlibre.com/ads1115/
hetpro-store. Figura 3 Circuito físico Parte C (s.f). DAC
MCP4725 con Arduino UNO. https://hetpro-
store.com/TUTORIALES/mcp4725-dac-con-arduino-uno/

[Escriba aquí]

También podría gustarte