Mundarija:

Raqamli tebranish sensori bilan Arduino signalizatsiyasi: 5 qadam
Raqamli tebranish sensori bilan Arduino signalizatsiyasi: 5 qadam

Video: Raqamli tebranish sensori bilan Arduino signalizatsiyasi: 5 qadam

Video: Raqamli tebranish sensori bilan Arduino signalizatsiyasi: 5 qadam
Video: Robojax Arduino Step By Step Course, Lesson 14: Using Vibration Sensor Module 2024, Noyabr
Anonim
Raqamli tebranish sensori bilan Arduino signalizatsiyasi
Raqamli tebranish sensori bilan Arduino signalizatsiyasi

Bu yo'riqnomada siz o'z qo'lingiz bilan oson va arzon signal qurilmasini yasashingiz mumkin, sizga elektronika va arduino dasturlash bo'yicha asosiy bilim kerak.

Agar sizda biron bir savol yoki muammo bo'lsa, men bilan elektron pochta orqali bog'lanishingiz mumkin: [email protected]

Shunday qilib, boshlaylik

DFRobot tomonidan taqdim etilgan komponentlar

1 -qadam: materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

Loyihaning barcha kerakli materiallarini DFRobot onlayn -do'konida sotib olish mumkin

Ushbu loyiha uchun bizga kerak bo'ladi:

-Arduino Uno (siz MEGA 2560 -ni ham olishingiz mumkin)

-Raqamli sig'imli sensorli sensor V2 4x

-Raqamli tebranish sensori V2 1x

-Raqamli signal signallari moduli 1x

-LCD displey 20x4

-Ba'zi LEDlar

-Arduino uchun 4 kanalli o'rni qalqoni

-Yuqori simlar (ularning ko'pchiligi)

-Non paneli

-9V batareya

-Batareya korpusi

Agar siz chiroqlarni yoki shunga o'xshash narsalarni boshqarishni xohlasangiz, Arduino uchun Relay Shield -dan foydalanishingiz mumkin.

Men ham bu signal uchun uy qurdim, shuning uchun sizga SolidWorks yoki boshqa shunga o'xshash dastur kerak bo'ladi. Albatta, sizga 3D printer kerak bo'ladi. Agar sizda 3D printer bo'lmasa, siz sirtga o'rnatilgan plastmassali yopiq elektr o'tkazgich qutisini yoki shunga o'xshash narsalarni ishlatishingiz mumkin.

2 -qadam: Modullar

Modullar
Modullar
Modullar
Modullar
Modullar
Modullar
Modullar
Modullar

Ushbu loyiha uchun men uch xil moduldan foydalandim. U juda yaxshi ulanganligi tufayli ushbu modullarni Arduino -ga ulash juda oson. Siz modulli paketdagi ulanish simini olasiz (Buni rasmda ko'rish mumkin).

Raqamli tebranish sensori moduli

Ushbu sensorli moduldan foydalanish juda oson va uni o'ynash qiziqarli. Uning sezgirligi juda yuqori, shuning uchun uni juda qattiq silkitishga hojat yo'q. Bir oz tebranish etarli bo'ladi.

Xususiyat:

  • IO turi: raqamli
  • O'chirish muddati: 10 million soniyagacha
  • Ochiq elektron qarshiligi: 10 Mohm
  • Besleme zo'riqishida: 3,3 V dan 5 V gacha
  • Interfeysi: raqamli
  • Hajmi: 22x30 mm (0,87 x 1,18 dyuym)

Raqamli sig'imli sensorli sensorli modul

Agar siz oddiy tugmachalarni yoqtirmasangiz, sensorli sensorli modullardan foydalanishingiz mumkin. Ular juda tez javob berish vaqtiga ega, har ikki tomonda ham katta teginish maydoni.

Xususiyat:

  • Besleme zo'riqishida: 3,3 V dan 5 V gacha
  • Interfeysi: raqamli
  • Hajmi: 22x30 mm (0,87 x 1,18 dyuym)

Raqamli signal signallari moduli

Juda oddiy va ko'p hollarda zerikarli signal moduli.

Xususiyat:

  • Turi: Raqamli
  • Quvvat manbai: 5VDC

Agar siz ushbu modullar haqida ko'proq bilmoqchi bo'lsangiz, tashrif buyurishingiz mumkin: DFRobot Product Wiki

3 -qadam: Signalli uy

Signal uyi
Signal uyi
Signal uyi
Signal uyi
Signal uyi
Signal uyi

Men bu signal uchun 3D bosma korpus yasadim.

Birinchidan, men millimetrli qog'ozga oldingi samolyotning prototipini yasagandan ko'ra, har bir komponentni o'lchadim, shunda masofa to'g'ri yoki yo'qligini tekshirdim. Siz ushbu prototipni rasmda ko'rishingiz mumkin.

Men prototipni tugatganimda, uni 3D chizish dasturida chizishga qaradim. Agar siz ushbu dasturlarda qanday chizishni bilmasangiz, siz mening pochtamga ushbu uyning STL faylini yozishingiz mumkin, shunda siz uni chop etishingiz mumkin.

Bu uyni chop etish uchun taxminan to'rt soat vaqt ketdi. Bu printer o'rta diapazonda, shuning uchun siz mahsulotingizga ozgina tuzatish kiritishingiz kerak bo'ladi (siz uyni to'ldirishingiz kerak yoki matkap yordamida ba'zi teshiklarni kengaytirishingiz mumkin …)

Hajmi:

150x60x120 mm

Uy -joy PLA plastmassadan qilingan. Uning kengligi 3 mm bo'lgan devorlar bor, bu korpusni kesish uchun etarli. Eng katta ochilish LCD displey uchun, LCD displey yonidagi kichikroq teshiklar LEDlar uchun. Pastki qismida sensorli va signalli modullar uchun teshiklar mavjud. O'ng tomonda sensorli modul uchun yana bitta teshik bor. Siz bu uyni devorga yoki eshikka o'rnatishingiz mumkin.

4 -qadam: simlarni ulash

Ulanish
Ulanish

Loyihada juda ko'p turli xil komponentlar mavjud, shuning uchun ularni to'g'ri ulashda ehtiyot bo'lish kerak.

Men sizga ushbu loyihada har bir komponent qanday ulanganligini ko'rsataman.

Sensorli modullar:

Men ushbu modullardan to'rttasini ishlatganman. Biri signalni kamaytirish uchun, ikkinchisi signal vaqtini oshirish uchun, uchinchisi dasturlarni tanlashda ishlatiladi (bu haqda keyingi bosqichda batafsil aytib beraman) va to'rtinchisi faollashtirish uchun ishlatiladi.

Bu modulda uchta pin bor. (5V+, GND, OUTPUT).

Siz qizil simni 5V+ ga va qora simni GND ga ulaysiz. Yashil sim Arduino raqamli piniga o'tadi. (Siz turli xil ranglardan ham foydalanishingiz mumkin, lekin agar siz bu ranglardan foydalansangiz, bu siz uchun osonroq va boshqarish osonroq bo'ladi.)

Ushbu loyiha uchun:

  • Kamaytirish moduli raqamli pin 8 ga ulangan.
  • Kattalashtirish moduli raqamli pin 9 ga ulangan.
  • Dasturni tanlash moduli raqamli pin 10 ga ulangan.
  • Signalni yoqish moduli raqamli pin 11 ga ulangan.

Raqamli tebranish sensori:

Bu modulda uchta pin bor. (5V+, GND, OUTPUT).

Modul raqamli pin 3 ga ulangan

Buzzer moduli:

Bu modulda uchta pin bor. (5V+, GND, OUTPUT).

Modul raqamli pin 13 ga ulangan

LCD displey:

Displeyda to'rtta pin bor (Vcc, GND, SCL, SDA):

Vcc -ni 5V+ga, Arduino -dagi GND -ga, ekrandagi SCL va SDA piniga Arduino -dagi SLC va SDA -ga ulang

LED:

Ko'rsatkich sifatida men bir nechta LEDlardan foydalanardim. Qisqa oyog'i yoki LED katodi GND ga, uzunroq oyog'i yoki anodi raqamli pinga o'tadi. Agar siz menga ishonmasangiz, buni multimetr yordamida ham tekshirishingiz mumkin. (Diod yaxshi holatda bo'lsa, anoddan katodgacha o'tkazadi)

  • Yashil LED raqamli pin 4 ga ulangan. (Signal yoqilganda yonadi)
  • Sariq LED raqamli pin 5 ga ulangan (signal o'chirilganida yonadi)
  • Qizil LED raqamli 12 -pinga ulangan (agar siz to'g'ri dasturni tanlasangiz va tebranish sensorini silkitsangiz miltillang)
  • Oq LEDlar raqamli pin 2 ga ulangan. (Sensorli modullarni ko'rish uchun signal o'chirilganda yoqiladi).

Modullar va LEDlar Arduino -dan keladi. Shunday qilib, siz barcha Vcc pinlarini Arduino -dagi 5V ga va barcha GND pinlarini Arduino -dagi GND -ga ulaysiz. Arduino 5V va GND pinlariga ega emas, shuning uchun siz non taxtasidan foydalanishingiz kerak.

Siz Arduino -ni 9V batareyali yoki mos adapter bilan ta'minlay olasiz. Uni 9V batareya bilan quvvatlantirish sizga ko'proq harakatchanlikni beradi, lekin birozdan keyin uni almashtirish kerak bo'ladi.

Agar siz AC qurilmalarini boshqarishni xohlasangiz, siz o'rni modulini ulashingiz kerak bo'ladi.

5 -qadam: kod

Kod
Kod
Kod
Kod

Kod biroz uzunroq va agar siz dasturlashni yaxshi bilmasangiz, juda oson yo'qolishingiz mumkin.

Men kichik dasturlardan foydalanardim, chunki bu dasturni boshqarishni osonlashtiradi.

Shunday qilib, dasturning g'oyasi quyidagicha:

  • Siz signal davomiyligini tanlashingiz mumkin (5 interval bilan 1-15 soniya)
  • Siz dasturni tanlashingiz mumkin (Dastur bilan men signalning qanday o'chishi haqida turli xil imkoniyatlarni nazarda tutaman. Siz faqat zil signalining yonishini, LED bilan birlashtirilgan signal signalining yonishini yoki faqat LEDning yonishini tanlashingiz mumkin.)
  • Siz signalni yoqishingiz va o'chirishingiz mumkin (bu LEDlar bilan ko'rsatilgan. Yashil va sariq bilan)
  • Va hamma narsa LCD displeyda ko'rsatiladi. Sizda LCD displeyda ko'rsatmoqchi bo'lgan narsalar uchun ko'p imkoniyatlar mavjud.
  • Shunday qilib, tebranish sensori signalini o'chiradi, lekin bu siz tanlagan dasturga bog'liq.

Shunday qilib, agar siz if iboralarini qanday ishlatishni bilsangiz va LCD displeyni boshqarishni bilsangiz (lcd.clear, lcd.setCursor (x, y) …), bu dasturni tushunish qiyin emas.

Tavsiya: