Как изготовить лодку способную на плаву преодолеть лабиринт, не касаясь стенок?

Конечно, просить сделать лодку я не буду, но мне нужно понять с чего начать и разработать план. Список материалов, которые я могу взять на картинке. Такая лодка должна преодолеть лабиринт с поворотами. В процессе прохождения трассы лодка не должна касаться бортиков и «берегов островов». Собственно никакой больше информации про это задание нет, кроме того, что на его выполнения остаётся ещё довольно много времени. Увы, я пока совсем не понимаю, как это сделать, но это нужно в первом семестре, иначе отчислят. Я не инженер, я учусь совсем на другой специальности, но задание для всех дают похожие, даже если они не относятся к тому, что мы изучаем в вузе. Говорят, что это для общего развития. Может быть здесь кто-нибудь сможет подсказать, с чего мне начать. 5dcb321645991777549426.png5dcb321c2cd22987332094.png
  • Вопрос задан
  • 894 просмотра
Решения вопроса 3
hint000
@hint000
у админа три руки
Просто несколько мыслей.
1. Нет требований к форме лодки, так что она может быть сферической или кубической. При такой форме лодка будет быстро останавливаться после выключения мотора, а значит управлять будет проще.
2. Совместить киль с рулём направления (поворачиваться может весь киль). Для настоящей лодки это неудобно, а для модели нормально. Такая схема позволит уменьшить радиус поворота.
3. Рассмотреть вариант аэровинта в качестве двигателя. Чуть было не назвал это аэроглиссером, но глиссер - это скоростное судно с малой осадкой, так что термин был бы неправильный. И это несовместимо с пунктом 1, т.к. при сферической форме и воздушном винте будет нечто крайне неустойчивое. В этом случае подойдёт традиционная форма лодки.
4. (Если бы у меня было такое задание, то я бы остановился на этом варианте). В качестве движителя - два гребных колеса - с правого и левого борта, каждое на отдельном моторе. Руль вообще не требуется, возможен разворот на месте при движении колёс в противоположные стороны. Схема с самым простым управлением - по сути, это водный аналог гусеничного трактора или танка.
И небольшая экскурсия в 1986 год:
1
p0002.jpg
2
p0003.jpg
Ответ написан
balvardo
@balvardo
А меня одного смутил датчик линии, который дается в комплекте?

//Если человек до этого не прогал хотя бы лабы в инсте и никогда ничего не делал руками, это конечно огненная задача...

По сути вопроса.

1. Форма лодки – прямоугольное корытце. Передний борт — форшпигель (носовой транец), т.е. никакого острого форштевня. Во первых такая форма клеится из фанеры за 10 минут даже очень кривыми руками, во вторых в рамках задачи самый оптимальный вариант по управляемости. Технология сборки корпуса — по три проволочные скрутки на стык, залить термоклеем изнутри обильно. Все равно конструкция одноразовая.

2. Вышепредложенный вариант с гребными колесами очень толковый. При такой форме и движетелях после остановки двигателя инерции практически не будет.

3. Если времени с запасом — делаем все максимально мееееедленно. =)

Начать со склейки корпуса и собирания на макетке по 100500 инструкций и гайдов ардуины + моторшилд + два мотора. Скопипасщеным скетчем крутить моторчики, много думать.

Удачи =)
Ответ написан
@HLudens
как уже писали выше- лодка квадратная или цилиндрическая, с колесами по бокам (у вас в наборе как раз есть пара мотор редукторов)
Севропривод по центру и ультразвуковой датчик на него- получаем радар.
ориентируясь на его показания можно заставить лодку не касаться стенок.
алгоритм движения придется забивать в код, тупо как набор команд "на север до стенки, поворот, на запад до стенки и т.д." поскольку на той схеме что у вас есть "правая рука" не подходит, вы перекресток по прямой должны пройти.
т.е. по ходу движения крутим севрой, если берег слишком близко даем команду на временное ускорение соответсвующего колеса (плыть будем слегка зигзагом но ничего).
периодически контролируем наличие препятствия впереди и если оно появилось на нужном расстоянии делаем поворот туда куда указано в "списке команд" и вновь вперед.

Разумеется как кораблик будет готов, проверить в ванной, сколько секунд работы движков требуется корытцу чтобы развернутся на 90 градусов, сколько чтоб разогнаться, сколько чтоб затормозить, сколько чтоб затормозить при обратном вращении колес. На основе этих данных закладывать параметры в код.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 5
sotvm
@sotvm
Умный поймёт, а дураку и так всё равно.
1) создать алгоритм ,по которому будет двигаться ваш "Титаник".
2) используя п. 1 , написать программу для микроконтроллера .
3) остальное - "дело прямых рук и напильника" )))
Ответ написан
NeiroNx
@NeiroNx
Программист
Чтобы не касаться - нужно будет долго калибровать лодку, ну и от точности датчиков тоже зависит. Калибровка включает в себя - зависимость пройденного пути в зависимсти от различных условий - восновном от времени воздействия движущей силы и инерционности.
Ответ написан
Комментировать
zoonman
@zoonman
⋆⋆⋆⋆⋆
2-х датчиков расстояния недостаточно. Нужно 4 для корректной навигации внутри лабиринта. Располагаются под углом 45 градусов относительно осевой линии лодки.
Дальше вам нужно будет освоить PID регулятор и реализовать алгоритм прохождения лабиринта.
Ответ написан
@AlexSku
не буду отвечать из-за модератора
Пройдите (я проходил бесплатно) курс МФТИ, там будут примеры движения по линии.
Ответ написан
Комментировать
Вопрос сложный, но решаемый.
Вообще, главное прохождение любого лаберинта, это в первую очередь запоминать предыдущие шаги, а второе правило "держаться рукой за правую стенку". Это всё я к тому что устройство в будущем могло бы проходить лабиринты любого типа.
Для ознакомления по прохождению лабиринтов
вот еще информации
Остается только адаптировать это для лодки
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы