Как все началось
В марте 2013 года, благодаря содействию профессора нашей кафедры Владимира Андреевича Святного, мне, а также четырем однокурсникам, посчастливилось на месяц поехать в Университет Штутгарта в Германии. В первые дни нас распределили по институтам университета и познакомили с руководителями, которые должны были выдать нам задание на месяц и рассказать, что к чему.
Попал я в институт информатики и автоматики (IAS), где меня, а также двух однокурсников (Лютый Евгений, Кириллов Андрей) ждал сюрприз. Мы получили совместный проект, целью которого стало построение и программирование автоматизированного комплекса на основе роботизированного конструктора Lego Mindstorms. В наши обязанности также входило написание инструкции, как собрать такой комплекс. Таким образом, IAS хотел приглашать к себе учеников школ, интересующихся программированием и давать им в качестве проекта задание частично или полностью воссоздать разработанный нами комплекс, действуя согласно нашей инструкции.
Исследование
Не имея представления о том, как работает этот конструктор, мы начали с его изучения, параллельно думая, что мы можем такого создать. На первый взгляд перед нами было старый, добрый конструктор Lego, полюбившийся нам еще в детстве. Однако у него было одно существенное отличие, позволяющее перенести процесс создания на совершенно другой уровень - возможность оживить свое детище!
Сердцем Lego Mindstorms является программируемый управляющий блок, который является не чем иным, как схемой с микроконтроллером, позволяющим подключать к себе различные датчики, кнопки, движущиеся механизмы, вроде моторов и т.д. Программирование этого блока выполнялось на языке Javа, с помощью leJOS - небольшой виртуальной машины, которую необходимо было предварительно установить в управляющий блок. Прошивка блока выполняется через инфракрасный порт. Настроив все необходимое ПО и написав первую “Hello World” программу, мы перешли от технической части к этапу проектирования самого комплекса.
Реализация
После обсуждения и нескольких набросков на бумаге мы решили сделать автоматизированный комплекс, сортирующий детали, который будет включать в себя три элемента:
• Самоуправляемая машина для перевозки деталей.
• Система достаки деталей на сортировочный конвейер.
• Сортировочный конвейер.
Прежде чем детали попадут на сортировочный конвейер их нужно доставить со склада! Для этого мы построили самоуправляемую машину. А раз есть машина, то должна быть и дорога. В качестве дороги выступает цветная лента, а в роли штурмана датчики, которые следят за тем, чтобы машина ехала строго по ленте.
После того как детали привозятся со склада их нужно выгрузить на сортировочный конвейер. Этим занимается система доставки деталей. Она состоит из приемного механизма, который выгружает доставленные машиной детали и лифта, поднимающего выгруженные детали на конвейер.
Наконец детали доставлены и можно заняться их сортировкой. Детали сортируются по двум цветам: черному и желтому. Сортировочный конвейер анализирует цвет деталей и сбрасывает их в ту или иную коробку. На этом цикл сортировки завершается. Весь комплекс работает автономно и со стороны пользователя вмешательства не требуется.
Финал
Звучит довольно просто, тем не менее, чтобы построить это все и заставить работать, как единое целое нам пришлось потратить немало времени и нервов. Но оно того стоило, ведь каждый отчасти воплотил свою детскую мечту, закрыв этот досадный пробел.
Когда комплекс был построен, а все программы для его работы написаны, нам оставалось только написать инструкцию к нему. Этим последним штрихом и ознаменовался конец нашего пребывания и сотрудничества с университетом Штутгарта. Это было здорово!
Видео
Полезные ссылки
- Портал, посвященный LEGO RCX [Электронный ресурс].
Режим доступа: www.squidoo.com/collected-info-on-the-lego-rcx - Информационный ресурс по LEJOS [Электронный ресурс]
Режим доступа: lejos.sourceforge.net