Bahasa Pemrograman CNC – Kode G dan Kode M
Singkatan CNC dalam istilah mesin CNC berarti Computer Numerical Control. Biasanya, ketika kita memikirkan permesinan CNC, kita membayangkan peralatan mesin CNC, tetapi sebenarnya, mesin CNC modern mewakili istilah yang lebih luas. Robot industri dan beberapa mesin pengukur yang dikendalikan komputer juga merupakan mesin CNC.
Saat itu tahun 1952,karena kebutuhan akan pemesinan suku cadang yang tepat dalam industri penerbangan,ketika John T. Parsons, bekerja sama dengan IMB (International Business Machines Corporation) dan MIT (Massachusetts Institute of Technology), mengembangkan penggilingan CNC pertama mesin. Sejak saat itu, produksi industri yang lebih cerdas telah tersebar luas dan permesinan CNC telah tersedia untuk semua industri, seiring dengan munculnya dan penggunaan bahasa pemrograman CNC – kode G dan kode M.
Apa itu kode G dan kode M?
Sepanjang 70 tahun sejarah perkembangan mesin CNC, berbagai bahasa pemrograman tidak hanya kode G dan kode M, telah digunakan untuk pemrograman mereka. Jadi, pada awalnya, mesin perintis Parsons diprogram dengan bantuan kaset yang dibor, dan kemudian, pada tahun 1956, bahasa pemrograman khusus (bahasa pemrograman APT) dikembangkan untuk mesin CNC.
RS-274 atau lebih dikenal dengan G-code, yang juga dibahas dalam artikel ini, dibuat pada dekade yang sama. G-code dikembangkan dari bahasa pemrograman APT yang berisi data tentang lokasi atau geometri pemotong (alat), dan fungsi mesin non-geometri lainnya seperti kecepatan spindel, pendinginan, dll. Fungsi RS-274 (kode G dan M) mewarisi dasar-dasarnya dari bahasa pemrograman APT dengan sedikit modifikasi yang membuat program lebih pendek dan lebih nyaman untuk unit kontrol mesin.
APT | Kode G dan M |
BUKA {X, Y, Z} | G1, G2, G3 {X, Y, Z} |
FEDRAT | F |
SPINDLE CW / CCW | S M3 / M4 |
COOLNT AKTIF / MATI | M8 M9 |
FINI | M30 |
Bahasa pemrograman RS-274 sering disebut “kode G” karena sebagian besar terdiri dari fungsi G (kode G). Tapi itu sendiri juga mengandung fungsi M (kode M) yang sama pentingnya. Oleh karena itu, perlu untuk mendefinisikan istilah-istilah ini, yaitu untuk menjawab pertanyaan-pertanyaan berikut dengan jelas dan langsung:
- Apa itu kode G?
- Apa itu kode M?
- Apa perbedaan antara kode G dan kode M?
Apa itu kode G?
Kode G, yaitu fungsi G, berbeda dari kode M, terutama terkait dengan pendefinisian geometri. Jelas bahwa "G" dalam nama "kode G" berarti kata "Geometri". Dengan demikian, kode G akan mencakup fungsi untuk memilih sistem koordinat, bidang kerja, unit pemrograman, pengaturan mode pemrograman (absolut atau inkremental), gerakan pahat dalam mode cepat dan kerja, dll.
Apa itu kode M?
Kode M atau fungsi M mengacu pada fungsi yang terkait dengan pengoperasian mesin. Dapat dikatakan bahwa “M” dalam istilah “kode M” berarti kata “Mesin”. Biasanya, dalam pemrograman mesin CNC, fungsi berikut dapat disertakan dalam fungsi ini:Mengaktifkan atau menonaktifkan spindel utama, Menghidupkan atau mematikan pendinginan, penggantian pahat otomatis, dll.
Apa perbedaan antara kode G dan kode M?
Seperti yang telah kami sajikan, kode G secara ketat mengacu pada geometri proses pemrosesan bagian, dan kode M untuk fungsi individu pada mesin. Dapat dikatakan bahwa kode G menunjukkan “Bagaimana pahat bergerak dalam kaitannya dengan benda kerja” dan kode M” Apa yang dilakukan mesin dalam proses pemesinan”.
Selain fungsi kode G dan kode M utama dalam bahasa pemrograman RS-274, ada banyak fungsi tambahan:
- X,Y, Z – koordinat titik posisi
- I,J, K – koordinat jarak antara titik awal dan pusat lingkaran (“CC” pada contoh berikut)
- F- kecepatan interpolasi
- S- kecepatan spindel
- Nomor alat T
- H- nomor offset ketinggian pahat
- Angka offset radius alat D
Daftar kode G Dasar
Fungsi utama |
Deskripsi |
Fungsi bantu |
G0 |
Pemosisian cepat (linier) |
X, Y, Z |
G1 |
Interpolasi linier |
X, Y, Z, F |
G2 |
Interpolasi melingkar searah jarum jam |
X, Y, Z, I, J, K, F |
G3 |
Interpolasi melingkar berlawanan arah jarum jam |
X, Y, Z, I, J, K, F |
CONTOH 1:
Kalimat dalam kode-G:G1 X10 Y50 F100
Penjelasan:Alat bergerak linier ke titik yang diinginkan (Koordinat:X=10 mm, Y=50 mm) dengan kecepatan 100 milimeter per detik.
Kalimat dalam kode-G:G2 X10 Y50 I10 J40 F100
Penjelasan:Alat berputar (searah jarum jam) ke titik yang diinginkan (Koordinat:X=10 mm, Y=50 mm) dengan kecepatan 100 milimeter per detik; Posisi pusat lingkaran relatif terhadap titik awal:+10 mm pada sumbu X dan +40 mm pada sumbu Y
Kalimat dalam G-code:G02 X50 Y10 I40 J-10 F75
Penjelasan:Alat berputar (searah jarum jam) ke titik yang diinginkan (Koordinat:X=50 mm, Y=10 mm) dengan kecepatan 75 milimeter per detik; Posisi pusat lingkaran relatif terhadap titik awal:+40 mm pada sumbu X dan -10 mm pada sumbu Y.
Fungsi utama |
Deskripsi |
Fungsi bantu |
G17 |
Pilih XY untuk bidang kerja |
/ |
G18 |
Pilih ZX untuk pesawat kerja |
/ |
G19 |
Pilih YZ untuk pesawat kerja |
/ |
G20 |
Satuan:inci (inci) |
/ |
G21 |
Satuan:milimeter (mm) |
/ |
G41 |
Kompensasi radius alat – kiri |
D, X, Y, Z |
G42 |
Kompensasi radius alat – kanan |
D, X, Y, Z |
G40 |
Kompensasi radius alat – mati |
/ |
G43 |
Kompensasi offset ketinggian alat |
H, Z |
G49 |
Kompensasi offset ketinggian alat – mati |
/ |
G54 |
Sistem koordinat mesin |
/ |
G55 |
Sistem koordinat kerja |
/ |
G56 |
Sistem koordinat kerja |
/ |
G57 |
Sistem koordinat kerja |
/ |
G58 |
Sistem koordinat kerja |
/ |
G59 |
Sistem koordinat kerja |
/ |
CONTOH 2:
Kalimat dalam kode-G: G21 G17 G55
Penjelasan:Mengatur unit pemrograman ke milimeter; Memilih bidang kerja XY; Memilih sistem koordinat G55
Kalimat dalam kode-G: G43 H1 Z100
Penjelasan:Menyetel kompensasi offset ketinggian pahat ke H1 (“H1” adalah posisi di mana nilai ketinggian pahat disimpan dalam memori mesin CNC) dan mengambil posisi baru (Koordinat:Z=100 mm)
Kalimat dalam kode-G: G41 D1 X15
Penjelasan:Mengatur kompensasi radius pahat kiri ke D1 (“D1” adalah posisi di mana nilai radius pahat disimpan dalam memori mesin CNC) dan mengambil posisi baru (Koordinat:X=15 mm); Saat pahat bergerak ke posisi yang diinginkan, pahat perlahan bergerak ke kiri, sehingga saat pahat mencapai posisi yang diinginkan, kompensasi radius pahat selesai.
Kalimat dalam kode-G: G40 G49
Penjelasan:Membatalkan kompensasi radius pahat; Membatalkan kompensasi offset ketinggian alat
Fungsi utama |
Deskripsi |
Fungsi bantu |
G90 |
Pemrograman absolut:Koordinat relatif terhadap sistem koordinat kerja |
/ |
G91 |
Pemrograman tambahan:Koordinat relatif terhadap sistem koordinat i pada posisi saat ini |
/ |
Daftar kode M Dasar
Fungsi utama |
Deskripsi |
Fungsi bantu |
M00 |
Program berhenti |
/ |
M03 |
Putar Putar (Searah Jarum Jam) |
S |
M04 |
Spindle Aktif (Berlawanan arah jarum jam) |
S |
M05 |
Putar Mati |
/ |
M06 |
Perubahan alat otomatisasi |
T |
M08 |
Pendingin Aktif |
/ |
M09 |
Pendingin Mati |
/ |
M30 |
Akhir program |
/ |
M98 |
Panggilan subprogram |
“Nama subprogram” |
M99 |
Kembali dari subprogram |
/ |
Cara memprogram mesin CNC
Pemrograman CNC adalah data pemformatan alfanumerik (kode G dan M) pada geometri dan teknologi suku cadang, yang perlu diproses pada mesin tersebut, tetapi juga pemrograman lain, yang biasanya dilakukan oleh pabrikan mesin.
Pemrograman mesin CNC menggunakan kode G sebagian besar berbasis kalimat, yang dapat dilihat pada contoh sebelumnya di mana penjelasan fungsi G dilakukan seperti menafsirkan kalimat program yang ditulis dalam kode G. Ada beberapa metode pemrograman CNC, yaitu menghasilkan kode G dan M:
- Pemrograman manual,
- Pemrograman dalam operasi dan
- Pemrograman menggunakan sistem CAD (Computer-Aided Design)/ CAM (Computer-Aided Manufacturing).
Pemrograman Manual
Dengan pemrograman CNC manual, seorang programmer berdasarkan pengetahuan dan pengalamannya sendiri serta informasi yang tersedia tentang mesin, peralatan, aksesori mesin, mode pemrosesan, menerapkan instruksi pemrograman, secara manual menulis informasi geometris dan teknologi yang diperlukan untuk menyelesaikan program alfanumerik. Pemrograman manual dapat diatur sebagai aktivitas dasar berikut:
- Mendefinisikan pemrosesan, basis, dan rencana perkakas,
- Menerjemahkan informasi geometris dengan gambar bengkel, untuk tujuan perencanaan rute
- Alat, dan menyusunnya menjadi blok-blok sesuai urutan pemrosesan,
- Menulis dan menyelesaikan program dalam bentuk lembar program (kode G) dan
- Transfer informasi dari lembar program ke memori unit kontrol
Pemrograman sedang beroperasi
Untuk terus meningkatkan metode pemrograman CNC, serta keinginan untuk menempatkan pemrograman pada mesin itu sendiri, untuk aplikasi CNC yang lebih besar dan lebih mudah, beberapa produsen telah menawarkan unit kontrol yang mereka dukung pemrograman langsung pada mesin. diri. Meskipun dari awal penerapan CNC ada kemungkinan pemrograman langsung pada mesin dalam apa yang disebut mode MDI (Input Data Manual), pemrograman dalam operasi merupakan metode pemrograman yang sama sekali baru.
Dengan metode ini, Unit Kontrol, yang mendukungnya, telah mengintegrasikan fungsi tambahan yang dihindari pemrograman klasik menggunakan kode G. Pemrograman di sini bermuara pada dialog interaktif antara operator dan unit kontrol, melalui keyboard dan antarmuka pengguna grafis, yang dapat menghasilkan kontur pemrosesan sederhana serta siklus yang diketik untuk diproses. Unit kontrol berdasarkan kueri yang dimasukkan, melakukan penghitungan jalur alat yang diperlukan, dan secara otomatis menghasilkan kode G.
Pemrograman menggunakan sistem CAD/CAM
Geometri suku cadang, yang digunakan misalnya di bidang kedirgantaraan, militer, dan industri lainnya, sangat kompleks dengan permukaan orde kedua, yang memerlukan pemesinan multi-sumbu (3-sumbu, 4-sumbu, dan 5-sumbu mesin CNC) . Program kompleks untuk memproses permukaan seperti itu memerlukan beberapa ribu blok (kalimat) yang tulisan tangannya sangat sulit dan memakan waktu. Oleh karena itu, diperlukan penggunaan komputer untuk persiapan teknologi, yaitu pemrograman mesin CNC untuk pemesinan bagian-bagian tersebut di atas berdasarkan kode G dan kode M.
Pemrograman CAD / CAM dapat diklasifikasikan sebagai pemrograman CNC komputer. Integrasi CAD dan CAM telah membawa perbaikan dalam pemrograman NC, terutama dalam hal penyederhanaan pemrograman. Sekarang programmer tidak perlu berpikir untuk mendefinisikan geometri, itulah yang dilakukan oleh perangkat lunak CAD / CAM. Apa yang tersisa untuk programmer adalah bahwa melalui interaksi aktif dengan sistem dalam program, ia menambahkan informasi teknis lainnya seperti grips, basing, clamping, alat pemotong, dan mode pemrosesan. Harus ditekankan bahwa ada integrasi CAD / CAM dan CAPP (Computer Aided Process Planning), yang mengembangkan solusi untuk persyaratan ini juga.
Seperti inilah Prosedur untuk memprogram mesin di lingkungan CAD / CAM:
- Pemodelan model CAD,
- Pemrosesan perencanaan menggunakan strategi CAM yang tersedia untuk memproses dan menghitung jalur pahat dan mendapatkan file CL (Lokasi Pemotong),
- Simulasi jalur alat dan simulasi pemindahan material untuk verifikasi program dan deteksi kemungkinan kesalahan dan tabrakan,
- Setelah memproses file CL dan mendapatkan kode G menggunakan postprocessor untuk mesin yang dipilih,
- Transfer kode G ke unit kontrol. Persiapan alat dan benda kerja. Letakkan benda kerja pada mesin,
- Periksa kondisi dan mode pemrosesan, periksa kecepatan dan akselerasi, yang dapat secara signifikan memengaruhi kualitas pemrosesan dan
- Pemesinan benda kerja pada mesin.
Kesimpulan
Meskipun saat ini ada metode pemrograman yang tidak memerlukan pengetahuan tentang fungsi G dan M (Pemrograman dalam operasi dan pemrograman CAD / CAM CNC), seorang programmer harus mengetahuinya, karena situasi khusus terkadang mengharuskan pemrograman dilakukan secara manual. Hal positifnya adalah bahasa pemrograman kode G dan M bisa dikatakan universal, artinya dengan mengetahui kode G dan M bisa memprogram semua mesin CNC, dengan perbedaan minimal sintaks yang sangat cepat dikuasai jika mengetahui dasar-dasarnya. Kode G dan M. Apakah Anda khawatir menemukan programmer CNC profesional untuk desain Anda? Jangan khawatir, WayKen adalah produsen dengan pengalaman lebih dari 20 tahun di industri permesinan CNC, dengan teknologi manufaktur canggih dan insinyur CNC berpengalaman, siap memenuhi kebutuhan desain produk Anda. Dapatkan penawaran instan hari ini!