Índice:
- Etapa 1: Como funciona (conceito):
- Etapa 2: Como funciona (no código):
- Etapa 3: Uso do código para análise de frequência:
- Etapa 4: Saída:
- Etapa 5: Verificar várias janelas e tamanhos de amostra:
- Etapa 6: Exemplo:
![Arduino: Transformação de frequência (DFT): 6 etapas Arduino: Transformação de frequência (DFT): 6 etapas](https://i.howwhatproduce.com/images/004/image-10345-j.webp)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
![Arduino: Transformação de frequência (DFT) Arduino: Transformação de frequência (DFT)](https://i.howwhatproduce.com/images/004/image-10345-1-j.webp)
este programa é para calcular a transformada de frequência no Arduino com controle de massa sobre os parâmetros. É resolvido usando a transformação Fouriior profanada.
isso não é FFT
FFT é um algoritmo usado para resolver DFT com menor tempo.
O código para FFT pode ser encontrado aqui.
Etapa 1: Como funciona (conceito):
![Como funciona (conceito) Como funciona (conceito)](https://i.howwhatproduce.com/images/004/image-10345-2-j.webp)
![Como funciona (conceito) Como funciona (conceito)](https://i.howwhatproduce.com/images/004/image-10345-3-j.webp)
O programa fornecido para a transformação de frequência oferece grande controle sobre a saída necessária. este programa avalia a faixa de frequência fornecida pelo usuário na entrada fornecida para o conjunto de dados.
- Na figura, um conjunto de dados feito de duas frequências chamadas f2 e f5, que precisam ser testadas. f2 e f5 são nomes aleatórios para duas frequências, um número mais alto para uma frequência relativamente mais alta. aqui, a frequência menor f2 tem amplitude maior e f5 tem amplitude menor.
- Pode ser mostrado matematicamente que a soma da multiplicação de dois conjuntos de dados harmônicos com frequências diferentes tende a zero (um número maior de dados pode levar ao resultado da massa). Em nosso caso, se essas duas frequências de multiplicação têm a mesma frequência (ou muito próxima), essa soma da multiplicação é um número diferente de zero onde a amplitude depende da amplitude dos dados.
- para detectar a frequência específica, determinado conjunto de dados pode ser multiplicado por várias frequências de teste e o resultado pode fornecer o componente dessa frequência nos dados.
Etapa 2: Como funciona (no código):
![Como funciona (no código) Como funciona (no código)](https://i.howwhatproduce.com/images/004/image-10345-4-j.webp)
![Como funciona (no código) Como funciona (no código)](https://i.howwhatproduce.com/images/004/image-10345-5-j.webp)
para os dados fornecidos (f2 + f5), um por um, f1 a f6 é multiplicado e o valor da soma é anotado. essa soma final representa o conteúdo dessa frequência. o resto (não correspondência) da frequência deve ser idealmente zero, mas não é possível no caso real. para fazer a soma zero, é necessário ter um tamanho infinito de conjuntos de dados.
- como pode ser mostrado nas figuras f1 a f6, a frequência de teste e sua multiplicação com o conjunto de dados em cada ponto é mostrada.
- na segunda figura, o somatório dessa multiplicação em cada frequência é traçado. dois picos em 1 e 5 são identificáveis.
então, usando a mesma abordagem para dados aleatórios, podemos avaliar tantas frequências e analisar o conteúdo da frequência dos dados.
Etapa 3: Uso do código para análise de frequência:
![Usando código para análise de frequência Usando código para análise de frequência](https://i.howwhatproduce.com/images/004/image-10345-6-j.webp)
por exemplo, vamos usar este código para encontrar DFT de onda quadrada.
primeiro cole o código anexado (função dft) após o loop, conforme a imagem mostrada
8 TERMOS QUE PRECISAM SER ESPECIFICADOS
- uma matriz de qual dft precisa ser tomada
- tamanho de uma matriz
- intervalo de tempo entre 2 leituras na matriz em miliSECONDS
- valor inferior da faixa de frequência em Hz
- valor superior da faixa de frequência em Hz
- tamanho das etapas para a faixa de frequência
- repetição de um sinal (mínimo 1) maior precisão do batedor, mas maior tempo de solução
-
função de janela:
0 para nenhuma janela 1 para janela de topo plano 2 para janela hann 3 para janela de hamming
(se você não tem ideia sobre como selecionar a janela, mantenha o padrão 3)
exemplo: dft (a, 8, 0,5, 0, 30, 0,5, 10, 3); aqui, a é uma matriz de elemento de tamanho 8 a ser verificada para 0 Hz a 30 Hz com 0,5 passo (0, 0,5, 1, 1,5, …, 29, 29,5, 30) 10 repetição e janela de hamming
aqui é possível usar um array de tamanho maior, tanto quanto o arduino pode suportar.
Etapa 4: Saída:
![Saída Saída](https://i.howwhatproduce.com/images/004/image-10345-7-j.webp)
![Saída Saída](https://i.howwhatproduce.com/images/004/image-10345-8-j.webp)
se você comentar
Serial.print (f); Serial.print ("\ t");
do código serial plotter fornecerá a natureza do espectro de frequência, se não o monitor serial fornecerá a frequência com sua amplitude.
Etapa 5: Verificar várias janelas e tamanhos de amostra:
![Verificando várias janelas e tamanhos de amostra Verificando várias janelas e tamanhos de amostra](https://i.howwhatproduce.com/images/004/image-10345-9-j.webp)
na figura, a frequência da onda senoidal é medida usando uma configuração diferente.
Etapa 6: Exemplo:
![Exemplo Exemplo](https://i.howwhatproduce.com/images/004/image-10345-10-j.webp)
na figura a transformação de dados usando SciLab e arduino é comparada.
Recomendado:
Contador de frequência simples usando Arduino: 6 etapas
![Contador de frequência simples usando Arduino: 6 etapas Contador de frequência simples usando Arduino: 6 etapas](https://i.howwhatproduce.com/images/001/image-1324-j.webp)
Contador de frequência simples usando Arduino: Neste tutorial, aprenderemos como fazer um contador de frequência simples usando Arduino. Assistir ao vídeo
Sensor de batimentos cardíacos usando Arduino (monitor de frequência cardíaca): 3 etapas
![Sensor de batimentos cardíacos usando Arduino (monitor de frequência cardíaca): 3 etapas Sensor de batimentos cardíacos usando Arduino (monitor de frequência cardíaca): 3 etapas](https://i.howwhatproduce.com/images/001/image-03-48-j.webp)
Sensor de batimentos cardíacos usando Arduino (monitor de frequência cardíaca): o sensor de batimentos cardíacos é um dispositivo eletrônico usado para medir a frequência cardíaca, ou seja, a velocidade dos batimentos cardíacos. Monitorar a temperatura corporal, a frequência cardíaca e a pressão arterial são as coisas básicas que fazemos para nos manter saudáveis. A frequência cardíaca pode ser mon
Como usar o gerador de sinal de frequência Arduino DDS AD9850: 7 etapas
![Como usar o gerador de sinal de frequência Arduino DDS AD9850: 7 etapas Como usar o gerador de sinal de frequência Arduino DDS AD9850: 7 etapas](https://i.howwhatproduce.com/images/001/image-101-7-j.webp)
Como usar o Arduino DDS Frequency Signal Generator AD9850: Neste tutorial, aprenderemos como fazer um gerador de sinais de frequência usando um módulo AD9850 e Arduino. Assistir ao vídeo! Nota: Consegui obter a frequência de até + 50 MHz, mas a qualidade do sinal fica pior com as frequências mais altas
Contador de frequência com Arduino: 8 etapas (com imagens)
![Contador de frequência com Arduino: 8 etapas (com imagens) Contador de frequência com Arduino: 8 etapas (com imagens)](https://i.howwhatproduce.com/images/002/image-5515-j.webp)
Contador de frequência com Arduino: Este é um contador de frequência simples e barato baseado em arduino, que custa menos de 4 $ e tem sido muito útil para medir pequenos circuitos
A medição da frequência cardíaca está na ponta do dedo: Fotopletismografia Abordagem para determinar a frequência cardíaca: 7 etapas
![A medição da frequência cardíaca está na ponta do dedo: Fotopletismografia Abordagem para determinar a frequência cardíaca: 7 etapas A medição da frequência cardíaca está na ponta do dedo: Fotopletismografia Abordagem para determinar a frequência cardíaca: 7 etapas](https://i.howwhatproduce.com/images/011/image-30301-j.webp)
A medição da frequência cardíaca está na ponta do dedo: Fotopletismografia Abordagem para determinar a frequência cardíaca: A fotopletismografia (PPG) é uma técnica ótica simples e de baixo custo frequentemente usada para detectar alterações no volume sanguíneo em um leito microvascular de tecido. É usado principalmente de forma não invasiva para fazer medições na superfície da pele, normalmente