Оглавление:

Станок для отбора деталей с ЧПУ: 9 шагов (с изображениями)
Станок для отбора деталей с ЧПУ: 9 шагов (с изображениями)

Видео: Станок для отбора деталей с ЧПУ: 9 шагов (с изображениями)

Видео: Станок для отбора деталей с ЧПУ: 9 шагов (с изображениями)
Видео: Изготовление детали на ЧПУ. В подробностях. Часть 1/2 2024, Декабрь
Anonim
Станок для отбора деталей с ЧПУ
Станок для отбора деталей с ЧПУ

Если вы такой же серьезный производитель, как и я, то у вас, скорее всего, валяется бесчисленное множество резисторов, конденсаторов и различных других электронных компонентов. Но есть большая проблема: как отслеживать, что или сколько чего-то у них есть? Для этой проблемы я создал станок с ЧПУ, который получает информацию из базы данных MySQL, которая затем идет и извлекает запрошенный элемент. В дополнение к серверной части базы данных я создал интерфейсную веб-страницу, которая позволяет пользователям входить в систему, а затем создавать категории деталей, добавлять новые детали и изменять количество деталей. Таким образом можно учитывать каждую единицу товара, как в системе управления запасами.

Компоненты:

  • Arduino UNO и Genuino UNO
  • Крепежные винты: 8 мм, 3 мм, 4 мм
  • MOSFET N-канал
  • Выпрямительный диод 1N4001
  • Шаговый двигатель NEMA 17 x2
  • Драйвер DRV8825 для шаговых двигателей x2
  • Конденсатор 100 мкФ x2
  • Захват сервопривода DFRobot
  • Ремень ГРМ DFRobot x2
  • DFRobot 5MM Шкив ГРМ x2
  • Линейный подшипник DFRobot 6 мм x 12 мм x2
  • Подшипник шариковый DFRobot 8 мм x 12 мм

Шаг 1: теория

Image
Image

Основа этой системы - вести учет запасов. Например, если кто-то купит 20 плат Arduino Uno, он может легко добавить эту сумму в таблицу базы данных. Категория будет «Arduino», имя «Uno» и количество 20. Для нескольких людей владельцем этой части будет имя пользователя, добавившего ее. Деталь также будет включать данные о ее местонахождении в сетке. Всякий раз, когда количество деталей изменяется, станок с ЧПУ выбирает эту деталь и передает ее пользователю.

Шаг 2: База данных

База данных
База данных
База данных
База данных

Мне нужна была повсеместная база данных, к которой могли бы получить доступ как Python, так и PHP. Он также должен был быть простым в использовании с большим количеством поддержки, что делало MySQL идеальным сервером баз данных. Я начал с загрузки установщика mysql с https://dev.mysql.com/downloads/windows/installer/, а затем запустил его. Я решил установить сервер (конечно), а также рабочую среду, оболочку и утилиты. Когда вы выбираете имя пользователя и пароль, обязательно запомните их, поскольку те же учетные данные необходимы во всех файлах PHP и скрипте Python. После запуска сервера разрешите ему работать в фоновом режиме, чтобы он всегда был активен. С этого момента все должно быть написано и в том же порядке, что и я. Затем создайте новую базу данных (схему) под названием «компоненты». Затем добавьте следующие таблицы: «категории», «части» и «пользователи». В таблице категорий добавьте следующие столбцы в этом точном порядке: «id» -int (11), PK, AI; "имя" -varchar (45); «хозяин» - варчар (45).

В таблице деталей добавьте следующие столбцы в этом точном порядке: «id» -int (11), AI, PK; «категория» - варчар (45); "имя" -varchar (45); «количество» - int (11); «хозяин» -варчар (45); "locationX" -int (11); "locationY" -int (11);

В таблице пользователей добавьте следующие столбцы в этом точном порядке: «id» -int (11), AI, PK; "имя пользователя" -varchar (45); "пароль" -varchar (128);

Шаг 3: Настройка Apache

Настройка Apache
Настройка Apache
Настройка Apache
Настройка Apache
Настройка Apache
Настройка Apache

Созданные мной веб-страницы используют HTML, CSS, Javascript и PHP. Начните с загрузки последней версии apache с https://www.apachelounge.com/download/ и распакуйте ее, переместив папку в каталог C: \. Затем загрузите PHP с https://windows.php.net/download#php-7.2 и убедитесь, что это версия Thread Safe. Разархивируйте его, переименуйте в «PHP» и переместите в каталог C: \. Затем перейдите в C: / Apache24 / conf / httpd.conf и отредактируйте его. Добавьте следующие строки прямо под разделом:

LoadModule php7_module C: /PHP/php7apache2_4.dll

DirectoryIndex index.html index.php

Приложение AddHandler / x-httpd-php.php

PHPIniDir "C: / PHP"

Затем проверьте свой сервер, запустив httpd.exe, расположенный в папке bin. Зайдите в "localhost /" в своем браузере и посмотрите, появится ли страница hello world. Если это так, ура, теперь у вас есть локальный веб-сервер.

Шаг 4: Настройка PHP

Настройка PHP
Настройка PHP
Настройка PHP
Настройка PHP

Чтобы настроить MySQL для PHP, необходимо сделать несколько вещей. Сначала переименуйте «php.ini-Recommended» в «php.ini», а затем откройте его в блокноте. Перейдите в раздел расширений и добавьте или раскомментируйте extension = php_mysqli.dll, который позволит PHP взаимодействовать с сервером MySQL. Теперь перезапустите httpd.exe, создайте новый файл с именем «phptest.php» и поместите в него. Теперь перейдите на localhost / phptest.php и посмотрите, появится ли информация о вашем браузере.

Шаг 5: проектирование машины

Проектирование машины
Проектирование машины
Проектирование машины
Проектирование машины
Проектирование машины
Проектирование машины

Я начал с создания основных деталей в Fusion 360: стержня диаметром 6 мм, линейного подшипника и шагового двигателя. Затем я натянул два стержня поперек, чтобы сформировать ось y, а также надел ремень ГРМ вокруг шагового двигателя и подшипника. Я также добавил ось x. Затем я начал 3D-печать различных деталей, а также фрезеровал две боковые панели с помощью ЧПУ.

Шаг 6: Изготовление машины

Изготовление машины
Изготовление машины
Изготовление машины
Изготовление машины
Изготовление машины
Изготовление машины

В итоге я прошел несколько итераций каждой части, поэтому, если они отличаются, вот почему. Я начал с шлифования каждой детали, а затем просверливал каждое отверстие в деталях, напечатанных на 3D-принтере. Затем я вставил линейные подшипники в отверстия и пропустил через них 6-миллиметровые стержни. Я также установил шаговые двигатели в соответствующие места после прикрепления шкивов к их валам. Ремень ГРМ был намотан на каждую из двух сторон для обеих осей. В конце концов я понял, что захват будет слишком громоздким, поэтому выбрал вместо него электромагнит. Мне также помогли его постройки в виде кота.

Шаг 7: Код Arduino

Код Arduino
Код Arduino

Моей основой для этой машины был GRBL. В начале кода перечислены различные параметры, такие как расстояние на оборот, смещения и размеры. Я использовал библиотеку BasicStepperDriver для управления драйверами шагового двигателя DRV8825. Драйверы шагового двигателя настроены на использование 1/32 микрошага, увеличивая разрешение. Всякий раз, когда машина «загружается», она выполняет последовательность перемещения к началу отсчета, при которой каждая ось движется, пока не коснется концевого выключателя. Затем он перемещается в зависимости от смещения в заданное местоположение и устанавливает местоположение в 0, 0. Теперь всякий раз, когда он получает команду перемещения по последовательному каналу, он перемещается в это местоположение в сетке.

Шаг 8: Программа Python

Я решил использовать Flask в качестве веб-сервера, который будет получать запросы GET с основного веб-сайта. Запросы состоят из названия и категории детали. После того, как Flask обработает его, данные будут проанализированы, а затем сервер MySQL получит запрос, чтобы узнать местоположение части. Затем скрипт python отправляет команду на Arduino, указывая, где находится часть.

Шаг 9: Использование средства выбора деталей

Использование средства выбора деталей
Использование средства выбора деталей
Использование средства выбора деталей
Использование средства выбора деталей
Использование средства выбора деталей
Использование средства выбора деталей
Использование средства выбора деталей
Использование средства выбора деталей

Я предоставил файлы веб-сайта в моем репозитории на github: https://github.com/having11/cnc_part_picker_webpages Замените отсутствующие параметры в файлах PHP для вашего конкретного сервера MySQL. Поместите файлы в папку htdocs в папке Apache. Просто запустите скрипт python, а затем всякий раз, когда количество деталей изменится, машина перейдет в это место и получит ее. Файлы для 3D-печати можно найти здесь, а файлы веб-страниц - здесь.

Рекомендуемые: