Мы используем карту сбора данных для считывания показаний с устройства, которое увеличивает его сигнал до пика, а затем возвращается к исходному значению. Чтобы найти пиковое значение, мы в настоящее время находим массив для наивысшего показания и используем индекс для определения времени пикового значения, которое используется в наших расчетах.
Это хорошо работает, если самое высокое значение - это пик, который мы ищем, но если устройство работает неправильно, мы можем видеть второй пик, который может быть выше начального пика. Мы берем 10 показаний в секунду из 16 устройств за 90 секунд.
Мои первоначальные мысли состоят в том, чтобы циклически проверять показания, чтобы увидеть, будет ли предыдущая и следующая точки меньше текущего, чтобы найти пик и построить массив пиков. Возможно, мы должны смотреть на среднее количество точек с обеих сторон текущей позиции, чтобы обеспечить шум в системе. Это лучший способ продолжить или есть лучшие методы?
Мы используем LabVIEW, и я проверил форумы LAVA, и есть ряд интересных примеров. Это часть нашего тестового программного обеспечения, и мы стараемся избегать использования слишком большого количества нестандартных библиотек VI, поэтому я надеялся получить обратную связь о процессе/алгоритмах, а не о конкретном коде.