Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Hoge-Snelheid Arduino RPM Teller met Nieuw Algoritme

Onderdelen en benodigdheden

OnderdeelAantal
Arduino UNO1
IR nabijheidssensor (aanbevolen type gebruiken)1
Draadbruggen3
Laser Diode, 655 nm (rode laser pointer)1
DC motor (voor testen)1
USB-A naar Mini-USB kabel1
9V Batterij1

Benodigde tools

  • Loodvrij soldeerdraad
  • Solderbout (alleen voor motor aansluitingen)

Apps en online diensten

  • Arduino IDE

Over dit project

Hoge-Snelheid Arduino RPM Teller met Nieuw Algoritme

Dit project is vanaf nul ontwikkeld om de exacte RPM (omwentelingen per minuut) van verschillende motoren te meten met één IR-sensor, een Arduino en een essentiële sleutel: een rode laser pointer.

De IR-sensor detecteert de lage hoeveelheid IR-straling van de rode laser. Bij blauwe/groene lasers is dit te laag. Wanneer een wiebelvleugel de laserbundel onderbreekt, daalt de meting naar 0. De vleugel draait voortdurend, waardoor een periodieke onderbreking ontstaat.

NIEUW: Single-Shot Algoritme voor Snelle, Adaptieve Metingen

De code gebruikt een uniek, nieuw ontwikkeld algoritme dat metingen in minder dan 40 milliseconden uitvoert met nauwkeurige resultaten.

Kernkenmerk: Single Shot Detection – de RPM wordt berekend elke keer dat een wiebelvleugel de laser onderbreekt. Een onderbreking markeert 1/n van een omwenteling (n = aantal vleugels). Hierdoor is het programma extreem gevoelig voor minimale RPM-veranderingen (tot 2 decimalen) bij elke 1/n-de omwenteling.

Hoge-Snelheid Arduino RPM Teller met Nieuw Algoritme

In de seriële monitor output is de output-frequentie ~2x per seconde zichtbaar. RPM-waarden met 2 decimalen nauwkeurigheid.

Probeer dit project en deel je resultaten! Suggesties voor nieuwe projecten welkom. Volg mijn profiel: @YASH36.

Code

RPM_counter_101 (Arduino)

// Code door YaSh
int sen = A0;
const float wid = 0.012; // breedte van wiebelvleugel (aanpassen)
const float rad = 0.045; // straal van detectiepunt (aanpassen)
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.print(" \n Start motor minstens 3 seconden van tevoren.\n");
  delay(3000);
}

void loop() {
  if (analogRead(sen) < 950) {
    time_1 = millis();
    delay(30);
  }
  if (analogRead(sen) > 950) {
    time_2 = millis();
    diff = (time_2 - time_1);
    vel = wid / diff; // rotatiesnelheid
    tnet = (konst * rad) / vel; // tijd = (2*pi*straal)/snelheid
    rpm = (60000) / tnet; // ms naar minuten, dan naar RPM
  }
  Serial.print("\n De RPM is: ");
  Serial.println(rpm);
}

Schema's

Hoge-Snelheid Arduino RPM Teller met Nieuw Algoritme
Hoge-Snelheid Arduino RPM Teller met Nieuw Algoritme

Productieproces

  1. Een geautomatiseerd aeroponisch systeem bouwen met Raspberry Pi en vochtigheidssensor
  2. Integreren van een thermocouple-sensor met de Arduino Portenta H7 via de MAX6675 IC
  3. Bouw een real-time gyroscoop-spel met Arduino Nano & MPU-6050 sensor
  4. DHT11 Temperatuur- & Vochtigheidsensor Project met LED-indicatoren en Piezo-luidspreker
  5. K30 CO2-sensor: Real-time binnenluchtkwaliteitmonitoring met Arduino
  6. Unopad: Naadloze Arduino MIDI-controller voor Ableton Live
  7. Arduino temperatuur- en vochtigheidslogger met DHT11 en Ethernet Shield
  8. Bouw een Slimme IoT Pot met ESP8266, Arduino & Ultrasonische Sensor – Real-time Monitoring
  9. Een eenvoudige obstakelsensor bouwen met Arduino – IR LED & Fotodiodo Tutorial
  10. Een DFRobot Capacitieve Vingerafdruksensor integreren met Arduino of ESP8266
  11. Bouw Real-Time Cellulaire Automaten op Arduino met 128x64 OLED Display