Поставили нам недавно вполне конкретную задачу, от склада одного из российских дистрибьюторов электронных компонентов, с которого мы отправляем свою продукцию нашим покупателем, среди множества других посылок. Ну, хорошо! Попробуем…. Тем более, еще некоторое время назад у нас в образцах появился такой ультразвуковой датчик для измерения расстояний. По цене он заметно отличался от широко распространенных, но производитель обещал лучшую точность измерения. Да и как раз в это время мы сделали собственную версию микроконтроллера, по функциям совместимую с Ардуино Леонардо, снабдив плату винтовыми разъемами, гнездами для LCD и рядом других примочек, рассчитанных на расширение возможностей модуля в дальнейшем.
Вот так вот выглядит рабочее место упаковщика, где он взвешивает и измеряет упаковку:
Попробуем его улучшить и автоматизировать.
Серебристая поверхность это весы, они подключены к компьютеру через собственный COM-порт и автоматически передают вес в учетную систему. А вот для измерения размеров коробки местные рационализаторы разместили рядом с весами линейки, из подручных средств. Это заметно повысило производительность труда, но данные в систему приходилось вводить руками с помощью клавиатуры.
Итак, для опытного образца берем рабочее место за основу и добавляем к Древесно-Декартовой системе координат датчики, разворачиваем их внутрь осей, подключаем к микроконтроллеру, в ARDUINO IDE пишем скетч, используя библиотеку датчика и встроенные возможности Leonardo. А именно то, что в используемом микроконтроллере Atmega 32u4 реализовано подключение к компьютеру по встроенному интерфейсу USB по технологии HID-устройств. Так работают клавиатуры, мыши, торговые сканеры штрих-кодов. Это именно то, что нам и надо – передать данные в буфер клавиатуры, сымитировав ручной ввод данных.
Вот посмотрите ролик, что получилось в «черновом варианте»
Мы написали простой скетч. Реализовав только основные функции, но ничто не мешает дополнить его различным сервисом типа ручной калибровки, изменения единицы измерения, настройка передаваемых символов в зависимости от используемой учетной системы и т.п. Память контроллера достаточно большая и позволит это сделать в будущем при необходимости.
А пока скетч работает по такой логике:
• После включения каждый из трех датчиков измеряет расстояние от себя до противоположно стенки и запоминает это расстояние как базовое
• Переходит в рабочий режим и циклически измеряет текущее расстояние
• Если текущее расстояние заметно отличается от базового – прибор считает, что в зону измерения помещена коробка. Измерение происходит по трем осям по формуле:
Размер стороны = Базовое – текущее расстояние
• Размер по трем осям записывается в соответствующие переменные.
• Передача в компьютер осуществляется по нажатию кнопки оператором. Это сделано для устранения ложных срабатываний.
• После передачи данных нажатие кнопки блокируется до момента, пока коробку не уберут. Система почувствует это по измерению текущего расстояния – оно опять станет равным базовому.
• Цикл повторяется – система ждет новую коробку
Итак, мы сделали, установили, настроили датчики для эксперимента на фиксированные базовые расстояния… и оставили на опытную эксплуатацию. Что она показала? Наноточности измерений мы не получили, но для поставленной логистической задачи точность вполне подходящая.
Кроме этого:
• Повышение производительности – Да.
• Удобство для упаковщика – Да.
Наступил второй этап нашей разработки – приведение к товарному виду. За дело взялся конструктор и с помощью программы SketchUp и нескольких чашек кофе разработал конструкцию, чем-то похожую на хорошо известный 3D-принтер RepRap.
Собственно говоря на 3D принтере мы и собирались напечатать необходимые для конструктора детали. Вот что получилось в итоге:
Здесь можно скачать STL файлы.
Поразвлекавшись с ушками и безумными наручными часами, мы нашли и коммерческое применение нашему 3D принтеру.
Сейчас мы доделаем наш сканер и отправим его на склад в постоянную эксплуатацию, о чем обязательно напишем и снимем новый ролик.
Вот что у нас получилось в итоге:
п.с. Комплект для сборки сканера упаковки протестирован, отработан и готов к продаже