Серёга Букашкин товарищ petera написал прекрасные макросы Unix время. запомнили, на следующем цикле или по таймеру из нового отняли старое... вот вам и в миллисекундах
Время берется из часов ПР, так что время цикла побоку.
Серёга Букашкин товарищ petera написал прекрасные макросы Unix время. запомнили, на следующем цикле или по таймеру из нового отняли старое... вот вам и в миллисекундах
Время берется из часов ПР, так что время цикла побоку.
В часах ПР минимальный отсчет 1 секунда. Если бы был регистр еще с миллисекундами - вопроса бы не было. А если нужно мерить интервалы длительностью менее секунды? В стандартном макросе UNIX_TIME миллисекунд нет. Для его приложений они и не нужны.
В предложения по доработке ОЛ предлагается внести в переменные текущего времени еще миллисекунды. Это решит все проблемы с точностью измерения времени и измерения коротких интервалов.
Последний раз редактировалось Серёга Букашкин; 11.01.2017 в 13:55.
Значит нужно использовать информацию о времени цикла выполнения программы
Например так
Захват-1.png
Считаем сколько раз выполняется программа за одну секунду, а дальше все просто.
На выходе имеем аналог функции TIME() - время работы макроса в мс от момента включения ПР.
ЗЫ.
В эмуляторе на выходе макроса первоначальные значения появляются с некоторой задержкой.
Измеряем длительность сигнала на входе I4
Измеряем длительность работы таймера TP
Последний раз редактировалось petera; 11.01.2017 в 16:02.
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Мой канал на РУТУБЕ
https://rutube.ru/channel/23641433/
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Я примерно так и делаю, только за базу беру 2с, точнее выходит. И циклы считаю счетчиком. Косвенными методами можно многого достичь, но зачем усложнять только потому что в ОЛ нет средств счета в миллисекундах. Поэтому и прошу добавить средства чтобы упростить эту процедуру.
Ваш метод тоже интересен, но требует опытности в таких делах. Много расчетов производится ради элементарной по сути функции. И только потому что не решается напрямую.
Кстати это относится и к макросу FSEL. Нужен просто FB для этого. Но это вроде как обещают сделать в новом релизе.
Последний раз редактировалось Серёга Букашкин; 11.01.2017 в 16:34.