Оглавление:

Интегрированная система управления запасами: 10 шагов (с изображениями)
Интегрированная система управления запасами: 10 шагов (с изображениями)

Видео: Интегрированная система управления запасами: 10 шагов (с изображениями)

Видео: Интегрированная система управления запасами: 10 шагов (с изображениями)
Видео: Системы управления запасами. Инструмент GoodsForecast#2 2024, Ноябрь
Anonim
Интегрированная система управления запасами
Интегрированная система управления запасами

Мне всегда был нужен доступный способ отслеживать все в моей кладовой, поэтому пару месяцев назад я начал работать над проектом, который бы делал именно это. Цель заключалась в том, чтобы создать простую и доступную систему, которая была бы очень простой в использовании и в то же время хранила достаточно информации, чтобы стоить дополнительных усилий. В конечном итоге я создал систему управления запасами, которая может хранить и обновлять информацию о любом предмете со штрих-кодом, а также собирать основные данные об этих предметах из Интернета.

Короче система работает так.

  1. Сканируется штрих-код.
  2. Скрипт Python считывает данные со сканера.
  3. Запрос отправляется в REST API, работающий на красном узле.
  4. API обрабатывает запрос, добывает дополнительные данные из Интернета и соответствующим образом редактирует базу данных.

Все это делается на одном Raspberry Pi, что дает вам возможность обновлять и хранить данные обо всем своем инвентаре в одной небольшой портативной системе. Этот проект носит немного технический характер, и базовое понимание баз данных, HTTP и Python будет очень полезным, но я сделаю все возможное, чтобы сделать его достаточно простым для понимания новичком. Давайте начнем!

Шаг 1. Что вам понадобится

Что вам понадобится
Что вам понадобится

Детали, которые вам понадобятся для этого проекта:

  • Raspberry Pi
  • USB-сканер штрих-кода (ссылка на тот, который я использую)
  • Адаптер Wi-Fi (если на вашем Pi нет встроенного Wi-Fi)
  • Переключить переключатель
  • Провода перемычки
  • Чехол для Raspberry Pi (необязательно)

Шаг 2: Установите и настройте базу данных

Установить и настроить базу данных
Установить и настроить базу данных

MySQL - это система управления базой данных, которая будет хранить все данные, которые мы получаем при сканировании штрих-кода. Это очень легко сделать на Pi, просто запустите следующую команду в терминале вашего Pi.

sudo apt-get установить mysql-server

Затем вы пройдете через процесс установки и предложите создать пароль. Вот и все. С установленным MySQL ваш Pi может действовать как собственный небольшой сервер базы данных. Теперь нам нужно создать таблицы, в которых будут храниться наши данные. Сначала войдите в систему. После установки единственным пользователем MySql будет root (пользователь, имеющий доступ к каждой таблице и системе). Вы можете войти в систему как root, выполнив следующую команду.

mysql -uroot -p

Вскоре мы настроим другого пользователя, которого будет использовать наша система, но сначала нам нужно создать нашу базу данных и таблицы в этой базе данных. Для этого выполните следующие команды.

создать инвентаризацию базы данных;

использовать инвентарь; создать таблицу upc_count (upc varchar (15) не null, count integer (3) not null по умолчанию 0, имя varchar (255), размер varchar (40), производитель varchar (80), первичный ключ (upc));

Теперь у нас есть простая таблица с пятью столбцами upc (которые будут первичным ключом), количеством, именем, размером и производителем. Примечание. UPC - это номер, который однозначно идентифицирует продукт. Этот номер считывается на этикетке со штрих-кодом при сканировании.

Наконец, мы собираемся настроить того пользователя, который нам нужен. Я собираюсь позвонить своему, для этого выполните следующие команды, используя любое имя пользователя и пароль, которые вам нравятся:

предоставить все в инвентаре. * '' @ 'localhost', идентифицированному;

Теперь, когда у нас есть база данных, мы можем приступить к построению системы!

Шаг 3. Получите ключ API OutPan

OutPan - это API, который можно использовать для получения информации о продукте по его номеру upc. Мы собираемся использовать это для получения дополнительной информации о товарах по мере их добавления в базу данных. Это общедоступный API, но для его использования вам необходимо зарегистрироваться и получить ключ API. Зарегистрироваться довольно просто, просто перейдите сюда и следуйте инструкциям, чтобы получить ключ.

Получив ключ, скопируйте его. Он понадобится вам позже.

Шаг 4: Установите и настройте Node-Red

Установить и настроить Node-Red
Установить и настроить Node-Red
Установить и настроить Node-Red
Установить и настроить Node-Red

Node-Red предустановлен на всех версиях Raspbian OS с конца 2015 года. Чтобы узнать, установлен ли у вас node-red, просто выполните следующую команду в терминале.

узел красный

Если отображается сообщение «команда не найдена», вам необходимо установить node-red. Для этого выполните следующие команды.

sudo apt-get update sudo apt-get install nodered

После запуска node-red вы можете получить доступ к node-red по адресу, отображаемому в выходных данных.

Осталось только установить узлы MySQL. Вы можете сделать это через браузер. Щелкните символ в правом верхнем углу страницы, а затем выберите параметр «Управление палитрой». Оттуда просто найдите mysql и нажмите кнопку установки.

Теперь мы готовы импортировать API.

Шаг 5. Настройте API

Настроить API
Настроить API
Настроить API
Настроить API
Настроить API
Настроить API

Ниже представлен весь написанный мной API Node-Red. Просто скопируйте все, что ниже, нажмите на символ в правом верхнем углу и перейдите к импорту → из буфера обмена.

[{"id": "ef09537e.8b96d", "type": "subflow", "name": "mineOpenPanData", "info": "", "in": [{"x": 64, "y": 57, "провода": [{"id": "b8b6d2e4.169e7"}]}], "out": [{"x": 755, "y": 58, "провода": [{"id": "8dc2d52b.6a6fd8", "порт": 0}]}]}, {"id": "b8b6d2e4.169e7", "type": "http-запрос", "z": "ef09537e.8b96d", "имя ":" Out Pan Request "," method ":" GET "," ret ":" txt "," url ":" https://api.outpan.com/v2/products/{{{upc}}} ? apikey = "," tls ":" "," x ": 202," y ": 57," провода ":

Теперь у вас есть весь API, который мы будем использовать для вставки и обновления данных. Необходимо внести всего несколько изменений, прежде чем мы будем готовы его использовать.

  1. Сначала войдите во все узлы базы данных MySQL и измените имя пользователя и пароль на те, которые вы создали для базы данных на предыдущем шаге.
  2. Во-вторых, отредактируйте подпоток mineOutPanData, чтобы HTTP-запрос, используемый для получения данных Open Pan, использовал ваш собственный ключ API.

Теперь вы готовы использовать API. Этот поток создает простой REST API, который позволяет отправлять данные с любого устройства, подключенного к Интернету, с помощью

Шаг 6. (Необязательно) Знакомство с API

Подключите тумблер
Подключите тумблер

Последнее, что нам нужно сделать, это подключить переключатель к GPIO, чтобы мы могли сканировать в двух режимах, добавлять и удалять.

Это довольно просто, просто установите тумблер для чтения с контакта 21 GPIO на Pi, и все готово. Используя схему на прикрепленном изображении (известную как схема PUD DOWN), сценарий отправит запрос на добавление, когда тумблер закрыт, и запрос на удаление, когда тумблер открыт.

После этого мы просто приклеиваем провода к внутренней части корпуса, и все готово.

Шаг 9: (Необязательно) Создайте пользовательский интерфейс

(Необязательно) Создайте пользовательский интерфейс
(Необязательно) Создайте пользовательский интерфейс

Этот последний шаг не обязателен, но, безусловно, полезен, если вы хотите использовать весь потенциал системы. Я создал очень простой пользовательский интерфейс, который отображал все данные, которые есть в нашей базе данных, в удобной для навигации таблице. Таблицу можно отсортировать по столбцам, а также выполнить поиск, что позволяет легко увидеть, что у вас есть под рукой.

Пользовательский интерфейс довольно прост; Я переработал некоторый пример кода, который нашел в Интернете, для работы с нашим API (если вам интересно, этот пример кода можно найти здесь).

Чтобы запустить пользовательский интерфейс, сделайте следующее…

  1. Сохраните прикрепленный файл index.txt как index.html (по какой-то причине мне не удалось загрузить файл в виде HTML-файла).
  2. Поместите два файла в один каталог на вашем компьютере.
  3. Запустите файл index.html в своем любимом веб-браузере.

Теперь мы можем легко просмотреть и отсортировать ваш инвентарь!

Шаг 10: Начните сканирование

Начать сканирование!
Начать сканирование!

Теперь вы готовы начать сканирование! Если у вас есть вопросы, оставьте их в комментариях, и я обязательно отвечу, когда смогу.

Наконец, мы будем очень признательны за ваши голоса в конкурсе. Спасибо за прочтение!

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