Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino-basierter Drehzahlmesser mit neuem und schnellerem Algorithmus

Komponenten und Verbrauchsmaterialien

Arduino UNO
× 1
IR-Näherungssensor
Verwenden Sie den in diesem Projekt empfohlenen Sensor, andernfalls können die Ergebnisse variieren
× 1
Jumper (generisch)
× 3
Laserdiode, 655 nm
Sie können einen vorgefertigten Laserpointer verwenden und nicht unbedingt den oben genannten.
× 1
DC-Motor (generisch)
dies ist zum Testen.
× 1
USB-A-auf-Mini-USB-Kabel
× 1
Batterie, 9 V
× 1

Notwendige Werkzeuge und Maschinen

Lötdraht, bleifrei
Lötkolben (generisch)
nur zum Löten von Drähten an Motorkabel. Sie können auch andere Mittel verwenden.

Apps und Onlinedienste

Arduino-IDE

Über dieses Projekt

Dieses Projekt wurde entwickelt von Kratzer als Versuch, die genaue Drehzahl (Rotationen) zu messen pro Minuten)Wert verschiedener Motoren mit einer einzigen IR Sensor, ein Arduino-Board und ein wesentlich Hauptbestandteil -ein Laserpointer (unbedingt rot).

Dieses Projekt nutzt die Tatsache, dass der IR-Sensor auch die geringe Anzahl von IR-Strahlen des roten Lasers ausliest. Bei Verwendung eines blau/grünen Lasers werden diese IR-Strahlungen jedoch sehr geringer und die analoge Lesespannung sinkt auf ca. 0.

Wenn ein Flügel des am Motor befestigten Lüfters in den Weg des Laserstrahls kommt, blockiert er den Weg und der Messwert sinkt auf 0. Der Lüfterflügel dreht sich weiter und seine Position ändert sich bei konstanter Stromzufuhr. Es kommt zu einem ständigen Pfadwechsel. Wenn der Weg wieder frei wird, trifft der Laserpointerstrahl wieder auf den Sensor.

NEUER SINGLE-SHOT-ALGORITHMUS-BASIERTER CODE FÜR SCHNELLERE UND VIEL MEHR ÄNDERUNGSADAPTIVE MESSUNGEN :-

Der von mir entwickelte Code für dieses Projekt verwendet einen für dieses Projekt neu entwickelten Algorithmus. Die Der Algorithmus ist in der Tat einzigartig und wurde entwickelt, um Messungen in weniger als 40 Millisekunden durchzuführen und genaue Ergebnisse zu liefern. Ein sehr wichtiges Merkmal dieses Programms ist, dass es eine Methode verwendet, die ich Single Shot Detection für Arduino nenne. Es berechnet die Drehzahl des Motors jedes Mal, wenn der Lüfterflügel ein Hindernis im Weg des Laserstrahls erzeugt. Dies liegt daran, dass die Behinderung des Wegs des Laserstrahls eine 1/n vollständige Umdrehung für n Schaufeln im Lüfter markiert. Also, das Programm ist sehr sensibel an selbst winzige Änderungen der Drehzahl ( bis zu 2 Dezimalstellen) in jeder 1/n der Revolution von die Fan Klinge wieder wo n ist die Nummer von Klingen von die Fan. Daher bietet dieser einzigartige Algorithmus zur Einzelschusserkennung eine extrem genaue Wert von RPM und höhere Empfindlichkeit gegenüber Messwertänderungen.

In die oben angezeigt Bild von ein Ausgabe Beispiel von die seriell überwachen in a test lauf, die bewerten von Ausgabe Screening kann klar sein gesehen welche ist über 2 mal a zweite. Die RPM Werte sind berechnet bis zwei Orte von Dezimalstellen jeder Zeit.

Jeder, der sich dies ansieht, muss dieses Projekt einmal ausprobieren und Ihre wertvollen Bewertungen teilen. Erzählen Sie von Ihren Experimenten und deren Ergebnissen im Zusammenhang mit diesem Algorithmus. Vorschläge für neue Projekte sind im Kommentarbereich willkommen. Wenn Ihnen das Projekt gefällt, respektieren Sie es.

Folgen Sie meinem Profil, indem Sie auf diesen Link tippen (https://create.arduino.cc/projecthub/YASH36) @YASH36 für einige neue Projektupdates.

Bis dahin bleiben Sie sicher und genießen Sie Arduino !!

Code

  • RPM_counter_101
RPM_counter_101Arduino
Dies ist der Code für den RPM-Zähler.
//code by YaSh.int sen =A0;const float wid =0,012; // Passen Sie die Breite des Lüfterflügels an Ihre Bedürfnisse an. const float rad =0,045; // Radius des Erfassungspunkts im Lüfterflügel anpassen. const float konst =6,2832; // 2*pi.float time_1;float time_2;float vel;float diff;float tnet;float rpm;void setup () { Serial.begin (9600); pinMode (sen, EINGANG); Serial.print("\n bitte den Motor mindestens 3 Sekunden vorher starten.\n"); delay (3000);}void loop () { if (analogRead (sen) <950) { time_1 =millis (); Verzögerung (30); } if (analogRead (sen)> 950) { time_2 =millis (); diff =(time_2-time_1); vel =breit/diff; //Drehgeschwindigkeit tnet =(konst*rad)/vel; //Zeit =(2*pi*Radius)/Geschwindigkeit. U/min =(60000)/tnet; // Zeit in ms in Minuten und dann in U/min-Konvertierungsschritt. }Serial.print("\n Die Drehzahl ist:"); Serial.println( rpm );}

Schaltpläne

Dies ist das Bild für die Platzierung der Basis und anderer Komponenten Schema zum Anschluss des Sensors an die Arduino-Platine

Herstellungsprozess

  1. Aeroponik mit Raspberry Pi und Feuchtigkeitssensor
  2. Portenta- und Thermoelement-Sensor (mit MAX6675)
  3. Arduino-Gyroskop-Spiel mit MPU-6050
  4. DHT11-Sensor mit LEDs und einem Piezo-Lautsprecher
  5. CO2-Überwachung mit K30-Sensor
  6. Unopad - Arduino MIDI-Controller mit Ableton
  7. Temperatur- und Feuchtigkeitsdatenlogger
  8. IOT - Smart Jar mit ESP8266, Arduino und Ultraschallsensor
  9. Einfacher Hindernissensor mit Arduino
  10. Arduino- und OLED-basierte zelluläre Automaten