Страница 1 из 1
Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 01:09:30
astrgan
Как можно менять амплитуду синусоиды которая производится с помощью шим (на avr)?
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 02:31:42
conler
Вопрос "ниочем".
Можно самим контроллером, можно делителем, можно ОУ
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 02:51:14
astrgan
Просто шим на делитель подавать?
А если с помощью мк, то надо увеличивать время между импульсами? Можно типа таймер (с помощью которого генерируется шим) приостанавливать?
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 04:34:13
conler
astrgan писал(а):...А если с помощью мк, то надо увеличивать время между импульсами?...
Прочитайте заново что есть ШИМ, внимательнее, возможно иными словами, с другого источника. Вообще если нужен конкретный ответ - необходим конкретный, предметный (не типа "вообще") вопрос. Это очевидно...
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 07:55:18
menzoda
Нет, время между импульсами не надо трогать - это есть несущая частота ШИМ и ее обычно не трогают. Просто по-другому вычисляется скважность импульсов. Например, если скважность изменять по синусоидальному закону в пределах от 0 до 100% - получим синусоиду максимальной амплитуды. Если она будет изменяться в пределах от 40% до 60%, или от 0% до 20% (то есть с меньшим "размахом"), то и амплитуда синусоиды будет меньше.
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 08:34:03
astrgan
menzoda
А можно поподробней?
Пожалуйста.
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 08:37:57
ploop
Нет. Просто значение из таблицы синуса умножить на K, где 0 < K < 1
K и будет ваша амплитуда.
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 08:46:50
astrgan
Спасибо!
А таким способом получится менять амплитуду пропорциональна частоте?
Например я хочу уменьшить частоту и амплитуду в N раз.
Хотя ладно сделаю и посмотрю что получится.
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 08:51:09
ploop
Да если это делается программно, то как хотите так и меняйте. Всё сводится к чистой математике.
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 08:53:23
astrgan
ploop писал(а): 0 < K < 1
Придется использовать float?
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 08:56:24
ploop
А вот как реализовать - это уже другой вопрос
Смотря на чём пишите (может, на ассемблере), какими порогами надо менять амплитуду (возможно подойдут обычные сдвиги), может и флоат сойдёт, если есть время и память, и т.д.
Для начала попробуйте поделить на 2 (сдвинуть вправо на 1 бит), если получится - думаем дальше.
Re: Менять амплитуду синусоиды полученной с помощью ШИМ.
Добавлено: Ср ноя 14, 2012 09:26:32
Аlex
astrgan писал(а):ploop писал(а): 0 < K < 1
Придется использовать float?
Интересно, а зачем тут флоат нужен ?
Представьте свой коэфф. в виде дроби, и всё сразу "встанет на свои места".
