Mundarija:

TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin: 5 qadam
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin: 5 qadam

Video: TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin: 5 qadam

Video: TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin: 5 qadam
Video: BTT - Manta E3EZ - EZ2130 2024, Noyabr
Anonim
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin
TrigonoDuino - Sensorsiz masofani qanday o'lchash mumkin

Ushbu loyiha tijorat sensori bo'lmagan masofani o'lchash uchun qilingan. Bu aniq echim bilan trigonometrik qoidalarni tushunish loyihasi. Bu boshqa trigonometrik hisoblash uchun moslashtirilishi mumkin. Cos Sin va boshqalar Math.h bilan ishlaydi.

Bu lazer nurlari bilan o'lchashning bunday birinchi prototipi, har qanday taklif yoki maslahatlar qabul qilinadi.

Trigonometriya qoidalari bilan masofani o'lchash uchun matematikadan foydalaniladi.

Bu ikkita lazerli diod, SG90 servo dvigateli, bitta potentsiometr 10k va Arduino Uno bilan ishlaydi.

<1 metr masofada aniqlik +- 2 mm atrofida, masofa santimetrda ko'rsatiladi. Agar siz dyuymni 1 sm = 0, 393701 dyuymga aylantirishni xohlasangiz, uni 2, 54 ga bo'lishingiz kerak. Siz aniq masofani katta masofada yo'qotishingiz mumkin.

Tushuntirish:

Potentsiometr servo dvigatelda C lazerini harakatga keltiradi, bu Arduino uchun C burchagini beradi. Lazer nuqta to'g'ri burchak beradi. Lazer (C) nuqtasini potentsiometr yordamida ikkita lazer nurini tepaga surguncha siljiting, bu B nuqtasini beradi.

Maslahatlar: mukammal lazer nuqtasini olish uchun lazer nurlarini lazerli vintli optikasi bilan sozlang.

1 -qadam: qismlar ro'yxati

Qismlar ro'yxati
Qismlar ro'yxati
Qismlar ro'yxati
Qismlar ro'yxati
Qismlar ro'yxati
Qismlar ro'yxati
Qismlar ro'yxati
Qismlar ro'yxati

Asosiy:

-Ikki lazer:

- Arduino Uno:

-Servo dvigatel:

-10k potentimetr:

-Dupont Wire:

Asbob:

-Lehim temir:

(Menda bu bor va u juda yaxshi lehimlantiruvchi temir, ishda men Wellerdan foydalanaman, lekin men o'zim uchun ishlataman)

Variant:

-Qarshiliklar:

2 -qadam: Elektrotexnikani ulash

Elektr simlarini ulash
Elektr simlarini ulash
Elektr simlarini ulash
Elektr simlarini ulash
Elektr simlarini ulash
Elektr simlarini ulash
Elektr simlarini ulash
Elektr simlarini ulash

Diodli emitentlarni, 5V qizil simga va GNDni ko'k simga ulang.

Servo qizilni 5V ga, qora rangni GND ga va to'q sariq rangni Arduino Digital Pin 3 ga ulang.

Potensiometrning chap pinini Digital Pin 8 ga, o'ng pinni Digital Pin 9 ga va o'rta pinni Analog Pin A0 ga ulang. Chap pin men uchun binafsha rang.

Quvvat olishdan oldin sxemaga qarang. Ehtiyot bo'ling, lazer nurlari ko'zingizga zarar etkazishi mumkin. Qizil simli diodlar va arduino orasiga rezistorlar qo'shishingiz mumkin, KY008 modulida 10k ishlatiladi.

Maslahat: Lazer va potansiyometr uchun Dupont simlarini tayyorlash uchun lehimli temir kerak.

3 -qadam: Plitani 3D bosib chiqarish

Plitani 3D chop etish
Plitani 3D chop etish
Plitani 3D chop etish
Plitani 3D chop etish
Plitani 3D chop etish
Plitani 3D chop etish
Plitani 3D chop etish
Plitani 3D chop etish

Autocad bilan yaratilgan va STL formatida eksport qilingan.

www.autodesk.fr/products/autocad/overview

Chop etishning soddalashtirilgan versiyasi siz uchun yaxshiroq, uni tuzatish uchun SG90 bilan vintli sovg'adan foydalaning. Servo markazi qo'llab -quvvatlashning o'ng tomonida bo'lishi kerak.

Muhim:

Ikkinchi qismni servo dvigatelga yopishtirishdan oldin servo (0) darajaga qo'ying. Lazer ko'rsatkichlarini Servo (0) bilan parallel holatga qo'ying, valni 0 bilan almashtiring: monServomoteur.write (0);.

Hali yopishtirmang, keyingi bosqichning oxirini kuting.

4 -qadam: Arduino kodi

Arduino kodi
Arduino kodi
Arduino kodi
Arduino kodi
Arduino kodi
Arduino kodi

Siz uni ishlatish uchun kodni topishingiz mumkin.

Arduino IDE -ni yuklab oling va o'rnating:

Math.h kutubxonasini loyihaga qo'shish kerak.

Uchburchak - A burchagidagi to'rtburchaklar, biz ACni 14 sm deb bilamiz va servo dvigatel C burchagini beradi, shuningdek AB masofasini Tan (B) bilan o'lchash uchun B burchagini hisoblaymiz, B - 2 lazer nuqtasi orasidagi birikma. Uchburchakdagi umumiy burchak 180 ° ga teng, A ga 90 ° burchakka teng.

Masofani o'lchash A burchagidagi lazer yonida boshlanadi.

Agar sizda OLED ekrani bo'lmasa, TrigonoDuinoSerial.ino -dan foydalaning. Men kompyutersiz foydalanish uchun SSD1306 Oled ekranidan foydalanardim.

Nb: 4064 ni 1028 ga o'zgartira olasizmi, bu Arduino kartasiga bog'liq. Men uchun Wavgat R3 analog pimi 0 dan 4064 gacha qiymatni qaytardi, boshqalari uchun esa 0 dan 1028 gacha.

Tartibga solish: xarita funktsiyasi aniqlik uchun mos emas, yangi kod versiyasida uzun turdagi o'zgaruvchilar o'rniga ikki barobar foydalanish uchun hisoblash rejimi o'zgartirildi. "For" loopi servo dvigatelning barqaror qiymatini oshirish uchun oshirildi.

Lazerlarni o'z joylariga o'rnatish servo.write -ni 0 ga qo'ying va ushlab turuvchi lazer qutisini servo markaziga yopishtiring. Lazerlar parallel bo'lishi kerak. Lazer nurlarini bir xil balandlikka sozlang va ko'rsatgichlar lazerlar bilan bir xil masofada bo'lishi kerak.

5 -qadam: sinov o'lchovi

Sinov o'lchovi
Sinov o'lchovi
Sinov o'lchovi
Sinov o'lchovi
Sinov o'lchovi
Sinov o'lchovi

Endi o'lchov sinoviga o'ting. Agar kerak bo'lsa, AC uzunligini lazer qutilarining o'rtasiga markazga sozlang.

Potentsiometrni asta -sekin aylantiring. Siz aniq masofani ko'rsatadigan lazer fokusini (vintli boshli lazerni burab) sozlashingiz mumkin.

Siz bu birlik bilan bir necha metrni o'lchashingiz mumkin edi, lekin aniqlik unchalik aniq emas. 1 metrgacha bo'lgan o'lchov juda yaxshi.

Oldinga:

Misol uchun, ikkinchi lazerni o'lchash uchun birinchi lazer ostiga qo'yishingiz mumkin, lekin unga ko'proq hisoblash kerak. Bu matematikaning haqiqiy qo'llanilishini hisobga olgan holda, trigonometriyani o'rganayotgan yosh talabalar uchun ajoyib narsa bo'lishi mumkin.

Siz aniqroq servo dvigatel qo'yishingiz va aniqlikni oshirish uchun potentsiometrlarni qo'shishingiz mumkin (masalan, 15 ° uchun 1 potansiyometr) va masofani o'lchash diapazoni.

AC uzunligini tez o'zgartirish uchun servoning lateral siljishini qo'shishi mumkin.

Tavsiya: