Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Измерение амплитуды синусоидального сигнала
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Вопросы аналоговой техники
kolyan_olvs
Здравствуйте, Господа.
есть задача..
На вход изделия приходит куча синусоидальных сигналов (причем дифференциальных), а именно порядка 20 штук... Частота 400 Гц. Информация содержится в амплитуде этих самых синусов.
АЦП, естественно, всего один. Проблема состоит в том, что надо: либо каким-то образом "ловить" момент перегиба одного из синусов и в этот момент "пихать" его в АЦПатор; либо при помощи какой-то промежуточной схемы "вытаскивать" из всех синусов их амплитуду и потом по очереди оцифроввывать...
Есть одна задумка - попробовать дифференциаторы, но, насколько известно, они резко увеличивают все шумы и нелинейности обрабатываемого сигнала, так что этот метод нежелателен..
Заранее благодарен за любую помощь в данном вопросе..
rezident
"Момент перегиба" это амплитудное значение или переход через нуль?
Rash
а амплитудный выпрямитель, на операционике, с диодом в цепи обратной связи не подойдёт
kolyan_olvs
Цитата
"Момент перегиба" это амплитудное значение или переход через нуль?

Это как раз амплитудное значение - это я стормозил )).
амплитудный выпрямитель не подойдет, а вот амплитудный детектор - надо подумать... только я плохо в них шарю...
Lonesome Wolf
Цитата(kolyan_olvs @ Apr 25 2006, 08:19) *
Здравствуйте, Господа.
есть задача..
На вход изделия приходит куча синусоидальных сигналов (причем дифференциальных), а именно порядка 20 штук... Частота 400 Гц. Информация содержится в амплитуде этих самых синусов.
АЦП, естественно, всего один. Проблема состоит в том, что надо: либо каким-то образом "ловить" момент перегиба одного из синусов и в этот момент "пихать" его в АЦПатор; либо при помощи какой-то промежуточной схемы "вытаскивать" из всех синусов их амплитуду и потом по очереди оцифроввывать...
Есть одна задумка - попробовать дифференциаторы, но, насколько известно, они резко увеличивают все шумы и нелинейности обрабатываемого сигнала, так что этот метод нежелателен..
Заранее благодарен за любую помощь в данном вопросе..


А после АЦП вычислять? Какая частота дискретизации?
Миша
Амплитудное значение можно измерять так:

1. Найти точку перехода синуса через ноль: Компаратор с потенциалом второго входа, равным постоянной составляющей сигнала (синуса). В случае с синусом относительно нуля (+-) второй вход просто заземлить.
2. Повернуть фазу сигнала с компаратора на 90° и по фронту запускать ацп - он будет делать выборки точно в момент максимума.
kolyan_olvs
Цитата
А после АЦП вычислять? Какая частота дискретизации?

Синусов 20 штук а АЦП один, поэтому я не могу постоянно оцифроввывать один синус, так что частоты дискретизации, как таковой вообще не существует..

Цитата
1. Найти точку перехода синуса через ноль: Компаратор с потенциалом второго входа, равным постоянной составляющей сигнала (синуса). В случае с синусом относительно нуля (+-) второй вход просто заземлить.
2. Повернуть фазу сигнала с компаратора на 90° и по фронту запускать ацп - он будет делать выборки точно в момент максимума.

Метод неплохой, думал над ним, но уж больно громоздкая схемот. реализация - ведь синусов 20 штук, а ведь надо еще и постоянную составляющую ловить (она может быть разная), ставить компараторы и сдвигать фазу... в итоге плата получится размером с книжную полку... хотелось бы как-то попроще..
arttab
1. быстродествующий мультиплексированный ацп + обработка результатов оцифровки.
2. входные цепи на выделение постоянной состовляющей и амнлитудного значения и замер ацп рультатов
Что то больше вариантов не вижу
Scha
А известно ли, как приходят эти 20 синусов относительно друг друга?
Миша
Цитата
... в итоге плата получится размером с книжную полку... хотелось бы как-то попроще..
Посмотрите и подумайте над применеием ПАИС - программируемых аналоговых интегральных схем - тут все блоки (ацп, компараторы, фазовращатели и проч.) можно реализовать в одной микросхеме. Сайт фирмы-производителя http://www.anadigm.com/
Пример руководства пользователя http://www.anadigm.com/_doc/UM000231-U001.pdf
стоит эта беда около 300$ в прософте, сама микросхема - наверное, меньше (нигде не нахожу)
DS
Можно еще попробовать ad736 DC RMS конвертеры. Это точный выпрямитель с фильтром первого порядка, как раз годится, чтобы перед дельта-сигма АЦП поставить.
Electrovoicer
я бы кстати посоветовал LTC1967. все-таки 736 не супервещь
Lonesome Wolf
Цитата
Lonesome Wolf А после АЦП вычислять? Какая частота дискретизации?


Цитата(arttab @ Apr 25 2006, 09:56) *
1. быстродествующий мультиплексированный ацп + обработка результатов оцифровки.
2. входные цепи на выделение постоянной состовляющей и амнлитудного значения и замер ацп рультатов
Что то больше вариантов не вижу



Цитата
kolyan_olvs Синусов 20 штук а АЦП один, поэтому я не могу постоянно оцифроввывать один синус, так что частоты дискретизации, как таковой вообще не существует..


По моему, уважаемый kolyan_olvs привык иметь иметь дело с аналоговыми способами решения той или иной задачи. IMHO, Ваша задача легче всего решается в цифровом виде. Судите сами - 20 каналов, 400 Гц, 10 точек на период, итого, меньше 100 кГц оцифровки. В цифре точнее, удобнее будет. Можно еще и фазу считать.
kolyan_olvs
Цитата
А известно ли, как приходят эти 20 синусов относительно друг друга?

синфазно, но половина на половину, так как половина цепляются за 1-3 фазы, а половина за 2-3..

Цитата
Судите сами - 20 каналов, 400 Гц, 10 точек на период, итого, меньше 100 кГц оцифровки.

простите, не понял, что значит 10 точек на период?

Цитата
Посмотрите и подумайте над применеием ПАИС

спасибо за идею - посмотрю (точнее уже)..
Lonesome Wolf
Цитата(kolyan_olvs @ Apr 25 2006, 12:34) *
Цитата
Судите сами - 20 каналов, 400 Гц, 10 точек на период, итого, меньше 100 кГц оцифровки.

простите, не понял, что значит 10 точек на период?


Это означает, что исходная синусоида будет представлена в виде ряда дискретных значений, причем во временной области за период входного сигнала их будет браться 10 штук. Последняя цифра, кстати, так, прикидочная - все зависит...
BVU
Все двадцать синусов имеют одинаковую частоту 400Гц. Передаются они непрерывно или имеют какую то длительность? Многое непонятно, какой-то каламбур или Вы недоговариваете изначальные условия входного сигнала. В любом случае при наложении сигналов друг на друга что бы промерить амплитуду желательна привязка по фазе. Если бы частоты были разные можно смело вычислять спектр, но и здесь 'прокол'...
Fakir
Цитата
А известно ли, как приходят эти 20 синусов относительно друг друга?
синфазно, но половина на половину, так как половина цепляются за 1-3 фазы, а половина за 2-3..


Если одновременно синфазно приходят 10 из 20 синусоид, получается что максимумы 10 синусоид придут в одно время, и как имея одно АЦП все 10 оцифровать?
Fakir
Может поставить мультиплекстор на 20 каналов и оцифровывать постоянно все 20 синусоид?
При этом непрерывно можно вычислять амплитуду.
Если брать как предлагают 10 точек на период, то получится 4кГц на один канал и того * 20каналов = 80кГц частота оцифровки и "щелканья" мультиплекстором
kolyan_olvs
Цитата
Передаются они непрерывно или имеют какую то длительность?

непрерывно..
Цитата
как имея одно АЦП все 10 оцифровать?

в том то и дело что я хочу оцифровывать не синус, а вычисленную промежуточной схемой амплитуду, а вопрос заключается в поиске этой самой схемы.. в таком случае не придется постоянно цифровать, а достаточно будет по одному разу за период на каждую синусосиду.
Цитата
Если брать как предлагают 10 точек на период
10 точек на период не пойдет по точности определения амплитуды (надо 1-2%, а это значит хотя бы точек сто)...
bms
Цитата(kolyan_olvs @ Apr 25 2006, 16:31) *
в том то и дело что я хочу оцифровывать не синус, а вычисленную промежуточной схемой амплитуду, а вопрос заключается в поиске этой самой схемы.. в таком случае не придется постоянно цифровать, а достаточно будет по одному разу за период на каждую синусосиду.
точности определения амплитуды (надо 1-2%, а это значит хотя бы точек сто)...


- эта схема называется амплитудный детектор - есть в любом радиовещательном приёмнике, строится на диоде, конденсаторе и резисторе.
- если бы Вы напрягли память, то непременно вспомнили бы, что по теореме Котельникова достаточно иметь всего ДВА отсчёта на период синуса, чтобы ПОЛНОСТЬЮ иметь о нём ВСЮ информацию

и ещё, если сложить два синуса одной частоты - то получится опять же синус, его амплитуда будет зависеть от разности фаз исходных сигналов
если информация у Вас содержится именно в амплитудах этих 20-ти синусов, то после сложения их всех на входе АЦП Вы эту инфу неизбежно потеряете
BVU
Опять несколько повторюсь - задача то такая вырисовывается: при смешении 20-и непрерывных синусоидальных сигналов, причем одинаковой частоты 400Гц, к тому же оказывается что некоторые из них еще и сфазированы... Вот и представте хотябы на амплитудно-временной диограмме какой сигнал у вас получается и каким образом его надо выделить что бы провести амплитудное измерение???!!! При наложении этих синусов друг на друга в фазе информация об амплитуде будет искажена и не восстановима, т.к. это не гармонические частотные составляющие сигнала.
kolyan_olvs
о том как стоит задача:
мне не надо складывать/смешивать 20 синусов, а надо знать цифровое значение амплитуды КАЖДОГО из них в отдельности.

Цитата
эта схема называется амплитудный детектор
- вот о ней то, если можно, чуть поподробней (где почитать). Просто слышать слышал, а что за штука и как ее делать/рассчитать - без понятия...

Цитата
по теореме Котельникова достаточно иметь всего ДВА отсчёта на период синуса, чтобы ПОЛНОСТЬЮ иметь о нём ВСЮ информацию

Это если частота никуда не плавает и известна с большой точностью... в моем случае это не верно и придется (чтобы применить теорему) постоянно следить за 400 Гц (а это бортсеть и гулять может ой ой ой)..
BVU
Цитата(kolyan_olvs @ Apr 25 2006, 17:13) *
о том как стоит задача:
мне не надо складывать/смешивать 20 синусов, а надо знать цифровое значение амплитуды КАЖДОГО из них в отдельности.
....

Они уже сложены, если присутствуют в одном проводнике.
А о частотном преобразовании (Котельников) не мечтайте т.к. весь спектр этого сигнала - единственная частота в 400Гц, с неравномерной фазовой характеристикой.
Lonesome Wolf
Цитата(bms @ Apr 25 2006, 14:45) *
Цитата(kolyan_olvs @ Apr 25 2006, 16:31) *

в том то и дело что я хочу оцифровывать не синус, а вычисленную промежуточной схемой амплитуду, а вопрос заключается в поиске этой самой схемы.. в таком случае не придется постоянно цифровать, а достаточно будет по одному разу за период на каждую синусосиду.
точности определения амплитуды (надо 1-2%, а это значит хотя бы точек сто)...


- эта схема называется амплитудный детектор - есть в любом радиовещательном приёмнике, строится на диоде, конденсаторе и резисторе.
- если бы Вы напрягли память, то непременно вспомнили бы, что по теореме Котельникова достаточно иметь всего ДВА отсчёта на период синуса, чтобы ПОЛНОСТЬЮ иметь о нём ВСЮ информацию

и ещё, если сложить два синуса одной частоты - то получится опять же синус, его амплитуда будет зависеть от разности фаз исходных сигналов
если информация у Вас содержится именно в амплитудах этих 20-ти синусов, то после сложения их всех на входе АЦП Вы эту инфу неизбежно потеряете


Больше точек - быстрее процесс...
okela
Не вижу никаких трудностей вообще.. Ставятся как было сказано выше 20 амплитудных детекторов.
И всё.. Не надо никакого гемороя с определением фаз, моментов максимума синусоиды и пр.
На выходном конденсаторе каждого канала будет висеть постоянное напряжение соответствующее амплитудному значению синусоиды.
SpyBot
Цитата(BVU @ Apr 25 2006, 17:32) *
Цитата(kolyan_olvs @ Apr 25 2006, 17:13) *

о том как стоит задача:
мне не надо складывать/смешивать 20 синусов, а надо знать цифровое значение амплитуды КАЖДОГО из них в отдельности.
....

Они уже сложены, если присутствуют в одном проводнике.
А о частотном преобразовании (Котельников) не мечтайте т.к. весь спектр этого сигнала - единственная частота в 400Гц, с неравномерной фазовой характеристикой.

Видимо имеется ввиду, что вход изделия - это 20 проводников.

Цитата(Lonesome Wolf @ Apr 25 2006, 18:11) *
Больше точек - быстрее процесс...

А не хватит быстродействия МК - поставить ПЛИС wink.gif
Миша
Цитата
Не вижу никаких трудностей вообще.. Ставятся как было сказано выше 20 амплитудных детекторов.
И всё.. Не надо никакого гемороя с определением фаз, моментов максимума синусоиды и пр.
На выходном конденсаторе каждого канала будет висеть постоянное напряжение соответствующее амплитудному значению синусоиды.
1. На самом деле на выходе будут пульсации, сглаженные конденсатором, и в области мылых сигналов характеристика такого детектора будет нелинейной, а для больших сигналов - условно линейной.
2. В любом случае выходное "постоянное" напряжение будет меньше истинного амплитудного значения. Насколько - неизвестно, т.к. будет зависить от многого, например, от параметров выходного НЧ фильтра.
bms
Цитата(kolyan_olvs @ Apr 25 2006, 17:13) *
о том как стоит задача:
мне не надо складывать/смешивать 20 синусов, а надо знать цифровое значение амплитуды КАЖДОГО из них в отдельности.

Цитата
эта схема называется амплитудный детектор
- вот о ней то, если можно, чуть поподробней (где почитать). Просто слышать слышал, а что за штука и как ее делать/рассчитать - без понятия...

Цитата
по теореме Котельникова достаточно иметь всего ДВА отсчёта на период синуса, чтобы ПОЛНОСТЬЮ иметь о нём ВСЮ информацию

Это если частота никуда не плавает и известна с большой точностью... в моем случае это не верно и придется (чтобы применить теорему) постоянно следить за 400 Гц (а это бортсеть и гулять может ой ой ой)..


Схем амплитудных детекторов существует множество, Вы без труда найдёте их в инете целую кучу, вот для начала пара ссылок

http://ire.krgtu.ru/subdivision/radiotehni...ext/am_sign.htm

http://dl2kq.de/trx/2-7.htm

А насчёт двух отсчётов на период... так возьмите два с половиной... три... четыре отсчёта - кто мешает? smile.gif Зная максимальное отклонение частоты от номинала - Вы легко вычислите с какой минимальной частотой нужно брать выборки.
Чтобы понять какой амплитуды синус - совсем необязательно его оцифровывать строго в пиковые моменты - это азы цифровой обработки.
У Вас 20-ть каналов, соответственно Вам нужно иметь коммутатор на 20-ть входов, один АМ-детектор+АЦП. Тогда выбирая нужный канал Вы сможете измерять амплитуду сигнала в нём. Одновременно измерить одним АЦП все каналы здесь не выйдет. Но можно довольно быстро переключаться между ними.
AST
Цитата(bms @ Apr 25 2006, 21:17) *
Схем амплитудных детекторов существует множество, Вы без труда найдёте их в инете целую кучу, вот для начала пара ссылок

http://ire.krgtu.ru/subdivision/radiotehni...ext/am_sign.htm

http://dl2kq.de/trx/2-7.htm


Вот здесь есть активные на операционниках http://www.gaw.ru/html.cgi/txt/doc/op/funop_13_2.htm

Во вложении схема которую я реально использовал на 50 Гц.

А насколько быстро изменяются измеряемые сигналы? Обязательно ли знать информацию об амплитуде за каждый период?
Krys
Цитата(bms @ Apr 26 2006, 00:17) *
У Вас 20-ть каналов, соответственно Вам нужно иметь коммутатор на 20-ть входов, один АМ-детектор+АЦП.
Есть понятие о длительности переходной характеристики АМ-детектора, так что при требовании достижения максимального быстродействия нужно детекторы ставить на каждый канал. А максимальное быстродействие даже не от детекторов, а как Вы писали, при вводе нескольких точек синусоиды и восстановлении по ним амплитуды цифровой обработкой.

Цитата(Миша @ Apr 25 2006, 22:43) *
в области мылых сигналов характеристика такого детектора будет нелинейной, а для больших сигналов - условно линейной.
2. В любом случае выходное "постоянное" напряжение будет меньше истинного амплитудного значения. Насколько - неизвестно, т.к. будет зависить от многого, например, от параметров выходного НЧ фильтра.
Ну тут спасут детекторы на операционниках, схема в этой теме уже приведена. Но операционников нада много. Так что самый красивый вариант - всё-таки цифровать все каналы по, скажем, 5..10 точек без детектирования вообще. А амплитуду находить цифровой обработкой
AST
К вопросу о применении одного амплитудного детектора.

Цитата(Krys @ Apr 26 2006, 07:03) *
Есть понятие о длительности переходной характеристики АМ-детектора, так что при требовании достижения максимального быстродействия нужно детекторы ставить на каждый канал.


Максимальное время - это разряд конденсатора при отключении амп. детектора от источника сигнала. Его можно принудительно разряжать, например, MOSFET-ом через резистор, включенные параллельно конденсатору.
Тогда период переключения мультиплексора будет равен периоду входного сигнала (за это время гарантированно пройдёт один максимум входного сигнала и конденсатор зарядится) плюс время разряда конденсатора ключом (очень маленькое).
Время опроса 20-ти каналов грубо = 20 периодов от 400 Гц, т.е. 50 мс.

Только здесь требование к амп детектору, что он должен быстро заряжать и не разряжать конденсатор.
kolyan_olvs
Цитата
Видимо имеется ввиду, что вход изделия - это 20 проводников

именно это и имеется в виду

Спасибо всем за активную помощь ... <Углубился в изучение АМ детекторов>
Думаю, попробую с детектором, если не выйдет - придется ЦОСом эти синусы, ЦОСом. ))))
dinam
Цитата(Krys @ Apr 26 2006, 10:03) *
Так что самый красивый вариант - всё-таки цифровать все каналы по, скажем, 5..10 точек без детектирования вообще. А амплитуду находить цифровой обработкой

Полностью согласен с Krys! Я был взял два дешёвых PICа с десятью каналами каждый (или любой другой МК) и не заморачивался с амплитудными детекторами.
BVU
Цитата(kolyan_olvs @ Apr 26 2006, 09:25) *
Цитата
Видимо имеется ввиду, что вход изделия - это 20 проводников

именно это и имеется в виду
...

Так об этом необходимо было четко изложить в начальных условиях, что Вы к сожалению не сделали. Ответ на вопрос был бы даден в 5 минут, а в место этого собрался целый консилиум. Однозначно амплитудный детектор!
Krys
Цитата(AST @ Apr 26 2006, 11:05) *
Только здесь требование к амп детектору, что он должен быстро заряжать и не разряжать конденсатор.
Вот именно... Смотря какой детектор используется. Вполне возможно, что детектор на операционнике с мощным выходом вполне подойдёт под Вашу схему и будет позволять измерение каждый период... а вот если без мощного выхода операционник или вообще без операционника детектор (пиковый), тогда лучше поставить 20 диодов и конденсаторов во все 20 каналов.
CDT
Цитата(BVU @ Apr 26 2006, 14:19) *
Цитата(kolyan_olvs @ Apr 26 2006, 09:25) *

Цитата
Видимо имеется ввиду, что вход изделия - это 20 проводников

именно это и имеется в виду
...

Так об этом необходимо было четко изложить в начальных условиях, что Вы к сожалению не сделали. Ответ на вопрос был бы даден в 5 минут, а в место этого собрался целый консилиум. Однозначно амплитудный детектор!


Ну наконец-то мы узнали главное.

Среднеквадратичное значение переменного напряжения пропорционально его амплитуде.
За интервал измерения делаем выборки с дискретностью <= 1/4 периода сигнала, возводим в ^2,
суммируем, делим на число выборок и извлекаем корень. Это для целей измерения. Для целей сравнения и регулирования корень можно не извлекать.

Если сначала набрать сумму квадратов за интервал измерения, а за тем с каждой выборкой из суммы вычитать среднее значение и прибавлять новое - через некоторое время результат будет равен амплитудному значению.

Делал такую одноканальную штуку для измерения тока. Работала в диапазоне 0-2500Гц, интервал измерения брал 5 и 10 мс.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.