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

* 電子部品Web通販比較 (2010初頭)

#電子工作 #部品調達
名称送料他手数料送料無料閾値決済方法補足
RSオンライン460円-8000円クレカ・銀行振込・代引(*)*:代引手数料無料
チップワンストップ450円-5000円クレカ・銀行振込・代引(*)・コンビニ決済*:代引手数料無料
Digi-Key2000円-7500円クレカ・銀行振込-
秋月電子通商500円300円(*)代引・銀行振込・クレカ(**)*:代引手数料 **:1万円以上購入
千石電商420円-10000円代引(現金)(*)・佐川e-コレクト・銀行振込・コンビニ払い(前金)・Edy決済*手数料315円
共立エレショップ380円7500円クレカ・銀行振込(*)・郵便振替・代引*:JNB・りそな銀行
マルツパーツ館450円-5000円クレカ・銀行振込・代引(*)*代引手数料無料
若松通商504円(*)370円(**)クレカ・銀行振込・代引*:ゆうパック5kg以内 **:ゆうパック代引手数料

更新

http://www.sengoku.co.jp/info/shipping.html
>送料などの改定に関して (2010/04/19)
>■ 当社発送分の送料ほかを改定いたしました
 690〜1090円 → 全国一律420円

* XRGB-2plusのドットクロックをファミコンに合わせる

#RGB #ファミコン
 スーパーモードを有効にして、DTC_TYP を[USER]に、USR_DTCを1023に設定。

 SCAN は [SVGA](47kHz) に設定しておく。VGA(31kHz)では、スキャンライン毎に表示されるドットがずれる。また、SVGAモードの方がPPUの動作に伴う(?)「縦線」ノイズが目立ちにくい。
(というか、XRGB-2plusの31kHzモードでやたら縦線ノイズが目立つ。サンプリング周期/2以上の周波数のノイズが突き抜けているのか? 出力がVGAかSVGAかで変わるのが謎だ。出力が違っても入力のサンプリングは変わらないだろうに…。)

http://nesdev.parodius.com/2C02%20technical%20reference.TXT
+---------------+
|PPU base timing|
+---------------+
(中略)
  • Pixels are rendered at the same rate as the base PPU clock. In other
words, 1 clock cycle= 1 pixel.

  • 341 PPU cc's make up the time of a typical scanline (or 341/3 CPU cc's).
341*3 = 1023

* Bad Apple!! PV-FC (2) がファミコン実機で映像が乱れる。原因は黒より暗い黒

#ファミコン
※最新版では問題は修正済

発端

Bad Apple!! PVをファミコンで再現してみた。(その2)
http://www.nicovideo.jp/watch/sm9170895
に感動した。
 エミュレータでの再生では満足できず、実機で再生するためにMMC3搭載カセットのROMを剥いでEP-ROMを載せたカセットを作成した。


事象

 RF接続した赤白ファミコン(HVC-001)では映像が乱れる。RP2C03を載せたRGB出力AV仕様ファミコン+XRGB-2plusでは乱れない。

↑MTV-2000にRF接続し、キャプチャ

調査とわかった事

 後期型ファミコンの裏蓋を外し、オシロスコープでPPUの出力を眺めた。その結果、映像の黒部分に、バースト直後の黒レベルよりも低いレベルの信号が出ていた。

↑はAV仕様ファミコン(無改造)の映像出力

黒より暗い黒

http://nesdev.parodius.com/2C02%20technical%20reference.TXT
+-----------------------+
|Video signal generation|
+-----------------------+
(中略)
Luminance value 0, mixed with chrominance value 13 yield a "blacker than 
black" pixel color. This super black pixel has an output voltage level close 
to the vertical/horizontal syncronization pulses. Because of this, some 
video monitors will display warped/distorted screens for games which use 
this color for black (Game Genie is the best example of this). Essentially 
what is happening is the video monitor's horizontal timing is compromised by 
what it thinks are extra syncronization pulses in the scanline. This is not 
damaging to the monitors which are effected by it, but use of the super 
black color should be avoided, due to the graphical distortion it causes.

 パレットについての関連参考資料。
ファミコンの詳しい話
http://www.wizforest.com/OldGood/FamiCom/FamiMisc.html

 Bad Apple!! PV-FC では、黒として 'Luminance value 0, mixed with chrominance value 13' つまり 0x0D を使っているのだろう。(未確認。VirturalNESのパレットビューアでは、どのパレットを使っているかが数値では表示されない)
 作者の門真なむさんは実機で動かしているが、RP2C05-99を積んだツインファミコンで動かしたために、普通のファミコンで映像が乱れる(モニタにもよるだろう)ことに気づかなかったのかな。

追記

 問題が出る環境はかなり限られている模様。悪条件に相当弱い機器でなければ、はっきりした問題にはならないのかも。
 うちでは、MTV-2000にRF接続でノイズだらけになる。(MTV-2000はノンスタンダード信号に弱いので、blacker than black 以前の問題もあるかも)LGの安物VHSビデオデッキにチューナが死んだテレビデオ(普通のテレビ放送でも同期外れがたまに出るほど、同期周りが弱い)にて、同期外れが頻発。

* 携帯殺菌ライトでEPROMの消去

#電子工作


 タニタの携帯用殺菌ライト EC-966 を、ROMイレーサとして使っている。普通の殺菌灯よりも小型で、単4電池2本で動くので、便利で手軽。一度に1個しかイレースできないのが欠点。
 15分で消去が完了する。10分だと消えてないビットが残る。

 ボタンを押している間だけ照射なので、トグルスイッチを並列にして連続照射できるように改造した。
 タイマーをつければもっといいが、面倒なのでやってない。キッチンタイマーをセットして、手動で切っている。

 EC-966は現行商品ではないが、中古品や新古品はまだヤフオクなどで入手可能。

* NEO GEO / MVS 用メモリーカード (MV-IC) の 分解

#資料 #NEOGEO #分解

フタを剥がした


同様のタブの付いた電池があれば、電池交換できるだろう。が、試していない。
#分解したのは2006年頃だが、放置中。

Digi-Keyにタブ付CR2016の在庫あり。
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P222-ND
単価108円。最小数量1。

タブ付CR1616の在庫もあった。
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P273-ND
NEO GEO とは関係ないけど、メモ。ゲームボーイのソフトの電池交換に。


載っているのは、16Kbit(2KByte)のSRAM、他

高解像度画像


HP200LXにてフォーマット。容量は16Kと誤認されている。


カード自体が認識されれば、dd等でデータの待避・復帰ができるだろう。
ただし、他のDOSやWindowsやLinuxでの認識は未確認。

* シリアルマウス

PC mouse info
http://www.tkk.fi/Misc/Electronics/then/mytexts/mouse.html
更新:リンク変更

PIC K iT PS/2⇔シリアル マウスインターフェイス
http://members.jcom.home.ne.jp/irv/documents/sermouse/0511123_SirialMouse_manualB0.pdf
スクロールマウスのデータフォーマットの情報あり。その他にも色々参考になる。


 比較的簡単なハードウェアとソフトウェアでWindows機(等)にマウス扱いされる自作ハードを繋げるのは魅力だが、Windows2000, XPでは電源ON時にしか認識されない(?)等、微妙に面倒が多いのが難点。
 あと、近頃はシリアルポート搭載率が減少傾向。USB<->シリアル変換はシリアルマウスには対応していないのが多い。

#電子工作

* Vista環境にて、PL-2303を使用したUSB接続COMポートで、TEXCELLのRubyシリアル通信ライブラリを用いてデータを受信できない。その原因と対処法

#プログラミング #Ruby #シリアルポート

事象

 Windows Vista の環境にて、USB接続のCOMポート(シリアルポート)を介して繋いだ機器のデータを、TEXCELLのRubyシリアル通信ライブラリ wincom.rb にて全く受信できない。teratermでは受信できる。。
 同じ接続対象機器・同じプログラムでも、レガシーな COM1 に繋いだならば受信できる。
 同じ接続対象機器・同じUSB接続シリアルポート・同じプログラムで、WindowsXP 環境では受信できる。

原因

 Vista環境にて、USB接続シリアルポートでは、ReadFileを実行した際、「読み取ったバイト数」として常にゼロが帰ってくるため。
 ドライバのバグか?

対処

 ReadFileの「読み取ったバイト数」は使わず、ClearCommErrorを実行した際に得られた COMSTAT構造体 の「受信バッファにあるデータのバイト数」を使う。
 ReadFileでそのバイト数読むと指示しているのだから、問題ない…と思う。問題あったとしても、常に0バイトよりはマシだ。
    def receive
(中略)
#                rcvchar = @wcrecv.unpack("a#{irlen[0]}")[0]
                rcvchar = @wcrecv.unpack("a#{ilen}")[0]

補足

 試したUSB接続シリアルポートアダプタは、以下2点。
 UC-232Aのドライバは、uc232a_windows_vista.rar (Ver._v1.0 2007-7-10)を使用。
 URS232GFは、Vista標準ドライバで利用できるとの事だが、できなかった。「URS232GFは一部ロットにて使用できません。」とのこと。チップ製造元であるProlificのサイトから、PL2303_Prolific_DriverInstaller_v10518.zip (2009/7/23 v1.0.5.18 )をダウンロードし、インストール。
 上記2点、チップ自体は同じか。ならば、ドライバもほぼ同一なのだろう。

あとがき

 今までTEXCELLのwincom.rbをありがたく便利なブラックボックスとして使わせて頂いていたのだが、中身を見て、色々と面倒な Win32API を隠蔽してくれていた事を実感した。今回必要に迫られてベールの下を覗いたけど、Win32APIは直接触らずに済むならそうしたい代物だ。


関連ページ

TEXCELL Rubyシリアル通信ライブラリ
http://www.texcell.co.jp/ruby/wincom/rubywincom.html

hirax.net::wincom.rbのCOM10以上対応
http://www.hirax.net/diaryweb/2009/07/29.html

Serial Communications in Win32
http://msdn.microsoft.com/en-us/library/ms810467.aspx

Windows/Vista/USB-RS232C(シリアル) - Tomocha WikiPlus
Windows Vista で動く、USB-RS232C変換ケーブル情報
http://wiki.tomocha.net/Windows_Vista_USB-RS232C.html

* Windows環境にて、USB接続COMポートを、個体識別する

#メモ #プログラミング #シリアルポート #Ruby
 Windows環境(少なくともWindows XP)では、USB接続のRS-232C(正確にはEIA-574)アダプタのCOMポート番号は、差すUSBポートを変えるとコロコロ変わる。COM19になったりCOM6になったり…。とても困る。
 一方、USB接続のその手の機器は、デバイスマネージャ上で個体識別できる。ならば当然、自作プログラムでも個体識別し、COMポート番号を自動設定できる。
 WMIを介して情報を得る。Win32_SerialPortではUSB接続の情報が得られない(場合が多い?)ので、Win32_PnPEntity からCOMポートを抜き出すのが確実。

require 'win32ole'

def ports
    locator = WIN32OLE.new("WbemScripting.SWbemLocator")
    services = locator.ConnectServer(".","root/cimv2")
    ports = services.ExecQuery "Select * From Win32_SerialPort"
    ports.each do |port|
        p port.Caption
        p port.Description
        print "\n"
    end
end

def ports_pnp
    ps = []
    locator = WIN32OLE.new("WbemScripting.SWbemLocator")
    services = locator.ConnectServer(".","root/cimv2")
    ports = services.ExecQuery "Select * From Win32_PnPEntity"
    ports.each do |port|
        if /\(COM\d+\)$/ =~ port.Caption
            p port.Caption
            p port.Description
            p port.Manufacturer
            print "\n"
        end
    end
end
   


print "Select * From Win32_SerialPort\n"
ports

print "Select * From Win32_PnPEntity\n"
ports_pnp

ruby -Ks comports.rb

Select * From Win32_SerialPort
"通信ポート (COM1)"
"通信ポート"

"通信ポート (COM2)"
"通信ポート"

Select * From Win32_PnPEntity
"Prolific USB-to-Serial Comm Port (COM19)"
"Prolific USB-to-Serial Comm Port"
"Prolific"

"USB-to-Serial Comm. Port (COM6)"
"USB-to-Serial Comm. Port"
"Aten"

"通信ポート (COM1)"
"通信ポート"
"(標準ポート)"

"通信ポート (COM2)"
"通信ポート"
"(標準ポート)"


参考文献:

Kick4 BBS
USBシリアルのポート名を知る方法?
http://www.kick4.net/bbs/c-board.cgi?cmd=ntr;tree=4;id=

Win32_SerialPort Class (Windows)
http://msdn.microsoft.com/en-us/library/aa394413(VS.85).aspx
Win32_PnPDevice Class (Windows)
http://msdn.microsoft.com/en-us/library/aa394352(VS.85).aspx

* RandomNoteWiki記法 - TextFormat

* オムロンツーフォーサービス オンラインショップ、他

#電子工作 #部品調達

2008年3月29日追記

2009年8月1日、変化に合わせて訂正

 「オムロンツーフォーサービス株式会社」が「オムロンエフエーストア株式会社」に社名変更し、扱う品々がオムロン商品に特化された。
 これで、個人の電子回路工作には、ほぼ縁のないWebショップになってしまった。送料525円(送金手数料込み)は小物の買い物に魅力的だったんだけどなぁ。

 オムロンツーフォーサービスで扱っていた品は、チップワンストップで扱われるとのこと。<DEL>送料が1000円(注文金額が8000円未満の場合)なので、個人のちょっとした買い物には微妙に使いにくい。(まぁ、秋月---代引き手数料と合わせて800円---と同程度なのだけど)</DEL>
 チップワンストップは配送料が送金手数料込みで450円になったので、少量のパーツも割と手軽に注文できる。注文5000円以上で、配送料無料。
 Webサイトの検索結果が返ってくるのがかなり遅いのが不満。5秒は待たされる。RSオンラインなら1秒で表示されるのに。

<DEL>
 チップワンストップのWebサイトは、RSオンラインの激しく使いづらいWebサイトよりは、使いやすい。なんといっても、RSと違って、個々のパーツを別のウィンドウ|タブで開けるし。
RSのが不便すぎるだけだけど
</DEL>
 RSオンラインのWebサイトは、だいぶ前のリニューアルで、だいぶ使いやすくなった。以前はリンクがJavaScriptで何かと不便だったが、普通のリンクになって新しいタブで開いたりとか普通にできるようになった。


506 名前:774ワット発電中さん 投稿日:2007/02/04(日) 21:24:30 ID:rcOaP9bn
チップ抵抗は5%品は千石でチェック。1%品はオムロン・ツー・フォーでミニリールを買うようにしている。
digikeyも代引き使えればありがたいね。
_【代引き】_____電子部品通販のスレ_____【送料】_
http://science5.2ch.net/test/read.cgi/denki/1131720549/

OMRON | 通販・通信販売のオムロンツーフォーサービス オンラインショップ
http://www.omron24.co.jp/

 コンビニでの後払い(手数料はオムロン負担)ができたり、クレジットカードが使えたりと、個人での利用がしやすそうだ。
 また、計5000円以上で送料無料。

 精度1%のチップ抵抗を扱っているのはありがたい。千石とかじゃ扱ってないからなぁ。
 RGB用バッファアンプとかR-2Rラダーとかに使えば、金皮のリード品よりも大幅にコンパクトにできるだろう。

面実装抵抗器角形チップ抵抗器(精密級)【RK73H】
http://www.koaproducts.com/catalogue/rk73h.htm
2.0x1.2mmなので、手作業にはほどよい大きさ。

* press-n-peelとMDプリンタ

#プリント基板 #Press-n-Peel #途中経過
 マイクロドライプリンタでも、Press-n-Peelブルーを使える。

 ファインブラックでうまくいった。
 黒リボン1回では、うまくいかない? ラミネータでは熱が不足なのかも。
 ファインブラックは、CMYKでリボン4枚重ねで厚くなるのか、パターンの潰れが少々生じた。

MD-5500で印刷した



切り取った



貼り付けた



ラミネータを数回通した



水につけた



剥がした





切り取った



エッチングした


* MDプリンタとラミネータによる転写プリント基板の作成の試み

#途中経過 #プリント基板
 満足する結果はまだ得られていないが、なんとかなりそうな感触はある。




 ラミネータを使うと、アイロンより楽に安定した転写ができる。
 紙を使う場合、転写後に紙を剥がす際に転写パターンを痛めるのが難。

ALPS純正の「ハイグレードペーパー」は、耐水性が高いのが災いするのか、剥がれにくい。
・「KOKUYO カラーレーザー&カラーコピー用紙 光沢紙 A4」は、そこそこ剥がしやすかった。
・手元にあった適当なFAX用熱転写ロール紙は、薄くて平滑なのが幸いして、いい感じに転写できた。薄いので比較的剥がしやすい。
 以上はどれも、剥がすのに水につけて指で擦る必要がある。その際に、パターンが滲む。

 素直に、Press-n-Peelを使うのがいいかも。マイクロドライプリンタを使った例は、探した限りではWebで見つからなかったけど、いけそうな気がする。

 MDプリンタの必殺技の一つ「ページ合成」により、パターンを5回重ね塗りした。
(詳細設定にてチェックをつけると、その後は用紙が排出されない。再び詳細設定を開くと、チェックが自動的に外れ、排紙される。)
 5回重ねは多すぎたかも。剥がす際に擦ると、こすれて広がる。

参考:
【自作】 オリジナルプリント基板製作スレ 5層目
http://science6.2ch.net/test/read.cgi/denki/1220190927/
298 名前:774ワット発電中さん 投稿日:2009/01/09(金) 16:07:26 ID:3o2nXDNa
>>191です。
パターン書いたんで先日の改造ラミネーターでP-N-Pを試して見ました。
プリンターはCanonLBP3210、トナーは詰め替えのパチモノです。

ラミの温度は最高に設定。1,2回ではあきらかに一部しか張り付いていませんでしたが、
基板が熱くなるまで5回ほど通した所、見た目にもぺったりと完全に張り付きました。
しかもアイロンでしばしば問題となるパターンの広がり(押し潰れ)もまったくありません。
そして、現れた転写パターンはサンハヤトの感光膜もかくやと思われる
クッキリぺったりした艶のある大変美しいものでした。

一部パターンに欠損が有りますが、すべて埃が挟まった事が原因です。
この点に気を付ければパーフェクト…と思ったらパターンを裏焼きしている事に今気づいたorz
191 名前:774ワット発電中さん 投稿日:2008/12/23(火) 01:55:36 ID:kZ8NPRV5
>>180です。いいだしっぺなので近所のカインズホームでラミネーターを買ってきました。
やはりそのままではt=1.6mmは通りませんですた。

分解してみたところ、引っかかるのは前後のガイドで、
ローラーはシリコーンゴムだからなんとかなりそう。
というわけでガイドを外したら通りました。
出口の最後でゴムの弾性ではじき飛ばされますが通ってます。

転写はまだしてみていません。
圧力が強すぎて潰れるようならローラーの間隔を広げる改造が必要でしょう。
180 名前:774ワット発電中さん 投稿日:2008/12/20(土) 16:59:07 ID:vchQMyrX
アイロンじゃなくてラミネーターでうまく行った方います?
ttp://www.pulsarprofx.com/PCBfx/main_site/pages/start_here/index.html
これなんかどう見てもラミネーターなんではありますが、
買おうか買うまいか迷ってます(普通のラミネーターを)。

* MAX4018 高速オペアンプ 3回路・各Disable付き

#RGB #部品調達 #電子工作
MAX4012, MAX4016, MAX4018, MAX4020 低コスト、高速、レイルトゥレイル出力付き、単一電源オペアンプ
http://japan.maxim-ic.com/quick_view2.cfm/qv_pk/1753

 MAX4018は、3回路で各Disable付き。
 出力は、Rail-to-Rail。150Ω負荷時、VCC-V(OH), V(OL)-VEE、各0.30V(typ)。
 入力は、最小VEE-0.20, 最大VCC-2.25。

 チップワンストップでお手軽かつ安く買えるのが魅力。
#Digi-Keyだと、最低数量が100とか2500とかだ。RSオンラインでは扱ってなかった。

 1〜9個で@357, 10〜49個で@333
 QSOP(ピン間隔0.65mm)で基板作りと半田付けが大変なのが難か?
#でも、MSOP(1.27mm)のMAX4018ESD+は単価が高い(1〜@786, 10〜@612)ので、なんか悔しい。

* 掲示板へのspam投稿が、久々にチェックをすり抜けた

#掲示板spam対策 #Web

1204215628 Fri Feb 29 01:20:28 JST 2008
HOST 201.86.240.210
page 0


1204215664 Fri Feb 29 01:21:04 JST 2008
HOST 201.86.240.210
rep_num 0
pass XXXXXXXX
page 0
jikan 1204215628
do post
name jammarlibre
data Very good web site, great work and thank you for your service.
mail http://enavivo.info/cookie-monster
subj cookie-monster

 name="mail"なのにURLを書いてきたのは、狙ってのことか?!
(ReadMore...)

* RandomNoteの検索用クローラ対策

#RandomNote #Web #掲示板spam対策
 googleやらyahooやらmsnやらが、入れ替わり立ち替わり、smode=sumやらsmode=countやらcmd=editやらのついたページを、別々のものと見なしてGETしていく。
 こっちにもあっちにも無駄な負荷がかかる、とても不幸なことだ。

とりあえずの対策として、それらへのリンクをformにしてみた。

 検索エンジンは、いくらなんでもsubmitしないだろうから、無駄にリンクを辿らなくなると期待。

 ただし、spam投稿用クローラが心配。textもtextareaもないのにPOSTする馬鹿がいるかもしれない、と危惧している。

ロボットの類相手では、cmd=editとかsmode=hogeとかあったら、404を返すようにした

 既にsmode=hogeとかのページのurlが記録されていて、リンクが無くなっても読みに来る。だから、ロボットの類相手にそれらのページは404を返すようにした。
 ロボットか?の判断は、user_agentにhttp:が入っているかどうか。

ロボットなどに対して、サイドバーを渡さないようにした

 検索の邪魔だよね。本文にないキーワードがあるのは。
 さらに、ロボットに送るデータ量が減るという恩恵もあった。無駄なデータが減るのは、互いにとって有益だ。