Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Détecteur de fréquence audio Arduino — Mesurer le pic sonore avec module haute sensibilité

Matériel

Principe : FFT sur Arduino

  1. Le module sort un signal analogique (A0) proportionnel à la pression acoustique.
  2. L'Arduino échantillonne à 2048 Hz (128 points → résolution ~16 Hz).
  3. Une FFT (Fast Fourier Transform) via la bibliothèque arduinoFFT transforme le signal temporel en spectre de fréquences.
  4. La fonction MajorPeak() retourne la fréquence dominante.
  5. Résultat affiché sur le Moniteur Série (115200 bauds).

Code complet

#include "arduinoFFT.h"

#define SAMPLES 128               // puissance de 2, max 128 sur Uno
#define SAMPLING_FREQUENCY 2048   // Hz (Nyquist → max 1024 Hz détectables)

arduinoFFT FFT = arduinoFFT();

double vReal[SAMPLES];
double vImag[SAMPLES];
unsigned int samplingPeriod;
unsigned long microSeconds;

void setup() {
  Serial.begin(115200);
  samplingPeriod = round(1000000 * (1.0 / SAMPLING_FREQUENCY));
}

void loop() {
  // Acquisition
  for (int i = 0; i < SAMPLES; i++) {
    microSeconds = micros();
    vReal[i] = analogRead(A0);
    vImag[i] = 0;
    while (micros() < microSeconds + samplingPeriod) { /* wait */ }
  }

  // FFT
  FFT.Windowing(vReal, SAMPLES, FFT_WIN_TYP_HAMMING, FFT_FORWARD);
  FFT.Compute(vReal, vImag, SAMPLES, FFT_FORWARD);
  FFT.ComplexToMagnitude(vReal, vImag, SAMPLES);

  // Pic principal
  double peak = FFT.MajorPeak(vReal, SAMPLES, SAMPLING_FREQUENCY);
  Serial.println(peak);

  while (1); // exécution unique (reset pour recommencer)
}

Limites & améliorations

Schéma de connexion

Module son → VCC à 5 V, GND à GND, OUT à A0. Aucune résistance nécessaire (sortie déjà conditionnée).

Processus de fabrication

  1. Créer un système Ambilight spectaculaire pour moniteur avec Arduino
  2. Créer un jeu Pong classique sur Arduino UNO avec écran OLED – Tutoriel étape par étape
  3. Construisez votre propre Tamagotchi Arduino : Un animal de compagnie numérique DIY
  4. Comment lire de l'audio avec Arduino UNO et DFPlayer Mini – Guide étape par étape
  5. Interrupteur lumineux sans fil intelligent : Manipulateur d'interrupteur piloté par Arduino
  6. Morpion sur matrice LED MAX7219 avec boîtier en carton
  7. Pistolet à eau intelligent à détection de mouvement avec Arduino Nano
  8. Construire un minuteur à rebours Arduino fiable avec afficheur 7 segments SparkFun
  9. Tournesol Arduino : Construisez un Tournesol Électronique Suiveur de Soleil