Страница 2 из 9
Шаговый двигатель
Добавлено: 03 дек 2017, 18:49
vacz
Проверяю, все работает. Проверяйте у себя.
_uVideoPlayer({'url':'
https://www.youtube.com/watch?v=GT8nOQ0 ... 04TY1ElwvY');
Шаговый двигатель
Добавлено: 03 дек 2017, 22:25
Fix
vacz писал(а):Проверяю, все работает. Проверяйте у себя.
Работает тоже только пищит иногда
Шаговый двигатель
Добавлено: 07 дек 2017, 14:36
vto83
Подскажите а как можно и дисплей добавить, я читал описание что нельзя
Блок совместно с блоком дисплея не использовать! Возможен сбой частоты вращения двигателя, так как время програмного цикла дисплея,превышает период генератора в блоке. Для совместной работы с дисплеем необходим другой блок, на прерываниях. ка можно реализовать ?
Шаговый двигатель
Добавлено: 07 дек 2017, 17:17
diman27
Привет всем, а если мне надо что бы двигатель вращался бесконечно x определенной скоростью что мне сделать с G-steps?
Шаговый двигатель
Добавлено: 07 дек 2017, 18:21
vacz
Цитата vto83 () Подскажите а как можно и дисплей добавить
Блоки найдете в этой теме на один и четыре шаговых двигателя.
К стати: в сообщении №4, нажмите на спойлер. Там два этих блока уже есть.
Цитата diman27 () а если мне надо что бы двигатель вращался бесконечно x определенной скоростью
Просто поставьте блок генератора и меняйте на нем частоту (скорость)
Шаговый двигатель
Добавлено: 10 дек 2017, 15:41
diman27
Не, вы не поняли. G-steps как вывести, что бы двигатель не останавливался?
Шаговый двигатель
Добавлено: 11 дек 2017, 16:40
vacz
Этот блок не проектировался для непрерывного вращения ШД. Добавьте к нему G-SM, для совместной работы по количеству витков и для непрерывной работы.
Шаговый двигатель
Добавлено: 15 дек 2017, 13:36
eugeneb
Уважаемый vacz!
Нет ли у вас варианта блока, который строит "трапецию" скорости?
То есть учитывается ещё один параметр - ускорение/замедление(имп/с^2),
а параметр Speed является ограничением сверху.
Шаговый двигатель
Добавлено: 15 дек 2017, 17:51
vacz
Если я Вас понял, то поставьте блок Limit. На входе можете менять скорость больше /меньше. На входах Min и Max установите ограничения - минимальные и максимальные значения скорости(частоты).
Попробуйте. Должно работать.
Шаговый двигатель
Добавлено: 15 дек 2017, 18:44
eugeneb
Да, поняли правильно.
Наверное теперь мне надо организовать рост скорости
по треугольному закону. Половину заданного объёма импульсов
задание скорости будет расти, а вторую половину будет падать.
Блок ограничения сделает из этого треугольника трапецию.
Вот только как построить этот закон: как функцию времени или
как функцию выданных импульсов? Если времени, то чем мерять
время?
А скорость у вас в каких единицах задаётся?
Шаговый двигатель
Добавлено: 15 дек 2017, 19:56
vacz
Вы откройте блок через редактирование. Он собран на встроенных блоках. Импульсы подаются на G-SM в микросекундах.
Ну а изменение частоты можно организовать примерно по такой схеме:
Шаговый двигатель
Добавлено: 16 дек 2017, 13:58
eugeneb
А-а, так Speed у вас - это не скорость, это полупериол частоты! Это не то!
В этом варианте скорость (частота СТЕП) будет меняться по гиперболическому
закону, а не по линейному. К тому-же ступенчато.
Вот и у меня пока не получается сделать линейное изменение скорости.
Добавлено (16.12.2017, 13:58)
---------------------------------------------
Чтобы получить линейный закон изменения скорости(частоты), период
должен меняться по гиперболе. Вот по такой формуле:
T=1/(At), где А-заданное ускорение (имп/с^2), а t-текущее время.
Вопрос: как в ФЛПрог получить текущее время? Есть ли такие блоки?
Шаговый двигатель
Добавлено: 18 дек 2017, 16:35
vacz
Конструктивно ШД выполнен так, что при подаче импульса напряжения, поворот ротора ШД осуществляется на некоторый угол, или, как принято говорить ШАГ, отсюда и название двигателя. Для схемы управления шаговым двигателем применяется регулируемый генератор импульсов. Скорость вращения шагового двигателя определяется только частотой следования импульсов управления и она всегда будет ступенчатой. Для сглаживания наиболее эффективным является использование микрошагового режима управления. Системы управления с дроблением шага, благодаря постепенному смещению ротора (дробление шага на 1/8, 1/16 или 1/32) уменьшают механические колебания.
[spoiler][/spoiler]
Говорить о линейности управления, относительно шагового двигателя, возможно наверно только условно. Не знаю Ваших задумок и пожеланий.
Шаговый двигатель
Добавлено: 18 дек 2017, 16:39
vacz
Вот попробуйте блок управления ШД ( может быть пригодится) по такому принципу:
[spoiler=Спойлер][/spoiler]
схеме:[spoiler=Спойлер][/spoiler]
[spoiler=Спойлер][/spoiler]
Блок работает в режиме: ПУСК - ступенчатое увеличение скорости ШД в течении заданного времени - набор максимальных оборотов (заданных) - работа на заданных оборотах в течении заданного времени - ступеннчатое снижение оборотов в течении заданного времени - остановка при достижении заданных минимальных оборотов.
вход - "seconds": установка времени увеличения/снижения скорости (частоты) в секундах.
вход - "speed Min": установка минимальной скорости (частоты) в микросекундах. Чем выше значение, тем меньше начальная скорость. Подбирается опытным путем. (У каждого ШД есть точка начала набора скорости. До достижения определенной частоты вращения, ШД не будет реагировать на увеличение скорости (по тех.характеристике)).
[spoiler][/spoiler]
вход - "speed Max": установка максимальной скорости (частоты) в микросекундах. Чем ниже значение, тем больше начальная скорость.
вход - "delay sec": установка времени работы на максимальной скорости (частоте).В секундах.
вход - "pusk": начало работ
выход - "step": выход импульсов (на STEP (PUL) драйвера ШД).
При желании можно переделать под свои нужды.
Добавлено (18.12.2017, 16:39)
---------------------------------------------
Видео:[spoiler=Спойлер]_uVideoPlayer({'url':'
https://www.youtube.com/watch?v=Ap4KwKu ... 04O81EqVL2');[/spoiler]
Шаговый двигатель
Добавлено: 18 дек 2017, 16:41
vacz
файлы:
Шаговый двигатель
Добавлено: 19 дек 2017, 13:23
eugeneb
О-о, столько накрапал, vacz, браво!
Однако, всё неправильно.
Вы меня не слышите.
Перечитайте моё сообщение №32. Внимательно.
И, для начала, перестаньте переменные с размерностью "время" называть "скоростью".
Это обратные друг к другу величины.
Вечером поподробнее напишу.
А пока вопрос (без подвоха): как вы получили первый график в сообщении №34 ?
Шаговый двигатель
Добавлено: 19 дек 2017, 17:19
vacz
Для начала, давайте определимся. Мы о каком двигателе разговариваем? Если о коллекторном, то - частота вращения якоря коллекторного двигателя напрямую зависит от интенсивности магнитного поля, которое, в свою очередь, прямо пропорционально напряжению. То есть, чтобы увеличить или уменьшить обороты, достаточно повысить или снизить уровень питания.
Если говорим о шаговом двигателе(совершенно другой тип двигателей постоянного тока), то - скорость вращения шагового двигателя определяется только частотой следования импульсов управления и она всегда будет ступенчатой. То есть, чтобы увеличить или уменьшить обороты, необходимо повысить или снизить частоту следования импульсов.
Ну , а теперь давайте обратимся к Википедии. Что же такое скорость и частота?
Термин «скорость» используют в науке и в широком смысле, понимая под ним быстроту изменения какой-либо величины в зависимости от другой во времени. Так, например, говорят об угловой скорости. Угловая скорость — величина, характеризующая скорость вращения материальной точки вокруг центра вращения.
Частота — физическая величина, характеристика периодического процесса, равна количеству повторений или возникновения событий (процессов) в единицу времени.
Отсюда следует - Чтобы увеличить или уменьшить обороты (скорость изменение во времени) шагового двигателя, необходимо повысить или снизить частоту (быстроту изменения во времени) следования импульсов. Так, что Ваше изречение «перестаньте переменные с размерностью время называть скоростью. Это обратные друг к другу величины», в данном случае не уместны. Что касается надписи «Speed» (скорость), то не мной заведено обозначать этим словом входы, переменные в блоках управления двигателем. Они означают лишь значение длительности импульса, влияющее на скорость ШД и мы это прекрасно понимаем. Я, только придерживаюсь этой традиции.
Что касается построения графика. Я надеюсь, Вы видите, что написано на осях координат х и у.
Как построить График функции —( множество точек, у которых абсциссы являются допустимыми значениями аргумента x, а ординаты — соответствующими значениями функции у), надеюсь Вас учили этому в школе.
Ну и конечно Вам стоит определиться – что же Вы все таки хотите получить? С какими параметрами? Я не гадалка и не ясновидящий.
Шаговый двигатель
Добавлено: 19 дек 2017, 18:16
eugeneb
Дорогой vacz!
Я вовсе не считаю вас "глупеньким"!
Как раз наоборот, я обратился к вам с вопросом
по управлению ШД именно потому, что вижу, что вы
очень хорошо разобрались в ШД. Я помню, как вы
начинали разбираться на этом форуме и чего вы
добились сейчас. Один ваш намоточник достоин восхищения и выставок. Я тоже хорошо понимаю работу ШД, и вижу, что у вас в последнее время было много практики.
Я не слишком часто сталкиваюсь с ШД. Но вот
нарисовалась задача линейно разогнать и линейно
остановить ШД за одну секунду при общем количестве импульсов от 1500 до 3000 . (не факт, что задача имеет решение на ФЛПроге)
Спросил вас на всякий случай, чтобы сэкономить время, если повезёт.
Вы проделали много работы и выдали мне решение.
Спасибо вам огромное!
Но понимаете, какая закавыка.
"Платон мне друг, но истина дороже!" (с)
В ваших блоках по ШД есть методическая ошибка.
Её многие допускают. Просто в этой ветке представился
случай её обсудить. Если не хотите - давайте замнём.
Если угодно - неспешно разберёмся что к чему.
Только пожалуйста без выяснения у кого какое образование. Дело то простое, академиев не требуется
Шаговый двигатель
Добавлено: 19 дек 2017, 20:44
vacz
Согласен.
Всегда приветствую людей, добивающихся своей цели.
Изменение скорости сильно зависит от тех. характеристик ШД, характеристик нагрузки, трения, инерции и др. А также примененного драйвера. В основном , все заводские Step/Dir драйвера (заложено изготовителем), стартуют не на заданной частоте, а начинают движение с малой частотой и затем , через время переходят на заданную частоту.
eugeneb писал(а):Чтобы получить линейный закон изменения скорости(частоты), период
должен меняться по гиперболе. Вот по такой формуле:
T=1/(At), где А-заданное ускорение (имп/с^2), а t-текущее время.
Вопрос: как в ФЛПрог получить текущее время?
Что касается текущего времени в определенной точке, то наверно возможно получить его так:
[spoiler=Спойлер][/spoiler]
Давайте попробуем рассмотреть на примере. У нас на входе OnVal генераторе G-SM задается «Длина импульса» - 100 микросекунд . На выходе мы получаем импульсы, следующие с частотой – 100 микросекунд. Далее подаем их на вход счетчика CTU. На выходе счетчика получаем количество импульсов . Далее ставим блок умножения. 100 микросекунд умножаем на количество импульсов и на его выходе получаем время в каждой определенной точке. Например: через 1000 импульсов, текущее время будет составлять: t = 100 микросекунд х 1000 = 100000 микросекунд. Далее ставим блок деления на 1000000 (переводим микросекунды в секунды). И на выходе получаем: t = 100000микросекунд / 1000000 = 0,1 секунды.
Шаговый двигатель
Добавлено: 20 дек 2017, 13:51
eugeneb
Вот, прогнал свои хотелки через матпакет.
Это график частоты(скорости) импульсов, которые надо подать на ШД:
[spoiler=Спойлер][/spoiler]
В генераторах ФЛПрог нет такого параметра как частота. В качестве
задания на них надо подавать период (точнее полупериод) желаемой частоты.
Зависимость задания периода от времени выглядит так:
[c][/c]
[l]Так как нам для управления генератором нужно задавать
полупериод в милисекундах или в микросекундах, модифицируем
эту формулу так:
[c][/c][/l][l]Строим график по этой формуле:[/l]
[spoiler=Спойлер][/spoiler]
Лимит графиков кончился. Продолжу в следующем посте.