|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 12:43 pm
| Автор |
Съобщение |
|
emilvtc
Ранг: Форумен бог
Регистриран на: Вто Фев 06, 2007 8:44 pm Мнения: 3175 Местоположение: Пловдив
|
 DDS генератор
От много време ме гложди мисълта как най-мързеливо, лесно и евтино да се направи DDS генератор с възможност за синтез на сигнал с произволна форма. Т.е. да му се зареди произволен патърн, който периодично да се "плейва".
Представям си го с някакъв микроконтролер с USB и достатъчно RAM памет (примерно >=32kb за буфер в който ще се зареди парърна на сигнала), който периодично през точен интервал от време (без джитер) да зарежда DAC с максимална честота на рефрешване поне 20msps (да може да се генерира синусоида от 40точки с честота 500kHz). Цялото устройство да се захранва само от USB-то. Честотите и рефреш-рейта не са задължителни и твърдо фиксирани, но е добре да са колкото се може по-високи, стига да могат да се постигнат САМО с микроконтролер и наличната в него периферия.
Микроконтролера може да е всякакъв относително достъпен (като доставка и цена), стига да има подходящата периферия: 1. Да може да клочи с DMA паралелен (примерно 16 bit) бъс, към който ще е закачен DAC-a. DMA трафика вероятно трябва да се тригерира от таймер, за да може да се променя рефреш-рейта на DAC-a. (как може да се направи по друг начин, така че да се гарантира постоянен рефреш-рейт без вкарване на джитер?) 2. Достатъчно RAM >=32kB 3. USB интерфейс за връзка с PC
Не ми се мисли в посока програмируема логика (FPGA, CPLD и др.)+ RAM + .... Съгласен съм, че така би трябвало да се направи, но както казах в началото - търси се "мързелив" вариант въпреки ограниченията в рефреш-рейта, който той ще наложи ...
Варианта с микроконтролер с USB HighSpeed, през който директно да се пише в DAC-a също не ми харесва поради ред причини.
DAC-a предполагам трябва да е някакъв >=14 битов и вероятно с паралелен интерфейс (не знам със сериен може ли да се постигне лесно).
Идеята ми е евентуално някога след време към процесора да може да се добави някакво дисплейче и клавиатура/rotary encoder, за да може генератора да работи и като самостоятелно устройство без връзка с компютър.
Та въпроса ми е сещате ли се за подходящ микроконтролер и подходящ DAC?
|
| Пон Мар 03, 2014 1:23 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11265 Местоположение: Добрич
|
 Re: DDS генератор
В малките контролери обикновено слагат аудио DAC-ве до 1msps, поне аз не се сещам за по-добри. Може да провериш STM F3 за всеки случай, че пиша от таблет сега и не ми се зареждат чаршафи. Неговитв АЦП-та ги дават до 18msps може и даковете му да са бързи.Някои атмели имаха по 2 вида дакове, но разликата беше в резолюцията, а не скоростта. Но принципно ти трябва нещо с видео DAC. Освен да помислиш върху варианта за външен такъв 
|
| Пон Мар 03, 2014 2:27 pm |
|
 |
|
emilvtc
Ранг: Форумен бог
Регистриран на: Вто Фев 06, 2007 8:44 pm Мнения: 3175 Местоположение: Пловдив
|
 Re: DDS генератор
Оoносно DAC-a - едно бързо търсене във фарнел и дигикеу - като че ли най-подходящ е LTC1668. Цената обаче не е много "народна"... Погледнах STM32F303xB/STM32F303xC. DAC-овете са им много бавни за целите ми. Ако правилно съм разбрал - нямат и DMA трафик към GPIO портовете, към които да закача външен паралелен DAC ... Май ще ми трябва проц с външна шина за памет и съответно DMA от тип памет-памет ... На всичко отгоре дма-то трябва да се тригерира по таймер ... Баси и изискванията ...
|
| Пон Мар 03, 2014 6:44 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: DDS генератор
emilvtc няма ли програмируеми DDS, на които им закачаш един евтин контролер и си готов?
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Пон Мар 03, 2014 7:52 pm |
|
 |
|
emilvtc
Ранг: Форумен бог
Регистриран на: Вто Фев 06, 2007 8:44 pm Мнения: 3175 Местоположение: Пловдив
|
 Re: DDS генератор
Има, но в тях не може да се зареди произволен патърн на сигнал/ Примерно на тези базирани на AD9850 им трябва само контролер, който да ги инициализира и само си генерират синусоида, но само толкова. Идеята ми е примерно произволно записан сигнал от скоп да може да се зареди в генератора и после той да го възпроизвежда 1:1 или с различни честоти... Е те това с DDS-ите които съм гледал НЕ става ...
|
| Пон Мар 03, 2014 8:17 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11265 Местоположение: Добрич
|
 Re: DDS генератор
мда... погледнах ги и аз, ДМА вероятно ще се подкара, но трудно ще се синхронизира.
Не знам каква точно ти е целта, според мен има два варианта. Ако ще е с малък контролер и USB захранване ще трябва фпга. От памет няма нужда, по-евтините спартанчета имат по около 8К, а с някой лев отгоре може да се увеличи. Другият вариант е някоя от цинк платките... от това няма да стане продукт ако това ти е целта, но иначе ще може да я ползваш за различни цели. Видеото обикновено го правят с резисторна матрица, т.е. дори не ползват DAC и не съм чул да има компромис с качеството. Тва евентуално е вариант и за мцу-фпга варианта.
|
| Пон Мар 03, 2014 8:51 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: DDS генератор
emilvtc Я виж дали това проекче няма да ти свърши работа: http://www.myplace.nu/avr/minidds/
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Пон Мар 03, 2014 9:56 pm |
|
 |
|
Pif
Ранг: Форумен бог
Регистриран на: Чет Сеп 26, 2013 2:24 pm Мнения: 1765
|
 Re: DDS генератор
Като си софтуерист защо се бориш с хардуерни проблеми. Вариянт 1: Купуваш си за 500 долара готово устройство и си щастлив. Вариянт 2: Пишеш си правилния софтуер който да ти ползва изхода на видеокартата и пак си готов. Или краен вариянт ДВИ към ВГА и пак писане на малко софтуер. Нали си софтуерист. Ама хем да е такова, ама хем онакова, ама да няма други части освен контролера ама и да може да ходи до луната и да пере и да готви. Много е далече времето когато няма да трябва хардуер за да правиш електроника. Като си силен в софтуера - пиши софтуер за готови работещи устройства. Ако ти е кеф вземи един дивелъпмънт кит с някой Кортекс А8 и вградено ВГА на на което тръгва линукс и си подкарай на него генератора. Олимекс продават такива значитено евтино. Иначе тоя видео ЦАП с какво ще го интерфейснеш към останалия свят? Пак ще ти трбват части.
|
| Пон Мар 03, 2014 10:06 pm |
|
 |
|
emilvtc
Ранг: Форумен бог
Регистриран на: Вто Фев 06, 2007 8:44 pm Мнения: 3175 Местоположение: Пловдив
|
 Re: DDS генератор
ike, Нещо подобно имам в предвид, но да е малко "по-истинско". Миро, не го мисля като продукт, но кой-знае какви идеи ще ми дойдат... 8К байта памет в фпга-то ми се струват малко за буфер ... Pif, не знам дали съм софтуерист или хардуерист. От много години се занимавам и с двете ... А и предполагам няма как да е иначе, когато се правят продукти с едночипови контролери ... Много често хардуера се "компенсира" със софтуера и с това един "чист" софтуерист трудно би се справил ... Още по-малко пък "чист" хардуерист ... Има два подхода да се стигне до даден продукт : 1. Поставят се някакви строги изисквалия (параметри), които се опитваш да постигнеш без компромиси (е, все пак се търси оптимизация по цена) 2. Опитваш се да "изцедиш" възможно най-доброто от дадено решение и да постигнеш възможно най-добрите параметри с него, без да си поставяш предварително строги и често невъзможни или непреодолими изисквания към параметрите. Като пример в подкрепа на това е аналогово-цифровия анализатор USBee-AX Устройството не е идеално, но върши перфектна работа в доста случаи. Предполагам става ясно, че съм избрал втория подход в този случай. Опитвам се да преценя с ваша помощ дали идеята е реализуема, с каква елементна база може да се направи и какво може да се постигне като параметри. В случая не съм поставил ограничения към проца (да е АРМ, МИПС, ПИК или друг) и цап-а. Ще се използват подхидящите ... Цялата идея се върти около "специфична" периферия в контролера позволяваща реализирането на функционалността която търся. Т.е. за да се избере подходящ контролер трябва да се познават много такива, с което аз не мога да се похваля. Предполагам, че и малко от вас могат. Та за това се опитах да опиша идеята и изискванията към периферията и евентуално като четете това да прецените контролерите които вие познавате могат ли да се използват в случая и ако могат - да ме насочите към тях ... Че идеята няма да може да се реализира с един чип - това е ясно. Въпроса е да е с минимален брой чипове... След цап-а ще има усилвател 
|
| Пон Мар 03, 2014 11:38 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11265 Местоположение: Добрич
|
 Re: DDS генератор
Е, аз не познавам всички но достатъчно контролери, за да ти кажа че няма как да скочиш много над аудио честотите. За тоя 50 msps dac мисля че ще стане с атмелче, те си имат ДМА и може да им се сетва клок. Верно, това ще е значително по-бързо от вграден дак, но крайният сигнал пак няма да е кой знае колко високочестотен. С фпга може повече, с евтините 200-300 msps. Спартан 6 може да вдигнеш 1 gsps, но PLL-те му не са гъвкави и изходните драйвери не са както при 7- ците. Та ако искаш 1 gsps и повече само цинка е без компромиси. Вероятно изглежда ненужно бързо, обаче ако е 10- битов изход и искаш да развъртиш всичките битове и... крайният сигнал клекна на 1 MHz -:) А за продукт питах за да знам една бройка ли гониш или не. А иначе ако е опън сорс може и да е интересно... мен ми е трябвала платка с малко фпга, ама ме домързя да си я направя 
|
| Вто Мар 04, 2014 12:44 am |
|
 |
|
emilvtc
Ранг: Форумен бог
Регистриран на: Вто Фев 06, 2007 8:44 pm Мнения: 3175 Местоположение: Пловдив
|
 Re: DDS генератор
Миро, идеята за опен-сорса не съм я мислил. По-скоро мислех ако се получи нещо читаво да го постна в раздела проекти за споделяне (както постнах лог. анализатора преди време). Със сигурност ако се намерят и други заинтересовани от проекта - съвместното мислене (а и правене) ще даде по-добри резултати. Може би трябва да помислим в тази посока. Само да не стане като проекта за Лог. Анализатор в началото на форума... В момента работя с по-стар модел на TG1010A. Просто е незаменим инструмент ако се налага процесване на сигнали (тези които са "копали" в тази посока ще ме разберат най-добре). Проблема му е, че има буфер за патърн от само 4к точки и бих бил по-щастлив ако буфера ми е малко по-голям... Та целта ми да се сдобия с подобен инструмент на цена 1/50 (примерно) от тази на цитирания уред (както се сдобих с Лог. анализатора на цена 1/30 от тази на оригинала). Както "Асан казал на Айшето пращайкия за хляб - въри ма, то с пари всеки може ... "
|
| Вто Мар 04, 2014 11:28 am |
|
 |
|
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
|
 Re: DDS генератор
Не отмятай с лека ръка готовите ДДС чипове на Аналог дивайс. Може да не може да им буташ таблицата, но пък можеш да ги модулираш амплитудно без проблем, както честотно, че и фазово.
|
| Вто Мар 04, 2014 3:33 pm |
|
 |
|
emilvtc
Ранг: Форумен бог
Регистриран на: Вто Фев 06, 2007 8:44 pm Мнения: 3175 Местоположение: Пловдив
|
 Re: DDS генератор
Така е, но интереса ми не е толкова към синусоидата и вариантите и за модулация, колкото до плейването на периодични сигнали с произволен патърн.
|
| Вто Мар 04, 2014 9:08 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11265 Местоположение: Добрич
|
 Re: DDS генератор
Какво ще стане си зависи от теб  Ти първо реши кой път ще избереш, пък после ще се види има ли мераклии...
|
| Сря Мар 05, 2014 1:25 am |
|
 |
|
Н'бабане Гт'муан'га
Ранг: Форумен бог
Регистриран на: Сря Яну 25, 2012 9:14 am Мнения: 5298
|
 Re: DDS генератор
Според мен PSoC5LP е подходящия микроконтролер
_________________ 'просто' е технически синоним на 'красиво'
|
| Сря Мар 05, 2014 2:18 am |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 8 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|