В этом примере показано, как использовать блок Unwrap, чтобы развернуть массив 3 на 2 на 3, который имеет разрыв.
У каждого 3 2 система координат сигнала есть разрыв. В первой системе координат существует разрыв между вторым и третьим элементом, больше, чем допуск набора в параметрах блоков. Во второй системе координат разрыв между вторым и третьим элементом меньше, и в третьей системе координат, разрыв равен. Поскольку мы ожидаем, что блок перенесет сигналы с разрывами, больше, чем допуск, разворачивая сигнал не влияет на вторую или третью систему координат.
Откройте модель Simulink.
model = "ex_unwrap";
open_system(model);
frame1 = [0 0; 2*(pi)/3 0; -2*(pi)/3 0];
frame2 = [2*pi 0; 8*pi/3 0; 9.5*pi/3 0];
frame3 = [4*pi 0; 13*pi/3 0; 16*pi/3 0];
signal = cat(3,frame1,frame2,frame3)
signal(:,:,1) = 0 0 2.0944 0 -2.0944 0 signal(:,:,2) = 6.2832 0 8.3776 0 9.9484 0 signal(:,:,3) = 12.5664 0 13.6136 0 16.7552 0
Tolerance
параметр блока Unwrap устанавливается на. Блок поэтому разворачивает разрывы, которые больше, чем.
Запустите модель.
output = sim(model);
Смотрите что выход, output.unwrapped_signal
не имеет первого разрыва, но другие два остаются.
output.unwrapped_output
ans = 0 0 2.0944 0 4.1888 0 6.2832 0 8.3776 0 9.9484 0 12.5664 0 13.6136 0 16.7552 0