پشتیبانی مطمئن🔧
تصمیمگیری آسانتر
پاسخگویی مسئولانه 📞
برای تمامی سوالاتی که دارید
پایداری در عملکرد⚙️
صداقت در خدمات
حق مشتری، تعهد ماست🤝
شریک تصمیمهای ما هستید
درک کامل نحوه کارکرد ماشینهای کنترل عددی کامپیوتری (CNC) و پرینترهای سهبعدی بدون آشنایی با زبان برنامهنویسی جی کد (G-code) ممکن نیست. این زبان بهعنوان پل ارتباطی حیاتی بین طراحی دیجیتال و تولید فیزیکی عمل میکند و دستورالعملهای دقیقی را برای حرکت، برش، و انجام عملیات به ماشینها ارائه میدهد. جی کد چیست و چرا اینقدر اهمیت دارد؟ در این مقاله جامع، به بررسی عمیق G-code چیست، ساختار آن، نحوه خواندن، کدهای پرکاربرد، تفاوت آن با M-code، و نرمافزارهای مرتبط خواهیم پرداخت. با مطالعه این راهنما، از یک مبتدی به یک متخصص در حوزه برنامهنویسی CNC تبدیل خواهید شد.
جی کد (G-code) که مخفف “Geometric Code” یا کدهای هندسی است، یک زبان برنامهنویسی استاندارد برای کنترل ماشینهای CNC و پرینترهای سهبعدی به شمار میرود. این زبان به دستگاهها میگوید که دقیقاً چه کاری را باید انجام دهند، به کجا حرکت کنند، و چگونه کار مورد نظر را انجام دهند.
تاریخچه G-code به دهه 1950 میلادی بازمیگردد، همزمان با انقلاب صنعتی دیجیتال. این زبان ابتدا در انستیتوی تکنولوژی ماساچوست (MIT) در سال 1958 اختراع شد و سپس در دهه 1960 توسط اتحادیه صنایع الکترونیک استانداردسازی و رایج گشت. در ابتدا برای ماشینهای تراش و فرز به کار گرفته میشد، اما بهمرور زمان، کاربرد آن به پرینترهای سهبعدی، دستگاههای برش لیزری و دیگر تجهیزات تولید دیجیتال گسترش یافت.
تمام دستگاههای CNC برای انجام عملکرد خود به جی کد نیاز دارند. درک این زبان، برخلاف تصور رایج، کار سختی نیست و یادگیری اصول اولیه، چگونگی عملکرد آن و ساخت جی کد برای پروژههای مختلف بسیار آسان است. اهمیت جی کد در تولید مدرن از آنجا ناشی میشود که امکان اجرای عملیات دقیق و خودکار را بدون نیاز به دخالت دستی فراهم میکند. بهعنوانمثال، تصور کنید بهجای برش دستی یک مکعب چوبی، نیاز به ساخت 50 مکعب یا یک طرح پیچیدهتر دارید؛ اینجا جی کد با فراهم آوردن مجموعهای از فرمانهای خودکار، عملیات را با دقت بالا اجرا میکند.
در صنعت، به طور اعم و در حوزه ماشین ابزار به طور اخص برای برقراری ارتباط با ماشین های NC و CNC از دستوراتی که با حرف G انگلیسی شروع می شوند استفاده می کنند. این دستورات در بر گیرنده تمام فرامین حرکتی و تنظیمی می باشند که با کمک این دستورات که اصطلاحاً G CODE نامیده می شوند، می توان ماشین را کنترل و دستورات مورد نظر را اعمال کرد.
جی کد در حقیقت ترکیبی از حروف الفبا و اعداد است که این اعداد میتوانند چندین رقم داشته باشند. فاصله بین اعداد و حروف بسته به نوع ماشین CNC متفاوت خواهد بود. هر خط از برنامهنویسی G-code میتواند شامل چندین دستورالعمل باشد که به آنها “بلوک G-code” نیز گفته میشود. دستگاه CNC این دستورالعملها را در یک توالی خاص از چپ به راست و از بالا به پایین میخواند و اجرا میکند.
در ماشینهای CNC، دو نوع جی کد مورد استفاده قرار میگیرند:

جی کدها لزوماً همیشه با حرف “G” شروع نمیشوند، هرچند حرف “G” از پرکاربردترین حروف در نوشتن دستورات جی کد است. برخی از حروف متداول که در دستورات G-code استفاده میشوند عبارتاند از:
هر دستور G-code معمولاً شامل یک کد فرمان (مانند G01 یا M104) و پارامترهایی است که مختصات یا تنظیمات خاصی را مشخص میکنند (مثلاً X10 Y20 Z5 برای موقعیت یا F1500 برای سرعت حرکت).
برای اینکه برنامهنویسان دیگر یا حتی خودتان در آینده، خطوط یا بخشهای خاصی از کد را بهتر درک کنید، میتوانید از “کامنت” استفاده کنید. هر چیزی که بعد از علامت سمیکالن (;) در یک خط نوشته شود، هنگام اجرای G-code توسط دستگاه نادیده گرفته میشود و صرفاً برای توضیحات است.
خواندن دستورات G-code در ابتدا ممکن است پیچیده به نظر برسد، اما با دانستن فرمت هر دستور و معنای هر بخش، میتوان آن را راحتتر درک کرد. هر دستور جی کد معمولاً از کدهای حرکتی و پارامترهای مختصاتی تشکیل شده است که حرکت و عملیات ابزار را تعیین میکنند.
برای فهم دستورات جی کد، به ترتیب زیر عمل کنید:
X10 Y15 Z-5 به دستگاه میگوید به مختصات (10, 15, -5) حرکت کند.F100 سرعت حرکت ابزار را روی 100 میلیمتر بر دقیقه تنظیم میکند.S2000 سرعت اسپیندل را روی 2000 دور بر دقیقه تنظیم میکند.فرض کنید خط کد زیر را داریم:
G01 X10 Y5 Z-3 F150
با تمرین، میتوانید با سرعت و دقت بیشتری دستورات جی کد را بخوانید و درک کنید که هر کد چگونه عملکرد دستگاه CNC را هدایت میکند.
در این بخش، به معرفی پرکاربردترین کدهای پرکاربرد CNC (کدهای G) میپردازیم که برای هر برنامهنویس CNC ضروری هستند:
در دنیای CNC، G-code و M-code هر یک جنبههای مختلفی از فرآیند کار دستگاهها را کنترل میکنند و مکمل یکدیگر هستند. در واقع، هیچکدام نمیتوانند مستقل از دیگری کار کنند و درستی عملیات یک دستگاه CNC وابسته به ترکیب هر دو کد M و G است.
جی کدها عمدتاً به حرکت ابزار در محورهای X, Y, Z، چرخش ابزار، نرخ تغذیه و سایر کنترلهای سرعت و حرکت مربوط میشوند. آنها جنبههای هندسی فرآیند ماشینکاری را کنترل میکنند و دستگاه CNC را فعال میسازند.
از طرف دیگر، امکدها (M-code) (که برخی معتقدند M مخفف Machine است) عملکردهای متفرقه و جانبی دستگاه را کنترل میکنند که شامل حرکت مستقیم نمیشوند. دستورات M-code به کنترلکننده منطقی قابل برنامهریزی (PLC) دستگاه فرمان میدهند.
M-code میتواند موارد زیر را کنترل کند:
برخی از رایجترین کدهای M عبارتاند از:
برخلاف جی کدها که در ماشینهای CNC مختلف تفاوت دارند، بیشتر دستورات M-code در این دستگاهها یکسان هستند.
برای درک عمیقتر برنامهنویسی CNC، نگاهی به مثالهای واقعی از جی کد تراش و فرز و همچنین پرینت سهبعدی میاندازیم:
این یک نمونه برنامه ساده برای برش یک مربع در یک قطعه کار با استفاده از دستگاه فرز CNC است:
G21 ; تنظیم واحد به میلیمتر (G21 sets units to millimeters)
G90 ; انتخاب مختصات مطلق (G90 selects absolute coordinates)
M03 S2000 ; روشن کردن اسپیندل با سرعت 2000 دور بر دقیقه (M03 turns on spindle at 2000 RPM)
G00 X0 Y0 Z5 ; حرکت سریع به نقطه شروع (0,0) و ارتفاع 5 میلیمتر بالای قطعه کار (G00 rapid move to X0 Y0 Z5)
G01 Z-1 F100 ; پایین آوردن ابزار به داخل قطعهکار (عمق -1 میلیمتر) با سرعت تغذیه 100 (G01 lowers tool to Z-1 with feed rate F100)
G01 X50 Y0 F200 ; حرکت به سمت راست به X50 (Y0 ثابت) با سرعت تغذیه 200 (G01 moves to X50 Y0)
G01 X50 Y50 ; حرکت به بالا به Y50 (X50 ثابت) (G01 moves to X50 Y50)
G01 X0 Y50 ; حرکت به سمت چپ به X0 (Y50 ثابت) (G01 moves to X0 Y50)
G01 X0 Y0 ; حرکت به پایین به نقطه شروع (0,0) (G01 moves to X0 Y0)
G01 Z5 ; بالا بردن ابزار به ارتفاع 5 میلیمتر بالای قطعه کار (G01 raises tool to Z5)
M05 ; خاموش کردن اسپیندل (M05 turns off spindle)
M30 ; پایان برنامه (M30 ends program)
فرض کنید میخواهیم یک دایره با شعاع 10 میلیمتر را برش دهیم که مرکز آن در نقطه (20, 20) قرار دارد:
G21 ; تنظیم واحد به میلیمتر (G21 sets units to millimeters)
G90 ; انتخاب مختصات مطلق (G90 selects absolute coordinates)
M03 S1500 ; روشن کردن اسپیندل با سرعت 1500 دور بر دقیقه (M03 turns on spindle at 1500 RPM)
G00 X30 Y20 Z5 ; حرکت سریع به نقطه شروع بالای دایره (X=30, Y=20, Z=5) (G00 rapid move to X30 Y20 Z5)
G01 Z-5 F100 ; پایین آوردن ابزار به داخل قطعهکار (عمق -5 میلیمتر) با سرعت تغذیه 100 (G01 lowers tool to Z-5 with feed rate F100)
G02 X30 Y20 I-10 J0; حرکت دایرهای ساعتگرد برای ایجاد برش دایرهای (G02 circular motion to cut circle)
G01 Z5 ; بالا بردن ابزار (G01 raises tool to Z5)
M05 ; خاموش کردن اسپیندل (M05 turns off spindle)
M30 ; پایان برنامه (M30 ends program)
در خط G02 X30 Y20 I-10 J0، دستور G02 حرکت دایرهای ساعتگرد را از نقطه فعلی به مختصات (30, 20) تعیین میکند. پارامترهای I و J مرکز دایره را نسبت به نقطه شروع حرکت دایرهای مشخص میکنند؛ در اینجا I=-10 و J=0 به معنای اینکه مرکز دایره 10 میلیمتر در جهت منفی X از نقطه شروع (که در اینجا X30, Y20 است) قرار دارد.
در پرینترهای سهبعدی FDM، جی کد وظیفه کنترل حرکت هد پرینتر و تنظیمات دقیق اکستروژن فیلامنت را بر عهده دارد.
G01 X50 Y25 Z0.3 F1200 هد پرینتر را به X=50 mm، Y=25 mm، Z=0.3 mm با سرعت 1200 mm/min حرکت میدهد.G01 X60 Y25 E5 F1500 هد را به X=60 mm و Y=25 mm حرکت داده و همزمان 5 mm فیلامنت اکسترود میکند.G01 E-1 F1800 استفاده میشود که 1 mm فیلامنت را به داخل میکشد.M104 S200 دمای نازل را روی 200°C تنظیم میکند. M140 S60 دمای صفحه گرمکننده را روی 60°C تنظیم میکند.M106 S128 سرعت فن را روی 50 درصد تنظیم میکند. M107 فن را خاموش میکند.برنامهنویسی CNC و آموزش G-code تنها به نوشتن کدها محدود نمیشود؛ برای تمرین و تست آنها، نیاز به نرمافزارهای مخصوصی دارید که بهعنوان نرمافزارهای شبیهساز و کامپایلر عمل میکنند. این نرمافزارها به شما اجازه میدهند تا برنامهها را قبل از اجرا بر روی دستگاه واقعی بررسی کنید و از صحت و دقت حرکتها اطمینان حاصل کنید، از برخورد ابزار و آسیبهای احتمالی جلوگیری نمایید.
هر فایل جی کد به دلیل تنظیمات خاص دستگاه، ماده و شرایطی که برای آن ساخته شده، منحصر به فرد است. اگر سعی کنید این فایل را روی دستگاهی متفاوت از آن دستگاهی که فایل برای آن ساخته شده است اجرا کنید، ممکن است باعث ایجاد مشکل یا حتی آسیب به دستگاه شود. دلیل این تفاوتها، فریمور (Firmware) دستگاه است. فریمور دستورهای جی کد را برای دستگاه ترجمه و اجرا میکند.
انواع مختلفی از فریمورها مانند Marlin، Klipper و RepRap وجود دارند که هر کدام نیاز به “نسخههای” متفاوتی از جی کد دارند. اگر فایل جی کدی برای یک فریمور طراحی شده و میخواهید آن را روی دستگاهی با فریمور دیگر اجرا کنید، بهترین راه این است که فایل اصلی مدل را دوباره در نرمافزار اسلایسر باز کرده و برای فریمور جدید “برش دهید”.
آموزش G-code و برنامهنویسی CNC نیازمند صبر، پشتکار و تمرین است. در اینجا نکاتی برای یادگیری سریعتر و مؤثرتر جی کد آورده شده است:
جی کد (G-code) بهعنوان زبان برنامهنویسی بنیادی برای ماشینهای CNC و پرینترهای سهبعدی، نقشی حیاتی در فرآیندهای تولید دیجیتال ایفا میکند. این زبان با کنترل دقیق حرکت، توقف، سرعت و سایر عملیات، دقت، سرعت و اتوماسیون در تولید را افزایش داده و از خطاهای انسانی جلوگیری میکند. با درک عمیقتر و آشنایی با دستورات مختلف جی کد، میتوانید عملکرد دستگاهها را بهینه کرده و به تولید قطعات با دقت بالا کمک کنید.
چه یک علاقهمند به حوزه CNC باشید و چه یک متخصص در صنعت تولید، تسلط بر نحوه خواندن جی کد و آموزش G-code میتواند شما را در مسیر شغلیتان یاری دهد و از بروز مشکلات احتمالی در فرآیند تولید جلوگیری کند.
جی کد (G-code) یک زبان برنامهنویسی است که به ماشینهای CNC (کنترل عددی کامپیوتری) و پرینترهای سهبعدی دستور میدهد که چگونه حرکت کنند، کجا متوقف شوند و با چه سرعتی عملیات خود را انجام دهند. کاربرد اصلی آن در هدایت ابزار برای برش، حکاکی، سوراخکاری و تولید قطعات با دقت بالا در صنایع مختلف و پرینت سهبعدی است.
G-code عمدتاً حرکتهای مکانیکی دستگاه، سرعت و مسیر ابزار را کنترل میکند (جنبههای هندسی). در حالی که M-code به عملکردهای جانبی و متفرقه دستگاه که شامل حرکت نیستند، مانند روشن/خاموش کردن اسپیندل، کنترل جریان خنککننده، یا پایان برنامه، فرمان میدهد. هر دو کد برای عملکرد صحیح دستگاه CNC ضروری و مکمل یکدیگرند.
خیر. درستی عملیات در یک دستگاه CNC وابسته به ترکیب هر دو کد M و G است که میتوانند در کنار هم فعالیتهای هندسی و غیرهندسی دستگاه را کنترل کنند.
برای تولید جی کد از نرمافزارهای CAD/CAM مانند Mastercam، Fusion 360، SolidWorks و FreeCAD استفاده میشود. برای پرینترهای سهبعدی، نرمافزارهای اسلایسر مانند Cura و PrusaSlicer فایلهای سهبعدی را به جی کد تبدیل میکنند. نرمافزارهای شبیهساز و ویژوالایزر نیز برای بررسی و تست جی کد قبل از اجرای واقعی کاربرد دارند.
هر فایل جی کد به دلیل تنظیمات خاص دستگاه (مانند اندازه صفحه ساخت، محدودیتهای محور)، نوع فریمور (مانند Marlin یا Klipper)، و خواص ماده مورد استفاده (مثلاً PLA در مقابل ABS) منحصر به فرد است. اجرای یک فایل جی کد روی دستگاهی متفاوت از آنچه برای آن ساخته شده، میتواند باعث مشکل یا آسیب به دستگاه شود.
آیا آمادهاید تا دانش خود را در زمینه برنامهنویسی CNC عمیقتر کنید یا پروژههای پیچیده خود را به دست متخصصان بسپارید؟
ماشینسازی آریا با ارائه دستگاههای پیشرفته CNC (مانند CNC فرز، تراش و لیزر) که با معتبرترین نرمافزارهای جی کد سازگارند، تجربهای دقیق و کارآمد را برای شما فراهم میآورد. همچنین، مبین تک با ارائه مقالات آموزشی و نکات ایمنی در کار با دستگاههای CNC، به شما در افزایش مهارت و دانش کمک میکند.
برای آموزش G-code و برنامهنویسی CNC میتوانید به دورههای تخصصی راناسا مکاترونیک مراجعه کنید. و اگر به خدمات پرینت سهبعدی با کیفیت بالا نیاز دارید و نمیخواهید با پیچیدگیهای جی کد دست و پنجه نرم کنید، میتوانید قطعه مورد نظر خود را به متخصصان ماداتکنولوژی بسپارید و آن را آماده و دقیق تحویل بگیرید. همچنین، 3DPE و ثمین 3D نیز خدمات و آموزشهای جامعی در زمینه پرینت سهبعدی و جی کدنویسی ارائه میدهند.