В рубрике DOU Проекторвсе желающие могут презентовать свой продукт (как стартап, так и ламповый pet-проект). Если вам есть о чем рассказать — приглашаем поучаствовать. Если нет — возможно, серия вдохновит на создание собственного made in Ukraine продукта. Вопросы и заявки на участие присылайте на editors@dou.ua.
Меня зовут Виталий Билык, я CTO и co-founder компании TopLab. В IT работаю 10 лет. Сейчас активно занимаюсь hardware, в том числе embedded-разработкой.
Если коротко, то наша компания TopLabпредоставляет услуги по разработке IoT продуктов — от создания концепции, исследований и прототипирования до массового производства.
Идея
Хочу поделиться с вами кейсом о создании принтера, прожигающего пиксели. Этот принтер работает без расходников для печати, на бумаге любой плотности и печатает текст «на века», то есть текст устойчив к влаге и механическим повреждениям. Использовать его можно для печати нестираемых контрактов, чеков, рекламной продукции, односторонней ч/б печати в офисе и т. д.
Идея создания принтера без чернил и тонера приходила мне не раз, особенно после очередной заправки картриджей. Но отправной точкой послужил момент, когда во время работы с высоковольтным электричеством я заметил, что оно отлично прожигает бумагу. Команда поддержала мою идею, и мы приступили к разработке.
Реализация
Для создания первого прототипа мы использовали высоковольтное электричество. Для этого мы собрали повышающий высоковольтный высокочастотный преобразователь, проверили его на обычной бумаге и ура! — получили первую черную точку.
Следующим шагом было создание самого принтера. Для ускорения работы мы использовали старый и нерабочий струйный принтер фирмы HP. Из него выкинули всю электрическую часть, кроме двигателей и датчиков положения каретки. Поставили на каретку высоковольтный высокочастотный преобразователь.
После этого создали свои «мозги» для принтера. Для ускорения процесса разработки использовали Arduino.
Подключили к новым «мозгам»:
- шаговый двигатель для подачи бумаги;
- коллекторный двигатель для управления кареткой;
- оптический датчик положения каретки;
- оптический датчик наличия бумаги.
Софт для принтера
Для ускорения разработки решили сделать сам принтер максимально «тупым». Такими были его задачи: ожидание команды по UART, выполнение команды и отправка статуса. Всю работу по преобразованию информации и поведению принтера вынесли на сторону компьютера.
Получилась следующая схема взаимодействия:
Ruby — UART — Arduino — UART — Ruby
Проблемы и их решения
Запустили на печать... и тут возникла первая проблема. ВВ блок хотя и окрашивал бумагу в черный цвет, но при печати выдавал очень много помех, что давало ложные импульсы и очень сильно влияло на позицию каретки. При длительном пребывании каретки на уже запечатанной области бумага загоралась.
Проблему с помехами решили устранять так:
- Экранировали линии передачи данных от оптического датчика положения каретки к микроконтроллеру — в итоге это не дало желаемого результата.
- Заменили высоковольтный высокочастотный преобразователь на высоковольтный преобразователь напряжения с постоянным током. Идея была в том, что ВВ переменное напряжение создает наводки на длинных проводниках, а ВВ постоянное не будет. Но это тоже не сработало. Дело в том, что в момент печати создается разряд, который вносит также много помех и создает громкий звук пробоя воздуха.
- Поставили лазер, проблема была решена.
Второй прототип с использованием лазера
После установки лазерного элемента вместо ВВ преобразователя все помехи исчезли, но была еще одна проблема — скорость печати. Для окрашивания одной точки на белой бумаге нужно было
Была ещё одна проблема — позиционирование печатающей головки. Перемещение на ближайшие пиксели происходило рывками с пропуском нужной позиции, с последующим реверсом головки и повторным поиском нужной позиции. Решение было кардинальным — заменили коллекторный двигатель на шаговый двигатель. Также в последующем избавились от оптической линейки позиционирования каретки. Решение этой проблемы позволит вернуться к идее использования ВВ преобразователя в будущем.
Тестирование печати прототипа
Далее мы стали пробовать печать на бумаге разной плотности. Печать на обычной бумаге была отличной. Печать на картоне — линии находили друг на друга. Решили эту задачу программно, изменив скорость подачи бумаги на более плавную.
Важным свойством печати текста было то, что он не боялся влаги и механического воздействия. Еще одним преимуществом было то, что принтер замечательно не только печатал, но и нарезал полоски.
Первый выход в «люди» — выставка
Нас пригласили на выставку. Я очень сильно переживал о том, чтобы принтер на выставке мог работать самостоятельно без компьютера (ведь «закон Мерфи», будь он неладен, никто не отменял).
Для этого был добавлен модуль чтения SD карт памяти и переписан код. На Ruby был написанный конвертер из картинок в CSV файл. Решение оказалось очень удачным. Нужно теперь только подать напряжение и нажать кнопку печати: принтер печатает и режет стикеры, которые охотно разбирают люди прямо на выставке.
На фото: Виталий Билык на Международном Гранд Форуме Bit-2017, Киев
Новый вызов для принтера от украинского NASA
На выставке я познакомился с сотрудником из Государственного космического агентства Украины (аля NASA). Он спросил, может ли принтер печатать на прозрачной пленке.
Так мы взялись проверять печать на различных самоклеющихся прозрачных пленках. Проблема была в том, что пленка не чернеет и текст на поверхности устройства был мало читабельным. Подошли к этой проблеме с другой стороны (в прямом смысле :-) ). Попробовали печатать в зеркальном виде на подложке этой самой пленки. Карбонизированная подложка остается на пленке после снятия основной подложки — так получается контрастный текст.
Результаты и планы
Мы, как и хотели, получили качественную печать без тонера и чернил на бумаге разной плотности и пленке. Поэтому решили развивать проект дальше. Вдохновившись успешным проектом на Kickstarter Cubio, решили придумать минималистичный дизайн, хотя и получился принтер аля laser engraver. Это сподвигло думать дальше о следующем витке развития проекта. Но это уже совсем другая история. Продолжение следует!