مینی دستگاه CNC لیزر حکاکی تو خونه
سلام رفیق! تا حالا به این فکر کردی که با درایوهای قدیمی دیویدی که گوشه خونه افتادن چه کارای خفنی میشه کرد؟ تو این پروژه میخوایم دقیقا همین کار رو بکنیم و یه مینی دستگاه CNC لیزر حکاکی بسازیم. این دستگاه جمعوجور میتونه روی چوب حکاکی کنه، کاغذهای نازک رو ببره و حتی استیکرهای جذاب وینیل برات بسازه.
تیم آیسیمدار این آموزش رو جوری برات آماده کرده که با کمترین دردسر بتونی یه دستگاه CNC واقعی بسازی. هم مکانیک رو یاد میگیری، هم با آردوینو و درایورهای موتور پلهای کار میکنی. پس عینک ایمنی لیزرت رو آماده کن که قراره یه پروژه بهشدت سرگرمکننده و البته کاربردی رو با هم پیش ببریم. بریم سراغ ساختش!
قطعات و ابزارهای مورد نیاز پروژه
- آردوینو نانو (به همراه کابل USB)
- مکانیزم استپ موتور درایو دیویدی (2 عدد)
- ماژول درایور استپ موتور A4988 (2 عدد - یا شیلد GRBL)
- ماژول لیزر 250 میلیوات با لنز قابل تنظیم (یا قویتر)
- منبع تغذیه 12 ولت با حداقل جریان 2 آمپر
- ترانزیستور ماسفت N-Channel مدل IRFZ44N
- مقاومت 10 کیلواهم
- مقاومت 47 اهم
- رگولاتور ولتاژ LM7805 (همراه با هیتسینک)
- بورد سوراخدار (پرفبورد) برای لحیمکاری
- پین هدر نری و مادگی
- کانکتور JST XH سایز 2.5 میلیمتری
- کانکتور نری 2 پین
- خازن 1000 میکروفاراد 16 ولت و مقداری سیم جامپر
- آهنربای نئودیمیوم کوچیک 8 عدد (از همون دیویدی درایوها بازشون کن)
- ترمینال بلوک پیچی 2 پین
- بست کمربندی (سایز 100 میلیمتر)
- چسب قطرهای قوی
- پیچ M3x12 (6 عدد)
- پیچ M2x5 (8 عدد)
- عینک ایمنی مخصوص لیزر
عینک ایمنی لیزر تو این پروژه یه انتخاب نیست، یه ضرورته! اصلا بدون اون کار رو شروع نکن.
قطعات پرینت سهبعدی دستگاه
برای بدنه اصلی دستگاه به یه سری قطعات پلاستیکی نیاز داریم. فایلهای سهبعدی (STL) این قطعات آمادهست و باید اونا رو پرینت بگیری. پیشنهاد میکنم از فیلامنت ABS استفاده کنی تا مقاومت خوبی داشته باشه. تنظیمات پرینت رو هم روی ارتفاع لایه 0.2 میلیمتر و تراکم (Infill) زیر 25 درصد بذار. نیازی هم به فعال کردن ساپورت نداری.
کالبدشکافی درایوهای دیویدی
ما به دو تا مکانیزم لنز دیویدی نیاز داریم؛ یکی برای حرکت محور X و یکی برای محور Y. با یه پیچگوشتی چهارسوی کوچیک تمام پیچها رو باز کن تا موتور پلهای (که از نوع 4 پین بایپولار هست)، ریلهای لغزان و قطعه متحرک کاملا جدا بشن.
چون این موتورها ارزون و کوچیک هستن، نباید انتظار دقتهای فضایی ازشون داشته باشی. دقت اصلی رو پیچ انتقال قدرت (Lead Screw) تأمین میکنه. معمولا این موتورها تو هر دور 20 پله (استپ) دارن.
البته بعضی مدلها ممکنه 24 استپ در دور باشن، پس باید موتورت رو تست کنی تا بفهمی دقیقا چند استپه. حالا بیا ببینیم چطوری میشه دقت این موتورها رو حساب کرد. برای محاسبه، من طول پیچ انتقال قدرت رو با کولیس دیجیتال اندازه گرفتم که شد 51.56 میلیمتر.
بعدش باید فاصله بین دو تا دندانه (رزوه) رو به دست بیاریم. تو این فاصله 12 تا رزوه وجود داشت. با تقسیم طول کل بر تعداد رزوهها (51.56 تقسیم بر 12)، عدد 4.29 میلیمتر بر هر دور چرخش به دست میاد.
زاویه هر استپ تو این موتور 18 درجهست که یعنی 20 استپ در هر دور کامل. حالا اگه گام حرکت (4.29) رو بر تعداد استپ (20) تقسیم کنیم، به دقت 0.214 میلیمتر در هر استپ میرسیم. این دقت دقیقا 3 برابر بهتر از حداقل دقتی (0.68 میلیمتر) هست که ما برای حکاکی نیاز داریم!
آمادهسازی قطعه لغزان
حالا باید قطعه لغزان و راهنما رو با چسب قطرهای حسابی به هم بچسبونی تا یه تیکه بشن. برای اینکه لقی بین پیچ و قطعه راهنما (که بهش Backlash میگن) رو از بین ببری، حتما یه فنر کوچیک بینشون قرار بده تا همیشه تحت کشش باشن و حرکتشون کاملا دقیق بشه.
مونتاژ ریلهای محور Y
قبل از اینکه قطعه لغزان رو روی پایه اصلی سوار کنی، چهار تا آهنربای نئودیمیوم کوچیک (همونایی که از خود لنز دیویدی باز کردی) رو روی صفحه محور X بچسبون. این آهنرباها قراره قطعه کار رو موقع حکاکی محکم سر جاش نگه دارن.
در نهایت میله صاف رو جا بزن تا کل مکانیزم حرکتی روی پایه اصلی فیکس بشه.
مونتاژ ریلهای محور X
تو این مرحله باید مکانیزم راهنما رو با چسب قطرهای و پیچ به محفظه نگهدارنده لیزر وصل کنی. موتور پلهای رو با پیچ سر جاش محکم کن و بعد میلههای صاف و قطعه راهنما رو تو سوراخهاشون جا بزن. حواست باشه که قطعه لغزان باید خیلی نرم و راحت حرکت کنه و گیر نداشته باشه. بعد از اون، ستونهای کناری قاب رو هم نصب کن.
سیمکشی استپ موتورها
برای سیمکشی موتورها میتونی از یه کابل USB قدیمی استفاده کنی. این کابلها 4 تا رشته سیم داخلی دارن، روکش مقاوم و انعطافپذیری دارن و کار باهاشون خیلی راحته. مولتیمتر رو روی حالت بوق (تست اتصال کوتاه) بذار و پایههای مربوط به کویل A و کویل B موتور رو پیدا کن. حالا دو جفت سیم با رنگهای مشخص رو برای هر کویل انتخاب کن.
سیمها رو با دقت لحیم کن و برای تمیزی و جلوگیری از اتصالی، روشون وارنیش حرارتی بکش.
اتصال محورهای X و Y به همدیگه
حالا وقتشه که این دو تا محور رو به هم وصل کنیم تا استخوانبندی دستگاه شکل بگیره. با استفاده از چهار تا پیچ M3x12، پایه اصلی رو به دو تا قاب کناری پیچ کن تا یه ساختار یکپارچه و محکم داشته باشی.
ساخت مدار و الکترونیک دستگاه
قطعاتی که برای ساخت بورد کنترلر استفاده شدن اینا هستن:
- آردوینو نانو
- دو عدد درایور موتور پلهای A4988
- یک عدد ماسفت IRFZ44N
- یک عدد رگولاتور ولتاژ LM7805 با هیتسینک
- مقاومتهای 47 اهم و 10 کیلواهم
- یک عدد خازن 1000 میکروفاراد 16 ولت
- کانکتور نری 2 پین JST XH
- پین هدرهای نری و مادگی
- یه تیکه پرفبورد خام 20 در 80 میلیمتر
توی فریمور GRBL پینهای آردوینو از پیش تعریف شدن. پینهای Step برای محور X و Y به ترتیب روی پینهای دیجیتال 2 و 3 تنظیم شدن. پینهای Dir (جهت) هم به پینهای 5 و 6 وصل میشن.
پین D11 برای فرمان روشن و خاموش شدن لیزر استفاده میشه. آردوینو برقش رو از کابل USB میگیره، اما درایورهای A4988 برای راهاندازی موتورها به منبع تغذیه خارجی (12 ولت) نیاز دارن.
یادت نره که تمام گراندها (GND) تو مدار باید به هم وصل بشن. پین VDD درایورها هم باید به 5 ولت آردوینو متصل بشه. لیزری که اینجا داریم با ولتاژ 5 ولت کار میکنه و مدار کنترل جریان داخلی داره.
برای اینکه یه 5 ولت تر و تمیز برای لیزر داشته باشیم، از رگولاتور LM7805 روی ولتاژ آداپتور استفاده میکنیم (حتما هیتسینک ببند). ترانزیستور ماسفت IRFZ44N هم این وسط مثل یه کلید الکترونیکی عمل میکنه و با فرمان پین D11 آردوینو، برق لیزر رو قطع و وصل میکنه.
نکته مهم: هیچوقت تغذیه لیزر رو مستقیم از پین 5 ولت آردوینو نگیر! این لیزر بیشتر از 250 میلیآمپر جریان میکشه و رگولاتور کوچیک روی آردوینو نانو اصلا تحمل این جریان رو نداره.
برای تنظیم دقت حرکت (میکرواستپینگ) روی درایور، سه تا پین MS1، MS2 و MS3 داریم. اگه هر سه به زمین (Low) وصل باشن، موتور با استپ کامل (Full step) میچرخه.
اگه MS1 بالا و بقیه پایین باشن، میشه نیماسپ (Half step). اگه MS2 بالا و بقیه پایین باشن، میشه 1/4 استپ. و ترکیب بالا-بالا-پایین میشه 1/8 استپ. اگه هر سه تا پین به 5 ولت (High) وصل بشن، درایور میره رو حالت 1/16 استپ.
این پینها مقاومت پولداون (Pull-down) داخلی دارن، یعنی اگه به جایی وصلشون نکنی، درایور رو حالت استپ کامل کار میکنه. من هر سه رو به 5 ولت وصل کردم تا روی حالت 1/16 استپ کار کنه؛ این کار باعث میشه حرکت فوقالعاده نرم و بیصدا بشه.
بیشتر استپ موتورها تو حالت عادی 200 استپ در دور دارن. درایور A4988 با کنترل دقیق جریان کویلها میتونه هر استپ رو به 16 قسمت کوچیکتر تقسیم کنه، یعنی 3200 استپ در هر دور! بزرگترین مزیت میکرواستپینگ اینه که لرزش موتور رو میگیره و حرکت رو نرم میکنه.
البته باید بدونی که دقیقترین پوزیشنها همون استپهای کامل هستن. تو حالتهای میانی، موتور قدرت نگهدارندگی (Holding torque) کمتری داره. معمولا وقتی سرعتهای خیلی بالا نیاز داری، بهتره از همون استپ کامل استفاده کنی.
نصب برد الکترونیکی روی شاسی
وقتی لحیمکاری بورد تموم شد، اون رو با دو تا پیچ M2 روی صفحه پشتی محکم کن. بعد کل این مجموعه رو با دو تا پیچ M3x12 روی قاب اصلی دستگاه ببند. حالا تمام سوکتهای موتور محور X، محور Y و لیزر رو به بورد متصل کن تا ظاهر دستگاهت کامل بشه.
تنظیم جریان درایور موتورها
برای اینکه موتورها بتونن با سرعت بالا کار کنن، ولتاژی که بهشون داده میشه معمولا خیلی بیشتر از ولتاژ نامیشونه. مثلا یه موتور با مقاومت سیمپیچ 5 اهم و حد جریان 1 آمپر، تو حالت عادی باید با ولتاژ 5 ولت کار کنه.
وقتی ما همین موتور رو به منبع 12 ولتی وصل میکنیم تا سریعتر بچرخه، حتما باید جریانش رو روی زیر 1 آمپر محدود کنیم تا نسوزه. درایور A4988 دقیقا همین کار رو میکنه و یه پتانسیومتر (پیچ تنظیم کوچیک) روش داره که باهاش میتونی این محدودیت جریان رو تنظیم کنی.
یه راه برای تنظیمش اینه که درایور رو بذاری رو حالت استپ کامل (Full step) و بدون اینکه فرمانی به پایه STEP بدی، جریان یکی از کویلها رو با مولتیمتر اندازه بگیری. جریانی که میخونی در واقع 70 درصد حد نهایی جریانه (چون تو این حالت هر دو کویل روشن هستن).
حواست باشه که اگه ولتاژ منطقی (Vdd) مدارت تغییر کنه، این محدودیت جریان هم عوض میشه. اما یه راه خیلی راحتتر و اصولیتر اینه که ولتاژ مستقیم روی خود پتانسیومتر رو اندازه بگیری و جریان رو حساب کنی.
فرمول محاسبهاش به این صورته: حد جریان = ولتاژ VREF × 1.25. مثلا اگه مولتیمتر رو روی پیچ پتانسیومتر بذاری و ولتاژ 0.6 ولت رو نشون بده، یعنی جریان محدود شده روی 0.75 آمپر تنظیم شده.
همونطور که گفتیم، تو حالت استپ کامل، جریان به 70 درصد محدود میشه. پس اگه بخوای دقیقا جریان 1 آمپر روی کویل داشته باشی، باید حد جریان رو روی 1.4 آمپر تنظیم کنی (1 تقسیم بر 0.7). برای رسیدن به این عدد، ولتاژ VREF باید 1.12 ولت باشه (1.4 تقسیم بر 1.25). برای جزئیات بیشتر میتونی به دیتاشیت درایور سر بزنی.
نکته خیلی مهم: هیچوقت جریان کل منبع تغذیه رو ملاک قرار نده، چون جریان سیمپیچهای موتور کاملا متفاوته. اگه میخوای جریان رو مستقیم اندازه بگیری، آمپرمتر باید دقیقا سری با یکی از سیمپیچهای همون استپ موتور قرار بگیره.
نصب و راهاندازی ماژول لیزر
لیزری که تو این پروژه استفاده کردیم توان 200 تا 250 میلیوات و طول موج 650 نانومتر داره. محفظه فلزی ضخیمی که دور لیزره دقیقا مثل یه هیتسینک عمل میکنه و حرارت دیود رو میگیره. قسمت جلوییش هم یه لنز پیچی داره که با چرخوندنش نقطه لیزر فوکوس میشه. سوکت سیمهای لیزر رو هم مستقیم به همون پینهدری که روی بورد ساختی وصل کن تا مدارت کامل بشه.
آمادهسازی نهایی و ایمنی کار
قطعهای که میخوای روش حکاکی کنی رو روی صفحه دستگاه بذار و با اون چهار تا آهنربای نئودیمیوم محکم سر جاش قفلش کن. محورهای X و Y رو به صورت دستی بکش تا روی نقطه شروع (Home) قرار بگیرن. حالا آداپتور رو به برق بزن تا درایورها روشن بشن و کابل USB آردوینو نانو رو هم به کامپیوتر متصل کن.
ایمنی اولویت اول ماست! لطفا تحت هیچ شرایطی بدون استفاده از عینک ایمنی مخصوص لیزر، دستگاه رو روشن نکن. بینایی چشم شوخیبردار نیست.
نصب فریمور GRBL
- اول فایل سورس فریمور GRBL رو دانلود کن.
- فایل فشرده رو روی دسکتاپ اکسترکت کن. داخلش یه پوشه به اسم grbl-master میبینی.
- نرمافزار Arduino IDE رو باز کن.
- از منوی بالا برو به Sketch، بعدش Include Library و در نهایت Add .ZIP Library رو انتخاب کن.
- پوشه grbl (که داخل پوشه grbl-master هست) رو انتخاب کن و دکمه Open رو بزن.
- حالا کتابخونه با موفقیت نصب شده و پایین صفحه پیام تأییدش (Library added) رو میبینی.
- در نهایت از منوی File > Examples فایل grbl upload رو باز کن و مثل یه کد معمولی روی آردوینو آپلودش کن.
نرمافزار ارسال G-Code
برای اینکه بتونیم طرحهامون رو به دستگاه بفرستیم، به یه نرمافزار واسط نیاز داریم که جیکد (G-Code) رو استریم کنه. من از LaserGRBL استفاده کردم که بدون شک یکی از بهترین نرمافزارها برای پروژههای خونگیه. این برنامه میتونه عکسها و لوگوها رو مستقیما با ابزار داخلی خودش به مسیرهای حکاکی تبدیل کنه و به آردوینو بفرسته.
وقتی برنامه رو باز میکنی، پورتهای COM در دسترس رو شناسایی میکنه. پورتی که به آردوینو وصله رو انتخاب کن. نرخ انتقال داده (Baud Rate) رو هم باید دقیقا روی عدد تعریف شده تو فریمور بذاری (پیشفرضش 115200 هست). برای دیدن تنظیمات فعلی ذخیرهشده رو آردوینو، کافیه تو کنسول پایین صفحه دو تا علامت دلار ($$) تایپ کنی و اینتر بزنی.
با زدن این دستور، یه لیست بلند از پارامترهای سیستمی برات نمایش داده میشه. این تنظیمات مستقیما تو حافظه EEPROM آردوینو ذخیره میشن، پس با قطع شدن برق پاک نمیشن و دفعه بعد که دستگاه رو روشن میکنی همون اعداد قبلی بارگذاری میشن. $0=10 (step pulse, usec) $1=25 (step idle delay, msec)
$23=1 (homing dir invert mask:00000001) $24=50.000 (homing feed, mm/min) $25=635.000 (homing seek, mm/min) $26=250 (homing debounce, msec) $27=1.000 (homing pull-off, mm) $100=314.961 (x, step/mm) $101=314.961 (y, step/mm) $102=314.961 (z, step/mm) $110=635.000 (x max rate, mm/min) $111=635.000 (y max rate, mm/min) $112=635.000 (z max rate, mm/min)
$120=50.000 (x accel, mm/sec^2) $121=50.000 (y accel, mm/sec^2) $122=50.000 (z accel, mm/sec^2) $130=225.000 (x max travel, mm) $131=125.000 (y max travel, mm) $132=170.000 (z max travel, mm)
کالیبره کردن و تنظیمات دقیق
رسیدیم به چالشبرانگیزترین بخش کار! اول از همه باید با چرخوندن لنز، پرتو لیزر رو روی سطح کار فوکوس کنی تا تبدیل به ریزترین نقطه ممکن بشه. این کار نیاز به حوصله و آزمون و خطا داره.
قدم بعدی کالیبره کردن پارامترهای 100$، 101$، 130$ و 131$ تو نرمافزاره. تنظیماتی که برای من عالی جواب داد اینا بودن: $100=110.000 $101=110.000 $130=40.000 $131=40.000
برای تست کالیبره بودن، یه مربع 40 در 40 میلیمتر رو دادم دستگاه حک کنه. بعد از کلی آزمون و خطا و تغییر اعداد GRBL، بالاخره یه خط دقیقا 40 میلیمتری تو هر دو محور گرفتم. یادت باشه اگه تنظیم محور X و Y یکی نباشه، عکسی که حکاکی میکنی کش میاد یا جمع میشه. همه موتورهای دیویدی هم شبیه هم نیستن و ممکنه اعدادت کمی فرق کنه.
این پروسه یه کم وقتگیره اما وقتی درست تنظیمش کنی، نتیجهاش خستگیت رو درمیاره. حالا یه نگاهی هم به رابط کاربری نرمافزار LaserGRBL بندازیم.
- بخش اتصال (Connection): اینجا پورت و سرعت (Baud rate) رو تنظیم میکنی.
- وضعیت فایل (File control): مسیر فایل لودشده و نوار پیشرفت حکاکی رو نشون میده. دکمه سبز Play کار رو شروع میکنه.
- دستورات دستی (Manual commands): هر خط جیکدی رو که تایپ کنی مستقیم میفرسته برای آردوینو.
- گزارش خطا (Command log): وضعیت اجرای دستورات و ارورها رو نشون میده.
- کنترل دستی محورها (Jogging): با این دکمهها میتونی لیزر رو دستی جابهجا کنی. اسلایدرها هم سرعت و طول هر حرکت رو مشخص میکنن.
- پیشنمایش (Preview): طرح نهایی رو نشون میده و موقع کار، یه علامت آبی محل دقیق لیزر رو زنده نشون میده.
- ریست و آزادسازی (Reset/Unlock): با این دکمهها برد ریست یا قفل نرمافزاریش باز میشه.
- مکث و ادامه (Feed hold): هر جا خواستی میتونی کار رو متوقف و دوباره از همونجا شروع کنی.
- زمانسنج (Time projection): بر اساس سرعت کار، زمان اتمام حکاکی رو تخمین میزنه.
- کنترل سرعت و قدرت (Overrides): تو نسخههای جدید GRBL میتونی موقع کار، قدرت لیزر و سرعت حرکت رو کم و زیاد کنی.
حکاکی روی چوب
قابلیت جذاب نرمافزار LaserGRBL اینه که میتونی هر عکسی رو (با فرمتهای jpg، png یا bmp) مستقیما واردش کنی و خودش برات بدون نیاز به برنامه جانبی دیگهای، اون رو تبدیل به دستورات جیکد میکنه. این برنامه بهینهسازی خیلی خوبی برای عکس، لوگو یا طرحهای مدادی داره.
تنظیمات سرعت حرکت و کیفیت (تعداد خط در میلیمتر) کاملا به جنس چوبی که استفاده میکنی بستگی داره. هر چی چوب سفتتر باشه، باید سرعت رو کمتر کنی تا لیزر فرصت سوزوندن سطح کار رو داشته باشه.
برش کاغذهای نازک
لیزر 250 میلیواتی ما اونقدرها هم ضعیف نیست! اگه فوکوس لیزر بینقص باشه، میتونی کاغذهای نازک رو باهاش ببری. کلید موفقیت تو این کار اینه که سرعت حرکت رو خیلی پایین بیاری، مثلا نهایت 15 میلیمتر بر دقیقه، تا کاغذ کاملا بریده بشه.
برش وینیل و ساخت استیکر شخصی
یکی از کاربردهای باحال این دستگاه، ساخت استیکرهای شخصی با ورقهای وینیله. لیزر روی ورقهای تیره خیلی عالی جواب میده و کار باهاشون راحته، اما برای بریدن وینیلهای رنگ روشن یه کم باید با سرعت بازی کنی تا نتیجه تمیز دربیاد.
تو عکسها میتونی نمونه استیکرهایی که با این دستگاه بریده شدن رو ببینی. فقط یه نکته خیلی مهم: سوزوندن ورقهای وینیل با لیزر یه دود بسیار بدبو و مضر تولید میکنه که اصلا نباید تنفسش کنی.
امیدواریم از ساخت این مینی دستگاه CNC لذت برده باشی. دنیای رباتیک و لیزر پر از اتفاقای هیجانانگیزه و این دستگاه تازه شروع ماجراست. حتما طرحها و کارهای خفنی که با دستگاهت میزنی رو تو اپلیکیشن آیسیمدار با بقیه بچهها به اشتراک بذار. منتظر دیدن پروژههات هستیم، موفق باشی رفیق!
فایلهای پیوست
تو میتونی اولین سازنده باشی!
اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر
این آموزش با استانداردهای اختصاصی آیسیمدار بازنویسی و بهینهسازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.












































گفتگوهای کاربران
هنوز نظری ثبت نشده؛ تو شروع کن!
هنوز نظری ثبت نشده؛ تو شروع کن!