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

Compteur RPM Haute Vitesse Arduino – Algorithme « Single Shot » Novelty

Composants et fournitures

ComposantQuantitéNotes
Arduino UNO1
Capteur IR de proximité1Modèle recommandé requis
Fils de connexion3
Diode laser rouge 655 nm1Pointeur laser rouge OK
Moteur DC (test)1
Câble USB-A vers Mini-USB1
Batterie 9V1

Outils

Logiciels

À propos du projet

Compteur RPM Haute Vitesse Arduino – Algorithme « Single Shot » Novelty

Développé from scratch pour mesurer le RPM exact de moteurs avec un seul capteur IR, un Arduino et un laser rouge (indispensable).

Le capteur IR détecte les faibles rayonnements IR émis par le laser rouge. Un laser bleu/vert ne fonctionne pas (tension ~0). Quand une pale du ventilateur coupe le faisceau, la lecture tombe à 0. La pale tourne, le faisceau est alternativement coupé/retabli.

Algorithme « Single Shot Detection » (Nouveau)

Code original avec algorithme unique pour mesures en < 40 ms et résultats précis.

La méthode « Single Shot Detection » calcule le RPM à chaque obstruction du faisceau par une pale. Chaque obstruction = 1/n tour (n = nombre de pales).

→ Extrêmement sensible : détection variations RPM jusqu'à 2 décimales à chaque 1/n tour.

→ Précision et réactivité bien supérieures aux méthodes par moyenne sur période fixe.

Compteur RPM Haute Vitesse Arduino – Algorithme « Single Shot » Novelty

Exemple sortie : ~2 mesures/seconde, RPM affiché avec 2 décimales.

Code

// RPM Counter - Algorithme Single Shot
// par YaSh

int sen = A0;
const float wid = 0.012;   // Largeur pale (m) - à ajuster
const float rad = 0.045;   // Rayon détection (m) - à ajuster
const float konst = 6.2832; // 2*PI

float time_1, time_2, vel, diff, tnet, rpm;

void setup() {
  Serial.begin(9600);
  pinMode(sen, INPUT);
  Serial.println("\n Demarrez le moteur au moins 3s avant.\n");
  delay(3000);
}

void loop() {
  // Front descendant : pale arrive
  if (analogRead(sen) < 950) {
    time_1 = millis();
    delay(30); // Anti-rebond
  }
  // Front montant : pale repart
  if (analogRead(sen) > 950) {
    time_2 = millis();
    diff = (time_2 - time_1);        // Temps obstruction (ms)
    vel = wid / diff;                // Vitesse angulaire
    tnet = (konst * rad) / vel;      // Période complète
    rpm = 60000 / tnet;              // Conversion ms -> RPM
  }
  Serial.print("\n RPM = ");
  Serial.println(rpm);
}

Schémas

Compteur RPM Haute Vitesse Arduino – Algorithme « Single Shot » Novelty
Compteur RPM Haute Vitesse Arduino – Algorithme « Single Shot » Novelty

Processus de fabrication

  1. Construire un système aéroponique automatisé avec Raspberry Pi et capteur d'humidité
  2. Intégration d'un capteur thermocouple avec l'Arduino Portenta H7 via le MAX6675
  3. Construire un jeu gyroscopique temps réel avec Arduino Nano et capteur MPU-6050
  4. Projet capteur DHT11 température/humidité avec indicateurs LED et buzzer piézo
  5. Capteur CO2 K30 : Surveillance en temps réel de la qualité de l'air intérieur
  6. Unopad : contrôleur MIDI Arduino fluide pour Ableton Live
  7. Enregistreur de Température et Humidité Arduino avec DHT11 et Shield Ethernet
  8. Bocal Intelligent IoT avec ESP8266, Arduino et Capteur Ultrasonique – Surveillance Temps Réel
  9. Automates Cellulaires Temps Réel sur Arduino avec Écran OLED 128x64