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

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

Ну вы даёте. Программную часть рассказать двумя ссылками, да ещё и на английском языке. Ребёнок в моей душе негодует. Можно было весь пост дать ссылкой, раз уж так.

Алгоритм программы на русском языке есть в статье в секции «Алгоритм» прямо перед ссылкой на неё. С GitHub'а можно взять уже готовый код.
В статье больше упор на само устройство робота. Материал для дошкольников и им сложно с программой, поэтому я обычно рассказываю общий алгоритм программы, а не прохожу по всему коду подробно.

Сам код простой. Если есть такая необходимость пройтись по каждой строчке когда, то это уже на отдельную статью тянет. Но, конечно, могу и это сделать если будет многим интересно.
Александр, расскажите подробнее, пожалуйста, об организационной части. Я веду кружок по Lego-робототехнике, но в планах хочу перейти к электронике. Пока возникает много вопросов, поскольку ни материалов, ни оборудования нет вообще, а учреждение образования — государственное.
  • Кто покупал детали к вашим роботам?
  • Где взяли инструменты для сборки?
  • Предполагаю, что это был мастер-класс, а ведёте ли вы кружки по электронике?

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

Думаю, преподавателю кружка важнее узнать организационный момент (он именно это и написал в своём комментарии), чтобы не тратить собственные деньги из собственного кармана на детали и инструменты (паяльники, кусачки и проч.).

Да, несомненно. Но если цены от официальных робоконструкторов лего заменить ценами с али — и организационная часть может стать сильно проще. Поскольку своим детям много чего подбираю из запчастей, решил поделиться информацией (хотя у нас фишертехник, о котором китайцы не в курсе вообще, но можно проявить смекалку).

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

* Инструменты: у детей были обычные крестовые отвёртки, которых у меня в наличие большое количество, но если и покупать, то доступность обычно проблем не составляет. Часто в наборах уже есть какие-то простые отвёртки, но я предпочитаю свои в силу удобства использования.
Паяльники мои, детям не даю. Исключение было только когда я давал паять провода на моторы более старшим детям (14+), которые помогали с классом. Но после пайки проводов паяльник в классе не нужен.

* То был летний кружок. Я провёл несколько занятий. Они все были оффлайн если вопрос про это.

Спасибо за статью, но


Итак, предлагаю собрать несложного, но почти живого робота, который будет приятно жужжать, сам решать свои движения

Так как же собрать такого робота? Взять готовый контроллер и установить на готовое шасси? Видимо, ваше «собрать» очень уж отличается от «сделать». Можно хотя бы в виде скрэтч детям дать программу менять — последовательность действий, интервалы задержек и прочее, это и доступно и позволяет понять алгоритм.


Кстати, а два сенсора зачем? Если уж вы сами программу пишите, неужели сложно с одним сенсором сделать? Классика же — при потере линии робот останавливается и предпринимает набор простых действий, чтобы ее снова найти. Имхо, так намного интереснее и более похоже на биологические системы — скажем, на поиск дороги муравьем. Два сенсора приводят к снова классической дилемме — кому верить (тут можно вспомнить про боинг, конечно, но вы этого не делаете).


За ленту отдельное спасибо, не знал про такую, надо будет поискать, а то по листу с линией ездить не так интересно.


P.S. Ленту уже нашел — у вас на картинке подписи на этикетке иероглифами, значит, смотреть на али, единственное, что я разобрал, это «32mmx15m» — по этой строке и нашел. Можно было бы в статье ссылки дать, без лишних квестов:)

Видимо, ваше «собрать» очень уж отличается от «сделать».

Возможно и так. По мне это и называется «сборка». Собирается из готовых компонентов как Lego или похожие конструкторы.
До какого-то уровня надо абстрагироваться особенно когда класс с детьми, для которых много чего и так уже очень новое.

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

У меня был упор на устройство робота, а не его программирование. Тут более важна была мелкая моторика и тактильность ощущений при сборке если можно так сказать. Класс идёт примерно час и туда программирование просто не влезет.
Для детей 5-6 лет Scratch пока сложновато будет что бы его уложить в это время с пользой.

Кстати, а два сенсора зачем? Если уж вы сами программу пишите, неужели сложно с одним сенсором сделать?

Есть разные алгоритмы на разное количество сенсоров. Я изначально делал на три сенсора, но потом упростил до двух ради чуть более простой сборки.
Мне не нравится «неадекватная» активность при взгляде со стороны при алгоритме на одном сенсоре.
Кстати, муравей при отклонении не так ищет. У него как раз есть боковые сенсоры, которые смотрят на края дороги и замечают отклонения. То есть, если дороги нет вообще, то робот просто будет ехать вперёд.
Тут оба сенсора не для избыточности, а у каждого своя роль.

Ага, ленту покупал на Ali. Тут обычно с ссылками не очень, мало ли чего. На GitHub'е к проекту есть как раз ссылки на все компоненты с вариантами.

Спасибо за пояснения, было бы интересно это в статье подробнее почитать — что как рассказываете детям и что как получается в итоге. Дома со временем намного проще, так что можно и на технические детали акцент сделать — обсудить код или научить, как трубки латунные отрезать нужной длины, как резьбу на них нарезать и так далее (для пневматики или чтобы прикрутить их на вал сервопривода). Очень бы хотелось такого типа онлайн занятия или методические материалы найти, но пока ничего подобного не видел… если у вас что-то такое есть, уверен, это не только мне будет интересно.

Это очень сильно зависит от многих факторов — количество учеников, возраст, начальные знания, подготовка и т.п.
Бывает так, что в классе кто-то уже что-то знает, а кому-то надо давать самые базовые знания. Если класс уже устоявшийся, то тогда проще будет.
У меня были классы с новыми детьми и поэтому я пытался найти то, что другие практически не знают и тогда всем было одинаково интересно.

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

1. Теория и brain storming. Есть задача «робот идёт по чёрной полоске на полу». Как это реализовать и какие есть идеи на эту тему.
Всё на очень высоком уровне без мелких деталей, что бы не углубляться по мелочам.
Тут можно рассказать немного про сенсоры, что бы было за что зацепиться.
Но в целом надо дойти до варианта типа «робот сенсорами смотрит на пол и пытается определить тёмный/светлый и по этим данным решить как ехать — вперёд или поворачивать».

2. Сделать чертёж. Просто какие компоненты нужны и их расположение. Тут можно более подробно рассказать про разные узлы и их цели — сенсоры, микроконтроллер, моторы и т.п. На этом этапе можно сделать блок-схему кто с чем соединён.

3. Схема соединений. Это уже электрическая схема с проводами, питанием, сигналами и прочим. Можно начать собирать.

4. Алгоритм программы и сама программа. В зависимости от возраста и исходных знаний можно разбить алгоритм и саму программу на два этапа.

5. Испытание, отладка программы и варианты улучшения. На этом этапе я добавил ту мелкую хитрость с поворотом, что бы робот входил в более острые углы.

Мой личный подход подачи материала такой:
Я даю задачу-вопрос и спрашиваю как это решили бы ученики. Потом по ходу их вариантов я добавляю некую порцию информации и тогда слушаю их варианты решения.
Это как загадка, на которую можно давать намёки постепенно и таким образом они чувствуют, что сами решили задачу, а не я им подсказал.
В этом случае сам процесс brain storming'а им более понятен. И почему решение именно такое они уже лучше понимают.

Спасибо, пригодится. В целом, примерно так и делаю, зато у вас получилось описать структурировано, так легче не упустить что-то важное.

Если вкратце, то всю структуру можно описать как «идея-чертёж-прототип-тестирование».
Спасибо за подобную статью, когда-то именно такая и натолкнула на создание первых роботов, и роботизированных систем.)
Надеюсь, эта напомнит о том, какие новые подвиги и достижения ждут впереди.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.