مجلة المعلوماتية مجلة المعلوماتية
المعرفة • البحث • التقنيةأعداد متاحة للقراءة الإلكترونية

أتمتة الطباعة ثلاثية الأبعاد في المكتبات: تجربة جامعة يوتا

العددالعدد 79
تاريخ النشر
عدد القراءات0
اقتباس

الملخص:

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

الكلمات المفتاحية: الطباعة ثلاثية الأبعاد، أتمتة المكتبات، Octoprint، إدارة التذاكر، جامعة يوتا

مقدمة:

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

كيف بدأت التجربة؟

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

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

تمتلك المكتبتان أسطولًا من طابعات Prusa i3 MK3S+ يستخدم خيوط PLA+ بقطر 1.75 مم. وتقع في أماكن يستطيع فيها الموظفون المدربون إخراج المطبوعات وإعادة تهيئة الأجهزة لدورة مؤتمتة جديدة. ومُوّلت التقنية من رسوم الحوسبة الطلابية، بينما يُموَّل دعم العاملين من ميزانية المكتبة. وإلى جانب طابعات بروسا المؤتمتة، تحتفظ مكتبة ماريوت بطابعات Lulzbot TAZ 6 وGigabot 3+ للتشغيل العملي المباشر فقط. وأنجزت الخدمة منذ إطلاقها مئات المطبوعات.

تعليق الصورة 1 في الأصل: مزرعة طابعات بروسا المؤتمتة، مع نماذج تشريحية مطبوعة، منها «جمجمة يوريك».

الدليل التقني

يوضح الشكل 1 سير العمل المؤتمت. يبدأ بإنشاء المستخدم نموذجًا ثلاثي الأبعاد بصيغة STL أو OBJ، ثم استخدام PrusaSlicer مع ملف إعدادات ينزله، وإرسال ملف G-code الناتج إلى نموذج الاستقبال الذي أنشأناه. ويفتح النموذج تذكرة في نظام Jira مصحوبة بالملفات والمعلومات. ثم يصل خادم الملفات إلى جيرا عبر واجهة برمجته API وينزّل ملفات G-code المرفوعة.

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

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

ونقصر الاستخدام على بلاستيك PLA مادةً افتراضية للدعم، ونحدد تكلفة الغرام. والأهم إضافة تعليمات G-code خاصة للبداية والنهاية إلى كل مهمة. وهذه التعليمات جوهرية لعمل النظام؛ إذ يوضع الأمر M0 قبل السطر الأخير من تعليمات النهاية، ليتوقف الجهاز عند اكتمال الطباعة منتظرًا تدخلًا بشريًا. وبذلك لا يدخل قائمة الطابعات المتاحة قبل إزالة القطعة السابقة وضغط شخصٍ مقبضَ الجهاز تأكيدًا لصحة الطباعة.

وعندما يصبح ملف G-code جاهزًا، يرفعه المستخدم بنموذج الاستقبال. ويمكن أن يجمع النموذج معلومات عديدة؛ فنحن نسأل مثلًا عن صلة المستخدم بالجامعة، وامتلاكه مفتاح مقرر، والطابعة التي يريد استخدامها. ويمكن بناء النموذج بطرائق عدة، منها Google Forms، لكننا اخترنا نظام تذاكر جيرا لأن المكتبة تستخدمه أصلًا لتتبع مشروعات مماثلة. ويؤدي إرسال النموذج إلى إنشاء تذكرة في مشروع جيرا المخصص لنا. وإذا استُخدم نظام آخر اختلف التنفيذ مع بقاء الفكرة نفسها.

وبعد رفع الملف إلى خدمة قابلة للوصول، تقرأ واجهة برمجة قائمة التذاكر المفتوحة وتنزّل ملفات G-code. واجهنا حدًا في جيرا لا يسمح بملفات أكبر من 25 ميغابايت؛ فأتحنا لصق رابط Google Drive في حقل الوصف، وعدّلنا الشيفرة لتنزيله بالطريقة نفسها. والغاية جمع ملفات G-code في مجلد بالجهاز الذي يشغّل شيفرتنا. ونعيد تسمية كل ملف برقم تذكرته، مما يتيح تحديثها لاحقًا ويحافظ على عدم إظهار هوية المستخدم في المشروع.

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

وتُعد الطابعة متاحة بعد إلغاء حالة الانتظار التي يفرضها M0، الأمر الموضوع في قسم «تعليمات نهاية الطباعة» بملف الإعداد. فهو ينتظر إدخالًا بشريًا قبل مواصلة التنفيذ. وإذا لم يضغط شخص مقبض الطابعة لإلغاء الانتظار، يعرض Octoprint تقدمًا بنسبة 99.99%، ولا تعد المهمة مكتملة. ووُضع ذلك لمنع بدء مهمة جديدة بينما القطعة القديمة ما تزال على المنصة.

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

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

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

يتوفر المشروع في GitHub على https://github.com/benbeezy/octofarmJira . وينبغي ملاحظة أن جيرا مدمج بعمق في المستودع حاليًا؛ والهدف مواصلة التطوير لتقليل الارتباط بمنصة معينة.

مساعدة المستخدمين والتعريف بالخدمة

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

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

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

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

خاتمة

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

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

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

ولمن يريدون إنشاء خدمة مشابهة، نوصي بالممارسات الآتية.

لا يلزم أن تفرض الخدمة تكلفة إضافية؛ استخدم المعدات القائمة.

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

وجود مبرمج جيد يعرف بايثون أمر أساسي، وقد يؤدي الطلاب هذا الدور. ويُعد مستودع GitHub الوارد في المقال موردًا مفيدًا، ونرحب باقتراحات تحسين الشيفرة.

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

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

شكر وتقدير

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

المراجع

  • https://library.med.utah.edu/blog/eccles/2020/03/25/university-of-utah-libraries-are-3d-printing-personal-protective-equipment-for-university-hospitals-and-clinics/
  • https://library.med.utah.edu/blog/eccles/2020/04/30/3d-printing-ppe-update-community-volunteers-and-library-staff-chip-in-to-help-library/
  • https://journal.code4lib.org/media/issue53/patterson/image1.jpg
  • https://journal.code4lib.org/media/issue53/patterson/figure1.png
  • https://github.com/benbeezy/octofarmJira
  • https://www.youtube.com/watch?v=ft4tzPQzTBM&t=0s
  • https://journal.code4lib.org/media/issue53/patterson/image2.png

اقتبس هذا المقال

براندون باترسون، بن إنغل، ويليس هول (2022). «أتمتة الطباعة ثلاثية الأبعاد في المكتبات: تجربة جامعة يوتا». مجلة المعلوماتية، العدد 79. https://informaticsjournal.net/?p=50554

مشاركة:

مقالات ذات صلة