Sadržaj:

Mjerenje brzine motora pomoću Arduina: 6 koraka
Mjerenje brzine motora pomoću Arduina: 6 koraka

Video: Mjerenje brzine motora pomoću Arduina: 6 koraka

Video: Mjerenje brzine motora pomoću Arduina: 6 koraka
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Studeni
Anonim
Mjerenje brzine motora pomoću Arduina
Mjerenje brzine motora pomoću Arduina
Mjerenje brzine motora pomoću Arduina
Mjerenje brzine motora pomoću Arduina
Mjerenje brzine motora pomoću Arduina
Mjerenje brzine motora pomoću Arduina

Je li teško izmjeriti okretaje motora ??? Mislim da nije. Evo jedno jednostavno rješenje.

To mogu učiniti samo jedan IC senzor i Arduino u vašem kompletu.

U ovom postu dat ću jednostavan vodič koji objašnjava kako mjeriti RPM bilo kojeg motora pomoću IC senzora i Arduino UNO/nano

Pribor:

1. Arduion uno (Amazon) / Arduion nano (Amazon)

2. IC senzor (Amazon)

3. DC motor bilo koji (Amazon)

4. LCD 16*2 (Amazon)

Korišteni alati

1. Lemilica (Amazon)

2. Skidač žice (Amazon)

Korak 1: Korak: 1 Osigurajte radno stanje senzora i uređaja

Što je IC senzor? IR senzor je elektronički uređaj koji emitira svjetlo kako bi osjetio neki objekt u okruženju. IR senzor može mjeriti toplinu objekta, kao i detektirati kretanje. Obično u infracrvenom spektru svi objekti zrače nekim oblikom toplinskog zračenja. Ove vrste zračenja su nevidljive za naše oči, ali infracrveni senzor može otkriti ta zračenja.

Što je istosmjerni motor? Motor istosmjerne struje (DC) je vrsta električnog stroja koji pretvara električnu energiju u mehaničku. Motori istosmjerne struje uzimaju električnu energiju istosmjernom strujom i pretvaraju tu energiju u mehaničku rotaciju.

Istosmjerni motori koriste magnetska polja koja proizlaze iz generiranih električnih struja, a koji pokreću kretanje rotora fiksiranog unutar izlaznog vratila. Izlazni moment i broj okretaja ovise o električnom ulazu i dizajnu motora.

Što je Arduino?

Arduino je elektronička platforma otvorenog koda koja se temelji na hardveru i softveru koji je jednostavan za korištenje. Arduino ploče mogu čitati ulaze - svjetlo na senzoru, prst na gumbu ili poruku na Twitteru - i pretvoriti ga u izlaz - aktivirati motor, uključiti LED, objaviti nešto na internetu. Ploči možete reći što učiniti slanjem skupa uputa mikrokontroleru na ploči. Da biste to učinili, koristite programski jezik Arduino (na temelju ožičenja) i Arduino softver (IDE), na temelju obrade.

Preuzmite ARDUINO IDE

Korak 2: Kako to funkcionira?

Pa koja je logika iza ovoga ??

Radi mnogo slično koderu. Kodiranje je početnicima teško razumljivo. Sve što trebate znati je da IR senzor generira impuls, a mi otkrivamo vremenski interval između svakog impulsa.

U tom slučaju IR senzor će poslati impuls Arduinu kad god se njegov IC snop presretne s motornim propelerima. Obično koristimo propelere s dvije lopatice, ali ja sam koristio propelere s tri lopatice kao što je prikazano na slici. ovisno o broju lopatica propelera moramo mijenjati neke vrijednosti pri izračunavanju okretaja u minuti.

uzmimo u obzir da imamo propeler koji ima dvije lopatice. Za svaki motor okretaja oštrica će presresti IR zraku dva puta. Tako će IR senzor stvarati impulse kad god dođe do presretanja.

Sada moramo napisati program koji bi mogao mjeriti broj impulsa koje proizvodi IR senzor u određenom vremenskom intervalu.

Postoji više načina za rješavanje problema, ali moramo odabrati koji je najbolji u ovim kodovima. Izmjerio sam trajanje između prekida (IR senzor) Koristio sam funkcije mikroskopa () za mjerenje trajanja impulsa u mikro sekundama.

možete koristiti ovu formulu za mjerenje RPMRPM = ((1/trajanje)*1000*1000*60)/lopatica

gdje, trajanje - vremenski interval između impulsa.

60 - sekundi do minuta

1000 - mlin u sekundi

1000 - mikro do mlina

lopatice - nema krila u propeleru.

LCD zaslon - Arduino ažurira registre naredbi i podataka LCD zaslona. Koji prikazuje ASCII znakove na LCD zaslonu.

Korak 3: Programirajte svoj Arduino pomoću Arduino IDE -a

#uključi

LCD tekući kristal (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // IC senzor INPUT nepotpisani dugi prevmicros; // Za pohranu vremenskog nepotpisanog dugog trajanja; // Za spremanje vremenske razlike unsigned long lcdrefresh; // Za spremanje vremena za osvježavanje lcd -a int rpm; // vrijednost RPM -a boolean currentstate; // Trenutno stanje boolean prevstate skeniranja IC ulaza; // Stanje IC senzora u prethodnom postavljanju void skeniranja () {pinMode (IR_IN, INPUT); lcd.begin (16, 2); prevmicros = 0; prevstate = LOW; } void loop () {//////////////////////////////////////////////// ///////////////////////////////////////// RPM Mjerenje currentstate = digitalRead (IR_IN); // Očitavanje stanja IR senzora if (prevstate! = Currentstate) // Ako dođe do promjene u ulazu {if (currentstate == LOW) // Ako se ulaz mijenja samo iz HIGH u LOW {duration = (micros () - prevmicros); // Vremenska razlika između okretaja u mikrosekundi o/min = ((60000000/trajanje)/3); // o/ min = (1/ milis vremena)*1000*1000*60; prevmicros = micros (); // pohraniti vrijeme za izračun revolucije nekta}} prevstate = currentstate; // pohraniti ove podatke skeniranja (prethodno skeniranje) za sljedeće skeniranje /////////////////////////////////////// /////////////////////////////////////////////////// LCD zaslon ako ((millis ()-lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Brzina motora"); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.tisak (o / min); lcdrefresh = millis (); }}

Korak 4: Simulacija pomoću Proteusa

Simulacija pomoću Proteusa
Simulacija pomoću Proteusa

Ovaj projekt je savršeno uspio kada sam pokušao to simulirati uz pomoć proteusa.

Umjesto IC senzora, upotrijebio sam generator istosmjernih impulsa koji će simulirati IC impuls sličan onom koji nastaje kada IC zrake pogodi lopatice elise.

morate promijeniti svoj program ovisno o senzoru koji koristite

IR senzor s LM358 mora koristiti ovu naredbu.

if (currentstate == HIGH) // Ako se ulaz mijenja samo iz LOW u HIGH

IR senzor s LM359 mora koristiti ovu naredbu.

if (currentstate == LOW) // Ako se ulaz mijenja samo iz HIGH u LOW

Korak 5: Izvođenje hardvera

Izvođenje hardvera
Izvođenje hardvera
Izvođenje hardvera
Izvođenje hardvera
Izvođenje hardvera
Izvođenje hardvera

Za shematsko korištenje simulacijskih slika ili upućivanje na programske kodove i povezivanje u skladu s tim. Prenesite programski kôd u Arduino i izmjerite okretaje bilo kojeg motora. Pratite moj sljedeći post i gledajte moj YouTube kanal.

Preporučeni: