自分自身のための ものづくり / 自分自身のためのものづくりメモ

突っ込みなどがありましたら掲示板にお願いします。

* センサレスDCモータにセンサを付けて回す

#電子工作 #途中経過


 HDDに用いられるセンサレスのDCブラシレスモータは、部品として取りだしてもそれを回すのはなかなか大変である。
…が、センサを付けてしまえば、複雑な位置検知回路は不要である。

 というわけで、
・反射型フォトセンサ
・通電パターンを印刷した円盤
・トランジスタ
を組み合わせ、HDD用のセンサレスDCモータを回してみた。


 HDDのモータは身近にあるモータの中では群を抜いて高精度な物なので、これを単体でいじれるとメカトロ野郎(or乙女)にとって面白いおもちゃになるだろう。


参考文献
トランジスタ技術 2000年2月号「特集 実験で学ぶモータ制御回路の設計」
ソリトン 2006年8月 モータの基礎と実用制御回路設計 モータの動作原理と特性
http://www.japanservo.jp/products/pdf/soliton34.pdf
日本サーボ株式会社

(ReadMore...)

* 公認spammerに埋め尽くされてるヤフオク

#ヤフオク
 「ストア」は何点出品しようが(制限内なら)手数料がかからないから、元を取ろうとうじゃうじゃ出品していて激しく邪魔だ。

http://baku.homeunix.net/program/yah2/yah.rb?search=&extract_spam=yes&extract_spam_scan_noimg=yes&url=http%3A%2F%2Flist.auctions.yahoo.co.jp%2Fjp%2F2084039542-category-leaf.html%3Fmode%3D2%26s1%3Dend
オークション / コンピュータ / パーツ / ケーブル、コネクタ / その他
OriginalPage : http://list.auctions.yahoo.co.jp/jp/2084039542-category-leaf.html?mode=2&s1=end

1 / 80 ( 1993 )
(中略)
30 : netshop_one
32 : nature_net_shop
36 : komugi18
80 : m_aica
85 : tokyo_wave777ac
139 : bitcafeosaka
189 : enzandenki
218 : hobbesshop
234 : different_2005jp

 以上で、計1043点。カテゴリの全出品の5割を占めている。

(YAHのバグでページをまたぐ品を計上しているため、少し誤差があるが、まぁ、誤差の範囲)

* スクロール専用USB接続「ホイール」

#電子工作 #途中経過
 故障した2.5インチHDDを部品として、USB接続マウスの回路を流用し、スクロール専用のUSB接続「ホイール」を作成した。
 ぐるぐると回してスクロールさせる操作感はとても気持ちいいのだが、使いどころは限られる。Picasaとの相性は抜群。特に、タイムライン表示をぐるぐる回すのはとても気持ちいい。


 スクロール専用なので、マウス(等)と併用する。

(ReadMore...)

* Eagleでロータリエンコーダ用パターンを描く

#電子工作 #Eagle
 光学式ロータリエンコーダ用のパターンを作るために、Eagle用scriptをやっつけで書いたrubyスクリプトで生成し、Eagleにて実行した。


(ReadMore...)

* DSC-UE4.3GのHDD換装

#PC #PC-98
 IDEのHDDをSCSIに変換するSDATを搭載のDSC-UE4.3G…の殻をヤフオク経由で入手した。早速、手持ちの6.4GBのHDDを入れたら無事認識された。

 しかし、他のHDDに変えると認識しなかった。
 手持ちのHDDで試した結果は以下の通り。
○Quantum Fireball CR 6.4G
×SAMSUNG SV0844A
×DK-238A-43
×MK2103MAV

 情報を求めてWebを彷徨うと
DSC-UE3.2Gを改造する
http://www11.cds.ne.jp/~youkan/y2k700/DSC-UE32.html
に、以下の記述があった。
ATAコマンドのIDENTIFY DEVICEを投げているとおぼしきところから追っていくと、怪しい部分が2つ見つかりました。
・Multiword DMA Capability を見て Mode 2 supported でなければエラーとしている。ここで該当ビットを見るのではなく即値の 0x04 と比較しているが、ATAPI-6のスペックを読むと「Mode 2 supported なら Mode1,0 のビットも立ててね」と書いてあるような気がする。0x07を返すHDDだとまずいっぽい。
・HDDから取得した総セクタ数をあらかじめ用意したテーブルのデータと順次比較し、「総セクタ数以下で一番近い容量のエントリ」を選択している。このとき実際の総セクタ数と決めうちで持っているセクタ数の差が0x100000(≒537MB)以上あるとエラーになる。つまり、このファームウェアはあらかじめ決められた数パターンの容量(9.1G/8.3G/6.4G/4.3G/3.2G/2.1G/1.2G + 0〜0.5G)しかサポートしていないのであった。これが20Gでも4Gでもダメだった原因っぽい。

 8.4Gのも4.3Gのも2.1Gのもダメだったのは、最初の条件に当てはまったっぽい。
 Interface 2000年7月号の「ATA(IDE)/ATAPIの徹底活用研究」を見てみたところ、ビット0,1,2が「マルチワードDMAモード0をサポートする」「(ryモード1又はそれ以下をサポートする」「(ryモード2または(ry」だそうだ。

#同じ悩みの人用の検索ホイホイ:DSC-UE4.3G, DSC-UE4.3G, DSC-UE8.3G,

* serial keys

#電子工作 #途中経過 #メモ
 お手軽にWindowsマシン(等)にキーボードのふりをするデバイスを繋ぐことができる「シリアルキー」に関するメモ。
 マウスカーソルの絶対座標移動とかもできて、色々使いでがありそう。
(近頃はレガシーデバイスが絶滅危惧種で、あまりお手軽でもないかも)

テクニカルライター後田 敏の部屋 PICマイコンーシリアルキーズ
http://goda.blog3.fc2.com/blog-entry-84.html
 十数回にわたるシリーズ。日本語キーボード設定での不具合などに関して詳しく書かれていたりして、かなり参考になる。

テクニカルライター後田_敏の部屋_(2)シリアルキーズ
仕様まとめ

シリアルキーによる補助装置のプログラミング
http://support.microsoft.com/default.aspx?scid=kb;ja;260727
 送信する文字列の表が見やすい。

site:www.microsoft.com serial-keys - Google 検索
http://www.google.com/search?hl=ja&lr=lang_ja&q=+site:www.microsoft.com+serial-keys
 各種Windowsでの設定方法


GIDEIの概要
http://www5.wind.ne.jp/ja1syk/uni_design/gidei-j1.htm
 マウスのコマンドなども規定されている。
 WindowsXPでも有効らしい。

日本におけるシリアルキーの経緯
http://www5.wind.ne.jp/ja1syk/serialkeys.htm
 Windows日本語版におけるシリアルキーの冷遇されっぷりが切々と記されている。


#「シリアルキーボード」とか「serial keyboard」とかで検索してもプロトコルの情報が引っかからなくて悩んでたのだけど、「シリアルキー」「serial keys」だったのか。

* PS2版スターブレード用連射装置

#電子工作 #途中経過 #シンクロ連射 #PIC



  • 部品は、ほぼPIC12F675のワンチップ
  • PS用コントローラを利用する
  • 1/60秒ごとに、トリガA,Bを交互に叩く。
  • 出力をLに固定し、ポートの入出力方向を切り替えて、LとHi-Zを出力
  • 1/60秒はソフトウェアにててきとーにカウント
(ReadMore...)

* 漢字とサブピクセルレンダリング

#途中経過 #実験 #サブピクセル
 漢字は横線が多いから、サブピクセルが縦に並んでいた方がサブピクセルレンダリングが効果的だよね、という話。
RGB縦並び RGB横並び
撮影機器の配置がわりと適当だったので横並びの方が少々ピンぼけだけど、それを差し引いても、差は歴然。
(ReadMore...)

* Windows+cygwinでMMC(とか)をダンプする


参考:
Life with Cygwin 3
http://www.okisoft.co.jp/esc/cygwin-3.html#3.5


$ cat /proc/partitions 
major minor #blocks name 
(略) 
8 96 7840 sdg 
8 97 7792 sdg1 

$ cat /dev/sdg > mmc8m.img 

$ dump < mmc8m.img | head -16 
00000000 fa33 c08e d0bc 007c 8bf4 5007 501f fbfc z3@.P<.|.tP.P.{| 
(略) 
00000080 55aa 75c7 8bf5 ea00 7c00 0049 6e76 616c U*uG.uj.|..Inval 
00000090 6964 2070 6172 7469 7469 6f6e 2074 6162 id partition tab 
000000a0 6c65 0045 7272 6f72 206c 6f61 6469 6e67 le.Error loading 
000000b0 206f 7065 7261 7469 6e67 2073 7973 7465 operating syste 
000000c0 6d00 4d69 7373 696e 6720 6f70 6572 6174 m.Missing operat 
000000d0 696e 6720 7379 7374 656d 0000 0000 0000 ing system...... 
000000e0 0000 0000 0000 0000 0000 0000 0000 0000 ................ 

#電子工作 #MMC

* SG-1000系とMarkIII系の色合いの違い

 SEGA MarkIIIやマスターシステムで「全機種対応ソフト」を動かすことはできるが、色合いがだいぶ違う。

 手持ちのソフトでそれが顕著に表れるのは「どきどきペンギンランド」

SC-3000H MarkIII
(背面端子にメガドライブ用AVケーブルを接続し、MTV2000にてキャプチャした。)
 左がSC-3000Hで、右がSEGA MarkIII
 ゲーム制作者が意図した発色は、左のSC-3000Hでの映像のであることは明らかだろう。


 後期型のSG-1000IIのRGB信号は、MarkIIIよりは、SC-3000Hのコンポジットビデオ信号のと近い色である。
SG-1000IIのRGB
以前に改造したのをX-RGB2plus経由で表示したのをデジカメで撮影)

 改めて見ると、RGBでの映像はTMS9918Aの色とはけっこうずれているな。MarkIIIほどは違わないけど、どちらかというとMarkIIIに近いかなぁ?


 MarkIII用ソフトはちゃんとした色が出るので、手持ちのMarkIIIの調子が悪いわけではないはず。
RTYPEタイトル RTYPEゲーム中

参考:
TMS9918Aに針路をとれ
http://www.proc.org.tohoku.ac.jp/befis/halloffame/msx_col/

#RGB #SEGA

* レトロゲーム的グラフィック

…といっても、ファミコンどころではなく、インベーダーより前の話。


現状のスペック
 横56ドット、24ライン
 各ライン毎に1バイト割いて、前景色・背景色を8階調で指定できる
(手持ちのPIC16F648Aだと、VRAM形式ではこれが限界かな…?)

 ちょっと灰色を表示できるだけで、白黒のみに比べて格段に表現力が上がると感じた。
 灰色の直線は「床」とか「壁」に見立てることができる。各ライン毎に色を指定できるので、パレットアニメーションでスペースハリアー風の地面表現で疑似3Dものもいけるかも。
…とか、色々妄想できる。

#PIC #電子工作 #途中経過

* PIC + R-2R D/A でビデオ出力

 1kHzの正弦波とかを出していても楽しくないので、ビデオ信号を出してみた。

(ReadMore...)

* てきとーな、DDSっぽい波形発生器

 PICとR-2Rラダー回路でDDSっぽいのを組んでみた。

(ReadMore...)

* 画面に十字線を引く

 基板の穴開け補助に必要だったので、やっつけで製作。HSP3用。

 スーパーインポーズできるMSXとかよりも、ビデオキャプチャカード搭載のWindowsマシンの方が多いだろう。カメラを斜めに配置することによる縦横比のゆがみを、ウィンドウをリサイズすることで簡単に補正できるのが魅力。

 カーソルキーで位置を移動。Enterを押しながらだと高速移動。
 作業に使うには、USB接続のテンキーを繋ぐと便利。
(ReadMore...)

* mixi外からmixiへのアクセスを防ぐ

Proxomitorn用フィルタ
[Patterns]
Name = "Block mixi form not mixi (IP)"
Active = TRUE
URL = "(^mixi.jp)"
Limit = 512
Match = "59.106.41."

Name = "Block mixi form not mixi"
Active = TRUE
URL = "(^mixi.jp)"
Limit = 512
Match = "mixi.jp"
Replace = "mixotron.jp"
mixi.jp以外のサイトではmixi.jpという文字列を片っ端から書き換えてしまうという力業。
※単純に文字列の置換を行うだけなので、Javascriptで難読化されたりすると通用しない。
#悪用のヒントを出すのはどうかとも思うが、どーせ悪用するような人はそれぐらい思いつくだろう。
(ReadMore...)