3. 製作記事

目次
3.1 コンセプト
目次
ページトップ
今回製作したミキサーは、かねてから欲かったのですが、市販されているものは ないし、ミキサーはちょっとチャンネル数が増えるとたいへん高価になって しまうので、自分で作ってしまおうとして作ったものです。
どうせ作るならということで、以下のような10項目を基本機能としています。
  1. チャンネル数は16ch、AUXは全チャンネル4系統扱えること。
  2. マイク対応は4ch(4つあればアカペラ録音にもかなり使える)。
  3. デジタルボリュームでいいが、128ポイント以上あること。 (ラジカセやカーステのような32〜64ポイントでは少なすぎる)
  4. ラックマウント型であること(普通のミキサーは大きすぎる)。
  5. 必要であればミキシングコンソールを拡張できること。
  6. パソコンからすべての機能をコントロールでき、各チャンネルに名前をつける ことができる。
  7. LCDを装備して、各種設定を行なうことができる。
  8. パネルには、1〜2ch分のコントロールを切り替えて使っても良い。
  9. 見栄えからしてLEDレベルメータは欲しい。
  10. MIDIによるコントロールも可能なこと。
その結果、ハードウェアの仕様は表1のようになりました。
主要部品
CPUと周辺IC
コントロール用のCPUは使いなれたH8/3048Fを使用しました。内部128KByteの フラッシュメモリに外部512KByteのフラッシュメモリ、128KByteの 低消費電力SRAMを追加しました。また、バスコントローラとしてXilinxのCPLDを 使用しています。さらに追加のシリアル通信用として16552を使っています。
電子ボリュームとオペアンプ
電子ボリュームはラジカセやカーナビのような32〜64ポイントでは明らかに ミキサーとしては不足です。そこで、ナショナルセミコンダクタ社から 出ている128ポイントのLM1972を使用します。
パンポットやトーンコントロール用には64pointボリュームが4ch入ったXicorの X9241を使用しました。
 これらのボリュームコントロールには、XilinxのCPLDとシフトレジスタを 組み合わせてシリアルコントロール回路を組みました。
 オペアンプはボリューム変化時のポップ音を消すために、データシートで 推奨されているFET入力タイプのLF412をそのまま使用します。このオペアンプは 結構大きな出力が得られるようで、ヘッドフォンアンプにも使えました。
レベルメータ
レベルメータは、LEDレベルメータ用のTA7612を片ch当たり2個使って16point レベルメータとしています。
表1:Kmix-1601 ハードウェア仕様
項目 内容
CPU H8/3048F 16MHz(現在は20MHz)
メモリ 512KByte フラッシュメモリ/256KByte外部SRAM
通信機能 シリアル4ch(ホストPCとはUSB予定, MIDI-In/Out)
表示機能 20文字×4行 キャラクタLCD
入力ch 16ch(うち1〜4chはマイク入力対応)
AUX 全ch : Send 4系統/Recieve 4系統(ステレオ)
トーンコントロール 全ch : High/Low トーンコントロール
出力 メイン2ch(ステレオ)、ヘッドフォン(独立)
寸法 2Uラックサイズ
重量 不明



3.2 マザーボード
目次
ページトップ
マザーボードは、このシステムだけしか使えないものではなく、ある程度汎用性の あるものを検討します。したがって、汎用性を保つことのできる構成で1枚の マザーボードとし、それ以外の専用回路は別の基板に作りこむことにします。
メモリ構成
 H8/3048Fは、内部フラッシュ128KByte非常に充実したフラッシュメモリを 持った 1chip CPUですが、汎用性ということを考えると、100回程度までしか 書き換えできないというのは少々困ります。そこで、書き換え制限あるという ことであれば、内臓フラッシュメモリに汎用的な関数(ライブラリ)や起動時の 設定等を書き込んでおき、それ以外は外部のメモリに保存しておくのが得策です。 また、内臓のSRAMが4KByteというのもたりません。
 そこで、外部にフラッシュメモリとSRAMを追加して汎用的な使い方ができる ような構成にします。
 フラッシュメモリは、入手しやすくて、ある程度容量があって使い安物と いうことで、富士通のMBM29F040というものにしました。これは、512KByteと容量が 大きく5V単一で書き換えもできる使いやすい石です。パッケージもSSOPだけでなく PLCCのものがあり、自作派にも扱えます。S-RAMについては、いろいろなものが ありますが、RAMへのアクセスは早いほうがいいということと、バッテリバック アップができればより汎用性が高まるということで、128KByteの低消費電力SRAMを 2個使いしてバス幅16bitでアクセスできるようにします。この結果、H8のメモリ マップは表2のようになります。外部周辺機器として64KByteの空間を持って いますが、H8のような1chip CPUではこれだけの空間があれば十分かと 思います。

表2:K-mix1601メモリマップ
アドレス サイズ 種別
0x00 0000

0x01 ffff
128Kbyte 内臓フラッシュメモリ
0x02 0000

0x09 ffff
512Kbyte 外部フラッシュメモリ(MBM29F040C)
0x0a 0000

0x0d ffff
256Kbyte 外部低消費電力S-RAM
0x0e 0000

0x0e ffff
64Kbyte 外部周辺IC(16552, フロントパネル等)
0x0f 0000

0x0f ffff
64Kbyte H8内臓周辺および外部周辺IC

外部周辺機器
 H8にはタイマ、AD/DA変換器をはじめ、非常に多くの周辺機能が内蔵されて いますので、よほど専用性の高いもの以外、あまり多くの外部周辺機器は 必要ありません。今回のマザーボードでは、標準シリアル通信の16552を つけることにしました。通信回線としては、まず、ホストPCとの通信、MIDI等が 考えられますが、今回のミキサーではミキシングコンソールがほしくなった場合、 シリアル通信で接続するのがもっとも簡単です。その他の機器でもシリアル回線が いくつかほしくなる場合が予想されるため、H8に内臓の2chだけでなく、追加で もう2ch使えるようにしておきます。
 それ以外の外部周辺機器は、マザーボードとして標準装備しておく必要性が ないと思われるますが専用の機能追加がほしくなる場合も多々あるので、H8の バスを外に引き出せるようにしておくことにします。

バス制御
 H8のバスコントローラはかなり多くの機能を持っていますが、周辺機器の 追加への柔軟性にはやはり限界があります。そこで、CPLDを利用して CS,RD,WR信号等を制御してやり、柔軟な外部アクセス機能を持たせます。CPLDを 利用してアドレスをデコードしてCS/RD/WR/AS等の信号を制御することにより、 64KByteの外部アクセス空間を自由に各種外部周辺機器に割り当てることができ、 非常に柔軟性の高いシステムになります。

H8内蔵周辺機能
 H8には汎用のI/Oポート、AD/DA変換機もありますので、これらを 捨てておく手はありません。AD入力/DA出力、汎用デジタルI/Oポートとしても 使えるようにしておきます。特に、AD/DAのリファレンス電圧、入力アンプに 関しては今回は適当にしておりますが、きちっとした回路を入れた方が いいでしょう。
以上の検討結果からマザーボードのブロック図は図1のようになります。回路図は 図2のようになります。リセット回路は、一般的なリセットICを用いたものにして います。また、SRAMの電源は内部電源と外部電源(電池等)の両方をショットキ ダイオードで結合し、電池バックアップができるようにしてあります。 ボードの面積的に余裕があれば、電池を内蔵してしまうのも手です。


図1:マザーボードブロック図



図2:マザーボード回路図




3.3 フロントパネル
目次
ページトップ
フロントパネルは図4のような概観です。左からチャンネルコントロール部、 中央にLCD表示・システムセッティング部、右にメインコントロール部という 構成になっています。


図3:フロントパネル

チャンネルコントロール部
チャンネルコントロール部は、左図のようにマイクゲインコントロール用 ボリューム、トーンコントロールボリューム(High/Low)、パンポッド、 AUX Send ボリューム、AUX Send SW、チャンネルメインボリューム、 ターゲットチャンネル切り替えSW、ターゲットチャンネル表示で構成します。
 SW類は全てプッシュスイッチ、チャンネル表示は7セグメントLED2個、 その他はすべてボリュームです。スイッチは3ステートバッファを通して H8の外部バスに直結し、メモリリードで値を読めるようにします。 ボリューム類はアナログスイッチを経由してオペアンプに入力し、H8のAD変換に 入力します。
 LEDは、2桁の7セグメントLEDを1桁ずつ切り替えてインターレース表示します。

図4:チャンネルコントロール部
システムセッティング部
システムセッティング部は、設定用のプッシュスイッチ(タクトSW)、 7セグメントLED、20文字×4行LCDで構成します。
タクトスイッチは8個あり、上下左右、Enter、Escape、ch表示、メイン表示等の 機能を持たせます。また、LEDはミキサーに記録されているプログラム番号を 表示します。LCDは20文字×4行のものを使用し、CGRAMに新しいフォントを 書きこんで、グラフ表示を可能にします。
 これらの機能で、ミキサー内部の動作状態、シリアル通信の設定、ミキサー 設定情報の記録や呼び出し、LCD表示方法の切り替え等を行ないます。(詳しくは、 ソフトウェアの製作記事を参照。)なお、7セグメントLEDは、チャンネル コントロール部と同様にインターレース表示です。

図5:システムコントロール部
メインコントロール部
メインコントロール部は、AUX Return ボリューム(ステレオ対応)、 メインボリューム、レベルメータ、ヘッドフォン関係、ミキシングコンソール 接続用コネクタ、電源SWで構成します。
 AUX Return ボリュームは4ch全てステレオ対応で、他のボリュームと同様 H8のAD変換に入力します。
 メインボリュームのみスライド型のボリュームを使います。これもAD変換 します。
 レベルメータは、15点のLEDレベルメータで、東芝のTA7612を使っています。 このICは、10点出力形ですので、片chにつき2個使い、レベルを調整して 15点分の出力を使います。
 ヘッドフォンボリュームは、AD変換するのではなく、直にヘッドフォンの 音量を調節します。ヘッドフォンのボリュームのみ、内部の電子ボリュームと 普通のボリュームの両方を使います。
 ミキシングコンソール端子は、外部拡張用です。普通のミキサーのように 全chのコンソールが欲しいとか、その他機能拡張する時に使います。シリアル 通信信号をこのコネクタに接続します。

図6:メインコントロール部
以上の結果、フロントパネル部の回路図は図7のようになります。ボリュームの 数がやたら多いですが、ミキサーとしては、非常に少なくなっています。 各ボリュームはアナログスイッチで切り替えてH8/3048FのAD変換器の入力に 接続します。タクトSWは3ステートバッファを通して、バスに直付けしてしまいます。

図7:フロントパネル回路図



3.4 チャンネル入力回路
目次
ページトップ
チャンネル入力回路は、1〜16ch まで基本的にすべて同じ回路です。 マイク入力対応の1〜4chのみ、入力のゲイン調整の部分が他のchと異なります。
 入力回路は、まずコンデンサカップリングしたゲインが約5倍のアンプに入ります。 ここで、ch1〜4のみ、マイクゲイン調整用のボリュームが入ります。 その後ろにトーンコントロール回路が入ります。トーンコントロールは、 オペアンプを使った一般的なトーンコントロール回路で、High/Mid/Low調整 タイプとします。通常、HighかLowしか使わないことが多いので、Midは 必要ないでしょう(今回は入れていますが)。部品が多くなり、音質が悪くなる だけで、あまり利益はないと思います。
 トーンコントロール回路の後に、電子ボリュームLM1972を接続し、チャンネルの 音量制御を行ないます。LM1972はステレオ用として2ch入っていますので、16ch分として 8個使用します。ただし、ch間クロストークを稼ぎたいので、1個のLM1972に1,3ch, 2,4chと奇数ch/偶数chで分けます。また、LM1972の音量設定はシリアル通信による 設定になりますが、カスケード接続して一度に8chずつの音量設定を行なうように します。
 AUX出力は、LM1972に入力する前に4系統出力します。 AUX Sendは別途AUX Send用ボリュームを接続するので、ここではトーンコントロール 回路の出力をそのままAUX Send用出力にします。
 LM1972を通った後は、再度ゲイン1のアンプに入り、ここでパンポットコントロール を行ないます。パンポットは1チップに4つ分の64ポイントボリュームが入ったXicorの X9241を使います。パンポットコントロールを行なった後は、ミキサー内部の ステレオ中間バスに接続します。基本的にこのステレオ中間バスは、オペアンプの 加算器として構成される部分になるので、47KΩ〜100KΩ位で接続します。


図8:ch入力ブロック図


3.5 Aux Send回路
目次
ページトップ
Aux Send回路は単純に各chのAux Send 1〜4 をボリュームを通してオペアンプの 加算回路に入力するという構成にします。LM1972は、1個で2ch分のボリュームが 入っていますが、全ch Aux出力が4系統ですので、全部で32個のLM1972を使用します。 これに合わせて、ナショナルセミコンダクタの推奨回路通りにしてしまうと、さらに 32個のオペアンプ(LF412)が必要になってしまい、回路規模が大きすぎます。 そこで、LM1972を通った後は直接オペアンプの加算回路に入れてしまいます。 こうすることによってLM1972は32個必要ですが、オペアンプは4系統分のみとなり 1ICに2ch入っているLF412なら2個ですみます。
 LM1972のコントロールは、8個ずつグループ化してカスケード接続し、4系統の コントロールラインにします。
 chコントロール回路とAux Sendコントロール回路を図9に示します。


図9:chコントロールおよびAux Send 回路



3.6 メイン出力回路
目次
ページトップ
 メイン出力回路は、各チャンネルのステレオ出力、Aux Return を加算して 最終的なステレオ出力を生成する回路です。 LM1972は、50KΩ程度のインピーダンスを持っているので、Aux Return入力を そのままLM1972を通して音量調整しますその後、オペアンプLF412で増幅し、 内部のステレオバスに接続します
 内部のステレオバスは各チャンネル(16ch分)とAux Return を 加算して増幅します。ステレオバスには22KΩで接続していますが、もう少し 大きな値の方がチャンネルセパレーションが良くなると思われます。
 加算回路の後は、メイン出力とヘッドフォンそれぞれ独立にLM1972で音量 調整できるようにしています。なお、ヘッドフォンアンプは簡易的にLF412を そのまま使っています(これでも十分な音質だと思います)。

図10:メインコントロール回路



3.7 レベルメータおよび電源回路
目次
ページトップ
 レベルメータは、東芝の10ポイントLEDレベルメータ用IC TA7612 を1chあたり 2個使用し、そのうち16個分を使って、16連LEDレベルメータとしました。 機能的には、TA7612 1個で10連LEDメータで十分かと思います。
TA7612は単電源動作しますが、アナログ信号回路はすべて±電源で動作します。 そこで、レベルメータへの信号入力を整流してTA7612に入力し、グランドを 切り離すことでまともなレベル表示ができるようにします。
 電源回路はアナログ±6V、デジタル+5V、バックアップ電池、レベルメータ用 +9Vの回路です(回路図では+9Vの回路が記述されていません)。特に音関係を 扱う回路ですので、DC-DCコンバータは使用せず、トランス〜整流回路〜 3端子レギュレータによるドロップアウト型の安定化電源とします。

図11:レベルメータ回路



図12:電源回路