Показано с 1 по 10 из 688

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от dima64 Посмотреть сообщение
    Снимаем команду ENABLE двигатель начинает торможение.
    Теперь, если в момент приближения скорости к MIN_SPEED снова включить ENABLE, то двигатель будет крутиться со скоростью MIN_SPEED. (Пока не наберет заданное количество импульсов или до перезагрузки, если бесконечное движение) Команда ENABLE уже ни на что не влияет.
    А вообще режим "сбавить скорость и продолжить на минимальной" нужен?
    В конкретном, случае, конечно, ошибка (не предусмотрен вариант моргания enable").

  2. #2

    По умолчанию

    Посмотрел ФБ PRU_STEPPER. Не понял почему PULSES_GENERATED объявлен как DWORD.

  3. #3

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Посмотрел ФБ PRU_STEPPER. Не понял почему PULSES_GENERATED объявлен как DWORD.
    QUANTITY : DWORD;
    PULSES_GENERATED: DWORD

    Л- логика, не?

    Какого типа ещё может быть PULSES_GENERATED?

  4. #4

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    QUANTITY : DWORD;
    PULSES_GENERATED: DWORD

    Л- логика, не?

    Какого типа ещё может быть PULSES_GENERATED?
    А что такое PULSES_GENERATED ? Где то, что подается на быстрый дискретный выход ПЛК ?
    Последний раз редактировалось Newcomer; 04.10.2016 в 12:30.

  5. #5

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    А что такое PULSES_GENERATED ?
    PULSES_GENERATED это количество фактически сгенерированных импульсов.

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Где то, что подается на быстрый дискретный выход ПЛК ?
    Как где?
    Внутри программы. Если вы не поняли, то у меня "самодостаточная программа". Т.е. заливаем PRU0.prg/PRU1.prg и всё. Можно управлять ШД.
    Номер выхода задаётся через OUT_NUM: BYTE; (* 1, 2, 3, or 4 *)

    Какой смысл делать выходной параметр "OUT", если вы его всё равно ни к чему подключить не сможете?
    Не в основном же цикле собрались переключать быстрые выходы?

    И, да, ОВЕН не разрешает создавать *.prg файлы из hardella, а адаптировать ШД программу "под ОВЕНовский beta-формат PRU ФБ" я смысла не вижу.

    С одной стороны, просто смысла нет. Ну кто реально будет через КДС и bat'ники создавать программы?! Есть желающие? Поднимайте руки! Только помните, что для сложения двух переменных нужен один блок, а для сложения переменной и константы -- другой.
    И, с другой стороны, моя ШД программа требует довольно много регистров и это будет тяжело подружить с "ОВЕН beta компилятором", т.к. ОВЕНовский вариант идёт совсем в противоположном направлении: у меня регистры активно переиспользуются по ходу программы, а ОВЕН вариант предполагает, что даже после простого блока PRU_ADD регистры переиспользовать нельзя. Пара ОВЕНовских блоков, и всё, закончились регистры.

    Не сказать, что мой блок идеально работает с регистрами, но мой компилятор сам догадывается какие регистры уже не нужны, а какие ещё нужны.
    Последний раз редактировалось Владимир Ситников; 04.10.2016 в 12:49.

  6. #6
    Пользователь
    Регистрация
    28.01.2011
    Адрес
    Новосибирск
    Сообщений
    79

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    PULSES_GENERATED это количество фактически сгенерированных импульсов.


    Как где?
    Внутри программы. Если вы не поняли, то у меня "самодостаточная программа". Т.е. заливаем PRU0.prg/PRU1.prg и всё. Можно управлять ШД.
    Номер выхода задаётся через OUT_NUM: BYTE; (* 1, 2, 3, or 4 *)

    Какой смысл делать выходной параметр "OUT", если вы его всё равно ни к чему подключить не сможете?
    Не в основном же цикле собрались переключать быстрые выходы?

    И, да, ОВЕН не разрешает создавать *.prg файлы из hardella, а адаптировать ШД программу "под ОВЕНовский beta-формат PRU ФБ" я смысла не вижу.

    С одной стороны, просто смысла нет. Ну кто реально будет через КДС и bat'ники создавать программы?! Есть желающие? Поднимайте руки! Только помните, что для сложения двух переменных нужен один блок, а для сложения переменной и константы -- другой.
    И, с другой стороны, моя ШД программа требует довольно много регистров и это будет тяжело подружить с "ОВЕН beta компилятором", т.к. ОВЕНовский вариант идёт совсем в противоположном направлении: у меня регистры активно переиспользуются по ходу программы, а ОВЕН вариант предполагает, что даже после простого блока PRU_ADD регистры переиспользовать нельзя. Пара ОВЕНовских блоков, и всё, закончились регистры.

    Не сказать, что мой блок идеально работает с регистрами, но мой компилятор сам догадывается какие регистры уже не нужны, а какие ещё нужны.
    Да, но при таком подходе мы теряем 4 входа и 2 или 1 (без PRU1) выхода. А вариантов задач может быть миллион. На каждую задачу придется свои PRU делать.

  7. #7
    Пользователь
    Регистрация
    28.01.2011
    Адрес
    Новосибирск
    Сообщений
    79

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    конкретно что Вы имеете ввиду, перестать управляться должны только быстрые входа/выхода, их захватила конкретная программа ПРУ, а простые у Вас тоже что ли ни на что не реагируют? Не заливайти ни чего в ПРУ и быстрые входа/выхода останутся в Вашем распоряжении
    Перестают управляться 2 быстрых (ПЛК-110.32) и первые 2 простых входов. Входы.jpg
    Не заливать, конечно можно, но и генерировать нечем будет. Нафига тогда эти PRU предложили?
    Последний раз редактировалось dima64; 04.10.2016 в 14:24.

  8. #8

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    как ему вернуть управление быстрыми входами/выходами в конфигуратор
    На этот вопрос (можно ли выводить результаты PRU программы в "plc configuration") тов. Филоненко говорит решительное нет. Ну, что, якобы, адреса памяти КДС назначает произвольно, что это в концепцию ПЛК110 не укладывается и т.п.

    С моей точки зрения, звучит, конечно, неубедительно. Свои fast encoder/fast counter программы в ОВЕН как-то сделали и в конфигуратор сумели вывести? Значит и для PRU программ такая возможность может быть. Да, возможно, это потребует доработку прошивки, но fast encoder же как-то сделали модулем в plc configuration?

    Тем не менее, над конкретно этим вопросом предлагаю не заострять внимание, а воспринимать его как "данность свыше".

    Обмен только через pruaccesslib.lib? Ну, ок.

    Конечно, и в части "обмена host-pru" можно сделать более удобные механизмы, но нет никакого смысла тратить время и силы на обсуждение механизмов обмена данными и plc configuration, если ОВЕН молчит про саму возможность составлять PRU программы.

  9. #9

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    что конкретно? Например появился такой вопрос к Ситникову, если человеку надоело играться с программой для ШД, как ему вернуть управление быстрыми входами/выходами в конфигуратор, есть empty блок который освободит работу ПРУ
    Стереть файл PRUx.prg
    Тролль-наседка, добрый, нежный и ласковый

  10. #10
    Пользователь
    Регистрация
    28.01.2011
    Адрес
    Новосибирск
    Сообщений
    79

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    А вообще режим "сбавить скорость и продолжить на минимальной" нужен?
    В конкретном, случае, конечно, ошибка (не предусмотрен вариант моргания enable").
    Я на этот глюк случайно попал. Было бы хорошо скорость на лету менять.

Похожие темы

  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

Ваши права

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