SlideShare a Scribd company logo
1 of 25
Download to read offline
シンセサイザ
シンセサイザとは?
● 電子回路やデジタル処理を用いて、音を生成・合成する
● ADSRエンベロープを用いて、音の鳴り方を変化させる
● 周波数フィルタを用いて、音にエフェクトをかける
キーボード
構成
キーボード
Arduino Raspberry Pi アンプ
スピーカー
構成
MCP23017 Arduino
Raspberry Pi
I2C
シリアル通信
スイッチ
キー入力
● キーボードの入力が多い(今回は25個)
○ Arduino unoのGPIOピン数では入力が足りない
● IOエキスパンダ(MCP23017)を使用
○ Arduino側で必要なピンはI2C(SCL,SDA)+5V+GNDの4ピンのみ
○ I2C接続なので、さらに入力が必要になっても簡単に拡張できる
つまみ入力
● ASDR,Filterの周波数変更などはつまみで入力を受け付け
○ ロータリーエンコーダで正転・逆転を入力
■ デジタル入力なので誤差がない
■ シンセ本体との位置のずれを気にしなくて良い
アンプ ● D級アンプ
回路仕様
● 最大30W
● 簡易的で安価
● ポータブルでコンパクト
D級アンプ
プログラム ● C#
● .Net Core 3.1
基本構成
ライブラリ
● KSynthesizer
○ Core
■ 波形生成、ADSRエンベロープ、フィルタ、シンセサイザ、音出力の抽象化
○ Soundio
■ macOS, Linux, Windows用のオーディオ出力
○ MIDI
■ MIDIパーサー
アプリケーション
● KSynthesizer.Cli
● GSynthesizer.Windows
クロスプラットフォーム
プログラム構造
Core Soundio MIDI
Windows
GUI
CLI
WASAPI
波形生成
ミキサー
ADSRエンベロープ
キーを押す時間の長さに応じて波形の音量を変化させるフィルタ
Attack・Decay・Sustain・Releaseの4つから構成される
メインプログラム
シリアル入力
パラメータ更新・キー入力
波形データを生成
オーディオバッファへ書き込み
MIDIプログラム
MIDIファイル キーイベント
Windows向けGUIプログラム
WPF
● GUIフレームワーク
WASAPI
● 音出力API
ご清聴ありがとうございました

More Related Content

Similar to シンセサイザ作り

2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」
2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」
2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」aitc_jp
 
20181117 arduino basicbeta1
20181117 arduino basicbeta120181117 arduino basicbeta1
20181117 arduino basicbeta1Chiehwun
 
20181117 arduino basicbeta2
20181117 arduino basicbeta220181117 arduino basicbeta2
20181117 arduino basicbeta2Chiehwun
 
20110724 WIZDOM:知識ゼロからのArduino(1)
20110724 WIZDOM:知識ゼロからのArduino(1)20110724 WIZDOM:知識ゼロからのArduino(1)
20110724 WIZDOM:知識ゼロからのArduino(1)Atsushi ENTA
 
Intel edison edison向け基板のご紹介
Intel edison edison向け基板のご紹介Intel edison edison向け基板のご紹介
Intel edison edison向け基板のご紹介Takehiko Tomiyama
 
20190521 node-red ug vol8 kitazaki v2
20190521 node-red ug vol8 kitazaki v220190521 node-red ug vol8 kitazaki v2
20190521 node-red ug vol8 kitazaki v2Ayachika Kitazaki
 
Osc hokkaido2015 arduinoで温度を測るところまで
Osc hokkaido2015 arduinoで温度を測るところまでOsc hokkaido2015 arduinoで温度を測るところまで
Osc hokkaido2015 arduinoで温度を測るところまでrarere
 
Arduinoを用いたキソ電子工作2
Arduinoを用いたキソ電子工作2Arduinoを用いたキソ電子工作2
Arduinoを用いたキソ電子工作2どと〜る
 
OSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUGOSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUGHideki Aoshima
 
Raspberry Jam #1 20121229
Raspberry Jam #1 20121229Raspberry Jam #1 20121229
Raspberry Jam #1 20121229Hideki Aoshima
 
20140910 Arduino for beginners
20140910 Arduino for beginners20140910 Arduino for beginners
20140910 Arduino for beginnersKenichi Ohwada
 
GR-KURUMIを使ったしゃべるセンサーライトの製作
GR-KURUMIを使ったしゃべるセンサーライトの製作GR-KURUMIを使ったしゃべるセンサーライトの製作
GR-KURUMIを使ったしゃべるセンサーライトの製作三七男 山本
 
配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!
配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!
配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!Kazuhiro Abe
 

Similar to シンセサイザ作り (14)

2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」
2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」
2017年01月21日 AITCシニア技術者勉強会 第3回「各種センサーを使ってみよう!~温湿度と加速度~」
 
20181117 arduino basicbeta1
20181117 arduino basicbeta120181117 arduino basicbeta1
20181117 arduino basicbeta1
 
Arduino
ArduinoArduino
Arduino
 
20181117 arduino basicbeta2
20181117 arduino basicbeta220181117 arduino basicbeta2
20181117 arduino basicbeta2
 
20110724 WIZDOM:知識ゼロからのArduino(1)
20110724 WIZDOM:知識ゼロからのArduino(1)20110724 WIZDOM:知識ゼロからのArduino(1)
20110724 WIZDOM:知識ゼロからのArduino(1)
 
Intel edison edison向け基板のご紹介
Intel edison edison向け基板のご紹介Intel edison edison向け基板のご紹介
Intel edison edison向け基板のご紹介
 
20190521 node-red ug vol8 kitazaki v2
20190521 node-red ug vol8 kitazaki v220190521 node-red ug vol8 kitazaki v2
20190521 node-red ug vol8 kitazaki v2
 
Osc hokkaido2015 arduinoで温度を測るところまで
Osc hokkaido2015 arduinoで温度を測るところまでOsc hokkaido2015 arduinoで温度を測るところまで
Osc hokkaido2015 arduinoで温度を測るところまで
 
Arduinoを用いたキソ電子工作2
Arduinoを用いたキソ電子工作2Arduinoを用いたキソ電子工作2
Arduinoを用いたキソ電子工作2
 
OSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUGOSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUG
 
Raspberry Jam #1 20121229
Raspberry Jam #1 20121229Raspberry Jam #1 20121229
Raspberry Jam #1 20121229
 
20140910 Arduino for beginners
20140910 Arduino for beginners20140910 Arduino for beginners
20140910 Arduino for beginners
 
GR-KURUMIを使ったしゃべるセンサーライトの製作
GR-KURUMIを使ったしゃべるセンサーライトの製作GR-KURUMIを使ったしゃべるセンサーライトの製作
GR-KURUMIを使ったしゃべるセンサーライトの製作
 
配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!
配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!
配布用Raspberry pi+arduino+scratchでフィジカルコンピューティング体験!
 

シンセサイザ作り