Tamesuke-Goto Maker的Blog -9ページ目

Tamesuke-Goto Maker的Blog

地域ISP管理者だけれど、ここ3年ほどMakerなJobが増えたのでまとめてみたいと思います 旧ハンドル Ringoro

Arduinoを使って多接点(20ch程度)コントロールを行うデバイス開発の打診が来たので、GPIOエクスパンダを使って検証をする事にしました。
 
GPIOエクスパンダは MCP23017 を使ったブレークアウトがありスイッチサイエンスからRaspberryPi用のものが販売されています。
 
半田付けも楽そうだし、これが使えるかと入手してみたのですが、、、大きさが中途半端に長くてシールドの基板に乗らない。。仕様的に2枚必要なのでこのままではArduinoには適していません。
 
半田付けも考えてみたらブレークアウトボードのソケットから外へケーブル引っ張り出さないといけないので手間はブレークアウトを使ってもあまりメリットないですね。
 
そんなわけで秋月におなじMCP23017のDIPがありますのでそいつを使ってシールドを一から半田付けして作ってみる事にしました。
 
 
{C8B491CA-69BB-48A5-A7BB-6439F96B6076}
 
 
丁度2個乗って良い具合です。回路とスケッチはこちらのサイトを参考にさせて頂きました。
 
 
MCP23017用のC++クラスもgithubにありますが、こちらのサンプルでは普通のWireクラスだけ使ってi2c通信を行いアクセス・コントロールさせています。GPIOのOutputだけの操作で単発のレジスタに一バイトづつ書込するだけなのでクラス化しなくても面倒はありません。
 
 
とりあえず、MCP23017一個 16ch 動作確認用のjig LEDアレイを半田付け。これが一番面倒くさい。
 
 
{89C61F6B-4181-4E98-ACA4-67D5F2ED6C29}
動作確認できました。ここではLED 8chを2系列ランダムに点灯させています。
 

 
 
デバッグ
 
しばらく動作させていると、突然点滅が停止するという事態が発生しました。リセットでは再稼働せず、電源を抜いて少しおくとまた復帰するという状況でした。
アナログ的におかしな事なっているので、他の回路をみたところスイッチサイエンスのブブレークアウトでは /RESET がプルアップされています。真似てVccでプルアップしたところ安定しました。/RESET端子のプルアップは必須の様です。
 
 
 
 

Buescher True Tone Tenor Sax 


普段から使っている楽器だけども古い楽器のためテーブルキーのメカニズムが非常にシンプル、、、というか超原始的
 
キーが硬い上に動きが鈍い。調整して時間が経つのでさらに鈍くなってる。ローラーも固着気味だし。ジャストなタイミングで音を出したかったら意識的に早めにフィンガリングしないと音が間に合いません。
 
今日はJazzセッションなので、集中してテーブルキーのフィンガートレーニングやったら指が痛くなってしまった。。
 
 
{A45F6F6B-36E7-41E9-A408-822EF9407D13}
 
 
 
 

 

久しぶりに秋月へパーツをオーダしたら やたら長いハコで届いた。。
 
{E9962339-3AB8-44A6-9969-C41D92D52A81}
 
{A647F429-5BDE-4173-9226-0B76883EF2C8}
 
Arduino nano用に28pin ICソケットが安かったのでレールで注文したらこんなになって来た。
秋月にこんなハコあったのだね。
 
Lチカ
 
ATTiny13のJack-o'- Lantern Lチカ、月曜からずっと点けっぱなしにしていたのですが、まだチカチカしています。意外と長持ちです。 
 
2種類作って、もう一つはLEDを少し明るめに電流を1.5mAくらい流したのを作って見たのですが、それでも結構長持ちしていますね。ボタンリチュウム電池は間欠動作させると効率的に電気を取り出せるそうなので、Lチカにはちょうどいいかと思われます。 ※追記しました
 
ただ、LEDは赤LEDと黄色LEDを並列にして点灯させると赤の方は光って黄色はだいぶ暗くなってしまってはいます。

 

 

 追記

 
電流の多い方は日曜日の朝には消えてました。電流の少ない方はまだ点滅しています。あと2,3日は持ちますかね。あとでクリスマス用イルミネーションにも応用してみよう。
 
 
{0582E779-A381-4CC9-8A19-773B5D216874}