Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 10.02.2019, 23:06  
mikhail09p
Прописка
 
Регистрация: 01.01.2010
Сообщений: 217
Сказал спасибо: 2,082
Сказали Спасибо 183 раз(а) в 48 сообщении(ях)
mikhail09p на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Сообщение от Leon_i Посмотреть сообщение
Попробуйте метод пузырьковой сортировки.
Создаём массив измерений I1, I2, I3, I4, I5, I6, I7
Установим флаг F=1 если I1 › I2 то меняем местами и сбросим флаг F=0 дальше проверяем следующую пару I2, I3 и так до конца массива за тем проверяем флаг готовности если F=0 то повторяем цикл если F=1 то все данные в массиве разложены по нарастающий отбросим крайние значения и рассчитаем средние (I3+I4+I5)/3.
Делал так, только без среднего, а просто брал центральное значение - в данном случае I4. И незачем тогда отбрасывать крайние значения.
Ток и напряжение так измеряю. Работает отлично.
Реклама:
mikhail09p вне форума  
Непрочитано 11.02.2019, 10:32  
makakus
Почётный гражданин KAZUS.RU
 
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,106
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
makakus на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Сообщение от DanilinSA Посмотреть сообщение
для резистивных тачскринов. Серия замеров, медианный фильтр + взятие среднего
Для тачскринов и прочих скользящих контактов - да. Там могут быть выбросы, которые хорошо фильтруются медианой. Здесь выюросов нет, отброшенные крацние будут вполне себе похожими на прочие. Здесь нужен фильтр с усреднением.
Вот только его буфер должен заполняться за время, кратное целому числу периодов измеряемого сигнала. Иначе показания будут "бить" на разностной частоте.
И таки да: нужно мерить среднее или среднеквадратичное?
В блоке питания бывает пила, только зачем её мерить?
makakus вне форума  
Непрочитано 11.02.2019, 13:33  
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Я делал так, показания не дергаются, в сравнении с эталонным мультиметром почти идеально, усилитель на LMV358.
Цитата:
#define SWAP(A, B) {int t = A; A = B; B = t;}

unsigned int real_data(unsigned char data) //усредняем по 16-ти измерениям
{
unsigned char i,j = 0;
unsigned int mass[16]={0};
unsigned int tmp = 0;
for (i=0; i‹16; i++) // делаем 16 измерений подряд
{
mass[i] = read_adc(data);
};

for (i = 14; i › 0; i--) //сортируем замеры пузырьковым методом
{
for (j = 0; j ‹ i; j++)
{
if (mass[j] › mass[j + 1])
{
SWAP( mass[j], mass[j + 1] );
}
}
}
tmp = 0;
for (i=4; i‹12; i++) tmp = tmp + mass[i]; // откидываем 4 (c 0 по 3) наименьших значения и 4 (с 12 по 15)
// наибольших значения и складываем 8 средних сначений
return tmp››3;//делим на 8
}
IOPA4 вне форума  
Непрочитано 11.02.2019, 13:47  
makakus
Почётный гражданин KAZUS.RU
 
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,106
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
makakus на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Сообщение от IOPA4 Посмотреть сообщение
делал так, показания не дергаются
Эти 16 измерений покрывают один перид сигнала? Полтора? Они равномерно распределены по времени или меряем - показываем?
Представьте, как метод будет работать на ШИМ сигнале, когда период измерения немного не совпадает с периодом сигнала.

В Экселе легко моделируется.
makakus вне форума  
Сказали "Спасибо" makakus
mike-y-k (12.02.2019)
Непрочитано 11.02.2019, 17:20  
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Я этот АV ставил на самодельный блок питания 1.5-30В на LM2575.
IOPA4 вне форума  
Непрочитано 11.02.2019, 20:35  
dkm
Вид на жительство
 
Регистрация: 10.04.2010
Сообщений: 301
Сказал спасибо: 25
Сказали Спасибо 136 раз(а) в 79 сообщении(ях)
dkm на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Сообщение от mikhail09p Посмотреть сообщение
Делал так, только без среднего, а просто брал центральное значение - в данном случае I4. И незачем тогда отбрасывать крайние значения.
Ток и напряжение так измеряю. Работает отлично.
Простите, но это называется колхоз.

Сообщение от makakus Посмотреть сообщение
Вот только его буфер должен заполняться за время, кратное целому числу периодов измеряемого сигнала.
Верное замечание про период сигнала, обычно про него забывают, а потом страшно удивляются результатам.
dkm вне форума  
Непрочитано 11.02.2019, 21:32  
mimuh64
Прописка
 
Регистрация: 29.10.2008
Сообщений: 272
Сказал спасибо: 0
Сказали Спасибо 102 раз(а) в 95 сообщении(ях)
mimuh64 на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Все что нужно было ТС - это среднеквадратичное для измерения переменного напряжения или тока (ток это напряжение на шунте), а для устранения "дергания" младших разрядов - "накапливающий интегратор". "Пила" на симисторе периодический сигнал, производный от синусоиды, нет выбросов. Поэтому не нужно супер-пупер фильтров и медиан. Все очень просто и легко проверяется...
PHP код:
DATA=(sqrt(Usum/N))*K;

// ФИЛЬТР устранения дрожания индикации при смене показаний "накапливающий интегратор"

 
if((DATA^DATA_TEMP) && timertimer--;
 else 
 {
    
DATA_TEMP=DATA;
    
timer=20// подбирается опытным путем
 
}

U_seg_p=DATA;

seg1 U_seg_p 100
seg2 
= (U_seg_p/10)%10
seg3 
U_seg_p%10
seg4 
10 
Вот пример собранный из разных проектов... Смотрим вольтметр и индикацию, крутим резистор...
Вложения:
Тип файла: rar PIC16f630.rar (30.0 Кб, 0 просмотров)
mimuh64 вне форума  
Непрочитано 14.02.2019, 09:44  
Leon_i
Прохожий
 
Регистрация: 17.03.2005
Сообщений: 7
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
Leon_i на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Среднеквадратичный вольтметр/амперметр для зарядного устройства.
https://radiokot.ru/cherdak/41/
Leon_i вне форума  
Непрочитано 16.02.2019, 09:58  
pic121618
Временная регистрация
 
Регистрация: 16.02.2019
Адрес: Барановичи
Сообщений: 81
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 1 сообщении
pic121618 на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Сообщение от IOPA4 Посмотреть сообщение
Я делал так, показания не дергаются, в сравнении с эталонным мультиметром почти идеально, усилитель на LMV358.
А скажите мне пожалуйста, вот Ваше это:
for (i=0; i‹16; i++) // делаем 16 измерений подряд
Это единственная операция мк в данной п/п, или он ещё должен реагировать на нажатия кнопок, выводить инфу (даже эту) на индикатор ?
Может он ещё что-то должен делать по своей программе, не ?
Конечно у Вас ничего не будет ёргаться - Вы ж зациклились на измерениях...
А как Ваше устр-во на кнопки реагирует ? Наверное тоже "абы-как" - Вы же пока рассчёты не произведёте - Вам всё "по барабану" ?
А может задействовать какой-нибудь таймер, по нему ходить в прерывания, там отсчитывать, к примеру, 1/256 секунды, устанавливать флаг, по этому флагу делать измерения АЦП 256 раз в секунду, через 16 измерений полное значение делить на 16 - и вот Вам - устр-во, которое помимо измерений напряжения - в свободное время будет ещё чем-то заниматься...
Или я ошибаюсь ?
pic121618 вне форума  
Непрочитано 16.02.2019, 11:51  
pic121618
Временная регистрация
 
Регистрация: 16.02.2019
Адрес: Барановичи
Сообщений: 81
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 1 сообщении
pic121618 на пути к лучшему
По умолчанию Re: Амперметр Atmega. Как устаканить??

Сообщение от mimuh64 Посмотреть сообщение
Вот пример собранный из разных проектов... Смотрим вольтметр и индикацию, крутим резистор...
Смешные люди, сами нульцевые, зато читать в "юсралке" умеют...
У меня жена такая, "нанюхается какашек" в ютубе, а потом ко мне пристаёт:
- Видел что там пишут ?
Мой ответ:
- Да не видел, и смотреть на эту помойку не хочу...
pic121618 вне форума  
 

Закладки

Метки
adc, atmega, atmel studio, lm358, вольтамперметр
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Глушилка громкой музыки у соседей VVK Отвлекитесь, эмбеддеры! 355 10.01.2019 20:09
Ностальжи по школе... Ar-Gen-Tum Отвлекитесь, эмбеддеры! 141 27.02.2015 16:10
Читать с закрытыми глазами, чего я не понимаю в этой жизни? e_one Отвлекитесь, эмбеддеры! 1083 15.04.2014 11:57
Гравитационное замедление времени alder Отвлекитесь, эмбеддеры! 775 15.11.2013 16:45
Особенности звучания УМЗЧ с полевыми транзисторами falkonist Аудиотехника 42 22.01.2009 02:05


Часовой пояс GMT +4, время: 11:52.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot