جدول المحتويات:

نظام تخزين المكونات: 10 خطوات (بالصور)
نظام تخزين المكونات: 10 خطوات (بالصور)

فيديو: نظام تخزين المكونات: 10 خطوات (بالصور)

فيديو: نظام تخزين المكونات: 10 خطوات (بالصور)
فيديو: مكونات الكمبيوتر من الداخل ووظائفها 🧐 شرح عملي للمبتدئين. 2024, ديسمبر
Anonim
نظام تخزين المكونات
نظام تخزين المكونات

يعد Ultimate Component Storage System حلاً فريدًا لتنظيم وتخزين المكونات الإلكترونية. يسمح البرنامج المخصص بفهرسة المكونات باستخدام وظيفة بحث مضمنة للوصول السريع إلى مكونات محددة. تُستخدم مصابيح LED فوق كل درج للإشارة إلى موقع وحالة الفرد أو مجموعة المكونات.

اللوازم

شكرًا لـ DFRobot على توفير الأجزاء التالية لهذا المشروع!

2 x 5V @ 3A USB امدادات الطاقة

متاح هنا (رابط الإحالة):

1 x Raspberry Pi 4 موديل ب

متاح هنا (رابط الإحالة):

1 x 8.9 "1920x1200 IPS شاشة تعمل باللمس

متاح هنا (رابط الإحالة):

1 × WS2812b LED-Strip ، 30LED / م

متاح على موقع ئي باي

يمكن العثور على جميع ملفات هذا المشروع على GitHub الخاص بي:

الخطوة 1: الفكرة

الفكرة!
الفكرة!

خلفية

لطالما واجهت مشكلة في تنظيم وتخزين مكوناتي. توضح الصورة أعلاه حالة حل تخزين المكونات الحالي. في حين أن وجود مكونات في صناديق متعددة في جميع أنحاء ورشة العمل قد يكون مفيدًا للبعض ، فقد كان دائمًا عدم كفاءة في سير العمل الخاص بي. لذلك ، توصلت إلى مشروع لحل هذه المشكلة.

الفكرة

كانت الفكرة هي تخزين جميع المكونات في نفس نظام التخزين. سيتألف نظام التخزين من العديد من الأدراج وسيكون لكل درج مصباح LED مركب فوقه.

سيستخدم المستخدم برنامجًا مخصصًا للتفاعل مع نظام التخزين. عندما يجري المستخدم بحثًا عن مكون ، يعرض النظام أهم نتائج البحث على الشاشة. في الوقت نفسه ، يتم تشغيل مصابيح LED المقابلة للبحث ، مما يشير إلى موقع المكون داخل نظام التخزين.

إلى جانب عرض الموقع ، يشير لون مصابيح LED إلى حالة (أي الكمية) لكل مكون أيضًا.

المتطلبات

تم تقسيم الفكرة إلى المتطلبات التالية التي يهدف هذا المشروع إلى تلبيتها:

إنشاء نظام تخزين واسترجاع بسيط للمكونات الصغيرة والمتوسطة الحجم

قم بإنشاء واجهة برمجية للفهرسة والبحث من خلال المكونات

استخدم RGB LEDs للإشارة إلى موقع وحالة كل مكون

الخطوة الثانية: التصميم - نظام التخزين

التصميم - نظام التخزين
التصميم - نظام التخزين
التصميم - نظام التخزين
التصميم - نظام التخزين
التصميم - نظام التخزين
التصميم - نظام التخزين

لقد بدأت بنمذجة ثلاثية الأبعاد لنظام التخزين نفسه.

لقد صممت نظام التخزين على شكل مصفوفة من الأدراج ثلاثية الأبعاد بأحجام مختلفة. الأدراج موضوعة في شبكة 35 × 12 بإجمالي 310 أدراج. هذه مساحة كافية لتخزين جميع مكوناتي الحالية وترك مساحة للتوسع في المستقبل.

تم تصميم التباعد بين الأدراج في الاتجاه الرأسي لاستيعاب شريط LED عريض 10 مم فوق كل صف من الأدراج. تم تصميم التباعد في الاتجاه الأفقي لتساوي تباعد LED على شريط LED. كنت أحسب أن استخدام شريط LED 30LED / متر من شأنه أن يوفر حجمًا مناسبًا لكل درج.

تم تصميم جميع الأدراج وحاملات الأدراج ليتم طباعتها بشكل منفصل وتجميعها في التكوين المطلوب. الأدراج متوفرة بأحجام مختلفة وأي تكوين للأدراج سيعمل مع البرنامج بعد بعض التغييرات في الكود.

لتقليل استهلاك الفتيل ووقت الطباعة ، تم الحفاظ على سمك الجدار على جميع الأجزاء المطبوعة ثلاثية الأبعاد عند الحد الأدنى. بمجرد تجميعها ، تصبح وحدة التخزين الإجمالية قوية بما يكفي لاستيعاب معظم المكونات خفيفة الوزن ومتوسطة الوزن.

الخطوة 3: التصميم - عرض الذراع

التصميم - ذراع العرض
التصميم - ذراع العرض
التصميم - ذراع العرض
التصميم - ذراع العرض
التصميم - ذراع العرض
التصميم - ذراع العرض

نظرًا لأن نظام التخزين يتطلب شاشة HDMI لواجهة المستخدم ، فقد قررت تصميم ذراع قابل للتعديل لتركيب الشاشة والإلكترونيات عليها.

تم تصميم جميع أجزاء ذراع العرض ليتم طباعتها ثلاثية الأبعاد وتجميعها بمسامير وصواميل M8. تم تصميم ذراع العرض ليحمل شاشة HDMI و Raspberry Pi وجميع الأسلاك.

استندت أجزاء من ذراع العرض إلى هذا التصميم من Thingiverse.

الخطوة 4: الطباعة ثلاثية الأبعاد والرسم

3D- الطباعة والرسم
3D- الطباعة والرسم
3D- الطباعة والرسم
3D- الطباعة والرسم
3D- الطباعة والرسم
3D- الطباعة والرسم

بعد النمذجة ثلاثية الأبعاد لجميع الأجزاء ، حان الوقت لبدء طباعة مئات الأدراج.

لقد استخدمت Prusa MK2S الخاص بي لجميع الأجزاء المطبوعة ثلاثية الأبعاد لهذا المشروع. لقد استخدمت خيوط PLA بارتفاع 0.2 مم وطبقة حشو 0٪.

مواد الدعم مطلوبة فقط في حامل الدرج متوسط الحجم وحامل الدرج الكبير الحجم. لقد حددت التفاوت المثالي بين الأدراج وحوامل الأدراج ليكون 0.2 مم. قد تعتمد المسافة المقطوعة على الطابعة ثلاثية الأبعاد بشكل كبير.

بعد طباعة جميع الأجزاء المنفصلة ، استخدمت superglue لتجميع جميع حوامل الأدراج معًا في شبكة 35 × 12.

لم يكن لدي ما يكفي من خيوط من نفس اللون ، لذلك قررت إضافة طبقة من الطلاء الأسود لمنح نظام التخزين مظهرًا متجانسًا.

كمرجع ، يتطلب نظام التخزين الكامل 35 × 12 مع 310 درجًا حوالي 5 كجم من الفتيل للطباعة.

الخطوة الخامسة: الإلكترونيات

الإلكترونيات
الإلكترونيات
الإلكترونيات
الإلكترونيات

بالنسبة للإلكترونيات ، كان اختيار الأجهزة واضحًا إلى حد ما.

اخترت Raspberry Pi 4 Model B المتصل بشاشة HDMI كواجهة مستخدم. يمكنك أيضًا استخدام Raspberry Pi بدون رأس والواجهة مع النظام عبر SSH. قد تعمل الإصدارات الأقدم من Raspberry Pi أيضًا إذا كانت قادرة على تشغيل Python 3. مكتبة Neopixel المستخدمة في هذا المشروع غير مدعومة في Python 2.

بالنسبة لمصابيح LED ، اخترت 30LED / m ، WS2812b ، شريط LED بدون سبب معين. ستعمل شرائط LED الأخرى أيضًا إذا كانت مدعومة من مكتبة Neopixel.

بالنسبة للأسلاك ، يتم استخدام ثلاثة كبلات USB-C لتوفير الطاقة لـ Raspberry Pi والشاشة ومصابيح LED. يستخدم كابل HDMI لتوصيل الشاشة و Raspberry Pi.

كبل Arduino Uno و USB الموضحان في الصورة اختياريان. يمكنك إرسال البيانات إلى Arduino عبر Serial واستخدامها كوحدة تحكم LED. من أجل البساطة ، اخترت عدم استخدام Arduino في هذا المشروع.

تتمثل إحدى ممارسات التصميم الجيدة في تضمين محول مستوى على خط البيانات لمصابيح LED نظرًا لأن Raspberry Pi GPIO هو 3V3 فقط. لم أواجه أي مشاكل حتى الآن ولكن إذا فعلت ذلك ، فسأقوم بتنفيذ شيء مثل "74AHCT125 رباعي المستوى شيفتر".

يوجد هنا دليل لاستخدام Neopixel مع Python و Raspberry Pi.

الخطوة 6: نظرة عامة على البرنامج

نظرة عامة على البرنامج
نظرة عامة على البرنامج

بينما كانت تتم طباعة جميع الأجزاء ثلاثية الأبعاد ، عملت على البرنامج الذي يتحكم في النظام بأكمله.

تمت كتابة البرنامج بلغة Python 3 ويهدف إلى تشغيله كتطبيق وحدة تحكم على Raspberry Pi. يمكن تقسيم وظائف البرنامج إلى الأجزاء التالية:

  • قراءة مدخلات المستخدم
  • اقرأ من ملف / اكتب إلى ملف
  • إخراج النتائج إلى وحدة التحكم ومصابيح LED

سأقدم وصفًا مبسطًا لكل خطوة أدناه.

قراءة مدخلات المستخدم

عند تلقي إدخال من المستخدم ، يتم استخدام سلسلة من تعبيرات Regex لتحديد طلب المستخدمين. للمستخدم الوظائف التالية للاختيار من بينها:

وظيفة مثال على المكالمة
قائمة بجميع المكونات: الكل
البحث عن مكون عن طريق المعرف: ID22
البحث عن مكون من خلال المعلمات: R ، 22 ، SMD
تغيير كمية المكون: ID35 + 10
أضف مكونًا جديدًا: PI89: PI90، 100pcs، C، 470u، SMD: add
إزالة مكون موجود: ID10: جمهورية مقدونيا
مساعدة النحو: يساعد

اقرأ من ملف / اكتب إلى ملف

يتم تخزين بيانات المكون في ملف.txt. اعتمادًا على الإدخال ، يبحث البرنامج عن البيانات الموجودة في الملف أو يكتب بيانات جديدة في الملف. تتم كتابة البيانات الجديدة عند إزالة أو إضافة أو تعديل المكونات.

إخراج النتائج

يقوم البرنامج بإخراج النتائج من العملية إلى وحدة التحكم. إذا تم إجراء بحث ، فإنه يقوم أيضًا بتوليد وإخراج بيانات LED في نفس الوقت.

الخطوة 7: هيكل البيانات

هيكل البيانات
هيكل البيانات

تتبع بيانات المكون في ملف.txt بنية محددة. يحتوي كل صف من الملف على معلومات حول مكون واحد يتم تخزينه داخل النظام. يتكون كل مكون من عدة معاملات مفصولة بفاصلة.

بعض المعلمات إلزامية ويستخدمها البرنامج لتتبع موقع المكون وألوان LED. لذلك يجب أن تتبع شكلاً محددًا.

المعلمات الإلزامية وتنسيقاتها هي:

  • المعرّف (بتنسيق IDX حيث يمثل X رقمًا واحدًا أو أكثر)

    المعرف بمثابة معرف فريد لكل مكون. يتم استخدامه عند البحث وحذف المكونات

  • PI (بالتنسيق PIX: X حيث X عبارة عن رقم واحد أو أكثر)

    يصف PI أي مصابيح LED تتوافق مع أي مكون

  • الكمية (بتنسيق Xpcs حيث X هي رقم واحد أو أكثر)

    يتم استخدام الكمية لتحديد لون LED لكل مكون

المعلمات الأخرى مخصصة ببساطة للمستخدم. لا يحتاج البرنامج إلى التداخل مع هؤلاء ، وبالتالي فإن تنسيقهم اختياري.

الخطوة الثامنة: التجميع - الإلكترونيات

تجميع - إلكترونيات
تجميع - إلكترونيات
تجميع - إلكترونيات
تجميع - إلكترونيات

يمكن تقسيم التجميع إلى جزأين ، الجزء الأول هو ذراع الشاشة والإلكترونيات.

قمت بتجميع الأجزاء المطبوعة ثلاثية الأبعاد باستخدام البراغي والصواميل المطلوبة. ثم قمت بعد ذلك بتوصيل الذراع المطبوعة ثلاثية الأبعاد بشاشة HDMI باستخدام مسامير 4 مم. تم توصيل Raspberry Pi في مكان مناسب وتم توصيل الأسلاك وفقًا للرسم التخطيطي في "الخطوة 5: الإلكترونيات".

جرت محاولة لإدارة الأسلاك عن طريق لفها حول حامل الشاشة. لقد استخدمت روابط الكابلات لتوجيه كبلات الطاقة والبيانات على طول ذراع العرض للاتصال ببقية نظام التخزين.

الخطوة 9: التجميع - نظام التخزين

التجميع - نظام التخزين
التجميع - نظام التخزين
التجميع - نظام التخزين
التجميع - نظام التخزين
التجميع - نظام التخزين
التجميع - نظام التخزين
التجميع - نظام التخزين
التجميع - نظام التخزين

الجزء الثاني من التجميع هو نظام التخزين نفسه.

باستخدام فتحات المسامير المضمنة ، قمت بإرفاق جميع مجموعات الأدراج المنفصلة بقطعة من الخشب الرقائقي المطلي الذي يعمل كلوح خلفي.

بعد ذلك ، قمت بتوصيل شرائط LED في كل صف وربطت جميع الصفوف معًا في شريط LED واحد. لا يهم تكوين كل صف واتجاه لشريط LED لأنه يمكن إعادة تكوينه في البرنامج.

لإنهاء التجميع ، قمت بتوصيل ذراع العرض بالإلكترونيات على جانب اللوحة الخلفية للخشب الرقائقي.

لقد قمت بفرز جميع المكونات في منزلها الجديد وإضافتها إلى قاعدة بيانات ملف.txt.

الخطوة 10: الاستنتاج

الاستنتاج
الاستنتاج
الاستنتاج
الاستنتاج
الاستنتاج
الاستنتاج

انتهى المشروع الآن وأنا سعيد حقًا بكيفية ظهوره!

لقد كان لدي الوقت فقط لاستخدام نظام التخزين الجديد الخاص بي لبضعة أيام وكان يعمل بشكل رائع. أنا متحمس لرؤية كيف يغير هذا النظام سير العمل الخاص بي في المستقبل لأن هذا كان الغرض من هذا المشروع بأكمله.

أتمنى أن تكون قد استمتعت بهذا المشروع وإذا كانت لديك أي أفكار أو تعليقات أو أسئلة ، فيرجى تركها أدناه.

موصى به: