فهرست مطالب:
بروزرسانیشده در خرداد 23, 1402
دانستن اینکه چگونه برنامه نویسی CNC را انجام دهید می تواند یک مهارت قدرتمند باشد، چه حرفه ای باشید و چه سرگرمی. این مقاله با مثال های ساده برنامه نویسی CNC را برای مبتدیان معرفی می کند.
برنامه نویسی CNC چیست؟
برنامه نویسی کنترل عددی کامپیوتر (CNC) فرآیند نوشتن کُدی است که ماشین CNC را برای اجرای فرآیند ماشینکاری مورد نظر کنترل می کند. وظیفه یک برنامهنویس CNC، توسعه برنامهای است که به طور کامل الگوی طراحی داده شده را تولید کند.
NC، CNC و DNC سه نوع سیستم ماشینکاری قابل برنامه ریزی هستند.
- سیستم های NC اولین ماشین های قابل برنامه ریزی بودند که به ندرت در صنعت ماشینکاری مدرن استفاده می شوند.
- ماشین های CNC از یک سیستم کامپیوتری استفاده می کنند که جایگزین روش سنتی ورودی نوار پانچ ماشین های NC شده است.
- به طور مشابه، سیستم DNC شامل شبکه ای از ماشین های CNC است که توسط یک سیستم کامپیوتر اصلی کنترل می شود. این کار با کاهش زمان چرخه کلی، بهره وری را افزایش می دهد.
با این حال، ماشینهای CNC پرطرفدارترین دستگاههایی هستند که در بین این سه مورد استفاده میشوند و برای کاربردهای مختلف از پروژههای DIY گرفته تا تولید صنعتی در مقیاس بزرگ به راحتی در دسترس هستند.
دستگاه CNC به طور کلی بر اساس طرحی که در مرحله CAD آماده شده است، کار میکند. این فایل CAD سپس به نرم افزار CAM وارد شده و به Gکدهای مناسب تبدیل می شود. این جی کُدهای حرکات مختلف، دستگاه CNC را برای انجام عملیات مورد نیاز کنترل می کنند.
برای کسب اطلاعات بیشتر در مورد برنامه نویسی سی ان سی دوره آنلاین ما رو ببنید.
تقریباً هر دستگاه CNC از ترکیبی از G-code و M-code برای انجام عملیات برش و کنترل وظایف مختلف دستگاه استفاده می کند.
جدای از اینها، برنامه نویسی CNC از کدهایی مانند S-codes، N-codes ، T-code، D-codes و F-codes استفاده می کند.
مثلا از کدهای S برای تغییر سرعت اسپیندل ماشین CNC استفاده می شود، از کدهای T برای دستورات تغییر ابزار برنامه نویسی استفاده می شود، کدهای D آفست را در قطر برش تنظیم می کنند و کدهای F نرخ تغذیه یا پیشروی را تعیین می کنند.
برنامه نویسی CNC – با یک مثال توضیح داده شده است
اجازه دهید یک مثال فرز با مسیر ابزار همانطور که در تصویر زیر نشان داده شده است در نظر بگیریم.
برای برنامه ریزی یک روتر CNC برای اجرای عملیات ماشینکاری مورد نظر، برنامه نویس CNC یک فایل G-code با تمام دستورالعمل های ماشینکاری مورد نیاز آماده می کند.
N01 G21 G90 G94 N02 G00 X20 Y00; موقعیت 1 N03 G42 D15; جبران ابزار به سمت راست N04 S12000 F250 M03; سرعت اسپیندل و نرخ تغذیه N05 G01 Z-15; پایین آوردن ابزار برش N06 G01 X80 Y00; موقعیت 2 N07 G01 X80 Y75; موقعیت 3 N08 G03 X75 Y80 R05; موقعیت 4 N09 G01 X00 Y80; موقعیت 5 N10 G01 X00 Y20; موقعیت 6 N11 G01 X20 Y00; موقعیت 7 N12 G40; لغو جبران ابزار N13 G00 Z15 X00 Y00; نقطه مبدا N14 M03; توقف اسپیندل
- در این کد، کد N نشان دهنده شماره بلوک است و هیچ، دخالت عملی در عملیات ماشینکاری ندارد. این فقط برای کمک برنامه نویس است که کد خود را ردیابی کند.
- در بلوک N01، حرف G21 به ماشین اطلاع می دهد که همه مقادیر در واحدهای متریک (mm) هستند، G90 انتخاب ماشینکاری مطلق است و G94 نرخ تغذیه را روی میلی متر در دقیقه تنظیم می کند.
- بلوک N02 ابزار برش را از نقطه مبنا (O) به موقعیت 1 حرکت می دهد. در اینجا G00 نشان دهنده حرکت خطی سریع بدون عملیات برش است.
- در بلوک N03، کُد G42 نشان دهنده جبران ابزار به سمت راست و D15 نشان دهنده افست مورد نیاز به سمت راست است.
جبران ابزار نقش مهمی در دقت قطعه دارد. به طور معمول، دستگاه CNC با قرار دادن مرکز ابزار برش روی مسیر ابزار، مسیر ابزار را دنبال می کند و در نتیجه دقت ابعادی را به همراه دارد.
- استفاده از G24 برای جبران ابزار، ابزار را به گونه ای جبران می کند که لبه برشی ابزار مماس با مسیر ابزار باشد و در نتیجه علت عدم دقت ابعادی رفع میگردد.
- خط N04 پارامترهای ماشینکاری را تنظیم می کند، جایی که S12000 نشان دهنده RPM برشکاری، F250 نشان دهنده نرخ تغذیه (پیشروی) و M03 نشان دهنده چرخش در جهت عقربه های ساعت ابزار برش است.
- پس از تنظیم پارامترهای ماشینکاری، بلوک N05 به دستگاه فرمان می دهد تا ابزار برش را 15 میلی متر در امتداد محور Z پایین بیاورد. در اینجا G01 نشان دهنده تغذیه ابزار برش در طول یک حرکت خطی است.
- در بلوک N06، کد حرکت خطی ابزار برش را به موقعیت 2 مشخص می کند، جایی که مختصات X و Y به ترتیب برابر با 80 و 00 است.
- به طور مشابه، بلوک N07 ابزار برش را در امتداد یک مسیر خطی به موقعیت 3 می برد.
- در حالی که در بلوک N08، در جی کد G03 نشان دهنده درون یابی دایره ای ابزار برش در جهت خلاف جهت عقربه های ساعت از موقعیت 3 تا موقعیت 4 است و R05 نشان دهنده شعاع مسیر منحنی است که باید توسط برش ردیابی شود.
- پس از آن، بلوک های N09، N10 و N11 نشان دهنده درون یابی خطی ابزار برش از موقعیت 4 به موقعیت 5، موقعیت 5 به موقعیت 6 و موقعیت 6 به موقعیت 1 است.
- بلوک N12 جبران ابزار را لغو می کند، N13 ابزار برش را در نقطه مبنا قرار می دهد و N14 حرکت اسپیندل را متوقف می کند.
بنابراین، در این مثال، بلوک 1 تا بلوک 4 شامل دستوراتی برای راه اندازی ماشین برای عملیات است.
بلوک 5 تا بلوک 11 عملیات برش مورد نظر را اجرا می کند و بلوک 12 تا بلوک 13 فرآیند ماشینکاری را با بازگرداندن دستگاه به حالت اولیه خود تکمیل می کند.
انواع برنامه نویسی CNC
به طور کلی سه نوع برنامه نویسی CNC وجود دارد، و هر نوع مزایا و کاربردهای خود را دارد، که برای یک برنامه نویس CNC داشتن درک اولیه از هر سه مهم است.
1. برنامه نویسی دستی CNC
برنامه نویسی دستی CNC همانطور که از نام آن پیداست شامل کدگذاری دستی برنامه از ابتدا می باشد. این نیاز به یک فرد بسیار ماهر دارد که قادر به درک هر کُد و تجسم نتیجه برای اطمینان از نتایج دقیق باشد.
برنامه نویس، از نرم افزار ویرایشگر G-code برای نوشتن و ویرایش کد خود استفاده می کند تا عملیات ماشینکاری مورد نظر را انجام دهد.
به طور کلی، هنگام اجرای برنامهنویسی دستی CNC، برنامهنویس CNC ترسیم قطعه 2 بعدی را تفسیر میکند و مسیر ابزار ایدهآل را برای اجرای عملیات ماشینکاری مورد نظر تعیین میکند.
این نوع برنامه نویسی CNC به طور کلی برای عملیات ماشینکاری ساده تا متوسط توصیه می شود.
به عنوان مثال، برنامه ریزی دستی تراش CNC برای انجام عملیات ماشینکاری زیر.
N1 T0201 ; ابزار شماره 2 با افست 1 N2 G97 S450 M03 ; چرخش اسپیندل در جهت عقربه های ساعت با 450 دور در دقیقه N3 G01 X30 G95 F0.3 ; P1 N4 G01 Z-15 ; P2 N5 G01 X50 Z-30 ; P3 N6 G01 Z-60 ; P4 N7 G01 X80 Z-80 ; P5 N8 G01 X120 ; P6
مسیر ابزاری که در اینجا دنبال میشود از یک نمودار خطی ساده پیروی میکند و برنامهنویسی را با استفاده از تکنیک برنامهنویسی دستی CNC آسان میکند.
برنامه نویسی دستی CNC نیاز به تهیه طرح سه بعدی CAD را از بین می برد و فرآیند ماشینکاری را برای عملیات ساده تا متوسط سرعت می بخشد.
2. برنامه نویسی CAM برای CNC
برنامه نویسی ماشینکاری به کمک کامپیوتر (CAM) یکی از ساده ترین و در عین حال بسیار قدرتمندترین روش های برنامه نویسی یک ماشین CNC است.
در این روش از نرم افزار برای تهیه طرح CAD بسیار دقیق با ابعاد دقیق محصول نهایی استفاده می شود.
با در نظر گرفتن مثال مشابهی که در بالا ذکر شد، برنامه نویسی CAM به جای ترسیم مسیر ابزار دوبعدی، به مدل سه بعدی قطعه کار نیاز دارد.
سپس این طرح به نرم افزار CAM وارد می شود، جایی که می توانید مسیر ابزار مورد نیاز و سایر پارامترهای ماشینکاری مرتبط را تنظیم کنید.
سپس نرم افزار CAM به طور خودکار طرح را به Gکدهای مربوطه تبدیل می کند .
بر خلاف برنامه نویسی دستی CNC، برنامه نویسی CAM به دانش تخصصی G-code نیاز ندارد. اما گاهی برای رفع مشکل و خطا های مربوط نیاز به دانش برنامه نویسی دستی دارید.
3. برنامه نویسی محاورهای CNC
برنامه نویسی مکالمه (محاورهای) CNC یکی از ساده ترین تکنیک های برنامه نویسی است که برای کار با CNC به مهارت خاصی نیاز ندارد.
در این تکنیک، برنامه نویس می تواند دستگاه CNC را مستقیماً از واحد کنترل دستگاه، با استفاده از یک سری از پیش تنظیمات داخلی، پیکربندی کند.
اپراتور پارامترهای مختلفی مانند عملیات ماشینکاری مورد نظر، نوع ابزار مورد استفاده، نوع ماده برش و انواع برش هایی که باید در مواد ایجاد شود را انتخاب می کند.
عملیات برنامهنویسی گفتاری برای برنامههایی مانند نمونهسازی سریع (پروتوتایپ) و سایر برنامههای تولیدی که سرعت از اهمیت کلیدی برخوردار است، ایدهآل میکند.
آیا یادگیری برنامه نویسی CNC سخت است؟
پاسخ به این سوال فراتر از یک بله یا خیر ساده است زیرا برنامه نویسی اولیه CNC می تواند برای فردی با مهارت های ریاضی خوب و درک عملکرد یک دستگاه CNC نسبتا آسان باشد.
در حالی که برنامه نویسی فرآیند CNC کمی پیچیده تر به یک برنامه نویس ماهر با حدود 1 سال تجربه به عنوان یک ماشین کار CNC نیاز دارد.
برنامه نویسی ماشین های پیچیده مانند ماشین های تراش چند اسپیندل ، ماشین های CNC شش محوره و … نیاز به یک برنامه نویس خبره با سال ها تمرین و دانش کامل از عملیات های مختلف ماشین کاری دارد.
دشواری برنامه نویسی CNC به نوع برنامه نویسی که انجام می شود نیز بستگی دارد.
از سوی دیگر، برنامه نویسی CAM به تلاش نسبتاً کمتری نیاز دارد زیرا بیشتر کارها به طور خودکار توسط سیستم کامپیوتری انجام می شود.
از سوی دیگر، برنامه نویسی معمولی حتی نیازی به برنامه نویس متخصص ندارد، زیرا اپراتور را ملزم می کند تا یک سری تنظیمات از پیش تعیین شده را برای شروع عملیات ماشینکاری انتخاب کند.
چگونه یک برنامه نویس CNC شویم؟
محیط کاری CNC شامل نقشهای مختلفی مانند اپراتور CNC، ماشینکار و برنامهنویس است.
اپراتور CNC به عنوان یک نقش سطح ابتدایی نیازی به تجربه خاصی ندارد. با این حال، دیپلم هنرستان و آشنایی با دستگاه های CNC برخی از الزامات اولیه هستند.
به طور مشابه، یک ماشینکار CNC نقش سطح بعدی است که به یک فرد با تجربه با دیپلم هنرستان و دانش در مورد ماشینکاری مواد مختلف نیاز دارد.
حقوق یک ماشینکار CNC به طور قابل توجهی بیشتر از یک اپراتور CNC است، اما کمتر از یک برنامه نویس CNC است.
برنامه نویس CNC بالاترین نقش در کارگاه CNC دارد که به یک فرد بسیار با تجربه با مهارت های عالی CAD/CAM نیاز دارد.
بر خلاف اپراتور و ماشینکار، برنامهنویس CNC با فاز کامپیوتری ماشینکاری سروکار دارد.
اگرچه یک برنامه نویس CNC لزوماً نیازی به مدرک فارغ التحصیلی ندارد، اما برخی از کارفرما ها، افراد با پیشینه تحصیلی خوب ترجیح می دهند.
بنابراین، یک دیپلم هنرستان یا دبیرستان همراه با گواهی های برنامه نویسی به شما کمک می کند تا فرصت خود را برای تبدیل شدن به یک برنامه نویس CNC افزایش دهید.
فردی با بیش از 5 سال تجربه در کارگاه CNC، دانش کافی در مورد عملیات مختلف CNC مانند تراش CNC ، فرز CNC، روترهای CNC ، برش لیزری CNC و غیره و سیستم محور آنها خواهد داشت.
طبق گزارش اداره آمار کار ایالات متحده (BLS) : تگزاس در استخدام برنامه نویسان ابزار CNC بالاترین رتبه را دارد و پس از آن کالیفرنیا و میشیگان با میانگین حقوق سالانه حدود 60780 دلار قرار دارند.
نتیجه گیری
برنامه نویسی CNC بخشی جدایی ناپذیر از عملکرد دستگاه CNC برای انجام عملیات ماشینکاری مورد نظر است.
یک برنامه نویس ماهر CNC می تواند کیفیت فرآیند را افزایش دهد، در حالی که مهارت های برنامه نویسی پایین تر می تواند منجر به خروجی ماشینکاری نامناسب با کیفیت پایین شود.
به طور کلی، برنامه نویسی دستی CNC برای برنامه نویسان خبره توصیه می شود، در حالی که برنامه نویسی CAM برای عملیات ماشینکاری پیچیده استفاده می شود.
از سوی دیگر، برنامهنویسی مکالمه برای برنامههای ساده که در آن زمان چرخه سریع مورد نیاز است، ایدهآل است.
4 دیدگاه
سلام خسته نباشین میخواهم برنامه نویس متخصص شویم.
آیا برنامه نویسی در دستگاه تراش و دستگاه فرز خیلی تفاوت دارد؟
آیا وقتی به سیستم فانوک بلدیت درست داشته باشی میتوان با سیستم زیمنس کارکرد؟
سلام ودرود
از دیدگاه برنامه نویس در سطح مقدماتی : ماشینهای CNC با کنترلرهای مختلف وجود دارند لذا پوشش همه آنها در یک دوره آموزشی کار دشواری است اما نحوه برنامه نویسی همه آنها مشابه هم میباشد لذا تسلط بر یکی از کنترلرها، برنامه نویس را قادر خواهد ساخت تا در حدود 70 الی 80 درصد که در مواجه شدن با کنترلر جدید با مطالعه کاتالوگ دستگاه درصدد برنامه نویسی آن برآید. کنترلرهایی که با استاندارد DIN/ISO یا همان جی کد ها برنامه نویسی می شوند (مانند: فاگور، فانوک بوش، زیمنس، میتسوبیشی، اکوما، هایدنهاین ایزو)
از دیدگاه اپراتوری: کنترلرهای زیادی وجود دارد و نحوه اپراتوی هر کدام متفاوت هستش، اما بازهم کلیت یکی هست یعنی صفر قطعه کار، آفست و معرفی ابزار و شناخت دستگاه مختصات به عبارتی حدود 50 الی 60 درصد شبیه هم هستند و باید با مراجعه به کاتالوگ یا منوال دستگاه آموزش را تکمیل کنید.
برای آموزش برنامه نویسی CNC به این لینک مراجعه کنید.
سلام .من فقط برنامه نویسی تراش رو میخوام امکانش هست
درود بر شما آموزش برنامه نویسی CNC شامل تراش و فرز هست لطفا جهت اطلاعات بیشتر : 👈👈 به این لینک مراجعه کنید. (آموزش برنامه نویسی CNC)👉👉