Страница 6 из 27
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Пн май 02, 2011 15:28:47
ooogo
clawham писал(а):
а вы на асме пишите или на сях?
на си
очень интересно ... как вы выводите на экран?
согласно даташита, в архиве есть фай lcd.h нашел где-то в сети, там функции вывода на экран.
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Пн май 02, 2011 16:31:45
ooogo
clawham если объясните Ваш алгоритм счета, то могу попробовать добавить его, сейчас у меня просто таймер тактируется внешним сигналом.
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Пн май 02, 2011 16:50:24
Coviraylhik
Исходник для тини оказался не для моего компилятора AvrStudio 4.18 Build 716 там вроде ж и WinAVR встроен.
- Watts_2313.rar
- Схемка в протеус для тини 2313
- (13.72 КБ) 404 скачивания
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Пн май 02, 2011 17:07:49
clawham
мой алгоритм состоит из 3-х этапов
стек импульсов
стек длительностей между импульсами и общая длительность между импульсами
у меня работает таймер на частоте системы и считает....по переполнению он продолжает считать просто инкрементируя счетчик переполнений...
дальше стек....каждую 1/8 секунды снимаются показания счетного таймера тактуемого внешним событием
всё что натикало за 1/8 секунды ложится в массив...
потом всё суммируется, иделится на размер массива поделенный на 8 получаем среднее значение за большой период с накоплением неточности
дальше длительность..есть часовой таймер...тоже работающий на системе....он перезапускается при положительном импульсе на инт1
ну а дальше в основном цикле всё это дело считаю в герцах смотрю диапазоны и взаимные влияния...например на частоте до 10 герц только длительность импульса потом плавное подмешивание средними квадратами результата количества импульсов и на 500 герцах (примерно) и выше полный переход на кол-во импульсов....ну и конечно куча усреднений оптимизаций пересчет коэффициентов, учет колва импульсов отдельным таймером который инкрементирует внутренние переменные....ну менюшки там...всё это динамически выщитывается из заданных переменных...ну..в общем я исходник же не скрываю

смотрите...там много всего

Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Пн май 02, 2011 17:11:18
clawham
я имел ввиду разложение флоата на до точки и после точки...
видел.....красивое решение...попробую тож чтото написать...я столкнулся например с тем что при делении 5/10 получаем не 0 в целых чарах а 1...типа округление....
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 10:10:46
ooogo
clawham вот это алгоритм, мне неделю с ним разбираться
я имел ввиду разложение флоата на до точки и после точки...
стараюсь не использовать флоаты слишком много места и проц. времени занимают операции с ними.
у меня счетчик целое 16 бит, потом усредняю (без округления), и раскладываю на десятичные цифры.
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 10:14:09
ooogo
Coviraylhik писал(а):Исходник для тини оказался не для моего компилятора AvrStudio 4.18 Build 716 там вроде ж и WinAVR встроен.
по идее должен компилить.
можно скачать
WinAVR 30Мб.
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 12:48:54
clawham
Посмотрел исходничек....
заитриговала строчка....
temp=(TCNT1*625)/17;
если учитывать что инт унсигнед то получается предел в этом вычислении
65535/625 = 104857 импульсов за 16 секунд(кстати delay_ms() очень неточно отрабатывает паузы...особенно большие....я уже не раз на этом попадался)
Если Вы не против я возьму ваш исходничек и перелопатаю?
меня конечно же интересует только часть форматирования вывода...и...почемуто когда я на меге такое же сделал - получилась белиберда...почему-то....не знаю где и откуда но ... целочисленное деление получалось с округлением

мож это было в прошлом компиляторе который и флоат-то не мог записывать в еепром....
в том же проекте на меге я например никак не могу уйти от флоата...
для 1600 имп на киловатт счетчика мне нужно поделить число 16000000*2250=
36000000000, а возможность лонг инта всего
4294967295...тоесть на порядок ниже...флоат тоже теряет точность на таких числах...16000000 он уже только целыми значениями записывает...но...при дальнейшем увеличении он теряет точность ещё больше но допустим на моем числе это 4 тоесть к тому числу прибавлять 123 бесполезно...а вот 4 - увеличит результат переменной...главное достоинства в том что если поделить 16000000 на 15999999 то получится результат с огромнейшей точностью на какуютолько способен флоат!
а на лонгах получится что мне прийдётся уменьшать точность...и это уже не 0.000 будет а десятки!!! а это не очень интересно...хотя...попытка ж не пытка...сичас возьмусь напишу на тиню по-новому...с Вашим выводом если вы не против?
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 14:18:08
Coviraylhik
Вот сделал скрин , компилятора, ругается.
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 15:01:41
ooogo
Coviraylhik писал(а):Вот сделал скрин , компилятора, ругается.
в ту же папку где исходник лежит добавте файл из архива lcd.h
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 15:07:46
ooogo
clawham писал(а):
если учитывать что инт унсигнед то получается предел в этом вычислении
65535/625 = 104857 импульсов за 16 секунд
можно long int сделать не принципиально.
(кстати delay_ms() очень неточно отрабатывает паузы...особенно большие....я уже не раз на этом попадался)
Это в кодвижане не очень точно, в WinAVR паузы до 1 с имеют приемлимую точность.
Если Вы не против я возьму ваш исходничек и перелопатаю?
берите, что требуется

Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 15:32:34
ooogo
clawham писал(а):
в том же проекте на меге я например никак не могу уйти от флоата...
для 1600 имп на киловатт счетчика мне нужно поделить число 16000000*2250=
36000000000, а возможность лонг инта всего
4294967295...тоесть на порядок ниже...флоат тоже теряет точность на таких числах...16000000 он уже только целыми значениями записывает...но...при дальнейшем увеличении он теряет точность ещё больше но допустим на моем числе это 4 тоесть к тому числу прибавлять 123 бесполезно...а вот 4 - увеличит результат переменной...главное достоинства в том что если поделить 16000000 на 15999999 то получится результат с огромнейшей точностью на какуютолько способен флоат!
а на лонгах получится что мне прийдётся уменьшать точность...и это уже не 0.000 будет а десятки!!! а это не очень интересно...хотя...попытка ж не пытка...сичас возьмусь напишу на тиню по-новому...с Вашим выводом если вы не против?
у Вас сложный алгоритм, у меня все намного проще, но при этом минимальная дискретность(при 588Вт/Гц) 1 импульс за 16 с, т.е. 36 Вт, можно увеличить время измерения до 32 с, дискретность будет 18 ВТ.
Повторюсь при 4 Вт/Гц, времени измерения 8с, можно получить дискретность 0,5Вт
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 16:41:10
clawham
он то сложный но вот скажите мне ...как ваша прошивка отрабоатет 2 импульса в 19 секунд?
странно а где есть такой счетчик 4 ватта на герц?
100 ватт на герц самое быстрое что я видел...
у меня вообще 2250 ватт на герц...
при тех же 100 ваттах на герц и времени стека 8 секунд минимальным приемлемым по точности количеством импульсов я считаю 8*9=72 герца...а 72 герца это уже 7 киловатт что в принципе недостижимо ни одним потребителем в одиночку..разве что на дом постаивть...общий вводный...
дискретность это дело очень плохое...
но эт не принципиально...
например длоя моих 1600 имп на киловатт мне для нагрузки 20 ватт надо поймать один импульс в 112 секунд...
согласитесь..такое время и скорость обновления никого не устроят на киловаттах...когда импульсы каждую секунду идут
просто в тине мало ресурсов для всего этого...
той же оперативы...таймеров....флеши...но...я попробую влезть....
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 17:49:03
ooogo
clawham писал(а):он то сложный но вот скажите мне ...как ваша прошивка отрабоатет 2 импульса в 19 секунд?
если два задних фронта попадут за 16с то так и посчитает как два импульса затем 2*625/17=73 Вт. Не спорю, а констатирую факт, Ваш алгоритм лучше.
странно а где есть такой счетчик 4 ватта на герц?
100 ватт на герц самое быстрое что я видел...
в статье журнала Радио, на первой странице, выкладывал
Coviraylhik
например длоя моих 1600 имп на киловатт мне для нагрузки 20 ватт надо поймать один импульс в 112 секунд...
согласитесь..такое время и скорость обновления никого не устроят на киловаттах...когда импульсы каждую секунду идут
не понял? Как это импульсы каждую секунду идут, при том, что надо поймать один импульс в 112 секунд...
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 18:47:29
Coviraylhik
Не, самое быстрое это 100 ватт на Гц, а 4 ватт на Гц это гараздо медленее, вот цитата из авторской статьи
...........Процесс измерения мощности, потребляемой кипятильником с номинальной мощностью 0.5 кВт. иллюстрирует фото рис. 3 Коэффициент преобразования в экземпляре автора равен 4.05 Вт Гц. Частота импульсов — 113.6 Гц. что соответствует мощности 459 Вт
Тут в этом описании есть какаято путаница , потому что даже у меня с замененым кварцем нагрузка в 0.5 кВт. выдаст на выходе только 5 герц
ooogo в той же папке где исходник лежит , лежит и файл
cd.h , а оно почему то его игнорирует.
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Вт май 03, 2011 19:03:43
clawham
помоему если при 100 ваттах на герц нагрузить лампочкой то получим один герц а если 4 ватта на герц нагрузить 100 то получим 25 герц!!! так что это ещё быстрее!!!
но это вмешательство в весовые резисторы и т.д. а я не хочу нарушать работу счетчика вообще!ибо если увеличить напругу на входах 7751 то получим проблему вылета тока или напряжения за пределы..импульсного тока или напруги...это всё не будет учитываться...ну и предел верхний опустится соответственно....потому конечно кварц это лучшее что можно придумать..просто увеличивается скорость вывода информации о моности и всё....
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Ср май 04, 2011 13:39:31
ooogo
Coviraylhik писал(а):
ooogo в той же папке где исходник лежит , лежит и файл cd.h , а оно почему то его игнорирует.
нажмите на source file правой кнопкой? в контекстном меню выберете добавить к проекту файл и укажите lcd.h, если контекстного меню не будет посмотрите меню Project
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Чт май 05, 2011 01:23:32
clawham
Ну чтож давно я не делал ничего кардинального
на этот раз полный абзац!
1) поменян алгоритм фильтрации
2) поменян алгоритм сброса в ноль
3) добавлено разрядности счетчику....теперь и 0.0001 ватт может показать если микросхема сможет это показать
4) Добавлена база данных 21 счетчика! при запуске он помнит какой вел и продолжает его вести(кроме одного текущего и одного общего)
5) соответственно перелопачена менюшка....улучшена работа кнопочек
6) по каждому счетчику ведется время в секундах его активности
7) изза нехватки памяти все тексты вынесены в еепром потому еепромину шить обязательно...и поставить галку EESAVE=0 чтоб при перепрошивке еепромину не насиловать...

немного допилен напильником механизм перехода с счета тактов на счет длительности...но я проверить не могу...потому всё увы и ах - только на Вас!
Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Чт май 05, 2011 10:28:02
Coviraylhik
Пробую сейчас с кварцем 16 мгц, но не могу прошивку заценить полностью, так как в пункте меню не получается изменить сотношение ватт на Гц , с другими пунктами всё вроде ОК

Re: Цифровой ваттметр. Измерит.акт.мощности ADE7751 & ATtiny
Добавлено: Чт май 05, 2011 10:33:13
clawham
проде всё проверял по менюшке....там немного подольше надо кнопки надимать на пониженном кварце.....