Повторно попробуйте объект данных OPC HDA, чтобы иметь определенные метки времени
NewObj = resample(DObj,NewTS)
NewObj = resample(DObj,NewTS,'linear')
NewObj = resample(DObj,NewTS,'hold')
NewObj = resample(DObj,NewTS,'nearest')
NewObj = resample(DObj,NewTS,'spline')
NewObj = resample(DObj,NewTS,'pchip')
NewObj = resample(DObj,NewTS) производит повторную выборку данных в объекте данных OPC HDA DObj так, чтобы все элементы объекта имели метки времени, заданные NewTS. NewTS должен быть вектором MATLAB® номера дат.
Если DObj содержит элементы с тем же идентификатором элемента, эти элементы объединены в один элемент. Итак, размер NewObj может быть меньше, чем размер DObj.
Значения линейно интерполируются или экстраполируются на новые метки времени.
Качество для повторно дискретизированных данных устанавливается следующим образом:
Все исходные значения сохраняют свое качество.
Все интерполированные значения получают качество Interpolated: Good.
Все экстраполированные значения получают качество Interpolated: Sub-Normal.
NewObj = resample(DObj,NewTS,'linear') использует линейную интерполяцию.
NewObj = resample(DObj,NewTS,'hold') использует интерполяцию удержания нулевого порядка, где предыдущее известное значение используется для всех новых меток времени. Любая метка времени, предшествующий первому известному значению, устанавливается в NaN (или 0 если значение является типом данных с фиксированной точкой).
NewObj = resample(DObj,NewTS,'nearest') использует интерполяцию по ближайшему соседу, как задано в interp1.
NewObj = resample(DObj,NewTS,'spline') использует сплайн интерполяцию, заданную как interp1.
NewObj = resample(DObj,NewTS,'pchip') использует сохраняющую форму, кусочно-мудрую, кубическую интерполяцию, как задано в interp1.
Загрузите файл примеров данных OPC HDA и повторно отобразите первый элемент hdaDataSmall.
load opcSampleHdaData;
newTS = datenum(2010,6,1,9,30,0:10:60);
newObj = resample(hdaDataSmall(1),newTS);Отображение значений и качеств нового объекта.
newObj.showValues