コメを噛め

コメを噛め

rerofumi の電子工作メモ

hatena bookmark

DSC_0027
このブログを始めた直後の 2006年8月に PicoScope 2202 (秋月電子通商で取り扱っている最も安価な回モデル)を購入して「PicoScopeって使えるの?」という記事を書いていた。
結局これが使えてお気に入りとなり 2012年まで長いこと使っていた。

2012年になると「ちょっと良いモデルに手を出してみようかな」という気分になったのと、シグナルジェネレータ付きの奴が欲しくなったのとで 3204B を購入。
PicoScope のシグナルジェネレータは AWG といって、基本的な波形はもちろんのこと 1024サンプルで自由波形を出力できるのでなかなか面白いのです。

オシロスコープとして 3204B で不満はなくほくほくで使っていたのだけれども、先日 PicoScope のサイトを覗いてみたら 16ch のロジアナ機能がついた MSO(ミックスドシグナルオシロスコープ)モデルなるものがあって激しく物欲を揺さぶられた。
しかし、秋月電子通商では扱っていない(RSオンラインにはあるみたい)ので、イギリスの PicoScope 社に直接注文して購入。ロジアナ付きの 2205MSO だよー。

DSC00170
2205MSO / 3204B / 2202 そろい踏み。

PicoScope は PC オシロなので PC 必須ではあるんだけれども、その分トリガ設定がマウスで楽々だったり、スクリーンショット取りまくりだったり、ロガーとしても使えたりと便利なのです。
すっかりお気に入りツール。

PicoScope の良いところは PC アプリがちゃんと進化していっているところ。
64bit 対応も早くて問題なかったし、ソフトの機能も徐々に増えていくしで安心して使えるのです。

BGA3q6zCMAExOox
最近だとシリアルデコード機能が付いたので、2現象のオシロスコープモードでも UART/I2C/SPI/CAM 等のデバッグが楽にできるようになった。

BGBJ1OJCYAAP7jA
MSO モデルのロジアナ機能ってアナログのオシロスコープと排他機能かと思っていたのだけれどもそんなことはなく、両方同時に使う事ができた。ステキ。
ロジアナのデコード機能はバスデコードができるほかはシリアルデコードがこっちにも適用できる程度なので、まだあまり高度ではないけれども十分使える。

3204B に比べるとシグナルジェネレータが 1MHz → 100kHz と落ちたり、サンプリングレートも 500MHz → 200MHz と一段下だけれども、これだけあれば十分かもしれないので、それより一つに纏まっている感のほうが嬉しいところ。

周りではあまり話題を聞かないけれども PicoScope そこそこ良いよ。


hatena bookmark

DSC00126

ニコニコ技術部タグで動画を投稿していた「わたあめP」という人が居ましてね。今は動画を全削除して引退されてしまったのだが。その方の動画の一つにゼリーにチルノの型を模様をつけるという動画があった。(跡地 http://www.nicovideo.jp/watch/sm4396593 )
それを見てから、ゼリー型を作るのが憧れになっていた。
ぜひとも緑色のミクさんゼリーを作ってペロペロしたいと思って、ゼリーの素を買い込んだり、シリコンでねんどろいどを型どりしてみたりしていたのだけれどもどうにもうまくいかない。

3DプリンターやCNCフライスを入手したときも、これでゼリー型を作るにはと考えたけれども食品衛生法的に問題ない方法が今一つわからなくてとん挫していた。
3Dプリンターの ABS などはそのものは大丈夫だけれども材料に毒性があって残留している可能性があるため、食器には使えない。とかね。
ABS で出力した後食品衛生法適合なウレタン塗料でコートするなどもやってみたけれども面倒なことこの上ないし、ウレタン被膜で細部がつぶれてしまうのであまりうれしくないという次第。

というわけで、ゼリー型は長年の憧れなのでした。
いうほど真面目に追っかけてはいなかったけれども。

ある時ふとポリアセタール(POM)の食品衛生法適合度を調べたらこれが適合素材だということがわかった。ただし成分からアセトアルデヒドが分解して流出する可能性があるので温度 85度未満であることが条件。
ぐつぐつ煮るような処理をしなければ大丈夫そう。チョコレート型ぐらいにはなるかな。
POM なら CNCフライスでサクサク削れるし扱いやすい、行けるねということでゼリー型への応用を試してみることにした。
Read the rest of this entry »


hatena bookmark

ZBrush というそれなりなお値段するツールを持っている人向け。

3Dプリンター用のモデルは閉空間を構成するソリッドモデルである必要がある。
ポリゴンモデラーにおいてはソリッドモデルとなるようにポリゴンメッシュを作ってそれで形状を構成していく感じの作業となる。

mesh01
ところが、ソリッド形状のモデルであってもそれが沢山あって密集しているところではスライシングの際にどこが内側でどこが外側かという計算をミスする事がある。
あまりにも近接に閉空間が隣接していると面がめり込んでいるのか離れているのかが計算誤差で判断に失敗してしまうらしい。
ということを、3Dプリンターエンジニアリングとしては知っている事でこれを回避するようにモデルを設計したりするのだけれども、流用のモデルであったりするとうまくも行かない。

よしだまき氏が 3D-COAT というボクセルモデリングが特徴の3Dモデリングツールを使ってそのようなパーツ集合モデルをワンスキンメッシュに変換する方法を紹介していた。
なるほど、といった感じである。

しかし私は 3D-COAT を所有しておらず ZBrush 派なため、ZBrush で同じ事ができないかと思って調べた結果が以下の手順となる。対象は ZBrush4R2 以降。

mesh02mesh03
ZBrush に Obj ファイル形式を経由してインポートしたところ。
平滑化などをしてみると、複数の閉空間メッシュのまま扱っていることがわかる。

これをワンスキンにするには ZBrush4R2 で導入された DynaMesh を利用する。
元々スカルプトモデラーとしての弱点だった、モデルを引き延ばした所はポリゴンメッシュが素となり密度の不均等が生じることでそこから細かい造形を続ける事が困難になる、という現象を克服するためのリメッシュ機能である。
これを用いると形状を維持したままワンスキンにしてくれる。

dynamesh
Geometry > Dynamesh のメニューから解像度を適当に設定して Dynamesh を実行する。

mesh04
これでワンスキンモデルとなり、3Dプリンターのスライサーで問題なく扱えるものになる。

解像度が荒いと細部がつぶれてしまうので、そこそこ高い解像度で Dynamesh して、Decimation Master で扱いやすい数までポリゴンを減らすのが綺麗で手早い。


hatena bookmark

3Dプリンター面白いよーこんなことができるよー、と色々作って見せている私だけれども、そもそもで立体出力に興味をもったのは「3DCG から立体出力することでキャラクターフィギュア作成ができるかもしれない」という大変わかりやすい目的からであった。
実際に自作のキャラクターを 3DCG に起こして立体出力サービスで出力してもらうことでオリジナルフィギュアを作成することができたし、それをみて「ここまでできるのか」と「こんなものか」という二面を学んだ。(関連記事)
dsc00307.jpg
それに飽き足りず、もっといろんなものを自宅でバンバン出力したくてその直後に Makerbot から CupcakeCNC(組み立てキット)を購入。大変だけれども楽しい 3Dプリンターライフを送り始めた。

さて、家庭用 3Dプリンターというと FDM(熱溶融積層造形法)であり、樹脂を溶かして1層ずつ形成していくものなので表面がでこぼこの段々になってしまう。

これをみて「フィギュアが出力できると思ったのに、これじゃ使い物にならないね」と言う人が多いが私はそうは思っていないし、それでも有効だと思って FDM式の出力機を使い続けている。
それというのも、3Dプリンターが出力するものは完成品ではないと最初から思っているからだろう。


キャラクターフィギュアの作成手順について私が認識しているPCと3Dプリンターが置き換える部位についての図である。
むしろスクラッチで自作キャラクターフィギュアを作る手順を知っているからこそ、コンピューター上の 3DCG/CAD と FDM式出力機が何を置き換えるのかが見えているといったところだろうか。
完成品がぽんと出てくると思っているとがっかりするところだけれども、手で作ると熟練を要す難しい形状をコンピューターのアシストでだいたいの形にできるということで途中の部品製作をデジタル化できると考えるとこれでも十分ありがたい存在ではないだろうか。
まあそういう意味で工作機械というより「ラピッドプロトタイピング装置」という方がしっくりくるのかもしれない。

さて、キャラクターフィギュア作成にとって FDM式出力機から出力されたものが形成中の仕上げ一歩手前な造形モデルとしてあとは通常手順で表面処理を行って仕上げていくことで自作のフィギュアが完成する。
しかし、その「フィギュアと同じ加工をする」といって通じる人であれば良いのだけれども、そうではなくどうしたら良いのだろうと迷っている人も多いらしい事がわかってきた。
アクリルパテとポリパテとエポキシパテと光硬化パテの違いと使いどころがわかり、場面に応じて #180 から #1000 のヤスリでどれを使うべきかがパッとイメージできる人ならば問題はないところだろう。しかし、そういった経験が無い人には何を使って仕上げていくのかという指標が必要な様だ。

私も造形作業については中級よりも初心者に近い位置にいるけれどもそれでも両方をみている立場として FDM式出力後の表面処理について実験してみた結果を記すことにする。
もっと良い手法があるかもしれないけれども、ひとまずこれがとっかかりになれば幸いである。

■ 基本は溶きパテ(サーフェイサー)

Read the rest of this entry »


hatena bookmark


袋止めクリップというジャンルの生活用品がある。
食品やお菓子の袋をパチッと挟んで乾燥を防ごうという小物だ。

これがなかなかに重宝するので、スーパーや100円ショップで見かけると良く購入している。
そして良く無くす。

しかし、こういう小物こそ家庭用3Dプリンターの出番なのではないだろうか。
実際 Thingivers を Bag Clip で検索してみるといくつかの作品がヒットする。
これをダウンロードして好きなだけ出力すれば目的は達せられるのだけれども、やはりここは自分で設計してみよう。

Read the rest of this entry »


hatena bookmark

USBホスト付きの PIC32MX と Bluetooth ドングルで無線シリアル通信したい、というのが前回吐露した野望。
しかし、いくら前人の手によるソースコードがあると言っても PIC32MX での動作実績はまだ無いみたい。
そこで、ひとまず PIC24F で動作させてみて勘所や注意点をつかみまくることにした。

テストボードとして使うのは Android ADK Sterter kit の基板。
PIC24FJ256GB110 が載っていて、USBホストコネクタが付いていて、LEDやスイッチ、それにI/Oの引き出しとお膳立てが全てそろっている理想的なボード。Bluetoothドングルテストに持ってこいな完成基板、秋月電子通商で 4000円で買えるよ。

ソースコードは github の hrdakinori / PIC24F_btstack から入手できる。
上記ページにあるように Microchip の USB スタックソースコードと btstack はそれぞれ配布元からダウンロードして、手作業で必要なソースをツリーに用意する。
で、プロジェクトは MPLAB8 のものだけれども今回は MPLABX にコンバートして使ってみる。コンパイラは XC16 Free edition。
Read the rest of this entry »


hatena bookmark

ちょいと前に秋月電子通商に入荷して話題となっていた PIC32MX の DIP パッケージ版。
PIC32 ということで 32bit MIPS アーキテクチャのマイコンなのだけれども、アマチュアにうれしい DIPパッケージということと 200円前後という価格でホビースト絶賛。みんな DIP パッケージ好きね。
今回はそれを入手した手始めとして、開発環境をインストールしつつ伝統の「LEDチカチカ」させてみた。


秋月に入荷した PIC32MX にもいくつかグレードがあるのだけれども、私の目的に合致したのが上位グレードのやつだったので今回は PIC32MX220 をチョイス。
といってもこれも 220円。お安い。

この後、NXP の Cortex0M ARM アーキテクチャ DIP パッケージマイコンである LPC1114FN28 が入荷して、これまた 190円 とお安く、ARM であることも相まって盛り上がっている次第。
でも個人的に魅力を感じるのは PIC32MX220 の方だったのでこれでおK。
理由は後述。

Read the rest of this entry »


hatena bookmark


今回のLED時計の基板は改良しつつも 4枚つくることとなった。セグメント側は2枚。
作り直しの度に細かく改善してよりよくなっていったのだけれども、作り直しをせざるを得なかった本当の理由は実装後の PSoC3 が壊れてしまったからであった。
そういった恥ずかしい失敗談のほうが知識として役に立つので、今回は高い勉強代としてその経緯を残しておくことにした。

結論としては、PSoC3/5 の足に 10mA 以上の電流を流し込んじゃいかんよということで。

PSoC3/5 は動作電圧が 1.8V – 5.0V と幅広く、PSoC5 においては 5V で駆動し 5V IO を駆動できる CortexM3 チップとして貴重な存在でもある。
その内部コアは、コア内の LDO で生成した 1.8V で動作しているらしい(Vccdはそのレギュレータ用にコンデンサを付けるピン)。なので入出力で 5V と言っても IO 用電圧にそれを印加したときのものとなる。
とても便利なのだけれども、電源ピンが多く配線するのが面倒という欠点もあったりはする。

そんな風に柔軟な IO ピンとなっているからかずいぶんともろい作りになっているっぽい。


PSoC Creator でのピン設定。
出力は 4mA のみ、で入力は 8mA 上限と 25mA 上限が選択できる。
これ、どのピンでも選べるかというとそうでなく 8mA は通常の GPIO で 25mA は SpecialIO のみで利用できる設定だったりする。
SpecialIO とは何かというと、外部の機器と接続する様に5Vちょいまで耐圧のある特殊ピンである。主に P12,P15 といったあたり。シリアル通信とかはここを使えというようになっていますな。むろん通常の GPIO でも通信用に割り当てることはできるけれども、sink 8mA の定格内でということになる。

そんな基礎知識の後で、今回失敗した原因を解説。
最初の 1枚は Miniprog3 の接続を間違えて逆にしてしまったというもの。
Miniprog3 からの電力供給を信号ピンに流し込んで動かなくなりました、(´・ω・`)ショボン
1枚目は JTAG で、2枚目以降は SWD 5ピン。
2枚目は SWD 5ピンに変えて設計したもの、実装時にハンダブリッジしているところがあって死亡(´・ω・`)
Miniprog3 からの電力供給は危険、避けた方が良いかもしれない。

3枚目は無事動作し、これで動画も撮ったもの。
完成してやったーと喜んだものの、2時間くらいで突然動作しなくなった。

以前作った電流計付き電源ステーションで動作させていたのでなんかやったらめったら電流が流れている事に気がついた。
7セグに使った LED が高輝度型で typical 20mA で最大 30mA とか流れてる。これが sink 8mA で受け止められなくて IO が破損してしまったらしい(´・ω・`)
かといって制限抵抗で 8mA にしてしまうと暗くなってしまうので、GND 側もトランジスタスイッチを付けてマイコンに流れ込まないようにすることにした。
今のところ上手く動いているみたい。

PSoC1 は 5Vデバイスだったし、シンク電流も 25mA くらいだったので、うっかり配線ミスしても壊れることは少なく、ずいぶん乱暴に扱ったモノだけれども PSoC3/5 ではそうはいかないというお話。
まあ、考えてみれば当たり前の事なのだけれども、実際に失敗して高い授業料(PSoC3 はまだ1個1200円くらいする)を払うことで覚え込みました(´・ω・`)


hatena bookmark


前回3DプリンターとCNCフライスを生かした自作の7セグメントLED作成の方法を紹介した。
せっかくできた7セグメントLEDもそれ単体ではあまりうれしくない。より魅力的なプロダクツにするために、それをつかってLED時計をつくることにした。


それにあたって7セグメントモジュールの増産(4個)と真ん中のコロン部分を追加作成する必要がある。
コロンについてはおまけということで特に設計図無し。

Read the rest of this entry »


hatena bookmark

CNCフライスや3Dプリンターといった工作機械があると、ちょっと複雑なモノでも自宅で製造できるようになる。だからといって精度が高いわけでもないので、そんなにすごいモノができるかというとそんなでもない。
この可能性や面白さをどうやって表現しようと悩み、すでに買えるパーツが自作できるというのはどうだろうと考えてみた。
工業製品としてのパーツは買った方が安いし、実際電子工作のパーツなんかは買うしかないわけだけれども、実際に自分で作れるパーツという範囲が工作機械によって広がったのかもしれない。後追いでも車輪の再生産でも、なんでもいいから自分で作ることができるメリットというのを味わってみたい。

そんなこんなで、今回は「7セグメントLED」を作ってみることにした。

関連動画。

Youtube はこちら
Read the rest of this entry »