熾火研究所*電子工作室

2010-05-31

Japanino の忘れ物、保護抵抗をつけてみた

Japanino に足りないもの…それは!…というようなお話。

f:id:OkibiWorksLabo:20100601005429j:image:w480

この画像は本文とは特に関係ありません。光に透かすと綺麗だよ、というだけです。



前置き(長くてすみません m(_ _)m)

5月中旬の発売以来好調に売れているという噂の、学研Arduino 、その名も「Japanino」。「Japan」を冠するとは随分大きく出たものですが、販売数などなどを考えれば至極妥当だという専らの噂*1です。

8ビットマイコン (大人の科学マガジンシリーズ)

8ビットマイコン (大人の科学マガジンシリーズ)

徹底したコストダウンにより本家(Duemilanove)とほぼ同価格ながら書籍記事の内容の充実、アクチュエータの付属など、「パッケージとして」優れたものに仕上がっているようです。

「本家よりスペック低いわけだし(メモリが少ないしクロックは遅い)、既に Arduino 持ってる人は要らないんじゃね?」なんてことも発売前には言われていたりしましたが、結果的にはむしろ Arduino のファンが進んで買っているというような状況。Arduino って、存在は知ってて、興味はあったんだけどねー、という層が大いに背中を押されたような状況も散見されました。低電圧・低電力でも動く Arduino としての価値もにわかに見出されていたりするようです。

ただし、コストダウンと短い工期の無理が祟ったか、いくつかの問題が明らかになっています。プロデュースを担当したスイッチサイエンスさんがその「反省」をまとめておられますが

最大のものは USB ブリッジの Mac における不充分な機能でしょうか。私も Twitter 上で「安価USB シリアルチップは?と振られて「CP210x」を紹介したひとりなので微妙に(且つ勝手に)責任の一端を感じつつ、ただまあ、私が言わなくても誰かが挙げたであろう、FT232RL に次ぐ候補であったことは間違いの無い事実。いろいろ言っても Windows 上ではわりといい子みたいですよ、このドライバ。秋月の USB - シリアルケーブルにも使われてますし。

ま、ドライバブートローダも誰かが書いて改良することができます。いつか、誰かがやってくれることでしょう。

しかし、ハードウェアは、余程のことが無い限り、そのまんま。とりあえず、キットの内容範囲で使うぶんには、気にしなければどうってことのない問題ではあります。

電源コネクタは、気になるのであれば剥がして横向きのを付け直せばよろしい。

f:id:OkibiWorksLabo:20100531225036j:image:w320

千石の「ジャンク袋」に何故かごっそりと入っていた XH コネクタ。普通に買ってもそう高いものではない。

保護抵抗も、「シールド」を接続していろいろやるのでなければ当座はなくても平気。…でも、やっぱり気になることは気になる。

確かに両者を比較すると「M8RXD」と「M8TXD」のラインに抵抗が入ってるのと、入ってないのと。直列に接続した抵抗は電流の制限をしてくれる。(過電圧には効果がない。) まあ、「本家」にはあるのだから、畢竟あった方が安心なのは間違いがない。


実際にやってみました(みなさんのおかげです)

そんなようなことがなんとなく引っかかっていたちょうどそんな頃、 Twitter でこんな tweet が。

#Japanino のD0,D1〜CP2104間に保護用1K抵抗を取り付け改造しようかと、思案中。裏面のパターンを一部カットしてチップ抵抗付ければ良さそうではあるんだけど。

http://twitter.com/maris_HY/status/14944757518

実際にやってみたかたも。

大人の科学 Japanino D0,D1 の保護抵抗を実装した。

http://twitter.com/n24bass/status/14977602264

@Sim0000 @maris_HY Japanino CP2104 から D0, D1 に向かう裏面のパターンを切ってチップ抵抗を付けてます。 http://bit.ly/abgkMK 工作が汚いのは御容赦。

http://twitter.com/n24bass/status/15021106183

自分の頭の中だけでは不安だけど、こういう先行事例があるなら、私にもできそうです。これ重要。

幸いなことに、1kΩのチップ抵抗、冷蔵庫に眠って…るわけがない。 持ってました。しかも大きくて扱いやすい「2012 サイズ」。えらい、3ヶ月ぐらい前の自分。チップ抵抗が無ければ、普通のリードタイプでもいけそうです。

因みに千石ではチップ抵抗、10個で¥50(2010/05 現在)。少ない数で買おうとすると、とりたてて安くはありません。

f:id:OkibiWorksLabo:20100531225038j:image

上は千石で販売している 1/4W 小型炭素抵抗。従来の 1/8W のサイズで、充分小さいからこれでもいける。下はチップ抵抗、2012 サイズ。

で、基板を眺めているうちに、ピンソケットの足の部分に抵抗を寄せてやれば、パターン剥がし箇所も少なくて済む(それにしっかり固定できる)ことに気付きました。これは、やるしかない!



手順は簡単で、抵抗のサイズに大体合わせて適切な位置でもってカッターナイフでパターンカット & 軽くこすってレジスト剥がし、で、あとは精密半田付け。以上。作業的にはチップ抵抗よりもリード抵抗のほうが楽かもしれない。

私は例によってフラックスひたひたにしてごまかす戦法。使用量、減らしていかないとなぁ。


(途中経過の写真がなくてすみません。撮るの忘れてた。)


できたのがこんな感じ。

f:id:OkibiWorksLabo:20100531225039j:image

テスタで導通・絶縁や抵抗値を確認し、OK のようなので、USB 接続。問題なく動きました!よかったよかった。…といっても、あくまで「なにかイレギュラーなことが起こった時のための保護抵抗」であるからして、その効果を実感する機会は、たぶん訪れないような気もしますけど。

f:id:OkibiWorksLabo:20100531225037j:image:w480


今回の工作(改造作業)は、きちっとした「先達」があったので、安心して進めることができました。@maris_HY さんと @n24bass さんには、こんなところからで失礼いたしますが、お礼申し上げます。 m(_ _)m m(_ _)m m(_ _)m

こんな感じで、一応じわじわとチップ部品扱いの勘みたいなものを養いつつある、熾火研究所でした。


【軽く追記】保護抵抗について:要するに、要るの要らないの?

その後、「保護抵抗(キリッ)」みたいなことを言っているわりに私は全くその意味について理解していないので「勉強しなければ」的なことを tweet してみたところ、いろいろと教えて頂くことができました。

まず、ひとくちに「保護抵抗」といっても色々なタイプがあって、いざというとき(ショートしたときなど)に率先して焼けて回路を遮断したりして貴重な部品を守るタイプの、要はおおらかなヒューズみたいな役割を期待されているものとか、あと LED の電流制限抵抗も保護抵抗と呼ばれることがあったり。

今回の場合の「保護抵抗」は、デジタル IC の信号入出力ポートが兼用されている都合上、ポートの状態によってあらぬ方向へ流れ込む電流を IC が生で受け取っちゃったりしないように挟むもの、という認識でだいたいあってるかなと…要するにまだあんまり判ってない。


…あれ、保護抵抗って 保護するのは電流から?電圧から?それとも両方(電力)? ぇーと、わかんなくなってきた! 帰ったらもっかい調べよう…

http://twitter.com/OkibiWorksLabo/status/15139545262

. @OkibiWorksLabo 電圧差による過電流から保護かと。特にmega168のRxにはCP2104と他のデバイスの出力とが繋がれるので、それぞれHigh-Low,Low- Highの出力になった場合、保護抵抗がないと過電流が流れてしまいます。

http://twitter.com/maris_HY/status/15140973940

@maris_HY @OkibiWorksLabo 保護目的も有りますが、USB-Serialが切り離せないため、D0を出力に使うまたは何かの出力を接続する場合に、競合してもUSB側が負けるようにするのが主目的だと思います。

http://twitter.com/haru_hh/status/15147361022

USB - シリアルブリッジが接続されているポートと汎用入出力ポートが兼用になっているということがポイント(ということのもよう)。


でもって、さらに生ずる「議論」としては、「保護抵抗 1個要らなくないですか?」という話。

保護抵抗の話。逆に、ArduinoTx側つまりCP2104のRx側はCP2104が出力にはならないので、保護抵抗要らないんじゃない?って気もしてくる。どちらかと言うと、ArduinoTxに外付けデバイスの出力がバッティングしないよう、そっちに保護抵抗が有った方が良い?

http://twitter.com/maris_HY/status/15152807076

@maris_HY USB側Rxに抵抗不要は同意。ATMegaのTxに抵抗入れてしまうと、外付け回路が出力の場合にブートローダーの通信に支障があるので、外部回路の出力に入れるのが良いと思います。

http://twitter.com/haru_hh/status/15153841222

私の理解の範囲内で書くと、USB 側の RX (つまり ポートD1 と CP2104 のあいだ)に関しては、CP2104 が受信のみなので、信号の H, L の電位差でもって流入とか考慮しなくてよいため、保護抵抗不要っぽい。では、ATMega のほう(要するに Japanino 基板のおもて側のほうってことになるけど)に保護抵抗を挟むべきか、というと、これはこれで別の支障が生じるのでやめたほうがよいらしい。


こういうの*2はたぶん自分で回路設計したり、修理とか重ねたりすると養われてゆく勘みたいな部分もあるのだろうとは思いますが、…難しいですね。こういうときは、本家 Arduino Duemilanove に両方入っていて支障が無いようだから、おまじないとしてとりあえず入れておけばいいんじゃなかろうか、で構わない気もしてきます。わからなかったら模倣。…まあ、そういう態度が思わぬ不具合の元凶という気もしますが、ホビーエレクトロニクスの範疇ならばそれでもいいのかな。作業の手間としてはチップ抵抗取り付け 1個も 2個もさほど変わりません。


パターンカットとかの勇気がある人(ていうか日常茶飯事だぜ!という人も含む)は、練習がてら(ていうか朝飯前の散p以下略)チャレンジするのもいいのではないかと思います。ただし、飽くまで自己責任で。

*1:なんでも今回の Japanino 発売によって、Arduino とその「互換機」(所謂)の保有台数に関して、日本が世界でダントツの 1位に躍り出る、らしい。 Twitter でちらりと見かけたような気がする話なので、詳しい数字とかソースとかは知らない。

*2:どこに抵抗が・ダイオードが必要、とか、入れると邪魔、とか、プルアップ・プルダウンが必要とか、必要ない、とかピピっと気付く、みたいなこと。