Цитата
измерение среднеквадратичного напряжения сети
...
В mega88
Если по простому:
1. Отсеките все отрицательные полупериоды - (схема будет проще - можно убрать смещение / выбросить мостик, оставить только делитель и отсекающий диод да и тот можно выбросить т.к. в МК уже есть).
2. Обеспечьте семплирование АЦП с постоянной частотой Fd напр. 4kHz.
3. Словите начало очередного положительного полупериода (текущее показание с АЦП >0, а предыдущее =0), и начните суммировать все, что приходит с АЦП, заодно запоминая сколько чисел просуммировали.
4. в квадрат ничего не нужно возводить и так все числа положительные, т.к. отрицательные отсекли в п.1. (соответственно потом и корень не надо будет брать).
5. По окончанию полупериода (предыдущее показание АЦП > 0, текущее =0) остановите суммирование, поделите сумму на количество просуммированных семплов.
6. Числа получаемые в результате деления в п.5 пропустите через КИХ/БИХ фильтр по вкусу. (напр скользящее среднее по 8-ми точкам с отбросом мин и макс значений).
7. Поделите отфильтрованное число из п.6 на "K" найденное в процессе калибровки ну и собсно все - результат готов...
калибровка:
8. Измерьте среднеквадратичное напряжение в сети эталонным прибором.
9. Поделите полученное отфильтрованное число из п.6, на показание эталонного прибора из п.8, в результате получите число "K" для п.7
Вы удивитесь насколько точно оно будет работать, и ведь без никаких квадратов и корней!

Правда способ будет работать только для правильного синуса.