آموزش راه اندازی دستگاه CNC با Arduino
دستگاه های سی ان سی ماشین های کامپیوتری کنترل عددی هستند که برای ترسیم هر چیز یا طراحی هر قسمت مکانیکی طبق برنامه طراحی شده استفاده میشود. واحد کنترل کننده میتواند رایانه یا میکروکنترلر باشد. دستگاه های سی ان سی دارای استپر موتور و سروو موتور هستند تا طبق برنامه تعیین شده برنامه را ترسیم کنند.
در این پروژه آردوینو ما با استفاده از مواد موجود دستگاه سی ان سی خود را میسازیم. انواع مختلفی دستگاه CNC در جهان وجود دارند که درست کردن برخی از آن ها بسیار فنی و پیچیده است. ما در اینجا یک دستگاه CNC پلاتر ساده را با استفاده از برد Arduino میسازیم.
این آموزش ارزانترین و ساده ترین روش برای ساخت دستگاه CNC Plotter با استفاده از آردوینو Uno در خانه است.
دستگاهی که میسازیم میتواند اکثر اشکال اساسی ، متون و … را ترسیم کند. عملیات انجام شده ساده است و انگار که فردی دارد مینویسد. اما نسبت به نوشتن و کشیدن انسان بسیار دقیق تر است. میتواند فیلم عملکرد این پروژه را در انتهای این صفحه مشاهده کنید.
عملکرد دستگاه CNC
برای بهره برداری از دستگاه نقشه برداری سی ان سی، 3 محور مورد نیاز است (محور x ، محور y و محور z). محور x و محور y به صورت یکنواخت برای ایجاد یک تصویر 2D روی یک کاغذ ساده کار می کنند. محورهای x و y به صورت 90 درجه از یکدیگر قرار می گیرند به گونه ای که هر نقطه روی سطح با مقدار مشخصی از x و y تعریف می شود.
بسته به تصویری که باید بکشید، کامپیوتر مختصات مناسب را تولید کرده و آنها را از طریق درگاه USB به میکروکنترلر ارسال می کند. میکروکنترلر این مختصات را تفسیر می کند و سپس موقعیت موتورها را برای ایجاد تصویر کنترل می کند. در اینجا ما از آردوینو به عنوان میکروکنترلر برای ساخت این دستگاه CNC استفاده کرده ایم.
حالا بیایید ساخت دستگاه را شروع کنیم.
به چه چیز هایی نیاز داریم ؟
در این قسمت لیست قطعاتی که برای ساخت ماشین پلاتر سی ان سی نیاز دارید مشاهده میکنید.
قطعات مورد نیاز
- ورق آلومینیوم (710mm x 710mm)
- چاپگر قدیمی HP / Epson. می توانید از درایوهای DVD رایانه ای قدیمی استفاده کنید
- شیشه Perspex
- آردوینو UNO
- شیلد درایور موتور L293D
- مینی سرو موتور
نرم افزار های مورد نیاز
برای عملکرد کامل این دستگاه از نرم افزارهای زیر استفاده شده است. آنها را بارگیری کنید.
نرم افزار Arduino ، دانلود از اینجا
نرم افزار Processing ، دانلود از اینجا
نرم افزار Inkscape ، دانلود از اینحا
طراحی بدنه دستگاه پلاتر CNC
بدنه اصلی این دستگاه پایه ای است که از کلیه قسمت های اصلی دستگاه پشتیبانی می کند تا دستگاه محکم باشد و همچنین قابل حمل باشد. در این طرح از آلومینیوم برای ساخت پایه استفاده خواهیم کرد زیرا سبک است و قابلیت خم شدن را دارد و برش آن ساده است و همچنین از آنجا که زنگ نمی زند، ظاهر براق خوبی دارد.
طراحی و ابعاد پایه ما در تصویر زیر نشان داده شده است :
توجه: کلیه ابعاد در واحد میلی متر است.
پس از انجام خم کردن و برش ،پایه ما بسیار محکم به شکل زیر میشود :

مونتاژ محورهای X ، Y و Z دستگاه سی ان سی
برای ساخت محورهای x و y از دو چهارچوب چاپگر استفاده می شود. هر یک از این قسمت ها شامل یک موتور پله ای و یک مکانیزم درایو Belt است که بطور معمول برای جابجایی کارتریج به داخل و خارج استفاده می شود.

برای محور z ، یک مینی سروو موتور با استفاده از چسب روی محور y وصل شده است. از این سروو موتور برای حرکت قلم به بالا و پایین استفاده می شود. باید مکانیسم پشتیبانی خوبی ساخته شود که حرکت آزاد و رو به پایین قلم را امکان پذیر سازد.


پلتفرم طراحی برای دستگاه CNC
با توجه به اندازه زیاد این دستگاه، این دستگاه قادر به ترسیم روی کاغذ با اندازه A5 است. بنابراین یک سکوی بزرگ A5 (148mmx210mm) از شیشه Perspex میسازیم و سپس آن را با استفاده از چسب روی قسمت متحرک محور X می چسبانیم.
سیم کشی و مدار دستگاه CNC
شیلد درایور موتور L293D را روی برد آردوینو UNO قرار دهید. این شیلد می تواند دو موتور پله ای را به طور همزمان و دو موتور سروو را به حرکت درآورد. مطابق شکل زیر، دو موتور پله ای را به هم وصل کنید. GND باید بدون اتصال بماند زیرا موتورها از نوع دوقطبی هستند.

همچنین مینی سروو موتور را به servo1 وصل کنید. یک منبع تغذیه 7.5 ولت-9 ولت را به پورت برق شیلد درایور موتور وصل کنید. اکنون دستگاه آماده آزمایش است.
کد آردوینو و پروسسینگ برای تست ماشین CNC
ابتدا باید موتورهای استپر را تست کنیم و ببینیم که آیا آنها به درستی وصل شده اند یا خیر. از آنجا که ما از شیلد درایور موتور L293D استفاده می کنیم، لازم است که کتابخانه AFmotor را نصب کنید. نام آن را به AFMotor تغییر دهید. اگر Arduino IDE باز بود ، آن را ببندید و دوباره آن را باز کنید و روی file -> examples -> Adafruit Motor Shield Library -> stepper کلیک کنید. اطمینان حاصل کنید که پورت و برد صحیح را در Tools انتخاب کرده اید و سپس کد را در برد Arduino بارگذاری کنید. سپس برخی از حرکات را باید در موتور پله ای مشاهده کنید.
برای تست موتور دو ، در زیر پورت موتور را از 2 به 1 تغییر دهید و دوباره کد را بارگذاری کنید.
#include
AF_Stepper motor(48, 2);
پس از واکنش مناسب موتور استپر ، کد آردوینو را برای دستگاه CNC را که در فایل انتهای آموزش قرار دارد در برد آردوینوی خود بارگذاری کنید.
استفاده از G-Code برای دستگاه CNC
G – CODE زبانی است که در آن ما به ماشینهای رایانه ای (CNC) میگوییم کاری انجام دهند. در اصل این پرونده حاوی مختصات X ، Y و Z است.
مثلا :
G17 G20 G90 G94 G54
G0 Z0.25X-0.5 Y0.
Z0.1
G01 Z0. F5.
G02 X0. Y0.5 I0.5 J0. F2.5
X0.5 Y0. I0. J-0.5
X0. Y-0.5 I-0.5 J0.
X-0.5 Y0. I0. J0.5
G01 Z0.1 F5.
G00 X0. Y0. Z0.25
نوشتن یک G-Code حتی برای یک مربع ساده می تواند واقعاً سخت باشد، اما خوشبختانه ما یک نرم افزار داریم که که لینک آن را در کمی بالاتر برای دانلود قرار دادیم. شما می توانید G-Code خود را با استفاده از Inkscape تولید کنید، که روش آن را در بخش بعدی توضیح دادیم یا می توانید از کدهای آماده G-Code در اینترنت استفاده کنید.
قبل از اینکه بگوییم چگونه می توانید کدهای G-Code با استفاده از Inkscape را تولید کنید اجازه دهید تا در مورد نحوه ارسال آن به Arduino بحث کنیم. نرم افزاری که ما را قادر می سازد G-Codes را به Arduino ارسال کنیم، Processing نامیده می شود.
استفاده از نرم افزار پروسسینگ برای ارسال G-Code به آردوینو
پلت فرم Processing به ما کمک می کند تا G-Codes را به برد آردوینو ارسال کنیم. برای انجام این کار، شما باید فایل GCTRL.PDE را بارگیری کنید. فایل GCTRL.pde در فایل دانلودی انتهای صفحه قرار داده شده است. آن را با نرم افزار Processing باز کنید.

پس از باز کردن آن در Processing ، روی run کلیک کنید. یک پنجره با تمام دستورالعمل ها ظاهر می شود. روی صفحه کلید p را فشار دهید. سیستم از شما می خواهد پورت را انتخاب کنید. بنابراین درگاهی را که برد Arduino به آن متصل است ، انتخاب کنید. برای ما پورت 6 بوده است ممکن است برای شما متفاوت باشد.
اکنون g را فشار داده و به پوشه ای که G-CODE خود را ذخیره کرده اید بروید. G-CODE را انتخاب کرده و Enter را فشار دهید. اگر همه چیز درست وصل شده باشد، باید ببینید که دستگاه شروع به طرح ریزی روی کاغذ می کند.
اگر می خواهید فرایند را خاتمه دهید ، فقط x را فشار دهید و دستگاه هر کاری را انجام می دهد متوقف می کند.
چگونه می توانیم G-Code خود را تولید کنیم ؟
ما اشاره کردیم که Inkscape نرم افزاری است که ما برای تولید G-CODES خود استفاده خواهیم کرد. در این مثال ما متن ساده (HELLO WORLD) را مانند شکل زیر ایجاد خواهیم کرد.

توجه: Inkscape روش ذخیره ای برای ذخیره فایلها به عنوان G-CODE ندارد. بنابراین شما باید یک افزونه نصب کنید که امکان صادرات تصاویر به پرونده های G-CODE را فراهم کند. ما از افزونه MakerBot Unicorn استفاده میکنیم که آن را در فایل دانلودی قرار داده ایم.
اگر نصب موفقیت آمیز بود، Inkscape را باز کنید ، به منوی File بروید و روی “Document Properties” کلیک کنید. ابتدا ابعاد را از px به mm تغییر دهید. همچنین عرض و ارتفاع را به 90 میلی متر کاهش دهید. اکنون این پنجره را ببندید. یک مربع به عنوان ناحیه ترسیم ظاهر می شود. این منطقه ای است که ما برای نوشتن متن خود استفاده خواهیم کرد.
اکنون در نوار سمت چپ ، روی زبانه create و edit text object کلیک کنید. متن “HELLO WORLD” را تایپ کنید و مطابق شکل زیر آن را در گوشه سمت راست بالای مربع قرار دهید.

روی متن کلیک کنید و نوع و سبک فونت مورد نظر خود را انتخاب کنید. روی Apply کلیک کنید و ببندید.
اکنون بر روی path کلیک کرده و “object to path” را انتخاب کنید.
متن شما اکنون آماده است تا به عنوان G-CODE ذخیره شود. بر روی file -> save as کلیک کنید و سپس نام پرونده را “hello world” تایپ کنید.
نوع پرونده را مطابق تصویر زیر به “MakerBot Unicon G-Code” تغییر دهید. این گزینه تنها در صورت موفقیت آمیز بودن نصب افزونه ظاهر می شود. در آخر بر روی save کلیک کرده و در پنجره پاپ آپ روی OK کلیک کنید.

شما یک G-Code ایجاد کرده اید و می توانید با استفاده از مراحل قبلی آن را ترسیم کنید.
استفاده از GRBL Controller در دستگاه CNC
هنگامی که شما موفق به تولید یک G-Code با استفاده از Inkscape شدید، ممکن است لازم باشد G-Code را مشاهده کنید تا اطمینان حاصل کنید که در محدوده طراحی است.
استفاده از نرم افزار GRBL Controller ضروری نیست و در صورت نیاز از آن استفاده کنید.

محدوده رسم در CNC در در خطوط زیر نشان داده شده است :

تصویری که در نرم افزار GRBL Controller نمایش داده میشود نباید فراتز از حد باشد. زیرا اگر بیشتر از محدوده باشد توسط دستگاه ترسیم نمیشود. در این مثال مقادیر x و y از 0 تا 40 میلی متر است.
از آنجا که من از قطعات یک پرینتر استفاده می کنم که می توانند در یک منطقه بزرگتر هم ترسیم کنند ، مقادیر حداکثر را از 40 میلی متر به 60 میلی متر تغییر می دهم.
هر زمان که G-Code را با استفاده از Inkscape تولید می کنید، می توانید ابتدا آن برنامه G-Code را در برنامه GRBL باز کنید تا ببینید که آیا در آن محدوده مورد نظر است یا خیر. اگر در داخل محدوده نباشد، باید اندازه آن را در Inkscape تغییر دهید تا اینکه در محدوده شما قرار بگیرد.
فیلم عملکرد دستگاه پلاتر سی ان سی
در فیلم زیر نحوه عملکرد این دستگاه CNC را مشاهده میکنید.

