Mundarija:

Komponentlarni saqlash tizimi: 10 qadam (rasmlar bilan)
Komponentlarni saqlash tizimi: 10 qadam (rasmlar bilan)

Video: Komponentlarni saqlash tizimi: 10 qadam (rasmlar bilan)

Video: Komponentlarni saqlash tizimi: 10 qadam (rasmlar bilan)
Video: Самаркандлик ам товба 2024, Noyabr
Anonim
Komponentlarni saqlash tizimi
Komponentlarni saqlash tizimi

Ultimate Component Storage System - elektron komponentalarni tartibga solish va saqlash uchun noyob echim. Maxsus dasturiy ta'minot ma'lum komponentalarga tezkor kirish uchun ichki qidirish funktsiyasi bilan komponentlarni kataloglashtirishga imkon beradi. Har bir tortmasining ustidagi LEDlar alohida yoki guruh komponentlarining joylashuvi va holatini ko'rsatish uchun ishlatiladi.

Ta'minotlar

Loyihaning quyidagi qismlarini taqdim etgan DFRobotga rahmat!

2 x 5V @ 3A USB quvvat manbai

Bu erda mavjud (sheriklik havolasi):

1 x Raspberry Pi 4 modeli B

Bu erda mavjud (sheriklik havolasi):

1 x 8,9 dyuymli 1920x1200 IPS sensorli displey

Bu erda mavjud (sheriklik havolasi):

1 x WS2812b LED tasmasi, 30 LED/m

Ebayda mavjud

Ushbu loyihaning barcha fayllarini mening GitHub-da topish mumkin:

1 -qadam: Fikr

Fikr!
Fikr!

Fon

Men har doim o'z komponentlarimni tartibga solish va saqlashda muammolarga duch kelganman. Yuqoridagi rasmda mening komponentlar saqlanadigan yechimimning holati ko'rsatilgan. Butun ustaxonada bir nechta qutilarda komponentlar bo'lishi, ba'zilar uchun ishlashi mumkin bo'lsa -da, bu har doim o'z ishimning samarasizligi edi. Shunday qilib, men bu muammoni hal qilish uchun loyiha bilan chiqdim.

Fikr

G'oya barcha komponentlarni bir xil saqlash tizimida saqlash edi. Saqlash tizimi ko'plab tortmalardan iborat bo'lishi kerak va har bir tortmasining ustiga LED o'rnatilgan bo'lishi kerak.

Foydalanuvchi saqlash tizimi bilan ishlash uchun maxsus dasturiy ta'minotdan foydalanadi. Foydalanuvchi komponent qidirishni amalga oshirganda, tizim eng yuqori qidiruv natijalarini ekranda ko'rsatadi. Shu bilan birga, qidiruvga mos keladigan LEDlar yonadi, bu esa komponentning saqlash tizimidagi o'rnini ko'rsatadi.

Joyni ko'rsatish bilan bir qatorda, LEDlarning rangi har bir komponentning holatini (ya'ni miqdorini) ko'rsatadi.

Talablar

Loyihaning maqsadi quyidagi talablarga bo'lindi:

Kichik va o'rta o'lchamli komponentlar uchun oddiy saqlash va qaytarib olish tizimini yaratish

Komponentlarni kataloglashtirish va qidirish uchun dasturiy interfeys yaratish

Har bir komponentning joylashuvi va holatini ko'rsatish uchun RGB LED -laridan foydalaning

2 -qadam: Dizayn - saqlash tizimi

Dizayn - saqlash tizimi
Dizayn - saqlash tizimi
Dizayn - saqlash tizimi
Dizayn - saqlash tizimi
Dizayn - saqlash tizimi
Dizayn - saqlash tizimi

Men saqlash tizimini o'zi 3D -modellashtirishdan boshladim.

Men saqlash tizimini har xil o'lchamdagi 3D bosma tortmalar matritsasi shaklida ishlab chiqdim. Shkaflar 35 × 12 o'lchamdagi panjara bo'lib, jami 310 ta tortmasidan iborat. Bu mening barcha komponentlarimni saqlash va kelajakda kengayish uchun joy qoldirish uchun etarli joy.

Vertikal yo'nalishdagi tortmalar orasidagi masofa tortmasining har bir qatoriga 10 mm kenglikdagi LED tasmasini joylashtirish uchun mo'ljallangan. Gorizontal yo'nalishdagi bo'shliq LED chizig'idagi LED oralig'iga teng bo'lishi uchun mo'ljallangan. Men 30LED/metrli LED tasmasini ishlatish har bir tortmasining kerakli hajmini tashkil qiladi deb o'yladim.

Barcha tortmalar va tortmalar ushlagichlari alohida chop etilishi va kerakli konfiguratsiyaga yig'ilishi uchun mo'ljallangan. Shkaflar har xil o'lchamlarda mavjud va har qanday tortmalar konfiguratsiyasi kodni o'zgartirgandan so'ng dasturiy ta'minot bilan ishlaydi.

Filament sarfini va bosib chiqarish vaqtini minimallashtirish uchun 3D bosilgan barcha qismlarda devor qalinligi minimal darajada saqlangan. O'rnatilgandan so'ng, umumiy saqlash moslamasi eng engil va o'rta og'irlikdagi qismlarni joylashtirish uchun etarlicha mustahkam bo'ladi.

3 -qadam: Dizayn - qo'lni ko'rsatish

Dizayn - Ko'rgazmali qo'l
Dizayn - Ko'rgazmali qo'l
Dizayn - Ko'rgazmali qo'l
Dizayn - Ko'rgazmali qo'l
Dizayn - qo'lni ko'rsatish
Dizayn - qo'lni ko'rsatish

Saqlash tizimi foydalanuvchi interfeysi uchun HDMI displeyini talab qilganligi sababli, men displey va elektronikani o'rnatish uchun sozlanadigan qo'lni loyihalashga qaror qildim.

Ko'rgazma qo'lining barcha qismlari 3D bosma bo'lib, M8 murvat va yong'oqlar bilan yig'ilgan. Ko'rsatkich tarmog'i HDMI displeyini, Raspberry Pi va barcha simlarni ushlab turish uchun mo'ljallangan.

Ko'rgazma qo'lining qismlari Thingiverse -ning ushbu dizayniga asoslangan.

4-qadam: 3D bosib chiqarish va rasm

3D bosib chiqarish va rasm
3D bosib chiqarish va rasm
3D bosib chiqarish va rasm
3D bosib chiqarish va rasm
3D bosib chiqarish va rasm
3D bosib chiqarish va rasm

Barcha qismlarni 3D modellashdan so'ng, yuzlab tortmalarni chop etishni boshlash vaqti keldi.

Men ushbu loyihaning 3D bosilgan barcha qismlari uchun Prusa MK2S-dan foydalandim. Men 0,2 mm qatlam balandligi va 0% to'ldirish bilan PLA filamentidan foydalanardim.

Qo'llab-quvvatlash materiali faqat o'rta o'lchamdagi tortma ushlagichida va katta o'lchamdagi tortma ushlagichida kerak edi. Men tortmalar va tortmalar ushlagichlari orasidagi mukammal bardoshlikni 0,2 mm deb aniqladim. Sizning yurgan masofangiz 3D-printeringizga bog'liq bo'lishi mumkin.

Alohida qismlarni bosib chiqargandan so'ng, men superglue yordamida barcha tortma ushlagichlarini 35 × 12 panjara ichiga yig'dim.

Menda bir xil rangdagi filament yo'q edi, shuning uchun saqlash tizimiga bir tekis ko'rinish berish uchun qora bo'yoq qo'shishga qaror qildim.

Ma'lumot uchun, 310 ta tortmasidan iborat mening butun 35 × 12 hajmli saqlash tizimim 5 kg filamentni bosib chiqarish uchun kerak edi.

5 -qadam: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika

Elektronikaga kelsak, uskunani tanlash juda oddiy edi.

Men foydalanuvchi interfeysi sifatida HDMI displeyga ulangan Raspberry Pi 4 Model B ni tanladim. Siz boshsiz Raspberry Pi va SSH orqali tizim bilan interfeysdan foydalanishingiz mumkin. Raspberry Pi -ning eski versiyalari, agar ular Python 3 -ni ishlata olsalar, ishlashi mumkin, bu loyihada ishlatilgan Neopixel kutubxonasi Python 2 -da qo'llab -quvvatlanmaydi.

LEDlar uchun men hech qanday sababsiz 30LED/m, WS2812b, LED tasmasini tanladim. Boshqa LED-chiziqlar ham Neopixel kutubxonasi tomonidan qo'llab-quvvatlansa ishlaydi.

Kabelga kelsak, Raspberry Pi, displey va LEDlarni quvvat bilan ta'minlash uchun uchta USB-C kabeli ishlatiladi. HDMI kabeli displey va Raspberry Pi -ni ulash uchun ishlatiladi.

Suratda ko'rsatilgan Arduino Uno va USB kabeli ixtiyoriy. Siz ma'lumotlarni Arduino -ga Serial orqali yuborishingiz va uni LED -nazoratchi sifatida ishlatishingiz mumkin. Oddiylik uchun men ushbu loyihada Arduino -dan foydalanmaslikni tanladim.

Raspberry Pi GPIO atigi 3V3 bo'lgani uchun, svetodiodli ma'lumot uzatish liniyasida daraja almashtirgichni kiritish yaxshi dizayn amaliyoti bo'ladi. Men hozirgacha hech qanday muammoga duch kelmaganman, lekin agar shunday qilsam, "74AHCT125 to'rt darajali siljish" kabi narsani amalga oshiraman.

Bu erda Python va Raspberry Pi bilan Neopixel -dan foydalanish bo'yicha qo'llanma mavjud.

6 -qadam: Dasturiy ta'minotga umumiy nuqtai

Dasturiy ta'minotga umumiy nuqtai
Dasturiy ta'minotga umumiy nuqtai

Barcha qismlar 3D bosib chiqarilayotganda, men butun tizimni boshqaruvchi dasturiy ta'minot ustida ishladim.

Dastur Python 3 da yozilgan va Raspberry Pi -da konsol ilovasi sifatida ishlashga mo'ljallangan. Dasturiy ta'minotning funktsional imkoniyatlarini quyidagi qismlarga bo'lish mumkin.

  • Foydalanuvchi ma'lumotlarini o'qing
  • Fayldan o'qish / faylga yozish
  • Natijalarni konsol va LEDlarga chiqaring

Men quyida har bir qadamning soddalashtirilgan tavsifini beraman.

Foydalanuvchi ma'lumotlarini o'qing

Foydalanuvchi kirishi qabul qilinganda, foydalanuvchilar so'rovini aniqlash uchun bir qator Regex ifodalari ishlatiladi. Foydalanuvchi quyidagi funktsiyalarni tanlashi mumkin:

Funktsiya Qo'ng'iroqqa misol
Barcha komponentlar ro'yxati: hamma
ID bo'yicha komponentni qidiring: ID22
Parametrlar bo'yicha komponentni qidiring: R, 22, SMD
Komponent miqdorini o'zgartiring: ID35+10
Yangi komponent qo'shing: PI89: PI90, 100 dona, C, 470u, SMD: qo'shing
Mavjud komponentni olib tashlang: ID10: rm
Sintaksis yordami: Yordam

Fayldan o'qish / faylga yozish

Komponent ma'lumotlari.txt faylida saqlanadi. Kirishga qarab, dasturiy ta'minot yoki fayldagi ma'lumotlarni qidiradi yoki faylga yangi ma'lumotlarni yozadi. Yangi ma'lumotlar komponentlarni olib tashlash, qo'shish yoki o'zgartirish paytida yoziladi.

Natijalarni chiqaring

Dastur operatsiya natijalarini konsolga chiqaradi. Agar qidiruv o'tkazilgan bo'lsa, u bir vaqtning o'zida LED ma'lumotlarini ishlab chiqaradi va chiqaradi.

7 -qadam: Ma'lumotlar tarkibi

Ma'lumotlar tarkibi
Ma'lumotlar tarkibi

. Txt faylidagi tarkibiy ma'lumotlar ma'lum bir tuzilishga amal qiladi. Faylning har bir satrida tizimda saqlanadigan bitta komponent haqida ma'lumot mavjud. Har bir komponent vergul bilan ajratilgan bir nechta parametrlardan iborat.

Ba'zi parametrlar majburiydir va dasturiy ta'minot komponentlarning joylashuvi va LED ranglarini kuzatish uchun ishlatiladi. Shuning uchun ular ma'lum bir formatga rioya qilishlari kerak.

Majburiy parametrlar va ularning formatlari:

  • ID (IDX formatida, bu erda X bir yoki bir nechta raqamdan iborat)

    ID har bir komponent uchun yagona identifikator vazifasini bajaradi. U komponentlarni qidirish va yo'q qilishda ishlatiladi

  • PI (PIX: X formatida, bu erda X - bir yoki bir nechta raqam)

    PI qaysi LEDlar qaysi komponentga mos kelishini tasvirlab beradi

  • Miqdor (Xpcs formatida, bu erda X bir yoki bir nechta raqamdan iborat)

    Miqdor har bir komponent uchun LED rangini aniqlash uchun ishlatiladi

Boshqa parametrlar faqat foydalanuvchi uchun mo'ljallangan. Dastur ular bilan o'zaro aloqada bo'lishi shart emas va shuning uchun ularning formati ixtiyoriy.

8 -qadam: O'rnatish - elektronika

O'rnatish - elektronika
O'rnatish - elektronika
O'rnatish - elektronika
O'rnatish - elektronika

O'rnatishni ikki qismga bo'lish mumkin, birinchi qismi displey va elektronika.

Men 3D bosilgan qismlarni kerakli murvat va yong'oqlar yordamida yig'dim. Keyin 3D bosilgan qo'lni 4 mm vintlar yordamida HDMI-displeyga uladim. Raspberry Pi qulay joyga biriktirilgan va simlar "5 -qadam: elektronika" dagi sxema bo'yicha ulangan.

Kabelni ekran qavsiga o'rab, kabel orqali boshqarishga urinishdi. Quvvat va ma'lumot kabellarini ekranning qolgan qismiga saqlash tizimining qolgan qismiga ulanish uchun yo'naltirish uchun simi rishtalarini ishlatardim.

9 -qadam: O'rnatish - saqlash tizimi

O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi
O'rnatish - saqlash tizimi

O'rnatishning ikkinchi qismi - bu saqlash tizimining o'zi.

Vintli teshiklardan foydalanib, men alohida tortma moslamalarini orqa panel vazifasini bajaradigan bo'yalgan kontrplakga yopishtirdim.

Shundan so'ng, men har bir qatorga LED chiziqlarini biriktirdim va barcha qatorlarni bitta LED tasmasiga birlashtirdim. LED chizig'ining har bir qatori va yo'nalishining konfiguratsiyasi muhim emas, chunki uni dasturiy ta'minotda qayta sozlash mumkin.

O'rnatishni tugatish uchun men displey qo'lini kontrplak taxtasi yonida elektronika bilan biriktirdim.

Men barcha komponentlarni yangi uylariga saralab,.txt fayllar bazasiga qo'shdim.

10 -qadam: xulosa

Xulosa
Xulosa
Xulosa
Xulosa
Xulosa
Xulosa

Loyiha tugadi va men uning qanday amalga oshganidan juda mamnunman!

Men yangi saqlash tizimidan bir necha kun foydalanishga ulgurdim va u juda yaxshi ishladi. Bu tizim mening ish oqimimni kelajakda qanday o'zgartirganini ko'rib hayajonlanaman, chunki bu butun loyihaning maqsadi edi.

Umid qilamanki, sizga bu loyiha yoqdi va agar sizda biron bir fikr, sharh yoki savol bo'lsa, ularni quyida qoldiring.

Tavsiya: