Mundarija:
- 1 -qadam: materiallar
- 2 -qadam: ulanish sxemasi
- 3 -qadam: Vaziyatni tuzing
- 4 -qadam: Ulanishni tekshirish uchun komponentlarni elektron jadvalga ulang (ixtiyoriy)
- 5 -qadam: Dasturiy ta'minotni Arduino Nano -ga yuklab oling
- 6 -qadam: OLED displeyi va Piezo karnayini ulang va simlang
- 7 -qadam: Batareyani, zaryadlovchini va kalitni ulang va simlang
- 8 -qadam: akselerometrni ulang va simlang
- 9 -qadam: Arduino Nano -ni ulash orqali elektronikani to'ldiring
- 10 -qadam: Kalibrlash
- 11 -qadam: Arduino nanosini o'rnating va korpusni yig'ing
- 12 -qadam: Sizning yangi raqamli darajangizning ishlashini tekshiring
- 13 -qadam: Yakuniy fikrlar …
Video: DigiLevel - ikki o'qli raqamli daraja: 13 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Bu ko'rsatmaga ilhom bu erda GreatScottLab tomonidan topilgan DIY Digital Spirit Level. Menga bu dizayn yoqdi, lekin grafik interfeysi kattaroq displeyga ega bo'lishni xohlardim. Bundan tashqari, men korpusda elektronikani yaxshiroq o'rnatish variantlarini xohlardim. Oxir -oqibat, men ushbu loyihadan 3D dizayn ko'nikmalarimni yaxshilash uchun (Fusion 360 yordamida) va yangi elektron komponentlarni o'rganish uchun foydalandim.
DigiLevel sirt tekis bo'ladimi-x o'qi (gorizontal) va y o'qi (vertikal) bo'yicha fikr bildiradi. Darajalar darajalari, shuningdek, 2 o'qli diagrammada grafik tasviri ko'rsatiladi. Bundan tashqari, batareya quvvati darajasi ko'rsatiladi va Farengeyt yoki Selsiydagi joriy harorat ko'rsatiladi (akselerometr chipi xabar qilganidek). Bu minimal ovozli teskari aloqa - bu kuchni tekshirishning boshlang'ich ohangidir, so'ngra har doim darajani notekis pozitsiyadan bir darajali holatga o'tkazganda, ikkilamchi ohang.
Men bu raqamli darajani qanday qilish mumkinligi haqida batafsil ko'rsatmalarni berdim, lekin DIY Digital Spirit darajasida bo'lgani kabi, dizaynimni ham kengaytirib, o'zgartirishga ruxsat bering.
1 -qadam: materiallar
Raqamli darajani yig'ishda quyidagi materiallar ishlatiladi. Xarid qilish havolalarining aksariyati bir nechta bo'laklarga mo'ljallangan bo'lib, ular odatda alohida komponentlarni sotib olishdan ko'ra arzonroqdir. Misol tariqasida, TP4056 chipi 10 donadan iborat bo'lib, 9 dollarga (1 dollardan past/TP4056) yoki uni alohida -alohida 5 dollarga sotib olish mumkin.
- TP4056 Li -Po batareyali zaryadlovchi (Amazon -
- LSM9DS1 akselerometri (Amazon -
- Arduino Nano (Amazon -
- 128x64 OLED LCD displey (Amazon -
- Piezo karnay (Amazon -
-
3.7V Li -Po batareyasi (Amazon -
a.co/d/1v9n7uP)
- M2 pan boshli o'z -o'zidan tejamkor vintlardek - 4 M2x4, 6 M2x6 va 6 M2x8 vintlar kerak (eBay -
- Slaydni almashtirish (Amazon -
Vintlar bundan mustasno, berilgan havolalar sizni Amazonga olib boradi. Bu mahsulotlarning deyarli barchasini eBay yoki to'g'ridan -to'g'ri Xitoydan katta chegirmaga sotib olish mumkin. Shuni yodda tutingki, Xitoydan buyurtma berish uzoq vaqt ketishiga olib kelishi mumkin (3-4 hafta odatiy emas).
Shuni ham unutmangki, ushbu komponentlarning ko'pchiligi uchun alternativalar mavjud. Masalan, siz LSM9DS1 uchun boshqa akselerometrni (masalan, MPU-9205) almashtirishingiz mumkin. Siz Arduino Nano-ni Arduino-ga mos keladigan har qanday protsessor yordamida o'zgartirishingiz mumkin.
Xususan, LSM9DS1 - bu men Sparkfun -da 10 dollardan kam bo'lmagan narxda sotilgan, lekin odatda yuqori narxga ega; MPU-9025 (https://a.co/d/g1yu2r1) shunga o'xshash funktsiyani arzonroq narxda taqdim etadi.
Agar siz almashtirishni amalga oshirsangiz, ehtimol siz korpusni o'zgartirishingiz kerak bo'ladi (yoki hech bo'lmaganda korpusga qanday qilib o'rnatishingiz mumkin) va siz, ehtimol, muqobil komponentaga ulanish uchun dasturiy ta'minotni o'zgartirishingiz kerak bo'ladi. Menda bunday o'zgartirishlar yo'q - kerak bo'lganda tadqiq qilish va yangilash kerak bo'ladi.
2 -qadam: ulanish sxemasi
Elektr sxemasi turli elektron komponentlarning bir -biriga qanday ulanganligi haqida batafsil ma'lumot beradi. Qizil chiziqlar ijobiy kuchlanishni, qora chiziqlar esa erni ifodalaydi. Sariq va yashil chiziqlar akselerometr va OLED LCD displeyidagi ma'lumotlar signallari uchun ishlatiladi. Quyidagi bosqichlarda ushbu komponentlar qanday bog'langanligini ko'rasiz.
3 -qadam: Vaziyatni tuzing
Agar sizda 3D printer bo'lsa, qutini juda oson bosib chiqarish mumkin. Ushbu yo'riqnomaga kiritilgan STL fayllari. Agar sizda 3D printer bo'lmasa, siz STL fayllarini 3D printer byurosiga yuklashingiz mumkin (masalan).
Men o'zimning chekkasini yoki raftini (va tayanchlarsiz) va 20% to'ldirishsiz chop etdim, lekin siz bosib chiqarishga odatlangan bo'lsangiz ham, siznikini chop etishingiz mumkin. Har bir parcha alohida -alohida chop etilishi kerak. Printer to'shagiga to'g'ri kelishi uchun uni 45 gradusga burishingiz kerak bo'ladi. Meniki 200 mm x 200 mm to'shakdagi Monoprice Maker Select Plus yordamida bosilgan - har bir buyumni chop etish uchun taxminan 12 soat vaqt ketgan. Agar sizda kichkina to'shak bo'lsa, u mos kelmasligi mumkin. O'lchovni o'lchash tavsiya etilmaydi, chunki elektron komponentlarning moslamalari mos ravishda o'lchanmaydi.
4 -qadam: Ulanishni tekshirish uchun komponentlarni elektron jadvalga ulang (ixtiyoriy)
Men korpus ichidagi komponentlarni o'rnatishni davom ettirishdan oldin ulanishni tekshirish uchun asosiy komponentlarni ulash taxtasiga ulashni qat'iy tavsiya qilaman. Siz dasturiy ta'minotni Arduino Nano -ga yuklab olishingiz mumkin (keyingi bosqichga qarang) va OLED LCD displeyining to'g'ri ulanganligini va ishlayotganini, akselerometrning to'g'ri ulanganligini va o'z ma'lumotlarini Arduino Nano -ga xabar qilayotganini tekshiring.. Bundan tashqari, bu ixtiyoriy piezo karnayning ishlashini tekshirish uchun ishlatilishi mumkin.
Men bu bosqichda batareyani va zaryadlovchini non taxtasiga ulamadim - kalitni batareyani boshqarish uchun ulash siz kalitni korpusga o'rnatganingizdan so'ng amalga oshiriladi. Oxirgi rasmda bu simlarni ulashdan oldin qanday ko'rinishini ko'rsatadi.
5 -qadam: Dasturiy ta'minotni Arduino Nano -ga yuklab oling
Dastur Arduino IDE yordamida Arduino Nano -ga yuklanadi. Buni istalgan vaqtda DigiLevel -ni qurish jarayonida qilish mumkin, lekin eng yaxshisi, komponentlar elektr simlarining to'g'ri ulanishi va ishlashini tekshirish uchun non paneli yordamida (oldingi bosqichga qarang) o'tkazilganda.
Dastur 2 ta kutubxonani o'rnatishni talab qiladi. Birinchisi -U8g2 kutubxonasi (oliver tomonidan) -siz Arduino IDE -dagi "Sketch -> Kutubxonani qo'shish -> Kutubxonalarni boshqarish …" tugmasini bosish orqali o'rnatishingiz mumkin. U8g2 ni qidiring va "O'rnatish" ni bosing. Ikkinchi kutubxona - Sparkfun LSM9DS1 kutubxonasi. Bu erda kutubxonani o'rnatish bo'yicha ko'rsatmalarni olishingiz mumkin.
Kutubxona spetsifikatsiyalaridan so'ng, dasturiy ta'minotni sozlash bo'limi va asosiy ishlov berish tsikli mavjud. O'rnatish bo'limi akselerometrni va OLED LCD displeyini ishga tushiradi, so'ngra asosiy displeyni ko'rsatishdan oldin ishga tushirish ekranini ko'rsatadi. Agar karnay ulangan bo'lsa, u yoqilganligini bildirish uchun karnayda bitta signal eshitiladi.
Asosiy ishlov berish aylanasi akselerometrni o'qish, x va y burchaklarni olish, so'ngra qiymatlarni mutlaq raqamlar to'plami sifatida, shuningdek grafik shaklida tasvirlash uchun javobgardir. Akselerometrdan harorat ko'rsatkichi ham ko'rsatiladi (Farengeyt yoki Selsiy bo'yicha). Agar daraja ilgari notekis bo'lsa, u darajaga qaytganda, karnayda ikkita signal eshitiladi (agar ulangan bo'lsa).
Nihoyat, batareyadan keladigan kuchlanish batareyaning joriy darajasini aniqlash va ko'rsatish uchun olinadi. Men bu kod qanchalik to'g'ri ekanligini bilmayman, lekin u to'liq batareyani ko'rsatish va foydalanish paytida batareya quvvatining asta -sekin tushishi uchun etarli darajada aniq.
6 -qadam: OLED displeyi va Piezo karnayini ulang va simlang
1,3 dyuymli OLED-displey (128x64) korpusning yuqori yarmiga 4 ta M2x4 o'lchamdagi panjarali o'z-o'zidan tejamkor vintlar yordamida o'rnatiladi. O'rnatishdan oldin simlaringizni displeyga ulashingizni tavsiya qilaman. Siz simlarni ulayotganingizda belgi qo'ygansiz. Displey o'rnatilgandan so'ng, siz pinlar uchun yorliqlarni ko'rmaysiz. Men eslaymanki, men ekranning orqa tomoniga yorliq qo'shganman. pin qiymatlari (chunki men buni birinchi marta qilmaganman va uni noto'g'ri ulaganman …).
Raqamli daraja yoqilganda, batareya yaxshi ekanligini va uning ishlashini tekshirish uchun karnay qisqa ovoz chiqaradi. Bundan tashqari, daraja notekis pozitsiyadan bir darajali holatga o'tkazilganda, u ikki barobar ohang chiqaradi. Bu sizning darajangizni yoki darajangiz qanday bo'lishidan qat'i nazar, ovozli mulohazalarni berishdir. U korpusning yuqori yarmiga 2 ta M2x4 pan boshli o'z-o'zidan tejamkor vintlar yordamida o'rnatiladi. Sizga karnay kerak emas - DigiLevel juda yaxshi ishlaydi, lekin siz hech qanday ovozli fikrlarni yo'qotasiz.
7 -qadam: Batareyani, zaryadlovchini va kalitni ulang va simlang
Kalitni batareyaga ulashdan oldin uni korpusga o'rnatish kerak. Buning sababi shundaki, agar siz uni avval sim bilan ulasangiz, siz uni o'chirmasdan turib kalitni o'rnatolmaysiz. Shunday qilib, avval kalitni o'rnating, keyin TP4056 va Li-Po batareyasini oldindan ulang, so'ngra kalitga simni ulang.
TP4056-da 4 ta sim o'tkazgich mavjud: B+, B-, Out+, Out-. Siz batareyani B+ (musbat kuchlanish) va B- (tuproqli) ulanishlarga ulashni xohlaysiz. Chiqish ulanishi Arduino Nano-ga o'tadigan er uchun ishlatiladi va Out+ kalitning bitta piniga ulanadi. Keyin kalitning ikkinchi pimi Arduino Nano VIN -ga ulanadi.
Mening lehimlash ishim eng yaxshi emas - men lehimli bo'g'inni yopish va izolyatsiyalash uchun issiqlik o'tkazmaydigan quvurlardan foydalanishni yaxshi ko'raman. Siz payqadingizki, bu erdagi lehimli ulanishlardan birida, issiqlikni pasaytiruvchi quvurlar lehimning issiqligidan ta'sirlangan va men uni siljitishimdan oldin u qisqargan.
8 -qadam: akselerometrni ulang va simlang
Akselerometr (LSM9DS1) korpusning pastki yarmining o'rtasiga o'rnatiladi. Ulanish uchun 4 ta pin bor: VCC Arduino Nano -dagi V5 piniga o'tadi; GND erga tushadi; SDA Arduino Nano -dagi A5 piniga o'tadi; va SCL Arduino Nano -dagi A4 piniga o'tadi.
Men simlarni ulash uchun Dupont konnektorli o'tish simlarini ishlatganman, lekin agar xohlasangiz, simni to'g'ridan -to'g'ri pimlarga lehimlashingiz mumkin. Agar siz simlarni to'g'ridan -to'g'ri pimlarga lehimlasangiz, buni osonlashtirish uchun akselerometr chipini o'rnatishdan oldin qilishingiz kerak bo'ladi.
9 -qadam: Arduino Nano -ni ulash orqali elektronikani to'ldiring
Yakuniy simlar barcha elektr komponentlarini Arduino Nano -ga ulash orqali amalga oshiriladi. Bu Arduino Nano -ni o'rnatishdan oldin amalga oshiriladi, shuning uchun USB portini kalibrlash va boshqa dasturiy ta'minotni o'zgartirish mumkin.
Kalitni Nano -ga ulashdan boshlang. Ijobiy qo'rg'oshin (qizil) kalitdan Nanoning VIN piniga o'tadi. Batareyadagi salbiy qo'rg'oshin (qora) Nano ustidagi GND piniga o'tadi. Nanoda ikkita GND pin bor va barcha to'rtta elektr komponentida topraklama simlari mavjud. Men korpusning pastki qismidagi ikkita asosni GND pinlaridan biriga ulangan bitta simga birlashtirishni tanladim. Ishning yuqori qismidagi ikkita asosni men birlashtirdim va boshqa GND pinlariga ulashdi.
Akselerometrni (LSM9DS1) Nano -ga ulanishi mumkin, akselerometrdagi VDD pinini Nano -dagi 3V3 piniga ulash orqali. Buni 5V piniga ulamang, aks holda akselerometr chipiga zarar yetkazasiz. SDA -ni Nano -dagi A4 piniga, SCL -ni esa Nano -dagi A5 piniga ulang. GND pimi Nano -dagi GND piniga o'tadi (batareyaning salbiy simlari bilan birgalikda).
OLED -LCD displeyni Nano -ga ulash mumkin, uni displeydagi VCC pinini Nano -dagi 5V -ga ulash orqali. SDA -ni Nano -dagi D2 piniga, SCL -ni esa Nano -dagi D5 piniga ulang.
Nihoyat, karnayni qizil simni (musbat) Nanodagi D7 piniga ulash orqali ulash mumkin. Qora sim OLED LCD displeyining GND bilan birga GND ga o'tadi.
10 -qadam: Kalibrlash
Dasturiy ta'minot yuklab olingandan so'ng va Arduino Nano -ni o'rnatishdan oldin siz o'z darajangizni sozlashingiz kerak bo'ladi. Akselerometr taxtasi o'rnatilganligiga ishonch hosil qiling. Vintlar bilan o'rnatish tekis taxtaga olib kelishi kerak, lekin agar u biron sababga ko'ra biroz o'chirilgan bo'lsa, kalibrlash to'g'ri ko'rsatishni ta'minlaydi.
Pastki korpusni tekis bo'lgan joyga qo'ying (ko'pikli sath yoki boshqa vositalar yordamida). X va Y uchun ko'rsatilgan qiymatlarni o'qing. Agar nol bo'lmasa, dasturiy ta'minotni kalibrlash miqdori bilan yangilashingiz kerak bo'ladi. Bu xCalibration o'zgaruvchisini yoki yCalibration o'zgaruvchisini tegishli miqdorga (nima ko'rsatiladi) o'rnatish orqali amalga oshiriladi.
// // Bu o'zgaruvchilarni boshlang'ich qiymatlari bilan mos ravishda o'rnating // bool displayF = true; // Farengeyt uchun to'g'ri, Selsiy uchun noto'g'ri int xCalibration = 0; // x o'qini tekislash uchun kalibrlash miqdori int yCalibration = 0; // y o'qi uzunligini tekislash uchun kalibrlash miqdori irvCalibration = 1457; // ichki mos yozuvlar kuchlanishi uchun kalibrlash miqdori
Bu vaqtda, shuningdek, Farenheit yoki Tselsiyda ko'rsatiladigan haroratni xohlashingizga qarab, displayF qiymatini mos sozlamalarga o'rnatishingiz kerak.
Dasturiy ta'minotni Nano-ga qayta yuklash, ma'lum darajadagi sirtda 0/0 o'qishga olib kelishi kerak.
11 -qadam: Arduino nanosini o'rnating va korpusni yig'ing
Kalibrlash tugagandan so'ng, siz Arduino Nano -ni korpusga o'rnatishingiz mumkin, bu erda relslarga issiq elim suring va Arduino Nano -ni bu relslarga pinlarni yuqoriga qarating va USB portini korpusning ichki tomoniga qarating.
Endi barcha elektronikalarni o'z ichiga oladigan korpusni ikkala yarmini bir-biriga bog'lab, 4 ta M2x8 pan boshli o'z-o'zidan tejamkor vintlar yordamida yig'ish mumkin.
12 -qadam: Sizning yangi raqamli darajangizning ishlashini tekshiring
Li-Po batareyasi zaryadlanganligiga ishonch hosil qiling. Agar korpus yig'ilsa, siz zaryadlovchi LED ko'rsatkichlarini to'g'ridan -to'g'ri ko'ra olmaysiz. Agar siz zaryadlash chiroqlarini to'g'ridan -to'g'ri ko'rish orqali zaryadlash jarayonini tekshirmoqchi bo'lsangiz, siz korpusni ochishingiz kerak bo'ladi, lekin siz korpus yopilgan holda zaryad olayotganini ko'rsatuvchi qizil nurni ko'rishingiz kerak.
Zaryad va yig'ilgandan so'ng, raqamli darajani yoqing va uning ishlashini tekshiring. Agar u ishlamayotgan bo'lsa, ikkita muammoli nuqta - bu OLED LCD displeyining simlari va akselerometrning simlari. Agar displeyda hech narsa ko'rinmasa, OLED LCD simidan boshlang. Agar displey ishlayotgan bo'lsa, lekin H va V yorliqlari 0 ni ko'rsatsa va harorat 0 (C) yoki 32 (F) bo'lsa, u holda akselerometr to'g'ri ulanmagan bo'lishi mumkin.
13 -qadam: Yakuniy fikrlar …
Men bu raqamli darajani (va ko'rsatmali) birinchi navbatda o'rganish tajribasi sifatida to'pladim. Har xil komponentlar va ularning imkoniyatlarini o'rganish, so'ngra ularni qiymat qo'shadigan tarzda birlashtirish kabi, men uchun ishlash darajasini yaratish men uchun unchalik muhim emas edi.
Qanday yaxshilanishlar qilardim? Kelgusi yangilanish uchun men bir nechta narsani o'ylayman:
- Arduino Nano -ning USB -portini korpus orqali, uni o'rnatish usulini o'zgartiring. Bu dasturiy ta'minotni oson yangilash imkonini beradi (bu har holda kamdan -kam bo'lishi kerak).
- Yog'och filament yordamida korpusni 3D chop eting. Men Hatchbox Wood filamentini sinab ko'rdim va men erishgan natijalardan juda mamnunman. O'ylaymanki, bu DigiLevelga umumiy ko'rinish beradi.
- Dizaynni yangilang va MPU-9250 akselerometridan foydalanib, xarajatlarni kamaytiring va funksiyaga ta'sir qilmang.
Bu mening birinchi ko'rsatma va men mulohazalarni qabul qilaman. Men undan qochishga harakat qilgan bo'lsam -da, aminmanki, bu AQShga ko'proq qarashli, shuning uchun AQShdan tashqarida bo'lganlar uchun uzr.
Agar sizga bu qiziq tuyulgan bo'lsa, iltimos, birinchi marta mualliflar tanlovida menga ovoz bering. Oxirigacha o'qiganingiz uchun tashakkur!
Birinchi marotaba muallif
Tavsiya:
Arduino Nano-MMA8452Q 3 o'qli 12 bitli/8 bitli raqamli akselerometr bo'yicha qo'llanma: 4 qadam
Arduino Nano-MMA8452Q 3-o'qli 12-bitli/8-bitli raqamli akselerometr bo'yicha qo'llanma: MMA8452Q-bu 12 bitli, aqlli, kam quvvatli, uch o'qli, sig'imli, mikromaxinli akselerometr. Foydalanuvchilar tomonidan dasturlashtiriladigan moslashuvchan variantlar akselerometrga o'rnatilgan ikkita funktsiya yordamida ta'minlanadi, ular ikkita uzilishga o'rnatiladi
Raspberry Pi MMA8452Q 3 o'qli 12-bitli/8-bitli raqamli akselerometr Python qo'llanmasi: 4 qadam
Raspberry Pi MMA8452Q 3-o'qli 12-bitli/8-bitli raqamli akselerometr Python qo'llanmasi: MMA8452Q-bu 12 bitli aniqlikdagi aqlli, kam quvvatli, uch o'qli, sig'imli, mikromashinli akselerometr. Foydalanuvchilar tomonidan dasturlashtiriladigan moslashuvchan variantlar akselerometrga o'rnatilgan ikkita funktsiya yordamida ta'minlanadi, ular ikkita uzilishga o'rnatiladi
Raqamli ruhiy daraja Electronicslovers tomonidan DIY loyiha moduli: 6 qadam
Raqamli ruhiy daraja - elektron loyihalarni o'z qo'li bilan amalga oshiradigan loyiha moduli: Vaqt borki, siz mebelni yoki shunga o'xshash narsalarni uyingizga o'rnatishingiz kerak bo'ladi va hamma to'g'ri o'rnatishi uchun odatdagidek ruhiy darajadan foydalaning. ElectronicsLovers Tech Team bu modulni qurdi, u odatdagidan farq qiladi: men
Raspberry Pi MMA8452Q 3 o'qli 12-bitli/8-bitli raqamli akselerometrli Java darsligi: 4 qadam
Raspberry Pi MMA8452Q 3-o'qli 12-bitli/8-bitli raqamli akselerometr Java darsligi: MMA8452Q-bu 12 bitli aniqlikdagi aqlli, kam quvvatli, uch o'qli, sig'imli, mikromaxinli akselerometr. Foydalanuvchilar tomonidan dasturlashtiriladigan moslashuvchan variantlar akselerometrga o'rnatilgan ikkita funktsiya yordamida ta'minlanadi, ular ikkita uzilishga o'rnatiladi
Raqamli va ikkilik soat 8 raqamli X 7 segmentli LED displeyda: 4 qadam (rasmlar bilan)
Raqamli va ikkilik soat 8 ta raqamli X 7 segmentli LED displeyda: Bu mening raqamli & 8 dyuymli x 7 segmentli LED displey yordamida ikkilik soat. Men odatiy qurilmalar, xususan, soatlar uchun yangi xususiyatlar berishni yaxshi ko'raman va bu holda ikkilik soat uchun 7 segmentli displeydan foydalanish noan'anaviy va