Страница 18 из 69 ПерваяПервая ... 816171819202868 ... ПоследняяПоследняя
Показано с 171 по 180 из 688

Тема: Программирование ПЛК110 [М02] для задач реального времени

  1. #171

    По умолчанию

    Цитата Сообщение от rovki Посмотреть сообщение
    можно подумать что у современных ЦП (МК) нет системы команд ...
    Конечно есть, только уже давно при программировании вычислительных устройств никто нулями и единицами не оперирует.

  2. #172

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    На практике никто момент инерции считать не будет. Это не тривиальная задача. А будут тупо, методом тыка, подбирать время разгона. Скажите у вас возникнут какие-то принципиальные проблемы, если на входе ФБ будет указано время, а не ускорение.
    И как это задать ускорение 10кГц/2сек ? Какое это будет число ? 5 что ли ?
    Понимаю я, что никто не будет "момент инерции считать".
    Но вариант "эта установка до 10кГц разгонится за 10 секунд и не околеет, значит ставим 10000/10=1000" должен быть прост и понятен.

  3. #173

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Понимаю я, что никто не будет "момент инерции считать".
    Но вариант "эта установка до 10кГц разгонится за 10 секунд и не околеет, значит ставим 10000/10=1000" должен быть прост и понятен.
    А разве будет не понятнее, если указать вместо 1000 просто 10. Хочу мол чтобы за 10 секунд ШД раскрутился до 10 кГц. Если не получается, то поменяю время разгона. Зачем чего-то делить ?

    А вы уж там в своей программе оперируйте какими угодно величинами.
    Последний раз редактировалось Newcomer; 25.09.2016 в 22:15.

  4. #174

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    А разве будет не понятнее, если указать вместо 1000 просто 10. Хочу мол чтобы за 10 секунд ШД раскрутился до 10 кГц.
    А вы уж там в своей программе оперируйте какими угодно величинами.
    Нет, понятнее не будет. Уверяю вас.

    Объясню на примере: нужно сделать 300 импульсов, предельная скорость 60 импульсов/сек.
    Внимание, вопрос: какое время разгона/торможения ставить?

    Потом оказывается, что нужно сделать 400 импульсов.
    Какое время разгона/торможения ставить?

    Уже здесь будет огромная проблема, т.к. даже если есть "время разгона/торможения для 300 импульсов, то совершенно неясно какие времена должны быть для 400"

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Скажите у вас возникнут какие-то принципиальные проблемы, если на входе ФБ будет указано время, а не ускорение.
    Более того. Вот реальная проблема, которая не позволяет сделать ФБ "по вашему ТЗ".
    Допустим, вы указали: "разгон за 5 секунд, торможение за 5 секунд, макс скорость 60 импульсов/сек, всего нужно 300 импульсов".
    Внимание, вопрос: как должен действовать ФБ?
    Должен ли он за первые 5 секунд пытаться выйти на макс скорость?



    Так вот: для каждой конкретной установки, ускорение и замедление -- константы. Т.е. их вообще изменять не нужно. Достаточно либо подобрать (опытным путём), либо методом тыка (поделить 10'000 Гц на желаемую длительность разгона до этой скорости) вычислить и всё.
    В итоге, на вход блоку нужно только "количество импульсов".

    Надо 300 импульсов -- блок сделает 300, вычислив сколько нужно разгоняться и сколько тормозить. Блок поймёт успеваем ли выйти на макс скорость или нет.


    Поэтому, ещё раз повторюсь: если сделать "указание времён", то будут проблемы "200 импульсов отрабатывает нормально, а на 250 пропуски". Будут вечные игры с подбором времени и т.п.
    Последний раз редактировалось Владимир Ситников; 25.09.2016 в 22:22.

  5. #175

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Надо 300 импульсов -- блок сделает 300, вычислив сколько нужно разгоняться и сколько тормозить. Блок поймёт успеваем ли выйти на макс скорость или нет.
    Каким это образом блок вычислит сколько времени надо ускоряться что бы не было пропусков импульсов. Что блок знает момент инерции конкретной механической системы ? Для каждой механической системы время разгона будет свое.
    Последний раз редактировалось Newcomer; 25.09.2016 в 22:28.

  6. #176

    По умолчанию

    Цитата Сообщение от ASo Посмотреть сообщение
    Ээээээ... Вы просто не понимаете, где и для чего применяют шаговый движок. В отличии от линейного.
    Появится реальный проект на моём алгоритме -- узнаем кто из нас не понимает.
    Давайте конкретику.

    Если при разгоне за 10 секунд до 10кГц нет проблем, то проблем не будет разогнаться до 3кГц за 3 секунды, до 20кГц за 20 секунд и т.п. (ну, если скорость в пределах допустимого для движка/установки)
    Поэтому я и говорю, что первично ускорение (X кГц/сек), а конкретная "длительность разгона" уже вторична.

  7. #177

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Каким это образом блок вычислит сколько времени надо ускоряться что бы не было пропусков импульсов. Что блок знает момент инерции конкретной механической системы ?
    Я же говорю: допустимое ускорение подаётся на вход блоку.
    Ему передаётся:
    enable
    количество импульсов
    ускорение при разгоне
    ускорение при замедлении

    Если вопрос только "в пропусках импульсов", то указываем "допустимое ускорение" и радуемся.
    Блок будет правильно отрабатывать все движения, понимая пределы для данной установки.

  8. #178

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Я же говорю: допустимое ускорение подаётся на вход блоку.
    Ему передаётся:
    enable
    количество импульсов
    ускорение при разгоне
    ускорение при замедлении

    Если вопрос только "в пропусках импульсов", то указываем "допустимое ускорение" и радуемся.
    Блок будет правильно отрабатывать все движения, понимая пределы для данной установки.
    Можно задать 10 как говорю я, а можно задать 10000/10 = 1000 как говорите вы и на выходе ФБ получится одинаковый результат. Только в моем случае не надо ничего делить.
    Последний раз редактировалось Newcomer; 25.09.2016 в 22:35.

  9. #179

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Можно задать 10 как говорю я, а можно задать 10000/10 = 1000 как говорите вы и не будет никакой разницы. Только в моем случае не надо ничего делить.
    Друг мой (или не друг). Вы хотите странного. Я уже сказал, что само по себе "время разгона" не несёт в себе достаточной информации.
    Нужна ещё информация о том "какая скорость будет достигнута при этом разгоне".

    Если очень уж хочется играться со временами, то можете потом сделать обёртку, которая вычисляет времена и всё такое.

    Но, с точки зрения физики процесса, ускорение является основополагающей величиной, поэтому сам блок будет работать именно с ускорением.
    Тащить лишнее преобразование "времени в ускорение" внутрь блока я не буду -- это лишь осложнит сам блок, и не принесёт абсолютно никакой пользы.
    Тут не только "в физике" дело, а ещё и в том, что в фактических формулах время не фигурирует. Либо скорость, либо ускорение. Время -- нет.



    Более того, если говорить об S кривых, то вы никогда не сможете вычислить "время разгона" для случая S кривой. Ну, даже если вы и сможете (вдруг?), то среднестатистический пользователь -- точно нет.
    Поэтому вынесение параметра "время разгона" будет мешать дальнейшим улучшениям блока. S-кривую уже просто так не получится добавить, т.к. у S-кривой понятие "время разгона" весьма относительно.
    Последний раз редактировалось Владимир Ситников; 25.09.2016 в 22:42.

  10. #180

    По умолчанию

    По вашему предельную частоту и время разгона надо держать в голове чтобы вычислить предельное ускорение. По моему ничего в голове держать и вычислять не надо, а надо тупо на входе блока задать предельную частоту и время разгона.
    Последний раз редактировалось Newcomer; 25.09.2016 в 22:43.

Страница 18 из 69 ПерваяПервая ... 816171819202868 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 38
    Последнее сообщение: 24.01.2022, 11:56
  2. Ответов: 10
    Последнее сообщение: 11.06.2021, 14:55
  3. часы реального времени
    от vetaly в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 28.08.2015, 16:21
  4. Таймер реального времени УТ1-РiС
    от ser10 в разделе Трёп (Курилка)
    Ответов: 0
    Последнее сообщение: 16.09.2010, 12:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •