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

وحدة تحكم Arduino للتصوير الآلي للمنتجات بزاوية 360 درجة: 5 خطوات (بالصور)
وحدة تحكم Arduino للتصوير الآلي للمنتجات بزاوية 360 درجة: 5 خطوات (بالصور)

فيديو: وحدة تحكم Arduino للتصوير الآلي للمنتجات بزاوية 360 درجة: 5 خطوات (بالصور)

فيديو: وحدة تحكم Arduino للتصوير الآلي للمنتجات بزاوية 360 درجة: 5 خطوات (بالصور)
فيديو: Sérigraphie - Spide la Pub à Perpignan dans les Pyrénées Orientales, 66 2024, يوليو
Anonim
Image
Image
اجمع الأجزاء والملفات
اجمع الأجزاء والملفات

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

لقد أعددت نسختين من وحدة التحكم:

  • إصدار أساسي يتم تشغيله باستخدام زر ضغط بسيط وحالة يقودها.
  • إصدار متقدم يستخدم 16x2 LCD + درع لوحة المفاتيح وبالتالي يحتوي على قائمة لتغيير المتغيرات "أثناء التنقل" وليس فقط في رمز المصدر.

ماذا تفعل وحدة التحكم؟

إذا قمت بتشغيل "التقاط الصور" بالضغط على الزر ، فإن القرص الدوار يقوم بعمل ثورة كاملة ، مقسمة إلى عدد محدد مسبقًا من الخطوات. بعد كل خطوة دوران ، تقوم وحدة التحكم بعمل استراحة قصيرة ثم تقوم بتشغيل الكاميرا. ستكون قادرًا على تغيير متغيرات سرعة الدوران ووقت التأخير وعدد الخطوات في الكود المصدري (لإصدار وحدة التحكم البسيطة) أو في قائمة العرض (إصدار وحدة التحكم المتقدمة).

الخطوة 1: جمع الأجزاء والملفات

اجمع الأجزاء والملفات
اجمع الأجزاء والملفات
اجمع الأجزاء والملفات
اجمع الأجزاء والملفات

القطع:

  • Arduino Uno (أو ما شابه)
  • اللوح (يناسب نصف حجم اللوح)
  • Easydriver Stepper Motor Driver
  • 2X Heatsink لـ Easydriver (اختياري ولكن يوصى به بشدة) https://www.sparkfun.com/products/11510 ستحتاج إلى شريط حراري لإصلاح غرفة التبريد على الشريحة. إذا طلبت غرفة التبريد الخاصة بك ، فتأكد من أن الشريط النهائي مضمن أو يمكن طلبه بشكل منفصل.
  • شاشة LED تعمل بالأشعة تحت الحمراء 950 نانومتر (لتشغيل كاميرا الأشعة تحت الحمراء)
  • مقاوم 220 أوم (مقاومات أولية للأشعة تحت الحمراء LED)
  • عنصر صوت بيزو (اختياري ، إذا كنت تريد الحصول على أصوات ردود فعل)
  • بعض الأسلاك الطائر
  • مزود الطاقة الخارجي لـ Steppermotor لقد قمت بتجارب جيدة مع محول طاقة 12 فولت 1 أمبير لقيادة 1A NEMA 17 Steppermotor من Trinamic. كان لدي أيضًا محول طاقة 24 فولت 3 أمبير قيد الاستخدام. تدعم لوحة Easydriver ما يصل إلى 30 فولت و 750 مللي أمبير لكل مرحلة. المزيد عن مواصفات easydriver هنا:
  • مقبس لإمداد الطاقة الخارجي لمحرك السائر
  • ثنائي القطب NEMA 17 محرك متدرج وقرص دوار على سبيل المثال رابط FluxGarage "القرص الدوار الآلي مع محرك متدرج":

إضافة لوحدة التحكم الأساسية في الضغط …

  • اضغط الزر
  • مقاوم 10 كيلو اوم (للزر الانضغاطي)
  • LED (حالة بقيادة)
  • مقاوم 220 أوم (مقاومات أولية للحالة-LED)

… أو إضافة لوحدة تحكم متقدمة مع قائمة العرض + لوحة المفاتيح:

مجموعة Adafruit LCD Shield Kit مع عرض أحرف 16 × 2 ، على سبيل المثال

قم بتنزيل رموز Arduino ومخططات Fritzing لوحدة التحكم الأساسية والمتقدمة:

إذا كنت ترغب في فتح مستند Fritzing لوحدة التحكم المتقدمة ، فتأكد من تنزيل عناصر adafruit وتثبيتها:

يرجى ملاحظة ما يلي: في الصور أستخدم FluxGarage „Tinkerer's Baseplate“و FluxGarage “اللوحة الأمامية لشاشة LCD مقاس 16 × 2 + لوحة المفاتيح درع”. يعد استخدام هذه العناصر اختياريًا ، إذا كنت تريد أيضًا استخدامها ، فاضغط على الروابط الخاصة بالتعليمات المتعلقة.

الخطوة 2: تجميع الدائرة

تجميع الدائرة
تجميع الدائرة
تجميع الدائرة
تجميع الدائرة
تجميع الدائرة
تجميع الدائرة

لوحة Solder Easydriver لاستخدام اللوح: من أجل استخدام easydriver على لوح التجارب ، تحتاج إلى لحام بعض رؤوس الدبوس الذكور على السبورة. أفضل طريقة هي وضع رؤوس الدبوس المذكرة في اللوح ، ثم وضع المحرك السهل في الأعلى ثم لحام المسامير.

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

تحقق مرة أخرى مما إذا كان كل شيء متصل على النحو التالي:

  • Arduino digital pin 02 = dir pin الخاص بـ Easydriver
  • Arduino digital pin 03 = دبوس الخطوة من Easydriver
  • Arduino digital pin 09 = إخراج بيزو
  • Arduino digital pin 12 = خرج لمصباح LED بالأشعة تحت الحمراء (ضع 220 أوم المقاوم المسبق قبل الصمام)

+ لوحدة التحكم الأساسية:

  • Arduino digital pin 04 = إدخال للزر الانضغاطي (ضع المقاوم 10 كيلو أوم قبل زر التأريض الأرضي)
  • Arduino digital pin 13 = خرج لمؤشر الحالة (ضع 220 أوم المقاوم المسبق قبل الصمام)

+ للتحكم المتقدم:

قم بتجميع شاشة العرض + واقي لوحة المفاتيح على اردوينو ، في الواقع يتم استخدام تلك المسامير: دبوس Arduino التناظري A4 + A5 و 5 V + GND

قم بتوصيل محرك متدرج: توصيل محركات السائر ثنائية القطب (4 أسلاك) يتعلق بتوصيل الملفين (A و B) للمحرك بالمسامير اليمنى للوحة easydriver. ألقِ نظرة على الرسم في منتصف هذه الصفحة وعلى مواصفات محرك السائر المحدد الخاص بك:

يمكنك أيضًا العثور على مزيد من المعلومات حول توصيل محرك السائر الخاص بك و Easydriver هنا:

قم بتوصيل مصدر طاقة خارجي تحتوي لوحة Easydriver على دبابيس طاقة منفصلة في الجانب الأيمن العلوي (M + والأرضي). بينما تكتسب اللوحة نفسها الطاقة من Arduino ، فإن الإدخال المنفصل يوفر الطاقة للمحرك السائر. إذا كنت تستخدم محول طاقة "خارج الصندوق" ومقبسًا نموذجيًا ، فيجب عليك توصيل السلك "+" بالدبوس "M +" في محرك easydriver والسلك "-" بمسمار "GND" الخاص بـ easydriver. عادة ما تكون "+" على الجانب الداخلي ، بينما "-" على الجانب الخارجي من القابس. لكن كن حذرًا ، فبعض محولات الطاقة تسمح بتبديل القطبية! إذا قمت بتوصيل برنامج easydriver الخاص بك بشكل غير صحيح ، فمن المحتمل أن يتضرر ومن المحتمل أن يتضرر ، ضع ذلك في الاعتبار.

الخطوة 3: قم بتحميل Sourcecode إلى Arduino

تحميل Sourcecode إلى Arduino
تحميل Sourcecode إلى Arduino

قم بتنزيل رمز مصدر Arduino على Github:

تنزيل Arduino IDE:

www.arduino.cc/en/Main/Software

قم بتنزيل مكتبات الطرف الثالث وانسخها إلى مجلد مكتبة IDE الخاص بك: … لمصراع الكاميرا: https://github.com/dharmapurikar/Arduino/tree/mast ……. لـ Adafruit 16x2 Display + Keypad Shield: https:// github.com/adafruit/Adafruit-RGB-LCD-Shiel…

تم اختبار الكود ويعمل بشكل جيد مع أحدث Arduino IDE (1.8.7 على Windows) و Arduino Uno + Easydriver محرك متدرج + Adafruit 16x2 Display + Keypad Shield ، + محرك متدرج Trinamic وكاميرا Nikon D60.

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

// ضبط نوع الكاميرا Nikon D5000 (12) ؛ // Canon D5 (12) ؛ // Minolta A900 (12) ؛ // Olympus E5 (12) ؛ // Pentax K7 (12) ؛ // Sony A900 (12) ؛

قم بعمل التعديل المماثل في وظيفة "المفاجئة":

// خذ لقطة picturevoid () {D5000.shotNow ()؛ // D5.shotNow ()؛ // A900.shotNow ()؛ // E5.shotNow ()؛ // K7.shotNow ()؛ // A900.shotNow () ؛}

يرجى ملاحظة: لسوء الحظ ، لم أتمكن بعد من اختبار الكاميرات الأخرى التي تعمل بالأشعة تحت الحمراء بعد من نيكون D60 الخاص بي. يجب أن تعمل مكتبة مصراع الكاميرا مع العديد من كاميرات الشركات المصنعة المختلفة ، وليس فقط نماذج الكاميرا المحددة المذكورة في الكود. سيكون رائعًا إذا نشرت تعليقًا على تجاربك مع كاميرا Canon أو Minolta أو Olympus أو Pentax أو Sony.

الخطوة 4: قم بتشغيل وحدة التحكم

قم بتشغيل وحدة التحكم
قم بتشغيل وحدة التحكم
قم بتشغيل وحدة التحكم
قم بتشغيل وحدة التحكم

ماذا يفعل الرمز على التوالي وحدة التحكم؟ إذا ضغطت على الزر ، يتم تشغيل "التقاط الصور". كل تصوير هو حلقة محدودة من التسلسل التالي:

  1. تم تشغيل الكاميرا
  2. تأخير قصير
  3. سوف يقوم المحرك السائر بتدوير كمية محددة مسبقًا من الدرجات
  4. تأخير قصير

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

تشغيل وحدة التحكم الأساسية:

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

يمكن العثور على متغيرات التصوير في القسم العلوي من الكود ، ويمكن تغييرها لتعديل التقاط الصور. أدناه يمكنك رؤية القيم الأولية:

خطوات إطلاق النار int = 20 ؛ // عدد الخطوات لثورة كاملة ، يجب أن تكون 10 أو 20 أو 40 سرعة إطلاق النار على سطح الماء = 0.01 ؛ // سرعة الدوران: أي رقم يبدأ من.01 -> 1 مع كون الرقم 1 هو الأسرع - الأبطأ هو الأقوى (أبطأ = أفضل للأشياء "الثقيلة") تأجيل إطلاق النار int = 1000 ؛ // كسر بالمللي ثانية قبل وبعد كل دورة

تشغيل جهاز التحكم المتقدم:

عند تشغيل وحدة التحكم المتقدمة ، يظهر شعار FluxGarage لمدة 4 ثوانٍ. بعد ذلك ، تكون وحدة التحكم جاهزة للعمل وتعرض قائمة بمجموعة المتغيرات القابلة للتعديل:

  • ST = عدد الخطوات ، يمكن أن يكون 10 أو 20 أو 40
  • SP = سرعة الدوران ، يمكن أن تكون 1-5 بينما 1 تكون أبطأ
  • DE = التأخير قبل وبعد كل خطوة في عُشر ثانية ، يمكن أن يكون 5 ، 10 ، 25 ، 50
  • LI = يحدد ما إذا كان ضوء خلفية الشاشة مضاء أم لا أثناء التصوير. يمكن أن يكون 1 = تشغيل أو 0 = إيقاف

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

الخطوة 5: ابدأ التصوير

ابدأ التصوير
ابدأ التصوير

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

  • استخدم خيمة خفيفة لإضاءة الأشياء الخاصة بك بالتساوي. يمكنك العثور على الكثير من البرامج التعليمية الجيدة هنا على موقع Instructables.com الذي يوضح كيفية إنشاء مربع ضوئي DIY. أيضًا ، هناك خيام خفيفة من النسيج غير مكلفة يمكن شراؤها في العديد من المتاجر عبر الإنترنت.
  • استخدم المصابيح ذات درجة حرارة اللون نفسها (كلفن)
  • ركز الكائن على القرص الدوار يدويًا ، وقم بإلغاء تنشيط التركيز التلقائي للكاميرا
  • قم بإيقاف تشغيل مثبت صورة الكاميرا ، إذا كنت تعمل مع حامل ثلاثي الأرجل
  • حدد نطاق قياس في الخلفية ، حيث لن يظهر كائن اللقطة. من خلال القيام بذلك ، ستتجنب الخفقان في تسلسل الصور الخاص بك. هناك طريقة أخرى وهي ضبط أوقات تعرض الكاميرا يدويًا وما إلى ذلك.
  • إذا كنت ترغب في تضمين صورك بزاوية 360 درجة في موقع الويب الخاص بك ، فاستخدم ملحقات جافا سكريبت مثل "Jquery Reel Plugin" بواسطة Petr Vostřel alias „PISI“→ https://jquery.vostrel.cz/reel Bat360 Degrees Product Viewer “بواسطة„ Codyhouse “→

هذه نتيجة إحدى عمليات إطلاق النار التي أجريتها (تم إنشاؤها باستخدام الإعداد أعلاه):

موصى به: