Мазмұны:

Компоненттерді сақтау жүйесі: 10 қадам (суреттермен)
Компоненттерді сақтау жүйесі: 10 қадам (суреттермен)

Бейне: Компоненттерді сақтау жүйесі: 10 қадам (суреттермен)

Бейне: Компоненттерді сақтау жүйесі: 10 қадам (суреттермен)
Бейне: Как ускорить Windows 10, оптимизировать для игр, повысить производительность компьютера 2024, Шілде
Anonim
Компоненттерді сақтау жүйесі
Компоненттерді сақтау жүйесі

Ultimate Component Storage System - электронды компоненттерді ұйымдастыруға және сақтауға арналған бірегей шешім. Арнайы бағдарламалық қамтамасыз ету белгілі бір компоненттерге жылдам қол жеткізу үшін кіріктірілген іздеу функциясы бар компоненттерді каталогтауға мүмкіндік береді. Әр тартпаның үстіндегі светодиодтар жеке немесе топтың компоненттерінің орналасуы мен күйін көрсету үшін қолданылады.

Жабдықтар

Бұл жобаның келесі бөліктерін ұсынғаны үшін DFRobot -қа рахмет!

2 x 5V @ 3A USB қуат көзі

Мұнда қол жетімді (серіктестік сілтеме):

1 x Raspberry Pi 4 моделі B

Мұнда қол жетімді (серіктестік сілтеме):

1 x 8,9 дюйм 1920x1200 IPS сенсорлық дисплейі

Мұнда қол жетімді (серіктестік сілтеме):

1 x WS2812b жарық диодты жолағы, 30 LED/м

Ebay -де қол жетімді

Бұл жобаның барлық файлдарын менің GitHub сайтынан табуға болады:

1 -қадам: Идея

Ой!
Ой!

Фон

Мен әрқашан компоненттерімді ұйымдастыруда және сақтауда қиындықтарға тап болдым. Жоғарыдағы фотосуретте менің қазіргі компоненттерді сақтау шешімінің күйі көрсетілген. Бүкіл шеберханада бірнеше қорапта компоненттер болуы кейбіреулер үшін жұмыс істеуі мүмкін, бірақ бұл менің жеке жұмысымның тиімсіздігі болды. Сонымен, мен бұл мәселені шешетін жоба ойлап таптым.

Ой

Идея барлық компоненттерді бір сақтау жүйесінде сақтау болды. Сақтау жүйесі көптеген тартпалардан тұрады және әр тартпаның үстіне жарық диоды орнатылады.

Пайдаланушы сақтау жүйесімен өзара әрекеттесу үшін реттелетін бағдарламалық жасақтаманы қолданады. Пайдаланушы компоненттерді іздеуді жүргізгенде, жүйе іздеудің жоғарғы нәтижелерін экранда көрсетеді. Сонымен қатар іздеуге сәйкес келетін жарық диодтары қосылады, осылайша сақтау жүйесінің құрамдас бөлігін көрсетеді.

Орналасқан жерді көрсетуден басқа, жарық диодтардың түсі әр компоненттің күйін (яғни санын) көрсетеді.

Талаптар

Идея келесі талаптарға бөлінді, олар осы жобаны қанағаттандыруға бағытталған:

Шағын және орташа құрамдас бөліктерді сақтау мен алудың қарапайым жүйесін жасаңыз

Компоненттерді каталогтауға және іздеуге арналған бағдарламалық интерфейсті жасаңыз

Әр компоненттің орналасуы мен күйін көрсету үшін RGB светодиодтарын қолданыңыз

2 -қадам: Дизайн - сақтау жүйесі

Дизайн - сақтау жүйесі
Дизайн - сақтау жүйесі
Дизайн - сақтау жүйесі
Дизайн - сақтау жүйесі
Дизайн - сақтау жүйесі
Дизайн - сақтау жүйесі

Мен сақтау жүйесін 3D модельдеу арқылы бастадым.

Мен сақтау жүйесін әр түрлі өлшемдегі 3D басып шығарылатын жәшіктер матрицасы түрінде жасадым. Тартпалар 35 × 12 торға орналастырылған, барлығы 310 тартпаға арналған. Бұл менің барлық компоненттерімді сақтауға және болашақта кеңейтуге бос орын қалдыруға жеткілікті орын.

Тік бағытта тартпалар арасындағы аралық жәшіктердің әр қатарының үстінде ені 10 мм болатын жарықдиодты жолақты орналастыруға арналған. Көлденең бағыттағы аралық диодты жолақтағы жарық диодты интервалға теңестіруге арналған. Мен 30LED/метр жарық диодты жолақты пайдалану әр жәшіктің мөлшеріне сәйкес келетінін түсіндім.

Барлық тартпалар мен тартпалардың ұстағыштары бөлек басып шығаруға және қажетті конфигурацияға жиналуға арналған. Тартпалар әр түрлі мөлшерде болады және тартпалардың кез келген конфигурациясы код өзгергеннен кейін бағдарламалық жасақтамамен жұмыс істейді.

Жіптерді тұтынуды және басып шығару уақытын азайту үшін, 3D басып шығарылған барлық бөліктердегі қабырға қалыңдығы минималды болды. Жиналғаннан кейін жалпы сақтау блогы жеңіл және орташа салмақты компоненттерді орналастыруға жеткілікті берік.

3 -қадам: Дизайн - дисплей тұтқасы

Дизайн - дисплей тұтқасы
Дизайн - дисплей тұтқасы
Дизайн - дисплей тұтқасы
Дизайн - дисплей тұтқасы
Дизайн - дисплей тұтқасы
Дизайн - дисплей тұтқасы

Сақтау жүйесінде пайдаланушы интерфейсі үшін HDMI дисплейі қажет болғандықтан, мен дисплей мен электрониканы орнататын реттелетін білікті құрастыруды шештім.

Дисплей тұтқасының барлық бөліктері 3D басып шығаруға арналған және M8 болттар мен гайкалармен құрастырылған. Дисплей тұтқасы HDMI дисплейін, Raspberry Pi мен барлық сымдарды ұстауға арналған.

Дисплей тұтқасының бөліктері Thingiverse компаниясының осы дизайнына негізделген.

4-қадам: 3D-басып шығару және кескіндеме

3D-басып шығару және кескіндеме
3D-басып шығару және кескіндеме
3D-басып шығару және кескіндеме
3D-басып шығару және кескіндеме
3D-басып шығару және кескіндеме
3D-басып шығару және кескіндеме

Барлық бөлшектерді 3D модельдеуден кейін жүздеген жәшіктерді басып шығаруды бастау керек болды.

Мен Prusa MK2S-ті осы жобаның барлық 3D-басып шығарылған бөліктері үшін қолдандым. Мен 0,2 мм қабат биіктігі мен 0% толтырумен PLA жіпшесін қолдандым.

Қолдау материалы орташа тартпаның ұстағышында және үлкен тартпаның ұстағышында ғана қажет болды. Мен тартпалар мен тартпалардың ұстағыштары арасындағы мінсіз төзімділікті 0,2 мм деп анықтадым. Сіздің жүгірісіңіз 3D-принтерге байланысты болуы мүмкін.

Бөлшектердің барлығын басып шығарғаннан кейін, мен барлық тартпаның ұстағыштарын 35 × 12 торға жинау үшін суперглюгті қолдандым.

Менде бірдей түсті жіп жетіспеді, сондықтан мен сақтау жүйесіне біркелкі көрініс беру үшін қара бояуды қосуды шештім.

Анықтама үшін 310 жәшігі бар менің барлық 35 × 12 сақтау жүйемді басып шығару үшін шамамен 5 кг жіп қажет болды.

5 -қадам: Электроника

Электроника
Электроника
Электроника
Электроника

Электроникаға келетін болсақ, жабдықты таңдау өте қарапайым болды.

Мен пайдаланушы интерфейсі ретінде HDMI дисплейіне қосылған Raspberry Pi 4 Model B таңдадым. Сіз сондай -ақ SSH арқылы жүйесіз бассыз Raspberry Pi мен интерфейсті қолдана аласыз. Raspberry Pi -дің ескі нұсқалары, егер олар Python 3 -ті қолдана алатын болса, жұмыс істей алады. Бұл жобада пайдаланылған Neopixel кітапханасы Python 2 -де қолдау көрсетілмейді.

Жарық диодтары үшін мен 30LED/m, WS2812b, LED-жолағын ешқандай себепсіз таңдадым. Басқа светодиодты жолақтар Neopixel кітапханасы қолдау көрсетсе жұмыс істейді.

Сымдарға келетін болсақ, Raspberry Pi, дисплей мен жарық диодты қуатпен қамтамасыз ету үшін үш USB-C кабелі қолданылады. HDMI кабелі дисплей мен Raspberry Pi қосылу үшін қолданылады.

Фотосуретте көрсетілген Arduino Uno және USB кабелі міндетті емес. Сіз деректерді Arduino -ға Serial арқылы жібере аласыз және оны жарықдиодты контроллер ретінде пайдалана аласыз. Қарапайымдылық үшін мен бұл жобада Arduino қолданбауды шештім.

Жарықдиодты деректер желісінде деңгей ауыстырғышты қосу жақсы дизайн тәжірибесі болады, себебі Raspberry Pi GPIO тек 3V3. Менде осы уақытқа дейін ешқандай проблемалар болған жоқ, бірақ егер солай болса, мен «74AHCT125 төрт деңгейлі ауысым» сияқты нәрсені қолданамын.

Python және Raspberry Pi -мен Neopixel пайдалану бойынша нұсқаулық бар.

6 -қадам: Бағдарламалық қамтамасыз етуге шолу

Бағдарламалық қамтамасыз етуге шолу
Бағдарламалық қамтамасыз етуге шолу

Барлық бөліктер 3D басып шығарылған кезде мен бүкіл жүйені басқаратын бағдарламалық жасақтамада жұмыс жасадым.

Бағдарламалық қамтамасыз ету Python 3 -те жазылған және Raspberry Pi -де консольдық қосымша ретінде жұмыс істеуге арналған. Бағдарламалық қамтамасыз етудің функционалдығын келесі бөліктерге бөлуге болады:

  • Қолданушының кірісін оқу
  • Файлдан оқу / файлға жазу
  • Нәтижелерді консоль мен светодиодтарға шығарыңыз

Мен төменде әр қадамның жеңілдетілген сипаттамасын беремін.

Қолданушының кірісін оқу

Пайдаланушы енгізген кезде, Regex өрнектерінің тізбегі пайдаланушылардың сұранысын анықтау үшін қолданылады. Пайдаланушының келесі функциялары бар:

Функция Қоңырау мысалы
Барлық компоненттерді тізімдеу: барлық
Идентификатор бойынша компонентті іздеңіз: ID22
Параметрлер бойынша компонентті іздеңіз: R, 22, SMD
Компоненттің санын өзгерту: ID35+10
Жаңа компонент қосыңыз: PI89: PI90, 100 дана, C, 470u, SMD: қосу
Бар компонентті жойыңыз: ID10: rm
Синтаксистік көмек: Көмектесіңдер

Файлдан оқу / файлға жазу

Компонент туралы деректер.txt файлында сақталады. Енгізуге байланысты бағдарламалық қамтамасыз ету не файлдағы деректерді іздейді, не файлға жаңа деректер жазады. Жаңа деректер компоненттерді жою, қосу немесе өзгерту кезінде жазылады.

Нәтижелерді шығарыңыз

Бағдарламалық жасақтама консольге операциядан алынған нәтижелерді шығарады. Егер іздеу жүргізілген болса, ол сонымен қатар жарықдиодты деректерді шығарады және шығарады.

7 -қадам: мәліметтер құрылымы

Мәліметтер құрылымы
Мәліметтер құрылымы

. Txt файлындағы құрамдас деректер белгілі бір құрылымға сәйкес келеді. Файлдың әр жолында жүйеде сақталатын бір компонент туралы ақпарат бар. Әрбір компонент үтірмен бөлінген бірнеше параметрлерден тұрады.

Кейбір параметрлер міндетті болып табылады және бағдарламалық қамтамасыз етуде компоненттердің орналасуын және жарықдиодты түстерді бақылау үшін қолданылады. Сондықтан олар белгілі бір форматты ұстануы керек.

Міндетті параметрлер мен олардың форматтары:

  • ID (IDX форматында, X - бұл бір немесе бірнеше цифр)

    Идентификатор әр компонент үшін бірегей идентификатор ретінде әрекет етеді. Ол компоненттерді іздеу және жою кезінде қолданылады

  • PI (PIX: X форматында, мұнда X - бір немесе бірнеше цифр)

    PI қандай светодиодтар қандай компонентке сәйкес келетінін сипаттайды

  • Саны (Xpcs форматында, онда X - бір немесе бірнеше цифр)

    Шам әр компонент үшін жарықдиодты түсті анықтау үшін қолданылады

Басқа параметрлер тек пайдаланушыға арналған. Бағдарламалық жасақтама олармен өзара әрекеттесудің қажеті жоқ, сондықтан олардың форматы міндетті емес.

8 -қадам: құрастыру - электроника

Құрастыру - электроника
Құрастыру - электроника
Құрастыру - электроника
Құрастыру - электроника

Құрастыруды екіге бөлуге болады, бірінші бөлігі дисплей тұтқасы мен электроника.

Мен 3D басылған бөлшектерді қажетті болттар мен гайкалар көмегімен жинадым. Содан кейін мен 3D-басып шығарылған қолды HDMI-дисплейге 4 мм бұрандалармен тіркедім. Raspberry Pi ыңғайлы жерге бекітілген және сымдар «5 -қадам: электроника» диаграммасына сәйкес қосылған.

Сымды дисплей кронштейнінің айналасында орау арқылы кабельмен басқаруға әрекет жасалды. Мен сақтау жүйесінің қалған бөлігіне қосылу үшін дисплей тұтқасы бойындағы қуат және деректер кабельдерін бағыттау үшін кабельдік байланыстарды қолдандым.

9 -қадам: Жинау - сақтау жүйесі

Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі
Құрастыру - сақтау жүйесі

Жинақтың екінші бөлігі - сақтау жүйесінің өзі.

Бұрандалы тесіктерді қолдана отырып, мен тартпаның барлық бөлек қондырмаларын артқы тақтаның рөлін атқаратын боялған фанераға жаптым.

Осыдан кейін мен әр жолға жарық диодты жолақтарды бекітіп, барлық жолдарды бір жарық диодты жолаққа біріктірдім. Жарық диодты жолақтың әр жолы мен бағытының конфигурациясы маңызды емес, себебі оны бағдарламалық жасақтамада қайта конфигурациялауға болады.

Жинауды аяқтау үшін мен фанера тақтасының бүйірінде электроника бар дисплей тұтқасын қостым.

Мен барлық компоненттерді жаңа үйге сұрыптап,.txt файлдар базасына қостым.

10 -қадам: Қорытынды

Қорытынды
Қорытынды
Қорытынды
Қорытынды
Қорытынды
Қорытынды

Жоба қазір аяқталды, мен оның қалай болғанына өте қуаныштымын!

Мен жаңа сақтау жүйесін бірнеше күн ғана қолданып үлгердім және ол жақсы жұмыс істеді. Мен болашақта бұл жүйенің жұмыс процесін қалай өзгертетінін көргеніме қуаныштымын, өйткені бұл бүкіл жобаның мақсаты болды.

Сізге бұл жоба ұнады деп үміттенемін, егер сізде ойлар, түсініктемелер немесе сұрақтар болса, оларды төменде қалдырыңыз.

Ұсынылған: