مقدمهای بر برنامهنویسی CNC
برنامهنویسی CNC زبان ارتباطی بین اپراتور و ماشینهای کنترل عددی است. دو نوع کد اصلی در این برنامهنویسی وجود دارد:
G-Code (کدهای هندسی)
کدهایی که حرکات و عملیات ماشینکاری را کنترل میکنند مانند حرکت خطی، دایرهای، انتخاب صفحه کاری و …
M-Code (کدهای کمکی)
کدهایی که عملکردهای جانبی ماشین را کنترل میکنند مانند روشن/خاموش کردن اسپیندل، تعویض ابزار، فعال کردن خنککننده و …
جدول کامل کدهای G در Fanuc
| کد | توضیحات | مثال |
|---|---|---|
| G00 | حرکت سریع (بدون برش) | G00 X50 Y30 Z10 |
| G01 | حرکت خطی با سرعت تغذیه | G01 X20 Y15 Z-5 F200 |
| G02/G03 | حرکت دایرهای ساعتگرد/پادساعتگرد | G02 X30 Y30 I5 J0 F150 |
| G04 | مکث (به میلیثانیه یا دور اسپیندل) | G04 P2000 (2 ثانیه) |
| G17/G18/G19 | انتخاب صفحه کاری (XY/XZ/YZ) | G17 (صفحه XY) |
| G20/G21 | واحد اندازهگیری (اینچ/میلیمتر) | G21 (سیستم متریک) |
| G28 | بازگشت به نقطه مرجع ماشین | G28 G91 Z0 |
| G40/G41/G42 | جبران شعاع ابزار (خاموش/چپ/راست) | G41 D01 |
| G43 | جبران طول ابزار | G43 H01 Z50 |
| G54-G59 | سیستم مختصات قطعه کار | G55 X0 Y0 Z0 |
| G90/G91 | حالت مطلق/افزایشی | G90 (مختصات مطلق) |
جدول کامل کدهای M در Fanuc
| کد | توضیحات | مثال |
|---|---|---|
| M00 | توقف برنامه (دستور توقف اجباری) | M00 |
| M01 | توقف اختیاری (در صورت فعال بودن) | M01 |
| M02 | پایان برنامه (بدون بازگشت به ابتدا) | M02 |
| M03/M04 | روشن کردن اسپیندل (ساعتگرد/پادساعتگرد) | M03 S2000 |
| M05 | توقف اسپیندل | M05 |
| M06 | تعویض ابزار | M06 T02 |
| M08/M09 | روشن/خاموش کردن خنککننده | M08 |
| M30 | پایان برنامه و بازگشت به ابتدا | M30 |
| M98/M99 | فراخوانی زیربرنامه/بازگشت از زیربرنامه | M98 P1002 |
نمونه برنامه عملی برای فرزکاری
O1000 (PROGRAM NAME - FACE MILLING)
N10 G21 G90 G17 G40 G49 G80 (INITIALIZATION)
N20 G54 G00 X-50 Y-50 S1200 M03 (POSITIONING & SPINDLE ON)
N30 G43 Z50 H01 M08 (TOOL LENGTH COMP & COOLANT ON)
N40 Z5 (RAPID TO CLEARANCE)
N50 G01 Z-2 F200 (PLUNGE)
N60 X150 F300 (FACE MILLING)
N70 Y0 (STEP OVER)
N80 X-50 (RETURN PASS)
N90 Y50 (STEP OVER)
N100 X150 (FINAL PASS)
N110 G00 Z50 (RAPID RETRACT)
N120 M09 M05 (COOLANT & SPINDLE OFF)
N130 G28 G91 Z0 (RETURN TO MACHINE ZERO)
N140 G28 X0 Y0 (RETURN TO MACHINE XY ZERO)
N150 M30 (PROGRAM END)
%
توضیحات خط به خط برنامه:
- O1000: شماره برنامه
- N10: تنظیمات اولیه (متریک، مطلق، صفحه XY، غیرفعال کردن جبرانها)
- N20: حرکت سریع به موقعیت شروع، روشن کردن اسپیندل با سرعت 1200 دور
- N30: جبران طول ابزار، روشن کردن خنککننده
- N40-N100: عملیات فرزکاری سطح
- N110-N140: بازگشت به موقعیت ایمن
- N150: پایان برنامه
نکات ایمنی و بهترین روشها
- قبل از اجرای برنامه، مطمئن شوید ابزار و قطعه به درستی نصب شدهاند.
- همیشه از دستور
M00یاM01برای توقف اضطراری استفاده کنید. - سرعت اسپیندل را با توجه به جنس قطعه تنظیم کنید.
- هنگام تغییر ابزار، برنامه را متوقف کرده و ابزار را به صورت ایمن تعویض کنید.
- از تنظیمات صحیح سیستم مختصات مطمئن شوید تا از برخورد ابزار جلوگیری شود.
سؤالات متداول (FAQ)
G-Code چیست؟
G-Code زبان اصلی برنامهنویسی CNC است که دستور حرکت و عملیات ماشین را تعریف میکند.
M-Code چه کاربردی دارد؟
M-Code برای کنترل عملکردهای جانبی ماشین مثل روشن/خاموش کردن اسپیندل و خنککننده استفاده میشود.
چگونه مطمئن شویم برنامه درست اجرا میشود؟
ابتدا برنامه را در حالت شبیهسازی اجرا کنید و سپس در حالت واقعی با سرعت پایینتر شروع کنید.