Isi kandungan:

Mesin Pengambilan Bahagian CNC: 9 Langkah (dengan Gambar)
Mesin Pengambilan Bahagian CNC: 9 Langkah (dengan Gambar)

Video: Mesin Pengambilan Bahagian CNC: 9 Langkah (dengan Gambar)

Video: Mesin Pengambilan Bahagian CNC: 9 Langkah (dengan Gambar)
Video: Adakah sebab ini Diana Danielle mahu berpisah... 2024, Julai
Anonim
Mesin Pengambilan Bahagian CNC
Mesin Pengambilan Bahagian CNC

Sekiranya anda pembuat yang serius seperti saya, kemungkinan besar anda mempunyai perintang, kapasitor, dan pelbagai komponen elektronik lain yang tidak terkira. Tetapi ada masalah besar: Bagaimana seseorang mengawasi apa atau berapa banyak sesuatu yang mereka miliki? Untuk masalah ini saya membuat mesin CNC yang mendapat maklumat dari pangkalan data MySQL yang kemudian pergi dan mengambil item yang diminta. Sebagai tambahan kepada back-end pangkalan data, saya membuat halaman web front-end yang membolehkan pengguna masuk dan kemudian membuat kategori bahagian, menambah bahagian baru, dan mengubah jumlah bahagian. Dengan cara ini setiap item dapat dipertanggungjawabkan, sama seperti sistem pengurusan stok.

Komponen:

  • Arduino UNO & Genuino UNO
  • Skru Mesin: 8mm, 3mm, 4mm
  • Saluran N MOSFET
  • Diod Penyearah 1N4001
  • Motor Stepper NEMA 17 x2
  • Pemandu DRV8825 untuk Stepper Motors x2
  • Kapasitor 100 µF x2
  • DFRobot Servo Gripper
  • DFRobot Timing Belt x2
  • DFRobot 5MM Timing Pulley x2
  • DFRobot Linear Bearing 6mmx12mm x2
  • Bantalan Bola DFRobot 8mmx12mm

Langkah 1: Teori

Image
Image

Asas sistem ini adalah memantau inventori. Sebagai contoh, jika seseorang membeli 20 papan Arduino Uno mereka dapat menambahkan jumlah itu dengan mudah ke jadual pangkalan data. Kategori tersebut adalah "Arduino", nama "Uno", dan jumlah 20. Bagi beberapa orang, pemilik bahagian tersebut akan menjadi nama pengguna orang yang menambahkannya. Bahagian itu juga akan merangkumi data mengenai lokasi di grid. Setiap kali jumlah bahagian berubah, mesin CNC akan memilih bahagian tersebut dan memberikannya kepada pengguna.

Langkah 2: Pangkalan Data

Pangkalan data
Pangkalan data
Pangkalan data
Pangkalan data

Saya memerlukan pangkalan data di mana-mana yang boleh diakses oleh Python dan PHP. Itu juga harus mudah digunakan dengan banyak sokongan, menjadikan MySQL sebagai pelayan pangkalan data yang sempurna. Saya mulakan dengan memuat turun pemasang mysql dari https://dev.mysql.com/downloads/windows/installer/ dan kemudian jalankan. Saya memilih untuk memasang pelayan (tentu saja), dan juga meja kerja, shell, dan utiliti. Apabila anda memilih nama pengguna dan kata laluan pastikan untuk mengingatnya, kerana kelayakan yang sama diperlukan dalam semua fail PHP dan skrip Python. Setelah memulakan pelayan, jalankan untuk berjalan sebagai proses latar belakang agar sentiasa aktif. Mulai sekarang semuanya mesti dieja dan mengikut urutan yang sama seperti yang saya ada. Seterusnya, buat pangkalan data baru (skema) yang disebut "komponen". Kemudian tambahkan jadual berikut: "kategori", "bahagian", dan "pengguna". Dalam jadual kategori tambahkan lajur berikut dalam urutan tepat ini: "id" -int (11), PK, AI; "nama" -varchar (45); "pemilik" - varchar (45).

Dalam jadual bahagian tambahkan lajur berikut dalam urutan tepat ini: "id" -int (11), AI, PK; "kategori" -varchar (45); "nama" -varchar (45); "kuantiti" -int (11); "pemilik" -varchar (45); "locationX" -int (11); "locationY" -int (11);

Dalam jadual pengguna tambahkan lajur berikut dalam urutan tepat ini: "id" -int (11), AI, PK; "nama pengguna" -varchar (45); "kata laluan" -varchar (128);

Langkah 3: Menyiapkan Apache

Menyiapkan Apache
Menyiapkan Apache
Menyiapkan Apache
Menyiapkan Apache
Menyiapkan Apache
Menyiapkan Apache

Halaman web yang saya buat menggunakan HTML, CSS, Javascript, dan PHP. Mulakan dengan memuat turun versi apache terbaru dari https://www.apachelounge.com/download/ dan buka zip, pindahkan folder ke direktori C: \. Seterusnya, muat turun PHP dari https://windows.php.net/download#php-7.2 dan pastikan ia adalah versi Thread Safe. Buka zip, namakan semula menjadi "PHP", dan pindahkan ke direktori C: \. Kemudian masuk ke C: / Apache24 / conf / httpd.conf dan edit. Tambahkan baris berikut tepat di bawah bahagian:

LoadModule php7_module C: /PHP/php7apache2_4.dll

DirektoriIndex index.html index.php

Aplikasi AddHandler / x-httpd-php.php

PHPIniDir "C: / PHP"

Kemudian uji pelayan anda dengan menjalankan httpd.exe yang terletak di folder tong sampah. Pergi ke "localhost /" di penyemak imbas anda dan lihat apakah halaman dunia hello muncul. Sekiranya berlaku, hore, anda kini mempunyai pelayan laman web tempatan.

Langkah 4: Menyiapkan PHP

Menetapkan PHP
Menetapkan PHP
Menetapkan PHP
Menetapkan PHP

Untuk menyediakan MySQL untuk PHP beberapa perkara mesti dilakukan. Pertama, ganti nama "php.ini-disyorkan" menjadi "php.ini" dan kemudian buka di notepad. Pergi ke bahagian sambungan dan tambahkan atau tanggalkan "extension = php_mysqli.dll" yang akan membiarkan PHP berkomunikasi dengan pelayan MySQL. Sekarang mulakan semula httpd.exe dan buat fail baru yang dipanggil "phptest.php" dan masukkan ke dalam fail. Sekarang pergi ke localhost / phptest.php dan lihat apakah maklumat penyemak imbas anda muncul.

Langkah 5: Merancang Mesin

Merancang Mesin
Merancang Mesin
Merancang Mesin
Merancang Mesin
Merancang Mesin
Merancang Mesin

Saya mulakan dengan membuat beberapa bahagian asas dalam Fusion 360: batang 6mm, galas linier, dan motor stepper. Kemudian saya menjangkau dua batang untuk membentuk paksi y, dan juga meletakkan tali pinggang masa di sekitar motor dan galas stepper. Saya juga menambah paksi x. Saya kemudian mula mencetak 3D pelbagai bahagian dan juga CNC mengarahkan dua panel sisi.

Langkah 6: Membuat Mesin

Membuat Mesin
Membuat Mesin
Membuat Mesin
Membuat Mesin
Membuat Mesin
Membuat Mesin

Saya akhirnya melalui beberapa lelaran setiap bahagian, jadi jika ada yang berbeza itulah sebabnya. Saya mulakan dengan mengamplas setiap bahagian dan kemudian menggerudi setiap lubang pada bahagian yang dicetak 3D. Kemudian saya memasukkan galas linier ke dalam lubang dan memasukkan batang 6mm ke dalamnya. Saya juga memasang motor stepper ke lokasi masing-masing setelah memasang takal pada porosnya. Tali pinggang masa dililitkan di setiap dua sisi bagi kedua-dua paksi. Akhirnya saya menyedari bahawa gripper akan terlalu membebankan, jadi saya memilih elektromagnet sebagai gantinya. Saya juga mendapat pertolongan semasa membinanya, dalam bentuk kucing.

Langkah 7: Kod Arduino

Kod Arduino
Kod Arduino

Asas saya untuk mesin ini adalah GRBL. Permulaan kod menyenaraikan pelbagai parameter, seperti jarak per putaran, offset, dan lanjutan. Saya menggunakan perpustakaan BasicStepperDriver untuk mengawal pemacu motor stepper DRV8825. Pemacu stepper ditetapkan untuk menggunakan 1/32 micro-stepping, meningkatkan resolusi. Setiap kali mesin "boot up", ia akan melalui urutan homing di mana setiap paksi melangkah sehingga mencapai suis had. Kemudian bergerak berdasarkan offset ke lokasi yang ditetapkan dan menetapkan lokasi ke 0, 0. Sekarang setiap kali ia menerima arahan bergerak melalui siri, ia bergerak ke lokasi grid.

Langkah 8: Program Python

Saya memilih untuk menggunakan Flask sebagai pelayan laman web yang akan menerima permintaan GET dari laman web utama. Permintaan terdiri daripada nama dan kategori bahagian. Setelah Flask menanganinya data akan dihuraikan, maka pelayan MySQL akan ditanyakan untuk mengetahui lokasi bahagian tersebut. Kemudian skrip python mengirimkan perintah ke Arduino, menentukan bahagian mana.

Langkah 9: Menggunakan Pemilih Bahagian

Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian
Menggunakan Pemilih Bahagian

Saya telah menyediakan fail laman web di repositori github saya: https://github.com/having11/cnc_part_picker_webpages Ganti parameter yang hilang dalam fail PHP untuk pelayan MySQL khusus anda. Masukkan fail ke dalam folder htdocs dalam folder Apache. Cukup jalankan skrip python dan kemudian setiap kali jumlah bahagian berubah mesin akan pergi ke lokasi itu dan mendapatkannya. Cari fail percetakan 3D di sini dan fail halaman web di sini.

Disyorkan: