Комментарии 36
— почти одинаковый основной код
— одинаковые баги чипа
— возможность иметь в резерве лишний чип
— проще перераспределять задачи на два одинаковых контроллера.
проще перераспределять задачи на два одинаковых контроллера.А тут можно подробнее? В чем могут быть сложности?
Но основная причина это переиспользование кода и схемотехники — второй контролер надо отдельно изучать.
Рекомендация: выгружать не только тренды с датчиков, но и различные переключения состояний и метки алгоритмов управления — быстрее сможете отлаживаться по логам.
Эксель — это гемор, лучше использовать какой-нибудь Matlab / Python+matplotlib, или даже ImGUI на плюсах.
Если уж есть тензодатчик на ноге — то сервоприводы хорошо бы заменить на бесколекторники с управлением по току/моменту и энкодерами. Тогда получится динамику вместо кинематики подтянуть. А там прыжки, паучий галоп, рысь, иноходь… Непочатый край усовершенствований)))
Кстати, даже на видео с улучшенной математикой все равно видна неравномерность передвижения туловища робота. Как планируете решать данный вопрос?
Все ограничено фантазией и бюджетом))
По поводу неравномерности. В чем именно она заключается? Если вы про то, что он идет не по прямой, то это я джойстик немного отклонил. С движением по прямой проблем точно нет.
Если же это связано с тем, что он немного рывками двигается — тут да, нужно немного с конфигурацией движения поиграть.
Я не уверен что это можно сделать на сервах, но может быть режим бега? Его главное отличие в том, что мы слегка подпрыгиваем в момент толчка, момент касания можно было бы ловить тензодатчиками, если бы частота была выше.
Вы не думали о полном математическом описании? Если его сделать можно ввести оптимальное управление, что является довольно забавной штукой: можно будет указывать только точку куда и информацию о препятствиях, тогда он сможет сам рассчитывать траекторию движения обходя препятствия. Возможно понадобиться чуть больше вычислительной мощности, но реально реализуема. Гексапод имеет не сложную физическую модель. Пример модели можно найти в западной литературе. Расчет же управления можно делать не руками, а например Python+sympy. Потом управление уже написать на Си и заложить в МК.
Достаточно резиновых/силиконовых ножек.Там уже стоят на концах лап куски стержня от термопистолета. Возможно позже я подумаю над этим, но не сейчас. У меня горит внедрить новые сенсоры в гексапод :)
Его главное отличие в том, что мы слегка подпрыгиваем в момент толчкаТут сервы точно отпадают — не хватит момента для прыжка, а более мощные сервы более медленные, соответственно не смогут развить нужную скорость для прыжка.
можно будет указывать только точку куда и информацию о препятствиях, тогда он сможет сам рассчитывать траекторию движения обходя препятствияЭто в планах. Для распознавания препятствий есть камера, возможно поставлю лидар на него. Математика каждый раз совершенствуется.
Да, рывками движется.
Типа — www.infineon.com/dgdl/Infineon-TLV493D-A1B6-DataSheet-v01_10-EN.pdf?fileId=5546d462525dbac40152a6b85c760e80
P.S. у вас да уже решение готовое, рабочее, просто я смотрю для себя на сколько это будет сложнее ток+пложение в пространстве…
и еще Не могли бы вы чуть больше рассказать про DC-DC преобразователь на синхронном Mosfet… как собрать как считать, почему 6 каналов а не один большой и мощный, вы вроде пытались его сделать на 32f030, но в итоге у вас применено готовое решение на LM2678
на сколько это будет сложнее ток+пложение в пространствеБудет однозначно сложнее, расчетов больше :)
и еще Не могли бы вы чуть больше рассказать про DC-DC преобразователь на синхронном Mosfet… как собрать как считать, почему 6 каналов а не один большой и мощный, вы вроде пытались его сделать на 32f030, но в итоге у вас применено готовое решение на LM2678Там все не просто. Разрешения ШИМ на f030 не хватает для адекватной регулировки напряжения, там dV получается большой на каждый тик таймера. Но даже не в этом дело. Мои знания силовой электроники в тот момент были не очень и многие моменты я не учел, в итоге там мосфеты вышибало, либо их драйвер (дорогой засранец). Проще купить 6 готовых микрух с защитой от насыщения и прочими плюшками, чем ваять что-то свое. Намного дешевле выходит взять что-то относительно готовое, чем разрабатывать свое. Но он работал, правда не долго :)
Последнее время я очень ценю свое время и поэтому сначала смотрю как можно сделать все намного проще, быстрее, дешевле и на популярной элементной базе. Если я не могу найти что-то подобное, то уже пилю свое.
видео на youtube www.youtube.com/watch?v=0jyBiECoS3Q&t=15s&ab_channel=Zenta
и непреодалимое желание повторить сие чудо, но я не знаю с какой стороны подступиться…
Да, вопрос к Вам. На счет пластиковых дисков, у меня тоже пластиковые и зубчики при 15кг не слизывались. Может повезло. Я тоже поглядываю на металл, но у них есть резьба. Моя конструкция предполагает крепление диска к конечности, а не конечность к диску.
С какой стороны подступить? Я бы начал с питания. Собрал бы предполагаемый источник питания и нагрузил бы его. У меня суммарно приводы в среднем потребляют 13-15А при ходьбе. Вот примерно такую нагрузку можно подключить к источнику и посмотреть как он себя поведет (просадка напряжения, пульсации и прочее). В качестве нагрузки можно взять мощный резистор и вентилятор. Нагружать 18 приводов не очень удобно))
Приводы. MG996R. У меня их полная коробка, на 3 гексапода хватит))) Почему? А потому что они не смогли поднять гекса весом 6кг. Заявленные характеристики очень завышены и точность низкая, т.к. они аналоговые.
Я использую DS3218MG
Если нужна консультация, то мы можем перейти в более удобное место для этого (почта, ватсап)
просто вот прикидываю
батарея 900-1000г
приводы 55*25
пластик на корпус ±1000
преобразователи питания 3*75
контроллеры и прочая электроника 300г
метизы 300
охдаждение 200
итого около 4кг, в п ринц даже если 6кг/см усилие привода, то наш паук легко и непринужденно может перемещаться поджав ноги под себя если он единовременно становится не меньше чем на 3 ноги
Разработка hexapod с нуля (часть 10) — датчики касания