Obsah:
- Krok 1: Krok: 1 Zajistěte funkční stav senzorů a zařízení
- Krok 2: Jak to funguje?
- Krok 3: Naprogramujte si Arduino pomocí Arduino IDE
- Krok 4: Simulace pomocí Proteus
- Krok 5: Provedení hardwaru
Video: Měření rychlosti motoru pomocí Arduina: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
Je obtížné měřit otáčky motoru ??? Myslím, že ne. Zde je jedno jednoduché řešení.
Dokáže to pouze jeden IR senzor a Arduino ve vaší sadě.
V tomto příspěvku poskytnu jednoduchý návod vysvětlující, jak měřit otáčky jakéhokoli motoru pomocí IR senzoru a Arduino UNO/nano
Zásoby:
1. Arduion uno (Amazon) / Arduion nano (Amazon)
2. IR senzor (Amazon)
3. Stejnosměrný motor (Amazon)
4. LCD 16*2 (Amazon)
Použité nástroje
1. Páječka (Amazon)
2. Stripper (Amazon)
Krok 1: Krok: 1 Zajistěte funkční stav senzorů a zařízení
Co je to IR senzor? IR senzor je elektronické zařízení, které vyzařuje světlo, aby zachytilo nějaký předmět v okolí. IR senzor může měřit teplo objektu a také detekovat pohyb. V infračerveném spektru obvykle všechny objekty vyzařují nějakou formu tepelného záření. Tyto typy záření jsou pro naše oči neviditelné, ale infračervený senzor dokáže toto záření detekovat.
Co je to stejnosměrný motor? Stejnosměrný motor (DC) je typ elektrického stroje, který převádí elektrickou energii na mechanickou energii. Stejnosměrné motory odebírají elektrickou energii stejnosměrným proudem a převádějí tuto energii na mechanické otáčení.
Stejnosměrné motory využívají magnetická pole vznikající z generovaných elektrických proudů, které pohání pohyb rotoru upevněného ve výstupním hřídeli. Výstupní točivý moment a otáčky závisí na elektrickém příkonu a konstrukci motoru.
Co je Arduino?
Arduino je open-source elektronická platforma založená na snadno použitelném hardwaru a softwaru. Desky Arduino jsou schopné číst vstupy - světlo na senzoru, prst na tlačítku nebo zprávu na Twitteru - a proměnit je na výstup - aktivace motoru, rozsvícení LED, zveřejnění něčeho online. Můžete své desce sdělit, co má dělat, a to zasláním sady pokynů mikrokontroléru na desce. K tomu použijete programovací jazyk Arduino (na základě zapojení) a software Arduino (IDE) na základě zpracování.
Stáhněte si ARDUINO IDE
Krok 2: Jak to funguje?
Jaká je tedy logika toho ??
Funguje to velmi podobně jako kodér. Kodéry jsou pro začátečníky těžko pochopitelné. Vše, co potřebujete vědět, je, že IR senzor generuje puls a zjišťujeme časový interval mezi jednotlivými impulsy.
V tomto případě IR senzor vyšle impuls do Arduina, kdykoli bude jeho IR paprsek zachycen pomocí vrtulí motorů. Obvykle používáme vrtule se dvěma listy, ale já jsem použil vrtuli se třemi listy, jak je znázorněno na obrázku. v závislosti na počtu listů vrtule musíme při výpočtu otáček upravit některé hodnoty.
uvažujme, že máme vrtuli, která má dva listy. U každého otáčkového motoru čepel zachytí infračervený paprsek dvakrát. Infračervený senzor tedy bude při každém zachycení generovat impulsy.
Nyní musíme napsat program, který by mohl měřit počet impulzů produkovaných IR senzorem v určitém časovém intervalu.
Existuje více než jeden způsob, jak vyřešit problém, ale musíme si vybrat, který z nich je v těchto kódech nejlepší. Změřil jsem dobu mezi přerušeními (IR senzor) Použil jsem funkce micro () k měření doby trvání pulzů v mikrosekundách.
tento vzorec můžete použít k měření RPMRPM = ((1/doba trvání)*1000*1000*60)/čepelí
kde, doba trvání - časový interval mezi impulsy.
60 - sekund až minut
1000 - mlýn na sek
1000 - mikro na mlýn
listy - počet křídel ve vrtuli.
LCD displej - Arduino aktualizuje příkazové a datové registry LCD displeje. Který zobrazuje znaky ASCII na LCD displeji.
Krok 3: Naprogramujte si Arduino pomocí Arduino IDE
#zahrnout
LiquidCrystal lcd (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // IR senzor VSTUP bez znaménka dlouhé prevmicros; // Pro uložení času bez znaménka dlouhé trvání; // Uložení časového rozdílu bez znaménka long lcdrefresh; // Uložení času pro aktualizaci lcd int rpm; // hodnota RPM boolean currentstate; // Aktuální stav IR vstupu skenování boolean prevstate; // Stav IR senzoru v předchozím skenování neplatné nastavení () {pinMode (IR_IN, INPUT); lcd.begin (16, 2); prevmicros = 0; prevstate = LOW; } prázdná smyčka () {//////////////////////////////////////////////////////// /////////////////////////////////////////// RPM Měření aktuální stav = digitalRead (IR_IN); // Přečíst stav infračerveného senzoru if (předchozí stav! = Aktuální stav) // Pokud dojde ke změně na vstupu {if (aktuální stav == NÍZKÝ) // Pokud se vstup změní pouze z VYSOKÉ na NÍZKOU {doba = (mikro () - předchozí mikro); // Časový rozdíl mezi otáčkami v mikrosekundách rpm = ((60000000/doba trvání)/3); // rpm = (1/ čas milis)*1000*1000*60; prevmicros = micros (); // uložení času pro výpočet nektové revoluce}} prevstate = currentstate; // uložte data tohoto skenování (předchozí skenování) pro další skenování ///////////////////////////////////////////// ///////////////////////////////////////////////////// LCD displej pokud ((milis ()-lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print („Rychlost motoru“); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.print (ot / min); lcdrefresh = milis (); }}
Krok 4: Simulace pomocí Proteus
Tento projekt fungoval naprosto v pořádku, když jsem to zkoušel simulovat pomocí proteus.
Místo použití IR senzoru jsem použil DC pulzní generátor, který bude simulovat IR puls podobný tomu, který se generuje, když IR paprsky dopadnou na listy vrtulí.
v závislosti na použitém senzoru musíte provést změny ve svém programu
IR senzor s LM358 musí použít tento příkaz.
if (currentstate == HIGH) // Pokud se vstup změní pouze z LOW na HIGH
IR senzor s LM359 musí použít tento příkaz.
if (currentstate == LOW) // Pokud se vstup změní pouze z HIGH na LOW
Krok 5: Provedení hardwaru
Pro schematická použití použijte simulační obrázky nebo kódy programů a proveďte odpovídající připojení. Nahrajte kód programu do Arduina a změřte otáčky jakéhokoli motoru. Zůstaňte naladěni na můj další příspěvek a sledujte můj kanál YouTube.
Doporučuje:
DC MOTOR MOSFET Řízení rychlosti pomocí Arduina: 6 kroků
Rychlost řízení MOSFET DC MOTORU pomocí Arduina: V tomto tutoriálu se naučíme, jak ovládat rychlost DC motoru pomocí modulu MOSFET. Podívejte se na video
Měření frekvence a napětí napájecího zdroje pomocí Arduina: 6 kroků
Měření frekvence a napětí napájecího zdroje pomocí Arduina: Úvod: Cílem tohoto projektu je změřit napájecí frekvenci a napětí, které je zde v Indii mezi 220 až 240 volty a 50 Hz. Pro zachycení signálu a výpočet frekvence a napětí jsem použil Arduino, můžete použít jakýkoli jiný mikrokontrolér
Mluvící Arduino - Přehrávání MP3 pomocí Arduina bez jakéhokoli modulu - Přehrávání souborů MP3 z Arduina pomocí PCM: 6 kroků
Mluvící Arduino | Přehrávání MP3 pomocí Arduina bez jakéhokoli modulu | Přehrávání souboru MP3 z Arduina pomocí PCM: V tomto návodu se naučíme, jak přehrávat soubor mp3 s arduino bez použití jakéhokoli zvukového modulu, zde použijeme knihovnu PCM pro Arduino, která přehrává 16 bitů PCM s frekvencí 8 kHZ, takže to zvládneme
Měření rychlosti toku: 7 kroků (s obrázky)
Měření rychlosti toku: Pomocí tohoto zařízení můžete měřit rychlost volně tekoucího proudu. Jediné, co je nutné, je Arduino a některé základní řemeslné dovednosti a samozřejmě volně plynoucí stream. Není to nejpraktičtější způsob měření rychlostí
Řízení rychlosti stejnosměrného motoru pomocí algoritmu PID (STM32F4): 8 kroků (s obrázky)
Řízení rychlosti stejnosměrného motoru pomocí algoritmu PID (STM32F4): ahoj všichni, toto je tahir ul haq s jiným projektem. Tentokrát je to STM32F407 jako MC. Toto je konec projektu v polovině semestru. Doufám, že se vám to líbí. Vyžaduje to hodně konceptů a teorie, takže se do toho pustíme jako první. S příchodem počítačů a