У меня есть функциональный блок MATLAB в Simulink и для каждого шага simlulink ли я хочу, чтобы ввести счетчик с приращением 1. Ex: первый шаг -> Точность = 1 второй шаг -> Точность = 2Накопитель в Simulink
Я пробовал использовать счетный блок + генератор импульсов, но временной шаг симулянта не является постоянным.
Любые идеи?
Вам нужно добавить код (и проверить форматирование), что вы пробовали уже. а также объясните результаты, которые вы видите (то есть, что происходит не так). –
Simulink выбирает Variable Step Solver по умолчанию для вас. Если вы хотите, чтобы шаги были одинаково отдаленными по времени, выберите «Исправленный шаговый решатель» и вместо этого укажите timestep, но знайте последствия этого в своей модели. Если вы хотите, чтобы блок выполнялся с фиксированной периодичностью, выберите вместо него время выборки или, например, попробуйте его с удержанием нулевого ордера. – Manex
Я не уверен, как вы пытались использовать генератор импульсов, но разве нет способа использовать генератор импульсов, чтобы импульсы находились в образцовых ударах, а не во время моделирования? В любом случае, метод, который я использовал для подсчета хитов, - это использовать S-функцию C++, а затем иметь вектор PWork, который подсчитывает вызовы. PWork - это разновидность переменной, которая остается постоянной в памяти. Таким образом, вы добавляете его при каждом вызове функции и выполняете работу независимо от используемого решателя. –