Blog2Viewer

以前、Movable Typeで運用していたブログの内容を表示させるために作成したページです。
謹賀新年 2012
新年明けましておめでとうございます。

元旦はGaoで無料配信中のアニメ・ちはやふる1話~7話を見たら勢いがついて210円/話で8話~12話まで見てしまいました。ちはやふるは、やっぱり面白いです。感心してしまいます。

今年の抱負を書いておきます。

工作系としては、MTMに再度出展したいです。前回よりも多くの来場者に受けるもの、人目を引くものを作りたいです。さぁどうなるでしょう。マイクロマウスも自分なりのやり方、スピード面で勝負になるとは思えないので、別の面で賢いマウスを作りたいです。

このBlogも改良して、もっと見やすくしていきたいと思っています。

あと、本業とか、もうひとつのブログとかマラソンとかも頑張りたいと今は思っているということを記録を兼ねて書いておきます。

本年もよろしくお願い致します。
STM32F4-DiscoveryかSTBeeか?
次のネタの実験に使うボードをSTM32F4-DiscoveryにするかSTBeeにするかで悩む。両方とも、まだ全然使っていないので、開発環境というかプログラムの書き込み方がわからない。


少し調べて、STM32F4-DiscoveryにはST-LinkというSTmicro純正のJTAGデバッガが内蔵されていること、STBeeはDFUかJTAGでプログラムできることが判明。ST-LinkをopenOCDで使えれば問題ないのだがと調べたけれど、使えそうな雰囲気が無い。STmicroのサイトで提供されているST-LINK Uitilityをダウンロードして試すと、GUIとCLIの両方が準備されていて結構よさそうだ。

STBeeは小さくてよいが,STM32F-Discoveryの方が安いし、CPUが強力でメモリーも多い。STM32F4-Discoveryは、基板が大きめで、取付穴も無いのが不満。うーむ、どちらを使おうか。

それから、こたつコントローラは、年末、ケースに納めて、AC100Vで動作するところまで出来た。でも、ケースには、まだ蓋は無い。あと、ACインレット用の穴が緩くて、ケーブルを抜き差しするとインレットそのものも抜けてしまうので、後部パネルを作り直す予定。


電源装置の修理 兼 改造
[caption id="attachment_4288" align="alignright" width="300" caption="壊れたトランス(左)と改造後の電源装置(右)"][/caption]年末、実験用電源装置が壊れてしまった。基板を実験後、通電したままにしていたら、何かが接触したようで電流が流れすぎたらしい。何か匂いがしたのだが、久しぶりに通電した暖房機でもあるのかなとか思っていたら、電源装置のケースが暖かい。ヒューズは切れていた。

壊れたままだと不便なので、0.1Aのヒューズを入れてスイッチを入れるが電源が入らない。ヒューズを見ると切れている。ヒューズの値が小さすぎたのかもしれないと思い、1Aのヒューズを入れて再度電源を入れると、ボンという音とともにヒューズが切れた。トランスがショートしてしまったらしい。

トランスを買い直すのも面倒。余っているスイッチング・レギューレータを探すと24V2Aのものがあった。サイズも良い感じなので、これに置き換えることにした。

[caption id="attachment_4289" align="alignright" width="300" caption="改造後の電源装置の中身"][/caption]ケースを採寸し、鍋CADで図面を作り、スイッチングレギュレータと回路を固定するアルミ板の型紙を作成。穴あけ、切り出し、折り曲げを行いアルミ板完成。組み立て後、配線し完成。恐る恐る電源を入れるが問題なし。無事、電源装置の修理兼改造が完了した。

ちなみに,電源装置をケースに収めたのは1999年の事だった。安定化電源の回路はこのキットの前のバージョン(基板がユニバーサル基板ベースのもの)を使っている。回路は多分同じ。
STM32F4-Discovery試行中
STM32F4-Discoveryを使うべく施行中。こいつをサポートしている開発環境をダウンロードして使えばいいのだけれど、無料で手に入るのは機能や試用期間が限定されている奴しかなさそうだ。最終的には、gcc+makeで開発したいので、実験してみる。

これまで使っていたstm32f10xとバイナリーコンパチなのではないかと、LEDチカチカのコードを作ってST-Linkで書き込むが、まったく反応がない。リファレンスマニュアルで調べてみると、I/Oの番地がガラッと変わっている。なかなか面倒だ。 CMSISとかPeripheralsライブラリを使えということだろうか。


とりあえず、使うレジスタの番地だけ合わせて、コードを作り直し、再度書き込んでみるがやっぱり動かない。ST-LinkでCPUをリセット、STEP動作させながらPCの値を見ると、なんか書き込んだプログラムとぜんぜん違う動きをしている。チップのFlashRomには書き込めているようなのだが、別のプログラムが動いているようだ。動作モードが違うのか?
STM32F4xxいいかも
gcc+makeでSTM32F4-Discoveryへのプログラム書き込みができるようになった。書き込みが高速で気持いい。いろいろ調べてSTM32F4xxが気に入ってきた。メモリーは多い(192KByte)だしGPIOのレジスタもすっきりした。

写真は、いろいろ実験するべくSTM32F4-Discoveryボードを秋月B基板に取り付けたところ。
こたつコントローラのシャーシ完成
懸案のコタツ・コントローラの蓋を作成し、ついでに背面のパネルを作りなおした。

これで、こたつコントローラを無事ケースに収めることができた。と言っても、現状は、まだ学習リモコンACスイッチに過ぎない。なんか、今シーズンはコタツはださずに終わりそうだが、センサーモジュールを作って、いろんなところの温度を表示できるようにしたい...って、全然こたつコントローラじゃないじゃん。

以下、製作の説明。


背面のパネルをCNCで削り直し、蓋用のアクリル板をレーザ加工機で切り出したところ。蓋のアクリル板は大きくて私のCNCでは加工できず、久しぶりに大学の工房のレーザ加工機を使いに行くと、ちょうど整備されたところで気持ちよく切断できた。背面パネルもこっちで切り出せば良かった。


背面パネルは、スナップイン式のACインレットが抜けてしまうという問題があった。どうも、1.5mm厚までのパネルでないと固定できないようだ。アクリル板は2mm厚なのでネジ止め式に変更。ついでにヒューズ穴のサイズ間違いも修正した。

このネジ止め式のACインレット。地元のパーツ屋で買ったら350円(税別)だった。まぁ、そんなに売れるものでもないから文句も言えないが、マルツだと128円。2,3個買えば送料込みでも安いかも。まぁ、こうゆうものは、ある程度の数、在庫を持っておくべきだよね。


蓋のアクリル板はサカイマシンツールのアクリルベンディングマシンで曲げた。リンク先の物より古いタイプだが、ほぼ同じもの。仕事用に以前購入したもの。アクリサンデーのヒーターキットよりも全然良い。なかなか個人で買える値段では無いが、レーザ加工機があるところならば、一緒に揃えておくと作れるものが断然広がって良いのではなかろうか。加熱した範囲の丁度中央で曲がるので、曲げる場所は結構正確に狙える。綺麗に曲がった。


背面の城辺と蓋の間にもフレームを入れてネジで固定しているので、ACインレットにケーブルを差し込む時、パネルがたわむことが無く安心。アクリルをフレームに固定しているネジは、4年前に浅井製作所に作ってもらったM3x4mmの超低頭六角穴付きボルト。1000本で1万円弱ぐらいだが、目立たないというのが結構便利で、いろいろ使ってしまい、もう残り少ない。


大変きれいにケースを作ることができた。もうアクリル板とMicroRAXがあれば、どんなケースでもスイスイ作れそうである。
お勧めのテスター
私の、お勧めのテスターを紹介します。テスターと言えば、電子工作の必需品です。みなさん幾つか持っていると思います。ポケットテスターを持っている方も多いのではないでしょうか。私もいくつか買って使っていました。

機能に不足は感じないのですが、テスターリードの収納が面倒です。どの機種も、きれいに折りたためばテスター内部にテスターリードを収納できますが、きれいに折りたたむのが面倒なのです。

ある時、秋月電子への注文のついでに、ちょっと大きめの1000円のテスターを買って見ました。

ちょっと大きめで、ポケットテスターに比べれば重さもあるので、測っている時にテスターが安定しています。使い終わったらテスターリードを本体にグルグル巻きにして置いておくことができます。ポケットテスターでは本体が軽くてこんなことできません。

同じぐらいのサイズの1万円ぐらいするテスターも持ってます。それは電池の持ちが悪く、たまに使おうとすると電池切れのことが多いのですが、この安い奴は、もう何年か使ってますが電池を交換した覚えがありません。

不満な点は、電源SWがレンジ切り替えのロータリースイッチと一体で、使うたびにロータリースイッチを半周ほと回さなければいけなかったり、自動電源OFFの機能が無いことぐらいですが、何しろ1000円なので許せます。

ちなみに900円の奴には導通ブザーが無いようなので、お勧めしません。テスターで一番使う機能は導通ブザーです。

というわけで、お気に入りのテスターは、いつもオシロの上で待機しています。
EAGLE make-symbol-device-package-bsdl.ulpの使い方
[caption id="attachment_4324" align="alignright" width="300" caption="make-symbol-device-package-bsdl.ulp起動時の画面"][/caption]構想中の回路を入力するついでに、EAGLE Ver.6を試しに使ってみようと思った。まずはライブラリに部品を登録しなければならない。64pinのTQFPなのでパッドの位置を手入力するのは無理。いつもはperlの自作スクリプトで scrファイルを吐かせて作成しているが、Ver.6になったのでEAGLE付属のulpに使えるツールがあるかもしれないと探してみると make-symbol-device-package-bsdl というのが、それっぽい。出現するダイアログを見ると便利そうだ。

でも使い方がわからないので、ソース覗き見+試行錯誤で何とか調べてみたので報告する。

プログラムを一通り読もうかと思ったが3800行もあるので諦めて、なかに書いてあるHelpの文字列などから使い方を推察した。変更履歴によるとVer 4.13のころからあったらしい。 そもそもICのBSDLファイル(JTAG用のピン配列定義ファイル)を読み込んで、そのICのライブラリ(パッド情報、回路図のシンボル)を作成するプログラムらしいが、BSDLでなく、いろんなテキストファイルを読み込んで処理できるらしい。 

[caption id="attachment_4326" align="alignright" width="282" caption="信号名・端子・属性を書いたファイル"][/caption]秋月電子の新製品にあった超高精度SPIバスRTC(リアルタイムクロック)DS3234Sのライブラリを作ってみる。データシートを見ながら、端子の信号名とピン番号と属性を書いたテキストファイルを作成した。項目はTABで区切るので、Excelで作成しTAB区切りのテキストファイルで保存しても使える。属性は IN/OUT/PWR/NCなどがかける。これは、EAGLEでシンボルを作る際のピン属性と同じ。面倒だったら全てPAS(Passive,受動素子)にしておけば、DRCには引っかからないはず。


[caption id="attachment_4328" align="alignright" width="300" caption="ファイル読み込み、Parse後の状態"][/caption]ファイルができたら、EAGLEで適当なLIBファイルを編集し、メニューのFile/Run、あるいはULPアイコンで make-symbol-device-package-bsdl.ulpを実行する。するとダイアログが現れるので、画面上部の「Browse」ボタンで作成したテキストファイルを選択し、画面中央の「Parse -->>」ボタンをクリックすると、右のような状態になる。


[caption id="attachment_4329" align="alignright" width="300" caption="Packageタブでパッケージの情報を入力"][/caption]次にPackageタブをクリックし、Package PAD Layoutの「Dual 3」をクリックし、データシートを見て書く部分の寸法を入力し、PAC Nameにパッケージの名前、何でもイイのだがSmall Outlineパッケージの20ピンなので「SO-20」と入力、最後に画面下の「Accept parameter」のチェックボックスをチェックするとパッケージが作られるみたいだ。(若干あいまい)


[caption id="attachment_4332" align="alignright" width="300" caption="最後に「Make」タブでライブラリを生成"][/caption]「Make」タブをクリックし、「Symbol」と「Device」のチェックボックスをクリックすればライブラリが出来上がるので、最後に「Ok」を押して終了する。(「Cancel」を押せば、部品を生成せずにプログラムを終了できそうだが未確認)


[caption id="attachment_4333" align="alignright" width="300" caption="ULPを抜けると生成されたデバイスの編集状態"][/caption]プログラムを抜けるとライブラリ・エディタに生成したデバイスを編集している状態になっているので、不満な点は直していきましょう。


[caption id="attachment_4334" align="alignright" width="300" caption="回路図に配置してみる"][/caption]ちなみに信号名に「NC@14」のように@+数字が付いているものがあるが、これは同じ信号名が複数のピンに付けることができないというEAGLEのライブラリの制限を回避するための機能で、@以下の部分は回路図では表示されない。右の画面が、試しに作成した部品を回路図に配置してみたところ。シンボルの横幅が長すぎるので、シンボルエディタで修正してある。


[caption id="attachment_4335" align="alignright" width="300" caption="生成されたパターン"][/caption]念のため、生成されたパタンをエディタで開いてみたのが右の画面。それらしくできているが、パッドの上に線が描かれているのが気になる。 p板とかだと、パッド上にシルクデータがあってもマスクしてくれるが、Olimexとかだと気にせずシルクを印刷してくるような気がする。PCBCartがどっちだったか思い出せない。レイヤーはtDocuなので、tDocuをシルクとして出力しないか、寸法を調整するなどしてパッドにシルクがかからないように調整するのがいいだろう。(tDocuって、シルクに出力されるんだっけ?)


以上で説明を終わる。

EAGLEには、沢山ulpがついてくるが、使い方がわからないので、あまり使えていない。このulpが便利だよというような情報があれば、是非教えて頂きたい。
DVD: ソーシャルネットワーク
TUTAYAでソーシャルネットワークのDVDを借りてみた。これを見ればfacebookのことがもっと分かるんじゃないかという不純な動機だったのだが、非常に面白かった。まず主人公のマーク・ザッカーバークの行動がよく描かれているというか、大変それっぽくて納得した。次にコンピュータ関連のセリフがちゃんとしているのに驚いたし、大学の授業の内容にも感心したし、ビル・ゲイツの講演シーンも凄いと思った。 実はDVDではなくBlueRayを借りた。PS3だからBlueRayが見れる。でも違いはわからなかった。