Índice:

Os profissionais sabem disso !: 24 etapas
Os profissionais sabem disso !: 24 etapas

Vídeo: Os profissionais sabem disso !: 24 etapas

Vídeo: Os profissionais sabem disso !: 24 etapas
Vídeo: Mestrado: como encontrar o edital e ser aprovado em todas as etapas | Aula 1 2024, Novembro
Anonim
Image
Image

Hoje vamos falar sobre “calibração ADC automatizada ESP32”. Pode parecer um assunto muito técnico, mas acho muito importante que você conheça um pouco sobre ele.

Isso ocorre porque não se trata apenas do ESP32, ou mesmo apenas da calibração do ADC, mas de tudo o que envolve sensores analógicos que você pode querer ler.

A maioria dos sensores não é linear, por isso vamos apresentar um calibrador de protótipo automatizado para conversores analógicos digitais. Além disso, faremos uma correção de um ESP32 AD.

Etapa 1: Introdução

Recursos Usados
Recursos Usados

Tem um vídeo em que falo um pouco sobre esse assunto: Você não sabia? Ajuste ESP32 ADC. Agora, vamos falar de uma forma automatizada que evita que você faça todo o processo de regressão polinomial. Confira!

Etapa 2: Recursos usados

· Jumpers

· 1x Protoboard

· 1x ESP WROOM 32 DevKit

· 1x cabo USB

· 2 resistores de 10k

· 1 resistor 6k8 ou 1 potenciômetro mecânico de 10k para ajustar o divisor de tensão

· 1x X9C103 - potenciômetro digital de 10k

· 1x LM358 - amplificador operacional

Etapa 3: Circuito usado

Circuito Usado
Circuito Usado

Neste circuito, o LM358 é um amplificador operacional na configuração “buffer de tensão”, isolando os dois divisores de tensão para que um não influencie o outro. Isso permite obter uma expressão mais simples, uma vez que R1 e R2 podem, com uma boa aproximação, não mais ser considerados em paralelo com RB.

Etapa 4: a tensão de saída depende da variação do potenciômetro digital X9C103

A tensão de saída depende da variação do potenciômetro digital X9C103
A tensão de saída depende da variação do potenciômetro digital X9C103

Com base na expressão que obtivemos para o circuito, esta é a curva de tensão em sua saída quando variamos o potenciômetro digital de 0 a 10k.

Etapa 5: Controlando o X9C103

Controlando o X9C103
Controlando o X9C103

· Para controlar nosso potenciômetro digital X9C103 vamos alimentá-lo com 5V, vindo do mesmo USB que alimenta o ESP32, conectando em VCC.

· Conectamos o pino UP / DOWN ao GPIO12.

· Conectamos o pino INCREMENT ao GPIO13.

· Conectamos DEVICE SELECT (CS) e VSS a GND.

· Conectamos VH / RH à alimentação de 5V.

· Conectamos VL / RL ao GND.

· Conectamos RW / VW à entrada do buffer de tensão.

Etapa 6: conexões

Conexões
Conexões

Etapa 7: captura no osciloscópio das rampas para cima e para baixo

Captura no osciloscópio das rampas para cima e para baixo
Captura no osciloscópio das rampas para cima e para baixo

Podemos observar as duas rampas geradas pelo código ESP32.

Os valores da rampa de subida são capturados e enviados ao software C # para avaliação e determinação da curva de correção.

Etapa 8: Esperado Versus Leito

Esperado versus lido
Esperado versus lido

Etapa 9: Correção

Correção
Correção

Usaremos a curva de erro para corrigir o ADC. Para isso, alimentaremos um programa feito em C #, com os valores do ADC. Ele irá calcular a diferença entre o valor lido e o esperado, criando assim uma curva ERROR em função do valor ADC.

Conhecendo o comportamento desta curva, saberemos o erro e poderemos corrigi-lo.

Para conhecer esta curva, o programa C # utilizará uma biblioteca que fará uma regressão polinomial (como as realizadas nos vídeos anteriores).

Etapa 10: Esperado versus lido após a correção

Esperado versus lido após a correção
Esperado versus lido após a correção

Etapa 11: execução do programa em C #

Execução do programa em C #
Execução do programa em C #

Etapa 12: aguarde a mensagem de INÍCIO da rampa

Aguarde a mensagem de INÍCIO da rampa
Aguarde a mensagem de INÍCIO da rampa
Aguarde a mensagem de INÍCIO da rampa
Aguarde a mensagem de INÍCIO da rampa

Etapa 13: Código-fonte ESP32 - Exemplo de uma função de correção e seu uso

Código-fonte ESP32 - Exemplo de uma função de correção e seu uso
Código-fonte ESP32 - Exemplo de uma função de correção e seu uso

Etapa 14: comparação com técnicas anteriores

Comparação com técnicas anteriores
Comparação com técnicas anteriores

Etapa 15: CÓDIGO FONTE ESP32 - Declarações e configuração ()

CÓDIGO FONTE ESP32 - Declarações e configuração ()
CÓDIGO FONTE ESP32 - Declarações e configuração ()

Etapa 16: CÓDIGO FONTE ESP32 - Loop ()

CÓDIGO FONTE ESP32 - Loop ()
CÓDIGO FONTE ESP32 - Loop ()

Etapa 17: CÓDIGO FONTE ESP32 - Loop ()

CÓDIGO FONTE ESP32 - Loop ()
CÓDIGO FONTE ESP32 - Loop ()

Etapa 18: CÓDIGO FONTE ESP32 - Pulso ()

CÓDIGO FONTE ESP32 - Pulso ()
CÓDIGO FONTE ESP32 - Pulso ()

Etapa 19: CÓDIGO FONTE DO PROGRAMA EM C # - Execução do Programa em C #

CÓDIGO FONTE DO PROGRAMA EM C # - Execução do Programa em C #
CÓDIGO FONTE DO PROGRAMA EM C # - Execução do Programa em C #

Etapa 20: CÓDIGO FONTE DO PROGRAMA EM C # - Bibliotecas

CÓDIGO FONTE DO PROGRAMA EM C # - Bibliotecas
CÓDIGO FONTE DO PROGRAMA EM C # - Bibliotecas

Etapa 21: CÓDIGO FONTE DO PROGRAMA EM C # - Namespace, classe e global

CÓDIGO FONTE DO PROGRAMA EM C # - Namespace, classe e global
CÓDIGO FONTE DO PROGRAMA EM C # - Namespace, classe e global

Etapa 22: CÓDIGO FONTE DO PROGRAMA EM C # - RegPol ()

CÓDIGO FONTE DO PROGRAMA EM C # - RegPol ()
CÓDIGO FONTE DO PROGRAMA EM C # - RegPol ()

Etapa 23:

Imagem
Imagem

Etapa 24: Baixe os arquivos

PDF

RAR

Recomendado: