Аналог франкировальной машины

Lictor
Offline
Зарегистрирован: 01.10.2015

Доброго времени суток.

По работе необходимо проставлять печати на документах на отгрузку. Пачка большая, очень большая (до 100 листов на машину, а машин много, очень много...), но документы только двух форм, в зависимости от формы на нее ставятся печати всегда в одно и тоже место. Решил я это дело автоматизировать. Но как всегда дьявол кроется в деталях. 

Логику работы вижу так (ведущий - AtMega, ведомый - либо компьютер, либо Малинка):

1.В "ф. машину" вставляется пачка документов (ориентированных всегда одинаково, как они выходят из принтера при печати).

2.Нажимается кнопка "Старт", подается сигнал на Ардуино.

3. Щелевой датчик проверяет наличие бумаги, если бумага есть, то ардуино по I2C запрашивает у Малинки, что именно за документ готов к подаче.

4. Малинка с помощью камеры распознает документ и отвечает Ардуино (распознавание уже работает, сделал на каскаде Хаара):

4.1 Если документ распознан (найденный объект соответсвует возможному и находится в пределах допустимой зоны), то передает, что именно это за тип документа.

4.2 Если распознавание не прошло или найдены два и более разных объекта в допустимой зоне, то это передается на ардуино, ардуино зажигает светодиод на панели машины и ждет нажатия кнопки ручного выбора типа документа. После нажатия переходит на шаг 5.

5.Ардуино получает указание что это за документ и с помощью сервоприводов (либо просто моторов и датчиков положения) проставляет печать и убирает лист. 

6. Все повторяется  с шага 3.

7. Если бумага кончилась - встает в ожидание нажатия кнопки "Старт"

8. Плюс кнопка остановки работы машины (подключена по прерыванию).

Хотелось бы услышать мнения по жизнеспособности проекта и советы. Сейча думаю что делать с подачей бумаги, т.к. принтер при подаче может смещать нижелещий лист на пару сантиметров. А так же как организовать проставление печатей.

ЕвгенийП
ЕвгенийП аватар
Онлайн
Зарегистрирован: 25.05.2015

Вопрос можно? зачем Ардуино? Малина сама не справится?

Lictor
Offline
Зарегистрирован: 01.10.2015

Малина сама по себе справится со всем этим с запасом. Выбор ардуино как вспомогательной платформы обусловлен следующим:

1. На Ардуино уже есть готовые библиотеки на все и вся. На малине с этим сложнее.

2. Сомневаюсь, что смогу осуществить этот проект на С++, а в ардуино IDE без особых проблем (уже делал несколько больших проектов на ардуино)

3. В будущем планирую заменить малину на обычный рабочий компьютер, этот пункт основной. На текущий момент на Малинке удобней программировать. 

4. Ну и если что-то пойдет не так, то заменить контроллер много дешевле, чем компьютер.

Skif90
Offline
Зарегистрирован: 20.02.2014

Приветствую Хотел узнать, удалось ли реализовать систему? А то я столкнулся с той же проблемой(

Lictor
Offline
Зарегистрирован: 01.10.2015

Skif90 пишет:

Приветствую Хотел узнать, удалось ли реализовать систему? А то я столкнулся с той же проблемой(

 

Да, удалось. Малина с помощью библиотеки OpenCV распознает документы, передает сигнал на Ардуину, а дальше ардуина проставляет печать, проверяет все ли в порядке с подачей бумаги и т.п. и вновь подает запрос на малину для определения документа.

Skif90
Offline
Зарегистрирован: 20.02.2014

а Вы полностью собрали систему по нанесению печатей?

Lictor
Offline
Зарегистрирован: 01.10.2015

Skif90 пишет:

а Вы полностью собрали систему по нанесению печатей?

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

Skif90
Offline
Зарегистрирован: 20.02.2014

А не поделитесь схемой и внешним видом?

Lictor
Offline
Зарегистрирован: 01.10.2015

Skif90 пишет:

А не поделитесь схемой и внешним видом?

 

 Я бы вам и программу даже скинул, но я там уже не работаю...

Skif90
Offline
Зарегистрирован: 20.02.2014

Эхххх. Жаль.

А то очень нужно.

Skif90
Offline
Зарегистрирован: 20.02.2014

А повторить (за разумную плату) не выйдет?)

Lictor
Offline
Зарегистрирован: 01.10.2015

Skif90 пишет:

А повторить (за разумную плату) не выйдет?)

Нет, я на заказ не делаю