|
Возможно ли определить пропуск шага шаговым двигателем., Без энкодера, из электричества. |
|
|
|
Jun 13 2017, 15:47
|
Профессионал
    
Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884

|
Есть шаговый двигатель с не шибко хитрым контроллером, без излишней самодеятельности (не trinamic).
Вопрос: можно, измерив с него текущее напряжение и ток фаз, зная скорость движения, уставки, и все остальное что знает контроллер управления, определить, пропустил ли двигатель шаг.
Говорят, что некто AlexMos при создании подвеса беспилотника на bldc исследовал что-то подобное, но я не нашел этой статьи. Если кто видел киньте ссылочку плз.
--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
|
|
|
|
|
 |
Ответов
|
Jun 14 2017, 22:34
|
Профессионал
    
Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884

|
Цитата(Эдди @ Jun 14 2017, 23:19)  У них еще бывают проблемы на нормальной скорости с концевиков съехать. Поэтому в предыдущей железяке мне пришлось делать простенькое управление разгоном. по ходу кто-то пытался односкоростную коробку скоростей изобрести) Цитата(Эдди @ Jun 14 2017, 23:19)  Вот чтобы с такой неприятной бякой не возиться, лучше сразу драйвер взять, который умеет разгон/торможение и детектирование всяких неприятностей. за исключением последних тринамиков, из ИНТЕГРАЛЬНЫХ драйверов никто насколько знаю не умеет сам разгон торможение делать, да и тринамик не рампу исполняет, а только генерирует себе сам импульсы дробления шага, работая в микрошаговом режиме с большим коэффициентом деления (avr контроллеры, которых во множестве для всяких 3d принтерах не могут импульсов давать больше 40 Кгц, а в режиме дробления на 128 получится улитка, вот тринамик и генерирует ЗАПОЛНЕНИЕ импульса). Рампу всегда отрабатывает контроллер, и без нее от шагового привода добиться приличных скоростей невозможно, дабы с моментом у ШД из всех приводов хуже всего, насколько я понимаю. Всякие навороченные драйверы-модули - типа leadshine и тех же тринамиков другое. Но они со своими фишками больше похожи на сервопривод - такой привод называется уже гибридным шаговым - там в одном флаконе может быть и рампа и энкодер и антирезонанс и дробление и конский ценник и габарит. Тут уж на любителя, и существенно зависит все от контроллера верхнего уровня - что он понимает и может. Цитата(Эдди @ Jun 14 2017, 23:19)  Другой неприятностью было управление затвором на TLE5205: я через него разряжал кондей 2200мкФ на обмотку затвора, так мост в первые миллисекунды думал, что в цепи КЗ. Но с задачей справлялся. В логике пришлось опрашивать на КЗ только когда кондей достаточно разрядится после подачи команды... В современных интегральных драйверах столько клевых фенечек (например микрошаг/ослабление тока удержания в простое), и они такие дешевые, что пытаться слепить что-то такое на коленке имеет смысл только космоса ради, как khach например.
--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
|
|
|
|
|
Jun 15 2017, 06:51
|
Знающий
   
Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250

|
Цитата(a123-flex @ Jun 15 2017, 01:34)  (avr контроллеры, которых во множестве для всяких 3d принтерах не могут импульсов давать больше 40 Кгц, а в режиме дробления на 128 получится улитка, вот тринамик и генерирует ЗАПОЛНЕНИЕ импульса). Этим говном я пользоваться не собираюсь, обычно использую для CLK генерацию с таймера на STM32 — а там и 16МГц не проблема. Но в реальности движки быстрей 500 шагов в секунду не могут делать, т.е. даже на дроблении 1/256 нужно не больше 128кГц выдавать. А насчет "авторазгона", похоже, плохо я даташит почитал. Что-то я думал, что кое-какие последние тринамики вообще не нуждаются в сигналах CLK/DIR и тупо по SPI работают. Но это не беда: при помощи коротенького массива (uint32_t членов на 16) и DMA можно разгон-торможение элементарно реализовать. Плохо только, что для счета шагов нужно еще один таймер заводить. Ну или в прерывании колупаться. Цитата В современных интегральных драйверах столько клевых фенечек (например микрошаг/ослабление тока удержания в простое), и они такие дешевые, что пытаться слепить что-то такое на коленке имеет смысл только космоса ради, как khach например. В случае затвора современные драйвера не спасут, т.к. там нужно генерировать короткий импульс прямой или обратной полярности с довольно высокой напругой (24-36В) и длительностью чуть ли не до сотни миллисекунд. А некоторые затворы нужно еще и удерживать в крайнем положении низким напряжением (3..5В).
|
|
|
|
|
Jun 15 2017, 07:00
|
Профессионал
    
Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884

|
Цитата(Эдди @ Jun 15 2017, 09:51)  Этим говном я пользоваться не собираюсь, обычно использую для CLK генерацию с таймера на STM32 — а там и 16МГц не проблема. Я бы вот так словами не бросался, не зная броду. Понимаю, avr сейчас звучит смешно, но те кто реализовывал в них стеки - молодцы. Те, кто с пеной у рта рассуждает о ПЛИС или АРМе, редко задумываются, что огромные возможности этого железа часто ненужный избыток... Цитата(Эдди @ Jun 15 2017, 09:51)  Но в реальности движки быстрей 500 шагов в секунду не могут делать, т.е. даже на дроблении 1/256 нужно не больше 128кГц выдавать. Тут я бы тоже не горячился. Все от механики зависит, при нормальном управлении на ремнях можно двигаться гораздо быстрее - до 2 кГц минимум... Цитата(Эдди @ Jun 15 2017, 09:51)  А насчет "авторазгона", похоже, плохо я даташит почитал. Что-то я думал, что кое-какие последние тринамики вообще не нуждаются в сигналах CLK/DIR и тупо по SPI работают. абсолютно нет. SPI интерфейс для сервисов только. Под авторазгоном подразумевается изменение частоты ЗАПОЛНЕНИЯ ВНУТРИ ИМПУЛЬСА. Цитата(Эдди @ Jun 15 2017, 09:51)  Но это не беда: при помощи коротенького массива (uint32_t членов на 16) и DMA можно разгон-торможение элементарно реализовать. Плохо только, что для счета шагов нужно еще один таймер заводить. Ну или в прерывании колупаться. Эта придумка мне нравится. Но все же я не понимаю, зачем Вы сами поднимали этот проект, если есть куча готовых реализаций. Кроме того, так красиво это выглядит только на пальцах. Как только вы начнете отрабатывать точные траектории в n координатах с рампами, тут же воткнетесь в необходимость реализовывать еще и свой слайсер, что очень увлекательно - достаточно скачать любой готовый, и посмотреть на его интерфейс. Энтузиазм сразу пойдет на убыль... Хотите увидеть все вместе во всей красе - скачайте исходники LinuxCnc(Emc2). Еще раз повторюсь - современное решение управления приводом в станке - полноценный 3 уровневый стек, я бы оценил трудоемкость в 2-3 года профессионального программиста. Ну и напоследок задумайтесь над одним фактом. Качественный разгон - с непрерывно изменяющимся шагом. Современные драйвера дают микрошаг 128. Хороший станок гонится до 3 кГц. Автогенерация заполнения тринамика как по мне мутная вода - они там сами себе аппроксимируют ВАШЕ изменение частоты - че они напридумывают большой вопрос, а у вас траектория определена строго. Это значит в идеале вы должны получить плавно возрастающую частоту от 0 до 384 кГц (помножить на 3 оси минимум)), при этом фишка автоматического инкремента периода таймера не катит, тк ограничивает допустимые ускорения - значит вы будете терять в производительности машины... Как Вы сгенерите такое таймером STM ? Но и это еще цветочки. А как насчет кривых ? А еще интереснее кривые по траектории со строго определенной скоростью (задача дозирования клея/..., фрезерование) ? Тут уже и STM может мало показаться, dsp нужен, и таймер вообще ни о чем. Короче я хочу сказать, что начиная решать такие задачи, Вы должны точно понимать, какой результат Вам нужен. 70% поля покрывает AVR, а специфические задачи требуют таких затрат, что прежде нужно тщательно считать купляшки, дабы не бросить все посередине. Цитата(Эдди @ Jun 15 2017, 09:51)  В случае затвора современные драйвера не спасут, т.к. там нужно генерировать короткий импульс прямой или обратной полярности с довольно высокой напругой (24-36В) и длительностью чуть ли не до сотни миллисекунд. А некоторые затворы нужно еще и удерживать в крайнем положении низким напряжением (3..5В). У современных интегральных драйверов никакого затвора нет - только step/dir. Многие позволяют рабочее напряжение 36В и выше.
--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
|
|
|
|
Сообщений в этой теме
a123-flex Возможно ли определить пропуск шага шаговым двигателем. Jun 13 2017, 15:47 somebody111 Отслеживать положение ротора по энкодеру. Вы ему з... Jun 13 2017, 16:18 a123-flex Цитата(somebody111 @ Jun 13 2017, 20:18) ... Jun 13 2017, 16:22  Tanya Цитата(a123-flex @ Jun 13 2017, 19:2... Jun 13 2017, 16:29   a123-flex Цитата(Tanya @ Jun 13 2017, 20:29) Если н... Jun 13 2017, 16:33    Tanya Цитата(a123-flex @ Jun 13 2017, 19:3... Jun 13 2017, 16:48     a123-flex Цитата(Tanya @ Jun 13 2017, 20:48) Очень ... Jun 13 2017, 16:49    AlexandrY Цитата(a123-flex @ Jun 13 2017, 19:3... Jun 13 2017, 20:12     a123-flex Цитата(AlexandrY @ Jun 13 2017, 23:12) Та... Jun 13 2017, 20:31      AlexandrY Цитата(a123-flex @ Jun 13 2017, 23:3... Jun 14 2017, 08:17       a123-flex Цитата(AlexandrY @ Jun 14 2017, 12:17) Та... Jun 14 2017, 08:50        AlexandrY Цитата(a123-flex @ Jun 14 2017, 11:5... Jun 14 2017, 16:29 Николай Семёнович попадалась микросхема, которая монеторит эдс и ток... Jun 13 2017, 16:42 a123-flex Цитата(Николай Семёнович @ Jun 13 2017, 20... Jun 13 2017, 16:42 Николай Семёнович напомните как эдс по ангицки - тогда я быстрей най... Jun 13 2017, 16:43 a123-flex Цитата(Николай Семёнович @ Jun 13 2017, 20... Jun 13 2017, 16:45  Николай Семёнович Цитата(a123-flex @ Jun 13 2017, 19:4... Jun 14 2017, 03:42   amaora Цитата(Николай Семёнович @ Jun 14 2017, 06... Jun 14 2017, 04:05    dinam Драйверы, умеющие определять пропуск шагов делают ... Jun 14 2017, 05:16     a123-flex Цитата(dinam @ Jun 14 2017, 09:16) Драйве... Jun 14 2017, 06:00 amaora Другими словами вам нужно определять положение без... Jun 13 2017, 18:14 Эдди Еще интересен TMC2660 — на работе планирую заказа... Jun 14 2017, 05:20 a123-flex Цитата(Эдди @ Jun 14 2017, 08:20) Еще ин... Jun 14 2017, 10:23  khach Цитата(a123-flex @ Jun 14 2017, 12:2... Jun 14 2017, 10:34   a123-flex Цитата(khach @ Jun 14 2017, 13:34) А поте... Jun 14 2017, 10:52  Эдди Цитата(a123-flex @ Jun 14 2017, 13:2... Jun 14 2017, 12:41   a123-flex Цитата(Эдди @ Jun 14 2017, 15:41) Не годи... Jun 14 2017, 16:40    AlexandrY Цитата(a123-flex @ Jun 14 2017, 19:4... Jun 14 2017, 19:29     a123-flex Цитата(AlexandrY @ Jun 14 2017, 22:29) Ну... Jun 14 2017, 19:38 khach Возможно определять по изменению индуктивности обм... Jun 14 2017, 08:53 a123-flex Цитата(khach @ Jun 14 2017, 12:53) Возмож... Jun 14 2017, 08:59  khach Цитата(a123-flex @ Jun 14 2017, 10:5... Jun 14 2017, 09:15   a123-flex Цитата(khach @ Jun 14 2017, 13:15) Контро... Jun 14 2017, 09:43 khach HFI ( high frrequency injection) можно реализовать... Jun 14 2017, 09:56 a123-flex Цитата(khach @ Jun 14 2017, 12:56) HFI ( ... Jun 14 2017, 10:04  khach Цитата(a123-flex @ Jun 14 2017, 12:0... Jun 14 2017, 10:14    Эдди Цитата(a123-flex @ Jun 15 2017, 10:0... Jun 15 2017, 07:35     a123-flex Цитата(Эдди @ Jun 15 2017, 10:35) Ни одно... Jun 15 2017, 07:40    Tanya Цитата(a123-flex @ Jun 15 2017, 10:0... Jun 15 2017, 09:05     a123-flex Цитата(Tanya @ Jun 15 2017, 12:05) Ускоре... Jun 15 2017, 09:12   dinam Цитата(Эдди @ Jun 15 2017, 13:51) Но в ре... Jun 15 2017, 08:34    Эдди Цитата(dinam @ Jun 15 2017, 11:34) Странн... Jun 15 2017, 09:15     a123-flex Цитата(Эдди @ Jun 15 2017, 12:15) Разные ... Jun 15 2017, 09:29 khach В качественном станке в какой-то момент отказывают... Jun 15 2017, 09:34 a123-flex Цитата(khach @ Jun 15 2017, 12:34) В каче... Jun 15 2017, 09:40  khach Цитата(a123-flex @ Jun 15 2017, 11:4... Jun 15 2017, 10:33   a123-flex Цитата(khach @ Jun 15 2017, 13:33) В осно... Jun 15 2017, 12:20 amaora Может пора уже говорить об оптимальном векторном у... Jun 15 2017, 18:32 a123-flex Цитата(amaora @ Jun 15 2017, 21:32) Может... Jun 15 2017, 18:46 Николай Семёнович Нашёл.
ЦитатаNanotec releases sensorless control f... Jun 17 2017, 16:09 Николай Семёнович И ЭДС по англицкому не "voltage" а ... Jun 17 2017, 18:58 AlexandrY Цитата(Николай Семёнович @ Jun 17 2017, 21... Jun 17 2017, 19:47  Николай Семёнович Цитата(AlexandrY @ Jun 17 2017, 22:47) вы... Jun 17 2017, 20:06   AlexandrY Цитата(Николай Семёнович @ Jun 17 2017, 23... Jun 17 2017, 20:42 Николай Семёнович у шагового двигателя при данной комбинации запитан... Jun 17 2017, 21:22 AlexandrY Цитата(Николай Семёнович @ Jun 18 2017, 00... Jun 18 2017, 08:01  Николай Семёнович Цитата(AlexandrY @ Jun 18 2017, 11:01) Чт... Jun 18 2017, 19:16   khach Цитата(Николай Семёнович @ Jun 18 2017, 21... Jun 18 2017, 23:23    Эдди Цитата(khach @ Jun 19 2017, 02:23) Была у... Jun 19 2017, 06:10     b32b Цитата(Эдди @ Jun 19 2017, 09:10) А ведь ... Jun 19 2017, 09:06      Сергей Борщ QUOTE (b32b @ Jun 19 2017, 12:06) Это пол... Jun 19 2017, 10:06       AlexandrY Цитата(Сергей Борщ @ Jun 19 2017, 13:06) ... Jun 19 2017, 10:12    Огурцов Цитата(khach @ Jun 18 2017, 23:23) Вот то... Jun 19 2017, 16:49 khach Получить пропуск шагов при торможении это надо оче... Jun 18 2017, 09:52 Сергей Борщ QUOTE (AlexandrY @ Jun 19 2017, 13:12) Из... Jun 19 2017, 11:06
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|