Фильтр АЦП atmega 8 по нижней границе

Обсуждаем контроллеры компании Atmel.
Ответить
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

понятно, кода не будет
ohmycode!
primuss3.com
Контактная информация:
Реклама
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

slav0n, ты теряешься.
Раз программист исходит из тз и электрической схемы, ну поставь тз так и создай схему так, что бы он долго голову ломал.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

та он уже голову сломал, судя по выкрутасам
ohmycode!
primuss3.com
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

[uquote="slav0n",url="/forum/viewtopic.php?p=4082185#p4082185"]понятно, кода не будет[/uquote]
Конечно не будет пока не сформулируете наконец чего же вы хотите.
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

хочу повторения своего алгоритма, но "по-правильному"
ohmycode!
primuss3.com
Контактная информация:
Реклама
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

Третий раз спрашиваю: описание задачи будет или нет? Не ваших попыток решения, а то, чего вы хотите добиться.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

COKPOWEHEU писал(а):Самое надежное - остановить ШИМ на некоторое время и измерить.
какая прэлэсть, использовать аппаратный ШИМ и останавливать его где попало...

ну, ладно, вот задача: измерять в каждом периоде ШИМ ток зарядки с максимально возможной задержкой после положительного фронта импульса ШИМ, напряжение без зарядки с максимально возможной задержкой после отрицательного фронта и все это без остановки ШИМ.
решай, пожалуйста
ohmycode!
primuss3.com
Контактная информация:
Модератор
Аватара пользователя
Сообщения: 19097
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

а если к концу зарядки положительный импульс станет таким узким (снижение зарядного тока), что не только не будет времени на задержку, но и не хватит времени сделать измерение, пока длится импульс?
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

1. у меня задержка регулируется автоматически и всегда максимальна
2. если импульс настолько короткий, что не дает измерять, то он и не нужен, тупо вырубаем таймер. все, конец зарядки
ohmycode!
primuss3.com
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

[uquote="slav0n",url="/forum/viewtopic.php?p=4082498#p4082498"]ну, ладно, вот задача: измерять в каждом периоде ШИМ ток зарядки с максимально возможной задержкой после положительного фронта импульса ШИМ, напряжение без зарядки с максимально возможной задержкой после отрицательного фронта и все это без остановки ШИМ.
решай, пожалуйста[/uquote]
Я что, недостаточно понятно написал?
Сформулируйте задачу, а не свои попытки решения.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

повторяю второй раз
slav0n писал(а):измерять в каждом периоде ШИМ ток зарядки с максимально возможной задержкой после положительного фронта импульса ШИМ, напряжение без зарядки с максимально возможной задержкой после отрицательного фронта и все это без остановки ШИМ.
ohmycode!
primuss3.com
Контактная информация:
Встал на лапы
Сообщения: 121
Зарегистрирован: Пт мар 19, 2021 08:58:45

Сообщение kote52 »

[uquote="slav0n",url="/forum/viewtopic.php?p=4082498#p4082498"]измерять в каждом периоде ШИМ ток зарядки с максимально возможной задержкой после положительного фронта импульса ШИМ, напряжение без зарядки с максимально возможной задержкой после отрицательного фронта и все это без остановки ШИМ.[/uquote]
перефразирую для себя, когда почти и вот уже смена фронта произойодет, т.е. где ток будет максимально наибольшим и более достоверно его получится измерить? а напряжение, получится самое минимальное возможное перед нарастающим фронтом?
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

думаю с током будет то же самое, что и с напряжением - под конец импульса он будет уменьшаться и стабилизироваться
ohmycode!
primuss3.com
Контактная информация:
Встал на лапы
Сообщения: 121
Зарегистрирован: Пт мар 19, 2021 08:58:45

Сообщение kote52 »

[uquote="slav0n",url="/forum/viewtopic.php?p=4082541#p4082541"]под конец импульса он будет уменьшаться и стабилизироваться[/uquote]
а мне казалось так, поведение тока такое
Вложения
pwm-kw.jpg
(42.25 КБ) 122 скачивания
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

да... а на самом деле вона как:
http://primuss3.com/forum/index.php?top ... 0#msg15490
ohmycode!
primuss3.com
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

[uquote="slav0n",url="/forum/viewtopic.php?p=4082533#p4082533"]повторяю второй раз[/uquote]
Видимо, внятного ТЗ я так и не дождусь...
Если речь о зарядке аккумулятора, то логично после ШИМ поставить LC-цепочку для сглаживания пульсаций. Соответственно, измеряется постоянный ток и изредка, при остановке ШИМ, напряжение.
Ладно, не хотите реальной помощи, не надо. Так и быть набросаю по вашему странному алгоритму. Разумеется, поскольку в реальности применяться это не будет, большую часть настроек возьму от балды.
Прорезались зубы
Сообщения: 228
Зарегистрирован: Пн окт 04, 2010 11:55:41

Сообщение neid »

[uquote="COKPOWEHEU",url="/forum/viewtopic.php?p=4082715#p4082715"]то логично после ШИМ поставить LC-цепочку для сглаживания пульсаций. Соответственно, измеряется постоянный ток и изредка, при остановке ШИМ, напряжение.[/uquote]
Вы видимо не знаете об импусных зу, там и привествуется именно заряд 19В на частоте около 1kHz, или десульфатор - тат же ЗУ но через дросель, плюс эл. конденсатор на 1000uf на той же частоте, заполнение ШИМ правдо около10% может и меньше. LC цепочка там не нужна, ну если сотворить из этого обычную автозарядку с порогом 14.4В.
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

Ну, грубо говоря, так:

Код: Выделить всё

#define ADCSRA_START (1<<ADEN | 1<<ADSC | 1<<ADFR | 0b110 << ADPS0) //F_CPU/64
#define ADC_TIME_TIMER 30 //сколько тактов таймера длится аналого-цифровое преобразование. Пусть например 30
#define ADC_LOW		(0b01<<REFS0 | 0) //ADC0
#define ADC_HIGH	(0b01<<REFS0 | 1) //ADC1

ISR(TIMER1_COMPB_vect){
  static uint8_t flag_low = 0;
  if(flag_low){
    adc_H = ADCH;
    ADMUX = ADC_LOW;
    ADCSRA = ADCSRA_START;
    OCR1B = OCR1A - ADC_TIME_TIMER;
    flag_low = 0;
    PORTC |= (1<<4);
  }else{
    adc_L = ADCH;
    ADMUX = ADC_HIGH;
    ADCSRA = ADCSRA_START;
    OCR1B = ICR1 - ADC_TIME_TIMER;
    flag_low = 1;
    PORTC &=~(1<<4);
  }
}
У AVR в режиме ШИМов включается двойная буферизация регистров, поэтому измерение проходит только на половине импульсов ШИМ.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

ну что тут скажешь... оригинально
а где же аппаратный ШИМ? где разгрузка ядра?..
ohmycode!
primuss3.com
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

В смысле "где"? На канале А, естественно. PC4 это просто отладочный вывод.
Ответить

Вернуться в «AVR»