昨日、Nucleoボードの上に、Arduinoシールド用ユニバーサルボードを重ね、さらにその上に24GHz帯ドップラーセンサモジュールを重ねた3段ピラミッドについて投稿いたしました。既に書いたこともありますが、ボード類に気付いたことを書き留めておきたいと思います。電気的なことじゃありません。
メカニカルな形状の話
です。でも以外と大事かも。
※「鳥なき里のマイコン屋」投稿順Indexはこちら
下側のNucleoボードから行きたいと思います。マイコン的にはとても使いやすくて気に入っているNucleoボードなのですが(そうでなければ追加でもう1枚買ったりしませんよ)、1点困っているところがあります。まずはNucleoボードの裏面をご覧いただきましょう。
のっぺりした裏面にピンヘッダが突き出しているのが分かると思います。2列x両側のヘッダは、ST社がmorphoと呼んでいるインタフェースです。Arduinoが上面に背負っているピンソケットを拡張したようなものです。2つのコネクタに合計72本の信号が接続されているので、マイコンの端子は皆引き出せる感じになっています。上下にピンヘッダが出ているので、Arduino式に上にボードを重ねることもできますし、下の基板にNucleoを刺す形に接続することもできます。それは良いのですが、
下に突き出しているピンヘッダを足のつもりで使っているとショートが心配
です。ピンには電源、グラウンド、皆出ています。当然、
スペーサつけておくかい
と思います。手元に「よくある」六角形のスペーサ(樹脂製)あり、また、それに適合するM3のネジ(樹脂製)もあります。上の写真のようにNucleoボードには3個の穴が開いているのでちょっとガタツキが心配ですが、3個で浮かせるかと考えました。しかしね、これです。
わかりますか、下側に見える孔、Arduino互換のピンソケットの直近すぎます。穴径的にはM3ネジがちょうど良さそうなのですが、いかんせん頭が邪魔で真っすぐに入りません。ワッシャなどは当然ダメです。こまりました。M2のナベ小ねじであれば、なんとか頭は収まりますが、穴径的にはかなりスカスカ。M2のワッシャですら使えません。それに手元にはM2スペーサありません。ネジ式のスペーサではなく、孔に差し込んで「返し」がパチンと開く式(名前なんというのでしょう?)のスペーサならばなんとかなるかも。今度買っておくか。今のところ、しかたがない。現状は注意して絶縁体と思われる樹脂シートの上で使っています。
その穴のところ直近のArduinoの端子、SDAとSCLは先に述べたように、結構、いろいろ問題が多いです。メカニカルにも。
Arduinoシールド用のユニバーサルボードを2種類買ってみたのですが、まず今回工作に使ったタイプをご覧ください。
左のボードは、シルクが無ければ普通のユニバーサルボードに見えますが、シルクの部分に細工があります。外側の方にピンヘッダを立てれば、Arduinoに刺すことができるようになっています。ミソは、右側のコネクタ部分で、多分、Arduinoを設計した人は
逆刺しとかズレて刺すの防止
したかったなのでしょう、微妙にピッチが変えられているところです。ここに対応していなければArduinoそして、その互換のピンソケットを持つNucleoに刺さりません。もう一列内側でシルクで囲われているスルホールは隣接のピンヘッダ用のスルーホールと接続しています。よって、ピンヘッダからの信号の取り出しが楽です。(私のように半田付けが不得意な人にとってはね)
ただし、Arduino Unoのピンソケットは、左右とも2端子分多い
です。左側の方はピッチが同じなので、汎用のスルホールを使ってピンを立てようと思えばできますが(でも多分使わない端子)、右側の2本、つまり、I2CのSDAとSCLは対応不可です。このボードでは、そこから信号を取り出すことは諦めた方が良いでしょう。先の投稿で述べた通り、
Arduino Unoであればアナログ側の端子に同じ信号が出ている
のでそちらからとればOK。しかし、Nucleoではそうはいきません。その辺は先の投稿をご覧ください。さらに
上から7列目と8列目のところに「折り目」が入っている
です。ここで折ってボードを小さくすることもできるのですが、それはArduino Unoだと、背の高い部品がその辺にあってぶつかるからです。以下のArduino Unoの写真をご覧ください。
Nucleoの方には、背の高い部品が無いかというとそうでもなく、上の方の写真を見ていただくと、青と黒のプッシュスイッチの背が高いです。確実に、Arduinoのピンソケットの高さより高い。折り目で折っても、Nucleoのスイッチは回避できないので、この際、
Arduinoシールドボードには背の高いピンヘッダをはかせる
方が良いように思います。そうすれば、全てのスルホールを活用できると思います。
それに対して、もう一種類購入したArduinoシールド用のユニバーサルボードが左です。
御覧いただけるように、Arduino Unoの全ピンソケットに刺せるようにスルーホールが用意されています。問題だったSCL, SDAもこのボードであれば引き出せます。
I2Cで、NucleoにもArduinoにも接続できる「シールド」を作るのならば、こちらのボードですね。ただし、スルーホールの空いている領域がちょっと狭いのが残念です。上のボードでは折れ目の先になっていた部分が、表面実装部品用のランドになっています。これは上部の高背部品と干渉を防ぐために、「平らな」表面実装部品用にしたものと思われます。しかしね、チップ抵抗など最近のやつは「小さくて見えない!」、xxxルーペ買うといいのでしょうか?