Doublebrick - Российское сообщество энтузиастов конструкторов LEGO!
DoubleBrick в Facebook DoubleBrick в Twitter DoubleBrick в ВКонтакте RSS каналы DoubleBrick
Следи за новостями!

Проект Ural

Moc | 07.02.2012 | 18:50 | Автор: Vidocq

В виду наличия у NXT радиосвязи BT с самого начала приобретения NXT был заинтересован так или иначе реализовать дистанционное управление моделями. Так у меня начался практический целый проект по созданию такого управления. Первой моей поделкой была гусеничная штучка, управляемая с помощью сотового телефона. Увидев тормознутость такого управления, я решил переключиться на колёсный транспорт.

Основная цель была такова: с применением стандартных и доступных средств лего, без привлечения сложного программирования, сделать дистанционное управление на базе NXT, достаточно удобное для управления колёсными видами транспорта (машина, грузовик) с рулевыми колёсами.

На данный момент было сделано три модели. Все модели были показаны на встречах в Екатеринбурге. Участники могли опробовать их. Ниже будет рассказано о всех трёх по-порядку.

Ural 1.0

При построении первой модели у меня была одна единственная цель: сделать хоть что-то с четырьмя колёсами, два из которых рулевые, и опробовать некоторые программные задумки. Чтобы это была не просто тележка, я решил делать свои модели похожими на грузовик, в среднем масштабе, примерно в рамках проекта Technic Rally. Случайно вышло, что я их стал называть Ural, файлы программ для моделей тоже были Ural. Чтобы не путаться, так назывались все последующие модели и так будет называть текущий, так сказать, проект.

Фотографий первой модели у меня сейчас нет. Что она из себя представляла:

  • Привод на задние колёса. Самый самый прямой. Выходные валы двух моторов вынесены вниз (моторы располагались вертикально) и на каждый мотор по колёсу. То есть вся масса грузовика ложилась на моторы, что не есть хорошо, но для пробных покатушек по ровной поверхности этого достаточно.
  • Очень красивое получилось рулевое. С эффектом аккермана и осями поворота колёс внутри колёс.
  • Разумеется, никакой подвески и амортизации. Всё было жёстким. И этого было достаточно для покатушек по ровной поверхности пола.

Кратко опишу особенности стандартной программы для сотового NXT Mobile Application, которую я скачал с официального сайта. Нажатие кнопки на сотовом отправляет одну определённую команду. На отжатие кнопки программа никак не реагирует. Таким образом, чтобы, например, заставить двигатель вращаться, нужно нажать одну кнопку, а чтобы заставить двигатель остановиться, нужно нажать другую кнопку. На всё это выделяются кнопки от 1 до 9. Нолик посылает команду остановки программы на NXT.
Из-за этого приходилось придумывать извращённые механизмы управления.

Какова была программа


  • Во-первых, рулевое. Для рулевого было выделено три кнопки. Одна кнопка заставляет руль плавно поворачиваться в одну сторону до некоторого предела, записанного в программе (чтобы мотор не ломал детали, не вырывал рулевое). Другая кнопка - соответствующим образом - в другую сторону. Третья кнопка, средняя, возвращает руль в ноль, из любого положения, тоже плавно.
  • Во-вторых, привод. На привод выделено четыре кнопки. Для удобства было сделано две скорости: максимальная (100) и в два раза меньшая (50). Ещё одна кнопка - стоп. И последняя - ход назад.
  • В-третьих, была включена обратная связь, на всех моторах. Кто не знаком с NXT, поясню. Скорость/мощность мотора задаётся условным целым числом от 0 до 100. Включение обратной связи означает, что NXT будет отслеживать реальную скорость вращения мотора (как известно, под нагрузкой любой электромотор замедляется) и делать всё возможное, чтобы поддерживать скорость мотора на заданном в программе уровне. Например, указал я мотору скорость 63, и как бы я его ни тормозил, как бы я его ни ускорял, NXT сделает всё, на что он способен, чтобы мотор вращался со скоростью 63. Почему так сделано на рулевом моторе, понятно: нужно точно отслеживать градусы и чтобы никакая внешняя сила не сбила ноль. На приводные колёса обратную связь включил, чтобы сохранять заданную скорость 50 или 100 и нкакие внешние силы не изменяли их.
  • В-четвёртых, применил интересное программное решение. В зависимости от угла поворота колёс приводные колёса вращаются с разной скоростью. Это имитация работы дифференциала. То есть реализована та функция, для чего создавался и применяется дифференциал, но при этом полностью отсутствуют все его недостатки: никаких пробуксовок одного колеса на скользкой поверхности. И никаких пробуксовок во время поворота в случае с жёстко связанными колёсами.

Блок NXT располагался вертикально, прямо за импровизированной кабиной грузовика, и поэтому немного торчал вниз.

Грузовик получился крепкий и смешной (из-за непропорционально маленьких колёс). За счёт отсутствия передач и двух приводных моторов (по одному на каждое заднее колесо) он получился мощным и спокойно двигал стулья. До тех пор, пока колёса не покрылись слоем грязи и пыли, от чего они стали буксовать.

Выводы из первой версии


  1. Управление с сотового возможно. И к нему можно привыкнуть.
  2. Управление с сотового очень неудобно и тормознуто. Оно не подходит для управления быстрых моделей по типу Technic Rally. Но для моделей Truck Trial его должно быть достаточно.
  3. С помощью NXT можно применять интересные программные решения, и их мучительно, но не трудно, реализовывать даже с помощью стандартного средства создания программ NXT-G. Не только заставлять модель ездить с разной скоростью (меньшие скорости для удобства маневрирования), но и делать рулевое с возвратом и даже имитировать работу дифференциала (избавляясь от всех его недостатков, которые часто заставляют отказываться от его применения).

Ural 2.0

При построении следующей модели были поставлены такие цели:

  1. Постараться улучшить управление с сотового. Может оно всё-таки способно на что-то? Я ещё не терял надежду.
  2. Постараться расположить блок NXT как можно ниже. Высокий центр тяжести у первой версии мне не нравился.
  3. Реализовать хоть какую-то подвеску и проверить езду по лёгкому бездорожью.
  4. Сделать хотя бы одну повышающую передачу. Первая версия была медленная, а запас мощности был огромный. Повышенная передача добавила бы динамики, а мощности и так хватит.

От этого грузовика осталось несколько фотографий.



Блок NXT удалось расположить низко, под ним проходит только один слой бимов. Но из-за этого грузовик получился очень длинным. Слишком длинным. Радиус поворота был ужасен.

Сначала я хотел сделать передний мост с расположенным на нём рулевым мотором. Помучился я с ним... И решил тупо взять переднюю независимую подвеску от багги 8048. Сначала она мне казалась очень слабой и хрупкой. Но потом понял, что для такой модели её будет достаточно. Из-за большой массы блока NXT пришлось ставить по два амортизатора на колесо. Очень удачным получилось крепление передней подвески к основной раме. Она перекочевала в третью версию, и об этом позже.

С задней подвеской сначала тоже было трудно и мучительно. Но потом я вспомнил подвеску татры и решил её попробовать.


Получилась очень простая и крепкая татроподобная подвеска, независимая. Для симметрии нагрузок на моторы я сделал по два колеса на мотор, и грузовик стал шестиколёсным. Повышающая угловая передача 20:12. Есть один минус: при больших нагрузках шестерёнки прощёлкивают.

Программа


  • Рулевое по принципу работы было точно таким же.
  • Благодаря тому, что у правых и левых приводных колёс были свои моторы, удалось снова сделать псевдодифференциал.

Ещё в гусеницах я решил, что телефон будет удобнее держать вверх ногами. Тогда кнопки располагаются вверху. А на экран смотреть всё равно не нужно.


Так как скорость грузовика стала больше (из-за повышающей передачи), понадобилось сделать больше скоростей. На этот раз их стало три (левая группа из трёх кнопок): насколько я помню, это 20, 60, 100. Нижняя средняя - стоп (тормоз). Нижняя правая - ход назад.
Рулевое было на четырёх верхних кнопках (синяя группа). Две верхних кнопки поворачивали руль вправо или влево. А две нижние выполняли одну функцию: возврат руля в ноль. Это, так сказать, свобода для пальцев.

Выводы из второй версии


  1. Окончательно убедился в несостоятельности сотового управления для быстрых моделей. Оно слишком тупое и медленное.
  2. Татроподвеска оказалась очень хорошей. Но у меня личная неприязнь к прощёлкиваниям шестерёнок. Я уверен, что от него можно избавиться полностью, если применить другую передачу и лучше закрепить шестерёнки.
  3. Для езды по лёгким неровностям нет никакого смысла в таком низком расположении блока NXT. Центр тяжести ниже, но смысл? А грузовик получается слишком длинный и неповоротливый.

Ural 3.0

Сотовое управление оказалось не интересным. Нужно переходить на что-то более суровое.
И тут как раз у меня появилась возможность сделать пульт ДУ из другого NXT. Это то, что я хотел сделать ещё даже до покупки своего NXT. Второй блок NXT с необходимым обвесом был предоставлен мне на время пользователем Astral Support.

Сформировались следующие цели:

  1. Самое важное. Сделать дистанционное управление, аналогичное профессиональным радиоуправляемым моделям. А именно: пропорциональный "газ" (рычажок, чем дальше давишь, тем больше мощность или скорость) и истинный руль (поворот рулевого в модели полностью повторяет поворот руля на пульте).
  2. Опять же, сделать подвеску, прочную, надёжную, без прощёлкиваний шестерёнок и такую, чтобы на правое и левое приводные колёса был свой мотор.

Третья версия получилась ещё смешнее, ещё более непропорциональная.


Вид снизу
Вид снизу

Как уже было сказано, передняя подвеска осталась прежней, от багги 8048. Переход от подвески к раме сделан с помощью ломанных бимов 4х4. В багги эти бимы выполняли только роль крепежа для амортизаторов. Я их продолжил и использовал их, как крепёж к раме. Получилось очень крепко и надёжно.


Вид на переднюю подвеску спереди. Защитный щиток снят. Примечание: тёмно-серый брик остался после транспортировки грузовика в коробке, забыл снять.

Рулевой мотор располагается вертикально, между этими бимами. Он связан с рулевым через понижающую передачу 12:36.


Вид на переднюю подвеску сзади. Примечание: тёмно-серый брик остался после транспортировки грузовика в коробке, забыл снять.

Задняя подвеска получилась очень очень простой: два мотора на каждое колесо с использованием повышающей передачи 20:12, нагромождение деталей (для снижения нагрузки на моторы и их защиты), один биониклошарнир и одна тяга панара. Всё элементарно. Ломаться нечему. Никаких прощёлкиваний.



Ну а теперь самое важное. То, ради чего я всем этим занимался.

Программа


  • Для "водителя" всё просто: руль вращает колёса так, как если бы водитель сидел в машине, мощность моторов управляется рычажком, как педалью газа.
  • В программе заложены пределы поворота руля. Сколько бы ни крутили руль на пульте, вы не сможете перекрутить рулевое, рулевой мотор на модели будет крутиться только в определённых пределах. При вращении руля в обратную сторону рулевое сразу на это реагирует, вращается в обратную сторону. То есть у руля на пульте нет нуля, это просто колесо, вращающееся во все стороны без ограничений.
  • Обратная связь у приводных моторов выключена. Во-первых, я решил, что управление будет интереснее, если оно будет аналогично педали газа, чем если бы мы рычажком строго задавали скорость вращения моторов. Например, в случае езды через препятствие мы можем удерживать мощность моторов на грани пробуксовки. Мне такой элемент видится интересным, это требует некоторого профессионализма. Во-вторых, это избавляет от необходимости программно делать имитацию дифференциала: он и так замечательно имитируется, так как правый и левый моторы-колёса жёстко не связаны, а скорость вращения колёс может меняться в зависимости от нагрузки (обратная связь ведь выключена), при чём так, что чем больше реальная скорость вращения отклоняется от заданной (согласно рычагу на пульте) под действием некоторой силы, тем больше будет сопротивление этому воздействию. Даже если буксует одно колесо, на другом колесе это никак не сказывается, на него подаётся заданный крутящий момент.

После постройки грузовика я внезапно заметил, что у меня почти не осталось деталей. Пришлось даже взять один брик из старых деталей. Так что пульт вышел неуклюжим, некрасивым, в меру удобным. Роль датчиков поворота (руль и рычаг) выполняют моторы. Пульт держится в правой руке. Руль под левую руку. Большой палец правой руки двигает рычаг "газа" или жмёт nxt-кнопку для переключения "передачи": вперёд-назад.



Выводы из третьей версии


Главная цель достигнута. Программно сделать пульт из NXT очень просто. Управление получается очень удобным и приятным. Система PF отдыхает. Минус только один: нужен второй NXT, что очень затратно. Не все могут себе позволить такое удовольствие. Но можно скооперироваться с кем-нибудь, как сделал я.
Бросьте вы этот PF. Попробуйте дубльNXT!

PS


Существует видео, на котором должны быть хорошо видны возможности модели с таким управлением. Но его у меня пока нет. Его снимал Astral Support, оно всё у него. Так что я его усиленно пинаю, чтобы он передал мне видео. Ждём.

Видео получено

Сначала покатушки в помещении.

Потом я не удержался и вышел на улицу. Даже по относительно ровной поверхности задние колёса буксуют. А на неровностях вообще какой-то триал начинается.

Дальше съёмка прекратилась, но я в итоге выехал из всех этих неровностей. Как раз в этот момент я обнаружил, что очень просто делать раскачку: выставляем газ на некотором уровне и, нажимая кнопку переключения "вперёд-назад", раскачиваемся. Это позволяет выбираться из многих проблемных ситуаций, когда машина, буксуя, не выезжает ни вперёд, ни назад.

В следующей модели планируется сделать задние колёса побольше (с ними и скорость будет больше, и на снегу сцепление получше), модель полегче, форма корпуса тоже будет другая (пока что у меня только пара бОльших колёс, такое больше подходит для формата багги).

Поделиться |
Голосование
?
Идея
(14)
0.0
Качество
(14)
Фото
(14)
Текст
(14)
Голосовать могут только зарегистрированные пользователи.


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

О модели

Автор: Vidocq
Работы автора: избранные, все



Категории творчества:
Относится к сериям:
Авторские категории:

Категории

Все модели
По сериям