Innehållsförteckning:
- Steg 1: Steg: 1 Se till att sensorer och enheter fungerar
- Steg 2: Hur fungerar det?
- Steg 3: Programmera din Arduino med Arduino IDE
- Steg 4: Simulering med Proteus
- Steg 5: Maskinvarukörning
Video: Motorhastighetsmätning med Arduino: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:35
Är det svårt att mäta varvtal på motor ??? Jag tror inte det. Här är en enkel lösning.
Endast en IR -sensor och Arduino i ditt kit kan göra det.
I det här inlägget kommer jag att ge en enkel handledning som förklarar hur man mäter varvtal för varje motor med IR -sensor och Arduino UNO/nano
Tillbehör:
1. Arduion uno (Amazon) / Arduion nano (Amazon)
2. IR -sensor (Amazon)
3. DC -motor vilken som helst (Amazon)
4. LCD 16*2 (Amazon)
Verktyg som används
1. Lödkolv (Amazon)
2. Wire Stripper (Amazon)
Steg 1: Steg: 1 Se till att sensorer och enheter fungerar
Vad är en IR -sensor? IR -sensor är en elektronisk enhet som avger ljuset för att känna av ett objekt i omgivningen. En IR -sensor kan mäta värdet på ett föremål och detektera rörelsen. Vanligtvis utstrålar alla föremål i det infraröda spektrum någon form av termisk strålning. Dessa typer av strålningar är osynliga för våra ögon, men infraröd sensor kan upptäcka dessa strålningar.
Vad är en likströmsmotor? En likströmsmotor (DC) är en typ av elektrisk maskin som omvandlar elektrisk energi till mekanisk energi. Likströmsmotorer tar elektrisk kraft genom likström och omvandlar denna energi till mekanisk rotation.
Likströmsmotorer använder magnetfält som uppstår från de elektriska strömmar som genereras, vilket driver rörelsen hos en rotor som är fixerad i den utgående axeln. Utgångsmomentet och varvtalet beror på både den elektriska ingången och motorns konstruktion.
Vad är Arduino?
Arduino är en elektronisk plattform med öppen källkod baserad på lättanvänd maskinvara och programvara. Arduino -kort kan läsa ingångar - ljus på en sensor, ett finger på en knapp eller ett Twitter -meddelande - och göra det till en utgång - aktivera en motor, slå på en LED, publicera något online. Du kan berätta för ditt kort vad du ska göra genom att skicka en uppsättning instruktioner till mikrokontrollern på kortet. För att göra det använder du programmeringsspråket Arduino (baserat på ledningar) och Arduino -programvaran (IDE), baserat på bearbetning.
Ladda ner ARDUINO IDE
Steg 2: Hur fungerar det?
Så vad är logiken bakom detta ??
Det fungerar ungefär som kodare. Kodare är svårt att förstå för nybörjare. Allt du behöver veta är att IR -sensorn genererar puls och vi tar reda på tidsintervallet mellan varje puls.
I detta fall kommer IR -sensorn att skicka en puls till Arduino när dess IR -stråle någonsin fångas upp av motorns propellrar. Normalt använder vi propellrar med två blad men jag har använt propeller med tre blad som visas i figuren. beroende på antalet propellerblad måste vi ändra vissa värden vid beräkning av varvtal.
låt oss överväga att vi har en propeller som har två blad. För varje varvsmotor kommer bladet att fånga upp IR -strålen två gånger. Således kommer IR -sensorn att producera pulser när de någonsin avlyssnar.
Nu måste vi skriva ett program som kan mäta antalet pulser som produceras av IR -sensorn vid ett visst tidsintervall.
Det finns mer än ett sätt att lösa ett problem, men vi måste välja vilket som är bäst i dessa koder. Jag har mätt varaktigheten mellan avbrotten (IR -sensor).
du kan använda denna formel för att mäta RPMRPM = ((1/varaktighet)*1000*1000*60)/blad
var, varaktighet - tidsintervall mellan pulser.
60 sekunder till minuter
1000 - mill till sek
1000 - mikro till mill
blad - inga vingar i propellern.
LCD -skärm - Arduino uppdaterar kommando- och dataregistret för LCD -skärmen. Som visar ASCII -tecknen på LCD -skärmen.
Steg 3: Programmera din Arduino med Arduino IDE
#omfatta
LiquidCrystal lcd (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // IR -sensor INGÅNG osignerade långa föregående mikro; // För att lagra tid osignerad lång varaktighet; // För att lagra tidsskillnad osignerad lång lcdrefresh; // För att lagra tid för lcd att uppdatera int rpm; // RPM -värde boolean currentstate; // Nuvarande tillstånd för IR -ingångsskanning boolsk förekomst; // Status för IR -sensor i föregående scan void setup () {pinMode (IR_IN, INPUT); lcd.begin (16, 2); prevmicros = 0; prevstate = LÅG; } void loop () {//////////////////////////////////////////// /////////////////////////////////////////// RPM Mätning currentstate = digitalRead (IR_IN); // Läs IR -sensorns tillstånd om (prevstate! = Currentstate) // Om det finns en ändring av ingången {if (currentstate == LOW) // Om input bara ändras från HIGH till LOW {duration = (micros () - prevmicros); // Tidsskillnad mellan varv i mikrosekundvarv/= = ((60000000/varaktighet)/3); // rpm = (1/ time millis)*1000*1000*60; prevmicros = micros (); // lagra tid för nektvarvberäkning}} prevstate = currentstate; // lagra denna skannings (föregående skanning) data för nästa skanning ////////////////////////////////// /////////////////////////////////////// ((millis ()-lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Motorhastighet"); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.print (rpm); lcdrefresh = millis (); }}
Steg 4: Simulering med Proteus
Detta projekt fungerade alldeles utmärkt när jag försökte simulera detta med hjälp av proteus.
Istället för att använda IR -sensor använde jag DC -pulsgenerator som simulerar IR -pulsen som liknar den som genereras när IR -strålarna träffar propellerns blad.
du måste göra ändringar i ditt program beroende på vilken sensor du använder
IR -sensor med LM358 måste använda detta kommando.
if (currentstate == HIGH) // Om input bara ändras från LOW till HIGH
IR -sensor med LM359 måste använda detta kommando.
if (currentstate == LOW) // Om input bara ändras från HIGH till LOW
Steg 5: Maskinvarukörning
För schematisk användning, använd simuleringsbilderna eller referera programkoderna och gör anslutningarna i enlighet därmed. Ladda upp programkoden till Arduino och mät varvtalet för vilken motor som helst. Håll utkik efter mitt nästa inlägg och titta på min YouTube -kanal.
Rekommenderad:
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)
Sonografi med kropps-ultraljud med Arduino: 3 steg (med bilder)
Body-ultrasound Sonography With Arduino: Hej! Min hobby och passion är att förverkliga fysikprojekt. Ett av mina sista arbeten handlar om ultraljudssonografi. Som alltid försökte jag göra det så enkelt som möjligt med delar du kan få på ebay eller aliexpress. Så låt oss ta en titt på hur långt jag kan gå med
RC -spårad robot med Arduino - Steg för steg: 3 steg
RC -spårad robot med Arduino - Steg för steg: Hej killar, jag är tillbaka med ett annat häftigt robotchassi från BangGood. Hoppas att du har gått igenom våra tidigare projekt - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot med Robotic Arms och The Badland Braw
Hur man gör en drönare med Arduino UNO - Gör en quadcopter med mikrokontroller: 8 steg (med bilder)
Hur man gör en drönare med Arduino UNO | Gör en Quadcopter Med Microcontroller: Introduktion Besök min Youtube -kanal En Drone är en mycket dyr gadget (produkt) att köpa. I det här inlägget ska jag diskutera, hur gör jag det billigt ?? Och hur kan du göra din egen så här till billigt pris … Tja i Indien alla material (motorer, ESC
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter - Rc helikopter - RC -plan med Arduino: 5 steg (med bilder)
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter | Rc helikopter | Rc -plan med Arduino: Att driva en Rc -bil | Quadcopter | Drone | RC -plan | RC -båt, vi behöver alltid en mottagare och sändare, antag att för RC QUADCOPTER behöver vi en 6 -kanals sändare och mottagare och den typen av TX och RX är för dyr, så vi kommer att göra en på vår