Mesin cutting sticker berbasis arduino-HPGL

perancangan Mesin CNC sudah bisa dilakukan sendiri, baik dengan mencontoh beberapa tutorial maupun dengan merancang perangkat dan firmwarenya sendiri.

Seperti proyek “Arduino Mini CNC Plotter Machine From Dvd Drives” memanfatkan CDROM bekas sebagai perangkat kerasnya dan GRBL yang tersedia secara bebas sebagai perangkat lunaknya. Namun bagi pemula cukup menyulitkan pada tahap design dan pengaplikasian perangkat tersebut ketika berurusan dengan Gcode.

Gcode merupakan protokol yang canggih dan juga komplek.Untuk mesin-mesin plotter (2.5D) penggunaan gcode tidaklah efisien dikarenakan harus menggunakan aplikasi-aplikasi 3D hanya untuk pekerjaan 2D. Sedangkan protokol HPGL lebih familiar sebagai protokol 2D/ 2.5D yang digunakan pada mesin-mesin plotter/cutting.

Kali ini saya merancang mesin cutting sticker berbasis arduino yang menggunakan perangkat mesin merk Jinka yang sudah tidak berfungsi.

Skema mesin cutting sticker HPGL – arduino

Skema tombol mesin cutting sticker merk jinka tahun tidak diketahui

Daftar komponen

  1. Arduino mega 2560
  2. CNC shield v3
  3. DRV8825 2x
  4. AT45DB161
  5. Motor driver DRV8825
  6. Mesin cutting sticker

Firmware

Untuk firmware berbasis protocol HPGL yang saya kembangkan sendiri (open source). Keunggulan proyek ini terletak pada firmware yang mampu mengontrol perangkat lebih baik dan dapat disesuaikan sesuai kebutuhan. beberapa fitur yang dikembangkan adalah :

  1. Perintah HPGL disimpan dalam dataflash sehingga memungkinkan adanya fitur duplikat (dengan menekan tombol “Duplikat” perangkat akan bekerja menjalankan perintah yang tersimpan dalam dataflash tanpa terkoneksi dengan PC/Laptop)
  2. Dengan menggunakan protokol HPGL, HPGL/2 perangkat ini bisa melaksanakan perintah langsung dari software vektor seperti Coreldraw, AutoCAD, Artcut.
  3. Waktu pengerjaan lebih cepat dengan fitur “precision on demand” (Kecepatan penuh saat pergerakan pen up, dan kecepatan setting saat pen down –proses cutting).

HPGL (Hewlett Packard Graphics Language) adalah sebuah protocol antara PC dan plotter (mesin cetak). Protokol cocok digunakan pada plotter/cutting machine dan mudah dimengerti oleh berbagai mesin bahkan bisa diartikan melalui pembacaan manusia kecuali perintah polygon encode.

Dokumen HPGL : HPGL2-RTL_ReferenceGuide_5961-3526_540pages_Sep96

contoh keluaran dari coreldraw + goldcut driver:
HPGL
IN;IP0,0,1016,1016;SC0,1000,0,1000;SP1;PU0,0;
PD15039,0,15039,25000,0,25000,0,0;PU; …

HPGL/2
BP;IN;SP0;QL100ROPS22205,15354RO90
IP0,0,15353,22204SC0,7799,11279,0ACPA0,0
WU0PW0PP1PP0PE<=UYÀwiÀ;
PM0PE_ý¿¿eqÀ`ý¿¿fqÀ;PE<=UYÀwiÀ;
PM1PM2LTSP1EP…

BP – begin plot
IN – inisialisasi
PU – pen up
PD – pen down
PE – polygon encode
banyak lagi koleksi perintahnya.

Files :

  1. Arduino-hpgl-plotter.ino
  2. HPGL.h
  3. HPGL.cpp
  4. DataFlash.h
  5. DataFlash.cpp
  6. dalam zip Arduino_hpgl_plotter.zip

Driver goldcut_driver

Foto dokumentasi :

Galeri Mesin cutting sticker dengan arduino

37 thoughts on “Mesin cutting sticker berbasis arduino-HPGL

    1. Kemungkinan masalah pada chip memory AT45DB161
      Saat memulai program, sistem akan membaca id memory terpasang, (dalam hal ini AT45DB161 akan merespon dengan 4 digit yaitu 1F 26 00 00)
      Jika tidak ditemukan id tersebut maka sistem akan menghentikan program (tidak bekerja)

      Apabila menggunakan jenis memory lain, baris program pengecekan id harus disesuaikan atau di hapus.

      Untuk memastikan kondisi memory, test memory secara terpisah, misalnya dengan arduino lain dan dilakukan pembacaan melalui spi.

    1. Motor x dijalankan ke titik nol (posisi paling kanan) saat init atau awal mesin dihisdupkan
      jika selama 30 detik posisi pen belum menyentuh sensor posisi 0 ‘PosX0Sensor’ maka kondisi motor x error ditrigger.

  1. Hello! The “test” button does not work. For what does the “Origin” button answer? How to cut from Corel Draw? Is there any video how to operate a cutting plotter? Thank you!

    1. I determine the test button as an emergency stop.
      and the origin button to set the current coordinates as point 0,0

      sorry I forgot to make the video because this machine has people who repair the machine in my place.
      for the operation, it is enough from Coreldraw + goldcut-driver or artcut, like the cuting sticker machine.

  2. Hello! I assembled the circuit, and installed the Goldcut driver but it does not work. Do not cut from Corel and Artcut. Can you please give detailed instructions? Operating system Windows 10 and Windows7.

    1. Is there an error message on the LCD?
      or look at Arduino serial monitor, there should be information:
      1. when there is a command from serial usb ==> “Begin data transfer”
      2. coordinate pin movement according to command ==> goto absoulute (xx, yyy)
      3. and finally “Page plot finish”

    1. install goldcut

      1. Unzip/UnCompress the folder “Driver” to the desktop
      2. When windows asks you to select a driver – point the wizard to the driver folder on the computer
      3. Continue through the installation and the GoldCut driver should install.

  3. Can i use the firmware on Linux without your GoldCut driver? The transfer of HPGL file to the flash works, but the display only show “0% dtk” and the stepper motors not moving.

    Andreas

  4. Gan, tolong dong bagi saya code untuk arduino uno versi china (CH340),
    karena saya hanya punya :
    – arduino uno (CH340),
    – CNC Shield,
    – Driver A4988 (karena saya hanya pakai 12v 1A aja)
    – saya tidak pakai sensor & LCD,
    Terima kasih banyak sebelumnya gan, Sukses Selalu

  5. Hey there,
    I Can´t get it running . everything i try failt . i can´t get to communicat over the serial1 connection and i also can´t install the driver over a virtual printer ( Win 10 64bit wont allow it) . have you any idea or suggestion for me?

  6. kalau kecepatan penggerak jarum bisa dibuat selambat mungkin., soalnya untuk mesin jinka terlalu cepat geraknya walaupun sundah diturunkan kepaling rendah

Leave a Reply to Andreas Cancel reply

Your email address will not be published. Required fields are marked *