реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> AVR и фазовращатель
kanzler
сообщение Mar 31 2006, 08:11
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 27-02-06
Из: Екатеринбург
Пользователь №: 14 728



Уважаемы, господа! Прошу вашей помощи. Есть меандр с частотным диапазоном 1-2 кГц. Нужно фращать фазу от 0 до 180 или 360 градусов с шагом 1-5 градусов. Поделитесь опытом или подскажите где есть исходники для AVR, если кто делал такую штуку. Я реализовал такую шутку но только на ПЛИС которая работает только с одной частотой.
Go to the top of the page
 
+Quote Post
andrvisht
сообщение Mar 31 2006, 08:26
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 298
Регистрация: 29-08-05
Пользователь №: 8 064



Цитата(kanzler @ Mar 31 2006, 11:11) *
Уважаемы, господа! Прошу вашей помощи. Есть меандр с частотным диапазоном 1-2 кГц. Нужно фращать фазу от 0 до 180 или 360 градусов с шагом 1-5 градусов. Поделитесь опытом или подскажите где есть исходники для AVR, если кто делал такую штуку. Я реализовал такую шутку но только на ПЛИС которая работает только с одной частотой.

Делал для эмуляции SIN/COS вращающегося трансформатора. Код написан был еще в Algorithm Builder но он очень прост, так что разберетесь.
algrom.net это программа Algorithm Builder
Прикрепленные файлы
Прикрепленный файл  SinCosEmul.rar ( 3.39 килобайт ) Кол-во скачиваний: 106
 
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Apr 1 2006, 10:09
Сообщение #3


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Цитата(kanzler @ Mar 31 2006, 14:11) *
Есть меандр с частотным диапазоном 1-2 кГц. Нужно фращать фазу от 0 до 180 или 360 градусов с шагом 1-5 градусов.

Не понятна постановка вопроса...
"Вращать фазу" можно только относительно чего-либо (какой-то реперной фазы). Если у вас просто генератор меандра, то скорее нужно говорить о временнОй задержке фронтов, а не о фазе, как таковой. Тем более, что речь идет о дискретном изменении этого параметра.
Так же стоило бы указать параметры фазо-модулирующего сигнала (или - закона, по которому "гняется" фаза).
В любом случае, задача довольно тривиальна (ИМХО), и должна легко решаться программно.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
kanzler
сообщение Apr 3 2006, 03:58
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 27-02-06
Из: Екатеринбург
Пользователь №: 14 728



Цитата(Валентиныч @ Apr 1 2006, 16:09) *
Не понятна постановка вопроса...
"Вращать фазу" можно только относительно чего-либо (какой-то реперной фазы).

Относительно самого же меандра. То есть на входе меандр на выходе тот же меандр но только со сдвигом фазы.
Цитата(Валентиныч @ Apr 1 2006, 16:09) *
Если у вас просто генератор меандра, то скорее нужно говорить о временнОй задержке фронтов, а не о фазе, как таковой. Тем более, что речь идет о дискретном изменении этого параметра.
Так же стоило бы указать параметры фазо-модулирующего сигнала (или - закона, по которому "гняется" фаза).
В любом случае, задача довольно тривиальна (ИМХО), и должна легко решаться программно.

Согласен, просто ... на ПЛИС это всё работает, правда только для фиксированной частоты. Но вот на AVR пока не удалось реализовать такую штуку.
Go to the top of the page
 
+Quote Post
Валентиныч
сообщение Apr 3 2006, 12:09
Сообщение #5


Профессионал
****

Группа: Свой
Сообщений: 553
Регистрация: 17-02-05
Из: Свердловская обл.
Пользователь №: 2 712



Все таки, поставьте задачу конкретнее - начиная со способа формирования (программно или аппаратно?) и частотного диапазона исходного меандра с дискретность изменения частоты, и определитесь с законом модуляции. Многое будет зависить от закона, по которому изменяется фаза. Если это просто отдельные скачки фазы на какой-то (или строго определенный?) угол - это одно, если эти скачки во времени имеют какую-то закономерность - другое. Нужно ли крутить фазу в обе стороны, или достаточно простой фазовой задержки? Кстати - сама задача реалтаймовская, или...?
Кроме того, необходимо знать: нужен единственный выход с ФМ, или вам требуется два независимых канала - реперный, и канал с ФМ.

Повторюсь: если отвлечься от закона изменения фазы, то сам процесс изменения легко свести к обычной задержке фронтов меандра на t(задержка)=Т(период)/360*К(угол сдвига фазы) простым повтором команды "nop", или ее циклом.
При реальных тактовых частотах процессора (8-12 МГц) вполне можно добиться точности "поворота" фазы сигнала частотой 1-2 кГц не хуже 0,01%, или ~ 0,04 град.


--------------------
Закономерность: Чем больше узнаю, тем меньше знаю...
Любые мнения, даже ошибочные, имеют право на существование.
Чем лучше узнаю людей, тем больше нравятся собаки...
Go to the top of the page
 
+Quote Post
kanzler
сообщение Apr 4 2006, 05:37
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 27-02-06
Из: Екатеринбург
Пользователь №: 14 728



Меандр формируется аппаратно-программным способом (Таймер AVR), частотный диапазон 1-2кГц с шагом 1Гц, который возбуждает катушку индуктивности металлодектора. С катушки снимается ток который формирует меандр который может менять фазу относительно сигнала с генератора, являющийся синхросигналом для синхронного детектора. Но не суть важно, важно то что это меандр нужно крутить по фазе в обоих направлениях с шагом 1-5 градусов (задача не жёсткая, но необходимая для поиска квадратуры и синфазной составляющей). Поворот фазы нужно производить программным способом в начальный момент настройки работы прибора, но возможно придётся и в реалтайме крутить фазу(пока не известно).
Go to the top of the page
 
+Quote Post
andrvisht
сообщение Apr 4 2006, 06:44
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 298
Регистрация: 29-08-05
Пользователь №: 8 064



to kanzler
Судя по постам проблема еще не решена ?
Обнаружил дома более свежий вариант, с кнопочками smile.gif
Что-то редактирование поста не работает, так что прилагаю обновленный снова.
Если проблема с AlgBuilder то скажите на какой кристалл и к каким ногам кнопки прицепить тогда hex приложу и asm listing.
Прикрепленные файлы
Прикрепленный файл  SinCosNew.zip ( 4 килобайт ) Кол-во скачиваний: 73
 
Go to the top of the page
 
+Quote Post
kanzler
сообщение Apr 4 2006, 07:36
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 27-02-06
Из: Екатеринбург
Пользователь №: 14 728



Цитата(&-rey @ Apr 4 2006, 12:44) *
to kanzler
Судя по постам проблема еще не решена ?
Обнаружил дома более свежий вариант, с кнопочками smile.gif
Что-то редактирование поста не работает, так что прилагаю обновленный снова.
Если проблема с AlgBuilder то скажите на какой кристалл и к каким ногам кнопки прицепить тогда hex приложу и asm listing.

К Сожалению нет, нерешена ...
Ну а кнопки зачем?
Go to the top of the page
 
+Quote Post
andrvisht
сообщение Apr 4 2006, 07:41
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 298
Регистрация: 29-08-05
Пользователь №: 8 064



Цитата(kanzler @ Apr 4 2006, 10:36) *
К Сожалению нет, нерешена ...
Ну а кнопки зачем?

Так это фазу крутить. Кнопка на увеличение фазы, и кнопка на уменьшение фазы, в пределах 360 грд конечно.
Или это не то что Вам нужно ?
Go to the top of the page
 
+Quote Post
kanzler
сообщение Apr 4 2006, 09:12
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 27-02-06
Из: Екатеринбург
Пользователь №: 14 728



Цитата(&-rey @ Apr 4 2006, 13:41) *
Так это фазу крутить. Кнопка на увеличение фазы, и кнопка на уменьшение фазы, в пределах 360 грд конечно.
Или это не то что Вам нужно ?

Вы не правильно поняли, как управлять не стоит вопрос, вопрос в том что есть на входе меандр, а на выходе должен быть тот же меандр но сдвинутый по фазе, к тому же частота меандра может быть различна от 1 до 2 кГц. Ваш же пример - генератор двух меандров одной частоты но сдвинутых по фазе.
Go to the top of the page
 
+Quote Post
andrvisht
сообщение Apr 4 2006, 10:17
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 298
Регистрация: 29-08-05
Пользователь №: 8 064



Цитата(kanzler @ Apr 4 2006, 12:12) *
Цитата(&-rey @ Apr 4 2006, 13:41) *

Так это фазу крутить. Кнопка на увеличение фазы, и кнопка на уменьшение фазы, в пределах 360 грд конечно.
Или это не то что Вам нужно ?

Вы не правильно поняли, как управлять не стоит вопрос, вопрос в том что есть на входе меандр, а на выходе должен быть тот же меандр но сдвинутый по фазе, к тому же частота меандра может быть различна от 1 до 2 кГц. Ваш же пример - генератор двух меандров одной частоты но сдвинутых по фазе.

все, теперь понял. Нужно будет подумать .
Go to the top of the page
 
+Quote Post
bzx
сообщение Apr 4 2006, 11:50
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528



Цитата(kanzler @ Mar 31 2006, 12:11) *
Уважаемы, господа! Прошу вашей помощи. Есть меандр с частотным диапазоном 1-2 кГц. Нужно фращать фазу от 0 до 180 или 360 градусов с шагом 1-5 градусов. Поделитесь опытом или подскажите где есть исходники для AVR, если кто делал такую штуку. Я реализовал такую шутку но только на ПЛИС которая работает только с одной частотой.

Задача разбивается на 2
1. Определение частоты входного сигнала
2. Формирование задержки.


--------------------
Для связи email: info собака qbit.su
Go to the top of the page
 
+Quote Post
kanzler
сообщение Apr 5 2006, 05:35
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 27-02-06
Из: Екатеринбург
Пользователь №: 14 728



Цитата(bzx @ Apr 4 2006, 17:50) *
Задача разбивается на 2
1. Определение частоты входного сигнала
2. Формирование задержки.

Огромное спасибо всем кто отвечает. Есть но ...
1. Я уже писал частота изменяется в диапазоне от 1 до 2 кГц с шагом 1 Гц. Тут проблем нет, так как эти частоты генерирует сам процессор.
2. вот тут и возникает вопрос как реализовать задержку в таком диапазоне частот чтобы не пропадали полупериоды меандра.
Для одно фиксированной частоты это реализовать не сложно (уже есть такое решение и прекрасно работает) на основе счётчика который и определяет задержку. Всё упирается в пункт 2.
Go to the top of the page
 
+Quote Post
bzx
сообщение Apr 5 2006, 06:12
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 482
Регистрация: 5-07-05
Из: Санкт-Петербург
Пользователь №: 6 528



Цитата(kanzler @ Apr 5 2006, 09:35) *
1. Я уже писал частота изменяется в диапазоне от 1 до 2 кГц с шагом 1 Гц. Тут проблем нет, так как эти частоты генерирует сам процессор.

Вот чудак-человек! А сразу нельзя было сказать, что твоя частота формируется самим контроллером. Я же в пункте 1. предполагал, что частота подаётся извне. Это всё значительно упрощает.

Цитата
2. вот тут и возникает вопрос как реализовать задержку в таком диапазоне частот чтобы не пропадали полупериоды меандра.
Для одно фиксированной частоты это реализовать не сложно (уже есть такое решение и прекрасно работает) на основе счётчика который и определяет задержку. Всё упирается в пункт 2.

Насколько я понимаю, то что предложил &-rey тебе должно подойти. Если же ты говоришь, что это тебе не подходит, то значит, что то ты чего то не договариваешь в задаче. Я подозреваю, что есть желание, что бы задержка (сдвиг фаз, в прочем это одно и тоже) была не фиксированная, а изменялась во времени. Тогда требуется ещё и скорость изменения фазы и направление изменения. Поясни.


--------------------
Для связи email: info собака qbit.su
Go to the top of the page
 
+Quote Post
andrvisht
сообщение Apr 5 2006, 06:43
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 298
Регистрация: 29-08-05
Пользователь №: 8 064



cranky.gif а мне показалось, что имеллось ввиду что частоты малы и их легко можно контролировать ....
А вариант когда приходит частота а мы потом из неё делаем такую-же (с какой-то задержкой) и еще одну которая уже будет крутиться относительно этой опорной подойдет ?
Если да, тогда мене нужно будет вспомнить чего я там рисовал, и попытаться делать измерение входной частоты и выдачу корректированного параметра. Но следует оговорить скорость изменения входной частоты (фаза за период) что вообщем уже было сказано.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th July 2025 - 16:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.01512 секунд с 7
ELECTRONIX ©2004-2016