www.diyfactory.ru



Страницы: (18) « Первая ... 10 11 [12] 13 14 ... Последняя »  ( Перейти к первому непрочитанному сообщению ) Ответ в темуСоздание новой темыСоздание опроса

> Diy синтезаторы, вместо приветствия
Diz
Дата 8.06.2009 - 16:52
Цитировать сообщение




Unregistered












ќткуда:


Без деления может не получиться.

Как реализовано LFO - как DDS (фазовый аккумулятор + вывод по таблице) ?

Как это сделано у меня. Пересчет параметров (в том числе нового значения LFO) каждую миллисекунду. Есть отдельный высокоскоростной таймер (f=200 kHz), одна из его функций измерять время между приходами соседних миди клоков. Измеренные тики сглаживаются простым фильтром типа скользящего среднего (так как миди-клок может и будет плавать).

Затем смотрится, на какой позиции находится LFO - сколько осталось до окончания цикла. И сколько миди-клоков должно придти до окончания цикла.
И определяется новый инкремент для фазового аккумулятора LFO так, чтобы миди клок и LFO засинхронизировались ровно через цикл LFO.

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

В коде есть одно целочисленное деление.
Top
EternalEngine
Дата 9.06.2009 - 15:18
Цитировать сообщение




Unregistered












ќткуда:


а какого порядка? интересно, сколько циклов на него потратит 8 бит AVR ядро?
И зачем такая высокая ч-та? 1кгц не хватит?

Это сообщение отредактировал EternalEngine - 9.06.2009 - 16:37
Top
Diz
Дата 9.06.2009 - 19:25
Цитировать сообщение




Unregistered












ќткуда:


В принципе, хватит - но так исторически сложилось.

Попробую прикинуть.

За один такт нам приходит 96 клоков. Будем считать, что предельная частота
клоков 1 кГц/2 = 500 Гц, затем вылезает ошибка. Частота полного такта 500/96 = 5.2 Гц, частота появления четвертей 5.2 * 4 = 20.8 Гц. Это 20.8 * 60 = 1248 bpm :-) При таком темпе и быстрее начнет появляться ошибка измерения в 1/96 ноту.

Нигде не ошибся ?

О делении.
В первом приближении делимое = разрядность фазового аккумулятора * ( частота измерительного таймера / частота пересчета LFO).
Делитель:число насчитанных измерительных тиков * максимальный множитель синхронизации (у меня два такта, 96*2 = 192).

Максимальное число изм. тиков можно определить через мин. bpm.
Скажем, минимум 20 bpm. Это 20 четвертей в минуту, 20/4*96/60 = 8 миди-клоков в секунду, 8 Гц. Максимальное число тиков 1 кГц/8 Гц = 125.

Это сообщение отредактировал Diz - 9.06.2009 - 19:49
Top
EternalEngine
Дата 11.06.2009 - 15:03
Цитировать сообщение




Unregistered












ќткуда:


Вроде всё правильно. это выходит порядка 1000 тактов на одну операцию деления 16 разрядном аккумуляторе? blink.gif

скоро зарплатэ) вот подумал, а можно ли заменить ca3046 на 198нт1 в экспоконверторе осциллятора? там на ней ещё термостабилизация сделана... схемка там ниже лежит.

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  CA3046.pdf
Top
EternalEngine
Дата 11.06.2009 - 15:47
Цитировать сообщение




Unregistered












ќткуда:


да, и не знаешь где можно добыть AD5206BN, их даже на заказ найти не могу...
Top
Diz
Дата 11.06.2009 - 16:21
Цитировать сообщение




Unregistered












ќткуда:


Если 1000 тактов, то нормально - скажем, при системном клоке 16 МГц это всего 62 мкс. Можно попробовать ограничить число возможных bpm,
округлять к ближайшему, заменить деление умножением+сдвигом и
свести множители в таблицу.

AD5206 не знаю. Чем AD5204 не устраивают ? Вполне доступны.
Top
EternalEngine
Дата 11.06.2009 - 20:09
Цитировать сообщение




Unregistered












ќткуда:


в 5206 6 потенциометров. ставить 2 по 4 не хочется(

а что насчёт 198нт1?

на счёт таблицы - я так делал в цифровых осцилляторах - слишком много памяти кушает)

Это сообщение отредактировал EternalEngine - 11.06.2009 - 20:11
Top
Diz
Дата 13.06.2009 - 16:43
Цитировать сообщение




Unregistered












ќткуда:


Думаю, лучше поставить то, что можно достать. Цена так для несерийного изделия вообще не критична. И с разводкой чуть проще - можно поставить
каждый корпус поближе к сигналу. Если получатся неиспользуемые каналы, то им тоже найдется применение - подстройка/калибровка фильтра, например.

С 198нт1 не знаком.

1-2кб - разве много ? :-)
Top
EternalEngine
Дата 15.06.2009 - 00:29
Цитировать сообщение




Unregistered












ќткуда:


ну если учесть что там было всего обин кб SRAM то да))))
Top
Diz
Дата 15.06.2009 - 03:54
Цитировать сообщение




Unregistered












ќткуда:


А RAM-то зачем ? Все таблицы во флэш !
Top
EternalEngine
Дата 15.06.2009 - 04:03
Цитировать сообщение




Unregistered












ќткуда:


Накопал такую микросхему, она использовалась в старых синтах. Интересно, а что-нибудь типа неё сейчас выпускают?

на счёт флэша- тогда он был забит банками под завязку(, но впринципе сейчас банков то не будет)

Присоединённый файл ( Кол-во скачиваний: 8 )
Присоединённый файл  SSM2033_VCO.pdf
Top
Diz
Дата 16.06.2009 - 00:25
Цитировать сообщение




Unregistered












ќткуда:


Сомневаюсь. Также как и микросхемы фильтров и т.д.


Каким должен быть динамический диапазон VCA, кто сталкивался ?
Понятно, что в нуле делаем максимальное подавление, а дальше, в рабочей области ? У меня экспоненциальная зависимость для VCA и получается не очень хороший эффект. Скажем, если сделать плавную атаку на ADSR, значительную часть времени ничего не слышно - подползаем к -50дБ. А вот затем довольно естественно выходим к максимуму.

При линейной зависимости, ясное дело, эффект обратный - быстрое нарастание и долгое малозаметное набирание последних 6 дБ.

Попробовать степенную зависимость типа x^3, x^4 ?

Это сообщение отредактировал Diz - 16.06.2009 - 00:26
Top
Tuvalu
Дата 16.06.2009 - 01:10
Цитировать сообщение




Unregistered












ќткуда:


Интересная тут у вас тема, разрешите поучаствовать.
Для Diz
Если я правильно понял вопрос, то вот мой ответ (совет):
Для того, чтобы было равномерное на слух регулирование, VCA должен иметь управление вида dB/V. Т.е. при каком-то линейном приросте управляющего U получим равномерный в дБ, а, значит, и на слух, прирост громкости. Такие VCA широко применяются в студийных приборах динамической обработки. Серия THAT218х - самое то. На них есть пару проектов компрессоров на этом форуме. Раньше это была серия THAT215х (2150, 2151, 2155, 2159) - тоже хорошие, их можно найти в старом оборудовании, начиная от примочек БОСС и ....
Если их применять, то ADSR-генераторы должны вырабатывать линейно изменяющиеся сигналы. Так будет намного проще получить плавное равномерное регулирование в очень широком диапазоне, т.к. эти чипы обеспечивают точную децибельную хар-ку по управляющему входу. Плюс к этому - малые шумы.
Цитата
У меня экспоненциальная зависимость для VCA и получается не очень хороший эффект

Возможно, VCA по управляющему входу нелинейный. Возможно, у него есть какая-то начальная "зона нечувствительности". Кстати, по какой схеме он собран? И точно ли соблюдается экспоненциальный закон упр. сигнала в широком диапазоне?
Как вариант, при линейных сигналах управления и линейном VCA (например, перемножитель или ОТА типа 3080, 13700) необходимо собрать конвертор управляющего напряжения, чтобы получить нужную функцию управления.
Цитата
Каким должен быть динамический диапазон VCA, кто сталкивался ?

Чем шире, тем лучше, учитывая насыщенный синтюковый "исходник", никак не меньше 60-70дБ. Чипы THAT обеспечат его с большим запасом. Это еще одно их преимущество.
Примерно так... Удачи!

Это сообщение отредактировал Tuvalu - 16.06.2009 - 05:21
Top
Diz
Дата 16.06.2009 - 05:02
Цитировать сообщение




Unregistered












ќткуда:


You are welcome :-)

Все так, LM13700, линейные ADSR и экспоконвертор. Смотрел в спектралабе,
нарастает как надо, линейно в логарифмическом масштабе. А вот на слух
что-то не так. Возможно, ухо привыкло к укомпрешенному звучанию с динамикой в 6 дБ, хех ?

Вот тут, кстати, тоже упоминается подобный эффект (Theory and Techniques of Electronic Music by Miller Puckette):
http://crca.ucsd.edu/~msp/techniques/lates...tml/node60.html

Это сообщение отредактировал Diz - 16.06.2009 - 05:03
Top
Tuvalu
Дата 16.06.2009 - 05:37
Цитировать сообщение




Unregistered












ќткуда:


А фиг его знает, товарищ майор! В своих экспериментах (гитарные синтезаторы) я не сталкивался с такой проблемой. Там, видимо, попроще с этим. Может, надо что-то делать с кривой управления (начальный скачок, что ли?). Ну, не компрессировать же синт, в конце-концов.
Цитата
Возможно, ухо привыкло к укомпрешенному звучанию с динамикой в 6 дБ, хех ?

Ваша правда, есть такая всеобщая тенденция - ужимать все подряд.
Top
EternalEngine
Дата 16.06.2009 - 12:24
Цитировать сообщение




Unregistered












ќткуда:


Интересно, а что стоит в Minimoog Voyager? не думаю что там всё на операционниках... кто нибуд кстати видел от него сервис мануал?
Top
Diz
Дата 16.06.2009 - 14:17
Цитировать сообщение




Unregistered












ќткуда:


Думаю так и сделать, начальный скачок. В нуле максимальное подавление,
затем 1/8 диапазона подъем линейно до -50dB, а затем уже экспонента.
Впрочем, попробую выложить вечером сэмпл для обсуждения - может, не так все и страшно ?

Попробовал применить ADSR к регулятору гейна на цифровом потенциометре (256 позиций, с движка на землю нагрузочный резистор Rpot/6 для имитации логарифма). Результат приятно удивил - ступенек (zipper noise) на слух не заметно.

Если дело дойдет до следующей ревизии железа, откажусь полностью
от OTA (LM13700) и заменю на цифропоты. Плюс аналоговые осцилляторы
на FPGA/CPLD для уменьшения алиасинга, хех.

EternalEngine, а этот муг какого года ? Современный ?

PS Гитарные синтезаторы тоже было бы очень интересно обсудить, наверное
в другой теме. Немного копал в этом направлении.

Это сообщение отредактировал Diz - 16.06.2009 - 14:19
Top
EternalEngine
Дата 16.06.2009 - 15:11
Цитировать сообщение




Unregistered












ќткуда:


Или Prophet 08 тоже интересно посмотреть что внутри...

http://www.arttechnology.ru/ourcatalog.asp...showmodel&id=40

http://arttechnology.ru/catalog.asp?mode=showmodel&id=8566

насчёт VCA может вот этот поможет http://www.analog.com/static/imported-file...ets/SSM2164.pdf

Это сообщение отредактировал EternalEngine - 16.06.2009 - 15:58
Top
Tuvalu
Дата 16.06.2009 - 16:49
Цитировать сообщение




Unregistered












ќткуда:


По поводу SSM2164. У нее врожденный порок сердца - она при ослаблении 30 с чем-то дБ добавляет к сигналу какой-то мерзкий острый пик. Сам не проверял, это мне рассказал один мой знакомый - отличный инженер, автор нескольких хороших публикаций на тему регулирования. Говорит, что пробовал чипы из разных партий.

Если нужна линейная функция регулирования, то самое лучшее, что я знаю - это 525ПС3 (AD534), но дорогой, собака.

Читал эту ветку, так там был вопрос про управление 13700. Могу посоветовать филипсовский даташит на NE5517(тот же самый 13600/13700) - там самое подробное описание на эту тему.

Это сообщение отредактировал Tuvalu - 16.06.2009 - 16:50
Top
EternalEngine
Дата 16.06.2009 - 17:57
Цитировать сообщение




Unregistered












ќткуда:


да, 525ПС3 50р стоит вроде сейчас, и шумит на порядок меньше чем любой ОТА)

За NE5517 спасибо, а то методом научного тыка всё делал.


VCF, VCO
вот кстати как работало всё это дело

Это сообщение отредактировал EternalEngine - 16.06.2009 - 18:16

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  mm_service.pdf
Top
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Страницы: (18) « Первая ... 10 11 [12] 13 14 ... Последняя » Ответ в темуСоздание новой темыСоздание опроса

 

<% COPYRIGHT %>