yaboPP电子
项目

DIY Synth系列第1部分 - 指数VCO

2016年8月8日通过罗宾·米切尔

构建一个1V倍频电压控制振荡器(VCO)模块,并创建自己的模拟合成器声音。

学习如何制作你自己的老式1V/倍频合成器。

今天的音乐主要是使用计算机软件来掌握轨道,添加乐器,混合歌曲,操纵声音等等 - 但它们如何使用来制作音乐?

过去,音乐完全是用吉他和钢琴等真实的乐器演奏的,但合成声音也在音乐舞台上留下了自己的印记。一个很好的例子是Kraftwerk.,在20世纪70年代,合成器使用合成器从激进的锯齿上创建所有声音到柔和的哔哔声和电脑的BOOP。

这些合成器(不像你今天会发现的大多数合成器)都是模拟的,这意味着,声音的产生不是依靠软件和处理器,而是通过控制电子信号的时间来完成的。

旧时尚合成器如何工作?这一系列项目将显示合成器工作中的所有不同部分以及如何构建您自己的模块。

在这个项目中,我们将构建合成器的核心,电压控制振荡器(VCO),它接收模拟电压并生成原始声音,准备通过滤波器、调制器、ADSR模块和步进序列进行进一步处理。

Minimoog模型D合成器

Minimoog模型D合成器(来自70s到1981年的Kraftwerk使用的那种)。图片礼貌Moog

合成型和音乐理论

我们要设计的合成器在当时非常普遍。它被称为1V/倍频合成器。这意味着输入端每增加1V,输出频率就增加一个八度(即增加2倍)。

为了让这个模块正常工作,它需要一个指数转换器在输入端。这个转换器将采取一个线性电压和产生一个指数电压馈送到VCO。为什么我们需要指数转换器?答案就在人类听觉和音乐理论的本质中!

如果您拍摄钢琴并播放中间注释(A4),它会使具有440Hz的频率的特定音调。如果您现在播放右侧的右侧(12张音符,A5),则应音符除高音外是否相同,并且具有880Hz的频率。(较低的音符是上票据的谐波,这就是为什么它们在一起播放时听起来正常)。现在,如果您在右侧播放下一个注释(A6),则应音符听起来比前一个注释更高;它的频率为1760Hz。

与12个键分隔的任何两个相同的音符都称为八度音阶。对于八度音程的任何两个键,上部键将具有两倍的频率。这是因为本质上是人类听力是对数的。这意味着对于声音两倍的东西,它的幅度(或音高域中的频率)需要增加两倍。

例如,如果我们将一个波形的频率从1Hz增加到2Hz,根据人耳的感受,这将被认为是一个八度音阶。但是将波形频率从440Hz增加到441Hz并不会导致一个八度的变化。事实上,人耳无法区分这两种频率,因为人耳擅长相对变化而不是绝对变化。

因此,有了所有这些复杂的理论,我们需要找到一种方法来吸收线性电压源(1V倍频键盘),并将其转换为产生指数电压的电压源。为了做到这一点,我们将使用一个具有固有指数特性的组件,双极结晶体管或BJT。

指数转换器

因此,我们需要电路从键盘/控制器中取出线性电压,并产生指数电压,该指数电压为每个八度音频的值加倍。

由于我们的VCO是在单电源5V轨道上工作的,转换器的输出需要在0V和5V之间。在5V输入范围内,可以使用总共60个键的5倍频程键盘。

下表显示了键盘的输入电压和转换器所需的输出电压。

关键 关键# 1 V八度 世博会输出 频率
C0 1 0.0833 0.1655 65.4078.
c# 0 2 0.1667 0.1754 69.2971
D0 3. 0.2500 0.1858 73.4177
D # 0 4 0.3333 0.1969 77.7834
E0 5 0.4167 0.2086 82.4086
F0. 6 0.5000 0.2210 87.3089.
f# 0 7 0.5833 0.2341 92.5005
G0. 8 0.6667 0.2480 98.0009
G # 0 9 0.7500. 0.2628 103.8284.
A0 10. 0.8333 0.2784 110.0023
# 0 11. 0.9167 0.2950 116.5434
B0 12. 1.0000 0.3125 123.4734
C1 13. 1.0833 0.3311 130.8155
C # 1 14. 1.1667 0.3508 138.5942
D1 15. 1.2500 0.3716 146.8355
D # 1 16. 1.3333 0.3937 155.5668
E1 17. 1.4167 0.4171 164.8172
F1 18. 1.5000 0.4419 174.6178
f# 1 19. 1.5833 0.4682 185.0011
G1. 20. 1.6667 0.4961 196.0018
G # 1 21 1.7500 0.5256 207.6567
A1 22 1.8333 0.5568 220.0046
# 1 23 1.9167 0.5899 233.0868
B1 24 2.0000 0.6250. 246.9468
C2 25 2.0833 0.6622 261.6311
C # 2 26 2.1667 0.7015 277.1885
D2 27 2.2500 0.7433 293.6709
D # 2 28 2.3333 0.7875 311.1335
E2 29 2.4167 0.8343 329.6345
F2 30. 2.5000. 0.8839. 349.2356
f# 2 31 2.5833 0.9364 370.0022
G2. 32 2.6667 0.9921. 392.0037
G # 2 33 2.7500 1.0511 415.3134
A2 34 2.8333 1.1136. 440.0092
# 2 35 2.9167 1.1798 466.1736
B2 36 3.0000 1.2500 493.8937
C3 37 3.0833 1.3243 523.2621
C # 3 38 3.1667 1.4031 554.3769.
D3 39 3.2500. 1.4865 587.3419
D # 3 40 3.3333 1.5749 622.2670
E3 41 3.4167 1.6685 659.2690.
F3 42 3.5000 1.7678 698.4711
f# 3 43 3.5833. 1.8729 740.0044
G3. 44 3.6667 1.9843 784.0073
G # 3 45 3.7500 2.1022 830.6268
A3 46 3.8333 2.2272 880.0185
# 3 47 3.9167 2.3597 932.3471
B3 48 4.0000 2.5000. 987.7874
C4 49 4.0833 2.6487 1046.5242
c# 4 50 4.1667 2.8062 1108.7538
D4 51 4.2500 2.9730 1174.6838
D # 4 52 4.3333 3.1498 1244.5341.
E4 53 4.4167 3.3371 1318.5379
F4 54 4.5000 3.5355 1396.9423
f# 4 55 4.5833 3.7458 1480.0088
G4. 56 4.6667 3.9685. 1568.0147
G # 4 57 4.7500. 4.2045 1661.2537
A4 58 4.8333 4.4545 1760.0370
# 4 59 4.9167 4.7194 1864.6942
B4 60 5.0000 5.0000 1975.5747

Exponetial图

将用于其指数属性的组件是BJT。大多数人将熟悉将基本电流与收集器电流相关的等式,但这种关系是线性的。

基极-发射极电压与集电极电流之间的关系式为指数关系:

在哪里

  • 我知道了- 集电器电流
  • - 饱和电流
  • - 电子费用
  • Vbe- - - - - -基极发射极电压
  • k- - - - - -波尔兹曼常数
  • T-温度(开尔文)

幸运的是,对于我们来说,有聪明的人已经完成了硬数学(看看这里的数学)及电路设计。

下面是完整的指数转换器,将用于我们的VCO引擎转换输入线性电压为指数电压(其中电压输出翻倍为每1V增加的输入)。

指数电路

点击放大。

在上面所示的示意图中,有三种不同的输入进入U1B。您可以为更多输入添加额外的100k电阻,但通常是三个应该足够。

  • 键 - 这是1V Octave键盘的输入
  • 调谐-连接到一个微调器,可以用来对输出频率进行小的调整(通过添加少量电压)
  • LFO - 低频振荡器 - 这可用于添加效果,例如UFOS,警报警报器甚至琶音

下面是这个电路如何工作的简单解释:

  • U1B用于总和各个输入(键,调谐和LFO)和缩放输入电压,使得输出上的1V在-18mV中(注意它是反相配置)。
  • Q1和Q2形成差分对。
  • U2B用于通过Q1保持恒定电流。Q1的基极电压的变化导致Q2基极到发射极电压的相应变化,因此,Q2的集电极电流中的指数变化。
  • Q1和Q2必须具有非常相似的HFE!
  • U1A是电流到电压转换器(选择R1和RV1,使得当输入电压为5V时,输出电压也是5V)。

VCO的

现在是时候创建一个通过电压源控制的振荡器了。

为了做到这一点,我们将使用如下所示的常见布局:

VCO布局

点击放大。

这个振荡器有四个部分:

  • 积分商(U3A)
  • 反转施密特触发器(U3B)
  • 复位电路(第三季)
  • 缓冲区(U4A和U4B)

积分商(U3A)

积分器的输出将做两件事,取决于Q3的状态(和输入电压在VEXPO的存在):

  • 如果Q3关闭,则C2将充电,因此积分器输出将逐渐下降。
  • 如果Q3开启,C2会放电,积分器输出会逐渐上升。
  • 输出的下降或上升速率由C2, R7, R9, R10, R11和输入电压VEXPO决定。
  • VEXPO越大,C2收费越快。

施密特触发器(U3B)

施密特触发器将根据积分器的输出执行两件事:

  • 如果积分器输出交叉过上阈值,则施密特触发输出将为0V。
  • 如果积分器输出交叉较低的阈值,则施密特触发输出将是5V。

重置电路(Q3)

复位电路Q3将做两件事取决于施密特触发器的输出:

  • 如果触发器的输出是高的(5V),那么Q3将是打开的。
  • 如果触发器的输出低(0V),则Q3将关闭。

它的振荡

电路的振荡模式如下所示:

  1. Q3打开,积分器的输出上升。
  2. 积分器的输出最终通过施密特触发器的上限阈值。
  3. Schmitt触发器的输出现在切换到0V。
  4. Q3已经关闭,所以积分器的输出开始下降。
  5. 积分器的输出最终低于施密特触发器的较低阈值。
  6. 施密特触发器的输出现在切换到5V。
  7. Q3现在打开(因此返回步骤1)。

材料清单

成分 数量 参考
lm358 4 U1,U2,U3,U4
1M电阻 1 R2.
100k电阻 8 R3 r4 r5 r8 r12 r14 r15
56 k电阻 4 R9,R10,R11,R13
22 k电阻 1 R1.
10K线性电位计 2 RV1, RV2
1 k电阻 1 R6.
1NF电容器 1 C1
4NF电容(值近似;根据需要进行调整) 1 C2
BC548(匹配的HFE) 2 Q1、Q2
BC548 1 Q3
100nf电容器 6 这是用于去耦电源线,所以在每个IC附近使用
100 k电位器 1 仅用于使用合成密钥输入进行测试

建造

建议您首先在无焊料面包板上构造synth模块,以防电路不工作。一旦您对它的功能有信心,您可以将它构建到条形板上或制造一个PCB。

在构建下一个阶段之前,尝试构建一个部分并使其发挥作用。这是为了让您可以确定,这部分电路工作!

在构建时,有两件事要记住:

  • 确保Q1和Q2有接近的hFE值(彼此之间在10以内)。最好的方法是花几美元买一个便宜的100个晶体管的袋子,然后用万用表来测量高频电流。
  • Q1和Q2必须相互结合。你可以通过热粘合这两种方式来做到这一点,这样其中一种的热量变化就反映了另一种的热量变化。

我的剥离板设置

我stripboard设置。

我的模板设置2

使用VCO

您可能已经注意到电路具有正极和负电源电压。该电路需要正确运行的双电源(它需要5V,0V,至少-5V在负导轨上)。幸运的是,对于我们来说,这个电路使用很好的工作负压发电机方案,所以一定要先构建它!您也可以使用两个电池串联,以获得分路供电,并使用中间连接作为接地。

以下是您可以用来为VCO供电的可能电路:

用于为VCO供电

请注意,只有VCC轨需要调节到5V,因为这将决定VCO的饱和点以及影响输出频率。负轨只用于指数转换器电路,在正常使用期间,该电路的opamp输出不会被驱动到电源轨。

测试VCO

为了测试VCO,您需要向求和级U1B提供输入电压。您可以使用一个电位器来提供0V和5V之间的可变电压,或者您可以使用振荡器的输出或1V八度键盘(如果您有一个)。本项目所展示的视频使用了一个通过VCC和0V连接的电位器,可变输出电压连接到求和阶段。

在下面的视频中,您将看到VCO连接到一个电位器和第二个VCO。第二个VCO产生低频振荡(LFO),可以用来摆动音调,产生许多有趣的效果。您还会注意到,将手指放在Q1或Q2上将导致输出频率的改变,并可以利用它来产生更有趣的效果!另外,请注意,我使用了一个直流阻塞电容来消除发送到扬声器的信号中的直流偏置。

项目文件

此处包含所有项目文件,您可以完全免费进行,因为您认为与他们合适!

在下面的.zip文件中,您会发现:

  • Excel表格的电压
  • KiCad项目文件
  • LTSpice模拟
  • PDF版本的VCO核心

VCO.zip

为自己提供这个项目!BOM。

45的评论
  • 阿克伦 2016年8月15日

    我小时候做过一个公路合成套件。它有两个VCOs。

    喜欢的。 回复
  • 一个
    Ackleberry 2016年9月29日,

    有人能给我解释一下表格中的指数输出列是怎么计算出来的吗?

    谢谢!

    喜欢的。 回复
    • 一个
      Ackleberry 2016年9月29日,
      我主要需要这个等式解释...... vexpo =(5/32)* 2 ^(c3)* 395.1149425
      喜欢的。 回复