Как стать автором
Обновить

Комментарии 34

НЛО прилетело и опубликовало эту надпись здесь
Тысячи их. На любой вкус. Можно в сторону stm8/stm32 посмотреть.

Ну это, конечно, не луноход. И даже не вездеход. Советую автору присмотреться к роверу с открытым исходным кодом от NASA. https://github.com/nasa-jpl/open-source-rover

Спасибо, посмотрю. А «Луноход» — это название оригинальной игрушки, родом из СССР (можно вот здесь глянуть: ru.wikipedia.org/wiki/Big_Trak). На неё я и «смотрел», когда делал свою.

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

Да, в оригинальном Луноходе действительно было 3 пары колёс.
Но кажется, что только одна пара была ведущей.

ЗЫ: мысль про 6 колёс мне тоже в голову приходила, и прям сейчас я пилю версию 3.0. См. фото!
image

Знакомые моторы. У них большой рассинхрон, поэтому не забудьте энкодеры, хотя бы по штуке на каждую сторону. Я уже наступал на эти грабли, когда игрушку все время тянет в сторону.

Знаю, долго возился с задачей «а как бы заставить это ехать ровно». В итоге взял моторчики с двумя валами, поставил энкодеры прям на них и написал код ПИД-регулятора, который стабилизирует скорость. Помогло, но лишь отчасти. Оказалось, что при старте колёса «срываются в букс» и игрушку сносит в произвольную сторону ;) Поэтому код ПИД-регулятора так и не вошёл в конечную прошивку (и тоже остался на версию 3.0). Зато я нашёл другую резину, которая сильно мягче. Экспериментирую. Фоточка с энкодерами:
image

Чтобы не было букса попробуйте использовать задатчик интенсивности. Т.е. плавно повышать задание, на входе ПИД регулятора, до номинала. Точнее, не на входе самого ПИД, а перед его сумматором ошибки.

все колёса у ведущего Лунохода были ведущими мотор-колёсами, специальным пиропатроном можно было перебить связь колеса и мотора, что бы в случае проблем с мотором механически его отключить и колесо продолжало вращаться свободно. На одном из двух Луноходов — это пригодилось.
А я понимаю что двигало автором.
В детстве тоже видел эту игрушку в магазине и читал про нее в журнале Наука и Жизнь. И зацепили тогда не 6 колес, а возможность программировать движение лунохода. Это в те времена для школьника было почти на одном уровне реальности с полетом на луну.
Я ещё и в журнале Радио читал, про какой-то аналог а-ля 145ИК19xx :)
Спасибо, что напомнили, пойду погуглю!
А программа советского лунохода где нибудь выставлена?
Там же наверное все было довольно примитивно
Чтоб можно было бы через байфай посылать такие же команды как и настоящему
Создать полный эмулятор — а не игушку?
Привет. Я нигде не встречал прошивки от советского лунохода, увы.
Чтоб можно было бы через байфай посылать такие же команды как и настоящему

Оригинальная игрушка была полностью автономной, никакого «дистанционного управления» (ты же в этом смысле вайфай упомянул?) у неё не было.
Имел ввиду посылать и принимать «типа» тех радиосигналов управления, которыми управлялись советские луноходы, но через wifi
Создать полный мини аналог настоящих луноходов
Какие у них в тех 70х были характеристики? наверное все примитивное и вполне повторимое

К сожалению, оказалось, что библиотека I2C LCD имеет лицензию GPL, и код отправился в корзину.
А почему Вас тогда не смутила LGPL лицензия библиотек самого Arduino:
/*
  Arduino.h - Main include file for the Arduino SDK
  Copyright (c) 2005-2013 Arduino Team.  All right reserved.

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
*/
Если я правильно понял, LGPL устанавливает гораздо меньше ограничений, чем GPL.
Впрочем, я не юрист, могу ошибаться.
Да, ограничения LGPL существенно мягче, но в данном случае, так как используется статическая линковка, Вы и те, кто на основе Вашей прошивки будет создавать гипотетические производные работы, все равно должны публиковать свои исходники для выполнения условия: «должна быть возможность линковки программного обеспечения с новой версией продукта, лицензируемого под LGPL». А если так, то принципиального отличия от GPL в данном случае нету, так как нет возможности закрыть свой исходный код.
Как всё сложно.
Ну, мои исходники всё-равно на github лежат, надеюсь этого достаточно для выполнения требований LGPL.
Просто не работают Ваши благие намерения дать максимальную свободу последователям:
Я сознательно поставил MIT-лицензию. В моём понимании прошивку с такой лицензией можно свободно использовать как угодно, без необходимости публиковать дальнейшие изменения (не хочу никого ни к чему принуждать).
А вообще, Вы, наверное, один из первых пользователей Arduino, удосужившихся не только прочитать лицензии сторонних библиотек, но даже отказаться от части проделанной работы по лицензионным соображениям.
Завтра в Питере начинается очередной «Робофинист». Можно потырить кучу идей по части проходимости. Скажем там одна из задач — заставить робота забираться по лестнице

например что-то типа:
Спасибо, посмотрю :)

Круто получилось!
А что не так с лицензией GPL, если вы все равно исходники опубликовали?

Спасибо!

GPL «заразна»: если кто-то что-то взял из GPL кода, то он тут же должен и свой код опубликовать (если я правильно её понял).

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

В принципе, эти два утверждения между собой не связаны ;)
Вы обязаны предоставить код своим клиентам по их требованию. Если вы свой продукт не распространяете, или вашим клиентам и так норм — никакой код вы не обязаны публиковать.
благое дело делаете ) прикольно почитать было такие мысли, сам не смог бы наверное додуматься )
Спасибо, что читаете!
Если у вас в детстве не было реактивного ранца…
Меня жена из дома выгонит!
image
Я скоро сделаю, прилечу :)))
Не могли бы вы скетч указать?)Сам делаю нечто подобное только на гусеницах
w-YCRmZJhMU.jpg
Все исходники лежат здесь:
github.com/TheJustMoose/JustCreeper

Нажми правую зелёную кнопку Clone or dowload, потом Download ZIP.
Внутри ахапка файлов с расширением ino.
В Arduino IDE надо открыть JustCreeper.ino.

Круто!
Но это игрушка не для детей, а для тех, у кого лунохода не было. :)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий