Mundarija:

CNC qismlarini yig'ish mashinasi: 9 qadam (rasmlar bilan)
CNC qismlarini yig'ish mashinasi: 9 qadam (rasmlar bilan)

Video: CNC qismlarini yig'ish mashinasi: 9 qadam (rasmlar bilan)

Video: CNC qismlarini yig'ish mashinasi: 9 qadam (rasmlar bilan)
Video: Самаркандлик ам товба 2024, Iyul
Anonim
CNC qismlarini yig'ish mashinasi
CNC qismlarini yig'ish mashinasi

Agar siz men kabi jiddiy ishlab chiqaruvchi bo'lsangiz, demak sizda son -sanoqsiz rezistorlar, kondansatkichlar va boshqa elektron komponentlar bo'ladi. Ammo katta muammo bor: qanday narsaga yoki qancha narsaga ega ekanligini qanday kuzatish mumkin? Bu masala bo'yicha men MySQL ma'lumotlar bazasidan ma'lumot oladigan CNC mashinasini yaratdim, so'ngra so'ralgan elementni oladi va oladi. Ma'lumotlar bazasiga qo'shimcha ravishda, men foydalanuvchilarga tizimga kirishga, keyin qismlar toifalarini yaratishga, yangi qismlarni qo'shishga va qismlar sonini o'zgartirishga imkon beradigan veb-sahifa yaratdim. Shunday qilib, aktsiyalarni boshqarish tizimi kabi, har bir elementni hisobga olish mumkin.

Komponentlar:

  • Arduino UNO va Genuino UNO
  • Mashina vintlari: 8 mm, 3 mm, 4 mm
  • MOSFET N-kanali
  • Rektifier diodi 1N4001
  • Bosqichli dvigatel NEMA 17 x2
  • Stepper motor x2 uchun DRV8825 haydovchi
  • Kondensator 100 mF x 2
  • DFRobot Servo Gripper
  • DFRobot vaqt kamari x2
  • DFRobot 5MM vaqt kasnagi x2
  • DFRobot chiziqli rulman 6mmx12mm x2
  • DFRobot bilya rulmani 8 mm x 12 mm

1 -qadam: nazariya

Image
Image

Bu tizimning asosi inventarizatsiyani kuzatib borishdir. Masalan, agar kimdir 20 ta Arduino Uno taxtasini sotib olsa, ular bu miqdorni ma'lumotlar bazasi jadvaliga osongina qo'shishi mumkin. Bu toifaga "Arduino", "Uno" nomi va 20 tasi kiradi. Ko'p odamlar uchun bu qismning egasi uni qo'shgan odamning foydalanuvchi nomi bo'ladi. Bo'lim, shuningdek, tarmoqdagi joylashuvi haqidagi ma'lumotlarni o'z ichiga oladi. Qachonki qismlar miqdori o'zgarsa, CNC mashinasi o'sha qismni tanlab, foydalanuvchiga beradi.

2 -qadam: ma'lumotlar bazasi

Ma'lumotlar bazasi
Ma'lumotlar bazasi
Ma'lumotlar bazasi
Ma'lumotlar bazasi

Menga Python va PHP ham kira oladigan hamma joyda ma'lumotlar bazasi kerak edi. Bundan tashqari, uni ko'p qo'llab -quvvatlash bilan ishlatish oson bo'lishi kerak edi, bu MySQL -ni mukammal ma'lumotlar bazasi serveriga aylantirdi. Men https://dev.mysql.com/downloads/windows/installer/ dan mysql o'rnatuvchisini yuklab olishdan boshladim va keyin ishga tushirdim. Men serverni o'rnatishni tanladim (albatta), shuningdek ishchi stol, qobiq va yordamchi dasturlar. Foydalanuvchi nomi va parolni tanlaganingizda, uni eslab qolishga ishonch hosil qiling, chunki xuddi shu hisob ma'lumotlari barcha PHP fayllari va Python skriptida kerak bo'ladi. Serverni ishga tushirgandan so'ng, uni fon jarayoni sifatida ishga tushiring, shunda u doimo faol bo'ladi. Bu yerdan boshlab, hamma narsa men yozgan tartibda yozilishi kerak. Keyin "komponentlar" deb nomlangan yangi ma'lumotlar bazasini (sxema) yarating. Keyin quyidagi jadvallarni qo'shing: "toifalar", "qismlar" va "foydalanuvchilar". Kategoriyalar jadvaliga quyidagi ustunlarni aniq tartibda qo'shing: "id" -int (11), PK, AI; "nomi" -varchar (45); "egasi" - varchar (45).

Bo'limlar jadvaliga quyidagi ustunlarni aniq tartibda qo'shing: "id" -int (11), AI, PK; "toifa" -varchar (45); "nomi" -varchar (45); "miqdor" -int (11); "egasi" -varchar (45); "locationX" -int (11); "locationY" -int (11);

Foydalanuvchilar jadvaliga quyidagi tartibda quyidagi ustunlarni qo'shing: "id" -int (11), AI, PK; "foydalanuvchi nomi" -varchar (45); "parol" -varchar (128);

3 -qadam: Apache -ni sozlash

Apache -ni sozlash
Apache -ni sozlash
Apache -ni sozlash
Apache -ni sozlash
Apache -ni sozlash
Apache -ni sozlash

Men yaratgan veb -sahifalar HTML, CSS, Javascript va PHP -dan foydalanadi. Apache -ning so'nggi versiyasini https://www.apachelounge.com/download/ saytidan yuklab oling va papkani C: / katalogiga ko'chiring. Keyin PHP-ni https://windows.php.net/download#php-7.2 saytidan yuklab oling va uning Thread Safe versiyasi ekanligiga ishonch hosil qiling. Uni oching, uni "PHP" deb o'zgartiring va C: / katalogiga o'tkazing. Keyin C: / Apache24 / conf / httpd.conf -ga kiring va uni tahrir qiling. Bo'lim ostiga quyidagi qatorlarni qo'shing:

LoadModule php7_module C: /PHP/php7apache2_4.dll

DirectoryIndex index.html index.php

AddHandler ilovasi/x-httpd-php.php

PHPIniDir "C:/PHP"

Keyin serverni axlat qutisidagi httpd.exe faylini ishga tushirish orqali sinab ko'ring. Brauzeringizdagi "localhost/" ga o'ting va salom dunyo sahifasi ochilishini bilib oling. Agar shunday bo'lsa, xayr, endi sizda mahalliy veb -server bor.

4 -qadam: PHP -ni sozlash

PHP -ni sozlash
PHP -ni sozlash
PHP -ni sozlash
PHP -ni sozlash

PHP uchun MySQL -ni o'rnatish uchun bir nechta ishlarni bajarish kerak. Birinchidan, "php.ini tavsiya etilgan" ni "php.ini" deb o'zgartiring va keyin bloknotda oching. Kengaytmalar bo'limiga o'ting va "extension = php_mysqli.dll" ni qo'shing yoki izohlamang, bu PHP -ning MySQL -server bilan aloqa o'rnatishiga imkon beradi. Endi httpd.exe -ni qayta ishga tushiring va "phptest.php" nomli yangi fayl yarating va faylga qo'ying. Endi localhost/phptest.php -ga o'ting va brauzer ma'lumotlari paydo bo'lishini ko'ring.

5 -qadam: Mashinaning dizayni

Mashinani loyihalash
Mashinani loyihalash
Mashinani loyihalash
Mashinani loyihalash
Mashinani loyihalash
Mashinani loyihalash

Men Fusion 360 -da ba'zi asosiy qismlarni yaratish bilan boshladim: 6 mm diametrli tayoq, chiziqli rulman va qadamli motor. Keyin men y o'qini hosil qilish uchun ikkita tayoqni aylantirdim, shuningdek, qadam dvigateli va rulman atrofida vaqt kamarini o'rab qo'ydim. Men ham x o'qini qo'shdim. Keyin men turli qismlarni 3D bosib chiqarishni boshladim, shuningdek CNC ikkita yon panelni uzatdi.

6 -qadam: Mashinani yasash

Mashinani yasash
Mashinani yasash
Mashinani yasash
Mashinani yasash
Mashinani yasash
Mashinani yasash

Men har bir qismning bir nechta takrorlanishini boshdan kechirdim, shuning uchun har xil bo'lsa, shuning uchun. Men har bir qismni silliqlashdan boshladim, so'ngra 3D bosilgan qismlarning har bir teshigini burg'uladim. Keyin men teshiklarga chiziqli rulmanlarni joylashtirdim va ular orqali 6 mm tayoqchalarni o'tkazdim. Men, shuningdek, kasnaqlarni vallariga mahkamlagandan so'ng, step motorlarini o'z joylariga o'rnatdim. Vaqt kamari har ikki o'qning har ikki tomoniga ham bog'langan. Oxir -oqibat, ushlagich juda og'ir bo'lishini tushundim, shuning uchun men elektromagnitni tanladim. Menga mushuk qiyofasida qurilish paytida ham yordam berildi.

7 -qadam: Arduino kodi

Arduino kodi
Arduino kodi

Bu mashinaning asosi GRBL edi. Kodning boshida har xil parametrlar ro'yxati keltirilgan, masalan, aylanishga masofa, ofset va kengayish. Men DRV8825 step motorli drayverlarni boshqarish uchun BasicStepperDriver kutubxonasidan foydalandim. Step drayverlari piksellar sonini oshirib, 1/32 mikro-qadamdan foydalanishga o'rnatiladi. Qachonki mashina "yuklansa", u har bir o'q chegara tugmachasini bosmaguncha qadam qo'yadigan ketma -ketlik ketma -ketligidan o'tadi. Keyin u ofset asosida belgilangan joyga o'tadi va joyni 0, 0 ga o'rnatadi. Endi ketma -ket ko'chirish buyrug'ini olganida, u o'sha panjara joyiga o'tadi.

8 -qadam: Python dasturi

Men Flaskni asosiy veb -saytdan GET so'rovlarini qabul qiladigan veb -server sifatida ishlatishni tanladim. So'rovlar qismning nomi va toifasidan iborat. Flask ishlov bergandan so'ng, ma'lumotlar tahlil qilinadi, keyin MySQL -server qismning joylashishini bilish uchun so'raladi. Keyin python skripti Arduino -ga buyruq yuboradi va uning qismi qaerda ekanligini ko'rsatib beradi.

9 -qadam: Parcha tanlagichidan foydalanish

Parcha tanlagichidan foydalanish
Parcha tanlagichidan foydalanish
Qismni tanlagichdan foydalanish
Qismni tanlagichdan foydalanish
Parcha tanlagichidan foydalanish
Parcha tanlagichidan foydalanish
Parcha tanlagichidan foydalanish
Parcha tanlagichidan foydalanish

Men veb -sayt fayllarini o'z github omborimga joylashtirdim: https://github.com/having11/cnc_part_picker_webpages MySQL -serveringiz uchun PHP fayllaridagi etishmayotgan parametrlarni almashtiring. Fayllarni Apache jildidagi htdocs papkasiga joylashtiring. Python skriptini ishga tushiring, so'ngra uning miqdori o'zgarganda, mashina o'sha joyga boradi va uni oladi. Bu erda 3D bosib chiqarish fayllarini va veb -sahifa fayllarini toping.

Tavsiya: