Скажите плз. может кто-то сталкивался - как можно МК Atmega16 мерять последовательность фаз ?
Если это можно выполнить программным путём, то подскажите плз как!
или есть у кого-то примерчик . . .
Заранее благодарин всем !
Ага ! Ща соберусь с мыслями и попробую растолковать !ARV писал(а):последовательность каких фаз, точнее фаз чего вы собрались мерить?! растолкуйте...
А как же программно реализовать это ?Илья79 писал(а):Вот вы уважаемый kybertech сами почти ответили на свой вопрос:
1)Берем за опорную фазу А (ждем пока фаза А не перейдет через ноль)
2) За фазой А переходит через ноль фаза В, то это прямая последовательность чередования фаз
3) за фазой А переходит следом фаза С то обратная последовательность
П.С. как фазу назовешь так она и поплывет
МК : Atmega16Илья79 писал(а):Для этого надо знать, на каком языке ты хотел бы писать программу, какую схему подключения используешь
И вообще кто я такой
C таким решением я согласен ! Но на тех лапах я ещё меряю напряжение ! разве можно одновременно и мерять напряжение и смотреть не ноль ли там ?Илья79 писал(а):вот что получилось, код не очень, как получился![]()
while (1) // Основной цикл
{
if (PINA.0==0) //переход фазы А через ноль
{while (1) //цикл опроса
{if (PINA.1==0) //Переход фазы В через ноль
{PORTB.3=1; //прямая последовательность зажигаем светодиод
break; //выпрыгиваем из цикла
}
{if (PINA.2==0) //переход фазы В через ноль
{PORTB.3=0; //обратная последовательность гасим светодиод
break; //выпрыгиваем из цикла
}
}
}
}
в том то и дело, напряжение переменное но я ставлвлю после делителя конденсатор для сглаживания и напряжение меряется постоянно.Aheir писал(а):Напряжение измеряется постоянно?
В конце концов, можно подать тот же сигнал еще и на другие ноги контроллера, на которых отлавливать только переход через 0.
NiTr0 писал(а):Измерить пиковое напряжение, поделить на 1.4- получите грубо RMS.
Или суммировать все отсчеты за 1 (а лучше 2, 3, 4 или больше) периодов, умножить потом на 2 (т.к. половина периода выпадет) и поделить на кол-во отсчетов - получите настоящее RMS.
А еще можно подтягивать "ноль" делителей к половине опорного напряжения, выкинуть диоды и в итоге измерять настоящее RMS.
Определить переход через ноль - тоже не проблема будет по показаниям АЦП.
А что смотреть? В вашей схеме выкидываете делители, делаете внешний ИОН (моно даже 5В питающих заюзать, только о стабильности позаботиться), от него - делитель скажем 2 резистора по 4.7к и от средней точки кондер эдак 100-1000 мкф на землю...kybertech писал(а):Спасибо огромное вот бы ещё наглядно взглянуть на это всё что бы понять полностью !
Чем больше, тем лучше.kybertech писал(а):А подскажите плз. сколько нужно измерять раз одну полуволну ? я так понимаю чем больше тем лутше или я не прав ? (для того что бы потом всё сложить и т.д.)
Только лучше суммировать все измерения за полуволну, после - получить их среднее арифметическое. Т.к. пиковое значение хорошо для синуса, но совсем не годится при наличии в сети помех.kybertech писал(а): потом из полученых значений получаю максимальное и дальше уже делю, умножаю его и тд. и тп. и тр. и др. и вместе с измерениями я программно могу отлавливать переход через ноль.
В прикреплённом файле нрисовал синусоиду и коментарии.NiTr0 писал(а): Только лучше суммировать все измерения за полуволну, после - получить их среднее арифметическое. Т.к. пиковое значение хорошо для синуса, но совсем не годится при наличии в сети помех.
А еще лучше - суммировать за весь период
В прикреплённом файле нрисовал синусоиду и коментарии.NiTr0 писал(а): Только лучше суммировать все измерения за полуволну, после - получить их среднее арифметическое. Т.к. пиковое значение хорошо для синуса, но совсем не годится при наличии в сети помех.
А еще лучше - суммировать за весь период