В рамках серии статей «Изготовление аналога марсохода ПрОП-М».
Самое важное перед началом любого действия - немного подумать. Как раз для этого нужно проектирование! Здесь я кратко приведу описание этого очень полезного процесса.
Итак, конечной целью всех моих будущих действий в рамках проекта создания аналога марсохода ПрОП-М будет являться создание достаточно простого робота, передвигающегося лыжно-шагающим методом, и умеющим объезжать препятствия по схеме - отъезд назад, поворот на 45 градусов, движение вперед. Этот робот будет максимально похож на свой прототип - первый марсоход в мире, ПрОП-М (Прибор оценки проходимости - Марс). Подробно сам марсоход ПрОП-М я уже описывал.
Отличия создаваемого робота от оригинала следующие:
- Наш робот не будет нести на себе никакой научной аппаратуры.
- Надежность сборки и качество материалов робота отличается от оригинала, т.к. робот будет изготовлен в домашних условиях.
Прежде всего, рассмотрим, кто и что будет взаимодействовать с роботом, и как это взаимодействие будет происходить. Для описания функций системы используется стандартная диаграмма UML (так называемых прецедентов, или use cases):
Отсюда понятны основные функции и возможности робота:
- Движение по командам оператора: Стоп, Назад, Вправо, Влево, Вперед
- Ведение лога состояний, и передача оператору списка своих состояний, начиная с заданного шага
- Обратите внимание! Возможность замены прошивки робота. Важный пункт, реализуемый почти на всех космических аппаратах и планетоходах
- В процессе движения - объезд препятствий, определенных с помощью тактильного бампера
- Включение/выключение с помощью проводного пульта дистанционного управления
- Подача питания по проводу
Исходя из функций и возможностей, определяем, что потребуется для физической сборки робота:
- Корпус, лыжи, крепления лыж.
- Два мотора с понижающими редукторами, способные поднять вес робота.
- Передний бампер с двумя датчиками касания.
- Устройство размотки провода и 15 метров провода.
- Устройство управления, реализующее алгоритм объезда препятствий, и возможность дистанционного управления.
- Пульт дистанционного управления по проводу.
- Блок питания, обеспечивающий подачу нужного напряжения для питания робота по проводу.
Как видно, система разделилась на две основных части - сам робот, и проводная система управления для него.
В свою очередь, робот состоит из аппаратной и программной частей.
Что касается программной части, то поведение нашего робота можно описать простеньким конечным автоматом (о конечных автоматах я писал, например, в статье «Робот и искусственный интеллект»). Для описания конечных автоматов существует специальная диаграмма UML - диаграмма состояний. Я создал такую диаграмму для нашего робота:
В процессе проектирования также обычно рисуют еще две важных UML-диаграммы - диаграмму классов (для описания программной части) и диаграмму развертывания (для описания развертывания робота на конкретных физических деталях). Я намерен в дальнейшем вести параллельно две серии сообщений - по созданию программной части, и по созданию «железа», в которых уже приведу эти диаграммы. Кстати, любые диаграммы, созданные в процессе проектирования - всегда многократно уточняются при реализации проекта.
Комментариев нет:
Отправить комментарий
Внимание! Реклама и прочий спам будут беспощадно удаляться.