Comments 59
Очень подробно описаны технические детали и весьма поверхностно всё, что связано с электрическими схемами. То есть по Вашей статье собрать платформу «физически» можно очень легко, даже тем, кто гвозди заколачивать с трудом. А вот электрическая схема заранее подразумевает, что паять Вы умеете и Arduino уже не раз подключали ко всяким устройствам.
Тем не менее спасибо, отличная статья. Надо попробовать.
Тем не менее спасибо, отличная статья. Надо попробовать.
0
Мне статья понравилась, в меру подробно.
Главное — есть весь набор необходимой терминалогии, банально загуглив которую, даже далекий от электроники человек сможет начать свой путь к новому, увлекательному хобби.
Отличный способ популяризации робототехники.
Главное — есть весь набор необходимой терминалогии, банально загуглив которую, даже далекий от электроники человек сможет начать свой путь к новому, увлекательному хобби.
Отличный способ популяризации робототехники.
0
Все наши болтики и гаечки со стороны дна несильно уменьшили дорожный просветА почему бы не прикручивать все компоненты к «потолку» корпуса?
Тогда дно будет гладким и будет крышкой для доступа к внутренностям даже после того, как сверху будет установлена полезная нагрузка или другое оборудование.
0
Будет неудобно. Навскидку:
1) Когда мы будем «строить» второй этаж наверняка придётся не раз снимать верхнюю крышку. Сверлить дырки. И что бы просверлить одну дырку не хотелось бы разбирать всю начинку. А потом окажется что надо ещё одну. И совсем обидно окажется, если местоположение дыркы должно будет попадать на уже имеющийся болтик.
2) У нас много подключенных контактов. DC/DC преобразователи «просто так» вставлены. Машинка у нас ездит, сталкивается с препятствиями, присутствует вибрация. Чтобы все наши элементы и провода не повылетали их надо крепить, а лучше запаивать. Что неудобно на этапе отладки.
1) Когда мы будем «строить» второй этаж наверняка придётся не раз снимать верхнюю крышку. Сверлить дырки. И что бы просверлить одну дырку не хотелось бы разбирать всю начинку. А потом окажется что надо ещё одну. И совсем обидно окажется, если местоположение дыркы должно будет попадать на уже имеющийся болтик.
2) У нас много подключенных контактов. DC/DC преобразователи «просто так» вставлены. Машинка у нас ездит, сталкивается с препятствиями, присутствует вибрация. Чтобы все наши элементы и провода не повылетали их надо крепить, а лучше запаивать. Что неудобно на этапе отладки.
0
Для этого скорей было надо взять болты с потайной головкой или использовать болтгайки (как материнку в компе крепят)
0
Очень понравилась статья, спасибо. Чуть оффтопа с Вашего позволения: Подскажите простой способ контролировать разряд литий-ионных аккумуляторов, нужна платка с шиной uart/i2c для понимания на сколько разряжены аккумуляторы (подсчет и визуализацию буду делать на raspberry pi). Вариант с измерением напряжение не походит.
0
Никогда не слышал о таких. Но и не интересовался.
Мне кажется, Вам придётся делать контроллер под свои задачи. Можно взять ту же ардуину, датчик тока на эффекте холла (есть готовый модуль) и считать ток, который отдают аккумуляторы. При заряде аккумуляторов ток сменит направление и это тоже учитывать. Интегрируя по времени, можно посчитать какую ёмкость в аккумулятор закачали и какую из неё забрали. На ардуине можно организовать uart/i2c и отдавать по запросам или периодически текущее значение ёмкости в процентах от последней зарядки. Нужно будет ещё кучу вещей учитывать типа если зарядка внезапно прервалась, саморазряд аккумуляторов никто не отменял, ещё чего-то… Но как-то примерно можно будет контролировать. Очевидно, придётся делать какую-то самокалибровку такого контроллера. Вообщем получается как-то совсем непростой способ :)
Мне кажется, Вам придётся делать контроллер под свои задачи. Можно взять ту же ардуину, датчик тока на эффекте холла (есть готовый модуль) и считать ток, который отдают аккумуляторы. При заряде аккумуляторов ток сменит направление и это тоже учитывать. Интегрируя по времени, можно посчитать какую ёмкость в аккумулятор закачали и какую из неё забрали. На ардуине можно организовать uart/i2c и отдавать по запросам или периодически текущее значение ёмкости в процентах от последней зарядки. Нужно будет ещё кучу вещей учитывать типа если зарядка внезапно прервалась, саморазряд аккумуляторов никто не отменял, ещё чего-то… Но как-то примерно можно будет контролировать. Очевидно, придётся делать какую-то самокалибровку такого контроллера. Вообщем получается как-то совсем непростой способ :)
0
Думал о подобном пути, но все же надеялся что есть что то простое. Например самый простой powerbank с экраном и индикатором в процентах, понимаю что его данные очень усредненные но все же, может есть способ как с него эту информацию.
0
Я не знаю насколько часто и точно Вам нужно снимать данные. Есть платы грубой индикации уровня заряда. Например, вот такая содержит пятисегментный индикатор. Но придётся колхозить пару проводков для управления и пять на телеметрию, возможно придётся еще и ограничивать выдаваемое напряжение. Учитывая, что всё сводится к замеру и оценке напряжения можно и самому тогда сделать резистивную цепочку и с неё сигнал оцифровывать. Если не хотите, что бы она постоянно что-то потребляла можно её через ключ или микрореле подключать к аккумулятору.
0
Это как раз по напряжению и показывает с вероятностью 99%
Для одной банки можно использовать например Maxim DS2741
https://datasheets.maximintegrated.com/en/ds/DS2741.pdf
со 100%
цитата
5ти сегментный светодиодный индикатор отображает уровень заряда от 20% до 100%.
0% (< 3В на Li-ion ячейке) Светодиод моргает
20% (3,0 — 3,3В на Li-ion ячейке) горит 1 светодиод
40% (3,3 — 3,5В на Li-Ion ячейке) горит 2 светодиода
60% (3,5 — 3,8В на Li-Ion ячейке) горит 3 светодиода
80% (3,8 — 4,0В на Li-Ion ячейке) горит 4 светодиода
100% (4,0 — 4,2В на Li-Ion ячейке) горит 5 светодиодов
Для одной банки можно использовать например Maxim DS2741
https://datasheets.maximintegrated.com/en/ds/DS2741.pdf
со 100%
цитата
5ти сегментный светодиодный индикатор отображает уровень заряда от 20% до 100%.
0% (< 3В на Li-ion ячейке) Светодиод моргает
20% (3,0 — 3,3В на Li-ion ячейке) горит 1 светодиод
40% (3,3 — 3,5В на Li-Ion ячейке) горит 2 светодиода
60% (3,5 — 3,8В на Li-Ion ячейке) горит 3 светодиода
80% (3,8 — 4,0В на Li-Ion ячейке) горит 4 светодиода
100% (4,0 — 4,2В на Li-Ion ячейке) горит 5 светодиодов
0
На сколько мне известно там не линейная зависимость. Хотелось бы что то поточней. Замерял напряжение под нагрузкой, но на моих аккамуляторах до 50% можно построить какой то график, а дальше все может быстро уйти в разряд.
0
Нелинейная, но не сильно от линейной отличается, например:
А от 4.1 и до 3.2-3.3 вольта (на холостом или под низкой нагрузкой), т.е. в диапазоне примерно 95%-20% емкости практически линейная и точность получается хорошая.
А от 4.1 и до 3.2-3.3 вольта (на холостом или под низкой нагрузкой), т.е. в диапазоне примерно 95%-20% емкости практически линейная и точность получается хорошая.
0
Спасибо за ответ, а как быть если нужно измерять под нагрузкой?
0
Смотря какая нагрузка. Вообще сама зависимость и под нагрузкой остается близкой к линейной кроме ну очень больших токов — просто смещаются (в сторону снижения разумеется) все напряжения — см. график, каждая линия своему току нагрузки соответствует (1/3/5/7/10 Ампер) и кроме самого начала и конца график фактически линейный.
Так что если заранее измерить внутренне сопротивление конкретных используемых аккумуляторов (по падению напряжения при работе с известной нагрузкой — один раз для каждого используемого комплекта), то можно просто давать фиксированную поправку — зная напряжение под нагрузкой и внутреннее сопротивление своих батарей всегда можно в 1 действие рассчитать напряжение холостого хода, а уже по нему с приличной точностью оценить уровень остающегося заряда.
Ну или если речь идет о поделках типа роботов описанных в статье с умными микропроцессорными контроллерами и мощными, но короткими импульсными нагрузками (типа сервоприводов какого-то манипулятора или движков крутящих колеса платформы), то 2й вариант это измерять напряжение только между(в перерывах) этими импульсными нагрузками. Когда идет только нагрузка от работы датчиков и микроконтроллера — они потребляют немного и напряжение на аккумуляторе почти не отличается от холостого хода. А раз ПО для контроллера управляющего девайсом мы пишем сами, то по-идее всегда должны знать работают в данный конкретный момент силовые приводы или нет.
Так что если заранее измерить внутренне сопротивление конкретных используемых аккумуляторов (по падению напряжения при работе с известной нагрузкой — один раз для каждого используемого комплекта), то можно просто давать фиксированную поправку — зная напряжение под нагрузкой и внутреннее сопротивление своих батарей всегда можно в 1 действие рассчитать напряжение холостого хода, а уже по нему с приличной точностью оценить уровень остающегося заряда.
Ну или если речь идет о поделках типа роботов описанных в статье с умными микропроцессорными контроллерами и мощными, но короткими импульсными нагрузками (типа сервоприводов какого-то манипулятора или движков крутящих колеса платформы), то 2й вариант это измерять напряжение только между(в перерывах) этими импульсными нагрузками. Когда идет только нагрузка от работы датчиков и микроконтроллера — они потребляют немного и напряжение на аккумуляторе почти не отличается от холостого хода. А раз ПО для контроллера управляющего девайсом мы пишем сами, то по-идее всегда должны знать работают в данный конкретный момент силовые приводы или нет.
0
ppc-ptz говорит, что есть специализированные средства. DS2741 — я так понял это контроллер зарядного тока. По I2C можно узнать и оставшуюся ёмкость. Правда формфактор TDFN не сильно располагает к домашнему творчеству)
0
Опрашивать нужно хотя бы раз в несколько минут чтоб примерно знать сколько еще протянет робот, подобные решения есть в дорогих квадракоптерах. Устал искать готовое.
0
Поставьте обычный резистивный делитель и подключите к ноге raspberry.
0
Китайцы продают готовые девайсы типа такого
Напрямую использовать или найти доку на микросхему и подключиться
Напрямую использовать или найти доку на микросхему и подключиться
0
А ссылки на корпус, двигатели, желательно с али можно увидеть?
0
А ссылки на корпус, двигатели, желательно с али можно увидеть?
Двигатель jga-25-370. Корпус сложнее — надо идти в строительный магазин. Вот колёса — это вещь!
0
Вот такой набор есть:https://ru.aliexpress.com/item/ONE-Set-of-Car-Parts-included-25-motor-85mm-wheel-Tyre-Width-38mm-coupling-motor-bracket/32609240322.html?spm=2114.10010208.1000022.1.VPYTw7&isOrig=true#extend
Правда скорость вращения не очень высокая (редуктор такой).
Правда скорость вращения не очень высокая (редуктор такой).
0
Или всё в сборе: https://ru.aliexpress.com/item/4wd-full-metal-motor-4x4-full-aluminum-alloy-intelligent-barrowload-chassis-big-robot/852707822.html?spm=2114.13010708.0.82.cmG0nI
А то что скорость вращения маленькая — это хорошо, я взял вариант с шустрыми моторами и в итоге их момента не хватало чтобы поворачивать платформу на месте =(
А то что скорость вращения маленькая — это хорошо, я взял вариант с шустрыми моторами и в итоге их момента не хватало чтобы поворачивать платформу на месте =(
0
Я дополнил статью ссылками на основные комплектующие. По платформе — по моей ссылке у продавца можно заказать один из двух цветов платформы и один из трёх номиналов скоростей (как следствие и крутящих моментов) двигателей.
0
Я не нашел приемлемых готовых платформ с датчиками Холла.
0
Когда-то тоже такую платформу находил, поэтому ссылку сохранил, но не на ALI
http://www.banggood.com/4WD-WIFI-Crosscountry-Offroad-Robot-Smart-Car-Kit-For-Arduino-p-927973.html
http://www.banggood.com/4WD-WIFI-Crosscountry-Offroad-Robot-Smart-Car-Kit-For-Arduino-p-927973.html
0
кит с пластиковыми редукторами
кит с металлическими редукторами
кит с металлическими редукторами
0
Я дополнил статью — в конце под спойлером размещён список основных комплектующих, ссылки присутствуют.
0
Хммм если честно получается дороже чем у меня несмотря, на то что у меня мощнее процессор…
У Вас получается очень много рассыпухи.
У меня набор примерно похожий но обошелся без арудинки…
DC/DC — Преобразователь
L298 -Мотор шилд
NanoPi2-мозги плюс wi-fi
У Вас получается очень много рассыпухи.
У меня набор примерно похожий но обошелся без арудинки…
DC/DC — Преобразователь
L298 -Мотор шилд
NanoPi2-мозги плюс wi-fi
0
1. Голые моторы без обратной связи (энкодер) и ПИД регулятора, очень поверхностное решение. Будут проблемы с прямолинейным движением и прохождением препятствий.
2. Стыковка колесо-мотор через адаптер — слабое звено. Будет разбалтываться и слетать с вала. Бонусом будет повышенная нагрузка на подшипники редуктора(а они там подшипники скольжения) и быстрый выход редукторов из строя, особенно если на платформу будет ставиться полезная нагрузка.
Тут похожий проект https://geektimes.ru/post/257894/
2. Стыковка колесо-мотор через адаптер — слабое звено. Будет разбалтываться и слетать с вала. Бонусом будет повышенная нагрузка на подшипники редуктора(а они там подшипники скольжения) и быстрый выход редукторов из строя, особенно если на платформу будет ставиться полезная нагрузка.
Тут похожий проект https://geektimes.ru/post/257894/
+1
Врядли этот робот предполагается интенсивно эксплуатировать. Как и у большенства подобных тележек, судьба его пылится на антресольке.
0
Основная идея — сделать себе передвижной удалённый видеомониторинг своего дома. То есть, с работы можно подключить к роботу, поездить, посмотреть во двор (к окнам деревянный настил приставить в качестве трапа). А вот что из этого выйдет, хватит ли терпения и найдётся ли время на реализацию всего — это время и покажет)
0
1. При тестовых запусках прямо ездит нормально. Но в целом, я с Вами согласен. Задел на двигатели с ОС оставлен — двигатели можно поменять на более дорогие GM25-370 с встроенными датчиками Холла.
2. Да. Тут Вы правы. Но я не нашёл нормальных готовых решений. В принципе, можно получить доступ к токарному станку и выточить (если до сих пор не разучился) осевой адаптер на вал двигателя, но всё равно его «класть» на что-то надо, подшипник надо как-то крепить к корпусу. У Вас в этом плане сделано замечательно (я статью прочитал), но в домашних условиях так сделать, лично я не смогу.
У Вас, кстати, получилось замечательная платформа! Я Вашу статью читал и практически полностью вспоминал свои мысли год назад. Автономные «мозги», контроль пространства на уровне платформы, нормальный стык колесо-редуктор и т.д. Но получилось всё сильно попроще.
6 колёс. Есть смыл в использовании энкодеров у средней пары колёс? Т.е. если без них — сильно прямо так скажется на движении?
И ещё вопрос возник — а как в вашем макете с поворотами дела обстоят? На гладкой поверхности я могу просто бортами в разные строны закручивать и платформа поворачивается без особых проблем. А вот на шерстяном паласе — никак. Т.е. вообще никак) Пришлось выдавать на 50 миллисекунд импульс на движение вперёд, а потом уже реверс по какому-то борту включать.
…
А вообще, Ваш аккаунт навевает грусть. Это видимо как раз тот случай, когда человеку слили карму чисто за мнения в комментариях. Хотя качество оригинального материала — отличное. Но теперь владелец этого аккаунта врят ли что-то сюда писать захочет… тем не менее — поддержал в карму.
2. Да. Тут Вы правы. Но я не нашёл нормальных готовых решений. В принципе, можно получить доступ к токарному станку и выточить (если до сих пор не разучился) осевой адаптер на вал двигателя, но всё равно его «класть» на что-то надо, подшипник надо как-то крепить к корпусу. У Вас в этом плане сделано замечательно (я статью прочитал), но в домашних условиях так сделать, лично я не смогу.
У Вас, кстати, получилось замечательная платформа! Я Вашу статью читал и практически полностью вспоминал свои мысли год назад. Автономные «мозги», контроль пространства на уровне платформы, нормальный стык колесо-редуктор и т.д. Но получилось всё сильно попроще.
6 колёс. Есть смыл в использовании энкодеров у средней пары колёс? Т.е. если без них — сильно прямо так скажется на движении?
И ещё вопрос возник — а как в вашем макете с поворотами дела обстоят? На гладкой поверхности я могу просто бортами в разные строны закручивать и платформа поворачивается без особых проблем. А вот на шерстяном паласе — никак. Т.е. вообще никак) Пришлось выдавать на 50 миллисекунд импульс на движение вперёд, а потом уже реверс по какому-то борту включать.
…
А вообще, Ваш аккаунт навевает грусть. Это видимо как раз тот случай, когда человеку слили карму чисто за мнения в комментариях. Хотя качество оригинального материала — отличное. Но теперь владелец этого аккаунта врят ли что-то сюда писать захочет… тем не менее — поддержал в карму.
0
>1. При тестовых запусках прямо ездит нормально.
Это пока движки свежие, они в процессе эксплуатации начинают крутить по разному и у робота при одинаковых параметрах ШИМ появляется дуга.
>2. Да. Тут Вы правы. Но я не нашёл нормальных готовых решений.
Готовых решений в китай-сегменте нет. Часть фрезерованных деталей заменяется 3D печатью, на момент статьи принтера у нас не было, но был выход на станок с ЧПУ. По итогам эксплуатации этот узел оказался самым надежным, китай-моторы жили значительно дольше, но потом все равно разваливался редуктор.
>6 колёс. Есть смыл в использовании энкодеров у средней пары колёс?
Только если езда по плоскости, при пересеченке есть вариант, когда среднее колесо может оказаться в воздухе, т.е. на ПИД поступают нормальные данные и он крутит колесо с малым усилием, а на два других уже не хватает. При жестком корпусе в идеале все 6 колес под ПИД управлением, если только средние то желательно продумать активную подвеску.
>И ещё вопрос возник — а как в вашем макете с поворотами дела обстоят?
Танковые развороты выходили отлично. Робот занимал призовые места в соревнованиях и прекрасно себя чувствовал на любом покрытии. Четырех-колесные платформы в этом плане сильно хуже, при хорошем сцеплении (шипованые колеса и ковролин) очень тяжело вертеть и хана редукторам. Еще момент насчет драйвера он явно маловат, там 2А на канал и в пике до 4А, два двигателя в параллели при блокировке запросто затребуют больше 4А, т.е. минимум нужно на пару движков по драйверу. Рекомендую схему: два ведущих колеса и мебельный ролик, по энергетике/управляемости самое то. Ссылка на внешний вид платформы http://rtc.ru/ru/sobytiya/73-tsnii-rtk-sadu-benua-125-let в конце несколько фотографий.
>А вообще, Ваш аккаунт навевает грусть.
Это хабр, дело привычное. За карму спасибо, готов ответить на возникшие вопросы, но не чаще чем раз в час :)… карма она такая.
Это пока движки свежие, они в процессе эксплуатации начинают крутить по разному и у робота при одинаковых параметрах ШИМ появляется дуга.
>2. Да. Тут Вы правы. Но я не нашёл нормальных готовых решений.
Готовых решений в китай-сегменте нет. Часть фрезерованных деталей заменяется 3D печатью, на момент статьи принтера у нас не было, но был выход на станок с ЧПУ. По итогам эксплуатации этот узел оказался самым надежным, китай-моторы жили значительно дольше, но потом все равно разваливался редуктор.
>6 колёс. Есть смыл в использовании энкодеров у средней пары колёс?
Только если езда по плоскости, при пересеченке есть вариант, когда среднее колесо может оказаться в воздухе, т.е. на ПИД поступают нормальные данные и он крутит колесо с малым усилием, а на два других уже не хватает. При жестком корпусе в идеале все 6 колес под ПИД управлением, если только средние то желательно продумать активную подвеску.
>И ещё вопрос возник — а как в вашем макете с поворотами дела обстоят?
Танковые развороты выходили отлично. Робот занимал призовые места в соревнованиях и прекрасно себя чувствовал на любом покрытии. Четырех-колесные платформы в этом плане сильно хуже, при хорошем сцеплении (шипованые колеса и ковролин) очень тяжело вертеть и хана редукторам. Еще момент насчет драйвера он явно маловат, там 2А на канал и в пике до 4А, два двигателя в параллели при блокировке запросто затребуют больше 4А, т.е. минимум нужно на пару движков по драйверу. Рекомендую схему: два ведущих колеса и мебельный ролик, по энергетике/управляемости самое то. Ссылка на внешний вид платформы http://rtc.ru/ru/sobytiya/73-tsnii-rtk-sadu-benua-125-let в конце несколько фотографий.
>А вообще, Ваш аккаунт навевает грусть.
Это хабр, дело привычное. За карму спасибо, готов ответить на возникшие вопросы, но не чаще чем раз в час :)… карма она такая.
0
Возник такой вопрос. Как на Arduino c энкодерами поступили? Прерывание на ногу?
P.S.
Сам STM32 Nucleo-144 взял. Наверно, некий оверхед, но аппаратно четыре энкодера поддерживает. Плюс USB (в большой комп или микро-комп). Ещё десять ультразвуковых датчиков. В итоге 144 ноги уже почти закончились :-).
P.S.
Сам STM32 Nucleo-144 взял. Наверно, некий оверхед, но аппаратно четыре энкодера поддерживает. Плюс USB (в большой комп или микро-комп). Ещё десять ультразвуковых датчиков. В итоге 144 ноги уже почти закончились :-).
0
В RASH2 да, я вешал два энкодера на прерывания.
Интересно было бы взглянуть на вашу платформу. С десятью сонарами)
Интересно было бы взглянуть на вашу платформу. С десятью сонарами)
0
У GM25-370 датчик Холла на валу двигателя.
У модели, где после редуктора 150 об/сек, вал вращается со скоростью 11500 об/сек. Нужно два канала, чтобы знать направление.
На мой взгляд, на прерываниях это нереально сделать на любом микроконтроллере, а особенно на Arduino.
У STM32 аппаратно инкрементируется счётчик, если на первом канале энкодера сигнал пришел раньше. И декрементируется, если на втором канале пришел раньше.
> Интересно было бы взглянуть на вашу платформу. С десятью сонарами)
Самому интересно :-). Пришлось всё-таки MCP23S17 применить — ног мало. В бою сразу десять ещё не пробовал. Пока жду посылки.
У модели, где после редуктора 150 об/сек, вал вращается со скоростью 11500 об/сек. Нужно два канала, чтобы знать направление.
На мой взгляд, на прерываниях это нереально сделать на любом микроконтроллере, а особенно на Arduino.
У STM32 аппаратно инкрементируется счётчик, если на первом канале энкодера сигнал пришел раньше. И декрементируется, если на втором канале пришел раньше.
> Интересно было бы взглянуть на вашу платформу. С десятью сонарами)
Самому интересно :-). Пришлось всё-таки MCP23S17 применить — ног мало. В бою сразу десять ещё не пробовал. Пока жду посылки.
0
Да, это быстро. Можно использовать недорогой ПЛИС, который я использовал для WOL. ПЛИС — это уже сплошное творчество без ограничений)
0
>Возник такой вопрос. Как на Arduino c энкодерами поступили? Прерывание на ногу?
Да именно так, задействовано 4-ре ноги т.к. энкодеры двухканальные, что позволяет определять направление вращения.
Хорошая статья http://easyelectronics.ru/avr-uchebnyj-kurs-inkrementalnyj-enkoder.html
Производительности 8-ми битного AVR хватает на обработку данных с энкодера и обсчет пид регулятора на два канала + отправка данных по UART/CAN в систему управления.
>В итоге 144 ноги уже почти закончились :-).
Моя рекомендация не накручивать все на один мк, т.к. масштабируемость решения никакая. Перспективнее несколько плат с МК (мы используем atmega32m1) завязанных на одну шину (в нашем случае CAN). В результате получается ряд локальных законченных решений (управление двигателями, опрос дальномеров, навигация, отображение информации на индикаторе, контроль питания) которые сами по себе мигрируют от платформы к платформе. Если какое то локальное решение не «взлетает» то это всего лишь одна ветка, попробовали, не вышло и забыли.
Да именно так, задействовано 4-ре ноги т.к. энкодеры двухканальные, что позволяет определять направление вращения.
Хорошая статья http://easyelectronics.ru/avr-uchebnyj-kurs-inkrementalnyj-enkoder.html
Производительности 8-ми битного AVR хватает на обработку данных с энкодера и обсчет пид регулятора на два канала + отправка данных по UART/CAN в систему управления.
>В итоге 144 ноги уже почти закончились :-).
Моя рекомендация не накручивать все на один мк, т.к. масштабируемость решения никакая. Перспективнее несколько плат с МК (мы используем atmega32m1) завязанных на одну шину (в нашем случае CAN). В результате получается ряд локальных законченных решений (управление двигателями, опрос дальномеров, навигация, отображение информации на индикаторе, контроль питания) которые сами по себе мигрируют от платформы к платформе. Если какое то локальное решение не «взлетает» то это всего лишь одна ветка, попробовали, не вышло и забыли.
0
Сейчас платформа передана ребятам из Endurance. Посмотрю на отзывы по криводвижению) Небольшой апгрейд, если понадобится, запланирован путём замены а двигатели с датчиками Холла — конструктивно всё должно получиться, запитать их можно от платы питания, а сигналы с датчиков «прокинуть» на плату управления — резервные пины тоже есть.
Насчёт драйвера двигателей согласен. Он выбран с 20-25% запасом по мощности, но только для случая штатной работы. Если вдруг «встанут» все четыре колеса, то микросхема драйвера может и легко сгореть. Выбор сознателен — цена и предположение, что оператор не идиот и не будет совсем уж «загонять» платформу. А как, куда и вообще надо ли будет развивать платформу дальше — определится позже.
Насчёт драйвера двигателей согласен. Он выбран с 20-25% запасом по мощности, но только для случая штатной работы. Если вдруг «встанут» все четыре колеса, то микросхема драйвера может и легко сгореть. Выбор сознателен — цена и предположение, что оператор не идиот и не будет совсем уж «загонять» платформу. А как, куда и вообще надо ли будет развивать платформу дальше — определится позже.
0
Любопытная статья!
Сам начал с желтых пластмассовых двигателей. Потом решил 25мм двигатель и 85мм колёса. Сейчас же жду 130мм колёса и 37мм двигатели 400RPM.
Двигатели с датчиком Холла. Наконец-то я понял, что мне повезло со специальностью :-) (Приборостроение) и очень полезно знать про системы с обратной связью.
Сам начал с желтых пластмассовых двигателей. Потом решил 25мм двигатель и 85мм колёса. Сейчас же жду 130мм колёса и 37мм двигатели 400RPM.
Двигатели с датчиком Холла. Наконец-то я понял, что мне повезло со специальностью :-) (Приборостроение) и очень полезно знать про системы с обратной связью.
0
Колёса не такие случайно?
0
Ага, синенькие :-)
Самые дешёвые, которые попались:
А мотор такой:
Пока ничего сказать не могу по поводу качества мотора JGB37-555B. Крутящий момент у него высокий (по ссылке таблица есть).
Самые дешёвые, которые попались:
А мотор такой:
Пока ничего сказать не могу по поводу качества мотора JGB37-555B. Крутящий момент у него высокий (по ссылке таблица есть).
0
Ссылки:
https://ru.aliexpress.com/item/2pcs-lot-130mm-Plastic-Wheels-New-Style-robot-wheels-new-wheels-for-DIY-smart-car-Robot/32549479884.html?spm=2114.10010208.1000022.1.mF0e0Q&isOrig=true#extend
https://ru.aliexpress.com/item/JGB37-555B-6v-24v-High-torque-DC-gear-motor-with-high-precision-encoder-Speed-encoder-motor/32700191670.html?spm=2114.10010208.1000022.1.gMGZix&isOrig=true#extend
https://ru.aliexpress.com/item/2pcs-lot-130mm-Plastic-Wheels-New-Style-robot-wheels-new-wheels-for-DIY-smart-car-Robot/32549479884.html?spm=2114.10010208.1000022.1.mF0e0Q&isOrig=true#extend
https://ru.aliexpress.com/item/JGB37-555B-6v-24v-High-torque-DC-gear-motor-with-high-precision-encoder-Speed-encoder-motor/32700191670.html?spm=2114.10010208.1000022.1.gMGZix&isOrig=true#extend
0
в отсутствии датчиков оборотов, как обеспечивается езда платформы по прямой?
разброс характеристик двигателей и трение в редукторах будет приводит к накоплению системной погрешности без коррекции по обратной связи.
понятно, что это всего лишь платформа, а не готовое изделие, но отсутствуют хвостовики на моторах для дальнейшего её развития.
разброс характеристик двигателей и трение в редукторах будет приводит к накоплению системной погрешности без коррекции по обратной связи.
понятно, что это всего лишь платформа, а не готовое изделие, но отсутствуют хвостовики на моторах для дальнейшего её развития.
0
Тут, понимаете, вопрос в том автономное это движение или нет.
Если движение ручное, то это неважно — оператор движение всегда и так скорректирует. Главное что бы он не ездил уж совсем криво как в первом видео в статье — там им управлять совсем уж тяжко, так как постоянно «ловить» приходится. Разброс характеритик несколько парируется тем, что у нас полный привод и колеса друг другу не дают «разгуляться». Может, конечно, неповести так, что будет сильный разброс по бортам, но пробные тесты показали, что по прямой он замечательно ездит в пределах квартиры по крайней мере.
Если же это будет автомат, то тогда ваше замечание резонно. Но это продумано «на будущее». Существуют двигатели GM25-370 с установленными датчиками Холла на концах двигателей. В этот корпус они должны вместиться почти впритык друг к другу. По крепежным местам подходят к корпусу. Датчик Холла можно запитать от платы питания, а его выходные сигналы «продёрнуть» на плату управления. Кстати, я этот момент хотел упомянуть в статье, но всё же забыл — дополню.
Если движение ручное, то это неважно — оператор движение всегда и так скорректирует. Главное что бы он не ездил уж совсем криво как в первом видео в статье — там им управлять совсем уж тяжко, так как постоянно «ловить» приходится. Разброс характеритик несколько парируется тем, что у нас полный привод и колеса друг другу не дают «разгуляться». Может, конечно, неповести так, что будет сильный разброс по бортам, но пробные тесты показали, что по прямой он замечательно ездит в пределах квартиры по крайней мере.
Если же это будет автомат, то тогда ваше замечание резонно. Но это продумано «на будущее». Существуют двигатели GM25-370 с установленными датчиками Холла на концах двигателей. В этот корпус они должны вместиться почти впритык друг к другу. По крепежным местам подходят к корпусу. Датчик Холла можно запитать от платы питания, а его выходные сигналы «продёрнуть» на плату управления. Кстати, я этот момент хотел упомянуть в статье, но всё же забыл — дополню.
0
К контроллеру литий-ионных аккумуляторов D1 подключаются три аккумулятора формата 18650
Практически полностью аналогичная конструкция (+еще 2 кг на вес манипулятора. Поворотный стол и сервоприводы) запитанная от кислотного аккумулятора 12В 1.2А/ч (свеже купленный) имеет автономность где то в 30-40 минут движения (без задействования манипулятора) в непрерывном движении с маневрированием.
А у Вас какая автономность выходит? (что бы сравнить… может на 18650 перевести).
0
К сожалению это неизвестно. Пока, по крайней мере. Робот собирался для стартапа Endurance и был ему передан.
Изначально предполагалось только собрать «базовое железо». Но я так же успел сделать простейшую тестовую прошивку, которая позволяет задать имя для модуля bluetooth, принимать данные от этого модуля по несложному протоколу и выполнять четыре команды (вперёд, назад, влево, вправо). То есть, никакой мониторинг и телеметрия реализованы не были. Во время проверок и отладки робот гонялся по квартире минут по 30-40, при этом я не заметил, что у него динамика изменилась — как катался в начале, так же катался и через полчаса. При этом, повороты на ковролине, я думаю, неслабо так напрягали аккумуляторы, так как при стопоре двигатели в 3-4 раза больше тока потребляют. После этого я его обычно ставил на подзарядку, которая занимала 1,5-2 часа. Я думаю реально в том виде, в котором он сейчас есть он может и часа 2 отъездить.
Ваш свинцовый аккумулятор гораздо проще заряжать, он неприхотлив и гораздо дешевле. Перевод на 18650 вам даст снижение веса при повышении ёмкости и кратном повышении цены, так как нормальный и ёмкий один аккумулятор 18650 (например, Panasonic NCR18650B) стоит как ваш свинцовый. Заряжать можно 12-вольтовым блоком питания, если он умеет нормально ток ограничивать, но для лучшей эффективности надо использовать внешнюю зарядку (как у меня в статье) или делать схему заряда самому с ограничением тока (можно попробовать использовать китайские Step-Down преобразователи которые имеют регулятор ограничения по току — тогда на робота можно подавать просто 12В от любого источника питания). В целом вы можете вес снизить раза в три, энергоёмкость поднять раза в 2-4, но и цена возрастёт в несколько раз.
Изначально предполагалось только собрать «базовое железо». Но я так же успел сделать простейшую тестовую прошивку, которая позволяет задать имя для модуля bluetooth, принимать данные от этого модуля по несложному протоколу и выполнять четыре команды (вперёд, назад, влево, вправо). То есть, никакой мониторинг и телеметрия реализованы не были. Во время проверок и отладки робот гонялся по квартире минут по 30-40, при этом я не заметил, что у него динамика изменилась — как катался в начале, так же катался и через полчаса. При этом, повороты на ковролине, я думаю, неслабо так напрягали аккумуляторы, так как при стопоре двигатели в 3-4 раза больше тока потребляют. После этого я его обычно ставил на подзарядку, которая занимала 1,5-2 часа. Я думаю реально в том виде, в котором он сейчас есть он может и часа 2 отъездить.
Ваш свинцовый аккумулятор гораздо проще заряжать, он неприхотлив и гораздо дешевле. Перевод на 18650 вам даст снижение веса при повышении ёмкости и кратном повышении цены, так как нормальный и ёмкий один аккумулятор 18650 (например, Panasonic NCR18650B) стоит как ваш свинцовый. Заряжать можно 12-вольтовым блоком питания, если он умеет нормально ток ограничивать, но для лучшей эффективности надо использовать внешнюю зарядку (как у меня в статье) или делать схему заряда самому с ограничением тока (можно попробовать использовать китайские Step-Down преобразователи которые имеют регулятор ограничения по току — тогда на робота можно подавать просто 12В от любого источника питания). В целом вы можете вес снизить раза в три, энергоёмкость поднять раза в 2-4, но и цена возрастёт в несколько раз.
0
Зачем городить свой моторный контроллер, когда можно просто купить китайский ESC?
0
Их же обычно применяют в авиамоделизме для управления бесколлекторными двигателями?
Был бы благодарен за ссылку по практическому применению именно для «машинок».
Был бы благодарен за ссылку по практическому применению именно для «машинок».
0
Искать в вашем случае, как я понял, "Brushed esc"
https://goo.gl/bRmHzc
https://goo.gl/d4jP3W
0
Китайские моторредукторы хоть и мощные, но отвратительно шумные.
Ждем версию RASH который не режет уши!
Ждем версию RASH который не режет уши!
0
Класс. У меня вопрос, т.к. пытаюсь на таких же движках собрать робота, как бы вы решили задачу по определению количества оборотов колес для синхронизации?
0
Я бы брал движки с встроеннымы датчиками Холла.
А если с этими двигателями. Навскидку. Можно прикрепить на муфту или на обратную сторону колеса магнитик. А на корпусе разместить микросхемку датчика Холла. Но тут народ чуть выше подсказывает, что можно взять и каждый двигатель подключить через контроллер ESC, эту тему надо, конечно, поизучать.
А если с этими двигателями. Навскидку. Можно прикрепить на муфту или на обратную сторону колеса магнитик. А на корпусе разместить микросхемку датчика Холла. Но тут народ чуть выше подсказывает, что можно взять и каждый двигатель подключить через контроллер ESC, эту тему надо, конечно, поизучать.
0
Sign up to leave a comment.
Роботостроительство – делаем базовую платформу для будущего робота