А можно подробнее как оптимизировать для Евклида до O(logN)? Ибо как я предполагаю, здесь этот метод оптимизации будет основан на предсортировке новых данных, а не случая, когда данные лежат как есть. Но тогда, что мешает заменой функции предсортировки сделать такую же оптимизацию?
Я как-то не понял. Алгоритм поиска ближайших же описан вполне себе универсально. Есть точки в многомерном пространстве поиска, есть функция расстояния от двух этих точек. Заменой функции можно работать на любом таком пространстве с данными любой сложности.
Честное слово, электроника в следующий раз будет уже не такая велосипедная.) Но, скорее всего соберу сам, если и не куплю, но соберу уже на готовых чипах и использую проверенные решения.
когда Вы такие замечательные печатные платы делаете
Я не понял сарказм это или нет. Но в любом случае, костыли, как уже писалось, захотелось. Уж извиняйте.
Я уже понял, что тут не нужно костылировать и лучше использовать готовые схемы. Это будет. Но нужно подготовится. К этому и идет. Просто не могу так сразу все купить.
Понятно. Сработает, если я не буду обесточивать, а устрою ШИМ в статике на двигателе как временную меру на сейчас? То есть, по крайней мере снижу ток на двигателе, но не буду так по харду обесточивать.
Извините. Но, что я и писал. Это деньги. Хобби оно у вас хобби, только все решили купить (по крайней мере электронику) и не заморачиватся. Оно и правильно, ваша цель производить. Готов поспорить, но какой-то профит вы от этого имеете. Моя цель, собрать, прокачаться и, если получится, использовать (в результате я не был уверен).
ЧСВ оно ЧСВ. Свое вы повышаете дивергентным поведением. Уж как вижу я. Никого обижать не хочу. И спорить тоже. Разные условия, разные решения. Просто примите это.
На случай про прогонять через каждую обмотку 1.8 А в статике я как раз это предусмотрел в контроллере. Чтобы не держать двигатель под напряжением, завел дополнительный таймер сброса. Сбрасывается счетчик таймера в 0, на каждую коммутацию. Когда прерывание по этому таймеру сработает, все выводы коммутации обмоток будут сброшены в 0, и на драйвере соответственно тоже. Период таймера 104,576 мс. Собственно, можно уменьшить.
Да, вариант не лучший, но делался специально, чтобы не гонять через двигатель токи. Такое большое время выбрал, потому, что не придумал как это рассчитать или чем руководствоваться. Когда придет «последний» перед задержкой такт, ротор успеет занять новое положение.
В статье я про это писал. Кажется это похоже на заготовку чоппера. Только чоппер, все же, использует данные о токе и режет соответственно. На контроллере есть один свободный компаратор. Можно будет попытаться и это расширить, но наверно, все же, буду делать на готовом железе. Делать контроллер на МК, как-то получается не слишком качественно.
Про микрошаги я в курсе. Думаю, пока не время для этого. Есть много других более значительных косяков, как вы можете видеть.
Ну. Вроде как, когда первый раз увидел даташит и схемы в сети, сразу задался вопросом зачем резисторы через SENSA/B. Понимал, что для обратной связи по току, но не понял как рассчитывать и что мне это даст. И нашел, в принципе, то что искал, а именно, что вроде можно и без них, так как чего-то сверх классного не планировал делать, все равно не вышло бы с первой попытки, а найти на пару Ватт резисторы по 0.5 Ом поленился, если честно.
Пересмотрел даташит. Вроде понял, что чопперный режим просто рубит сигналы обмоток (почти как ШИМ, только не по времени, а по току) чтобы стабилизировать ток на обмотках ШД, что, в принципе, должно убить лишние вибрации и ускорения, что сделает вращение стабильнее. Однако, я не знаю точных цифр, но что-то мне подсказывает, что это позволит дожать еще 10% до максимума двигателей, что, пока, что не такой приоритет для меня.
Почему если я вкачу 24 В на двигатели драйвера сразу выгорят? Если по току не будет превышений, и взяв запас на выбросы от катушек при переключении, то ничего не должно выгореть. Конечно, у меня сопротивление обмоток 5 Ом, что дает 4.6 А через драйвер. И это много. Но ведь я же и не собирался вкатывать эти 24 на ту же схему. Я всегда рассчитываю максимальные параметры, чтобы не пожечь. По-этому схема нового драйвера тоже будет другая.
В общем. Я понял ваше замечание и перечитал даташит. Извлек новое про стабилизацию. Спасибо. Учту.
Извините, но не все такие таланты с первого наскоку. Форумы терроризировать нету сил. Все будут мычать одну песню. Купи нормальные направляющие. Закажи фрезеровку из металла. Или купи готовый. Все это деньги или некоторые связи. Ни того ни другого, к сожалению, у меня нету. На форумах люди уже забыли, что есть обстоятельства, есть причины по которым все действительно хорошие и качественные варианты иногда не вариант для конкретной ситуации и забывают дать ответ на конкретный вопрос.
Все постигалось самостоятельно. Не очень хочется слушать продолжение по поводу того, что все плохо. Да, не хорошо. Но это далеко не конец. Именно по-этому в самом начале я написал спойлер. А в конце подвел итог и предложил пути улучшения. И именно потому, что у меня стоит цель сделать это для себя и для собственных нужд, для собственного удовлетворения я это сделал так, как смог, как устраивает меня. Один.
P.S. Так как это первый для меня подобный вброс, первый раз и отвечу.
Метал в виде уголков, скоб и стяжек + гайки с болтами и шурупы — <30$
Мебельные направляющие — <20$
Шпилька — ~3$
Электроника (все целиком без компьютера) — ~30$
Компьютер — 0$
В сумме около 100 — 120$. Точнее я не скажу. Но! Больше волосатое Но! Ибо это была первая попытка, то эти цифры на сборку без косяков и правок. А так как оные все же присутствовали, то можно докинуть еще 30$. Итого 150$.
Что поделать то теперь? Пойду на форум десятиклассников.
На профильном форуме ЧПУшников люди на этом сразу деньги стараются делать и вкладывают в производство соответственно.
Более того, так и задумывалось. Этот инструмент, каким бы кривым он не вышел, получился точнее моих рук. Следующий шаг, собрать новый станок, более жесткий. Уже спроектирован. Уже фанерка 18 мм попилена. Продолжаю делать. А после будет 3D принтер. А после, и еще одна довольно классная штука. Но сначала закончу то, что начал.
Я как-то не понял. Алгоритм поиска ближайших же описан вполне себе универсально. Есть точки в многомерном пространстве поиска, есть функция расстояния от двух этих точек. Заменой функции можно работать на любом таком пространстве с данными любой сложности.
Я не понял сарказм это или нет. Но в любом случае, костыли, как уже писалось, захотелось. Уж извиняйте.
Я уже понял, что тут не нужно костылировать и лучше использовать готовые схемы. Это будет. Но нужно подготовится. К этому и идет. Просто не могу так сразу все купить.
ЧСВ оно ЧСВ. Свое вы повышаете дивергентным поведением. Уж как вижу я. Никого обижать не хочу. И спорить тоже. Разные условия, разные решения. Просто примите это.
На случай про прогонять через каждую обмотку 1.8 А в статике я как раз это предусмотрел в контроллере. Чтобы не держать двигатель под напряжением, завел дополнительный таймер сброса. Сбрасывается счетчик таймера в 0, на каждую коммутацию. Когда прерывание по этому таймеру сработает, все выводы коммутации обмоток будут сброшены в 0, и на драйвере соответственно тоже. Период таймера 104,576 мс. Собственно, можно уменьшить.
Да, вариант не лучший, но делался специально, чтобы не гонять через двигатель токи. Такое большое время выбрал, потому, что не придумал как это рассчитать или чем руководствоваться. Когда придет «последний» перед задержкой такт, ротор успеет занять новое положение.
В статье я про это писал. Кажется это похоже на заготовку чоппера. Только чоппер, все же, использует данные о токе и режет соответственно. На контроллере есть один свободный компаратор. Можно будет попытаться и это расширить, но наверно, все же, буду делать на готовом железе. Делать контроллер на МК, как-то получается не слишком качественно.
Про микрошаги я в курсе. Думаю, пока не время для этого. Есть много других более значительных косяков, как вы можете видеть.
Пересмотрел даташит. Вроде понял, что чопперный режим просто рубит сигналы обмоток (почти как ШИМ, только не по времени, а по току) чтобы стабилизировать ток на обмотках ШД, что, в принципе, должно убить лишние вибрации и ускорения, что сделает вращение стабильнее. Однако, я не знаю точных цифр, но что-то мне подсказывает, что это позволит дожать еще 10% до максимума двигателей, что, пока, что не такой приоритет для меня.
Почему если я вкачу 24 В на двигатели драйвера сразу выгорят? Если по току не будет превышений, и взяв запас на выбросы от катушек при переключении, то ничего не должно выгореть. Конечно, у меня сопротивление обмоток 5 Ом, что дает 4.6 А через драйвер. И это много. Но ведь я же и не собирался вкатывать эти 24 на ту же схему. Я всегда рассчитываю максимальные параметры, чтобы не пожечь. По-этому схема нового драйвера тоже будет другая.
В общем. Я понял ваше замечание и перечитал даташит. Извлек новое про стабилизацию. Спасибо. Учту.
Все постигалось самостоятельно. Не очень хочется слушать продолжение по поводу того, что все плохо. Да, не хорошо. Но это далеко не конец. Именно по-этому в самом начале я написал спойлер. А в конце подвел итог и предложил пути улучшения. И именно потому, что у меня стоит цель сделать это для себя и для собственных нужд, для собственного удовлетворения я это сделал так, как смог, как устраивает меня. Один.
P.S. Так как это первый для меня подобный вброс, первый раз и отвечу.
В сумме около 100 — 120$. Точнее я не скажу. Но! Больше волосатое Но! Ибо это была первая попытка, то эти цифры на сборку без косяков и правок. А так как оные все же присутствовали, то можно докинуть еще 30$. Итого 150$.
На профильном форуме ЧПУшников люди на этом сразу деньги стараются делать и вкладывают в производство соответственно.