Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Pengukiran Laser dengan Robot Arduino SCARA DIY

Dalam tutorial ini saya akan menunjukkan kepada Anda bagaimana saya mengonversi lengan robot SCARA 3D Printed DIY saya yang saya buat di salah satu video saya sebelumnya untuk berfungsi sebagai pengukir laser. Anda dapat menonton video video berikut atau membaca artikel di bawah ini.

Ikhtisar Proyek

Robot SCARA memiliki 4 derajat kebebasan yang digerakkan oleh 4 motor stepper NEMA 17 dan dikendalikan menggunakan papan Arduino. Di video aslinya saya menggunakan board Arduino UNO yang digabung dengan CNC Shield, tapi sekarang kita akan menggunakan board Arduino MEGA yang dikombinasi dengan board RAMPs. Kami membutuhkan kombinasi ini karena kami akan menggunakan firmware Marlin 3D Printer untuk mengendalikan robot.

Untuk bagian mekanik, saya hanya perlu mengganti mekanisme gripper dengan modul laser. Dalam hal ini, saya menggunakan modul laser 5,5W yang cukup baik untuk pengukiran.

Fitur keren yang kami dapatkan dengan penyiapan robot SCARA ini adalah kami dapat memiliki jangkauan gerakan sumbu Z yang lebih luas sehingga kami dapat mengukir laser objek yang lebih tinggi.

Juga, area kerja cukup mengesankan mengingat jejak kecil robot. Itu bisa menggunakan area di depannya maupun di kedua sisinya. Kami benar-benar dapat mengaturnya untuk menggunakan hampir seluruh 360 derajat di sekitar robot sebagai area kerja. Kami dapat melakukannya berkat firmware printer Marling 3D open-source yang memiliki opsi untuk pengukiran laser dan penyiapan robot SCARA.

Untuk menghasilkan kode-G, saya menggunakan perangkat lunak sumber terbuka lainnya, Inkscape dan plugin untuknya yang disebut Inkscape-Lasertools. Kami dapat menghasilkan kode-G dengan kontur saja atau dengan kontur dan pengisi dari gambar vektor yang sama, dan kami memiliki berbagai opsi seperti menyesuaikan sinar laser, kecepatan perjalanan, kecepatan pengisian, kecepatan perimeter, perintah nyala dan mati laser termasuk kontrol PWM dari laser dan sebagainya.

Namun demikian, sekarang saya akan memandu Anda melalui seluruh proses penyiapan robot SCARA agar berfungsi sebagai pengukir laser. Kami akan melihat desain robot SCARA ini, cara menginstal dan mengkonfigurasi firmware Marlin sesuai dengan mesin kami, dan bagaimana menyiapkan gambar dan kode-G untuk pengukiran. Jadi, mari kita mulai.

Desain dan Model 3D

Berikut sekilas model 3D robot SCARA ini sehingga Anda dapat melihat cara kerjanya jika Anda belum menonton tutorial aslinya di mana saya menjelaskan secara detail bagaimana saya membuatnya.

Robot dirancang sedemikian rupa sehingga sebagian besar bagian dapat dengan mudah dicetak 3D. Sambungan digerakkan oleh motor stepper NEMA 17 yang kecepatannya dikurangi dengan bantuan sabuk GT2 dan beberapa puli GT2 cetak 3D yang sesuai. Robot memiliki 4 derajat kebebasan, tetapi dalam kasus ini, kita hanya membutuhkan 3 DOF, dua putaran untuk mencapai titik mana pun di area kerja, dan satu gerakan linier untuk menyesuaikan ketinggian laser.

Sambungan ke-4 yang memutar efektor ujung tidak akan digunakan, meskipun modul laser akan dipasang di atasnya. Saya membuat dudukan untuk laser sedemikian rupa sehingga sinar laser akan berada di tengah rotasi sumbu ke-4 itu, jadi meskipun sumbu itu berputar, itu tidak akan memengaruhi posisi akhir.

Anda dapat menemukan dan mengunduh model 3D ini, serta menjelajahinya di browser Anda di Thangs:

Unduh model 3D rakitan dari Thangs.

Terima kasih Terima kasih telah mendukung tutorial ini.

File STL untuk Pencetakan 3D:

Disponsori


Robot SCARA ini saya rancang menggunakan 3DEXPERIENCE SOLIDWORKS for Makers yang juga menjadi sponsor dari video ini. ya, Anda tidak salah dengar. Dengan 3DEXPERIENCE SOLIDWORKS for Makers, SOLIDWORKS akhirnya menghadirkan alat desain terdepan di industri mereka untuk semua jenis pembuat dengan harga yang sangat murah.

Pembuat sekarang dapat mengakses alat desain SOLIDWORKS terbaik hanya dengan $99 setahun, tetapi untuk pemirsa SAYA, SOLIDWORKS memberikan penawaran waktu terbatas yang akan membuat Anda mendapatkan alat ini dengan lebih murah!

Betul sekali. Untuk pemirsa video ini, Anda bisa mendapatkan paket ini hari ini – yang mencakup versi SOLIDWORKS yang terhubung ke cloud, serta alat desain berbasis browser seperti Pembuat 3D dan Pematung 3D – dengan harga khusus diskon 20% selama persediaan masih ada!

Yang harus Anda lakukan adalah mengeklik tautan saya berikut ini dan membuat ID 3DEXPERIENCE gratis Anda, yang memungkinkan Anda mengakses penawaran diskon 20% ini – sehingga Anda dapat mulai menghasilkan yang terbaik hari ini. Terima kasih banyak kepada SOLIDWORKS yang telah mensponsori dan mendukung konten pendidikan seperti ini.

Lihat SOLIDWORKS untuk pembuatnya

Diskon 20% untuk SOLIDWORKS untuk pembuat


Memasang Modul Laser

Pertama, saya melepas mekanisme gripper dari robot yang ditahan dengan empat baut.

Kabel yang digunakan untuk mengontrol servo gripper sekarang akan digunakan untuk mengontrol modul laser.

Modul laser khusus yang saya miliki bekerja pada 12V dan dapat dikontrol menggunakan sinyal PWM hanya dengan dua kabel, Ground dan VCC. Untuk menghubungkan laser, saya menggunakan konektor yang disertakan dengan modul, yang memiliki 3 pin. Kabel hitam kiri adalah Ground dan tengah, kabel putih dalam kasus saya adalah VCC. Saya menyolder dua konektor kabel jumper pria ke kabel ini sehingga saya dapat dengan mudah menghubungkannya ke kabel untuk efektor akhir.

Kemudian saya cukup memasang konektor di tempatnya, melewati kabel melalui salah satu bukaan dudukan, dan mengamankan modul laser dengan dua baut M3. Dengan menggunakan empat baut M4 saya mengamankan modul laser ke robot.

Selanjutnya, seperti yang saya sebutkan sebelumnya, alih-alih board Arduino UNO yang saya gunakan untuk mengendalikan robot di video aslinya, sekarang kita membutuhkan board Arduino MEGA dan kombinasi dengan board RAMPS.

Di sini pertama kita perlu memilih resolusi langkah driver. Tentu saja, untuk gerakan yang lebih halus, kita harus memilih resolusi setinggi mungkin dengan menambahkan tiga jumper untuk setiap driver stepper. Saya menggunakan driver stepper A4988 yang memiliki resolusi langkah ke-16, tetapi kami juga dapat menggunakan driver stepper DRV8825 yang memiliki resolusi langkah 1/32.

Kemudian kita bisa menghubungkan semua kabel di tempatnya. Semua kabel saya sudah ditandai sehingga saya tidak mengacaukannya.

Diagram Sirkuit Pengukir Laser Robot SCARA

Berikut diagram rangkaian tentang bagaimana segala sesuatu perlu dihubungkan.

Motor stepper berjalan tepat di atas driver dan sakelar batas yang Biasanya Tertutup dengan dua kabel berada di ujung S dan – pin untuk masing-masing sumbu.

Untuk mengontrol modul laser, kita akan menggunakan pin D9 yang pada setup printer 3D digunakan untuk mengontrol kipas. Pin ini berkemampuan PWM sehingga kita dapat mengontrol intensitas laser dengannya. Untuk menyalakan semuanya, kami membutuhkan catu daya 12V dengan laju arus minimum 3A.

Anda bisa mendapatkan komponen yang dibutuhkan untuk proyek ini dari tautan di bawah ini:

  • Motor Stepper – NEMA 17……………… 
  • A4988 Stepper Driver…………………..… 
  • Papan RAMPS 1.6………………………..…
  • Arduino MEGA…………………..………
  • Limit Switch …………………………………. AmazonBanggood  / AliExpress
  • Pasokan Listrik DC …………………………. Amazon  / Bagus  / AliExpress
  • Modul Laser ………………………………… Amazon / Bagus / AliExpress
  • Kacamata Keamanan Laser …………………….. Amazon / Banggod / AliExpress

Untuk komponen mekanik, Anda dapat memeriksa artikel aslinya.

Setelah saya menghubungkan semuanya seperti yang dijelaskan, saya meremas sedikit kabel dan menutupi elektronik sehingga semuanya terlihat bagus dan bersih.

Menyelesaikan perakitan

Ada satu hal lagi yang perlu saya ubah pada robot SCARA saya agar berfungsi dengan baik, dan itu adalah mengubah saat sakelar batas lengan kedua dipicu. Karena robot SCARA akan diatur untuk bekerja sebagai tangan kanan, homing lengan kedua harus pada 0 derajat, atau sejajar dengan lengan pertama, sambil dapat berputar ke kiri. Untuk itu, saya hanya menempelkan sepotong kecil ke sambungan lengan sehingga memicu sakelar batas pada posisi yang dijelaskan.

Sebenarnya, ada satu detail kecil lagi yang perlu saya ubah. Pemicu sakelar batas asli mengganggu salah satu mur di bagian bawah lengan sehingga lengan tidak dapat mencapai gerakan penuhnya.

Saya hanya melepas mur itu, menggantinya dengan sisipan berulir sehingga saat mengencangkan kembali bagian di tempatnya tidak akan menonjol.

Dan itu saja. Robot SCARA sekarang siap bekerja sebagai pengukir laser, tetapi tentu saja, pertama-tama kita perlu menginstal firmware ke papan Arduino.

Lihat Juga: Lengan Robot Arduino DIY dengan Kontrol Ponsel Cerdas

Firmware Marlin untuk Pengukiran Laser dengan Robot SCARA

Seperti yang saya katakan, saya akan menggunakan firmware Marlin yang merupakan salah satu firmware open-source yang paling banyak digunakan untuk printer 3D, yang juga memiliki opsi untuk pengukiran laser dan penyiapan robot SCARA. Firmware Marlin bisa kita download dari website resminya atau Github.com.

Untuk menginstal firmware Marlin ke board Arduino MEGA, kami akan menggunakan PlatformIO IDE, bukan Arduino IDE. Karena firmware Marlin besar dan kompleks, Arduino IDE terkadang memberikan kesalahan dan tidak dapat mengompilasinya.

PlarformIO dibuat di atas editor Kode Visual Studio, dan dapat diinstal sebagai ekstensi untuk itu. Artinya, pertama-tama kita perlu menginstal Visual Studio Code, lalu cari PlatformIO di pengelola ekstensi dan instal dari sana.

Setelah instalasi selesai, kita dapat mengklik tombol Open Project, arahkan ke folder Marlin yang telah kita download dan unzip, dan klik “Open Marlin”.

Ini akan memuat semua file Marlin ke dalam editor sehingga kami dapat membuka dan mengeditnya. Dua file utama tempat kami melakukan semua penyesuaian sesuai dengan pengaturan mesin kami adalah file Configuration.h dan Configuration_adv.h.

Sebenarnya, sebelum kita membuka folder Marlin, pertama-tama kita harus pergi ke repositori Konfigurasi di Github.com dari mana kita dapat mengunduh beberapa file konfigurasi yang telah diuji sebelumnya yang cocok untuk kita. Di folder "Contoh" kita harus pergi ke folder "SCARA" dan menyalin dua file konfigurasi ini dan menempelkannya ke folder Marlin kita.

Lihat juga: Cara Menyiapkan GRBL & Kontrol Mesin CNC dengan Arduino

Mengonfigurasi Firmware Marlin

Jadi, setelah kita membuka kembali folder Marlin dengan file konfigurasi “SCARA”, kita dapat membuka file Configuration.h dan mengedit beberapa parameter sesuai dengan mesin kita. Hal pertama di sini adalah memilih jenis robot SCARA yang kita miliki.

/**
 * MORGAN_SCARA was developed by QHARLEY in South Africa in 2012-2013.
 * Implemented and slightly reworked by JCERNY in June, 2014.
 */
//#define MORGAN_SCARA

/**
 * Mostly Printed SCARA is an open source design by Tyler Williams. See:
 *   https://www.thingiverse.com/thing:2487048
 *   https://www.thingiverse.com/thing:1241491
 */
#define MP_SCARA

#if EITHER(MORGAN_SCARA, MP_SCARA)
  // If movement is choppy try lowering this value
  #define SCARA_SEGMENTS_PER_SECOND 100

  // Length of inner and outer support arms. Measure arm lengths precisely.
  #define SCARA_LINKAGE_1  228.15  // Arm 1 lenght - 228(mm)
  #define SCARA_LINKAGE_2 136.2    // Arm 2 lenght - 136.5(mm)

  // SCARA tower offset (position of Tower relative to bed zero position)
  // This needs to be reasonably accurate as it defines the printbed position in the SCARA space.
  #define SCARA_OFFSET_X    300       // (mm)
  #define SCARA_OFFSET_Y    150       // (mm)Code language: Arduino (arduino)

"MORGAN_SCARA" untuk robot SCARA paralel dan "MP_SCARA" untuk robot serial SCARA, seperti yang kita miliki. Ini didasarkan pada desain sumber terbuka oleh Tyler Williams yang mengimplementasikan kinematika terbalik pada kode-G yang dihasilkan untuk sistem kartesius normal.

Dalam tutorial saya sebelumnya saya sudah menjelaskan apa itu kinematika terbalik dan cara kerjanya dengan robot SCARA ini sehingga untuk lebih jelasnya Anda dapat melihat tutorial itu. Secara singkat, dengan kinematika terbalik, kami menghitung pada sudut apa kedua lengan harus diposisikan untuk mencapai koordinat X, Y yang diberikan. Matematika di balik kinematika terbalik didasarkan pada trigonometri, dan hasilnya hanya bergantung pada panjang kedua lengan.

Karena itu, di sini kita perlu memasukkan panjang lengan robot, dan dalam hal ini adalah 228mm untuk lengan pertama dan 136,5mm untuk lengan kedua. Parameter selanjutnya yang perlu kita atur adalah posisi nol tempat tidur kerja. Nilai ini dimasukkan dengan nilai SCARA_OFFSET_X dan Y dan merupakan jarak dari menara atau sambungan pertama relatif terhadap posisi nol tempat tidur.

Ada satu set parameter lagi yang perlu kita sesuaikan dengan mesin kita, dan itu adalah MANUAL_X_HOME_POS untuk X dan Y. Nilai ini adalah jarak X dan Y dari efektor ujung lengan robot atau laser saat berada di posisi awal, relatif ke posisi nol tempat tidur yang sebelumnya kita atur. Untuk mendapatkan nilai ini, saya membuat sketsa sederhana di SOLIDWORKS dengan dua garis yang mewakili dua lengan robot SCARA.

Dari sini dapat mengatur posisi nol tempat tidur yang diinginkan, dan mendapatkan nilai untuk variabel MANUAL_X_HOME_POS.

Selanjutnya, kita perlu mendefinisikan konektor endstop. Dalam kasus kami, kami memiliki satu endstop untuk setiap sumbu, yang berada pada posisi minimum.

#define USE_XMIN_PLUG
#define USE_YMIN_PLUG
#define USE_ZMIN_PLUGCode language: Arduino (arduino)

Selain itu, kita perlu mendefinisikan X_HOME_DIR menjadi -1 yang menunjukkan arah endstop saat homing.

// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1Code language: Arduino (arduino)

Di sini kita juga harus memeriksa apakah semua variabel __MIN_ENDSTOP_INVERTING disetel ke “FALSE”.

Kemudian kita perlu menyesuaikan nilai DEFAULT_AXIS_STEPS_PER_UNIT agar sesuai dengan mesin kita.

#define DEFAULT_AXIS_STEPS_PER_UNIT   { 177.7777777, 142.2222222, 400, 93 }Code language: Arduino (arduino)

Nilai-nilai ini menunjukkan berapa banyak langkah yang harus dikirim program ke driver stepper agar motor bergerak satu unit, dan dalam hal ini rotasi sambungan satu derajat. Inilah cara saya menghitung nilai ini untuk robot SCARA saya.

Motor stepper NEMA 17 mengambil 200 langkah untuk putaran penuh, tetapi karena kami menggunakan resolusi langkah ke-16, itu berarti kami perlu mengirimkan 3200 langkah ke pengemudi agar motor membuat putaran 360 derajat penuh. Selain itu, untuk joint pertama kita memiliki pengurangan kecepatan 20:1, yang berarti kita membutuhkan 64000 langkah untuk putaran penuh. Jika kita membagi nilai ini dengan 360, kita akan mendapatkan angka 177.777, yang sebenarnya adalah jumlah langkah yang harus dikirim program ke driver untuk memutar sambungan satu unit atau satu derajat.

Lengan kedua memiliki pengurangan kecepatan 16:1 sehingga nilainya akan menjadi 142.222. Untuk sumbu Z kami memiliki sekrup timah dengan pitch 8mm, yang berarti satu putaran penuh motor akan menghasilkan monisi linier 8mm. Satu satuan di sini adalah satu mm, jadi kita perlu membagi 3200 langkah dengan 8, sehingga kita mendapatkan nilai 400, yang merupakan jumlah langkah yang diperlukan sumbu Z untuk bergerak satu unit atau satu mm. Nilai keempat di sini adalah untuk stepper extruder, tetapi karena kami tidak memiliki extruder di sini, kami tidak perlu mengubahnya.

Arah motor stepper tergantung pada cara kita menghubungkan kabel. Jika kami salah, kami dapat membalikkan kabel atau mengubahnya di sini dalam perangkat lunak dengan menyetel variabel INVERT_X_DIR ke TRUE.

// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR falseCode language: Arduino (arduino)

Kita harus melakukan beberapa perubahan lagi agar firmware Marlin ini berfungsi. Karena Marlin pada dasarnya adalah firmware untuk printer gaya kartesius klasik, mode SCARA yang dimilikinya, memiliki beberapa bug kecil yang belum terpecahkan pada saat saya membuat proyek ini. Berikut adalah perubahan yang saya lakukan untuk membuatnya berfungsi.

Di scara.cpp, baris 75 saya ganti MORGAN_SCARA dengan MP_SCARA. Di motion.cpp, saya harus mengomentari baris 1716 dan 1717, di cofiguration.h berkomentar VALIDATE_HOMING_ENDSTOPS, dan di configuration_adv.h batalkan komentar QUICK_HOME.

Sebenarnya, bahkan dengan perubahan ini, homing masih tidak berfungsi 100% dengan benar tetapi saya akan menjelaskan solusi yang saya gunakan untuk membuatnya berfungsi.

Namun demikian, sekarang kita dapat mengklik tombol Unggah yang terletak di kiri bawah editor dan firmware Marlin akan diinstal ke papan Arduino. Anda mengunduh firmware Marlin khusus ini dengan semua perubahan yang saya buat untuk bekerja dengan robot SCARA ini di bawah ini atau tentu saja, Anda dapat mengunduh firmware Marlin asli dari Github.com dan membuat semua perubahan sendiri seperti yang saya jelaskan.

Perangkat Lunak Kontrol – Rapetier-host

Baiklah, setelah kita menginstal firmware Marlin, sekarang kita membutuhkan program komputer untuk mengendalikan robot dan mengirimkan kode-G ke sana. Ada banyak opsi, tetapi saya memilih untuk menggunakan Rapetier-host yang merupakan perangkat lunak Pencetakan 3D yang populer. Software ini dapat kita download dan gunakan secara gratis. Setelah kita menginstalnya, kita dapat pergi ke Config> Printer Settings dan menyesuaikan beberapa hal di sini.

Kita harus memilih port COM yang terhubung dengan Arduino kita dan memilih Baud Rate yang kita atur di firmware Marlin. Di tab Printer Shape, kita harus mengatur nilai X dan Y max dan Area Printer.

Setelah kami menerapkan pengaturan ini, kami dapat mengklik tombol Connect dan perangkat lunak harus terhubung ke robot SCARA kami. Kemudian kita bisa masuk ke Manual Control tap dan dari sini coba pindahkan printernya.

Perhatikan bahwa saat menekan panah X atau Y, robot mungkin berperilaku aneh karena menerapkan kinematika terbalik segera, dan mungkin akan menggerakkan kedua lengan meskipun hanya menekan satu panah.

Namun demikian, agar robot bekerja, pertama-tama kita harus meletakkannya di rumah. Sebelum kita mengklik tombol beranda, kita harus mendekatkan sambungan secara manual ke sakelar batas.

Saat kita mengklik tombol Home, robot akan mulai bergerak menuju limit switch. Sebenarnya, lengan kedua akan mulai bergerak menuju sakelar batasnya sementara lengan pertama harus bergerak berlawanan. Setelah lengan kedua atau sumbu Y akan menekan sakelar batasnya, lengan pertama atau sumbu X kemudian akan mulai bergerak menuju sakelar batasnya juga. Setelah sakelar batas X tercapai, robot akan beralih ke sakelar batas Z.

Jadi, setelah homing selesai, kita harus bisa mulai mengukir atau memindahkan robot secara manual di sekitar area kerjanya. Namun, jika kita mencoba melakukan sesuatu dengan segera, untuk beberapa alasan robot akan berperilaku tidak semestinya dan akan melakukan gerakan yang aneh. Untuk menghindari perilaku aneh ini, setelah homing kita hanya perlu memutuskan sambungan robot dari perangkat lunak lalu menyambungkannya kembali .

Sekarang kita dapat memindahkan atau mengukir secara manual dan robot akan bekerja dengan baik. Ini mungkin bug di firmware Marlin, dan itu ada karena mode SCARA di firmware ini tidak didukung dengan baik karena tidak banyak yang tertarik.

Namun demikian, jika kita mengirim perintah G-code G00 X0 Y0 robot harus pergi ke posisi nol, yang kita atur di file Marlin Configuration.h.

Kemudian kita dapat mengaktifkan laser dengan mengirimkan perintah M106 S10. Nilai di belakang S bisa dari 0 hingga 255 dan itu sebenarnya adalah kontrol PWM daya laser dari 0 hingga 100%. Jadi, kami menggunakan nilai S10 di sini agar tidak membakar apa pun tetapi akan terlihat sehingga kami dapat melihat posisi nol dan juga menyesuaikan fokus laser.

Fokus dapat secara manual menyesuaikan dengan memutar lensa laser di bagian bawah dan pada saat yang sama itu tergantung pada jarak antara itu dan benda kerja. Sebaiknya atur jarak sekitar 5 cm dan sesuaikan fokus hingga Anda mendapatkan titik sekecil mungkin.

Pengukiran Laser dengan Robot SCARA 

Untuk mengkalibrasi mesin, ada baiknya untuk memulai dengan mengukir bentuk persegi sederhana sehingga kita dapat melihat apakah itu berfungsi dengan baik.

Pada percobaan pertama saya, bentuk persegi tidak dalam posisi dan orientasi yang tepat dan itu karena saya telah menetapkan nilai yang salah untuk variabel MANUAL_X_HOME_POS. Setelah saya perbaiki, bentuk perseginya mendekati seperti yang seharusnya.

Jadi, saya memuat kode-G dari logo saya, dan mengatur robot untuk mengukirnya.

Sejujurnya, melihat robot SCARA ini bekerja sebagai pengukir laser sangat keren, tetapi harap dicatat bahwa kita HARUS menggunakan kacamata pengaman laser yang akan melindungi mata kita dari sinar ultraviolet laser, karena sangat berbahaya. Selain itu, kita harus menggunakan masker respirator pengaman dan bekerja di ruang terbuka atau ruangan yang berventilasi baik, karena asap yang dihasilkan saat pengukiran laser juga berbahaya bagi kesehatan kita.

Namun demikian, ukiran logonya keluar dengan baik, tetapi saya perhatikan bahwa itu tidak sepenuhnya persegi.

Jadi, saya kembali mengukir bentuk persegi sederhana untuk mencari tahu apa yang menyebabkan masalah. Saya menyadari bahwa masalahnya adalah dengan dimensi untuk panjang lengan. Karena robot tidak terlalu kaku, ketika lengan direntangkan, berat lengan itu sendiri membuat robot sedikit condong ke depan. Hal ini menyebabkan dimensi atau posisi sebenarnya dari lengan menjadi sedikit menyimpang.

Setelah melakukan lusinan pengujian, saya akhirnya menyesuaikan nilai untuk panjang dari 228 menjadi 228,15 mm untuk lengan pertama, dan dari 136,5 hingga 136,2 mm untuk lengan kedua. Ini memberi saya hasil yang paling akurat dan sekarang bentuk perseginya benar. Meskipun, tergantung pada lokasi pencetakan, apakah lengan direntangkan sepenuhnya atau tidak, akurasinya masih dapat bervariasi.

Membuat kode-G untuk Pengukiran Laser

Terakhir, izinkan saya menunjukkan kepada Anda bagaimana saya menyiapkan gambar dan menghasilkan kode-G untuk pengukiran laser. Saya menggunakan Inkscape untuk tujuan itu yang merupakan perangkat lunak grafik vektor sumber terbuka.

Di sini pertama kita perlu mengatur ukuran halaman dengan ukuran area kerja kita. Sebagai contoh, saya akan menunjukkan cara menyiapkan logo Arduino untuk pengukiran laser.

Saya mengunduh gambar logo Arduino dan mengimpornya ke Inkscape. Menggunakan fungsi Trace Bitmap, pertama-tama kita perlu mengubah gambar menjadi format vektor. Kami hanya dapat menghasilkan kode-G dari bentuk vektor dan untuk tujuan itu saya menggunakan sebuah plugin bernama Inkscape-Lasertools. Kita dapat mengunduh plugin ini dari Github.com dan menginstalnya dengan menyalin file dari file zip, dan menempelkannya ke direktori ekstensi Inkscape.

Jadi, setelah plugin terinstal, kita bisa pergi ke Extensions>Lasertools untuk membukanya dan menggunakannya untuk menghasilkan G-code. Ada beberapa opsi untuk mengatur dan menyesuaikan dengan plugin ini. Saat kami menghubungkan laser kami ke pin D9 yang digunakan untuk mengontrol kipas, kami dapat mengaktifkan laser dengan mengirimkan perintah M106.

Kita dapat memilih apakah kode-G hanya akan berisi kontur bentuk atau pengisi pada loop tertutup juga. Kita dapat mengatur kecepatan perjalanan Laser, kecepatan pengisian laser, dan kecepatan perimeter.

Saat memilih infill, jika kita ingin menurunkan intensitas laser di area infill, kita bisa menambahkan nilai PWM ke perintah M106 untuk mengatur intensitas laser, misalnya M106 S128 untuk daya laser 50%. Kita dapat mencapai efek yang sama jika kita membiarkan daya laser menjadi 100% tetapi meningkatkan kecepatan perjalanan di area pengisi. Jadi, ini sebenarnya adalah pengaturan yang harus kita mainkan untuk melihat mana yang paling cocok untuk kita.

Di ketuk Preferensi kita dapat memilih "Hapus jalur pengisi kecil", dan di tab Kotak Batas kita dapat memilih "Hasilkan G-Code untuk pratinjau kotak pembatas". Fitur ini sangat berguna karena menghasilkan pratinjau kode-G dari area di mana gambar akan dilakukan, sehingga kita dapat memposisikan benda kerja kita dengan tepat.

Ok, jadi setelah kita membuat G-code kita bisa memuatnya di program Repetier-Host. Karena ini bukan pencetakan 3D, tetapi hanya gerakan perjalanan, kita harus mencentang kotak “Show Travel Moves” untuk melihat pratinjau kode-G kita.

Kami akhirnya dapat mengklik tombol "Cetak" dan robot SCARA kami akan mengukir benda kerja dengan laser. Sudah saya katakan, menonton pengukiran laser robot SCARA ini sangat memuaskan dan kami dapat mengukir banyak hal dengan laser.

Fitur yang baik adalah ia memiliki sumbu Z yang dapat disesuaikan yang berarti kita dapat mengukir objek yang lebih tinggi dengan laser, seperti misalnya, kotak kayu ini untuk bit Forstner saya. Saya mengukir logo saya di bagian depan, dan teks “Forstner bits” di bagian belakang kotak.

Berikut adalah contoh pengukiran bentuk vektor yang sama, dalam hal ini siluet batman, hanya dengan kontur dan pengisi pada loop tertutup.

Tentu saja, ketika pengukiran dengan pengisi, waktu yang dibutuhkan untuk menyelesaikan pekerjaan lebih lama tetapi juga penampilan akhir yang jauh lebih baik.

Akhirnya, izinkan saya menunjukkan kepada Anda bagaimana saya mengukir gambar besar ini dengan luas 600x450mm dengan robot SCARA ini.

Saya menempatkan robot di atas benda kerja sehingga dapat mencapai bagian depan dan kedua sisi. Saya secara manual menyesuaikan benda kerja dan robot agar berada di tengah dan sejajar satu sama lain.

Pada firmware Marlin saya mengatur posisi nol berada di pojok kiri bawah benda kerja, yaitu berjarak 300mm dari robot pada arah X dan 150mm pada arah Y. Kita harus memperhatikan tanda-tanda ketika mendefinisikan nilai-nilai ini. Menurut ini saya juga mengubah variabel MANUAL_X dan Y_HOME_POS.

Setelah mengunggah firmware dengan nilai-nilai baru ini, saya menempatkan robot seperti yang dijelaskan sebelumnya dan mengirim laser ke posisi nol. Kemudian saya mengaktifkan laser, sehingga saya dapat lebih menyesuaikan orientasi harga kerja yang dibutuhkan.

Dengan mengirimkan perintah G01, yang melakukan garis lurus, saya dapat memeriksa dan mengatur benda kerja agar posisinya benar.

Sekarang untuk mempersiapkan kode-G untuk ukiran ini saya membuat template dengan konfigurasi benda kerja dan robot di Inscape. Dari sini saya dapat melihat di mana robot dapat mencapai dengan laser dan sesuai dengan itu memodifikasi gambar.

Untuk gambarnya, saya mengunduh gambar dan mengonversinya menjadi gambar vektor dengan menggunakan alat Trace Bitmap.

Then I rescaled and position the image as I wanted, and using the Erase tool I deleted the areas where the robot is and the area which is outside the robot reach.

Then I generated the G-code let the machine do its job. It took 4 hours to laser engrave this drawing.

Once it finished, I wanted to fill the empty area where the robot was. For that purpose, I reposition the robot and the work piece, as well as changed the Marlin parameters so that the new work area of the robot is this empty space on the work piece.

Overall, this method requires some work for setting it up, but still it works great. I really like how this engraving turned out.

Wrap up

To wrap up, although there were some problems with the firmware, I managed to find workarounds to them get this SCARA robot working as laser engraver. If we take a closer look to the engraving, we can see that it’s far from perfect.

The robot is not that rigid and has some backlash, and therefore we cannot get precise and smooth movements. However, the things we learned in this tutorial can be implemented in any SCARA robot so you can definitely get better results.

I hope you enjoyed this tutorial and learned something new. Feel free to ask any question in the comments section below and check my Arduino Projects Collection.


Proses manufaktur

  1. Jam IV9 Numitron DIY paling sederhana dengan Arduino
  2. Hambatan Menghindari Robot Dengan Motor Servo
  3. Mengontrol Robot Roomba Dengan Arduino Dan Perangkat Android
  4. Voltmeter DIY dengan Arduino dan Tampilan Nokia 5110
  5. MobBob:Robot Arduino DIY Dikendalikan oleh Smartphone Android
  6. Roda Pengukur Sederhana DIY dengan Rotary Encoder
  7. Pemantau Kualitas Udara DIY dengan Sensor Sharp GP2Y1010AU0F
  8. Game Pong Arduino 1D DIY dengan WS2812 LED Strip
  9. Lengan Robot Arduino DIY – Dikendalikan oleh Gerakan Tangan
  10. Kontrol Lengan Robot Arduino dengan Aplikasi Android