Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Измерить переменное напряжение микроконтроллером
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Метрология, датчики, измерительная техника
megabuks
Добрый день
Требуется измерить переменное напряжение 220в 50Гц с помощью микроконтроллера msp430.
Входной сигнал через делитель подается на вход встроеного в контролер АЦП.
Сейчас получается около 200 отсчетов на период. Если подаю постоянное напряжение, то
проблем нет, получаю код ацп соответствующий поданому напряжению.
Если переменное - то получаю оцифрованую синусоиду.
Вопрос в том, как дальше обрабатывать отсчеты, что-бы посчитать значение напряжения.
Где посмотреть алгоритмы как это делается, книжки формулы ....
АндрейЦ
Цитата(Plain @ Jun 15 2013, 20:34) *


С десяток топовых ссылок рассказывают о Rate-monotonic scheduling. Совет в стиле.
Какое именно напряжение нужно получить? Амплитудное, действующее?

http://electronix.ru/forum/index.php?showt...=47367&st=0
Xenia
Цитата(megabuks @ Jun 15 2013, 20:55) *
Сейчас получается около 200 отсчетов на период.


Найдите среднеквадратичное значение этих отсчетов и дело в шляпе.
1. Находим среднее значение, как сумму всех 200 отчетов, деленную на 200. Должно получиться ноль, однако на него не зарекаемся, т.к. центр сигнала может быть смещен:
Uср = summa(Ui)/200
2. Находим сумму квадратов отклонений от среднего (дисперсию):
D = summa((Ui-Ucp)^2)
3. Находим средневадратичное значение:
U = sqrt(D/200);
Это и есть результат, который вам нужен.
А если вам аплитуда нужна, то умножьте еще на корень из двух.
http://tel-spb.ru/ac.html
Ruslan1
Что, взаправдашний синус после оцифровки? то есть у Вас оно сначала было сдвинуто относительно нуля вверх а потом оцифровано?
Тогда ничего нет сложного: размах от минимального до максимального есть удвоенная амплитуда, то есть 2A. Чтобы узнать RMS нужно A разделить на корень из двух.
То есть: находите максимальный и минимальный отсчеты, их разность делите на два корня из двух, это и будет RMS в приведенных единицах АЦП. Далее, зная опорное напряжение и коэффициент деления входного делителя, вычисляете реальное напряжение RMS в вольтах.
megabuks
Цитата(АндрейЦ @ Jun 15 2013, 20:58) *
Какое именно напряжение нужно получить? Амплитудное, действующее?
http://electronix.ru/forum/index.php?showt...=47367&st=0


действующее

Всем спасибо, пошел читать....
АндрейЦ
Цитата(megabuks @ Jun 15 2013, 22:11) *
действующее


Как уже советовали находите тем или иным способом двойную амплитуду и делите на корень из двух.
А уж просто ищите max и min или суму квадратов отклонений, как проще и удобнее.
Serhiy_UA
Еще один метод вычисления максимума синусоидального сигнала.
Делаете два измерения имеющих относительный фазовый сдвиг в 90 градусов (или 270 градусов).
Благодаря этому получаете мгновенные синус и косинус. Далее квадратный корень от суммы их квадратов, это и будет амплитуда.
Я так когда-то вычислял амплитуду для 250-кГц сигнала (заодно и фазу) и для этого применял CORDIC...

И еще один, вдогонку, для 50Гц.
Вычисляем интервал времени между двумя минимумами. После прихода очередного минимума ждем половину от того что вычислили и делаем измерение, это и будет амплитуда синуса.
TigerSHARC
Цитата(megabuks @ Jun 15 2013, 20:55) *
Добрый день
Требуется измерить переменное напряжение 220в 50Гц с помощью микроконтроллера msp430.


именно для MSP430 у TI есть референс дизайн счётчика электроэнергии вычисляющего кучу параметров (по току и напряжению). Ищите на их сайте. Там есть исходник проекта целиком и библиотека вычислительная открытая.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.