Mundarija:
- 1 -qadam: 1 -qadam: 1 Sensorlar va qurilmalarning ish holatini ta'minlang
- 2 -qadam: Bu qanday ishlaydi?
- 3 -qadam: Arduino IDE yordamida Arduino -ni dasturlash
- 4 -qadam: Proteus yordamida simulyatsiya
- 5 -qadam: Uskuna bajarilishi
Video: Arduino yordamida vosita tezligini o'lchash: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Dvigatelning aylanish tezligini o'lchash qiyinmi ??? Menimcha bunday emas. Mana bitta oddiy yechim.
Sizning to'plamingizda faqat bitta IQ sensori va Arduino buni qila oladi.
Bu postda men IQ sensori va Arduino UNO/nano yordamida har qanday dvigatelning aylanish tezligini o'lchashni tushuntiradigan oddiy qo'llanmani beraman.
Ta'minot:
1. Arduion uno (Amazon) / Arduion nano (Amazon)
2. IQ sensori (Amazon)
3. Har qanday shahar dvigateli (Amazon)
4. LCD 16*2 (Amazon)
Ishlatilgan asboblar
1. Lehimlash temir (Amazon)
2. Tel -stripper (Amazon)
1 -qadam: 1 -qadam: 1 Sensorlar va qurilmalarning ish holatini ta'minlang
IQ sensori - bu elektron qurilma bo'lib, u atrofdagi narsalarni sezish uchun yorug'lik chiqaradi. IQ sensori ob'ektning issiqligini o'lchaydi, shuningdek harakatni aniqlaydi. Odatda infraqizil spektrda hamma jismlar qandaydir termal nurlanishni tarqatadi. Bu turdagi nurlanishlar ko'zimizga ko'rinmas, lekin infraqizil sensor bu nurlanishni aniqlay oladi.
Doimiy motor (DC) - bu elektr energiyasini mexanik energiyaga aylantiradigan elektr mashinasi. Shahar motorlari elektr energiyasini to'g'ridan -to'g'ri oqim orqali oladi va bu energiyani mexanik aylanishga aylantiradi.
DC dvigatellari ishlab chiqarilgan elektr tokidan kelib chiqadigan magnit maydonlardan foydalanadilar, bu esa chiqish milining ichida joylashgan rotorning harakatlanishini ta'minlaydi. Chiqish momenti va tezligi elektr kirishiga ham, dvigatel dizayniga ham bog'liq.
Arduino nima?
Arduino-bu ochiq manbali elektronika platformasi, uni ishlatish uchun qulay bo'lgan apparat va dasturiy ta'minotga asoslangan. Arduino taxtasi kirishni o'qishi mumkin - sensordagi yorug'lik, tugmachadagi barmoq yoki Twitter -dagi xabar - va uni chiqishga aylantirish - dvigatelni yoqish, LEDni yoqish, Internetda biror narsani chop etish. Siz doskadagi mikrokontrollerga ko'rsatmalar to'plamini yuborib, nima qilish kerakligini taxtangizga ayta olasiz. Buning uchun siz Arduino dasturlash tili (simli aloqa) va ishlov berish asosida Arduino dasturiy ta'minotidan (IDE) foydalanasiz.
ARDUINO IDE -ni yuklab oling
2 -qadam: Bu qanday ishlaydi?
Xo'sh, buning ortida qanday mantiq bor?
U kodlovchiga juda o'xshash ishlaydi. Yangi boshlanuvchilar uchun kodlovchilarni tushunish qiyin. Siz bilishingiz kerak bo'lgan yagona narsa - IQ sensori puls hosil qiladi va biz har bir puls orasidagi vaqt oralig'ini aniqlaymiz.
Bu holda IQ sensori Arduino -ga impuls yuboradi, chunki uning IQ nurlari dvigatel pervanellari bilan kesilganda. Odatda biz ikkita pichoqli pervanellardan foydalanamiz, lekin men rasmda ko'rsatilgandek uch pichoqli pervanelni ishlatganman. pervanel pichoqlar soniga qarab, RPMni hisoblashda biz ba'zi qiymatlarni o'zgartirishimiz kerak.
Keling, bizda ikkita pichoqli pervanel borligini ko'rib chiqaylik. Har bir inqilob dvigateli uchun pichoq IR nurini ikki marta ushlab turadi. Shunday qilib, IQ sensori kesishganda puls hosil qiladi.
Endi biz ma'lum vaqt oralig'ida IQ sensori ishlab chiqaradigan impuls sonini o'lchaydigan dastur yozishimiz kerak.
Muammoni hal qilishning bir necha yo'li bor, lekin biz bu kodlardan qaysi biri yaxshiroq ekanligini tanlashimiz kerak, men uzilishlar orasidagi vaqtni o'lchadim (IQ sensori), men mikro sekundlarda pulslarning davomiyligini o'lchash uchun micros () funktsiyalaridan foydalandim.
RPMRPM = ((1/muddati)*1000*1000*60)/pichoqlarni o'lchash uchun siz ushbu formuladan foydalanishingiz mumkin.
bu erda, davomiyligi - pulslar orasidagi vaqt oralig'i.
60 soniyadan daqiqalarga
1000 - sekundgacha
1000 - mikro dan tegirmongacha
pichoqlar - parvona qanotlari yo'q.
LCD displey - Arduino LCD displeyining buyruq va ma'lumotlar registrlarini yangilaydi. LCD displeyda ASCII belgilarini aks ettiradi.
3 -qadam: Arduino IDE yordamida Arduino -ni dasturlash
#qo'shing
LiquidCrystal lcd (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // IR sensori INPUT belgisiz uzun prevmicros; // Vaqtni imzosiz uzoq vaqt saqlash uchun; // Vaqt farqini saqlash uchun imzosiz uzun lcdrefresh; // int rpmni yangilash uchun lcd vaqtini saqlash uchun; // RPM qiymati boolean joriy holat; // IQ kirishni tekshirishning hozirgi holati boolean oldingi holat; // IQ sensori holati oldingi skanerlash void sozlamalarida () {pinMode (IR_IN, INPUT); lcd.begin (16, 2); prevmikroslar = 0; oldingi holat = LOW; } void loop () {///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////// RPM Measurement currentstate = digitalRead (IR_IN); // IR sensori holatini o'qing, agar (prevstate! = Currentstate) // Agar kirishda o'zgarish bo'lsa {if (currentstate == LOW) // Agar kirish faqat HIGHdan LOWgacha o'zgarsa {muddati = (micros () - prevmicros); // Mikrosaniyadagi aylanish tezligi aylanish tezligi = ((60000000/davomiyligi)/3); // rpm = (1/ millis)*1000*1000*60; prevmikroslar = mikrosxemalar (); // nekt inqilobini hisoblash uchun saqlash vaqti}} prevstate = currentstate; // keyingi ko'rish uchun bu skanerlash (oldingi ko'rish) ma'lumotlarini saqlang ///////////////////////////////////// LCD displey, agar // ((millis ()-lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Dvigatel tezligi"); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.print (rpm); lcdrefresh = millis (); }}
4 -qadam: Proteus yordamida simulyatsiya
Men buni proteus yordamida simulyatsiya qilishga urinib ko'rganimda, bu loyiha juda yaxshi ishladi.
IQ sensoridan foydalanish o'rniga, men shahar impuls generatorini ishlatardim.
Siz foydalanadigan sensorga qarab dasturingizga o'zgartirishlar kiritishingiz kerak
LM358 bilan IR sensori ushbu buyruqni ishlatishi kerak.
if (currentstate == HIGH) // Agar kiritish faqat LOWdan HIGHgacha o'zgarsa
LM359 bilan IR sensori ushbu buyruqni ishlatishi kerak.
if (currentstate == LOW) // Agar kiritish faqat HIGHdan LOWgacha o'zgarsa
5 -qadam: Uskuna bajarilishi
Sxematik tarzda simulyatsiya rasmlarini ishlating yoki dastur kodlariga murojaat qiling va shunga mos ravishda ulanishlarni amalga oshiring. Dastur kodini Arduino -ga yuklang va har qanday dvigatelning aylanish tezligini o'lchang. Keyingi postimni kuzatib boring va YouTube kanalimni tomosha qiling.
Tavsiya:
Shamol tezligini mikro: bit va tezlik bilan o'lchash: 10 qadam
Shamol tezligini mikro: bit va snap davrlari bilan o'lchang: hikoya Qizim va men ob -havo loyihasi anemometrida ishlayotganimizda, biz dasturlash orqali o'yinni kengaytirishga qaror qildik. Anemometr nima? Balki siz " anemometr " hisoblanadi. Bu shamolni o'lchaydigan qurilma
Yurak urish tezligini o'lchash barmog'ingiz uchida: yurak tezligini aniqlashning fotopletizmografiya usuli: 7 qadam
Yurak urish tezligini o'lchash barmoq uchida: fotopletizmografiya yurak urish tezligini aniqlash usuli: fotopletizmografiya (PPG)-bu oddiy va arzon optik usul bo'lib, u ko'pincha to'qimalarning mikrovaskulyar to'shagidagi qon hajmining o'zgarishini aniqlash uchun ishlatiladi. U asosan terining sirtini o'lchash uchun invaziv bo'lmagan holda ishlatiladi, odatda
Jingle qo'ng'iroqlarining tezligini Arduino yordamida boshqaring: 4 qadam
Arduino yordamida jingle qo'ng'iroqlarining tezligini boshqaring: Bu ko'rsatma sizga LED chizig'ini Arduino o'ynagan notalarga mos keladigan tarzda qanday dasturlashni ko'rsatib beradi. Qo'lingizni fotorezistordan yaqinroq yoki uzoqroqqa olib, qo'shiqni tezlashtirishingiz yoki sekinlashtirishingiz mumkin. Mening misolim "J" qo'shig'i
Hurda bilan ishlangan CNC besleme tezligini o'lchash vositasi: 5 qadam
Chiqindilardan tayyorlangan CNC besleme tezligini o'lchash vositasi: Hech kim hech qachon CNC mashinasida haqiqiy ovqatlanish tezligini o'lchashni xohlaganmi? Ehtimol emas, CNC ishidan keyin frezalash bitlari buzilmaguncha … lekin ular muntazam ravishda sinishni boshlaganda, ehtimol, tekshirish vaqti keldi. Ushbu ko'rsatmada siz
Oqim tezligini o'lchash: 7 qadam (rasmlar bilan)
Oqim tezligini o'lchash: Ushbu qurilma yordamida siz erkin oqim oqimining tezligini o'lchashingiz mumkin. Arduino va hunarmandchilikning ba'zi asosiy ko'nikmalari va, albatta, erkin oqadigan oqim kerak. Bu tezlikni o'lchashning eng amaliy usuli emas