Комментарии 34
Ну это, конечно, не луноход. И даже не вездеход. Советую автору присмотреться к роверу с открытым исходным кодом от NASA. https://github.com/nasa-jpl/open-source-rover
Спасибо, посмотрю. А «Луноход» — это название оригинальной игрушки, родом из СССР (можно вот здесь глянуть: ru.wikipedia.org/wiki/Big_Trak). На неё я и «смотрел», когда делал свою.
Мое мнение, луноход, и игрушка, и настоящий, отличает именно высокопроходимая ходовая часть, а именно 3 пары колес. Мне, конечно, не указывать что нужно делать, но я ожидал именно этого, заходя в статью с таким названием.
Да, в оригинальном Луноходе действительно было 3 пары колёс.
Но кажется, что только одна пара была ведущей.
ЗЫ: мысль про 6 колёс мне тоже в голову приходила, и прям сейчас я пилю версию 3.0. См. фото!

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

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


все колёса у ведущего Лунохода были ведущими мотор-колёсами, специальным пиропатроном можно было перебить связь колеса и мотора, что бы в случае проблем с мотором механически его отключить и колесо продолжало вращаться свободно. На одном из двух Луноходов — это пригодилось.
А я понимаю что двигало автором.
В детстве тоже видел эту игрушку в магазине и читал про нее в журнале Наука и Жизнь. И зацепили тогда не 6 колес, а возможность программировать движение лунохода. Это в те времена для школьника было почти на одном уровне реальности с полетом на луну.
В детстве тоже видел эту игрушку в магазине и читал про нее в журнале Наука и Жизнь. И зацепили тогда не 6 колес, а возможность программировать движение лунохода. Это в те времена для школьника было почти на одном уровне реальности с полетом на луну.
А программа советского лунохода где нибудь выставлена?
Там же наверное все было довольно примитивно
Чтоб можно было бы через байфай посылать такие же команды как и настоящему
Создать полный эмулятор — а не игушку?
Там же наверное все было довольно примитивно
Чтоб можно было бы через байфай посылать такие же команды как и настоящему
Создать полный эмулятор — а не игушку?
Привет. Я нигде не встречал прошивки от советского лунохода, увы.
Оригинальная игрушка была полностью автономной, никакого «дистанционного управления» (ты же в этом смысле вайфай упомянул?) у неё не было.
Чтоб можно было бы через байфай посылать такие же команды как и настоящему
Оригинальная игрушка была полностью автономной, никакого «дистанционного управления» (ты же в этом смысле вайфай упомянул?) у неё не было.
К сожалению, оказалось, что библиотека 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.
Ну, мои исходники всё-равно на github лежат, надеюсь этого достаточно для выполнения требований LGPL.
Просто не работают Ваши благие намерения дать максимальную свободу последователям:
Я сознательно поставил MIT-лицензию. В моём понимании прошивку с такой лицензией можно свободно использовать как угодно, без необходимости публиковать дальнейшие изменения (не хочу никого ни к чему принуждать).А вообще, Вы, наверное, один из первых пользователей Arduino, удосужившихся не только прочитать лицензии сторонних библиотек, но даже отказаться от части проделанной работы по лицензионным соображениям.
Завтра в Питере начинается очередной «Робофинист». Можно потырить кучу идей по части проходимости. Скажем там одна из задач — заставить робота забираться по лестнице
например что-то типа:
например что-то типа:
Круто получилось!
А что не так с лицензией GPL, если вы все равно исходники опубликовали?
Спасибо!
GPL «заразна»: если кто-то что-то взял из GPL кода, то он тут же должен и свой код опубликовать (если я правильно её понял).
Свой же код я опубликовал потому, что он может облегчить кому-то жизнь. Не нужно писать всё с нуля, можно взять готовые куски и построить что-то своё на их основе.
В принципе, эти два утверждения между собой не связаны ;)
GPL «заразна»: если кто-то что-то взял из GPL кода, то он тут же должен и свой код опубликовать (если я правильно её понял).
Свой же код я опубликовал потому, что он может облегчить кому-то жизнь. Не нужно писать всё с нуля, можно взять готовые куски и построить что-то своё на их основе.
В принципе, эти два утверждения между собой не связаны ;)
Если у вас в детстве не было реактивного ранца…
Все исходники лежат здесь:
github.com/TheJustMoose/JustCreeper
Нажми правую зелёную кнопку Clone or dowload, потом Download ZIP.
Внутри ахапка файлов с расширением ino.
В Arduino IDE надо открыть JustCreeper.ino.
github.com/TheJustMoose/JustCreeper
Нажми правую зелёную кнопку Clone or dowload, потом Download ZIP.
Внутри ахапка файлов с расширением ino.
В Arduino IDE надо открыть JustCreeper.ino.
Круто!
Но это игрушка не для детей, а для тех, у кого лунохода не было. :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как сделать самому Луноход