LoginSignup
8
7

More than 5 years have passed since last update.

CapSense基板を自作して嫁を触ろう

Last updated at Posted at 2016-12-06

はじめに

KUTアドベントカレンダー7日目担当のringoです。
普段は音ゲーしてるかFPGA触ってます。最近はTensorFlowが熱い!
今回は夏休みに製作したことりちゃん基板とPSoCのCapSense(静電容量センサー)の紹介をしたいと思います。
今回は画像の編集→KiCadに取り込み→感光で基板作製→PSoCで動かす
といった手順で実装しました。

PSoCのCapSenseについて

  • CY8CKIT-042 PSoC® 4 Pioneer Kit
    PsoC4
    今回はPSoC4のPioneerKitを使って作製した痛CapSense基板を動かします。
    なぜPSoCかというと自分がよく使っているからというのもあるけど、CapSenseのモジュールが用意されていて使いやすいからが一番の理由だと思います。
    PSoCのCapSenseはiPodのクルクルホイールにも採用されています。
    今回はスライダーですが指の静電容量に反応させるという点では同じ仕組みです。
    ここらへのことはCypressのデザインガイドに詳しく乗ってるので興味のある方は読んでみてください。

画像の準備

まず素材となる画像を適当な画像編集ソフトで2値化します。

kotori_binary.png
ここにスライダーを書き込んで画像データして保存

kotori_slider.png

今回はGIMPで編集しました。腕の部分が切れているのは配線を出すためですが、両面基板にしてビアを作るほうがきれいに見えると思います。

KiCadに取り込む

KiCadには標準でビットマップからコンポーネントへの変換機能が搭載されているので今回はこれを使います。サイズの決定が面倒だった記憶があるけど、そこは生成されたフットプリントとにらめっこしながら設定した気がする。
フットプリントが生成されたら適当なライブラリのディレクトリに追加して、プリント基板エディタを開いてフットプリントの追加から追加します。
kicad.png
こんな感じで配線を伸ばしてピンに接続すればパターンは完成!

kotori_capsense
感光してエッチングしたものがこれ
思ったよりきれいにエッチングできたのでよかった
少しショートしてしまったのでパターンをカットしている

PSoCで動かす

Slider Designのサンプルを参考にプロジェクトを作ります。
psoccapsense
CapSenseのモジュールの設定を開くとスライダーの他にもボタンやタッチパッドも使えますが今回はスライダーを使います。
モジュールを追加したらピン配置を決めてプログラムへ。
プログラムと言っても実質20~30行ぐらいで使い方は

CapSense_CSD_Start();
CapSense_CSD_InitializeAllBaselines();

でモジュールを初期化して

CapSense_CSD_ScanEnabledWidgets();
while(CapSense_CSD_IsBusy() != 0);    
Pos = CapSense_CSD_GetCentroidPos(CapSense_CSD_LINEARSLIDER0__LS);

で値を取得しています。

完成!

スライダーの値をUARTでPCの画面上に表示するプログラムを作製しました。よく見るとボード上のフルカラーLEDの色も変わっているのがわかります。

まとめ

  • PSoCはいいゾ~
  • ことりちゃんかわいい

今回はCapSense基板の自作とPSoCでの実装について書きました。
元ネタははやしよのすけさんにC90でお会いして製作意欲を刺激されたからというのと、自分の好きなキャラで何か作りたかったってところが始まりだったので、今回アドベントカレンダーでかけて良かったです。
次はTensorFlowで書けたらいいな~と思う

8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7