Собственно, в заголовке весь вопрос :-)
Подскажите, как сделать, чтобы генератор выдавал только один импульс, но каждый цикл.
Генератор
- scadapack
- Рядовой
- Сообщения: 83
- Зарегистрирован: 07 сен 2015, 05:18
- Откуда: Степногорск
- Имя: Вячеслав
- Благодарил (а): 1 раз
Генератор
Очень странная задача! Противоречивое условие. Или один импульс, или каждый цикл. Если каждый цикл, то это уже не один импульс, а импульсы с частотой сканирования. Вот примитивный пример, где при каждом сканировании программы, контроллер меняет состояние выходного сигнала.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- kipiaxxx
- Рядовой
- Сообщения: 79
- Зарегистрирован: 06 сен 2015, 14:15
- Откуда: Омск
- Имя: Сергей
- Благодарил (а): 1 раз
- Поблагодарили: 1 раз
Генератор
Спасибо, scadapack, за идею!
Подключил эту переменную к цифровому выходу. С помощью осциллографа измеряю длительность выполнения цикла в FLProg. Это очень важно для некоторых скоростных проектов.
Подключил эту переменную к цифровому выходу. С помощью осциллографа измеряю длительность выполнения цикла в FLProg. Это очень важно для некоторых скоростных проектов.
-
- Лейтенант
- Сообщения: 539
- Зарегистрирован: 06 сен 2015, 07:09
- Откуда: Курган
Генератор
Я так понимаю, эту же переменную он подал на один из цифровых выходов. И подключив осциллограф к данному пину он смотрит частоту. Получается что удвоенная частота на осциллографе это частота выполнения программы.Сергей писал(а):kipiaxxx, ну, так и что намерял? Какая скорость выполнения одного цикла?
- kipiaxxx
- Рядовой
- Сообщения: 79
- Зарегистрирован: 06 сен 2015, 14:15
- Откуда: Омск
- Имя: Сергей
- Благодарил (а): 1 раз
- Поблагодарили: 1 раз
Генератор
Результаты любопытные. Можно диссер писать...Сергей писал(а):kipiaxxx, ну, так и что намерял? Какая скорость выполнения одного цикла?
Кроме осциллографа вполне корректно можно задействовать скоростной счетчик с выводом результата в СОМ-порт. Например, так:
Здесь результат в микросекундах.
Время выполнения цикла существенно зависит от объёма программы, а также наличия в ней некоторых блоков.
Простые программки выполняются быстрее 1 мс, а объёмные - более 100 мс. Но всё очень индивидуально, причём по ходу выполнения это время также меняется заметно.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Сергей
- Лейтенант
- Сообщения: 578
- Зарегистрирован: 31 авг 2015, 15:06
- Имя: Сергей
- Контактная информация:
Генератор
Правильно. Если бы счетчик был основан на внутреннем счетчике контроллера, который настроен на самое маленькое время счета. По окончанию счета вызывал прерывание, а в подпрограмме обработки прерывания, несколько команд меняющих состояние переменной. То частота была бы стабильна. В ПП обработки прерывания при помощи команд сравнения можно организовать делитель и результат выводить еще в одну переменную (болеан).kipiaxxx писал(а):Время выполнения цикла существенно зависит от объёма программы, а также наличия в ней некоторых блоков.Простые программки выполняются быстрее 1 мс, а объёмные - более 100 мс. Но всё очень индивидуально, причём по ходу выполнения это время также меняется заметно.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя