реклама на сайте
подробности

 
 
> Цифровой вольтметр-амперметр-ваттметр на AVR для бытовой сети, некоторые вопросы
hd44780
сообщение Mar 16 2011, 09:17
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Вот делаю такую штуку - сабж.
Делается для себя, но хочется не только некий показометр (а-ля китайские барометры, которые показывают хрен знает что, мало зависящее от атмосферного давления), а прибор, на показания которого можно ориентироваться biggrin.gif .

Схему измерительной части прилагаю. Резистор R2 - многооборотный. На выходе ТТ предполагается еще поставить ОУ с переключаемым Ку как в AVR465 (для низкоточных нагрузок), но пока его там нету - сразу в ATMega8.
БП на LM7805, мегу и LCD рисовать не стал - все стандартно. Генератор внутренний, 8МГц.

Я принципиально не стал ставить шунт и делитель. С гальванической развязкой надежнее.
Измерительные узлы отдельно от МК и цифровой части проверены обычным мультиметром на различных нагрузках (от 25Вт паяльника до 10КВт кухонной печки) - они полностью адекватны и работают нормально.

Обработка данных такая:
1. АЦП на частоте 125 кГц цифрует сигнал. Обработчик прерывания Считает суммы отсчетов и их кол-во:
// ADC interrupt service routine
interrupt [ADC_INT] void adc_isr(void)
{
dword adc_data, temp;

// Read the AD conversion result
adc_data=ADCW&0xFFFE;

if(isU)
{ // U
temp=adc_data; //*adc_data;
sqr_summU+=temp;
countU++;
} // if
else
{ // I
temp=adc_data; //*adc_data;
sqr_summI+=temp;
countI++;
} // else
} // adc_isr

2. Главная программа меряет по очереди ток и напряжение:

.............
// Измерение напряжения
isU=1;
sqr_summU=0;
countU=0;
ADMUX&=0xFE; // ADC0 - канал напряжения
// Запуск АЦП
ADCSRA|=0x40; // ADCSC - Start ADC
startMs=ms;
// ожидание 21 мс (20мс - период 50 Гц)
while (abs (ms-startMs)<21);
// стоп АЦП
ADCSRA&=0xBF; // 10111111 = BF
.............

для тока также, только переменные другие. Переменная ms глобальная - TC1 по прерыванию считает миллисекунды.

3. Когда оба померяли, вычисляем

// Расчет напряжения
// Среднеквадратическое
// Urms=sqrt(sum(u(i)^2)/N); u(i) - мгновенные отсчеты (с АЦП), i=1..N
f_sqr_summU = ((float)sqr_summU)/countU; // ср. арифм.
// f_sqr_summ=sqrt(f_sqr_summ); // Urms (отсчеты АЦП)

// Uацп=ADC*Vref/1024=ADC*0.005
U = f_sqr_summU*0.005;

// Uвх=Urms*109.52
U*=109.52;

// Расчет тока
// Среднеквадратическое
// Urms=sqrt(sum(u(i)^2)/N); u(i) - мгновенные отсчеты (с АЦП), i=1..N
f_sqr_summI = ((float)sqr_summI)/countI; // ср. арифм.
// f_sqr_summ=sqrt(f_sqr_summ); // Urms (отсчеты АЦП)

// Uацп=ADC*Vref/1024=ADC*0.005
I = f_sqr_summI*0.005;

// Iн=500*Uацп/148,86 =Uацп*3.359
I*=3.359;

// S - Полная мощность
S_temp=((dword)I*U);
S=S_temp;

4. после этого вывод на дисплей.

Калибровки пока нету, но будет.

Заметил странности:
1. При среднеквадратических было завышение показаний почти в 2 раза - вместо 220-230в показывал 380-400. По току аналогично. Поставил среднеарифметическое - нормально стало....
Почему? Или я чего-то прозевал?
2. Показания "бегают" - часто меняются в небольших пределах. Я могу поставить в цикл задержку - типа мерять раз в секунду, но меня такой способ чего-то смущает..

Может кто что посоветует?

Спасибо.

Сообщение отредактировал hd44780 - Mar 16 2011, 09:19
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
11 страниц V  « < 9 10 11  
Start new topic
Ответов (150 - 161)
hd44780
сообщение Apr 15 2011, 16:08
Сообщение #151


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(rx3apf @ Apr 15 2011, 12:49) *
А 20 измерений за период - это вообще смешно, посмотрите, как это делается в микросхемах электросчетчиков


Переделал замеры - теперь каналы АЦП опрашиваются по 500 раз за период - дельта все равно прыгает. Изменились только абсолютные значения этой дельты.

А про AD-шные микрухи я уже писал - одна такая микросхема стоит практически столько же, сколько и моя схема целиком.
К тому же я хочу изучить и понять эти вещи, а не поставить одну микруху, которая все посчитает, а как - непонятно.
Поэтому я принципиально не хочу их использовать. Пусть даже у меня и будет какая-то погрешность из-за каких-то моих ошибок или заблуждений..


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Apr 15 2011, 16:44
Сообщение #152


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(hd44780 @ Apr 15 2011, 20:08) *
К тому же я хочу изучить и понять эти вещи, а не поставить одну микруху, которая все посчитает, а как - непонятно.

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

Так цель сделать _прибор_ или чисто по...ться ? Из идейного мазохизма ? Задачка ведь не из простых, на самом деле. Вот, китайский ваттметр на ADE7755 все ж, как выяснилось, подвирает при плохом коэффициенте мощности (если что с импульсным питателем без PFC), процентов на пять. При том, что чип специализированный. Бытовой электросчетчик на том же чипе - считает точно. Разница - ТТ в первом случае и шунт во втором.7755, кстати, копеечный, меньше двух баксов в розницу. Правда да, коэффициент мощности не покажет и напряжение тоже. Те, что по-сложнее - да, по-дороже. Но и результат лучше, можно уже говорить о точности лучше 1% даже при плохом коэффициенте мощности. И готовое изделие можно купить рублей за 800. Где будет все. На ширпотребе без специализированного фронтэнда ничего подобного не получится, это пустая трата времени.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 15 2011, 17:39
Сообщение #153


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Не хочу я с Вами спорить... Считайте, что я "идейный мазохист".


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Apr 16 2011, 14:15
Сообщение #154


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Кстати, не увидел на вашей схеме ФНЧ на входе АЦП, это то же принципиальная позиция? sm.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 16 2011, 15:31
Сообщение #155


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(Stanislav_S @ Apr 16 2011, 16:15) *
не увидел на вашей схеме ФНЧ на входе АЦП, это то же принципиальная позиция? sm.gif


Нет biggrin.gif , это мое упущение. Принципиальных позиций 2 - полная гальваническая развязка от сети и не использовать редкие, труднодобываемые микрухи, каковыми для меня являются эти ADxxxx sm.gif .

Фильтр просто из виду упустил как-то. Сперва делал по-простому, чтобы ожило. Потом забыл sad.gif . Теперь можно добавить.
Спасибо, напомнили.

Только наверное не перед АЦП, а перед повторителями. Т.к. буду еще усилитель с упр. Ку делать по токовому каналу.
Потому что в нынешней схеме при большой нагрузке с ТТ идет большое напряжение, которое повторитель просто срежет.
Если сам не сгорит biggrin.gif . На 10А духовке с ТТ идет где-то 3.5в действующих. Амплитуда при поднятии на 2в выйдет за 5в.
Или есть лучшее решение, чем усилитель с управляемым Ку (аналоговый мультиплексор на входе)? Просто я такой способ видел в цифровых осциллографах.

Кстати, сделал расчет активной мощности без угла и косинуса, как ср. арифм. мгновенных мощностей за период (здесь кто-то мне так советовал) - вроде нормально. На паяльнике отрицательная и немного меньше полной.
Угол уж сильно бегает. Наверное из-за помех и наводок в сети синусоида неидеальная biggrin.gif .

Сообщение отредактировал hd44780 - Apr 16 2011, 15:56


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Apr 16 2011, 16:34
Сообщение #156


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Никто не мешает вам уменьшить резистор в цепи измерения тока до разумных пределов, рассчитав его таким образом что-бы напряжение на нем при максимальном токе, гарантировано входило во входной диапазон АЦП и применить при этом Rail to Rail операционник, я для этих целей применяю AD8601, очень рекомендую очень хорошее отношение цена - качество.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 17 2011, 06:11
Сообщение #157


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(Stanislav_S @ Apr 16 2011, 18:34) *
Никто не мешает вам уменьшить резистор в цепи измерения тока до разумных пределов, рассчитав его таким образом что-бы напряжение на нем при максимальном токе, гарантировано входило во входной диапазон АЦП и применить при этом Rail to Rail операционник, я для этих целей применяю AD8601, очень рекомендую очень хорошее отношение цена - качество.


Спасибо. Попробую.
Хотя резистор на ТТ менять не хотелось бы - есть вероятность, что малые нагрузки захватывать перестанет sad.gif .

Новые результаты испытаний:
Паяльник 25 Вт практически так и показывает (отличия - на какие-то десятые).
Настольная лампа (на БП написано 11 Вт), показывает 15 Вт.
Утюг 1КВт показывает почему-то 10Вт biggrin.gif . Почему - не знаю. Полную мощность показывает S=960-970 ВА - вроде нормально.
Другой утюг, чуть поменьше - такой же глюк. Не нравятся утюги моему девайсу rolleyes.gif .
Лампа накаливания 100W - S=92, P=-90
Лампа накаливания 75W - S=72-73, P=-69
Лампа накаливания 150W - S=132-133, P=-130
Духовку на 10А подключать боюсь - вылет амплитуды за 5в гарантирован.

И еще хотел спросить - имеет ли смысл вообще выводить на индикацию знак активной мощности? Аналогичный вопрос про Q (реактивная мощность)?
Или же в условиях "грязных" бытовых сетей эти величины далеки от реальности?
Я читал статью про аналогичный девайс на "Радиокоте" ( http://radiokot.ru/circuit/digital/measure/23/ ), там автор выводит P по модулю, без знака, ссылаясь на то, что "не хватает места на ЖКИ и обычно преобладают индуктивные нагрузки".

PS.
Что там за глюк был с ТТ - не знаю, сейчас нормально показывает - отключаешь нагрузку - чистый ноль.

Сообщение отредактировал hd44780 - Apr 17 2011, 09:15


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Apr 17 2011, 12:41
Сообщение #158


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Ну все зависит от задачи какую вы себе поставили, тут много есть способов решения такой задачи sm.gif Насчет мощности, можно например выводить полную мощность и косинус фи, а так же напряжение с током, в принципе насколько позволит ваш индикатор столько и выводите информации, ведь прибор для себя так я понимаю? Насчет измерений, все таки избавтесь пока от плавучки, она сильно долго считается sm.gif могут быть интересные эффекты, кроме того полезно будет выводить сэмллы через UART в комп и построить графики напряжений и токов (в смысле осциллограммы) там можно выловить разные артефакты в процессе измерений.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 17 2011, 14:51
Сообщение #159


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Осциллограммы - интересная мысль, надо подумать. Когда-то делал такое ради баловства rolleyes.gif

Сделал фильтры - схема. Только резисторы не 1кил, а 1.5к.
Частота среза вроде типа 80Гц.

Началась какая-то фигня - напряжение подскочило до 280в, ток даже без нагрузки - 5 с чем-то ампер показывает ....
В чем я обсчитался?

Сообщение отредактировал hd44780 - Apr 17 2011, 14:56
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Apr 17 2011, 17:14
Сообщение #160


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Ну дак коэфициенты для калибровки надо пересчитать для начала, но тут есть одно но, у вас частота среза уж ни как не будет 80 Гц sm.gif для напряжения так точно, подумайте почему sm.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 18 2011, 04:24
Сообщение #161


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(Stanislav_S @ Apr 17 2011, 19:14) *
Ну дак коэфициенты для калибровки надо пересчитать


Была такая мысль. По напряжению можно, а ток там даже без нагрузки вообще дико "бегать" начал. Как его откалибруешь?

Цитата(Stanislav_S @ Apr 17 2011, 19:14) *
частота среза уж ни как не будет 80 Гц sm.gif для напряжения так точно, подумайте почему sm.gif


Я догадываюсь - наверное, из-за потенциометра по напряжению и нагрузочного резистора ТТ.
Но последний маленький, 100 ом всего, а как по-нормальному учесть тот делитель - не знаю. Ставить в фильтр еще оди подстроечник и его крутить что-ли?


Сообщение отредактировал hd44780 - Apr 18 2011, 04:25


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 23 2011, 16:10
Сообщение #162


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Все.
Нашёл ошибку в прошивке, исправил - заработало .
На паяльнике угол -1.1, на лампочке -0.4. Оба угла в градусах. Изредка меняются на что-то, но очень незначительно. Скорее всего, какие-то помехи проскакивают.
Фильтр бы на вход, да не соображу какой ...
И усилитель по току управляемый. Чтобы нагрузку любую брал нормально.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post

11 страниц V  « < 9 10 11
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 15:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.01474 секунд с 7
ELECTRONIX ©2004-2016