Tartalomjegyzék:
- 1. lépés: 1. lépés: Ellenőrizze az érzékelők és eszközök működési állapotát
- 2. lépés: Hogyan működik?
- 3. lépés: Programozza Arduino -ját az Arduino IDE használatával
- 4. lépés: Szimuláció Proteus használatával
- 5. lépés: Hardver végrehajtása
Videó: A motor fordulatszámának mérése Arduino használatával: 6 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
Nehéz mérni a motor fordulatszámát ??? Nem hiszem. Íme egy egyszerű megoldás.
A készletben csak egy infravörös érzékelő és Arduino képes erre.
Ebben a bejegyzésben egy egyszerű oktatóanyagot adok, amely elmagyarázza, hogyan mérhető bármely motor fordulatszáma infravörös érzékelő és Arduino UNO/nano használatával
Kellékek:
1. Arduion uno (Amazon) / Arduion nano (Amazon)
2. IR érzékelő (Amazon)
3. DC motor bármilyen (Amazon)
4. LCD 16*2 (Amazon)
Használt eszközök
1. Forrasztópáka (Amazon)
2. Drótcsíkoló (Amazon)
1. lépés: 1. lépés: Ellenőrizze az érzékelők és eszközök működési állapotát
Mi az infravörös érzékelő? Az infravörös érzékelő egy elektronikus eszköz, amely fényt bocsát ki, hogy érzékelje a környezet bizonyos tárgyait. Az infravörös érzékelő képes mérni a tárgy hőjét, valamint érzékeli a mozgást. Általában az infravörös spektrumban az összes tárgy valamilyen hősugárzást sugároz. Az ilyen típusú sugárzások láthatatlanok a szemünk számára, de az infravörös érzékelő képes észlelni ezeket a sugárzásokat.
Mi az egyenáramú motor? Az egyenáramú (DC) motor egy olyan elektromos gép, amely az elektromos energiát mechanikai energiává alakítja. Az egyenáramú motorok egyenáramon keresztül veszik az elektromos energiát, és ezt az energiát mechanikai forgássá alakítják át.
Az egyenáramú motorok mágneses mezőket használnak, amelyek a generált elektromos áramokból származnak, és amelyek a kimenő tengelyen rögzített rotor mozgását hajtják végre. A kimeneti nyomaték és fordulatszám mind az elektromos bemenet, mind a motor kialakításától függ.
Mi az Arduino?
Az Arduino egy nyílt forráskódú elektronikai platform, amely könnyen használható hardverre és szoftverre épül. Az Arduino táblák képesek olvasni a bemeneteket - fényt egy érzékelőn, egy ujjat a gombon vagy egy Twitter üzenetet - és kimenetké alakítani - aktiválni egy motort, bekapcsolni egy LED -et, vagy közzétenni valamit az interneten. Elmondhatja a táblának, hogy mit kell tennie, ha utasításokat küld a táblán lévő mikrokontrollernek. Ehhez használja az Arduino programozási nyelvet (Wiring -en alapuló) és az Arduino Software -t (IDE), amely a Processing -en alapul.
Töltse le az ARDUINO IDE -t
2. lépés: Hogyan működik?
Akkor mi ennek a logikája ??
A kódolóhoz hasonlóan működik. A kódolókat kezdőknek nehéz megérteni. Csak annyit kell tudnia, hogy az infravörös érzékelő impulzust generál, és megtudjuk az egyes impulzusok közötti időintervallumot.
Ebben az esetben az infravörös érzékelő impulzust küld az Arduino -nak, amikor az infravörös sugarat elfogják a motor propellerei. Általában két lapáttal ellátott propellereket használunk, de én három lapáttal ellátott propellert használtam, ahogy az ábrán látható. a légcsavar lapátok számától függően néhány értéket módosítanunk kell az RPM számításakor.
tegyük fel, hogy van egy propellerünk, amelynek két lapátja van. Minden fordulatos motor esetében a penge kétszer elfogja az infravörös sugarat. Így az infravörös érzékelő impulzusokat állít elő, amikor valaha elkapja.
Most olyan programot kell írnunk, amely meg tudja mérni az infravörös érzékelő által generált számimpulzusokat egy adott időközönként.
A probléma megoldásának több módja is van, de ki kell választanunk, hogy melyik a legjobb ebben a kódban. Megmértem a megszakítások közötti időtartamot (IR -érzékelő) A micros () függvényeket használtam az impulzusok időtartamának mérésére mikro másodpercben.
ezt a képletet használhatja az RPM RPM = ((1/időtartam)*1000*1000*60)/pengék mérésére
ahol, időtartam - az impulzusok közötti időintervallum.
60 másodperc - perc
1000 mill - másodperc
1000 - mikro malomig
lapátok - a szárnyak száma a légcsavarban.
LCD kijelző - Az Arduino frissíti az LCD kijelző parancs- és adatregisztereit. Amely az ASCII karaktereket jeleníti meg az LCD kijelzőn.
3. lépés: Programozza Arduino -ját az Arduino IDE használatával
#befoglalni
LiquidCrystal LCD (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // IR érzékelő INPUT unsigned long prevmicros; // Az aláírás nélküli hosszú ideig történő tárolás; // Az időkülönbség tárolása unsigned long lcdrefresh; // Idő tárolása az LCD frissítéséhez int rpm; // RPM érték Boolean flowstream; // Az IR bemenet szkennelés aktuális állapota boolean prevstate; // Az infravörös érzékelő állapota az előző szkennelés üres beállításában () {pinMode (IR_IN, INPUT); lcd. kezdet (16, 2); prevmicros = 0; prevstate = LOW; } void loop () {///////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// RPM Measurement currentstate = digitalRead (IR_IN); // Olvassa el az infravörös érzékelő állapotát if (prevstate! = Currentstate) // Ha változás történik a bemenetben {if (currentstate == LOW) // Ha a bemenet csak HIGH -ról LOW -ra változik {duration = (micros () - prevmicros); // A fordulat közötti időkülönbség mikroszekundumos fordulatszámban = ((60000000/időtartam)/3); // rpm = (1/ időmillisz)*1000*1000*60; prevmicros = micros (); // tárolási idő a nekt forradalom kiszámításához}} prevstate = currentstate; // tárolja ezeket a szkennelési (előzetes vizsgálat) adatokat a következő vizsgálathoz ///////////////////////////////////// ///////////////////////////////////////////////////////////- ((millis ()-lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Motor sebessége"); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.print (rpm); lcdrefresh = millis (); }}
4. lépés: Szimuláció Proteus használatával
Ez a projekt tökéletesen működött, amikor megpróbáltam ezt szimulálni a proteus segítségével.
Az IR érzékelő helyett egyenáramú impulzusgenerátort használtam, amely szimulálja az IR impulzust, mint amilyen akkor keletkezik, amikor az infravörös sugarak a légcsavarok lapátjaira ütköznek.
módosítania kell a programot a használt érzékelőtől függően
Az LM358 -as infravörös érzékelőnek ezt a parancsot kell használnia.
if (áramerősség == HIGH) // Ha a bemenet csak LOW -ról HIGH -ra változik
Az LM359 -es infravörös érzékelőnek ezt a parancsot kell használnia.
if (currentstate == LOW) // Ha a bemenet csak HIGH -ról LOW -ra változik
5. lépés: Hardver végrehajtása
Vázlatosan használja a szimulációs képeket vagy a programkódokat, és ennek megfelelően kösse össze a kapcsolatokat. Töltse fel a programkódot az Arduino -ba, és mérje meg bármely motor fordulatszámát. Figyelje a következő bejegyzésemet, és nézze meg YouTube -csatornámat.
Ajánlott:
Tápegység frekvencia és feszültség mérése Arduino használatával: 6 lépés
Tápegység frekvenciájának és feszültségének mérése Arduino használatával: Bevezetés: A projekt célja az ellátási frekvencia és feszültség mérése, ami itt, Indiában 220-240 V és 50 Hz között van. Arduino -t használtam a jel rögzítésére, a frekvencia és a feszültség kiszámítására, bármilyen más mikrokonzont is használhat
Hogyan: A motor fordulatszámának szabályozása?: 5 lépés (képekkel)
Hogyan: A motor fordulatszámának szabályozása?: Ha van néhány egyenáramú motorja, akkor az első kérdés az, hogy hogyan fogom szabályozni ezeknek a motoroknak a sebességét! Tehát ebben az utasításban megmutatom, milyen könnyű ezt megtenni! Ha lustának érzed magad, megnézhetsz videót a csatornámon, a Hatalmas Tha
Kefe nélküli egyenáramú motor fordulatszámának szabályozása Arduino és Bluetooth modul (HC-05) használatával: 4 lépés
Kefe nélküli egyenáramú motor fordulatszámának szabályozása Arduino és Bluetooth modul (HC-05) használatával: Bevezetés Ebben az oktatóanyagban a kefe nélküli egyenáramú motor sebességét fogjuk szabályozni az Arduino UNO, a Bluetooth modul (HC-05) és a Bluetooth ( Arduino Bluetooth vezérlő)
A motor fordulatszámának autonóm szabályozása IR alapú fordulatszámmérő segítségével: 5 lépés (képekkel)
A motor fordulatszámának autonóm szabályozása visszacsatolási rendszer használatával IR alapú fordulatszámmérő segítségével: Mindig szükség van egy folyamat automatizálására, legyen az egyszerű/szörnyű. Egy ötletből merítettem ezt a projektet, amellyel találkoztam módszerek a kis földdarabok öntözésére/öntözésére. Az áramellátás hiánya
Az egyenáramú motor fordulatszámának szabályozása PID algoritmus használatával (STM32F4): 8 lépés (képekkel)
Az egyenáramú motor fordulatszámának szabályozása PID algoritmus (STM32F4) használatával: hello mindenkinek! Ez egy másik projekt. Ezúttal az STM32F407 az MC. Ez a félév végi projekt. Remélem, tetszik. Sok koncepciót és elméletet igényel, ezért először foglalkozunk vele. A számítógépek és a