Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 11.12.2018
Сообщений: 3
1

Сформировать трапециевидный периодический сигнал

11.12.2018, 11:27. Просмотров 1697. Ответов 4
Метки нет (Все метки)

Здравствуйте! Нужна ваша помощь.
Есть кусок кода. Нужно, чтобы вместо прямоугольных импульсов были трапециевидные.
Matlab M
1
2
3
4
5
filename='acoustic.wav';
[x,Fs] = audioread(filename);
index = 1:length(x);
Fc = 5;
modulator = square(2*pi*index*(Fc/Fs));
acoustic.rar
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.12.2018, 11:27
Ответы с готовыми решениями:

Сформировать в Matlab сигнал
Скажите,как можно с помощью программирования сформировать косинус который идет 0 до 1 мкс, а потом...

Сформировать синусоидальный сигнал заданной частоты
Доброго времени суток, господа! Помогите, пожалуйста. В связи с написанием курсовой работы пришлось...

Подскажите пожалуйста. Как сформировать сигнал в matlab
Начал изучать matlab и возникли трудности. Необходимо создать математическую модель и отобразить...

Как сформировать такой сигнал в матлаб подскажите пожалуйста
только начал изучать матлаб, поэтому возникают трудности

4
710 / 529 / 239
Регистрация: 21.10.2012
Сообщений: 1,724
11.12.2018, 11:50 2
dem1duk96, чет у меня архив ваш не открылся. Вот пример кода, переделайте под свои нужды.
Matlab M
1
2
3
4
5
6
7
8
Fs = 1e3;
t = -50e-3 : 1/Fs : 50e-3;
A = 10;
T1 = 20e-3;
T2 = 60e-3;
s = A * (T2 * tripuls(t,T2) - T1 * tripuls(t,T1)) / (T2 - T1);
figure;
plot(t,s) ;
0
0 / 0 / 0
Регистрация: 11.12.2018
Сообщений: 3
11.12.2018, 12:47  [ТС] 3
АлександрКом, пример я этот видел.
Я с матлабом вообще не в ладах, у меня не получилось.

Каким-то чудом, получилось сделать просто период трапециевидного сигнала. Знаю, чтобы сделать его периодическим, нужно использовать pulstran, но не выходит. Да и в любом случае подогнать под мои параметры я не знаю как.
Matlab M
1
2
3
4
5
6
a=[0 1 3 5 7 8];
b=[0 1 1 -1 -1 0];
x = 0:1:8;
y = interp1(a,b,x,'linear');
figure;
plot(y);
P.S В архиве был просто аудиофайл.
Если по параметрам, то Fs = 11050, а x имеет 149000 отсчетов.
0
710 / 529 / 239
Регистрация: 21.10.2012
Сообщений: 1,724
11.12.2018, 13:50 4
Лучший ответ Сообщение было отмечено dem1duk96 как решение

Решение

dem1duk96, вроде, так. Постарался подробно:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
clear; clc;
 
a=[0 1 3 5 7 8];
b=[0 1 1 -1 -1 0];
 
Fs = 11050;
Num = 149000;
F = 5;
 
x = linspace(0, 8, Fs/F);
y = interp1(a,b,x,'linear');
 
k = round(Num / length(y));
ost = mod(Num, length(y));
 
signal = repmat(y, 1, k);
signal = [signal signal(1:ost)];
 
figure;
plot(0:1/Fs:(Num-1)/Fs,signal);
1
0 / 0 / 0
Регистрация: 11.12.2018
Сообщений: 3
11.12.2018, 13:56  [ТС] 5
АлександрКом, спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.12.2018, 13:56

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Периодический сигнал с линейно нарастающей амплитудой
Привет всем. Помогите,пожалуйста с симулинком. Как можно сделать Периодический сигнал с линейно...

Сформировать треугольный сигнал в Simulink
Ребят, подскажите пожалуйста как построить вот такой сигнал(прикрепил изображение ниже). Всё...

Прямоугольный периодический сигнал
Здравствуйте, какие формулы нужно написать в маткаде чтобы получить прямоугольный периодический...

Построить трапециевидный импульс
Добрый вечер. Написал небольшой фрагмент по вопросу построения импульса трапеции в начале в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.