お知らせ:この記事はJLCPCBの提供でお送りしています。

みなさんこんにちは。今回から何回かに分けて、静電容量方式のタッチスライダーの試作例を紹介します。タッチスライダーというのは長方形のエリアのどこに指が触れているかを感知できるセンサーです。

きっかけはNT金沢

タッチスライダーを作ろうと思ったのは、6月に参加したNT金沢2023をきっかけにショルダーキーボードを作ろうと思い、そこに使おうと考えたからです。NT金沢2023参加記にも書いた通り、NT金沢で自作のシンセサイザーを展示する際に、シンセサイザーにつないであるキーボードはお客さんの方を向くように置いていました。しかし、このような配置とすると展示者側からは演奏しにくいという問題がありました。また、スイッチサイエンス高須さんから会場内パレードに参加できるようにキーボードを可搬型にしたらどうか?という提案も受けました。そんなわけで、展示者側でシンセサイザーを操作して実演するために(そしてあわよくば会場内パレードにも参加できるように)、首からぶら下げて演奏できる可搬型のキーボードを一つ用意しようと考えました。

(写真はWikimedia commonsより。RadioFan氏の撮影。CC BY-SA 4.0)

首からぶら下げて演奏できる可搬型のキーボードは一般に「ショルダーキーボード」と呼ばれています。上の写真はヤマハのKX1というショルダーキーボードです。国内では小室哲哉さんがKX1の姉妹モデルのKX5やそのカスタムモデルを使用していたことが有名です。ショルダーキーボードを使う場合、首からぶら下げたうえで、左手で柄の部分をホールドし、右手で鍵盤を弾いて演奏するというのが一般的なプレイスタイルです。

大半のショルダーキーボードでは、柄は単にショルダーキーボードをホールドするためにあるわけではなく、ピッチベンドやモジュレーションなどの演奏効果を付け加えられるようなインターフェースが搭載されています。KXシリーズの場合、柄の部分に取り付けられたタッチスライダーによって、ピッチベンドの効果をかけることができるようになっています1

今回は既存のUSB-MIDIキーボードを改造してショルダーキーボードを作る最初のステップとして、KXシリーズに付いているようなタッチスライダーを作ってみようと考えました。KXシリーズはおそらく抵抗膜式のタッチスライダーですが、せっかくなので今どきの静電容量式のタッチスライダーの製作に挑戦しました。

マイコンを選ぶ

静電容量式のタッチスライダーでは基板上に形成した電極パターンに対して、指が触れたときと触れていないときの静電容量の差分を検知することで指のタッチの有無や位置を検出しています。汎用のマイコンで実装した事例もありますが、お手軽かつロバストなシステムを作りたいとなると、ハードウェア的に静電容量を検出するための回路を内蔵しているマイコンを使いたくなります。

実は以前、単純な静電容量式のタッチセンサを作るためにCypress2のPSoC1シリーズを使ったことがあります。今回もPSoC1を使おうかと思ったのですが、PSoC1はレガシー扱いな上、開発ツールのPSoC DesignerがWindows11でうまく動かなかったので、別のマイコンを使うことにしました。

ざっと調べてみると、安い8bitマイコンの中ではMicrochipのPICマイコンとAVRマイコンの一部がタッチセンサ用の周辺回路を持っているようでした。実はこの用途もにらんで過去にATmega328PBを購入したりもしていたのですが、どうやら最新のライブラリはATmega328PBのタッチセンサ用回路に対応していないようなので、別のマイコンを選定することにしました。結局、今回はJLCPCBのParts Libraryに存在し、かつ安価という基準で、ATtiny1616を採用しました。

パターンを設計する

使用するマイコンが決まったところで、KiCADを使って回路図を描いてパターンを設計していきます。KiCADにはタッチスライダー用のパターンを生成するためのウィザードが存在しますが、Microchipが公開しているタッチスライダーのデザインガイドラインに沿ったパターンが生成できなさそうだったので、今回は自力で描きました。ウィザードで生成されるパターンはPythonでカスタマイズできるはずなので、次回があればウィザードでの生成にも挑戦したいと思います。なんでタッチスライダーはギザギザのパターンにするのか等々、勉強になるのでデザインガイドラインには目を通すことをお勧めします。

マイコンを搭載する部分のパターンも描けたら、あとは先日紹介したプラグインを使って部品指定をして、製造用データを作ってJLCPCBに投げるだけです。今回はマイコンは事前にJLCPCBのParrts Libraryで購入していたので、その代金(USD0.9154/1個)は乗っていませんが、基板製造+実装代金と送料で合計USD22.89でした。円安が痛いところではありますが、それでも格安といえます。

以上、今回は静電容量式のタッチスライダーを試作することにしたきっかけと、基板の設計について紹介しました。次回はプログラムの開発について触れたいと思います。お楽しみに!

 

  1. もちろん、他の機種ではタッチスライダーではない方式のインターフェースが付いている場合もあります。
  2. 今はInfineonと書くのが正しいのですかね?
公開日:2023/07/27