Страница 1 из 2
генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 19:43:22
Sel4
Здравтсвуйте! Подскажите, как реализовать генератор одиночного импульса ?
длина импульса 0,2сек и постоянна , а частота должна меняться в пределах от 0,2 до 4гц по изменению на аналоговом входе.
Контроллер atmega16.
Re: генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 20:13:08
SmarTrunk
Таймерами. Их в АТмега16 3 штуки. Ими делаются задержки. По окончании счета таймер может сделать прерывание, для выполнения следующего шага.
Re: генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 20:22:07
Dr. Alex
А насколько стабильно должно быть ваше устройство?
Re: генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 21:29:46
Sel4
делал я через прерывания.. многие советуют правильно, почти... меняется длина импульса все равно...
стабильность не важна... за частотой будет следить контролер через термопару (планируется пид )
Re: генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 21:36:44
Dr. Alex
А если попробовать через аппаратный ШИМ? Использовать с коррекцией фазы?
Re: генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 21:45:31
Sel4
там.я все перепробывал... меняется длина все равно...
мне каж нужно как то жестко задать длину и выводить это на ножку с частотой, пропорционально уровню ацп.
может как то через if...
Re: генератор 0,2-4Гц
Добавлено: Сб сен 13, 2014 22:12:27
Dr. Alex
ну тогда делать програмный шим
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:00:05
Sel4
шим? хм... мне. кажется ЧИМ. Ведь должна меняться частота следования импульсов, а при шим она не меняется. Или там есть некоторые тонкости?
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:21:32
КРАМ
Sel4 писал(а):шим? хм... мне. кажется ЧИМ.
Нужен режим Output Compare для одного таймера, который в свою очередь запускается другим таймером (его OCR-регистром), время пересчета которого (период следования импульсов созданных первым) определяется из входного аналогового сигнала. То есть не частоту импульсов нужно рассчитывать, а ПЕРИОД СЛЕДОВАНИЯ.
Есть только один нюанс. Так как запуск Output Compare будет происходить через прерывания от второго таймера, то нужно учитывать НЕСТАБИЛЬНОСТЬ ЛАТЕНТНОСТИ этого прерывания. Я не помню насчет АТмеги - как у нее с этой нестабильностью...
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:37:00
Sel4
нестабильности латентности -это, как понимаю, частота не стабильная будет? да и ладно, это ж насос дозировочный будет.
лишь бы не в два раза отличалась.
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:43:57
Borodach
Может проще будет на двух 555 или одной 556 собрать?
На первой генератор на 0,2-4 Гц, а на второй уже таймер на 0,2 сек ...

Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:48:51
КРАМ
Borodach писал(а):Может проще...

Не проще, потому что еще есть задача АНАЛОГОВОГО управления, что потребует ОУ для преобразования уровней, усиления, ПИД и прочей мутотени.
Задачу нужно решать не "проще", а в соответствии с требованиями... А то получится "как всегда"...
Sel4 писал(а):
лишь бы не в два раза отличалась.
В два раза не будет. Речь идет о нестабильности в пару-тройку машинных циклов. То есть нестабильность составит примерно 1/50 000
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:50:18
Borodach
Зачем усложнять, если ТС не просит ... ?
Sel4 писал(а):нестабильности латентности -это, как понимаю, частота не стабильная будет? да и ладно, это ж насос дозировочный будет.
лишь бы не в два раза отличалась.
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:54:15
КРАМ
Borodach писал(а):Зачем усложнять, если ТС не просит ... ?
ТС просит именно на МК. Ему виднее.
Полагаю, что там еще и управление есть.
Кстати, на МК получится проще. Потому что кроме самого МК там практически не будет никакого навеса.
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 08:59:36
Borodach
КРАМ писал(а):
Кстати, на МК получится проще.
Кому как ...

Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 09:08:42
Sel4
сейчас работает так: шим с контроллера конвертится в аналоговый и управляет к512пс10, на ней реализован такой формирователь импульса. как бы норм, задача выполняется, но, блин, можно и без этой микрухи. и полевик, который управляет в цепи задающего генератора плывет от температуры. а МК малоподвержен воздействию температуры окр среды.
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 09:22:50
Леонид Иванович
Нужно использовать режим изменения состояния ножки OC по совпадению. В прерывании по совпадению загружаете новое значение в OCR, как старое значение + длительность импульса, настраиваете сброс ножки OC по совпадению. В следующем прерывании загружаете новое значение в OCR, как старое значение + (период - длительность импульса), настраиваете установку ножки OC по совпадению. И так далее. Импульсы будут генериться аппаратно без всякого джиттера. Главное, чтобы прерывание успело обработаться от момента текущего совпадения до момента следующего совпадения. Т.е. нельзя делать длительность импульса очень близкой к периоду.
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 10:31:29
urry
Там 50 мс разница, за это время можно добежать до канадской границы.
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 11:23:47
Sel4
urry, по ходу, че надо...приду домой гляну лучше...
у меня несколько каналов adc, через массив..
как то можно оттуда значение брать?
Re: генератор 0,2-4Гц
Добавлено: Вс сен 14, 2014 11:28:08
urry
кто вам может это запретить ?
