جی کد یا G-code دستگاه CNC چیست؟
جی کد [به انگلیسی:G-code ] دستوراتی است که برای کنترل ماشینهای CNC استفاده میشود. اگرچه سازندگان مختلف ماشین ابزار ممکن است از جی کد خاص استفاده کنند، اما یک گروه اصلی از جی کدها وجود دارد که در هر ماشین ابزار رایج است. این استانداردها در تراشهای CNC، دستگاه فرز، روترها و اخیراً توسط چاپگرهای سه بعدی استفاده میشود. در این نوشته قصد داریم به بررسی این گروه و نحوه استفاده از آنها برای کنترل ماشینآلات بپردازیم. در زیر لیست جی کد های ضروری برای کار با دستگاه CNC آورده شدهاست.
لیست جی کد (G-code) برای دستگاه CNC
– G00: حرکت سریع
میتوان آن را به G0 کوتاه کرد. این دستور زمانی استفاده میشود که ابزار برای حرکت سریع قطعه را لمس نمیکند، معمولاً هنگام رفتن به بخش تعویض ابزار و بازگشت با ابزار جدید استفاده میشود. برخی از ماشینکاران دوست دارند تا جایی که ممکن است به قطعه نزدیک شوند، اما ما توصیه میکنیم حداقل 1 میلیمتر فاصله داشته باشید. در این حالت اگر ابزار خود را به درستی تنظیم نکنید، بیشترین آسیب را وارد خواهید کرد. این کد زمانی استفاده میشود که ابزار یا ابزار مواد را جدا نمیکند تا زمان لازم برای ماشینکاری قطعه تا حد امکان سریع باشد. حداکثر سرعت توسط پارامترهای ماشین تنظیم میشود.
*G00 X100:
در مثال بالا من ابزار را 100 میلیمتر به سمت چپ حرکت میدهم.
هنگام استفاده از یک حرکت سریع، مراقب هر گونه موانعی باشید که ممکن است در مسیر شما وجود داشته باشد. ابتدا محور X و Y را حرکت دهید، سپس در یک خط جداگانه، در Z به پایین حرکت کنید. این کار زمان ماشینکاری شما را یک یا دو ثانیه افزایش میدهد اما به جلوگیری از برخورد با موانع کمک میکند.
– G01: درونیابی خطی
هنگام برش در یک خط مستقیم از دستور G01 استفاده میشود. این دستور قبل از اجرا باید یک نرخ تغذیه (F) فعال داشته باشد. یک بلوک معمولی شبیه G01 X-100 F50 است. لازم نیست این دستور را در هر خط اضافه کنید، تا زمانی که هیچ حرکت دیگری جی کد فعال نباشد، برای مثال، فقط باید آن را بعد از یک دستور G02، G03 یا G00 اضافه کنید. به همین ترتیب، نرخ تغذیه (F50) فقط یک بار مورد نیاز است تا زمانی که بخواهید سرعت برش را تغییر دهید.
G00 X101 Z1.0
G01 X100 Z-20 F100
X110 Y-40
G00 Z300
این دستور را میتوان با برش تمام محورها به طور همزمان یا فقط یک مورد استفاده کرد. برش با محور Z و همچنین X و Y معمول نیست اما در صورت نیاز امکانپذیر است.
هنگام برنامهنویسی یک پروفیل، استفاده از کد جبران برش G41 و G42 آسانتر است، پس لازم نیست در هنگام ترسیم مسیرهای ابزار خود، شعاع ابزار را در نظر بگیرید، میتوانید به سادگی از ابعاد روی نقشه استفاده کنید و دستگاه خود ابزار را به میزان قابل تنظیم تغییر میدهد.
– G02 و G03: درونیابی دایرهای
G02 برای ماشینکاری قوس یا منحنیوار در جهت عقربههای ساعت و G03 برای خلاف جهت عقربههای ساعت استفاده میشود. با استفاده از یک مقدار R برای تعریف شعاع، دستور G02/G03 ابزار را در یک خط منحنی با شعاع تعریف شده حرکت میدهد. اگر نرخ تغذیه از قبل فعال است، نیازی به اضافه کردن آن به این خط نیست، مگر اینکه بخواهید نرخ تغذیه را برای ماشینکاری تغییر دهید.
G03 Y50.0 R10.0 F100.0
G01 X50.0
نقطه مرکزی کمان را میتوان با استفاده از مقادیر I و J و K نیز تعریف کرد I(X) و J(Y) و K(Z) محور کمکی را تعریف میکند.
G03 Y50.0 I10.0 J40.0 F100.0
G01 X50.0
K به ندرت استفاده میشود، اما در صورت نیاز به منحنی با استفاده از محور Z در دسترس است.
هنگام استفاده از G02 با G01 و G03 (منحنی خلاف جهت عقربههای ساعت) هر شکلی را میتوان ماشینکاری کرد. این سه کد G پایه و اساس برنامه نویسی جی کد هستند و سه کدی هستند که هنگام برش مواد استفاده خواهید کرد.
– G04: مکث زمانی
گاهی اوقات ما نیاز داریم که حرکت ابزار را برای یک لحظه نگه داریم، برای این کار یک مکث زمانی به کد اضافه میکنیم تا دستگاه از ادامه خواندن برنامه برای مدت زمان مشخصی جلوگیری کند.
برای مثال، در حالی که با یک مته سوراخکاری کف صاف انجام میدهید و سطح مته دارای پایانی ناهموار است، میتوانید حرکت مته را در محور Z با چرخش آن برای نیم ثانیه متوقف کنید تا سطح تمیز شود.
* G01 Z20.0 F50; G04 X500; G01 Z5.0
در کد بالا ابزار در حالی که در عمق 500 میلیمتری قطعه است چرخش میکند. مقدار X در “G04 X500” ابزار را مجبور میکند تا 500 میلی ثانیه قبل از حرکت به بلوک بعدی در آنجا بماند. نیازی به تعیین مجدد نرخ تغذیه پس از دستور توقف نیست، زیرا ماشین هنوز میداند که یک نرخ قبل از توقف در بلوک G01 تعریف شده است.
– G20 و G21: سیستمهای اندازهگیری
ماشینهای CNC میتوانند اندازهگیریها را در سیستمهای امپریال و متریک (اینچ و میلیمتر) بخوانند که توسط G20 و G21 تعریف شدهاست. کد G20 برای سیستمهای امپریالی و کد G21 برای سیستمهای متریک تعریف میشود.
اگرچه فقط یک بار در برنامه نیاز است این کدها را تعریف کنید، اما این اطلاعات را پس از هر تغییر ابزار اضافه کنید. زیرا ممکن است بخواهید پس از اندازهگیری، ابزار تکمیلی را تکرار کنید تا مواد بیشتری را پس از اندازهگیری حذف کنید. تعریف مجدد واحد اندازهگیری باعث میشود دستگاه به طور تصادفی در سیستم اشتباه قرار نگیرد و به طور غیر منتظره حرکت کند.
– G40، G41 و G42: جبران برش
– G40: جبران برش را لغو میکند؛
– G41: جبران برش چپ؛
– G42: جبران برش راست.
بدون استفاده از جبران برش هنگام برنامه نویسی، باید قطر ابزار را هنگام نوشتن مسیرهای برش در نظر بگیریم. با استفاده از جبران ابزار میتوانیم شعاع ابزار را در ابعاد نقشه برنامهریزی کنیم.
– G53~G59: تنظیم دادهها
G53 داده ماشین ما است که یک ثابت است و فقط در پارامترها یا با استفاده از دستور G92 قابل تغییر است (هرگز این کار را انجام ندهید مگر اینکه دلیل موجهی داشته باشید و بدانید چه کار میکنید).
محدوده جی کد از G54 تا G59 برای تنظیم دادهها استفاده میشود. این دادهها را میتوان در برنامه با استفاده از G10 یا با تنظیم آنها در کنترلر CNC تنظیم کرد. پس از تنظیم، تمام اندازهگیریها از این نقطه انجام میشود. موقعیت X0، Y0 و Z0 را تنظیم میکند که تمام ابعاد از آن تا زمانی که یک مبنای جدید تعریف شود اجرا میشود.
– G70~G76: چرخه های تکرار چندگانه (تراش)
– G70: پایان چرخه؛
– G71: چرخه تراشکاری خشن؛
– G72: چرخه کفتراشی خشن؛
– G73: چرخه براده شکن در سوراخکاری عمیق؛
– G74: چرخه شیارزنی پیشانی؛
– G75: چرخه شیارتراشی؛
– G76: چرخه رزوه تراشی؛
چرخههای تکرار چندگانه به برنامهنویس امکان میدهد تا مطالب زیادی را تنها با چند خط جی کد حذف کند، و اغلب از نمایه به عنوان یک برنامه فرعی استفاده میکند. این چرخهها به ماشین اجازه میدهد تا از مسیرهای ابزار مراقبت کند که باعث تسریع روند برنامه نویسی میشود.
– G80~G86: چرخه های تکرار چندگانه (فرز)
– G80: پایان چرخه؛
– G81: چرخه سوراخکاری؛
– G82: چرخه سوراخکاری با مکث؛
– G83: چرخه سوراخکاری عمیق؛
– G84: چرخه قلاویززنی؛
– G85: چرخه بورینگ؛
– G86: چرخه بورینگ (عملیات سریع)؛
این چرخهها ما را قادر میسازد تا سوراخهای زیادی با حداقل خطوط جی کد ایجاد کنیم. آنها به ما اجازه میدهند تمام اطلاعات را در یک خط ارائه کنیم.
– G90 و G91: موقعیتیابی
یک سیستم موقعیتیابی باید قبل از انجام هر حرکتی تعریف شود. G90 سیستم موقعیتیابی مطلق را انتخاب میکند. در این حالت تمام حرکات اسپیندل از موقعیت مبنا گرفته میشود. به عنوان مثال، اگر X100 توسط کنترلر خوانده شود، ابزار به 100 میلیمتر در جهت مثبت از مبدأ حرکت میکند. اگر X150 حرکت موقعیتی بعدی بود، ابزار را 50 میلیمتر دیگر در آن جهت حرکت میداد.
G91 سیستم موقعیتیابی افزایشی را انتخاب میکند. هنگامیکه G91 فعال است، تمام حرکات اسپیندل از آخرین موقعیت شناخته شده آن گرفته میشود. به عنوان مثال، اگر X100 خوانده شود، ابزار 100 میلیمتر در جهت مثبت از موقعیتی که ابزار قبلاً در آن قرار دارد حرکت میکند. اگر X150 بعد از این حرکت خوانده شود، ابزار 150 میلیمتر دیگر در جهت مثبت حرکت میکند.
لیست کامل جی کد (G-code) دستگاه CNC
در زیر لیست کاملی از جی کد های رایج دستگاه CNC آورده شدهاست.
– G00: موقعیتیابی با حرکت سریع؛
– G01: درونیابی خطی با استفاده از نرخ تغذیه؛
– G02: درونیابی دایرهای در جهت عقربههای ساعت؛
– G03: درونیابی دایرهای، خلاف جهت عقربههای ساعت؛
– G04: مکث زمانی؛
– G10: تنظیم موقعیت داده؛
– G17: انتخاب صفحه X-Y؛
– G18: انتخاب صفحه X-Z؛
– G19: انتخاب صفحه Y-Z؛
– G20: واحدهای امپریالی (اینچی)؛
– G21: واحدهای متریک؛
– G27: نقطه بازگشت مرجع؛
– G28: بازگشت خودکار به نقطه مرجع؛
– G29: انتقال به یک مکان از نقطه مرجع؛
– G31: عملکرد پرش؛
– G32: عملیات برش رزوه روی ماشین تراش؛
– G33: عملیات برش رزوه در فرز؛
– G40: لغو جبران برش؛
– G41: جبران برش از سمت چپ؛
– G42: جبران برش از سمت راست؛
– G43: جبران طول ابزار؛
– G44: جبران طول ابزار؛
– G50: تنظیم دستگاه مختصات (فرز)؛
– G50: حداکثر دور در دقیقه (تراش)؛
– G52: تنظیم دستگاه مختصات مختصات محلی؛
– G53: تنظیم دستگاه مختصات مختصات ماشین؛
– G54~G59: مجموعه داده؛
– G70~G76: چرخه های تکرار چندگانه (تراش)؛
– G70: پایان چرخه؛
– G71: چرخه تراشکاری خشن؛
– G72: چرخه کفتراشی خشن؛
– G73: چرخه براده شکن در سوراخکاری عمیق؛
– G74: چرخه شیارزنی پیشانی؛
– G75: چرخه شیارتراشی؛
– G76: چرخه رزوه تراشی؛
– G80~G86: چرخه های تکرار چندگانه (فرز)؛
– G80: پایان چرخه؛
– G81: چرخه سوراخکاری؛
– G82: چرخه سوراخکاری با مکث؛
– G83: چرخه سوراخکاری عمیق؛
– G84: چرخه قلاویززنی؛
– G85: چرخه بورینگ؛
– G86: چرخه بورینگ (عملیات سریع)؛
– G87: چرخه برگشتی؛
– G90: موقعیتیابی مطلق؛
– G91: موقعیتیابی افزایشی؛
– G92: تغییر مکان نقطه مبدا؛
– G94: تغذیه در دقیقه؛
– G95: تغذیه هر دور؛
– G96: سرعت سطح ثابت (تراش)؛
– G97: لغو سرعت سطح ثابت؛
– G98: تغذیه در دقیقه (تراش)؛
– G99: تغذیه در هر دور (تراش).