Об этом проекте
Это мой второй робот-последователь линии (версия 4). В отличие от предыдущего, я сделал дизайн печатной платы с помощью EasyEDA. Эта печатная схема действует как шасси робота. Производство печатных плат было выполнено JLCPCB, и я должен сказать, что они превзошли мои ожидания, продемонстрировав впечатляющее качество и поставив в рекордные сроки.
В следующем видео показан окончательный результат прототипа, в который я включил 3D-модели, созданные в TinkerCAD.
В следующем видео я показываю тесты, проведенные с драйвером Mini Motor Driver (MX1508).
В следующем видео я покажу тесты с 8 датчиками CNY70. Эти датчики измеряются аналогично через порты от A0 до A7 Arduino Nano. Я использую исходный алгоритм для калибровки датчиков путем нормализации диапазона от 0 до 1000, где 0 представляет белый фон, а 1000 - черную линию. По завершении калибровки он входит в цикл и начинает цикл считывания, вычисляя положение от 0 до 7000, которое представляет левый датчик и правый датчик соответственно. Это значение положения используется для вычисления пропорциональной ошибки P. Диапазон P составляет от -3500 (слева) до 3500 (справа), где 0 является центральным значением. Алгоритм запоминает значение положения последнего датчика (левого или правого), обнаружившего черную линию, с целью использования этих данных для действий при торможении и восстановления линии.
Заключительный тест со смонтированной на 95% схемой показан в следующем видео. Последний тест на силу тока с максимальным потреблением 200 мА.
Это последняя версия печатной схемы робота, готовая к производству на JLCPCB.
Это распаковка.
На последнем отрезке, уже с общим количеством деталей, я показываю сборку моего первого робота Speed Follower.
Наконец, приложив много усилий, у меня уже есть полностью построенный прототип, ниже я покажу, как загрузить код (режим загрузки кода), как вы можете протестировать датчики и, конечно же, тесты на трассе. Очень доволен работой, тестовый код очень хорошо контролирует код. Я использовал алгоритм PID (Full), чтобы сгладить поправки и восстановить курс линии. Поскольку все можно улучшить, я продолжу экспериментировать с кодом, чтобы получить более эффективную версию.
В качестве дополнения я смоделировал этого робота в приложении Webots. Он все еще находится в процессе улучшения, но я делюсь этим видео, чтобы вы могли оценить способ выполнения механических и логических тестов (код) для управления роботом в виртуальной среде и который помогает понять работу физически построенного робота.