学习如何让自己的老派1 v /八度合成器。
今天的音乐主要是用计算机软件掌握,加上乐器,混合歌曲,控制声音和更多——但是他们如何使用做音乐的?
音乐与真正要做完全使用工具,如吉他和钢琴,但合成听起来也在音乐舞台上留下了印记,。一个伟大的乐队看就是一个例子克拉夫特维克,这在1970年代使用合成器创建所有的声音从激进的锯齿(boop)温柔beep和电脑。
这些合成器(与大多数的人你会发现今天)都是模拟这意味着,而不是依靠软件和处理器,声音一代是由操纵电信号与时间。
一个旧的时尚合成器是如何工作的呢?这一系列的项目将展示所有不同的部分在合成器的工作和如何构建您自己的模块。
在这个项目中,我们将构建的核心合成器,VCO(压控振荡器),将模拟电压和生成的原始声音可以进一步处理过滤器,调节器,ADSR模块和步骤序列。
Minimoog模型D合成器(使用的那种克拉夫特维克从70年代到1981年)。图片由Moog。
合成器类型和音乐理论
我们将设计的合成器是很常见的。被称为1 v /八度合成器。这意味着,每增加1 v的输入,输出频率(即会由一个八度。2倍)。
现在这个模块正常工作,它需要一个指数转换器的输入。这个转换器将线性电压和生产指数送入VCO的电压。为什么我们需要一个指数转换器吗?答案是人类听觉和音乐理论的本质!
如果你用钢琴和玩耍(A4)的一份报告,它使特定的音调的频率为440赫兹。报告如果你现在玩的这个(12个音符,A5)注意听起来一样的除了更高的音调和频率为880赫兹。(注意是低谐波上注意这就是为什么他们声音好当玩在一起)。现在,如果你玩下一个正确的报告(A6),注意声音定位高于之前的报告;它有一个1760赫兹的频率。
任意两个同样指出,由12键称为一个八度。对于任意两个键是一个八度,上键将有一个频率的两倍。这样做的原因是,因为自然人类听觉是对数。这意味着,对于声音的两倍,其振幅在球场领域(或频率)需要增加了两倍。
例如,如果我们增加1赫兹的频率的波形2赫兹,这将被视为一个八度根据人耳。但增加波形频率440赫兹到441赫兹不会导致一个倍频程的变化。事实上,人耳无法区分这两个频率因为人类的耳朵是相对的而不是绝对的变化。
用那么复杂的理论,我们需要找到一种方法在一个线性电压源(1 v八度键盘),并将其转换成电压源生产指数电压。要做到这一点,我们将使用一个组件固有的指数特性,双极结型晶体管或者是机器。
指数转换器
所以我们需要一个电路从键盘/控制器和一个线性电压产生一个指数每八度双打的电压值。
因为我们的VCO操作在一个供应5 v铁路、转换器的输出需要0 v和5 v之间。一个5 v的输入范围,给出了可能性5-octave键盘共有60钥匙。
下表显示了从键盘上输入电压和所需的输出电压转换器。
关键 | 关键# | 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 |
将用于其指数特性的组件是机器。大多数将熟悉的基极电流方程与集电极电流,但这种关系是线性的。
基极发射极电压方程,涉及到集电极电流指数:
在哪里
- 集成电路- - - - - -集电极电流
- 是-饱和电流
- 问——电子电荷
- Vbe- - - - - -基极发射极电压
- k- - - - - -波尔兹曼常数
- T开尔文温度()
幸运的是,有聪明的人已经完成困难的数学在这里看到的数学)和电路设计。
下面是完整的指数转换器,将用于我们的VCO引擎输入线性电压转换成一个指数电压(电压输出双打每增加1 v的输入)。
点击放大。
示意图,上面所示,有三个不同的输入U1B喂养。您可以添加额外的100 k电阻输入但通常三应该够了。
- 关键——这是1 v八度的输入键盘
- 优化——这是连接到一个微调可以用来做一些小调整输出频率(通过添加少量的电压)
- LFO低频振荡器,这可以用来添加效果,如不明飞行物,警笛声甚至琶音
这是一个简单的解释这个电路是如何工作的:
- U1B用于个人和输入(键,调整和LFO)和规模1 v的输入电压等产生-18 mv输出(注意,这是一个反相配置)。
- Q1和Q2一双微分形式。
- 通过Q1 U2B用于保持恒流。第一季度基本电压的变化导致相应Q2 base-to-emitter电压的变化,因此,指数Q2集电极电流的变化。
- Q1和Q2必须有非常相似的HFE !
- U1A电流-电压转换器(R1和RV1选择这样,当输入电压为5 v,输出电压也5 v)。
VCO的
现在是时候来创建一个振荡器,通过电压源控制。
要做到这一点,我们将使用一个非常常见的布局如下所示:
点击放大。
这种振荡器有四个部分:
- 积分器(U3A)
- 反相施密特触发器(U3B)
- 复位电路(第三季)
- 缓冲区(U4A和U4B)
积分器(U3A)
积分器的输出将做两件事根据第三季度的状态(和一个输入电压的存在在VEXPO):
- 如果第三季了C2将收取因此积分器的输出将逐渐下降。
- 如果第三季度在C2会放电,因此积分器的输出会逐渐上升。
- 产出下降或上升的速度是由C2, R7, R9机型,R10、R11和输入电压VEXPO。
- 大VEXPO C2指控越快。
施密特触发器(U3B)
施密特触发器将做两件事取决于积分器的输出:
- 如果积分器输出十字架上阈值,施密特触发器的输出是0 v。
- 如果积分器的输出经过阈值越低,施密特触发器输出将5 v。
复位电路(第三季)
复位电路的第三季度将做两件事根据施密特触发器的输出:
- 如果触发器的输出高(5 v)然后第三季将于。
- 如果触发器的输出很低(0 v)然后第三季将会关闭。
它的振荡
电路的振荡模式下面列出:
- 第三季度,积分器的输出上升。
- 积分器的输出最终跨越施密特触发器的阈值。
- 施密特触发器的输出现在切换到0 v。
- 第三季度是现在,积分器的输出开始下降。
- 积分器的输出最终低于施密特触发器的低阈值。
- 施密特触发器的输出现在切换到5 v。
- 第三季现在打开(所以回到步骤1)。
材料清单
组件 | 数量 | 参考 |
LM358 | 4 | U1, U2, U3,愉快 |
1米电阻 | 1 | R2 |
100 k电阻 | 8 | R3、R4 R5、R8 R12, R14、R15 |
56 k电阻 | 4 | R11, R9机型、R10 R13 |
22 k电阻 | 1 | R1 |
10 k线性电位计 | 2 | RV1, RV2 |
1 k电阻 | 1 | R6 |
1 nf电容器 | 1 | C1 |
4 nf电容器(值近似;根据需要调整) | 1 | C2 |
BC548匹配(hFE) | 2 | Q1、Q2 |
BC548 | 1 | 第三季 |
100年nf电容器 | 6 | 这是为解耦电线附近所以使用每个IC |
100 k电位器 | 1 | 仅供测试用synth键输入 |
建设
建议您首先构建synth模块在无焊料的案板以防电路不工作。一旦你相信它的功能,您可以构建到stripboard或制造印刷电路板。
试图构建一个部分和功能在构建下一个阶段之前。这是,这样您就可以确保这部分电路的工作!
构建时,有两件事要记住:
- 确保Q1和Q2 hFE密切值(在10彼此)。最好的方法是购买一个廉价袋100个晶体管几美元,使用万用表直流电流增益可以测量。
- Q1和Q2必须相互热粘合。你可以通过热粘合两个在一起,这样热的变化反映了温度的变化。
我stripboard设置。
使用VCO
您可能已经注意到,电路具有积极和消极的电源电压。这种电路需要双电源正常工作(需要5 v, 0 v,至少5 v -铁路)。幸运的是,这个电路很有效用负电压发生器项目,所以要确保建立第一个!您还可以使用两个电池串联得到供应和使用中间连接地面。
这是一个可能的电路,可以使用权力VCO:
注意,只有VCC铁路需要调节5 v,因为这将决定的饱和分VCO输出频率以及影响。负铁路仅用于指数转换器电路,和在正常使用opamp输出驱动电路不会供应rails。
测试VCO
为了测试VCO,您将需要提供输入电压求和U1B阶段。你可以使用电位器提供一个可变电压0 v和5之间或者你可以使用一个振荡器的输出或1 v八度键盘,如果你有一个。在这个项目中使用一个电位计显示的视频连接在VCC和0 v的不同输出电压与总结阶段。
视频中所示,您将看到VCO连接电位计和第二个VCO。第二VCO产生低频振荡(LFO),可用于摆动场上许多有趣的效果。您还会注意到把一个手指放在Q1和Q2将导致输出频率的变化,可以利用更有趣的效果!另外,请注意,我使用了DC-blocking电容消除直流偏置信号发送到扬声器。
项目文件
所有的项目文件都包含在这里,你完全可以做如你所见符合他们!
在下面的. zip文件中,你会发现:
- Excel表的电压
- KiCad项目文件
- LTSpice模拟
- PDF版本的VCO内核
自己尝试这个项目!BOM。
我做了一个当我还是个孩子的时候开始路synth工具包。它有两个配装。
谁能告诉我如何指数计算表中输出列?
谢谢!