Mundarija:

3D AIR sichqonchasi - Arduino + ishlov berish: 5 qadam
3D AIR sichqonchasi - Arduino + ishlov berish: 5 qadam

Video: 3D AIR sichqonchasi - Arduino + ishlov berish: 5 qadam

Video: 3D AIR sichqonchasi - Arduino + ishlov berish: 5 qadam
Video: Genius SP-G10 - надёжные недорогие компьютерные колонки для офисных ПК. Обзор, отзыв. 2024, Iyul
Anonim
3D AIR sichqonchasi | Arduino + ishlov berish
3D AIR sichqonchasi | Arduino + ishlov berish

3D AIR sichqonchasi | Men sanoat dizaynining talabasiman va o'tgan yili "RAW materiali sifatida texnologiya" kursining bir qismi sifatida men ushbu loyihani yakuniy ishim sifatida qurganman. Men ko'pincha dizayn va muhandislik uchun SAPR dasturi bo'lgan SolidWorks bilan ishlayman.. Qattiq jismni ekranda aylantirish sichqonchaning o'rta tugmasi yordamida amalga oshiriladi. Men intuitivroq narsani qidirardim. Men 3D -havo sichqonchasini shu tarzda tugatdim, bu erda ob'ektning aylanishi sichqonchani havoda, har uch o'qda ham harakatlanishi bilan amalga oshiriladi - xuddi qo'lni ushlab turganingizda, ob'ektni aylantirasiz. Men Arduino-dan, bir nechta sensorlar va ishlov berish eskizidan foydalandim. Agar bilsangiz, yozing:))- Barcha jihozlar meniki bo'lmaganligi sababli, 3D sichqonchasi allaqachon yo'q bo'lib ketgan va men bularning barchasini tushunishga harakat qilish uchun sizga fotosuratlar va videolardan foydalanmoqdaman. Agar siz o'zingiz yaratmoqchi bo'lsangiz, qandaydir g'oya … Bundan zavqlaning … (Bu mening birinchi ko'rsatmam) Mana, tayyor loyihaning video demosi.

1 -qadam: Uskuna va materiallar

Uskuna va materiallar
Uskuna va materiallar
Uskuna va materiallar
Uskuna va materiallar
Uskuna va materiallar
Uskuna va materiallar
Uskuna va materiallar
Uskuna va materiallar

Bu 3 o'qli akselerometr + kompas sensori asosida qurilgani uchun eng arzon ko'rsatma emas. Sizga kerak bo'lgan narsalar:* Sichqoncha - ishlatilgani yaxshiroq (faqat ishlatilgani va arzonligi uchun), har qanday sichqon bajarishi kerak. Datchiklar va qo'shimcha simlarni joylashtirish uchun sizda bo'sh joy bo'lishi kerak, shuning uchun qo'shimcha ingichka sichqonlarga murojaat qilmang.* Tilt kompensatsiyali kompas moduli - HMC634 - bu SpurkFun -dan sotib olingan 3 o'qli sensor. $ 149* Mantiqiy darajali konvertor - MUHTAT! Arduino 5V va 3 o'qi sensori 3.3V bo'lgani uchun 5V ni 3.3V ga aylantirish uchun sizga ulardan biri kerak. U katta nomga ega, lekin SpurkFun -da atigi 1,95 dollar turadi.* Katta optik detektor / fototransistor - bu oddiy optik sensor, bu loyihada sichqonchani ish joyidan ko'tarilganda aniqlanadi. SpurkFun -da 2,25 dollarga sotib olsangiz, agar siz tanlagan sichqonchani joylashtirish uchun joyingiz bo'lmasa, siz undan kichikroq va arzonroq foydalanishingiz mumkin. * Bitta (1) LED - rangga ahamiyat bermang, ultra yorqinroq ishlaydi. Men Diecimila modelidan foydalandim. Yangi Duemilanoveni SpurkFun -da taxminan 29,95 dollarga sotib olish mumkin (u ham ishlashi kerak) + Arduino dasturiy ta'minoti o'rnatilgan.* Dasturiy ta'minotni qayta ishlash.* Loyihaning manba kodi (Xavotir olmang, uni bir soniyadan so'ng yuklab olishingiz mumkin bo'ladi). Issiq elim (narsalarni joyida tuzatish uchun). Bir nechta mayda vintlar. Taxminan 10 sm 6 mm (diametrli) yog'och langar, ba'zi qo'shimcha simlar, lehimlantiruvchi temir. Plastmassani kesish uchun biror narsa, men chiqib ketish pichog'i va fayl ishlatardim (Shakllantirish uchun). ("OK, bu qadam uchun meni yomon ko'rmang, ingliz tili - bu mening ikkinchi tilim, agar men buni noto'g'ri tushungan bo'lsam, uzr so'rayman, aminmanki, men nima qilayotganimni bir soniyada tushunasiz. buni rasmlarda ko'rasiz ")

2 -qadam: elektronika

Elektronika
Elektronika
Elektronika
Elektronika

Hamma narsani bir -biriga lehim qilish kerak … Qaysidir ma'noda … QAYD: 3 o'qli datchik - bu hamma narsani yoqishdan oldin simni ikki marta tekshirib ko'ring. Agar siz men qilgan pin raqamlaridan foydalansangizgina ishlaydi, lekin agar siz koddagi tegishli raqamlarni o'zgartirsangiz, ulanish paytida ularni o'zgartirishingiz mumkin. 3 o'qli sensorni mantiqiy darajali konvertorga ulash: Sensor VCC -> Arduino 3V3Sensor GND -> Arduino GndSensor SDA -> TXI konvertori (Chan1) TXO (Chan1) -> Arduino ANALOG IN 4Sensor SCL -> Konverter TXI (Chan2) konvertori TXO (Chan2) -> Arduino ANALOG IN 5Converter GND (ulardan kamida bittasi) -> Arduino GndConverter HV -> Arduino 5VConverter LV -> Arduino 3V3 Arduino uchun optik sensor: biriktirilgan rasmga qarang GND (men optik sensorlardan birini ishlatganman)+ Arduino PIN 13 ga qadar (bu pin allaqachon o'rnatilgan rezistorga ega bo'lgani uchun qilingan, agar siz boshqasini ishlatsangiz, rezistorni ishlatganingizga ishonch hosil qiling, shunda siz LEDni yoqmaysiz)

3 -qadam: Sichqoncha tayyorlash

Sichqoncha tayyorlash
Sichqoncha tayyorlash
Sichqoncha tayyorlash
Sichqoncha tayyorlash
Sichqoncha tayyorlash
Sichqoncha tayyorlash

Bu erda sensorlar sichqoncha korpusi ichida o'z o'rnini topadi. 3 o'qli sensorni to'g'rilash uchun eng yaxshi joyni toping. Uning tekislanganligiga ishonch hosil qiling va yo'nalishni hisobga oling (qo'lingizda sensori qachon bo'lishini bilib olasiz) Siz xohlagan tarzda tuzatishingiz mumkin, men 2 ta kichik vintni qabul qilish uchun burg'ilangan yog'och langarning 2 ta qisqa qismini ishlatganman. va sichqonchaning asosiy taxtasiga issiq yopishtirilgan. Optik sensor uchun sichqonchaning pastki qismidagi to'rtburchaklar tuynukni shakllantiring, sensori stolga doimo "qarashi" kerak. Sichqoncha ko'tarilganda va sensor holati "ochilganda" (ko'rish uchun jadval yo'q) sichqoncha 3D rejimiga o'tadi (ishlov berish eskizini ishlaydi) Qo'shimcha simlarni (datchiklardan Arduinogacha) uzatish uchun boshqa teshik hosil qiling. plastik korpus. Meniki sichqonchaning o'ng tomonida joylashgan edi, u erda ko'rsatiladigan LEDni o'rnating. Ushbu loyihada LED 3D rejimining ko'rsatkichidir. Men o'zimni silikon sichqoncha g'ildiragining yoniga qo'yaman. Sichqoncha ko'tarilganda, g'ildirak yaxshi ko'k rangga ega edi.

4 -qadam: Manba kodi

Arduino kodini o'qituvchim Shachar Geyger yozgan va men uni loyiha uchun o'zgartirganman. 3D kub kodi ishlov berish veb -saytida topilgan asosiy koddir. Kodni bu qismi sensordan keladigan ma'lumotlarni (odatda -180 dan 180 x 10 gacha) 0-255 getHeading () ga o'zgartiradi; Serial.write ('x'); x = (x +1800) / 14; Serial.write (x); Serial.write ('y'); y = (y+1800) / 14; Serial.write (y); Serial.write ('z'); z = (z+1800) / 14; Serial.write (z); Sensor va Arduino ma'lumotlari har bir alohida o'q uchun ishlov berish eskiziga o'tadi, lekin oldingi o'qi bilan (X12 Y200 Z130 ekspluatatsiyasi uchun) quyidagi kod harfni tashlab, faqat COMga yuboriladigan qiymatlarni qoldiradi. port while (port.available () == 0) {} char o'qish = 0; while (o'qish! = 'x') {while (port.available () == 0) {} o'qish = (char) port.read ();} X = port.read (); while (o'qish! = 'Y') {while (port.available () == 0) {} o'qish = (char) port.read ();} Y = port.read (); while (o'qish! = 'z') {while (port.available () == 0) {} o'qish = (char) port.read ();} Z = port.read (); Bu kod to'plami barcha salbiy qiymatlarni tushiradi … agar ((X! = -1) && (Y! = -1) && (Z! = -1)) {rotateZ (-(float) Y/25.0); rotateX ((float) X/25.0); rotateY ((float) Z/25.0); pX = X; pY = Y; pZ = Z;} boshqa {rotateZ (-(float) pY/25.0); rotateX ((float) pX) /25.0);rotateY((float)pZ/25.0);} Qo'shilgan ZIP faylida Arduino ham, ishlov berish kodi ham bor edi

5 -qadam: video

Hammasi shu … Bu videodagi tugallangan loyiha. Kichkina nosozlik bor (ko'rishingiz mumkinki, kub ba'zida videoda "sakrab chiqadi"), bu Z o'qi tufayli, siz bilan bo'lmasligi mumkin …

Tavsiya: